Jan-Claas Dirks
2015-11-26 d88249237b563a89cf5bb2d037aad19f94d1e321
interface/lib/classes/listform.inc.php
@@ -124,6 +124,17 @@
            $this->errorMessage .= "Custom datasource class or function is empty<br />\r\n";
         }
      }
      if($api == false && isset($field['filters']) && is_array($field['filters'])) {
         $new_values = array();
         foreach($values as $index => $value) {
            $new_index = $app->tform->filterField($index, $index, $field['filters'], 'SHOW');
            $new_values[$new_index] = $app->tform->filterField($index, (isset($values[$index]))?$values[$index]:'', $field['filters'], 'SHOW');
         }
         $values = $new_values;
         unset($new_values);
         unset($new_index);
      }
      return $values;
   }
@@ -186,6 +197,22 @@
            $table = $i['table'];
            $searchval = $_SESSION['search'][$list_name][$search_prefix.$field];
            // IDN
            if($searchval != ''){
               if(is_array($i['filters'])) {
                  foreach($i['filters'] as $searchval_filter) {
                     if($searchval_filter['event'] == 'SHOW') {
                        switch ($searchval_filter['type']) {
                        case 'IDNTOUTF8':
                           $searchval = $app->functions->idn_encode($searchval);
                           //echo $searchval;
                           break;
                        }
                     }
                  }
               }
            }
            // format user date format to MySQL date format 0000-00-00
            if($i['datatype'] == 'DATE' && $this->lng('conf_format_dateshort') != 'Y-m-d'){
               $dateformat = preg_replace("@[^Ymd]@", "", $this->lng('conf_format_dateshort'));
@@ -246,6 +273,7 @@
      return $this->pagingValues[$key];
   }
   /* TODO: maybe rewrite sql */
   public function getPagingSQL($sql_where = '1')
   {
      global $app, $conf;
@@ -283,7 +311,7 @@
      if($this->searchChanged == 1) $_SESSION['search'][$list_name]['page'] = 0;
      $sql_von = $app->functions->intval($_SESSION['search'][$list_name]['page'] * $records_per_page);
      $record_count = $app->db->queryOneRecord("SELECT count(*) AS anzahl FROM $table".($app->listform->listDef['additional_tables'] != ''? ','.$app->listform->listDef['additional_tables'] : '')." WHERE $sql_where");
      $record_count = $app->db->queryOneRecord("SELECT count(*) AS anzahl FROM ??".($app->listform->listDef['additional_tables'] != ''? ','.$app->listform->listDef['additional_tables'] : '')." WHERE $sql_where", $table);
      $pages = $app->functions->intval(($record_count['anzahl'] - 1) / $records_per_page);
@@ -482,7 +510,8 @@
      }
      return $record;
   }
   /* TODO: check double quoting of SQL */
   public function encode($record)
   {
      global $app;