Zum Inhalt springen

dmailsubscription template anpassen

Erstellt am 20. April 2007 · 2 Antworten · letzte Antwort am 22. April 2007

Tags: Frage

daniel_m_ww ·

Hallo zusammen,

ich möchte gerne mein Template der dmail subscription anpassen.
Soweit hab ich schon alles geschafft und alle Neuen Felder angefügt.
Nun möchte ich die Kategorien als Select Liste anzeigen lassen.
Nur leider klappt es nicht so richtig, es kommt immer nur eine 0 an.
DAs ist mein Code dazu:

<select name="FE[tt_address][module_sys_dmail_category]">
      <option value="1">Alle Kategorien</option>
      <optgroup label="Food Industrie">
        <option value="2">Brauerei</option>
        <option value="3">Feinkost</option>
        <option value="4">Fleischwarenfabrik</option>
      </optgroup>
      <optgroup label="Non-Food Industrie">
        <option value="5">test</option>
        <option value="6">test</option>
        <option value="7">test</option>
      </optgroup>
    </select>

Weiß jemand wie ich das ändern kann?

Vielen Dank für Hilfe.

Gruß Daniel

daniel_m_ww ·

Hi nochmal,

häng immernoch an dem doofen Problem.
Die kategorien werden wohl als Array übergeben.
Da hab ich in der direct_mail Klasse diese Stelle gefunden:

		if (is_array($HTTP_POST_VARS["indata"]["categories"]))	{
			$data=array();
			reset($HTTP_POST_VARS["indata"]["categories"]);
			while(list($recUid,$recValues)=each($HTTP_POST_VARS["indata"]["categories"]))	{
//						debug($recValues);
				reset($recValues);
				$data["tt_content"][$recUid]["module_sys_dmail_category"]=0;
				while(list($k,$b)=each($recValues))	{
					if ($b)	{$data["tt_content"][$recUid]["module_sys_dmail_category"]|= pow (2,$k);}
				}
			}
			$tce = t3lib_div::makeInstance("t3lib_TCEmain");
			$tce->stripslashes_values=0;
			$tce->start($data,Array());
			$tce->process_datamap();
//						debug($data);
		}

dies hab ich hierdurch ersetzt:

		$kat = $HTTP_POST_VARS["indata"]["categories"];
		$data["tt_content"][$recUid]["module_sys_dmail_category"] = pow(2, $kat);

Nur leider zeigt es keine Wirkung?
Weiß jemand wo ich das so ändern kann dass kein array, sondern nur 1 Wert übergeben wird? Quasi so wie das beim Feld Namen usw.? Irgendwie finde ich die Stelle nicht.

Vielen Dank für Hilfe!

Gruß Daniel

daniel_m_ww ·

Guten morgen,

weiß nicht ob es an der Uhrzeit liegt, aber hatte so eben den lösenden Einfall 😃.

Hätte ich schon früher drauf kommen können, hab das ganze mit einem kleinen Trick gelöst.
Habe mir alle Kontrollkästchen mit den Katgorien in einen unsichtbaren Div gelegt und über die Select Auswahlliste ruf ich beim onChange eine Funktion auf, die dann den gewählten Listeneintrag aufnimmt und das dazugehörige Kontrollkästchen aktiviert und so bei der Übergabe immer die Richtige Kategorie in Form des Kontrollkästchens übergeben wird.

Schön Schön. Lange dran gegrübelt, aber dann hats doch geklappt 🙂.

MfG Daniel