예제 #1
0
function zen_display_banner($action, $identifier)
{
    global $db, $request_type;
    switch ($request_type) {
        case 'SSL':
            $my_banner_filter = " and banners_on_ssl= " . "1 ";
            break;
        case 'NONSSL':
            $my_banner_filter = '';
            break;
    }
    if ($action == 'dynamic') {
        $new_banner_search = zen_build_banners_group($identifier);
        $banners_query = "select count(*) as count\n                        from " . TABLE_BANNERS . "\n                           where status = '1' " . $new_banner_search . $my_banner_filter;
        $banners = $db->Execute($banners_query);
        if ($banners->fields['count'] > 0) {
            $banner = $db->Execute("select banners_id, banners_title, banners_image, banners_html_text, banners_open_new_windows, banners_url\n                               from " . TABLE_BANNERS . "\n                               where status = 1 " . $new_banner_search . $my_banner_filter . " order by rand()");
        } else {
            return '<p class="alert">ZEN ERROR! (zen_display_banner(' . $action . ', ' . $identifier . ') -> No banners with group \'' . $identifier . '\' found!</p>';
        }
    } elseif ($action == 'static') {
        if (is_object($identifier)) {
            $banner = $identifier;
        } else {
            $banner_query = "select banners_id, banners_title, banners_image, banners_html_text, banners_open_new_windows, banners_url\n                         from " . TABLE_BANNERS . "\n                         where status = 1\n                         and banners_id = '" . (int) $identifier . "'" . $my_banner_filter;
            $banner = $db->Execute($banner_query);
            if ($banner->RecordCount() < 1) {
                //return '<strong>ZEN ERROR! (zen_display_banner(' . $action . ', ' . $identifier . ') -> Banner with ID \'' . $identifier . '\' not found, or status inactive</strong>';
            }
        }
    } else {
        return '<p class="alert">ZEN ERROR! (zen_display_banner(' . $action . ', ' . $identifier . ') -> Unknown $action parameter value - it must be either \'dynamic\' or \'static\'</p>';
    }
    if (zen_not_null($banner->fields['banners_html_text'])) {
        $banner_string = $banner->fields['banners_html_text'];
    } else {
        if ($banner->fields['banners_url'] == '') {
            $banner_string = zen_image(DIR_WS_IMAGES . $banner->fields['banners_image'], $banner->fields['banners_title']);
        } else {
            if ($banner->fields['banners_open_new_windows'] == '1') {
                $banner_string = '<a href="' . zen_href_link(FILENAME_REDIRECT, 'action=banner&goto=' . $banner->fields['banners_id']) . '" target="_blank">' . zen_image(DIR_WS_IMAGES . $banner->fields['banners_image'], $banner->fields['banners_title']) . '</a>';
            } else {
                $banner_string = '<a href="' . zen_href_link(FILENAME_REDIRECT, 'action=banner&goto=' . $banner->fields['banners_id']) . '">' . zen_image(DIR_WS_IMAGES . $banner->fields['banners_image'], $banner->fields['banners_title']) . '</a>';
            }
        }
    }
    zen_update_banner_display_count($banner->fields['banners_id']);
    return $banner_string;
}
예제 #2
0
function zen_display_banner($action, $identifier)
{
    global $gBitDb;
    if (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') {
        $my_banner_filter = " and banners_on_ssl= " . "'1' ";
    } else {
        $my_banner_filter = '';
    }
    if ($action == 'dynamic') {
        $new_banner_search = zen_build_banners_group($identifier);
        $banners_query = "SELECT count(*) as `bcount`\n                        FROM " . TABLE_BANNERS . "\n                           WHERE `status` = '1' " . $new_banner_search . $my_banner_filter;
        if ($bannerCount = $gBitDb->getOne($banners_query)) {
            $banner = $gBitDb->getRow("SELECT `banners_id`, `banners_title`, `banners_image`, `banners_html_text`, `banners_open_new_windows`\n                               FROM " . TABLE_BANNERS . "\n                               WHERE `status` = '1' " . $new_banner_search . $my_banner_filter . " order by " . $gBitDb->convertSortmode('random'));
        } else {
            return '<strong>ZEN ERROR! (zen_display_banner(' . $action . ', ' . $identifier . ') -> No banners with group \'' . $identifier . '\' found!</strong>';
        }
    } elseif ($action == 'static') {
        if (is_object($identifier)) {
            $banner = $identifier->fields;
        } else {
            $banner_query = "select `banners_id`, `banners_title`, `banners_image`, `banners_html_text`, `banners_open_new_windows`\n                         from " . TABLE_BANNERS . "\n                         where `status` = '1'\n                         and `banners_id` = '" . (int) $identifier . "'" . $my_banner_filter;
            if ($banner = $gBitDb->getRow($banner_query)) {
                //return '<strong>ZEN ERROR! (zen_display_banner(' . $action . ', ' . $identifier . ') -> Banner with ID \'' . $identifier . '\' not found, or status inactive</strong>';
            }
        }
    } else {
        return '<strong>ZEN ERROR! (zen_display_banner(' . $action . ', ' . $identifier . ') -> Unknown $action parameter value - it must be either \'dynamic\' or \'static\'</strong>';
    }
    if (zen_not_null($banner['banners_html_text'])) {
        $banner_string = $banner['banners_html_text'];
    } else {
        if ($banner['banners_open_new_windows'] == '1') {
            $banner_string = '<a href="' . zen_href_link(FILENAME_REDIRECT, 'action=banner&amp;goto=' . $banner['banners_id']) . '">' . zen_image(CommerceProduct::getImageUrlFromHash($banner['banners_image']), $banner['banners_title']) . '</a>';
        } else {
            $banner_string = '<a href="' . zen_href_link(FILENAME_REDIRECT, 'action=banner&amp;goto=' . $banner['banners_id']) . '">' . zen_image(CommerceProduct::getImageUrlFromHash($banner['banners_image']), $banner['banners_title']) . '</a>';
        }
    }
    zen_update_banner_display_count($banner['banners_id']);
    return $banner_string;
}