Modul: Kontaktformular, welches Artikellink mitschickt

Gesperrt
peanut
Beiträge: 246
Registriert: Do 25. Nov 2004, 19:34
Kontaktdaten:

Modul: Kontaktformular, welches Artikellink mitschickt

Beitrag von peanut » Fr 25. Nov 2005, 12:16

Hallo zusammen

Der Rezeptioist hat mir freundlicherweise das Send2Friend Modul so umgebaut das man nun die Möglichkeit hat ein Kontaktformular zu erstellen, das den jeweiligen Artikellink automatisch mitschickt.

Hier der Code

Modul 1, Link anklicken - In den Output

Code: Alles auswählen

<?php   
  $send2friend_link = "front_content.php?idart=115&idcat=3&send2friend=1&send2friend_client=$client&send2friend_lang=$lang&send2friend_idcat=$idcat&send2friend_idart=$idart";  
  {  
  echo"<a href=\"".$sess->url("$send2friend_link")."\" id=\"fontCMS_VALUE[0]\"> Interesse an diesem Objekt ?</a>";  
  } 
  ?>

Modul 2, Das Formular

Input

Code: Alles auswählen

/** TITEL: Send2Friend 1.1.1
LASTMODIFY: 24.04.2005
BESCHREIBUNG:
von Ekkehard Doerre http://www.audimaxx.net wie contenido unter der GPL Version 2, June 1991 http://www.gnu.org/copyleft/gpl.html ekked@gmx.de
überarbeitet von Mathias Rauh, m.rauh@rzwei.de

Basiert auf dem Modul Feedback v1.0 vom 20.09.2002 02:09 Sven777b
Stellt ein variables Kontaktformular zur Verfügung. Texte können im Backend konfiguriert werden.
19.09.2002 webmaster@zu-hause.biz */

?>
 <table align="left" cellpadding="0" cellspacing="0" class="text_medium">
   <tr valign="top">
       <td>Bestätigungstext:</td>
       <td colspan="2"><textarea name="CMS_VAR[4]" cols="30" rows="1" class="text_medium"><?php if("CMS_VALUE[4]" == "") echo "Vielen Dank, die Daten wurden versandt";else echo "CMS_VALUE[4]"; ?></textarea></td>
    </tr>
   <tr valign="top">
       <td>Text Kein Versand:</td>
       <td colspan="2"><textarea name="CMS_VAR[5]" cols="30" rows="1" class="text_medium"><?php if("CMS_VALUE[5]" == "") echo "Leider wurden die Daten nicht versandt";else echo "CMS_VALUE[5]"; ?></textarea></td>
    </tr>
   <tr valign="top">
       <td>Text Absendeknopf:</td>
       <td colspan="2"><INPUT NAME="CMS_VAR[6]" TYPE="text" class="text_medium" VALUE="<?php if("CMS_VALUE[6]" == "") echo "Senden";else echo "CMS_VALUE[6]"; ?>" size="30" /></td>
    </tr>
    <tr valign="top">
       <td>Hinweistext Pflichtfelder:</td>
       <td colspan="2"><textarea name="CMS_VAR[7]" cols="30" rows="1" class="text_medium"><?php if("CMS_VALUE[7]" == "") echo "Bitte füllen Sie die mit * gekennzeichneten Felder aus.";else echo "CMS_VALUE[7]"; ?></textarea></td>
    </tr>
   <tr valign="top">
       <td>Fehlerfarbe (z.B. #CC6666)</td>
       <td colspan="2"><INPUT NAME="CMS_VAR[8]" TYPE="text" class="text_medium" VALUE="<?php if("CMS_VALUE[8]" == "") echo "#CC6666";else echo "CMS_VALUE[8]"; ?>" size="30" /></td>
    </tr>
    <tr valign="top">
       <td>Hinweistext bei Fehler</td>
       <td colspan="2"><INPUT NAME="CMS_VAR[9]" TYPE="text" class="text_medium" VALUE="<?php if("CMS_VALUE[9]" == "") echo "Bitte ausfüllen";else echo "CMS_VALUE[9]"; ?>" size="30" /></td>
    </tr>
   <tr valign="top">
       <td colspan="3"><hr /></td>
    </tr>
   <tr valign="top">
       <td height="20"><b>Formularfelder:</b></td>
       <td><b>Feldüberschrift</b></td>
       <td width="20"><b>Pflicht</b></td>
    </tr>
   <tr valign="top">
       <td> Absender Name: </td>
       <td><INPUT TYPE="text" NAME="CMS_VAR[12]" VALUE="CMS_VALUE[12]" class="text_medium" /></td>
       <td align="center"><INPUT TYPE="checkbox" NAME="CMS_VAR[22]" VALUE="1" <?php if("CMS_VALUE[22]" == 1) echo "checked"; ?> /></td>
    </tr>
   <tr valign="top">
       <td>Absender E-Mail: </td>
       <td><INPUT TYPE="text" NAME="CMS_VAR[13]" VALUE="CMS_VALUE[13]" class="text_medium" /></td>
       <td align="center"><INPUT TYPE="checkbox" NAME="CMS_VAR[23]" VALUE="1" <?php if("CMS_VALUE[23]" == 1) echo "checked"; ?> /></td>
    </tr>
   <tr valign="top">
       <td>Kommentar:</td>
       <td><INPUT TYPE="text" NAME="CMS_VAR[14]" VALUE="CMS_VALUE[14]" class="text_medium" /></td>
       <td align="center"><INPUT TYPE="checkbox" NAME="CMS_VAR[24]" VALUE="1" <?php if("CMS_VALUE[24]" == 1) echo "checked"; ?> /></td>
    </tr>
</table>
 <?php
Output

Code: Alles auswählen

<?php
   switch ($lang):
     case 3: // Englisch
        $anrede = "Dear ";
        $back = "Back";
       break;
     default: /* Use this area for your preferred (or only) language */
        $anrede = "Sehr geehrte(r) ";
        $back = "Zur&uuml;ck";
   endswitch;

$fmv[12] ="CMS_VALUE[12]";$fmv[22]="CMS_VALUE[22]"; //Absender Name
$fmv[13]="CMS_VALUE[13]"; $fmv[23]="CMS_VALUE[23]"; //Absender E-Mail
$fmv[14]="CMS_VALUE[14]"; $fmv[24]="CMS_VALUE[24]"; //Kommentar

function send_mail($absender, $contactemail, $subject, $message) {
      $headers .= "MIME-Version: 1.0\n";
      $headers .= "Content-type: text/plain; charset=iso-8859-1\n";
      $headers .= "X-Priority: 3\n";  //1 UrgentMessage, 3 Normal
      $headers .= "X-MSMail-Priority: Low\n";
      $headers .= "X-Mailer: php\n";
      $headers .= "From: ".$absender."\n";
      $headers .= "Return-Path: ".$absender;
      return(mail("email@deinedomainhier.com", "Interesse an Objekt",  $message, $headers));
} // end function
   
// Aufbau der Mail und der Fehler-Meldungen
// Überprüfung der E-Mail schreibweisen bei Empfänger und Absender. Mail wird erst versendet, wenn beide Angaben richtig sind.

if (!ereg("^.+@.+\\..+$", $fminput[11]) and !$fminput[11] == ''){
    echo "<p style=color:red;>&nbsp;&nbsp;Die eMail-Adresse Empfänger ($fminput[11]) entspricht nicht der richtigen Schreibweise!</p><br>";
} // end if

if (!ereg("^.+@.+\\..+$", $fminput[13]) and !$fminput[13] == ''){
    echo "<p style=color:red;>&nbsp;&nbsp;Die eMail-Adresse Absender ($fminput[13]) entspricht nicht der richtigen Schreibweise!</p><br>";
   } else {
   $adress = "yes";
} // end if

$fmfail[0] = false;
if($fmsubmit) {
   for ($i=10;$i<15;$i++) {
      if (($fmv[$i+10] == '1') && (!$fminput[$i])) {
         $fmfail[$i] = true;
         $fmfail[0] = true;
      } // end if
   } // end for
   if ($fmfail[0] == false) { // mail nur abschicken, wenn keine Fehler
      if ($fminput[12]) $absender = $fminput[12]." <".$fminput[13].">"; //Absender wenn Name angegeben
      else $absender = $fminput[13];

      if ($fminput[10]) $anrede_empfaenger = $anrede.$fminput[10].",\n";
      else $anrede_empfaenger = "";
      $emailtext = $anrede_empfaenger. $absender.  "hat folgende Nachricht hinterlassen\n\n----------------------------------------------------------------\n\n" ;
      $emailtext .=  $fminput[14]."\n\n";
      $emailtext .="----------------------------------------------------------------\n\nObjekt der Interesse\n\n";
      if ($equity) $emailtext .= $equity;
      else $emailtext .= $cfgClient[$client]['path']['htmlpath']."front_content.php?lang=$send2friend_lang&idart=$send2friend_idart" ;      
      $subject2 = "CMS_VALUE[1] ".$absender;

     // Erweiterung um die Abfrage ob Absender E-Mail richtig geschrieben wurde.
      if (send_mail($absender, $fminput[11], $subject2, $emailtext) and $adress == yes) {
         echo "<p>CMS_VALUE[4]</p>";

         $verschickt ="yes";
      } // end if
      else echo "<p>CMS_VALUE[5]</p>";
   } // end if
}

// Aufbau des Formulars
if ($verschickt!="yes") { // Formular nur aufbauen, wenn Empfehlung noch nicht verschickt wurde
 if(($fmv[10])||($fmv[11])||($fmv[12])||($fmv[13])||($fmv[14])){ //nur wenn mindestens eins der Felder benannt ist
    echo "<form name=\"feedback\" method=\"POST\" action=\"".$auth->url()."\">\n";
    echo "<table>\n";
    for ($i=10;$i<15;$i++) {
       if ($fmv[$i]) { //wenn Feld benannt
          if ($i<14) echo "<tr>\n<td><p>".$fmv[$i]; //Beschreibung input-Feld ausgeben
          else echo "<tr>\n<td><p>".$fmv[$i]; //Beschreibung textarea-Feld ausgeben (valign=top)
          if ($fmv[$i+10]=='1') echo "*";
          echo "</p></td>\n";
          $old_value = $fminput[$i]; //eingegebenen Wert übernehmen
          if ($i<14) echo "<td><input type=\"text\" name=\"fminput[".$i."]\" class=\"standard\""; //Ausgabe input-Felder
          else echo "<td><textarea name=\"fminput[".$i."]\" cols=\"30\" rows=\"10\" class=\"standard\""; //Ausgabe textarea
          if ($old_value) echo "value=\"".$old_value."\""; // eingegebenen Wert in input schreiben
          if ($fmfail[$i]) echo " style=\"background-color:CMS_VALUE[8];\""; // bei fehlender Angabe input einfärben
          if ($i<14) echo " value=\"\">\n"; // Abschluss input-Feld
          else echo ">".$old_value."</textarea>\n"; // Abschluss textarea-Feld
          if ($fmfail[$i]) echo " <p style=\"color:CMS_VALUE[8];\">CMS_VALUE[9]</p>"; // bei fehlender Eingabe ergänzender Hinweis
          echo "</td>\n</tr>\n";
       } // end if
    } // end for
    echo "
    <tr><td colspan=\"2\"><br /><input type=\"submit\" name=\"fmsubmit\" value=\"CMS_VALUE[6]\"></td></tr>
    </table>
    <input type=\"hidden\" name=\"send2friend\" value=\"".$send2friend."\">
    <input type=\"hidden\" name=\"send2friend_lang\" value=\"".$send2friend_lang."\">
    <input type=\"hidden\" name=\"send2friend_idart\" value=\"".$send2friend_idart."\">
   </fo"."rm>";
 } // end if Konfiguration nicht leer
} // end if verschickt=yes
if ($equity) $tmp = $equity;
else $tmp = "front_content.php?idart=".$send2friend_idart;
//echo "<a href=\"".$tmp."\"><img src=\"upload/layout/simplepfeil_links.gif\" height=\"12\" width=\"6\">&nbsp;".$back."</a>";
?>

Einfach die beiden Module erstellen - in ein Template einfügen - Konfigurieren ( einfach die CMS Values die erscheinen ersetzten )
Kategorie konfigurieren - fertig


Was ich nun noch suche ist jemand der weiss wie man die beiden Module zusammenfügt damit man direkt in jedem Artikel dieses Formular benutzen kann ohne den Aufruf von Modul 1 aber der Artikel Link trotzdem automatisch mitgesendet wird .....

Sollte sich noch jemand mit der Übersetzung für Modul 1 auskennen dann immer munter drauf los

:D
Zuletzt geändert von peanut am Di 29. Nov 2005, 14:11, insgesamt 1-mal geändert.
du liest nie ein Buch und weisst weise der Bildung auszuweichen ....

peanut
Beiträge: 246
Registriert: Do 25. Nov 2004, 19:34
Kontaktdaten:

Beitrag von peanut » Fr 25. Nov 2005, 12:20

hab ich vergessen - bei dem Modul 1 muss man natürlich die idart115 und die idcat3 gegen seine eigene ersetzten ( den Artikel wo das Formular drin ist )

email@deinedomainhier.com dann mit deiner eigenen email adresse austauschen

Nochmal eben - dies ist ein modifiziertes Send2Freind Modul das nicht die email mit Artikellink an den Kollegen schickt wie im ursprünglichen Format, sondern an den Betreiber !!!!
Zuletzt geändert von peanut am Di 29. Nov 2005, 14:14, insgesamt 1-mal geändert.
du liest nie ein Buch und weisst weise der Bildung auszuweichen ....

HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB » Sa 26. Nov 2005, 10:54

Verschoben, ist ein Modul, kein Request für ein Modul ... :wink:

Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net

peanut
Beiträge: 246
Registriert: Do 25. Nov 2004, 19:34
Kontaktdaten:

Beitrag von peanut » So 27. Nov 2005, 00:20

Was ich nun noch suche ist jemand der weiss wie man die beiden Module zusammenfügt damit man direkt in jedem Artikel dieses Formular benutzen kann ohne den Aufruf von Modul 1 aber der Artikel Link trotzdem automatisch mitgesendet wird .....
Hallo Herr B.

also es ist so gesehen für beide Kategorien :wink:

Hast Du evtl. ein paar Sekunden um zu sagen ob das etwas gröberes ist die beiden Module zusammenzunehmen ?

Danke
Gruss
Peanut
du liest nie ein Buch und weisst weise der Bildung auszuweichen ....

HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB » So 27. Nov 2005, 12:21

Ich habe leider nur die Sekunden, dass ich gerade keine Zeit habe, mir das anzusehen. Tut mir leid.

Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net

Gesperrt