Permalink
Browse files

[MDL-15425] Search Filters are too persistant

  • Loading branch information...
1 parent 6e91016 commit 4e96b320ecb8449d2650dcbadbb675a2833d4b43 robertall committed Oct 24, 2008
Showing with 19 additions and 12 deletions.
  1. +7 −3 mod/data/lib.php
  2. +12 −9 mod/data/view.php
View
@@ -881,7 +881,7 @@ function data_get_participants($dataid) {
* @param string $template *
* output null *
************************************************************************/
-function data_print_template($template, $records, $data, $search='',$page=0, $return=false) {
+function data_print_template($template, $records, $data, $search='', $page=0, $return=false) {
global $CFG;
$cm = get_coursemodule_from_instance('data', $data->id);
$context = get_context_instance(CONTEXT_MODULE, $cm->id);
@@ -924,11 +924,14 @@ function data_print_template($template, $records, $data, $search='',$page=0, $re
$replacement[] = '';
$replacement[] = '';
}
+
+ $moreurl = $CFG->wwwroot . '/mod/data/view.php?d=' . $data->id . '&rid=' . $record->id;
+ $search && $moreurl .= '&filter=1';
$patterns[]='##more##';
- $replacement[] = '<a href="'.$CFG->wwwroot.'/mod/data/view.php?d='.$data->id.'&amp;rid='.$record->id.'"><img src="'.$CFG->pixpath.'/i/search.gif" class="iconsmall" alt="'.get_string('more', 'data').'" title="'.get_string('more', 'data').'" /></a>';
+ $replacement[] = '<a href="' . $moreurl . '"><img src="' . $CFG->pixpath . '/i/search.gif" class="iconsmall" alt="' . get_string('more', 'data') . '" title="' . get_string('more', 'data') . '" /></a>';
$patterns[]='##moreurl##';
- $replacement[] = $CFG->wwwroot.'/mod/data/view.php?d='.$data->id.'&amp;rid='.$record->id;
+ $replacement[] = $moreurl;
$patterns[]='##user##';
$replacement[] = '<a href="'.$CFG->wwwroot.'/user/view.php?id='.$record->userid.
@@ -1101,6 +1104,7 @@ function showHideAdvSearch(checked) {
//]]>
</script>';
echo '&nbsp;<input type="hidden" name="advanced" value="0" />';
+ echo '&nbsp;<input type="hidden" name="filter" value="1" />';
echo '&nbsp;<input type="checkbox" id="advancedcheckbox" name="advanced" value="1" '.$checked.' onchange="showHideAdvSearch(this.checked);" /><label for="advancedcheckbox">'.get_string('advancedsearch', 'data').'</label>';
echo '&nbsp;<input type="submit" value="'.get_string('savesettings','data').'" />';
echo '<br />';
View
@@ -30,11 +30,12 @@
require_once('pagelib.php');
/// One of these is necessary!
- $id = optional_param('id', 0, PARAM_INT); // course module id
- $d = optional_param('d', 0, PARAM_INT); // database id
- $rid = optional_param('rid', 0, PARAM_INT); //record id
-
- $mode = optional_param('mode', '', PARAM_ALPHA); // Force the browse mode ('single')
+ $id = optional_param('id', 0, PARAM_INT); // course module id
+ $d = optional_param('d', 0, PARAM_INT); // database id
+ $rid = optional_param('rid', 0, PARAM_INT); //record id
+ $mode = optional_param('mode', '', PARAM_ALPHA); // Force the browse mode ('single')
+ $filter = optional_param('filter', 0, PARAM_BOOL);
+ // search filter will only be applied when $filter is true
$edit = optional_param('edit', -1, PARAM_BOOL);
$page = optional_param('page', 0, PARAM_INT);
@@ -143,8 +144,7 @@
//(even if page 0 is revisited).
//A false $paging flag generates advanced search results based on the fields input by the user.
//A true $paging flag generates davanced search results from the $SESSION global.
- //(See lines 147-158)
-
+
$paging = optional_param('paging', NULL, PARAM_BOOL);
if($page == 0 && !isset($paging)) {
$paging = false;
@@ -222,6 +222,9 @@
$paging = NULL;
}
+ // Disable search filters if $filter is not true:
+ $filter || $search = '';
+
$textlib = textlib_get_instance();
if ($textlib->strlen($search) < 2) {
$search = '';
@@ -577,8 +580,8 @@
}
if ($mode == 'single') { // Single template
- $baseurl = 'view.php?d='.$data->id.'&amp;mode=single&amp;';
-
+ $baseurl = 'view.php?d=' . $data->id . '&amp;mode=single&amp;';
+ $search && $baseurl .= 'filter=1&amp;';
print_paging_bar($totalcount, $page, $nowperpage, $baseurl, $pagevar='page');
if (empty($data->singletemplate)){

0 comments on commit 4e96b32

Please sign in to comment.