Zum Inhalt springen

Extension HowTo II

Erstellt am 21. Mai 2003 · 41 Antworten · letzte Antwort am 18. Januar 2006 · Seite 2 von 3

Tags: Frage

Shinji ·

Hallo !

Habe jetzt eine HowTo zum Thema HTML-Vorlage geschrieben. Will jemand das Dokument haben? Wo kann ich die hinlegen?

Gruß
Thorsten

maxhb ·

Hi!

Shinji schrieb

Habe jetzt eine HowTo zum Thema HTML-Vorlage geschrieben. Will jemand das Dokument haben? Wo kann ich die hinlegen?

Ich glaube alle Doku zum Thema Typo3 wird dringend gebraucht! Ein guter Ort zum Ablegen solcher Dokumente waere z.B. www.typo3faq.net
Auf der Seite "Neues Eintragen" kannst Du da Deinen Artikel unterstellen 😉

CU
maxhb

boonkerz ·

Hallo

Wirklich super danke.

Eine Frage hätte ich noch könntest du oben eine Selectbox einbauen wo ma eventuell nach anfangsbuchstaben sortieren kann also z.b.
alle
a
b
usw.

Das wäre super da man dann gleich sieht wie man sowas einbauen kann?

MFg

maxhb ·

Hi Thorsten!

Shinji schrieb

Schaut mal drüber ob die verständlich ist und ob noch etwas wichtiges fehlt:

hab ich gemacht und muss sagen garnicht schlecht. Eine Kleinigkeit würde ich allerdings noch integrieren:

function getItems(){
...
// Führe die Abfrage durch
    $query = "SELECT * FROM tx_mitglieder_liste WHERE pid IN (".$pid.")  " . $this->cObj->enableFields("tx_mitglieder_liste") . " ORDER BY sorting";
...

bzw.

function getItems(){
...
    $query = "SELECT * FROM tx_mitglieder_liste WHERE pid IN (".$pid.")  " . $this->cObj->enableFields("tx_mitglieder_liste") . " ORDER BY sorting";

Mit $this->cObj->enableFields("tx_mitglieder_liste") werden nämlich "where"-Bedingungen eingefügt, die gelöschte und inaktive Einträge ausfiltern und wir wollen doch sauber programmieren ... :o

CU
maxhb

re787 ·

Wenn ich - wie auf Seite 3 beschrieben - "Type-field, if any" auf first_name setze, führt dies dazu, dass nach der Eingabe des Vornamens eine leere Maske angezeigt wird. D.h. "Type-field, if any" sollte auf [none] stehen bleiben.

Reinhard

Shinji ·

[​quote="maxhb"]
hab ich gemacht und muss sagen garnicht schlecht. Eine Kleinigkeit würde ich allerdings noch integrieren:

:-) Danke !

[quote]function getItems(){[/quote]

Ööööö, wo ist der Unterschied zwischen den beiden Codes?

[quote]
Mit $this->cObj->enableFields("tx_mitglieder_liste") werden nämlich "where"-Bedingungen eingefügt, die gelöschte und inaktive Einträge ausfiltern  und wir wollen doch sauber programmieren ... :o 
[/quote]

Ja? Wollen wir das? ;-)
Ok, ich bau es mal ein.

Gruß
  Thorsten
Shinji ·
re787 schrieb

Wenn ich - wie auf Seite 3 beschrieben - "Type-field, if any" auf first_name setze, führt dies dazu, dass nach der Eingabe des Vornamens eine leere Maske angezeigt wird.

Mmm, ich habe das bei mir genauso gemacht.
Was meinst du denn genau mit "leerer Maske"?

Gruß
Thorsten

re787 ·
Shinji schrieb

Mmm, ich habe das bei mir genauso gemacht.
Was meinst du denn genau mit "leerer Maske"?

Gruß
Thorsten

OK, war vielleicht etwas verkürzt.
Wenn ich also den Vornamen eingegeben habe und dann zum Nachnamen wechsle, erscheint das Abfragefenster "Diese Änderung beeinflusst die zur Verfügung stehenden Eingabefelder. Wollen Sie gemachte Änderungen sichern und die Anzeige aktualisieren?".
Und nach einem Klick auf OK sind alle Felder weg!

Reinhard

Shinji ·

Oh, da stimmt dann wirklich was nicht.
Kannst du mal kurz posten was bei dir in der Datei "ext_tables.php" der Extension steht? Es geht um die Einträge für das Array

$TCA["tx_mitglieder_liste"] = Array (
"ctrl" => Array (

Gruß
Thorsten

re787 ·
Shinji schrieb

Oh, da stimmt dann wirklich was nicht.
Kannst du mal kurz posten was bei dir in der Datei "ext_tables.php" der Extension steht? Es geht um die Einträge für das Array

$TCA["tx_mitglieder_liste"] = Array (
"ctrl" => Array (

Das steht drin (mit 'Type-field' auf "first_name"):

$TCA["tx_mitglieder_liste"] = Array (
	"ctrl" => Array (
		"title" => "LLL:EXT:mitglieder/locallang_db.php:tx_mitglieder_liste",		
		"label" => "first_name",	
		"tstamp" => "tstamp",
		"crdate" => "crdate",
		"cruser_id" => "cruser_id",
		"type" => "first_name",	
		"sortby" => "sorting",	
		"delete" => "deleted",	
		"enablecolumns" => Array (		
			"disabled" => "hidden",
		),
		"dynamicConfigFile" => t3lib_extMgm::extPath($_EXTKEY)."tca.php",
		"iconfile" => t3lib_extMgm::extRelPath($_EXTKEY)."icon_tx_mitglieder_liste.gif",
	),
	"feInterface" => Array (
		"fe_admin_fieldList" => "hidden, first_name, last_name, birthday, street, zip, city, email, homepage, phone, mobile, function, elected, privacy, keycard, photo",
	)
);

Reinhard

Shinji ·

Ohoh, bei mir ist kein Type drin. ;-)
Da habe ich das wohl beim Scrollen unbemerkt mit dem Mausrad deaktiviert.

Werde das natürlich sofort aus der HowTo nehmen.

Aber das ist DIE Möglichkeit was auszuprobieren. :-)
Kann man einfach die Zeile

"type" => "first_name",

löschen?

Gruß
Thorsten

Shinji ·

Neue Version ist online.
Der Type-Fehler wurde beseitgt und der Vorschlag von maxhb eingebaut. Habe aber nicht krontrolliert ob die geänderte mySQL Abfrage funktioniert !

Gruß
Thorsten

maxhb ·

Hi!

Shinji schrieb

Habe aber nicht krontrolliert ob die geänderte mySQL Abfrage funktioniert !

Ist "Shinji" das japanische Wort für "wagemutig"? 😉

CU
maxhb

Shinji ·

Ne, es bedeutet in etwa: etwas, an etwas glauben
Passt aber auch irgendwie. :-) :-) :-)

Aber müsste ich deinen Code denn noch kontrollieren?

Gruß
Thorsten

escapedPrisoner ·

Hey,

ich kanns ja gar nicht glauben, dass an Deiner Vorlage noch niemand Interesse hatte. Klar - mich interessiert das sehr.

Poste den Code doch hier einfach mal ins Forum. 🙂

OOOOooops. Gerade gemerkt, dass es noch zwei weitere Seiten zum Thema gibt #paralyzed#

Thanx
Daniel

escapedPrisoner ·

function getItems(){
...
$query = "SELECT * FROM tx_mitglieder_liste WHERE pid IN (".$pid.") " . $this->cObj->enableFields("tx_mitglieder_liste") . " ORDER BY sorting";

Tja, man kann sich das Leben ja auch schwer machen.
Mehr Spaß machts so:

$query = $this->pi_list_query("tx_NAME_DER_EXTENSION");

Kaspar hat ja schon an alles gedacht 🙂

Shinji ·
escapedPrisoner schrieb

Tja, man kann sich das Leben ja auch schwer machen.
Mehr Spaß machts so:

$query = $this->pi_list_query("tx_NAME_DER_EXTENSION");

Danke !!

Woher bekommt man diese Funktionen?
Ich bin verzweifelt auf der Suche nach einer Übersicht aller verfügbaren Funktionen. Man kann sich doch nicht für jede eventuell vorhandene Funktion durch Newsgroups und Foren wühlen.

Hat denn niemand eine Tabelle, schön geordnet nach verschiedenen Bereichen (Datenbankabfragen, Linkfunktionen, Navigationsfunktionen [SeitenID, letzteSeite usw] und andere).

Und was gibt die Funktion pi_list_query() zurück?
Das gleiche wie mein Code?

Gruß
Thorsten