From f4f981d8f98e4f74a8d69d05a31ab63e188ea808 Mon Sep 17 00:00:00 2001
From: Till Brehm <tbrehm@ispconfig.org>
Date: Sun, 15 Nov 2015 08:00:17 -0500
Subject: [PATCH] Added missing delimiter settings in reseller form file.

---
 interface/lib/classes/listform.inc.php |   43 ++++++++++++++++++++++++++++++++++++-------
 1 files changed, 36 insertions(+), 7 deletions(-)

diff --git a/interface/lib/classes/listform.inc.php b/interface/lib/classes/listform.inc.php
index ef4d088..d4ed752 100644
--- a/interface/lib/classes/listform.inc.php
+++ b/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);
 
 
@@ -354,23 +382,23 @@
 		
 		//* Show Back
 		if(isset($vars['show_page_back']) && $vars['show_page_back'] == 1){
-			$content .= '<li><a href="'."javascript:loadContent('".$vars['list_file'].'?page=0'.$vars['page_params']."');".'" aria-label="First">
+			$content .= '<li><a href="#" data-load-content="'.$vars['list_file'].'?page=0'.$vars['page_params'].'" aria-label="First">
 			<span aria-hidden="true">&laquo;</span></a></li>';
-			$content .= '<li><a href="'."javascript:loadContent('".$vars['list_file'].'?page='.$vars['last_page'].$vars['page_params']."');".'" aria-label="Previous">
+			$content .= '<li><a href="#" data-load-content='.$vars['list_file'].'?page='.$vars['last_page'].$vars['page_params'].'" aria-label="Previous">
 			<span aria-hidden="true">&lsaquo;</span></a></li>';
 		}
 		$prev = -1;
 		foreach($show_pages as $p) {
 			if($prev != -1 && $p > $prev + 1) $content .= '<li class="disabled"><a href="#">…</a></li>';
-			$content .= '<li' . ($p == $vars['page'] ? ' class="active"' : '') . '><a href="'."javascript:loadContent('".$vars['list_file'].'?page='.$p.$vars['page_params']."');".'">'. ($p+1) .'</a></li>';
+			$content .= '<li' . ($p == $vars['page'] ? ' class="active"' : '') . '><a href="#" data-load-content="'.$vars['list_file'].'?page='.$p.$vars['page_params'].'">'. ($p+1) .'</a></li>';
 			$prev = $p;
 		}
 		//.$vars['next_page'].' '.$this->lng('page_of_txt').' '.$vars['max_pages'].' &nbsp; ';
 		//* Show Next
 		if(isset($vars['show_page_next']) && $vars['show_page_next'] == 1){
-			$content .= '<li><a href="'."javascript:loadContent('".$vars['list_file'].'?page='.$vars['next_page'].$vars['page_params']."');".'" aria-label="Next">
+			$content .= '<li><a href="#" data-load-content="'.$vars['list_file'].'?page='.$vars['next_page'].$vars['page_params'].'" aria-label="Next">
 			<span aria-hidden="true">&rsaquo;</span></a></li>';
-			$content .= '<li><a href="'."javascript:loadContent('".$vars['list_file'].'?page='.$vars['pages'].$vars['page_params']."');".'" aria-label="Last">
+			$content .= '<li><a href="#" data-load-content="'.$vars['list_file'].'?page='.$vars['pages'].$vars['page_params'].'" aria-label="Last">
 			<span aria-hidden="true">&raquo;</span></a></li>';
 		}
 		$content .= '</ul></nav>';
@@ -482,7 +510,8 @@
 		}
 		return $record;
 	}
-
+	
+	/* TODO: check double quoting of SQL */
 	public function encode($record)
 	{
 		global $app;

--
Gitblit v1.9.1