From a01f0ec2151f4213d5a17b138909dd79a23ae4d2 Mon Sep 17 00:00:00 2001
From: tbrehm <t.brehm@ispconfig.org>
Date: Thu, 24 Nov 2005 10:04:27 -0500
Subject: [PATCH] added return to infos for lists
---
interface/lib/classes/tform_actions.inc.php | 18 ++++++++++++++++--
interface/lib/classes/plugin_listview.inc.php | 7 +++++++
interface/web/sites/mail_box_edit.php | 2 ++
3 files changed, 25 insertions(+), 2 deletions(-)
diff --git a/interface/lib/classes/plugin_listview.inc.php b/interface/lib/classes/plugin_listview.inc.php
index b6bea10..8cde0b7 100644
--- a/interface/lib/classes/plugin_listview.inc.php
+++ b/interface/lib/classes/plugin_listview.inc.php
@@ -73,6 +73,13 @@
$lng_file = "lib/lang/".$_SESSION["s"]["language"]."_".$app->listform->listDef['name']."_list.lng";
include($lng_file);
$listTpl->setVar($wb);
+
+ // Setting Returnto information in the session
+ $list_name = $app->listform->listDef["name"];
+ $_SESSION["s"]["list"][$list_name]["parent_id"] = $app->tform_actions->id;
+ $_SESSION["s"]["list"][$list_name]["parent_tab"] = $_SESSION["s"]["form"]["tab"];
+ $_SESSION["s"]["list"][$list_name]["parent_script"] = $app->tform->formDef["action"];
+ $_SESSION["s"]["form"]["return_to"] = $list_name;
return $listTpl->grab();
diff --git a/interface/lib/classes/tform_actions.inc.php b/interface/lib/classes/tform_actions.inc.php
index 74d7de9..7d40956 100644
--- a/interface/lib/classes/tform_actions.inc.php
+++ b/interface/lib/classes/tform_actions.inc.php
@@ -115,7 +115,14 @@
}
if($_REQUEST["next_tab"] == '') {
- header("Location: ".$app->tform->formDef['list_default']);
+ if($_SESSION["s"]["form"]["return_to"] != '') {
+ $list_name = $_SESSION["s"]["form"]["return_to"];
+ $redirect = "Location: ".$_SESSION["s"]["list"][$list_name]["parent_script"]."?id=".$_SESSION["s"]["list"][$list_name]["parent_id"]."&next_tab=".$_SESSION["s"]["list"][$list_name]["parent_tab"];
+ unset($_SESSION["s"]["form"]["return_to"]);
+ header($redirect);
+ } else {
+ header("Location: ".$app->tform->formDef['list_default']);
+ }
exit;
} else {
$this->onShow();
@@ -145,7 +152,14 @@
}
if($_REQUEST["next_tab"] == '') {
- header("Location: ".$app->tform->formDef['list_default']);
+ if($_SESSION["s"]["form"]["return_to"] != '') {
+ $list_name = $_SESSION["s"]["form"]["return_to"];
+ $redirect = "Location: ".$_SESSION["s"]["list"][$list_name]["parent_script"]."?id=".$_SESSION["s"]["list"][$list_name]["parent_id"]."&next_tab=".$_SESSION["s"]["list"][$list_name]["parent_tab"];
+ unset($_SESSION["s"]["form"]["return_to"]);
+ header($redirect);
+ } else {
+ header("Location: ".$app->tform->formDef['list_default']);
+ }
exit;
} else {
$this->onShow();
diff --git a/interface/web/sites/mail_box_edit.php b/interface/web/sites/mail_box_edit.php
index 715964f..e01137a 100644
--- a/interface/web/sites/mail_box_edit.php
+++ b/interface/web/sites/mail_box_edit.php
@@ -51,6 +51,8 @@
$app->uses('tpl,tform,tform_actions');
$app->load('tform_actions');
+die(print_r($_SESSION));
+
class page_action extends tform_actions {
function onShowEnd() {
--
Gitblit v1.9.1