From a9a6b283ce5104736b5c44d35272a8aedab6fcbb Mon Sep 17 00:00:00 2001
From: ftimme <ft@falkotimme.com>
Date: Fri, 30 Dec 2005 11:37:53 -0500
Subject: [PATCH] 

---
 interface/lib/classes/listform_actions.inc.php |   18 ++++++++++++++++++
 1 files changed, 18 insertions(+), 0 deletions(-)

diff --git a/interface/lib/classes/listform_actions.inc.php b/interface/lib/classes/listform_actions.inc.php
index 363401a..3f8cf9e 100644
--- a/interface/lib/classes/listform_actions.inc.php
+++ b/interface/lib/classes/listform_actions.inc.php
@@ -40,6 +40,7 @@
 	var $id;
 	var $idx_key;
 	var $DataRowColor;
+	var $SQLExtWhere = '';
 	
 	function onLoad() {
 		global $app, $conf, $list_def_file;
@@ -49,6 +50,11 @@
 		
 		// Load list definition
 		$app->listform->loadListDef($list_def_file);
+		
+		if(!is_file('templates/'.$app->listform->listDef["name"].'_list.htm')) {
+			$app->uses('listform_tpl_generator');
+			$app->listform_tpl_generator->buildHTML($app->listform->listDef);
+		}
 		
 		$app->tpl->newTemplate("form.tpl.htm");
 		$app->tpl->setInclude('content_tpl','templates/'.$app->listform->listDef["name"].'_list.htm');
@@ -81,6 +87,14 @@
 		$this->DataRowColor = ($this->DataRowColor == "#FFFFFF")?"#EEEEEE":"#FFFFFF";
 		$rec["bgcolor"] = $this->DataRowColor;
 		
+		// substitute value for select fields
+		foreach($app->listform->listDef["item"] as $field) {
+			$key = $field["field"];
+			if($field['formtype'] == "SELECT") {
+				$rec[$key] = $field['value'][$rec[$key]];
+			}
+		}
+		
 		// The variable "id" contains always the index variable
 		$rec["id"] = $rec[$this->idx_key];
 		
@@ -98,6 +112,10 @@
 				$sql_where = $app->tform->getAuthSQL('r')." and";
 			}
 		}
+		
+		if($this->SQLExtWhere != '') {
+			$sql_where .= " ".$this->SQLExtWhere." and";
+		}
 
 		$sql_where = $app->listform->getSearchSQL($sql_where);
 		$app->tpl->setVar($app->listform->searchValues);

--
Gitblit v1.9.1