예제 #1
0
$privacy_max = $event->event_privacy_max($user);
if ($privacy_max & ~$event->event_info['event_privacy']) {
    header("Location: " . $url->url_create('event', NULL, $event->event_info['event_id']));
    exit;
}
// GET MEDIA IN ALBUM FOR CAROUSEL
$media_array = array();
$media_query = $database->database_query("SELECT eventmedia_id, eventmedia_ext, '{$event->event_info['event_id']}' AS eventalbum_event_id FROM se_eventmedia WHERE eventmedia_eventalbum_id='{$media_info['eventalbum_id']}' ORDER BY eventmedia_date DESC");
while ($thismedia = $database->database_fetch_assoc($media_query)) {
    $media_array[$thismedia[eventmedia_id]] = $thismedia;
}
// IF USER IS ALLOWED, CHECK TASK
if ($event->user_rank >= 2 || $media_info['uploader']->user_exists && $user->user_info['user_id'] == $media_info['uploader']->user_info['user_id']) {
    // DELETE PHOTO
    if ($task == "media_delete") {
        $media_path = $event->event_dir($event->event_info['event_id']) . $media_info['eventmedia_id'] . "." . $media_info['eventmedia_ext'];
        if (file_exists($media_path)) {
            unlink($media_path);
        }
        $thumb_path = $event->event_dir($event->event_info['event_id']) . $media_info['eventmedia_id'] . "_thumb.jpg";
        if (file_exists($thumb_path)) {
            unlink($thumb_path);
        }
        $action_thumb_path = $url->url_base . substr($event->event_dir($event->event_info['event_id']), 2) . $media_info['eventmedia_id'] . "_thumb.jpg";
        // DELETE ACTION MEDIA IF NECESSARY
        $database->database_query("DELETE FROM se_actionmedia WHERE actionmedia_path = '{$action_thumb_path}'");
        // DELETE MEDIA FROM DATABASE
        $database->database_query("DELETE FROM se_eventmedia, se_eventmediacomments, se_eventmediatags USING se_eventmedia LEFT JOIN se_eventmediacomments ON se_eventmedia.eventmedia_id=se_eventmediacomments.eventmediacomment_eventmedia_id LEFT JOIN se_eventmediatags ON se_eventmedia.eventmedia_id=se_eventmediatags.eventmediatag_eventmedia_id WHERE se_eventmedia.eventmedia_id='{$media_info['eventmedia_id']}'");
        // DECREMENT EVENT ALBUM FILES
        $sql = "UPDATE se_eventalbums SET eventalbum_totalfiles=eventalbum_totalfiles-1 WHERE eventalbum_id='{$media_info['eventmedia_eventalbum_id']}' LIMIT 1";
        $database->database_query($sql);
예제 #2
0
 $file_result = array();
 // WORKAROUND FOR FLASH UPLOADER
 if ($_FILES['file1']['type'] == "application/octet-stream" && $isAjax) {
     $file_types = explode(",", str_replace(" ", "", strtolower($event->eventowner_level_info['level_event_album_mimes'])));
     $_FILES['file1']['type'] = $file_types[0];
 }
 // RUN FILE UPLOAD FUNCTION FOR EACH SUBMITTED FILE
 $update_album = 0;
 $action_media = array();
 for ($f = 1; $f < 6; $f++) {
     $fileid = "file" . $f;
     if ($_FILES[$fileid]['name'] != "") {
         $file_result[$fileid] = $event->event_media_upload($fileid, $eventalbum_info['eventalbum_id'], $space_left);
         if (!$file_result[$fileid]['is_error']) {
             $file_result[$fileid]['message'] = 2000248;
             $media_path = str_replace('./', '', $event->event_dir($event->event_info['event_id']) . $file_result[$fileid]['eventmedia_id'] . "_thumb.jpg");
             $media_link = str_replace($url->url_base, '', $url->url_create('event_media', NULL, $event->event_info['event_id'], $file_result[$fileid]['eventmedia_id']));
             if (file_exists($media_path)) {
                 $media_width = $misc->photo_size($media_path, "100", "100", "w");
                 $media_height = $misc->photo_size($media_path, "100", "100", "h");
                 $action_media[] = array('media_link' => $media_link, 'media_path' => $media_path, 'media_width' => $media_width, 'media_height' => $media_height);
             }
             $update_album = 1;
         } else {
             $file_result[$fileid]['message'] = $file_result[$fileid]['is_error'];
         }
         SE_Language::_preload($file_result[$fileid]['message']);
     }
 }
 // UPDATE ALBUM UPDATED DATE AND ALBUM COVER IF FILE UPLOADED
 if ($update_album) {
예제 #3
0
function search_event()
{
    global $database, $url, $results_per_page, $p, $search_text, $t, $search_objects, $results, $total_results;
    // GET EVENT FIELDS
    $fields = $database->database_query("SELECT eventfield_id AS field_id, eventfield_type AS field_type, eventfield_options AS field_options FROM se_eventfields WHERE eventfield_type<>'5' AND (eventfield_dependency<>'0' OR (eventfield_dependency='0' AND eventfield_display<>'0'))");
    $event_query = "se_events.event_title LIKE '%{$search_text}%' OR se_events.event_desc LIKE '%{$search_text}%'";
    // LOOP OVER FIELDS
    while ($field_info = $database->database_fetch_assoc($fields)) {
        // TEXT FIELD OR TEXTAREA
        if ($field_info['field_type'] == 1 || $field_info['field_type'] == 2) {
            if ($event_query != "") {
                $event_query .= " OR ";
            }
            $event_query .= "se_eventvalues.eventvalue_{$field_info['field_id']} LIKE '%{$search_text}%'";
        } elseif ($field_info['field_type'] == 3 || $field_info['field_type'] == 4) {
            $options = unserialize($field_info['field_options']);
            $langids = array();
            $cases = array();
            for ($i = 0, $max = count($options); $i < $max; $i++) {
                $cases[] = "WHEN languagevar_id='{$options[$i]['label']}' THEN {$options[$i][value]}";
                $langids[] = $options[$i]['label'];
            }
            if (count($cases) != 0) {
                if ($event_query != "") {
                    $event_query .= " OR ";
                }
                $event_query .= "se_eventvalues.eventvalue_{$field_info['field_id']} IN (SELECT CASE " . implode(" ", $cases) . " END AS value FROM se_languagevars WHERE languagevar_id IN (" . implode(", ", $langids) . ") AND languagevar_value LIKE '%{$search_text}%')";
            }
        } elseif ($field_info['field_type'] == 6) {
            $options = unserialize($field_info['field_options']);
            $langids = array();
            $cases = array();
            for ($i = 0, $max = count($options); $i < $max; $i++) {
                $cases[] = "WHEN languagevar_id='{$options[$i]['label']}' THEN " . pow(2, $i);
                $langids[] = $options[$i]['label'];
            }
            if (count($cases) != 0) {
                if ($event_query != "") {
                    $event_query .= " OR ";
                }
                $event_query .= "se_eventvalues.eventvalue_{$field_info['field_id']} & (SELECT sum(CASE " . implode(" ", $cases) . " END) AS value FROM se_languagevars WHERE languagevar_id IN (" . implode(", ", $langids) . ") AND languagevar_value LIKE '%{$search_text}%')";
            }
        }
    }
    // CONSTRUCT QUERY
    $event_query = "\r\n    (\r\n      SELECT \r\n        '1' AS sub_type,\r\n        se_events.event_id AS event_id, \r\n        se_events.event_title AS event_title, \r\n        se_events.event_photo AS event_photo,\r\n        '' AS title,\r\n        se_events.event_desc AS description,\r\n        '' AS id,\r\n        '' AS extra\r\n      FROM \r\n        se_eventvalues \r\n      LEFT JOIN \r\n        se_events \r\n      ON \r\n        se_eventvalues.eventvalue_event_id=se_events.event_id \r\n      WHERE \r\n        se_events.event_search='1' \r\n        AND \r\n        ({$event_query})\r\n      ORDER BY event_id DESC\r\n    )\r\n    UNION ALL\r\n    (\r\n      SELECT\r\n        '2' AS sub_type,\r\n        se_events.event_id AS event_id, \r\n        se_events.event_title AS event_title, \r\n        se_events.event_photo AS event_photo,\r\n        se_eventmedia.eventmedia_title AS title,\r\n        se_eventmedia.eventmedia_desc AS description,\r\n        se_eventmedia.eventmedia_id AS id,\r\n        se_eventmedia.eventmedia_ext AS extra\r\n      FROM\r\n        se_eventmedia,\r\n        se_eventalbums,\r\n        se_events\r\n      WHERE\r\n        se_eventmedia.eventmedia_eventalbum_id=se_eventalbums.eventalbum_id AND\r\n        se_eventalbums.eventalbum_event_id=se_events.event_id AND\r\n        se_events.event_search='1'\r\n        AND\r\n        (\r\n          se_eventmedia.eventmedia_title LIKE '%{$search_text}%' OR\r\n          se_eventmedia.eventmedia_desc LIKE '%{$search_text}%'\r\n        )\r\n      ORDER BY eventmedia_id DESC\r\n    )\r\n  ";
    // GET TOTAL EVENT RESULTS
    $total_events = $database->database_num_rows($database->database_query($event_query . " LIMIT 201"));
    // IF NOT TOTAL ONLY
    if ($t == "event") {
        // MAKE EVENT PAGES
        $start = ($p - 1) * $results_per_page;
        $limit = $results_per_page + 1;
        // SEARCH EVENTS
        $resource = $database->database_query($event_query . " LIMIT {$start}, {$limit}");
        while ($event_info = $database->database_fetch_assoc($resource)) {
            // SET UP EVENT
            $event = new se_event();
            $event->event_info['event_id'] = $event_info['event_id'];
            $event->event_info['event_photo'] = $event_info['event_photo'];
            $thumb_path = $event->event_photo('./images/nophoto.gif', TRUE);
            // IF DESCRIPTION IS LONG
            if (strlen($event_info['description']) > 150) {
                $event_info['description'] = substr($event_info['description'], 0, 147) . "...";
            }
            if (strlen($event_info['event_desc']) > 150) {
                $event_info['event_desc'] = substr($event_info['event_desc'], 0, 147) . "...";
            }
            // RESULT IS A EVENT
            if ($event_info[sub_type] == 1) {
                $result_url = $url->url_create('event', NULL, $event_info['event_id']);
                $result_name = 3000282;
                $result_name_1 = $event_info['event_title'];
                $result_desc = 3000284;
                $result_desc_1 = $event_info['description'];
            } elseif ($event_info[sub_type] == 2) {
                $result_url = $url->url_create('event_media', NULL, $event_info['event_id'], $event_info['id']);
                $result_name = 3000283;
                $result_name_1 = $event_info['title'];
                $result_desc = 3000285;
                $result_desc_1 = "event.php?event_id=" . $event_info[event_id];
                $result_desc_2 = $event_info['event_title'];
                $result_desc_3 = $event_info['description'];
                // SET THUMBNAIL, IF AVAILABLE
                switch ($event_info['extra']) {
                    case "jpeg":
                    case "jpg":
                    case "gif":
                    case "png":
                    case "bmp":
                        $thumb_path = $event->event_dir($event->event_info['event_id']) . $event_info['id'] . "_thumb.jpg";
                        break;
                    case "mp3":
                    case "mp4":
                    case "wav":
                        $thumb_path = "./images/icons/audio_big.gif";
                        break;
                    case "mpeg":
                    case "mpg":
                    case "mpa":
                    case "avi":
                    case "swf":
                    case "mov":
                    case "ram":
                    case "rm":
                        $thumb_path = "./images/icons/video_big.gif";
                        break;
                    default:
                        $thumb_path = "./images/icons/file_big.gif";
                }
                if (!file_exists($thumb_path)) {
                    $thumb_path = "./images/icons/file_big.gif";
                }
            }
            $results[] = array('result_url' => $result_url, 'result_icon' => $thumb_path, 'result_name' => $result_name, 'result_name_1' => $result_name_1, 'result_desc' => $result_desc, 'result_desc_1' => $result_desc_1, 'result_desc_2' => $result_desc_2, 'result_desc_3' => $result_desc_3);
        }
        // SET TOTAL RESULTS
        $total_results = $total_events;
    }
    // SET ARRAY VALUES
    SE_Language::_preload_multi(3000281, 3000282, 3000283, 3000284, 3000285);
    if ($total_events > 200) {
        $total_events = "200+";
    }
    $search_objects[] = array('search_type' => 'event', 'search_lang' => 3000281, 'search_total' => $total_events);
}