From: skodak Date: Wed, 16 Apr 2008 13:54:01 +0000 (+0000) Subject: MDL-9907 searching/sorting by author name fixed when paging, MDL-14389 more transitio... X-Git-Url: http://git.mjollnir.org/gw?a=commitdiff_plain;h=de8ff5813d06dce55414c503d8ef11df889bc91e;p=moodle.git MDL-9907 searching/sorting by author name fixed when paging, MDL-14389 more transition fixes; merged from MOODLE_19_STABLE --- diff --git a/mod/data/lib.php b/mod/data/lib.php index 05f51e9aca..b5fe97c3b8 100755 --- a/mod/data/lib.php +++ b/mod/data/lib.php @@ -1130,6 +1130,7 @@ function data_print_preference_form($data, $perpage, $search, $sort='', $order=' // End --> //]]> '; + echo ' '; echo ' '; echo ' '; diff --git a/mod/data/view.php b/mod/data/view.php index 1d27c0bdb5..14101b78cc 100755 --- a/mod/data/view.php +++ b/mod/data/view.php @@ -105,7 +105,17 @@ $SESSION->dataprefs[$data->id]['advanced'] = 0; $SESSION->dataprefs[$data->id]['order'] = ($data->defaultsortdir == 0) ? 'ASC' : 'DESC'; } - $advanced = optional_param('advanced', $SESSION->dataprefs[$data->id]['advanced'], PARAM_INT); + + $advanced = optional_param('advanced', -1, PARAM_INT); + if ($advanced == -1) { + $advanced = $SESSION->dataprefs[$data->id]['advanced']; + } else { + if (!$advanced) { + // explicitly switched to normal mode - discard all advanced search settings + $SESSION->dataprefs[$data->id]['search_array'] = array(); + } + } + $search_array = $SESSION->dataprefs[$data->id]['search_array']; if (!empty($advanced)) { @@ -166,8 +176,8 @@ $fn = optional_param('u_fn', '', PARAM_NOTAGS); $ln = optional_param('u_ln', '', PARAM_NOTAGS); } else { - $fn = isset($search_array[DATA_FIRSTNAME]) ? $search_array[DATA_FIRSTNAME] : ''; - $ln = isset($search_array[DATA_LASTNAME]) ? $search_array[DATA_LASTNAME] : ''; + $fn = isset($search_array[DATA_FIRSTNAME]) ? $search_array[DATA_FIRSTNAME]->data : ''; + $ln = isset($search_array[DATA_LASTNAME]) ? $search_array[DATA_LASTNAME]->data : ''; } if (!empty($fn)) { $search_array[DATA_FIRSTNAME] = new object(); @@ -633,7 +643,7 @@ } //Advanced search form doesn't make sense for single (redirects list view) - if ($records || $search || $page || $mode == 'asearch' && $mode != 'single') { + if (($records || $search || $page || $mode == 'asearch') && $mode != 'single') { data_print_preference_form($data, $perpage, $search, $sort, $order, $search_array, $advanced, $mode); }