From 7b47c0aa0aeee6f059f00008e36cc210ca89ecb9 Mon Sep 17 00:00:00 2001
From: tbrehm <t.brehm@ispconfig.org>
Date: Wed, 21 Aug 2013 10:28:20 -0400
Subject: [PATCH] Merged revisions 4069-4117 from stable branch.
---
interface/lib/classes/listform.inc.php | 31 ++++++++++++++++++++++++++-----
1 files changed, 26 insertions(+), 5 deletions(-)
diff --git a/interface/lib/classes/listform.inc.php b/interface/lib/classes/listform.inc.php
index e690a1c..197c406 100644
--- a/interface/lib/classes/listform.inc.php
+++ b/interface/lib/classes/listform.inc.php
@@ -180,9 +180,10 @@
if(@is_array($this->listDef['item'])) {
foreach($this->listDef['item'] as $i) {
$field = $i['field'];
+ $table = $i['table'];
// if($_REQUEST[$search_prefix.$field] != '') $sql_where .= " $field ".$i["op"]." '".$i["prefix"].$_REQUEST[$search_prefix.$field].$i["suffix"]."' and";
if(isset($_SESSION['search'][$list_name][$search_prefix.$field]) && $_SESSION['search'][$list_name][$search_prefix.$field] != ''){
- $sql_where .= " $field ".$i['op']." '".$app->db->quote($i['prefix'].$_SESSION['search'][$list_name][$search_prefix.$field].$i['suffix'])."' and";
+ $sql_where .= " ".($table != ''? $table.'.' : $this->listDef['table'].'.')."$field ".$i['op']." '".$app->db->quote($i['prefix'].$_SESSION['search'][$list_name][$search_prefix.$field].$i['suffix'])."' and";
}
}
}
@@ -192,10 +193,14 @@
public function getPagingSQL($sql_where = '1')
{
global $app, $conf;
-
- //* Add Global Limit from selectbox
- if(!empty($_POST['search_limit']) AND $app->functions->intval($_POST['search_limit'])){
+
+ //* Add Global Limit from selectbox
+ if(!empty($_POST['search_limit']) AND $app->functions->intval($_POST['search_limit']) > 0){
$_SESSION['search']['limit'] = $app->functions->intval($_POST['search_limit']);
+ }
+
+ if(preg_match('{^[0-9]$}',$_SESSION['search']['limit'])){
+ $_SESSION['search']['limit'] = 15;
}
//* Get Config variables
@@ -216,7 +221,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 WHERE $sql_where");
+ $record_count = $app->db->queryOneRecord("SELECT count(*) AS anzahl FROM $table".($app->listform->listDef['additional_tables'] != ''? ','.$app->listform->listDef['additional_tables'] : '')." WHERE $sql_where");
$pages = $app->functions->intval(($record_count['anzahl'] - 1) / $records_per_page);
@@ -357,6 +362,16 @@
}
}
break;
+ case 'DATETIMETSTAMP':
+ if ($record[$key] > 0) {
+ // is value int?
+ if (preg_match("/^[0-9]+[\.]?[0-9]*$/", $record[$key], $p)) {
+ $record[$key] = date($this->lng('conf_format_datetime'), $record[$key]);
+ } else {
+ $record[$key] = date($this->lng('conf_format_datetime'), strtotime($record[$key]));
+ }
+ }
+ break;
case 'DATE':
if ($record[$key] > 0) {
// is value int?
@@ -422,6 +437,12 @@
$record[$key] = date('Y-m-d',strtotime($record[$key]));
}
break;
+
+ case 'DATETIMETSTAMP':
+ if($record[$key] > 0) {
+ $record[$key] = date('Y-m-d H:i:s',strtotime($record[$key]));
+ }
+ break;
case 'DATE':
if($record[$key] != '' && $record[$key] != '0000-00-00') {
--
Gitblit v1.9.1