Exemplo n.º 1
0
function schedule_releases_do($options)
{
    /*
    option		array support	comment
    item_id				yes
    type			yes
    release_after	no
    */
    //trace('schedule', 'Init');
    $options['release_before'] = time();
    $options['released'] = 0;
    $events = schedule_event_fetch($options);
    foreach ($events as $event) {
        //trace('schedule', 'Releasing ' . $event['type']);
        $data = unserialize($event['data']);
        switch ($event['type']) {
            case 'todays_discussion':
                trace('todays_discussion_break', 'Tried to release todays_discussion in ' . __FILE__ . ' on line ' . __LINE__);
                break;
            case 'contest':
                contests_create($data);
                $url = '/taevlingar/';
                $label = $data['title'];
                break;
            case 'poll':
                $poll_handle = poll_create($data);
                $poll = poll_fetch(array('handle' => $poll_handle));
                $post['content'] = '[poll:' . $poll[0]['id'] . ']';
                $post['forum_id'] = 78;
                $post['title'] = 'Undersökning: ' . $poll[0]['question'];
                $post['mode'] = 'new_thread';
                $post['author'] = 2348;
                // Webmaster
                $thread_id = discussion_forum_post_create($post);
                $comment_url = forum_get_url_by_post($thread_id);
                $query = 'UPDATE poll SET comment_url = "' . $comment_url . '" WHERE id = "' . $poll[0]['id'] . '"';
                mysql_query($query);
                $url = '/index.php#poll';
                $label = $data['question'];
                break;
                /* Old sex and sense
                			case 'sex_sense':
                				$entry_id = sex_sense_create($data);
                				$entry = sex_sense_fetch(array('id' => $entry_id));
                				
                				$url = '/sex_och_sinne/' . $entry[0]['category'] . '/' . $entry[0]['handle'] . '.html';
                				$label = $entry[0]['title'];
                
                				break;*/
            /* Old sex and sense
            			case 'sex_sense':
            				$entry_id = sex_sense_create($data);
            				$entry = sex_sense_fetch(array('id' => $entry_id));
            				
            				$url = '/sex_och_sinne/' . $entry[0]['category'] . '/' . $entry[0]['handle'] . '.html';
            				$label = $entry[0]['title'];
            
            				break;*/
            case 'sex_sense':
                try {
                    $entries = sex_sense_fetch_posts($data['fetch_item_options']);
                    if (count($entries) != 1) {
                        throw new Exception('Fel 1 i schedule_releae! Base64(serialize): ' . base64_encode(serialize($data)));
                    }
                    $entry = array_pop($entries);
                    $query = 'UPDATE sex_questions SET is_released = 1 WHERE id = ' . $entry['id'];
                    $label = $entry['title'];
                    $url = '/sex_och_sinne/';
                    $categories = sex_sense_fetch_categories(array('category_id' => $entry['category_id']));
                    foreach ($categories as $category_tree) {
                        $category = array_pop($category_tree);
                        $url .= $category['category_handle'] . '/';
                    }
                    $url .= $entry['handle'] . '.html';
                    // Forum thread creation (main thread)
                    unset($thread);
                    $thread['author'] = '876354';
                    $thread['title'] = $entry['title'];
                    $thread['mode'] = 'new_thread';
                    $thread['forum_id'] = '102';
                    $thread['content'] = $entry['question'];
                    $thread_id = discussion_forum_post_create($thread);
                    $query = 'UPDATE sex_questions SET forum_post_id = ' . $thread_id . ', is_released = 1 WHERE id = ' . $entry['id'];
                    mysql_query($query) or report_sql_error($query, __FILE__, __LINE__);
                    // Create forum posts and guestbook notifications for all answers.
                    sex_sense_answer_distribute(array('post_id' => $entry['id']));
                } catch (Exception $error) {
                    trace('sex_sense_schedule', $error->getMessage());
                }
                break;
            case 'music_guess':
                $query = 'INSERT INTO music_guess_songs (secret_id, artist, song, alternate_spellings, timestamp, artist_score, song_score)' . "\n";
                $query .= ' VALUES("' . $data['secret_id'] . '", "' . $data['artist'] . '", "' . $data['song'] . '", "' . addslashes(serialize($data['alternate_spellings'])) . '", "' . time() . '", "' . $data['artist_score'] . '", "' . $data['song_score'] . '")';
                mysql_query($query) or trace('sql_error', $query . ' ' . mysql_error());
                $url = '/mattan/gissa_laaten.php';
                $label = 'Ny låt!';
                break;
            case 'survey':
                survey_create($data);
                $survey = survey_fetch(array('type' => 'front_page'));
                cache_save('fp_survey', $survey);
                $url = '/index.php#survey';
                $label = $data['question'];
                break;
            case 'new_image':
            case 'new_clip':
            case 'new_flash':
            case 'new_background':
            case 'new_software':
            case 'new_prank':
            case 'new_music':
            case 'new_game':
                $url = $data['url'];
                $label = $data['title'];
                break;
        }
        $query = 'INSERT INTO recent_updates (type, label, timestamp, url)' . ' VALUES("' . $event['type'] . '", "' . $label . '", "' . $event['release'] . '", "' . $url . '")';
        $query . '<br />';
        if (!mysql_query($query)) {
            report_sql_error($query, __FILE__, __LINE__);
        } else {
            $query = 'UPDATE scheduled_events SET released = 1 WHERE id="' . $event['id'] . '"';
            if (!mysql_query($query)) {
                report_sql_error($query, __FILE__, __LINE__);
            } else {
                log_to_file('scheduled_events', LOGLEVEL_INFO, __FILE__, __LINE__, 'released  ' . $event['type'] . ' id: ' . $event['id'] . ' ' . date('Y-m-d H:i', $release));
            }
        }
    }
}
Exemplo n.º 2
0
        $posts = sex_sense_fetch_posts($options);
    }
    if (count($posts) != 1) {
        die('Error in ' . __FILE__ . ' on line ' . __LINE__);
    }
    $post = array_pop($posts);
    if (empty($post['title']) && !empty($_POST['title'])) {
        sex_sense_update_handle(array('id' => $post['id'], 'title_to_serialize' => $_POST['title']));
    }
    if (!empty($_POST['answer'])) {
        sex_sense_answer_create(array('answer_to' => $post['id'], 'answer' => $_POST['answer'], 'user_id' => $_SESSION['login']['id']));
    }
    $query = 'UPDATE sex_questions SET title = "' . $_POST['title'] . '", question = "' . $_POST['question'] . '", category = ' . $_POST['sex_category'] . ' WHERE id = ' . $post['id'] . ' LIMIT 1';
    mysql_query($query) or report_sql_error($query, __FILE__, __LINE__);
    // Schedule release if not schedules yet...
    $scheduled_items = schedule_event_fetch(array('fetch_released_and_unreleased' => true, 'type' => 'sex_sense', 'item_id' => $post['id']));
    if (count($scheduled_items) < 1) {
        $direct_link = '/sex_och_sinne/';
        $categories = sex_sense_fetch_categories(array('category_id' => $post['category_id']));
        foreach ($categories as $category_tree) {
            $category = array_pop($category_tree);
            $direct_link .= $category['category_handle'] . '/';
        }
        $direct_link .= $post['handle'] . '.html';
        sex_sense_schedule_add(array('id' => $post['id'], 'title' => $post['title'], 'url' => $direct_link));
        echo 'Scheduling... Done!';
    }
    jscript_alert('Fixat!');
    jscript_go_back();
} elseif (empty($_POST['answer']) && !empty($_POST['answer_to']) && !empty($_POST['question']) && !empty($_POST['sex_category']) && is_numeric($_POST['answer_to']) && is_numeric($_POST['sex_category'])) {
    $sql = 'UPDATE sex_questions SET category = ' . $_POST['sex_category'] . ' WHERE id = ' . $_POST['answer_to'] . ' LIMIT 1';
Exemplo n.º 3
0
require_once PATHS_INCLUDE . '/libraries/schedule.lib.php';
$ui_options['menu_path'] = array('admin', 'schemalagt');
$ui_options['stylesheets'][] = 'schedule_list.css';
if (!is_privilegied('schedule_admin')) {
    header('location: /');
    die;
}
ui_top($ui_options);
if (count($_GET) > 0) {
    $options['release'] = strtotime($_GET['release']);
    $options['id'] = $_GET['id'];
    schedule_event_update($options);
}
echo '<h1>Schemalagt innehåll på Hamsterpaj.net</h1>' . "\n";
unset($options);
$scheduled = schedule_event_fetch();
foreach ($scheduled as $event) {
    $buffer[$event['type']]++;
    $options['events'][] = $event;
}
$item_types['new_game'] = '<a href="/onlinespel/admin/">Spel</a>';
$item_types['new_flash'] = '<a href="/flashfilmer/admin/">Flashfilmer</a>';
$item_types['new_clip'] = '<a href="/filmklipp/admin/">Filmklipp</a>';
$item_types['new_image'] = '<a href="/roliga_bilder/admin/">Roliga bilder</a>';
$item_types['poll'] = '<a href="/poll/">Undersökningar</a>';
$item_types['sex_sense'] = 'Sex och sinne';
$item_types['music_guess'] = 'Gissa låten';
$warning_levels[100] = array('text' => 'Gott om objekt', 'class' => 'schedule_buffer_5');
$warning_levels[65] = array('text' => 'Fyll gärna på mer', 'class' => 'schedule_buffer_4');
$warning_levels[40] = array('text' => 'Börjar ta s**t', 'class' => 'schedule_buffer_3');
$warning_levels[18] = array('text' => 'Brist på objekt!', 'class' => 'schedule_buffer_2');