From d06c20db2531cec31cc856bb534e81363b38f1bf Mon Sep 17 00:00:00 2001
From: tbrehm <t.brehm@ispconfig.org>
Date: Wed, 23 Nov 2011 04:43:08 -0500
Subject: [PATCH] Fixed: FS#1877 - Redirect Bug

---
 interface/lib/classes/listform_actions.inc.php |   51 ++++++++++++++++++++++++++-------------------------
 1 files changed, 26 insertions(+), 25 deletions(-)

diff --git a/interface/lib/classes/listform_actions.inc.php b/interface/lib/classes/listform_actions.inc.php
index cfe880c..a35aca9 100644
--- a/interface/lib/classes/listform_actions.inc.php
+++ b/interface/lib/classes/listform_actions.inc.php
@@ -1,7 +1,7 @@
 <?php
 
 /*
-Copyright (c) 2005, Till Brehm, projektfarm Gmbh
+Copyright (c) 2007, Till Brehm, projektfarm Gmbh
 All rights reserved.
 
 Redistribution and use in source and binary forms, with or without modification,
@@ -28,29 +28,19 @@
 EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 */
 
-/**
-* Action framework for the listform library.
-*
-* @author Till Brehm <t.brehm@scrigo.org>
-* @copyright Copyright &copy; 2005, Till Brehm
-*/
-
 class listform_actions {
 	
 	private $id;
-	private $idx_key;
-	private $DataRowColor;
-	private $SQLExtWhere = '';
-	private $SQLOrderBy = '';
+	public $idx_key;
+	public $DataRowColor;
+	public  $SQLExtWhere = '';
+	public  $SQLOrderBy = '';
 	
 	public function onLoad()
     {
 		global $app, $conf, $list_def_file;
 		
-        //TODO: this is_object checking should be in the $appobject - pedro notes
-		if(!@is_object($app->tpl)) $app->uses('tpl');
-		if(!@is_object($app->listform)) $app->uses('listform');
-		if(!@is_object($app->tform)) $app->uses('tform');
+		$app->uses('tpl,listform,tform');
 		
 		//* Clear session variable that is used when lists are embedded with the listview plugin
 		$_SESSION['s']['form']['return_to'] = '';
@@ -69,7 +59,6 @@
 		// Getting Datasets from DB
 		$records = $app->db->queryAllRecords($this->getQueryString());
 
-
 		$this->DataRowColor = "#FFFFFF";
 		$records_new = '';
 		if(is_array($records)) {
@@ -86,7 +75,7 @@
 		
 	}
 	
-	private function prepareDataRow($rec)
+	public function prepareDataRow($rec)
     {
 		global $app;
 		
@@ -97,10 +86,17 @@
 		$rec['bgcolor'] = $this->DataRowColor;
 		
 		//* substitute value for select fields
-		foreach($app->listform->listDef['item'] as $field) {
-			$key = $field['field'];
-			if(isset($field['formtype']) && $field['formtype'] == 'SELECT') {
-				$rec[$key] = $field['value'][$rec[$key]];
+		if(is_array($app->listform->listDef['item']) && count($app->listform->listDef['item']) > 0) {
+			foreach($app->listform->listDef['item'] as $field) {
+				$key = $field['field'];
+				if(isset($field['formtype']) && $field['formtype'] == 'SELECT') {
+					if(strtolower($rec[$key]) == 'y' or strtolower($rec[$key]) == 'n') {
+						// Set a additional image variable for bolean fields
+						$rec['_'.$key.'_'] = (strtolower($rec[$key]) == 'y')?'x16/tick_circle.png':'x16/cross_circle.png';
+					}
+					//* substitute value for select field
+					$rec[$key] = @$field['value'][$rec[$key]];
+				}
 			}
 		}
 		
@@ -138,14 +134,19 @@
 	}
 	
 	
-	private function onShow()
+	public function onShow()
     {
 		global $app;
 		
-		//* Set Language File
-		$lng_file = 'lib/lang/'.$_SESSION['s']['language'].'_'.$app->listform->listDef['name'].'_list.lng';
+		//* Set global Language File
+		$lng_file = ISPC_LIB_PATH.'/lang/'.$_SESSION['s']['language'].'.lng';
+		if(!file_exists($lng_file))
+		$lng_file = ISPC_LIB_PATH.'/lang/en.lng';
 		include($lng_file);
 		$app->tpl->setVar($wb);
+		
+		$app->tpl->setVar('toolsarea_head_txt',$app->lng('toolsarea_head_txt'));
+		$app->tpl->setVar($app->listform->wordbook);
 		$app->tpl->setVar('form_action', $app->listform->listDef['file']);
 		
 		//* Parse the templates and send output to the browser

--
Gitblit v1.9.1