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 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');
     }
 }
 public function display($discussion)
 {
     global $PAGE;
     if ($PAGE->pagetype == 'mod-forumng-discuss') {
         if (!$discussion->is_locked()) {
             $button = parent::get_button($discussion, get_string('lock', 'forumngfeature_lock'), 'editpost.php', false, array('lock' => 1));
         } else {
             $button = parent::get_button($discussion, get_string('unlock', 'forumngfeature_lock'), 'feature/lock/unlock.php');
         }
     } else {
         // Main page lock button.
         $params['exclude'] = 'forumng-deleted,forumng-locked';
         $lock_get = array_merge($params, $_GET);
         $button = forumngfeature_discussion_list::get_button($discussion, get_string('lockdis', 'forumngfeature_lock'), 'feature/lock/lockall.php', false, $lock_get, '', 'forumng-dselectorbutton');
     }
     return $button;
 }
 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);
 }
 public function display($discussion)
 {
     global $USER;
     if (is_a($discussion, 'mod_forumng')) {
         $script = 'feature/edittags/managetags.php';
         $name = get_string('settags', 'forumngfeature_edittags');
         return forumngfeature_discussion_list::get_button($discussion, $name, $script, false, array());
     } else {
         // It is a discussion so need slightly different set up.
         $script = 'feature/edittags/edittags.php';
         $name = get_string('edittags', 'forumngfeature_edittags');
         $tagout = '';
         $tags = $discussion->get_tags();
         if ($tags) {
             $tagout = html_writer::start_tag('div', array('class' => 'forum-feature-edittags'));
             $tagout .= html_writer::start_tag('strong');
             $tagout .= html_writer::tag('span', get_string('discussiontags', 'forumng') . ': ');
             $tagout .= html_writer::end_tag('strong');
             $i = 1;
             foreach ($tags as $key => $value) {
                 if (count($tags) != $i) {
                     $tagout .= $value . ', ';
                 } else {
                     $tagout .= $value . ' ';
                 }
                 $i++;
             }
             if ($this->can_edit_tags($discussion)) {
                 $tagout .= parent::get_button($discussion, $name, $script, false, array('d' => $discussion->get_id()));
             }
             $tagout .= html_writer::end_tag('div');
         } else {
             if ($this->can_edit_tags($discussion)) {
                 $tagout = html_writer::start_tag('div', array('class' => 'forum-feature-edittags'));
                 $tagout .= html_writer::start_tag('strong');
                 $tagout .= html_writer::tag('span', get_string('nodiscussionset', 'forumngfeature_edittags'));
                 $tagout .= html_writer::end_tag('strong');
                 $tagout .= parent::get_button($discussion, $name, $script, false, array('d' => $discussion->get_id()));
                 $tagout .= html_writer::end_tag('div');
             }
         }
         return $tagout;
     }
 }