public function display($discussion) { $button = false; $script = 'feature/flagdiscussion/flag.php'; if ($discussion->is_flagged()) { $flag = 0; $name = get_string('removeflag', 'forumngfeature_flagdiscussion'); $button = true; } else { if (!$discussion->is_deleted()) { $flag = 1; $name = get_string('flagdiscussion', 'forumngfeature_flagdiscussion'); $button = true; } } if ($button) { $html = parent::get_button($discussion, $name, $script, false, array('d' => $discussion->get_id(), 'flag' => $flag)); return html_writer::div($html, "forumng_flagdis fngflg{$flag}"); } }
public function display($discussion) { if (!$discussion->is_locked()) { return parent::get_button($discussion, get_string('lock', 'forumngfeature_lock'), 'editpost.php', false, array('lock' => 1)); } else { return parent::get_button($discussion, get_string('unlock', 'forumngfeature_lock'), 'feature/lock/unlock.php'); } }
public function display($discussion) { if (is_a($discussion, 'mod_forumng_discussion')) { return parent::get_button($discussion, get_string('export', 'forumngfeature_export'), 'feature/export/export.php', false, array(), '', false, true); } else { return forumngfeature_discussion_list::get_button($discussion, get_string('export', 'forumngfeature_export'), 'feature/export/exportall.php', false, $_GET, '', 'forumng-dselectorbutton', '', ''); } }
public function should_display($discussion) { if (is_a($discussion, 'mod_forumng_discussion')) { return parent::should_display($discussion); } if (is_a($discussion, 'mod_forumng')) { return $discussion->can_manage_discussions(0); } return true; }
public function display($discussion) { global $USER; $childposts = $discussion->get_root_post()->has_children(); $creator = $discussion->get_poster(); $deleted = $discussion->is_deleted(); $extrahtml = ''; if (!$deleted && ($childposts || $creator->id != $USER->id)) { $extrahtml = '<div class="forumng_deldiscussion"></div>'; } return parent::get_button($discussion, $discussion->is_deleted() ? get_string('undelete', 'forumng') : get_string('delete'), 'feature/delete/delete.php', false, array('delete' => $discussion->is_deleted() ? 0 : 1), $extrahtml); }
public function display($discussion) { global $SESSION; if (isset($SESSION->forumng_mergefrom)) { if ($SESSION->forumng_mergefrom->discussionid == $discussion->get_id() || $SESSION->forumng_mergefrom->forumid != $discussion->get_forum()->get_id()) { return parent::get_button($discussion, get_string('cancelmerge', 'forumngfeature_merge'), 'feature/merge/merge.php', true, array('stage' => 2, 'cancel' => 1), ' ' . get_string('cannotmergehere', 'forumngfeature_merge'), true); } else { return parent::get_button($discussion, get_string('mergehere', 'forumngfeature_merge'), 'feature/merge/merge.php', true, array('stage' => 2), '<input type="submit" name="cancel" value="' . get_string('cancel') . '" />', true); } } else { return parent::get_button($discussion, get_string('merge', 'forumngfeature_merge'), 'feature/merge/merge.php'); } }
/** * Displays row of buttons that go along the bottom of a discussion. * @return string HTML code for all feature buttons in this discussion */ public function display_forumngfeature_discussions() { // Get forum type $type = $this->get_forum()->get_type(); // Print discussion features $features = ''; foreach (forumngfeature_discussion::get_all() as $feature) { if ($feature->should_display($this) && $type->allow_forumngfeature_discussion($this, $feature)) { $features .= $feature->display($this); } } if ($features) { print '<div id="forumng-features">' . $features . '</div>'; } }
public function display($discussion) { return parent::get_button($discussion, get_string('discussionoptions', 'forumng'), 'editpost.php'); }
public function display($discussion) { return parent::get_button($discussion, get_string('print', 'forumngfeature_print'), 'feature/print/print.php', false, array(), '', false, true); }
public function display($discussion) { return parent::get_button($discussion, $discussion->is_deleted() ? get_string('undelete', 'forumng') : get_string('delete'), 'feature/delete/delete.php', false, array('delete' => $discussion->is_deleted() ? 0 : 1)); }
public function display($discussion) { return parent::get_button($discussion, get_string('forward', 'forumngfeature_forward'), 'feature/forward/forward.php', false, array(), '', false, true); }
public function display($discussion) { $params = $discussion->get_link_params_array(); return parent::get_button($discussion, get_string('markdiscussionread', 'forumngfeature_markdiscussionread'), 'markread.php', true, $params); }
/** * Checks to see whether user can tag discussions * @param object $discussion * @return boolean */ public function can_edit_tags($discussion) { global $USER; // Discussion, get forum details. $cm = $discussion->get_course_module(); $forum = $discussion->get_forum(); if (!$forum->can_tag_discussion()) { return false; } // Check to see whether user created the discussion. $user = $discussion->get_poster(); if ($USER->id == $user->id) { return true; } else { return parent::should_display($discussion); } }