Merge branch 'master' of vc.linet-services.de:public/lx-office-erp
authorMoritz Bunkus <m.bunkus@linet-services.de>
Fri, 22 Jun 2012 12:04:39 +0000 (14:04 +0200)
committerMoritz Bunkus <m.bunkus@linet-services.de>
Fri, 22 Jun 2012 12:04:39 +0000 (14:04 +0200)
SL/CT.pm
bin/mozilla/ct.pl
templates/webpages/ct/_contact.html
templates/webpages/ct/search_contact.html

index 49eb591..fabc3ca 100644 (file)
--- a/SL/CT.pm
+++ b/SL/CT.pm
@@ -367,73 +367,18 @@ sub save_customer {
   do_query( $form, $dbh, $query, @values );
 
   $query = undef;
+  my @columns = qw(cp_title cp_givenname cp_name cp_email cp_phone1 cp_phone2 cp_abteilung cp_fax
+                   cp_mobile1 cp_mobile2 cp_satphone cp_satfax cp_project cp_privatphone cp_privatemail cp_birthday cp_gender
+                   cp_street cp_zipcode cp_city);
+  @values     = map { $_ eq 'cp_gender' ? ($form->{$_} eq 'f' ? 'f' : 'm') : $form->{$_} } @columns;
+
   if ( $form->{cp_id} ) {
-    $query = qq|UPDATE contacts SET | .
-      qq|cp_title = ?,  | .
-      qq|cp_givenname = ?, | .
-      qq|cp_name = ?, | .
-      qq|cp_email = ?, | .
-      qq|cp_phone1 = ?, | .
-      qq|cp_phone2 = ?, | .
-      qq|cp_abteilung = ?, | .
-      qq|cp_fax = ?, | .
-      qq|cp_mobile1 = ?, | .
-      qq|cp_mobile2 = ?, | .
-      qq|cp_satphone = ?, | .
-      qq|cp_satfax = ?, | .
-      qq|cp_project = ?, | .
-      qq|cp_privatphone = ?, | .
-      qq|cp_privatemail = ?, | .
-      qq|cp_birthday = ?, | .
-      qq|cp_gender = ? | .
-      qq|WHERE cp_id = ?|;
-    @values = (
-      $form->{cp_title},
-      $form->{cp_givenname},
-      $form->{cp_name},
-      $form->{cp_email},
-      $form->{cp_phone1},
-      $form->{cp_phone2},
-      $form->{cp_abteilung},
-      $form->{cp_fax},
-      $form->{cp_mobile1},
-      $form->{cp_mobile2},
-      $form->{cp_satphone},
-      $form->{cp_satfax},
-      $form->{cp_project},
-      $form->{cp_privatphone},
-      $form->{cp_privatemail},
-      $form->{cp_birthday},
-      $form->{cp_gender} eq 'f' ? 'f' : 'm',
-      $form->{cp_id}
-      );
+    $query = qq|UPDATE contacts SET | . join(', ', map { "${_} = ?" } @columns) . qq| WHERE cp_id = ?|;
+    push @values, $form->{cp_id};
+
   } elsif ( $form->{cp_name} || $form->{cp_givenname} ) {
-    $query =
-      qq|INSERT INTO contacts ( cp_cv_id, cp_title, cp_givenname,  | .
-      qq|  cp_name, cp_email, cp_phone1, cp_phone2, cp_abteilung, cp_fax, cp_mobile1, | .
-      qq|  cp_mobile2, cp_satphone, cp_satfax, cp_project, cp_privatphone, cp_privatemail, | .
-      qq|  cp_birthday, cp_gender) | .
-      qq|VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)|;
-    @values = (
-      $form->{id},
-      $form->{cp_title},
-      $form->{cp_givenname},
-      $form->{cp_name},
-      $form->{cp_email},
-      $form->{cp_phone1},
-      $form->{cp_phone2},
-      $form->{cp_abteilung},
-      $form->{cp_fax},
-      $form->{cp_mobile1},
-      $form->{cp_mobile2},
-      $form->{cp_satphone},
-      $form->{cp_satfax},
-      $form->{cp_project},
-      $form->{cp_privatphone},
-      $form->{cp_privatemail},
-      $form->{cp_birthday},
-      $form->{cp_gender} eq 'f' ? 'f' : 'm',
-      );
+    $query = qq|INSERT INTO contacts (| . join(', ', 'cp_cv_id', @columns) . qq|) VALUES (?, | . join(', ', ('?') x scalar(@columns)) . qq|)|;
+    unshift @values, $form->{id};
   }
   do_query( $form, $dbh, $query, @values ) if ($query);
 
@@ -1226,7 +1171,7 @@ sub search_contacts {
     'vcnumber'  => 'vcnumber, cp_name, cp_givenname',
     );
 
-  my %sortcols  = map { $_ => 1 } qw(cp_name cp_givenname cp_phone1 cp_phone2 cp_mobile1 cp_email vcname vcnumber);
+  my %sortcols  = map { $_ => 1 } qw(cp_name cp_givenname cp_phone1 cp_phone2 cp_mobile1 cp_email cp_street cp_zipcode cp_city vcname vcnumber);
 
   my $order_by  = $sortcols{$::form->{sort}} ? $::form->{sort} : 'cp_name';
   $::form->{sort} = $order_by;
index 56fad89..31c70d0 100644 (file)
@@ -301,7 +301,7 @@ sub list_contacts {
   my $cvar_configs = CVar->get_configs('module' => 'Contacts');
 
   my @columns      = qw(
-    cp_id vcname vcnumber cp_name cp_givenname cp_street cp_phone1 cp_phone2
+    cp_id vcname vcnumber cp_name cp_givenname cp_street cp_zipcode cp_city cp_phone1 cp_phone2
     cp_mobile1 cp_mobile2 cp_email cp_abteilung cp_birthday cp_gender
   );
 
@@ -327,6 +327,8 @@ sub list_contacts {
     'cp_name'      => { 'text' => $::locale->text('Name'), },
     'cp_givenname' => { 'text' => $::locale->text('Given Name'), },
     'cp_street'    => { 'text' => $::locale->text('Street'), },
+    'cp_zipcode'   => { 'text' => $::locale->text('Zipcode'), },
+    'cp_city'      => { 'text' => $::locale->text('City'), },
     'cp_phone1'    => { 'text' => $::locale->text('Phone1'), },
     'cp_phone2'    => { 'text' => $::locale->text('Phone2'), },
     'cp_mobile1'   => { 'text' => $::locale->text('Mobile1'), },
index 1c24fe1..528ad8d 100644 (file)
@@ -9,16 +9,15 @@
       </td>
      </tr>
 
-    <tr>
-     <th align="left" nowrap>[% 'Gender' | $T8 %]</th>
-     <td>
-      <select id="cp_gender" name="cp_gender">
-       <option value="m"[% IF cp_gender == 'm' %] selected[% END %]>[% 'male' | $T8 %]</option>
-       <option value="f"[% IF cp_gender == 'f' %] selected[% END %]>[% 'female' | $T8 %]</option>
-      </select>
-     </td>
-    </tr>
-    <tr>
+     <tr>
+      <th align="left" nowrap>[% 'Gender' | $T8 %]</th>
+      <td>
+       <select id="cp_gender" name="cp_gender">
+        <option value="m"[% IF cp_gender == 'm' %] selected[% END %]>[% 'male' | $T8 %]</option>
+        <option value="f"[% IF cp_gender == 'f' %] selected[% END %]>[% 'female' | $T8 %]</option>
+       </select>
+      </td>
+     </tr>
 
      <tr>
       <th align="left" nowrap>[% 'Title' | $T8 %]</th>
       <td><input id="cp_name" name="cp_name" size="40" maxlength="75" value="[% HTML.escape(cp_name) %]"></td>
      </tr>
 
+     <tr>
+      <th align="left" nowrap>[% 'E-mail' | $T8 %]</th>
+      <td><input id="cp_email" name="cp_email" size="40" value="[% HTML.escape(cp_email) %]"></td>
+     </tr>
+
      <tr>
       <th align="left" nowrap>[% 'Phone1' | $T8 %]</th>
       <td><input id="cp_phone1" name="cp_phone1" size="40" maxlength="75" value="[% HTML.escape(cp_phone1) %]"></td>
      </tr>
 
      <tr>
-      <th align="left" nowrap>[% 'E-mail' | $T8 %]</th>
-      <td><input id="cp_email" name="cp_email" size="40" value="[% HTML.escape(cp_email) %]"></td>
+      <th align="left" nowrap>[% 'Street' | $T8 %]</th>
+      <td><input id="cp_street" name="cp_street" size="40" maxlength="75" value="[% HTML.escape(cp_street) %]"></td>
+     </tr>
+
+     <tr>
+      <th align="left" nowrap>[% 'Zip, City' | $T8 %]</th>
+      <td>
+       <input id="cp_zipcode" name="cp_zipcode" size="5" maxlength="10" value="[% HTML.escape(cp_zipcode) %]">
+       <input id="cp_city" name="cp_city" size="25" maxlength="75" value="[% HTML.escape(cp_city) %]">
+      </td>
      </tr>
 
      <tr>
index be67814..0f7c127 100644 (file)
         <input name="l.cp_givenname" id="l_cp_givenname" type="checkbox" class="checkbox" value="Y" checked>
         <label for="l_cp_givenname">[% 'Given Name' | $T8 %]</label>
        </td>
+      </tr>
+      <tr>
        <td>
         <input name="l.cp_street" id="l_cp_street" type="checkbox" class="checkbox" value="Y">
         <label for="l_cp_street">[% 'Street' | $T8 %]</label>
        </td>
+       <td>
+        <input name="l.cp_zipcode" id="l_cp_zipcode" type="checkbox" class="checkbox" value="Y">
+        <label for="l_cp_zipcode">[% 'Zipcode' | $T8 %]</label>
+       </td>
+       <td>
+        <input name="l.cp_city" id="l_cp_city" type="checkbox" class="checkbox" value="Y">
+        <label for="l_cp_city">[% 'City' | $T8 %]</label>
+       </td>
       </tr>
       <tr>
        <td>