From 381908739bd76ec4e04ac77cd9975e8b4285f7eb Mon Sep 17 00:00:00 2001
From: tbrehm <t.brehm@ispconfig.org>
Date: Fri, 01 Aug 2008 15:51:58 -0400
Subject: [PATCH] Fixed several bugs in languages files and added missing translations.
---
interface/lib/classes/tform_actions.inc.php | 60 ++++++++++++++++++++++++++++++++++++++++++++----------------
1 files changed, 44 insertions(+), 16 deletions(-)
diff --git a/interface/lib/classes/tform_actions.inc.php b/interface/lib/classes/tform_actions.inc.php
index 034bb32..7b9a5a9 100644
--- a/interface/lib/classes/tform_actions.inc.php
+++ b/interface/lib/classes/tform_actions.inc.php
@@ -41,6 +41,7 @@
var $activeTab;
var $dataRecord;
var $plugins = array();
+ var $oldDataRecord; // This array is only filled during updates and when db_history is enabled.
function onLoad() {
global $app, $conf, $tform_def_file;
@@ -55,15 +56,15 @@
$app->tform->loadFormDef($tform_def_file);
// Importing ID
- $this->id = intval($_REQUEST["id"]);
+ $this->id = (isset($_REQUEST["id"]))?intval($_REQUEST["id"]):0;
// show print version of the form
- if($_GET["print_form"] == 1) {
+ if(isset($_GET["print_form"]) && $_GET["print_form"] == 1) {
$this->onPrintForm();
}
// send this form by email
- if($_GET["send_form_by_mail"] == 1) {
+ if(isset($_GET["send_form_by_mail"]) && $_GET["send_form_by_mail"] == 1) {
$this->onMailSendForm();
}
@@ -98,19 +99,17 @@
global $app, $conf;
$this->onBeforeUpdate();
-
+
$ext_where = '';
$sql = $app->tform->getSQL($this->dataRecord,$app->tform->getCurrentTab(),'UPDATE',$this->id,$ext_where);
if($app->tform->errorMessage == '') {
if($app->tform->formDef['db_history'] == 'yes') {
- $old_data_record = $app->tform->getDataRecord($this->id);
+ $this->oldDataRecord = $app->tform->getDataRecord($this->id);
}
-
- if(!empty($sql)) {
- $app->db->query($sql);
- if($app->db->errorMessage != '') die($app->db->errorMessage);
- }
+
+ // Save record in database
+ $this->onUpdateSave($sql);
// loading plugins
$next_tab = $app->tform->getCurrentTab();
@@ -126,7 +125,7 @@
// Write data history (sys_datalog)
if($app->tform->formDef['db_history'] == 'yes') {
$new_data_record = $app->tform->getDataRecord($this->id);
- $app->tform->datalogSave('UPDATE',$this->id,$old_data_record,$new_data_record);
+ $app->tform->datalogSave('UPDATE',$this->id,$this->oldDataRecord,$new_data_record);
unset($new_data_record);
unset($old_data_record);
}
@@ -160,6 +159,19 @@
$this->onError();
}
}
+
+ /*
+ Save record in database
+ */
+
+ function onUpdateSave($sql) {
+ global $app;
+ if(!empty($sql)) {
+ $app->db->query($sql);
+ if($app->db->errorMessage != '') die($app->db->errorMessage);
+ }
+ }
+
/**
* Function called on data insert
@@ -173,9 +185,8 @@
$ext_where = '';
$sql = $app->tform->getSQL($this->dataRecord,$app->tform->getCurrentTab(),'INSERT',$this->id,$ext_where);
if($app->tform->errorMessage == '') {
- $app->db->query($sql);
- if($app->db->errorMessage != '') die($app->db->errorMessage);
- $this->id = $app->db->insertID();
+
+ $this->id = $this->onInsertSave($sql);
// loading plugins
$next_tab = $app->tform->getCurrentTab();
@@ -221,6 +232,17 @@
$this->onError();
}
}
+
+ /*
+ Save record in database
+ */
+
+ function onInsertSave($sql) {
+ global $app, $conf;
+ $app->db->query($sql);
+ if($app->db->errorMessage != '') die($app->db->errorMessage);
+ return $app->db->insertID();
+ }
function onBeforeUpdate() {
global $app, $conf;
@@ -278,6 +300,8 @@
//$this->dataRecord = $app->db->queryOneRecord("SELECT * FROM ".$liste["table"]." WHERE ".$liste["table_idx"]." = ".$this->id);
$this->dataRecord = $app->tform->getDataRecord($this->id);
+
+ $this->onBeforeDelete();
// Saving record to datalog when db_history enabled
if($app->tform->formDef["db_history"] == 'yes') {
@@ -313,6 +337,10 @@
}
exit;
+ }
+
+ function onBeforeDelete() {
+ global $app, $conf;
}
function onAfterDelete() {
@@ -449,7 +477,7 @@
$app->tpl_defaults();
// Show the navigation bar of the form
- if($app->tform->formDef['navibar'] == 'yes') {
+ if(isset($app->tform->formDef['navibar']) && $app->tform->formDef['navibar'] == 'yes') {
$navibar = '';
if($app->tform->formDef['template_print'] != '') {
$navibar .= '<a href="'.$app->tform->formDef['action'].'?id='.$this->id.'&print_form=1" target="_blank"><img src="../themes/iprg/icons/printer.png" border="0" alt="Drucken" /></a> ';
@@ -530,7 +558,7 @@
function loadPlugins($next_tab) {
global $app;
- if(is_array($app->tform->formDef["tabs"][$next_tab]["plugins"])) {
+ if(@is_array($app->tform->formDef["tabs"][$next_tab]["plugins"])) {
$app->load('plugin_base');
foreach($app->tform->formDef["tabs"][$next_tab]["plugins"] as $plugin_name => $plugin_settings) {
$plugin_class = $plugin_settings["class"];
--
Gitblit v1.9.1