]> git.p6c8.net - form-email.git/commitdiff
- Neuen Code ein bisschen kommentiert
authorPatrick Canterino <patrick@patshaping.de>
Sat, 3 Dec 2011 12:56:46 +0000 (12:56 +0000)
committerPatrick Canterino <patrick@patshaping.de>
Sat, 3 Dec 2011 12:56:46 +0000 (12:56 +0000)
- Man kann jetzt Funktionen zum "Vorbereiten" eines
  indiv. Formularfeldes definieren, d.h. diese Funktion
  bearbeitet den Inhalt

form-email/config.php
form-email/mailer.php

index fc019785fd965ec2669c669b89c5ef1767e3c628..d02ac40e0500f079a4f9df95eeedc131966c4895 100644 (file)
@@ -6,7 +6,7 @@
 # Konfiguration fuer Form E-Mail\r
 #\r
 # Autor:            Patrick Canterino <patrick@patshaping.de>\r
-# Letzte Aenderung: 7.11.2009\r
+# Letzte Aenderung: 2.12.2011\r
 #\r
 # Copyright (C) 2002-2011 Patrick Canterino\r
 #\r
@@ -51,6 +51,7 @@ $user_fields['beruf']['max'] = 50;
 $user_fields['beruf']['optional'] = 1;\r
 $user_fields['beruf']['regex'] = '/^[A-Za-z]+$/';\r
 $user_fields['beruf']['check'] = 'check_beruf';\r
+$user_fields['beruf']['prepare'] = 'prepare_beruf';\r
 $user_fields['beruf']['tpl_var'] = 'BERUF';\r
 \r
 $user_fields['beruf']['errors']['too_short'] = 'Der Beruf muss mind. 5 Zeichen lang sein!';\r
@@ -69,6 +70,12 @@ function check_beruf($content) {
     return true;\r
 }\r
 \r
+# Beispiel-Vorbereitungs-Funktion\r
+\r
+function prepare_beruf($content) {\r
+    return strtolower($content);\r
+}\r
+\r
 # Sicherheit\r
 \r
 $only_post     = 0;\r
index 52e3110305c00e306a8f7c0477926dfcad14bbb1..bed4207d6b2bf30b326f0f6a403084e0735e8f31 100644 (file)
@@ -7,7 +7,7 @@
 # geschrieben wurde.\r
 #\r
 # Autor:            Patrick Canterino <patrick@patshaping.de>\r
-# Letzte Aenderung: 7.11.2011\r
+# Letzte Aenderung: 3.12.2011\r
 #\r
 # Copyright (C) 2002-2011 Patrick Canterino\r
 #\r
@@ -97,25 +97,44 @@ $prepared_user_fields = array();
 while(list($user_field,$user_field_data) = each($user_fields)) {\r
     $user_field_content = formdata($user_field);\r
     \r
+    # Pruefung, ob das Feld gesetzt wurde und ob es optional ist\r
+    \r
     if((!$user_field_data['optional']) && (!$user_field_content)) {\r
         show_user_error($user_field_data['errors']['not_set']);\r
     }\r
     elseif($user_field_data['optional'] && (!$user_field_content)) {\r
+        # Wenn das Feld optional ist und nicht gesetzt wurde, brechen wir hier ab\r
+        # und machen mit dem naechsten Feld weiter\r
+        \r
         $prepared_user_fields[$user_field_data['tpl_var']] = '';\r
         continue;\r
     }\r
+    \r
+    # Pruefung gegen frei definierbare Pruef-Funktion\r
 \r
     if(isset($user_field_data['check']) && $user_field_data['check'] != '') {\r
         if(function_exists($user_field_data['check']) && call_user_func($user_field_data['check'],$user_field_content) === false) {\r
             show_user_error($user_field_data['errors']['check_fail']);\r
         }\r
     }\r
+    \r
+    # Pruefung gegen frei definierbaren regulaeren Ausdruck\r
 \r
     if(isset($user_field_data['regex']) && $user_field_data['regex'] != '') {\r
         if(!preg_match($user_field_data['regex'],$user_field_content)) {\r
             show_user_error($user_field_data['errors']['match_fail']);\r
         }\r
     }\r
+    \r
+    # Formularfeld durch frei definierbare Funktion bearbeiten\r
+\r
+    if(isset($user_field_data['prepare']) && $user_field_data['prepare'] != '') {\r
+        if(function_exists($user_field_data['check'])) {\r
+            $user_field_content = call_user_func($user_field_data['prepare'],$user_field_content);\r
+        }\r
+    }\r
+    \r
+    # Fertige Formulardaten wegkopieren und fuer spaeter zur Verfuegung stellen\r
 \r
     $prepared_user_fields[$user_field_data['tpl_var']] = $user_field_content;\r
 }\r

patrick-canterino.de