From b900e49f541098c978d75ee623c23eb55713a3c0 Mon Sep 17 00:00:00 2001 From: abijah Date: Thu, 6 Aug 2009 18:06:57 +0000 Subject: [PATCH] Added mechanism to do a full replacement of specified post parameters, instead of just merging. git-svn-id: file:///svn-source/pmgr/branches/yafr_20090716/site@495 97e9348a-65ac-dc4b-aefc-98561f571b83 --- app_controller.php | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/app_controller.php b/app_controller.php index 9d306a5..b791b17 100644 --- a/app_controller.php +++ b/app_controller.php @@ -189,17 +189,26 @@ class AppController extends Controller { // This SHOULD always be set, except when debugging if (isset($params['post'])) $params['post'] = unserialize($params['post']); + else + $params['post'] = array(); // Unserialize our complex structure of dynamic post data if (isset($params['dynamic_post'])) $params['dynamic_post'] = unserialize($params['dynamic_post']); + else + $params['dynamic_post'] = null; + + // Unserialize our complex structure of dynamic post data + if (isset($params['dynamic_post_replace'])) + $params['dynamic_post_replace'] = unserialize($params['dynamic_post_replace']); + else + $params['dynamic_post_replace'] = null; // Merge the static and dynamic post data - if (empty($params['post']) && !empty($params['dynamic_post'])) - $params['post'] = $params['dynamic_post']; - elseif (!empty($params['post']) && !empty($params['dynamic_post'])) - //$params['post'] = array_merge($params['post'], $params['dynamic_post']); + if (!empty($params['dynamic_post'])) $params['post'] = array_merge_recursive($params['post'], $params['dynamic_post']); + if (!empty($params['dynamic_post_replace'])) + $params['post'] = array_merge($params['post'], $params['dynamic_post_replace']); // This SHOULD always be set, except when debugging if (!isset($params['post']['fields'])) @@ -682,7 +691,7 @@ class AppController extends Controller { function gridDataPostProcessLinks(&$params, &$model, &$records, $links) { // Don't create any links if ordered not to. - if (isset($params['nolinks'])) + if (isset($params['post']['nolinks'])) return; foreach ($links AS $table => $fields) {