{
    public function get_button_name()
    {
        return get_string('sticky_off', 'forumngfeature_sticky');
    }
    public function apply($discussion, $all, $selected, $formdata)
    {
        global $DB, $CFG;
        if ($discussion->can_manage_discussions()) {
            foreach ($selected as $postid) {
                $DB->set_field('forumng_discussions', 'sticky', 0, array('id' => $postid, 'deleted' => 0));
            }
            // Redirect to the view page.
            redirect($discussion->get_url(mod_forumng::PARAM_PLAIN));
        }
    }
    public function only_discussion_types()
    {
        return array('forumng-sticky');
    }
    public function exclude_discussion_types()
    {
        return array('forumng-deleted');
    }
}
if ($buttonselection = optional_param('sticky', '', PARAM_INT)) {
    forumngfeature_discussion_selector::go(new sticky_on_selector());
}
if ($buttonselection = optional_param('normal', '', PARAM_INT)) {
    forumngfeature_discussion_selector::go(new sticky_off_selector());
}
         */
        if (is_array($selected) && !empty($selected)) {
            $seltext = implode('x', $selected);
            $letters = array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j');
            $posts = '';
            $selarray = str_split($seltext);
            foreach ($selarray as $char) {
                $posts .= $char == 'x' ? $char : $letters[$char];
            }
        } else {
            $posts = '';
        }
        // Get the id of the forum.
        $forumngid = $discussion->get_id();
        require_once $CFG->libdir . '/portfoliolib.php';
        // Check if the forum is shared and pass the cloneid in the callback options.
        $linkparams = $discussion->get_link_params_array();
        if (array_key_exists('clone', $linkparams)) {
            $cloneid = $linkparams['clone'];
        } else {
            $cloneid = 0;
        }
        $button = new portfolio_add_button();
        $button->set_callback_options('forumng_discussions_portfolio_caller', array('forumngid' => $forumngid, 'cloneid' => $cloneid, 'discussionids' => $posts), 'mod_forumng');
        $button->set_formats(PORTFOLIO_FORMAT_PLAINHTML);
        // Redirect to the export page.
        redirect($button->to_html(PORTFOLIO_ADD_FAKE_URL));
    }
}
forumngfeature_discussion_selector::go(new export_discussion_selector());
            $params['selectd' . $discussionid] = $discussionid;
        }
        $params['id'] = $forum->get_course_module_id();
        $params['clone'] = optional_param('clone', 0, PARAM_INT);
        $group = mod_forumng::get_activity_group($forum->get_course_module());
        if (empty($group)) {
            $group = 0;
        }
        $params['group'] = $group;
        $params['multigroups'] = optional_param('multigroups', 0, PARAM_INT);
        $customdata = array('params' => $params, 'forum' => $forum);
        return new mod_forumng_moveall_form('movealltogroups.php', $customdata);
    }
    public function get_page_name()
    {
        return get_string('movealltitle', 'forumngfeature_move');
    }
    public function apply($discussion, $all, $selected, $formdata)
    {
    }
    public function only_discussion_types()
    {
        return array('forumng-discussion-short');
    }
    public function exclude_discussion_types()
    {
        return array('forumng-deleted');
    }
}
forumngfeature_discussion_selector::go(new move_discussion_selector());
        if (!isset($formdata->mailnow)) {
            $formdata->mailnow = false;
        }
        foreach ($selected as $postid) {
            // Call the lock for selected discussions.
            $discussion = mod_forumng_discussion::get_from_id($postid, $formdata->clone);
            if (!$discussion->is_deleted() && !$discussion->is_locked()) {
                $newpostid = $discussion->lock($formdata->subject, $formdata->message['text'], $formdata->message['format'], $formdata->attachments, $formdata->mailnow, '', '', $formdata->asmoderator);
                // Save attachments.
                file_save_draft_area_files($formdata->attachments, $filecontext->id, 'mod_forumng', 'attachment', $newpostid, null);
                $newtext = file_save_draft_area_files($formdata->message['itemid'], $filecontext->id, 'mod_forumng', 'message', $newpostid, null, $formdata->message['text']);
                if ($newtext !== $formdata->message['text']) {
                    mod_forumng_post::update_message_for_files($newpostid, $newtext);
                }
            }
        }
        // Redirect to the Main page.
        redirect('../../view.php?' . $forum->get_link_params(mod_forumng::PARAM_PLAIN));
    }
    public function only_discussion_types()
    {
        return array('forumng-discussion-short');
    }
    public function exclude_discussion_types()
    {
        return array('forumng-deleted', 'forumng-locked');
    }
}
// Outside the class.
forumngfeature_discussion_selector::go(new lockall_on_selector());