From 9156cc5152fd3e5aa2aa898bcd8dbe4cd2cec44b Mon Sep 17 00:00:00 2001
From: ftimme <ft@falkotimme.com>
Date: Wed, 06 Mar 2013 06:06:26 -0500
Subject: [PATCH] - Added -idle-timeout 300 to FastCgiExternalServer directive in Apache vhost.
---
interface/lib/classes/tform_actions.inc.php | 92 +++++++++++++++++++++++++++------------------
1 files changed, 55 insertions(+), 37 deletions(-)
diff --git a/interface/lib/classes/tform_actions.inc.php b/interface/lib/classes/tform_actions.inc.php
index 7fb553f..d60ecbf 100644
--- a/interface/lib/classes/tform_actions.inc.php
+++ b/interface/lib/classes/tform_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,19 +28,13 @@
EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-/**
-* Action framework for the tform library.
-*
-* @author Till Brehm <t.brehm@scrigo.org>
-* @copyright Copyright © 2005, Till Brehm
-*/
-
class tform_actions {
- var $id;
- var $activeTab;
- var $dataRecord;
- var $plugins = array();
+ public $id;
+ public $activeTab;
+ public $dataRecord;
+ public $plugins = array();
+ public $oldDataRecord; // This array is only filled during updates and when db_history is enabled.
function onLoad() {
global $app, $conf, $tform_def_file;
@@ -55,15 +49,17 @@
$app->tform->loadFormDef($tform_def_file);
// Importing ID
- $this->id = (isset($_REQUEST["id"]))?intval($_REQUEST["id"]):0;
+ $this->id = (isset($_REQUEST["id"]))?$app->functions->intval($_REQUEST["id"]):0;
// show print version of the form
if(isset($_GET["print_form"]) && $_GET["print_form"] == 1) {
+ die('Function disabled.');
$this->onPrintForm();
}
// send this form by email
if(isset($_GET["send_form_by_mail"]) && $_GET["send_form_by_mail"] == 1) {
+ die('Function disabled.');
$this->onMailSendForm();
}
@@ -84,9 +80,11 @@
// Calling the action functions
if($this->id > 0) {
- $this->onUpdate();
+ $app->tform->action == 'EDIT';
+ $this->onUpdate();
} else {
- $this->onInsert();
+ $app->tform->action == 'NEW';
+ $this->onInsert();
}
}
@@ -104,27 +102,29 @@
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);
}
// Save record in database
$this->onUpdateSave($sql);
-
+ $app->plugin->raiseEvent($_SESSION['s']['module']['name'].':'.$app->tform->formDef['name'].':'.'on_update_save',array('page_form'=>$this, 'sql'=>$sql));
+
// loading plugins
$next_tab = $app->tform->getCurrentTab();
$this->loadPlugins($next_tab);
// Call plugin
foreach($this->plugins as $plugin) {
- $plugin->onInsert();
+ $plugin->onUpdate();
}
-
- $this->onAfterUpdate();
+
+ $this->onAfterUpdate();
+ $app->plugin->raiseEvent($_SESSION['s']['module']['name'].':'.$app->tform->formDef['name'].':'.'on_after_update',$this);
// 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);
}
@@ -140,7 +140,7 @@
session_write_close();
header($redirect);
// When a returnto variable is set
- } elseif ($_SESSION["s"]["form"]["return_to_url"] != '') {
+ } elseif (isset($_SESSION["s"]["form"]["return_to_url"]) && $_SESSION["s"]["form"]["return_to_url"] != '') {
$redirect = $_SESSION["s"]["form"]["return_to_url"];
$_SESSION["s"]["form"]["return_to_url"] = '';
session_write_close();
@@ -165,7 +165,7 @@
function onUpdateSave($sql) {
global $app;
- if(!empty($sql)) {
+ if(!empty($sql) && !$app->tform->isReadonlyTab($app->tform->getCurrentTab(),$this->id)) {
$app->db->query($sql);
if($app->db->errorMessage != '') die($app->db->errorMessage);
}
@@ -186,7 +186,8 @@
if($app->tform->errorMessage == '') {
$this->id = $this->onInsertSave($sql);
-
+ $app->plugin->raiseEvent($_SESSION['s']['module']['name'].':'.$app->tform->formDef['name'].':'.'on_insert_save',array('page_form'=>$this, 'sql'=>$sql));
+
// loading plugins
$next_tab = $app->tform->getCurrentTab();
$this->loadPlugins($next_tab);
@@ -197,7 +198,8 @@
}
$this->onAfterInsert();
-
+ $app->plugin->raiseEvent($_SESSION['s']['module']['name'].':'.$app->tform->formDef['name'].':'.'on_after_insert',$this);
+
// Write data history (sys_datalog)
if($app->tform->formDef['db_history'] == 'yes') {
$new_data_record = $app->tform->getDataRecord($this->id);
@@ -216,9 +218,10 @@
header($redirect);
exit;
} elseif ($_SESSION["s"]["form"]["return_to_url"] != '') {
+ $redirect = $_SESSION["s"]["form"]["return_to_url"];
$_SESSION["s"]["form"]["return_to_url"] = '';
session_write_close();
- header("Location: ".$_SESSION["s"]["form"]["return_to_url"]);
+ header("Location: ".$redirect);
exit;
} else {
header("Location: ".$app->tform->formDef['list_default']);
@@ -267,7 +270,7 @@
function onError() {
global $app, $conf;
- $app->tpl->setVar("error","<b>".$app->lng('Error').":</b><br>".$app->tform->errorMessage);
+ $app->tpl->setVar("error","<li>".$app->tform->errorMessage."</li>");
$app->tpl->setVar($this->dataRecord);
$this->onShow();
}
@@ -288,7 +291,7 @@
$app->tform->loadFormDef($tform_def_file);
// importing ID
- $this->id = intval($_REQUEST["id"]);
+ $this->id = $app->functions->intval($_REQUEST["id"]);
if($this->id > 0) {
@@ -299,6 +302,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,13 +318,14 @@
$next_tab = $app->tform->getCurrentTab();
$this->loadPlugins($next_tab);
-
+
// Call plugin
foreach($this->plugins as $plugin) {
$plugin->onDelete();
}
$this->onAfterDelete();
+ $app->plugin->raiseEvent($_SESSION['s']['module']['name'].':'.$app->tform->formDef['name'].':'.'on_after_delete',$this);
}
//header("Location: ".$liste["file"]."?PHPSESSID=".$_SESSION["s"]["id"]);
@@ -334,6 +340,10 @@
}
exit;
+ }
+
+ function onBeforeDelete() {
+ global $app, $conf;
}
function onAfterDelete() {
@@ -355,7 +365,7 @@
if($app->tform->formDef['auth'] == 'no') {
$sql = "SELECT * FROM ".$app->tform->formDef['db_table']." WHERE ".$app->tform->formDef['db_table_idx']." = ".$this->id;
} else {
- $sql = "SELECT * FROM ".$app->tform->formDef['db_table']." WHERE ".$app->tform->formDef['db_table_idx']." = ".$this->id." AND ".$app->tform->getAuthSQL('u');
+ $sql = "SELECT * FROM ".$app->tform->formDef['db_table']." WHERE ".$app->tform->formDef['db_table_idx']." = ".$this->id." AND ".$app->tform->getAuthSQL('r');
}
if(!$record = $app->db->queryOneRecord($sql)) $app->error($app->lng('error_no_view_permission'));
@@ -396,7 +406,7 @@
if($app->tform->formDef['auth'] == 'no') {
$sql = "SELECT * FROM ".$app->tform->formDef['db_table']." WHERE ".$app->tform->formDef['db_table_idx']." = ".$this->id;
} else {
- $sql = "SELECT * FROM ".$app->tform->formDef['db_table']." WHERE ".$app->tform->formDef['db_table_idx']." = ".$this->id." AND ".$app->tform->getAuthSQL('u');
+ $sql = "SELECT * FROM ".$app->tform->formDef['db_table']." WHERE ".$app->tform->formDef['db_table_idx']." = ".$this->id." AND ".$app->tform->getAuthSQL('r');
}
if(!$record = $app->db->queryOneRecord($sql)) $app->error($app->lng('error_no_view_permission'));
@@ -416,11 +426,11 @@
$headers .= "Content-type: text/html; charset=iso-8859-1\n";
$headers .= "From: $sender\n";
- if (!ereg('^[-!#$%&\'*+\\./0-9=?A-Z^_`a-z{|}~]+' . '@' . '([-!#$%&\'*+\\/0-9=?A-Z^_`a-z{|}~]+\.)+' . '[-!#$%&\'*+\\./0-9=?A-Z^_`a-z{|}~]+$', $sender)) {
+ if (!preg_match('/^[-!#$%&\'*+\\./0-9=?A-Z^_`a-z{|}~]+' . '@' . '([-!#$%&\'*+\\/0-9=?A-Z^_`a-z{|}~]+\.)+' . '[-!#$%&\'*+\\./0-9=?A-Z^_`a-z{|}~]+$/', $sender)) {
$sender = 'noreply@iprguard.de';
}
- if (ereg('^[-!#$%&\'*+\\./0-9=?A-Z^_`a-z{|}~]+' . '@' . '([-!#$%&\'*+\\/0-9=?A-Z^_`a-z{|}~]+\.)+' . '[-!#$%&\'*+\\./0-9=?A-Z^_`a-z{|}~]+$', $email)) {
+ if (preg_match('/^[-!#$%&\'*+\\./0-9=?A-Z^_`a-z{|}~]+' . '@' . '([-!#$%&\'*+\\/0-9=?A-Z^_`a-z{|}~]+\.)+' . '[-!#$%&\'*+\\./0-9=?A-Z^_`a-z{|}~]+$/', $email)) {
mail($email, 'Domainrecherche Statement '.$record["domain"], $email_message, $headers);
}
echo "<p> </p><p>Email wurde versand.</p>";
@@ -432,7 +442,7 @@
if($app->tform->formDef['auth'] == 'no') {
$sql = "SELECT * FROM ".$app->tform->formDef['db_table']." WHERE ".$app->tform->formDef['db_table_idx']." = ".$this->id;
} else {
- $sql = "SELECT * FROM ".$app->tform->formDef['db_table']." WHERE ".$app->tform->formDef['db_table_idx']." = ".$this->id." AND ".$app->tform->getAuthSQL('u');
+ $sql = "SELECT * FROM ".$app->tform->formDef['db_table']." WHERE ".$app->tform->formDef['db_table_idx']." = ".$this->id." AND ".$app->tform->getAuthSQL('r');
}
if(!$record = $app->db->queryOneRecord($sql)) $app->error($app->lng('error_no_view_permission'));
@@ -476,11 +486,19 @@
$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> ';
}
if($app->tform->formDef['template_mailsend'] != '') {
- $navibar .= "<a href=\"#\" onClick=\"window.open('".$app->tform->formDef['action'].'?id='.$this->id."&send_form_by_mail=1','send','width=370,height=240')\"><img src=\"../themes/iprg/icons/mail.png\" border=\"0\" alt=\"Als E-Mail versenden\" /></a>";
+ $navibar .= "<a href=\"#\" onclick=\"window.open('".$app->tform->formDef['action'].'?id='.$this->id."&send_form_by_mail=1','send','width=370,height=240')\"><img src=\"../themes/iprg/icons/mail.png\" border=\"0\" alt=\"Als E-Mail versenden\" /></a>";
}
$app->tpl->setVar('form_navibar',$navibar);
}
+ if(isset($_SESSION['show_info_msg'])) {
+ $app->tpl->setVar('show_info_msg', $_SESSION['show_info_msg']);
+ unset($_SESSION['show_info_msg']);
+ }
+ if(isset($_SESSION['show_error_msg'])) {
+ $app->tpl->setVar('show_error_msg', $_SESSION['show_error_msg']);
+ unset($_SESSION['show_error_msg']);
+ }
// loading plugins
$this->loadPlugins($this->active_tab);
@@ -523,14 +541,14 @@
// bestehenden Datensatz anzeigen
if($app->tform->errorMessage == '') {
if($app->tform->formDef['auth'] == 'yes' && $_SESSION["s"]["user"]["typ"] != 'admin') {
- $sql = "SELECT * FROM ".$app->tform->formDef['db_table']." WHERE ".$app->tform->formDef['db_table_idx']." = ".$this->id." AND ".$app->tform->getAuthSQL('u');
+ $sql = "SELECT * FROM ".$app->tform->formDef['db_table']." WHERE ".$app->tform->formDef['db_table_idx']." = ".$this->id." AND ".$app->tform->getAuthSQL('r');
} else {
$sql = "SELECT * FROM ".$app->tform->formDef['db_table']." WHERE ".$app->tform->formDef['db_table_idx']." = ".$this->id;
}
if(!$record = $app->db->queryOneRecord($sql)) $app->error($app->lng('error_no_view_permission'));
} else {
// $record = $app->tform->encode($_POST,$this->active_tab);
- $record = $app->tform->encode($this->dataRecord,$this->active_tab);
+ $record = $app->tform->encode($this->dataRecord,$this->active_tab,false);
}
$this->dataRecord = $record;
--
Gitblit v1.9.1