/** * Display tag filter as a link or dropdown * @param array $taglist is array of tags * @param mod_forumng $forum * @param string $selectid of tag if selected * @return string for printing out */ public function render_tag_filter($taglist, $forum, $selectid = null) { $baseurl = 'view.php?' . $forum->get_link_params(mod_forumng::PARAM_HTML); if (isset($selectid)) { $tagname = htmlspecialchars($taglist[$selectid]->displayname); $taglink = get_string('removefiltering', 'forumng', $tagname); $taglink .= ' ('; $taglink .= html_writer::tag('a', get_string('show_all', 'forumng'), array('href' => $baseurl)); $taglink .= ')'; $out = html_writer::tag('div', $taglink, array('class' => 'forumng_discuss_tagfilter')); } else { // Display dropdown. foreach ($taglist as $tag) { $options[$tag->id] = htmlspecialchars($tag->displayname) . ' (' . $tag->count . ')'; } $tagurl = new moodle_url('/mod/forumng/view.php?', $forum->get_link_params_array(mod_forumng::PARAM_PLAIN)); $select = new single_select($tagurl, 'tag', $options, ''); $select->label = get_string('filterdiscussions', 'forumng'); $select->set_help_icon('forumngdiscusstagfilter', 'forumng'); $output = $this->render($select); $out = '<div class="forumng_discuss_tagfilter">' . $output . '</div>'; } return $out; }
/** * Display rating filter as a link or dropdown * @param mod_forumng $forum * @papam int $selectedid for choosing default value from dropdown * @return string for printing out */ public function render_ratings_filter($forum, $selectedid = 0) { // Display dropdown. $options = array(); $options[mod_forumng::GRADING_AVERAGE] = get_string('grading_average', 'forumng'); $options[mod_forumng::GRADING_COUNT] = get_string('grading_count', 'forumng'); $options[mod_forumng::GRADING_SUM] = get_string('grading_sum', 'forumng'); $usageurl = new moodle_url('/mod/forumng/feature/usage/usage.php?', $forum->get_link_params_array(mod_forumng::PARAM_PLAIN)); $select = new single_select($usageurl, 'ratings', $options, $selectedid, false); $select->label = get_string('forumngratingsfilter', 'forumngfeature_usage'); $select->set_help_icon('forumngratingsfilter', 'forumngfeature_usage'); $output = $this->render($select); $out = '<div class="forumng_ratings_filter">' . $output . '</div>'; return $out; }