예제 #1
0
$repack = request_var('repack', 0);
if ($repack) {
    $old_revision = new titania_revision(titania::$contrib, $repack);
    if (!$old_revision->load()) {
        trigger_error('NO_REVISION');
    }
    if (!($old_queue = $old_revision->get_queue())) {
        titania::add_lang('manage');
        trigger_error('NO_QUEUE_ITEM');
    }
    // Check auth
    if (!titania_types::$types[titania::$contrib->contrib_type]->acl_get('moderate') && !$old_queue->allow_author_repack) {
        titania::needs_auth();
    }
    $old_revision->load_phpbb_versions();
    generate_phpbb_version_select($old_revision->get_selected_branches());
    // Assign some defaults
    phpbb::$template->assign_vars(array('REVISION_NAME' => $old_revision->revision_name, 'REVISION_VERSION' => $old_revision->revision_version, 'REVISION_LICENSE' => $old_revision->revision_license, 'S_REPACK' => true));
} else {
    if (titania::$contrib->in_queue()) {
        trigger_error('REVISION_IN_QUEUE');
    }
    generate_phpbb_version_select();
    if (titania::$config->use_queue && titania_types::$types[titania::$contrib->contrib_type]->use_queue) {
        $queue = new titania_queue();
        // Load the message object
        $message_object = new titania_message($queue);
        $message_object->set_auth(array('bbcode' => phpbb::$auth->acl_get('u_titania_bbcode'), 'smilies' => phpbb::$auth->acl_get('u_titania_smilies')));
        $message_object->set_settings(array('display_error' => false, 'display_subject' => false));
        $queue->post_data($message_object);
        $message_object->display();