[phpBB Debug] PHP Warning: in file [ROOT]/includes/crs/crs_misc_functions.php on line 37: mime_content_type(): Empty filename or path
[phpBB Debug] PHP Warning: in file [ROOT]/includes/crs/crs_misc_functions.php on line 37: mime_content_type(): Empty filename or path
Zen Cart 源代码 banner_manager.php

Zen Cart 源代码 banner_manager.php




下载文件

文件名: banner_manager.php
文件类型: PHP文件
文件大小: 36.64 KiB
MD5: 9329154d70f5f775b82217dbe1cf6049

banner_manager.php - 关闭高亮
  1. <?php
  2. /**
  3.  * @package admin
  4.  * @copyright Copyright 2003-2014 Zen Cart Development Team
  5.  * @copyright Portions Copyright 2003 osCommerce
  6.  * @license http://www.zen-cart.com/license/2_0.txt GNU Public License V2.0
  7.  * @version GIT: $Id: Author: DrByte  Tue Mar 4 16:45:41 2014 -0500 Modified in v1.5.3 $
  8.  */
  9.  
  10.   require('includes/application_top.php');
  11.  
  12.   $action = (isset($_GET['action']) ? $_GET['action'] : '');
  13.   if (isset($_GET['flagbanners_on_ssl'])) $_GET['flagbanners_on_ssl'] = (int)$_GET['flagbanners_on_ssl'];
  14.   if (isset($_GET['bID'])) $_GET['bID'] = (int)$_GET['bID'];
  15.   if (isset($_GET['flag'])) $_GET['flag'] = (int)$_GET['flag'];
  16.   if (isset($_GET['page'])) $_GET['page'] = (int)$_GET['page'];
  17.   if (isset($_GET['flagbanners_open_new_windows'])) $_GET['flagbanners_open_new_windows'] = (int)$_GET['flagbanners_open_new_windows'];
  18.  
  19.   $banner_extension = zen_banner_image_extension();
  20.  
  21.   if (zen_not_null($action)) {
  22.     switch ($action) {
  23.       case 'setflag':
  24.         if ( ($_GET['flag'] == '0') || ($_GET['flag'] == '1') ) {
  25.           zen_set_banner_status($_GET['bID'], $_GET['flag']);
  26.  
  27.           $messageStack->add_session(SUCCESS_BANNER_STATUS_UPDATED, 'success');
  28.         } else {
  29.           $messageStack->add_session(ERROR_UNKNOWN_STATUS_FLAG, 'error');
  30.         }
  31.  
  32.         zen_redirect(zen_href_link(FILENAME_BANNER_MANAGER, 'page=' . $_GET['page'] . '&bID=' . $_GET['bID']));
  33.         break;
  34.  
  35.       case 'setbanners_on_ssl':
  36.         if ( ($_GET['flagbanners_on_ssl'] == '0') || ($_GET['flagbanners_on_ssl'] == '1') ) {
  37.           $db->Execute("update " . TABLE_BANNERS . " set banners_on_ssl='" . $_GET['flagbanners_on_ssl'] . "' where banners_id='" . $_GET['bID'] . "'");
  38.  
  39.           $messageStack->add_session(SUCCESS_BANNER_ON_SSL_UPDATED, 'success');
  40.         } else {
  41.           $messageStack->add_session(ERROR_UNKNOWN_BANNER_ON_SSL, 'error');
  42.         }
  43.  
  44.         zen_redirect(zen_href_link(FILENAME_BANNER_MANAGER, 'page=' . $_GET['page'] . '&bID=' . $_GET['bID']));
  45.         break;
  46.       case 'setbanners_open_new_windows':
  47.         if ( ($_GET['flagbanners_open_new_windows'] == '0') || ($_GET['flagbanners_open_new_windows'] == '1') ) {
  48.           $db->Execute("update " . TABLE_BANNERS . " set banners_open_new_windows='" . $_GET['flagbanners_open_new_windows'] . "' where banners_id='" . $_GET['bID'] . "'");
  49.  
  50.           $messageStack->add_session(SUCCESS_BANNER_OPEN_NEW_WINDOW_UPDATED, 'success');
  51.         } else {
  52.           $messageStack->add_session(ERROR_UNKNOWN_BANNER_OPEN_NEW_WINDOW, 'error');
  53.         }
  54.  
  55.         zen_redirect(zen_href_link(FILENAME_BANNER_MANAGER, 'page=' . $_GET['page'] . '&bID=' . $_GET['bID']));
  56.         break;
  57.       case 'insert': // deprecated
  58.       case 'update': // deprecated
  59.       case 'add':
  60.       case 'upd':
  61.         if (isset($_POST['banners_id'])) $banners_id = zen_db_prepare_input($_POST['banners_id']);
  62.         $banners_title = zen_db_prepare_input($_POST['banners_title']);
  63.         $banners_url = zen_db_prepare_input($_POST['banners_url']);
  64.         $new_banners_group = zen_db_prepare_input($_POST['new_banners_group']);
  65.         $banners_group = (empty($new_banners_group)) ? zen_db_prepare_input($_POST['banners_group']) : $new_banners_group;
  66.         $banners_html_text = zen_db_prepare_input($_POST['banners_html_text']);
  67.         $banners_image_local = zen_db_prepare_input($_POST['banners_image_local']);
  68.         $banners_image_target = zen_db_prepare_input($_POST['banners_image_target']);
  69.         $db_image_location = '';
  70.         $expires_date = zen_db_prepare_input($_POST['expires_date']) == '' ? 'null' : zen_date_raw($_POST['expires_date']);
  71.         $expires_impressions = zen_db_prepare_input($_POST['expires_impressions']);
  72.         $date_scheduled = zen_db_prepare_input($_POST['date_scheduled']) == '' ? 'null' : zen_date_raw($_POST['date_scheduled']);
  73.         $status = zen_db_prepare_input($_POST['status']);
  74.         $banners_open_new_windows = zen_db_prepare_input($_POST['banners_open_new_windows']);
  75.         $banners_on_ssl = zen_db_prepare_input($_POST['banners_on_ssl']);
  76.         $banners_sort_order = zen_db_prepare_input($_POST['banners_sort_order']);
  77.  
  78.         $banner_error = false;
  79.         if (empty($banners_title)) {
  80.           $messageStack->add(ERROR_BANNER_TITLE_REQUIRED, 'error');
  81.           $banner_error = true;
  82.         }
  83.  
  84.         if (empty($banners_group)) {
  85.           $messageStack->add(ERROR_BANNER_GROUP_REQUIRED, 'error');
  86.           $banner_error = true;
  87.         }
  88.  
  89.         if (empty($banners_html_text)) {
  90.           if (empty($banners_image_local)) {
  91.             $banners_image = new upload('banners_image');
  92.             $banners_image->set_destination(DIR_FS_CATALOG_IMAGES . $banners_image_target);
  93.             if ( ($banners_image->parse() == false) || ($banners_image->save() == false) ) {
  94.               $messageStack->add(ERROR_BANNER_IMAGE_REQUIRED, 'error');
  95.               $banner_error = true;
  96.             }
  97.           }
  98.         }
  99.  
  100.         if ($banner_error == false) {
  101.           $db_image_location = (zen_not_null($banners_image_local)) ? $banners_image_local : $banners_image_target . $banners_image->filename;
  102.           $sql_data_array = array('banners_title' => $banners_title,
  103.                                   'banners_url' => $banners_url,
  104.                                   'banners_image' => $db_image_location,
  105.                                   'banners_group' => $banners_group,
  106.                                   'banners_html_text' => $banners_html_text,
  107.                                   'status' => $status,
  108.                                   'banners_open_new_windows' => $banners_open_new_windows,
  109.                                   'banners_on_ssl' => $banners_on_ssl,
  110.                                   'banners_sort_order' => (int)$banners_sort_order);
  111.  
  112.           if ($action == 'add') {
  113.             $insert_sql_data = array('date_added' => 'now()',
  114.                                      'status' => '1');
  115.  
  116.             $sql_data_array = array_merge($sql_data_array, $insert_sql_data);
  117.  
  118.             zen_db_perform(TABLE_BANNERS, $sql_data_array);
  119.  
  120.             $banners_id = zen_db_insert_id();
  121.  
  122.             $messageStack->add_session(SUCCESS_BANNER_INSERTED, 'success');
  123.           } elseif ($action == 'upd') {
  124.             zen_db_perform(TABLE_BANNERS, $sql_data_array, 'update', "banners_id = '" . (int)$banners_id . "'");
  125.  
  126.             $messageStack->add_session(SUCCESS_BANNER_UPDATED, 'success');
  127.           }
  128.  
  129. // NOTE: status will be reset by the /functions/banner.php
  130. // build new update sql for date_scheduled, expires_date and expires_impressions
  131.  
  132.           $sql = "UPDATE " . TABLE_BANNERS . "
  133.                  SET
  134.                    date_scheduled = :scheduledDate,
  135.                    expires_date = DATE_ADD(:expiresDate, INTERVAL '23:59:59' HOUR_SECOND),
  136.                    expires_impressions = " . ($expires_impressions == 0 ? "null" : ":expiresImpressions") . "
  137.                    WHERE banners_id = :bannersID";
  138.           if ($expires_impressions > 0) {
  139.             $sql = $db->bindVars($sql, ':expiresImpressions', $expires_impressions, 'integer');
  140.           }
  141.           if ($date_scheduled != '') {
  142.             $sql = $db->bindVars($sql, ':scheduledDate', $date_scheduled, 'date');
  143.           }
  144.           if ($expires_date != '') {
  145.             $sql = $db->bindVars($sql, ':expiresDate', $expires_date, 'date');
  146.           }
  147.             $sql = $db->bindVars($sql, ':bannersID', $banners_id, 'integer');
  148.             $db->Execute($sql);
  149.  
  150.           zen_redirect(zen_href_link(FILENAME_BANNER_MANAGER, (isset($_GET['page']) ? 'page=' . $_GET['page'] . '&' : '') . 'bID=' . $banners_id));
  151.         } else {
  152.           $action = 'new';
  153.         }
  154.         break;
  155.       case 'deleteconfirm':
  156.         $banners_id = zen_db_prepare_input($_POST['bID']);
  157.  
  158.         if (isset($_POST['delete_image']) && ($_POST['delete_image'] == 'on')) {
  159.           $banner = $db->Execute("select banners_image
  160.                                 from " . TABLE_BANNERS . "
  161.                                 where banners_id = '" . (int)$banners_id . "'");
  162.  
  163.           if (is_file(DIR_FS_CATALOG_IMAGES . $banner->fields['banners_image'])) {
  164.             if (is_writeable(DIR_FS_CATALOG_IMAGES . $banner->fields['banners_image'])) {
  165.               unlink(DIR_FS_CATALOG_IMAGES . $banner->fields['banners_image']);
  166.             } else {
  167.               $messageStack->add_session(ERROR_IMAGE_IS_NOT_WRITEABLE, 'error');
  168.             }
  169.           } else {
  170.             $messageStack->add_session(ERROR_IMAGE_DOES_NOT_EXIST, 'error');
  171.           }
  172.         }
  173.  
  174.         $db->Execute("delete from " . TABLE_BANNERS . "
  175.                      where banners_id = '" . (int)$banners_id . "'");
  176.         $db->Execute("delete from " . TABLE_BANNERS_HISTORY . "
  177.                      where banners_id = '" . (int)$banners_id . "'");
  178.  
  179.         if (function_exists('imagecreate') && zen_not_null($banner_extension)) {
  180.           if (is_file(DIR_WS_IMAGES . 'graphs/banner_infobox-' . $banners_id . '.' . $banner_extension)) {
  181.             if (is_writeable(DIR_WS_IMAGES . 'graphs/banner_infobox-' . $banners_id . '.' . $banner_extension)) {
  182.               unlink(DIR_WS_IMAGES . 'graphs/banner_infobox-' . $banners_id . '.' . $banner_extension);
  183.             }
  184.           }
  185.  
  186.           if (is_file(DIR_WS_IMAGES . 'graphs/banner_yearly-' . $banners_id . '.' . $banner_extension)) {
  187.             if (is_writeable(DIR_WS_IMAGES . 'graphs/banner_yearly-' . $banners_id . '.' . $banner_extension)) {
  188.               unlink(DIR_WS_IMAGES . 'graphs/banner_yearly-' . $banners_id . '.' . $banner_extension);
  189.             }
  190.           }
  191.  
  192.           if (is_file(DIR_WS_IMAGES . 'graphs/banner_monthly-' . $banners_id . '.' . $banner_extension)) {
  193.             if (is_writeable(DIR_WS_IMAGES . 'graphs/banner_monthly-' . $banners_id . '.' . $banner_extension)) {
  194.               unlink(DIR_WS_IMAGES . 'graphs/banner_monthly-' . $banners_id . '.' . $banner_extension);
  195.             }
  196.           }
  197.  
  198.           if (is_file(DIR_WS_IMAGES . 'graphs/banner_daily-' . $banners_id . '.' . $banner_extension)) {
  199.             if (is_writeable(DIR_WS_IMAGES . 'graphs/banner_daily-' . $banners_id . '.' . $banner_extension)) {
  200.               unlink(DIR_WS_IMAGES . 'graphs/banner_daily-' . $banners_id . '.' . $banner_extension);
  201.             }
  202.           }
  203.         }
  204.  
  205.         $messageStack->add_session(SUCCESS_BANNER_REMOVED, 'success');
  206.  
  207.         zen_redirect(zen_href_link(FILENAME_BANNER_MANAGER, 'page=' . $_GET['page']));
  208.         break;
  209.     }
  210.   }
  211.  
  212. // check if the graphs directory exists
  213.   $dir_ok = false;
  214.   if (function_exists('imagecreate') && zen_not_null($banner_extension)) {
  215.     if (is_dir(DIR_WS_IMAGES . 'graphs')) {
  216.       if (is_writeable(DIR_WS_IMAGES . 'graphs')) {
  217.         $dir_ok = true;
  218.       } else {
  219.         $messageStack->add(ERROR_GRAPHS_DIRECTORY_NOT_WRITEABLE, 'error');
  220.       }
  221.     } else {
  222.       $messageStack->add(ERROR_GRAPHS_DIRECTORY_DOES_NOT_EXIST, 'error');
  223.     }
  224.   }
  225. ?>
  226. <!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN">
  227. <html <?php echo HTML_PARAMS; ?>>
  228. <head>
  229. <meta http-equiv="Content-Type" content="text/html; charset=<?php echo CHARSET; ?>">
  230. <title><?php echo TITLE; ?></title>
  231. <link rel="stylesheet" type="text/css" href="includes/stylesheet.css">
  232. <link rel="stylesheet" type="text/css" href="includes/cssjsmenuhover.css" media="all" id="hoverJS">
  233. <script language="javascript" src="includes/menu.js"></script>
  234. <script language="javascript" src="includes/general.js"></script>
  235. <script language="javascript"><!--
  236. function popupImageWindow(url) {
  237.   window.open(url,'popupImageWindow','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=yes,copyhistory=no,width=100,height=100,screenX=150,screenY=150,top=150,left=150')
  238. }
  239. //--></script>
  240. <script type="text/javascript">
  241.   <!--
  242.   function init()
  243.   {
  244.     cssjsmenu('navbar');
  245.     if (document.getElementById)
  246.     {
  247.       var kill = document.getElementById('hoverJS');
  248.       kill.disabled = true;
  249.     }
  250.   }
  251.   // -->
  252. </script>
  253. </head>
  254. <body onload="init()">
  255. <div id="spiffycalendar" class="text"></div>
  256. <!-- header //-->
  257. <?php require(DIR_WS_INCLUDES . 'header.php'); ?>
  258. <!-- header_eof //-->
  259.  
  260. <!-- body //-->
  261. <table border="0" width="100%" cellspacing="2" cellpadding="2">
  262.   <tr>
  263. <!-- body_text //-->
  264.     <td width="100%" valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="2">
  265.       <tr>
  266.         <td><table border="0" width="100%" cellspacing="0" cellpadding="0">
  267.           <tr>
  268.             <td class="pageHeading"><?php echo HEADING_TITLE; ?></td>
  269.             <td class="pageHeading" align="right"><?php echo zen_draw_separator('pixel_trans.gif', HEADING_IMAGE_WIDTH, HEADING_IMAGE_HEIGHT); ?></td>
  270.           </tr>
  271.         </table></td>
  272.       </tr>
  273. <?php if ($action=='') { ?>
  274.       <tr>
  275.         <td><table border="0" cellspacing="0" cellpadding="0">
  276.           <tr>
  277.             <td class="smallText" align="center" width="100"><?php echo TEXT_LEGEND; ?></td>
  278.             <td class="smallText" align="center" width="100"><?php echo TEXT_LEGEND_STATUS_OFF . '<br />' . zen_image(DIR_WS_IMAGES . 'icon_red_on.gif', IMAGE_ICON_STATUS_OFF) . '&nbsp' . zen_image(DIR_WS_IMAGES . 'icon_green_on.gif', IMAGE_ICON_STATUS_ON); ?></td>
  279.             <td class="smallText" align="center" width="100"><?php echo TEXT_LEGEND_BANNER_ON_SSL . '<br />' . zen_image(DIR_WS_IMAGES . 'icon_blue_on.gif', IMAGE_ICON_BANNER_ON_SSL_ON) . '&nbsp;' . zen_image(DIR_WS_IMAGES . 'icon_blue_off.gif', IMAGE_ICON_BANNER_ON_SSL_OFF); ?></td>
  280.             <td class="smallText" align="center" width="100"><?php echo TEXT_LEGEND_BANNER_OPEN_NEW_WINDOWS . '<br />' . zen_image(DIR_WS_IMAGES . 'icon_orange_on.gif', IMAGE_ICON_BANNER_OPEN_NEW_WINDOWS_ON) . '&nbsp;' . zen_image(DIR_WS_IMAGES . 'icon_orange_off.gif', IMAGE_ICON_BANNER_OPEN_NEW_WINDOWS_OFF); ?></td>
  281.           </tr>
  282.         </table></td>
  283.       </tr>
  284. <?php } // legend ?>
  285. <?php
  286.   if ($action == 'new') {
  287.     $form_action = 'add';
  288.  
  289.     $parameters = array('expires_date' => '',
  290.                         'date_scheduled' => '',
  291.                         'banners_title' => '',
  292.                         'banners_url' => '',
  293.                         'banners_group' => '',
  294.                         'banners_image' => '',
  295.                         'banners_html_text' => '',
  296.                         'expires_impressions' => '',
  297.                         'banners_open_new_windows' => '',
  298.                         'banners_on_ssl' => '');
  299.  
  300.     $bInfo = new objectInfo($parameters);
  301.  
  302.     if (isset($_GET['bID'])) {
  303.       $form_action = 'upd';
  304.  
  305.       $bID = zen_db_prepare_input($_GET['bID']);
  306.  
  307.       $banner = $db->Execute("select banners_title, banners_url, banners_image, banners_group,
  308.                                     banners_html_text, status,
  309.                                     date_format(date_scheduled, '%Y/%m/%d') as date_scheduled,
  310.                                     date_format(expires_date, '%Y/%m/%d') as expires_date,
  311.                                     expires_impressions, date_status_change, banners_open_new_windows, banners_on_ssl, banners_sort_order
  312.                                     from " . TABLE_BANNERS . "
  313.                                     where banners_id = '" . (int)$bID . "'");
  314.  
  315.       $bInfo->objectInfo($banner->fields);
  316.     } elseif (zen_not_null($_POST)) {
  317.       $bInfo->objectInfo($_POST);
  318.     }
  319.  
  320.     if (!isset($bInfo->status)) $bInfo->status = '1';
  321.     switch ($bInfo->status) {
  322.       case '0': $is_status = false; $not_status = true; break;
  323.       case '1': $is_status = true; $not_status = false; break;
  324.       default: $is_status = true; $not_status = false; break;
  325.     }
  326.     if (!isset($bInfo->banners_open_new_windows)) $bInfo->banners_open_new_windows = '1';
  327.     switch ($bInfo->banners_open_new_windows) {
  328.       case '0': $is_banners_open_new_windows = false; $not_banners_open_new_windows = true; break;
  329.       case '1': $is_banners_open_new_windows = true; $not_banners_open_new_windows = false; break;
  330.       default: $is_banners_open_new_windows = true; $not_banners_open_new_windows = false; break;
  331.     }
  332.     if (!isset($bInfo->banners_on_ssl)) $bInfo->banners_on_ssl = '1';
  333.     switch ($bInfo->banners_on_ssl) {
  334.       case '0': $is_banners_on_ssl = false; $not_banners_on_ssl = true; break;
  335.       case '1': $is_banners_on_ssl = true; $not_banners_on_ssl = false; break;
  336.       default: $is_banners_on_ssl = true; $not_banners_on_ssl = false; break;
  337.     }
  338.  
  339.     $groups_array = array();
  340.     $groups = $db->Execute("select distinct banners_group
  341.                            from " . TABLE_BANNERS . "
  342.                            order by banners_group");
  343.     while (!$groups->EOF) {
  344.       $groups_array[] = array('id' => $groups->fields['banners_group'], 'text' => $groups->fields['banners_group']);
  345.       $groups->MoveNext();
  346.     }
  347. ?>
  348. <link rel="stylesheet" type="text/css" href="includes/javascript/spiffyCal/spiffyCal_v2_1.css">
  349. <script language="JavaScript" src="includes/javascript/spiffyCal/spiffyCal_v2_1.js"></script>
  350. <script language="javascript">
  351.   var dateExpires = new ctlSpiffyCalendarBox("dateExpires", "new_banner", "expires_date","btnDate1","<?php echo zen_date_short($bInfo->expires_date); ?>",scBTNMODE_CUSTOMBLUE);
  352.   var dateScheduled = new ctlSpiffyCalendarBox("dateScheduled", "new_banner", "date_scheduled","btnDate2","<?php echo zen_date_short($bInfo->date_scheduled); ?>",scBTNMODE_CUSTOMBLUE);
  353. </script>
  354.       <tr>
  355.         <td><?php echo zen_draw_separator('pixel_trans.gif', '1', '10'); ?></td>
  356.       </tr>
  357.       <tr><?php echo zen_draw_form('new_banner', FILENAME_BANNER_MANAGER, (isset($_GET['page']) ? 'page=' . $_GET['page'] . '&' : '') . 'action=' . $form_action, 'post', 'enctype="multipart/form-data"'); if ($form_action == 'upd') echo zen_draw_hidden_field('banners_id', $bID); ?>
  358.         <td><table border="0" cellspacing="0" cellpadding="2">
  359.           <tr>
  360.             <td class="main"><?php echo TEXT_BANNERS_STATUS; ?></td>
  361.             <td class="main"><?php echo zen_draw_radio_field('status', '1', $is_status) . '&nbsp;' . TEXT_BANNERS_ACTIVE . '&nbsp;' . zen_draw_radio_field('status', '0', $not_status) . '&nbsp;' . TEXT_BANNERS_NOT_ACTIVE . '<br />' . TEXT_INFO_BANNER_STATUS; ?></td>
  362.           </tr>
  363.           <tr>
  364.             <td colspan="2"><?php echo zen_draw_separator('pixel_trans.gif', '1', '10'); ?></td>
  365.           </tr>
  366.           <tr>
  367.             <td class="main"><?php echo TEXT_BANNERS_OPEN_NEW_WINDOWS; ?></td>
  368.             <td class="main"><?php echo zen_draw_radio_field('banners_open_new_windows', '1', $is_banners_open_new_windows) . '&nbsp;' . TEXT_YES . '&nbsp;' . zen_draw_radio_field('banners_open_new_windows', '0', $not_banners_open_new_windows) . '&nbsp;' . TEXT_NO . '<br />' . TEXT_INFO_BANNER_OPEN_NEW_WINDOWS; ?></td>
  369.           </tr>
  370.           <tr>
  371.             <td colspan="2"><?php echo zen_draw_separator('pixel_trans.gif', '1', '10'); ?></td>
  372.           </tr>
  373.           <tr>
  374.             <td class="main"><?php echo TEXT_BANNERS_ON_SSL; ?></td>
  375.             <td class="main"><?php echo zen_draw_radio_field('banners_on_ssl', '1', $is_banners_on_ssl) . '&nbsp;' . TEXT_YES . '&nbsp;' . zen_draw_radio_field('banners_on_ssl', '0', $not_banners_on_ssl) . '&nbsp;' . TEXT_NO . '<br />' . TEXT_INFO_BANNER_ON_SSL; ?></td>
  376.           </tr>
  377.           <tr>
  378.             <td colspan="2"><?php echo zen_draw_separator('pixel_trans.gif', '1', '10'); ?></td>
  379.           </tr>
  380.           <tr>
  381.             <td class="main"><?php echo TEXT_BANNERS_TITLE; ?></td>
  382.             <td class="main"><?php echo zen_draw_input_field('banners_title', htmlspecialchars($bInfo->banners_title, ENT_COMPAT, CHARSET, TRUE), zen_set_field_length(TABLE_BANNERS, 'banners_title'), true); ?></td>
  383.           </tr>
  384.           <tr>
  385.             <td class="main"><?php echo TEXT_BANNERS_URL; ?></td>
  386.             <td class="main"><?php echo zen_draw_input_field('banners_url', $bInfo->banners_url, zen_set_field_length(TABLE_BANNERS, 'banners_url')); ?></td>
  387.           </tr>
  388.           <tr>
  389.             <td class="main" valign="top"><?php echo TEXT_BANNERS_GROUP; ?></td>
  390.             <td class="main"><?php echo zen_draw_pull_down_menu('banners_group', $groups_array, $bInfo->banners_group) . TEXT_BANNERS_NEW_GROUP . '<br>' . zen_draw_input_field('new_banners_group', '', '', ((sizeof($groups_array) > 0) ? false : true)); ?></td>
  391.           </tr>
  392.           <tr>
  393.             <td colspan="2"><?php echo zen_draw_separator('pixel_trans.gif', '1', '10'); ?></td>
  394.           </tr>
  395.           <tr>
  396.             <td class="main" valign="top"><?php echo TEXT_BANNERS_IMAGE; ?></td>
  397.             <td class="main"><?php echo zen_draw_file_field('banners_image') . ' ' . TEXT_BANNERS_IMAGE_LOCAL . '<br>' . DIR_FS_CATALOG_IMAGES . zen_draw_input_field('banners_image_local', (isset($bInfo->banners_image) ? $bInfo->banners_image : ''), zen_set_field_length(TABLE_BANNERS, 'banners_image')); ?></td>
  398.           </tr>
  399.           <tr>
  400.             <td colspan="2"><?php echo zen_draw_separator('pixel_trans.gif', '1', '10'); ?></td>
  401.           </tr>
  402.           <tr>
  403.             <td class="main"><?php echo TEXT_BANNERS_IMAGE_TARGET; ?></td>
  404.             <td class="main"><?php echo DIR_FS_CATALOG_IMAGES . zen_draw_input_field('banners_image_target'); ?></td>
  405.           </tr>
  406.           <tr>
  407.             <td class="main" colspan="2"><?php echo TEXT_BANNER_IMAGE_TARGET_INFO; ?></td>
  408.           </tr>
  409.           <tr>
  410.             <td colspan="2"><?php echo zen_draw_separator('pixel_trans.gif', '1', '10'); ?></td>
  411.           </tr>
  412.           <tr>
  413.             <td valign="top" class="main"><?php echo TEXT_BANNERS_HTML_TEXT; ?></td>
  414.             <td class="main"><?php echo TEXT_BANNERS_HTML_TEXT_INFO . '<br />' . zen_draw_textarea_field('banners_html_text', 'soft', '60', '5', htmlspecialchars($bInfo->banners_html_text, ENT_COMPAT, CHARSET, TRUE)); ?></td>
  415.           </tr>
  416.           <tr>
  417.             <td colspan="2"><?php echo zen_draw_separator('pixel_trans.gif', '1', '10'); ?></td>
  418.           </tr>
  419.           <tr>
  420.             <td class="main"><?php echo TEXT_BANNERS_ALL_SORT_ORDER; ?></td>
  421.             <td class="main"><?php echo TEXT_BANNERS_ALL_SORT_ORDER_INFO . '<br />' . zen_draw_input_field('banners_sort_order', $bInfo->banners_sort_order, zen_set_field_length(TABLE_BANNERS, 'banners_sort_order'), false); ?></td>
  422.           </tr>
  423.           <tr>
  424.             <td colspan="2"><?php echo zen_draw_separator('pixel_trans.gif', '1', '10'); ?></td>
  425.           </tr>
  426.           <tr>
  427.             <td class="main"><?php echo TEXT_BANNERS_SCHEDULED_AT; ?></td>
  428.             <td valign="top" class="main"><script language="javascript">dateScheduled.writeControl();dateScheduled.dateFormat="<?php echo DATE_FORMAT_SPIFFYCAL; ?>";</script></td>
  429.           </tr>
  430.           <tr>
  431.             <td colspan="2"><?php echo zen_draw_separator('pixel_trans.gif', '1', '10'); ?></td>
  432.           </tr>
  433.           <tr>
  434.             <td valign="top" class="main"><?php echo TEXT_BANNERS_EXPIRES_ON; ?></td>
  435.             <td class="main"><script language="javascript">dateExpires.writeControl();dateExpires.dateFormat="<?php echo DATE_FORMAT_SPIFFYCAL; ?>";</script><?php echo TEXT_BANNERS_OR_AT . '<br>' . zen_draw_input_field('expires_impressions', $bInfo->expires_impressions, 'maxlength="7" size="7"') . ' ' . TEXT_BANNERS_IMPRESSIONS; ?></td>
  436.           </tr>
  437.         </table></td>
  438.       </tr>
  439.       <tr>
  440.         <td><?php echo zen_draw_separator('pixel_trans.gif', '1', '10'); ?></td>
  441.       </tr>
  442.       <tr>
  443.         <td><table border="0" width="100%" cellspacing="0" cellpadding="2">
  444.           <tr>
  445.             <td class="main"><?php echo TEXT_BANNERS_BANNER_NOTE . '<br>' . TEXT_BANNERS_INSERT_NOTE . '<br>' . TEXT_BANNERS_EXPIRCY_NOTE . '<br>' . TEXT_BANNERS_SCHEDULE_NOTE; ?></td>
  446.             <td class="main" align="right" valign="top" nowrap><?php echo (($form_action == 'add') ? zen_image_submit('button_insert.gif', IMAGE_INSERT) : zen_image_submit('button_update.gif', IMAGE_UPDATE)). '&nbsp;&nbsp;<a href="' . zen_href_link(FILENAME_BANNER_MANAGER, (isset($_GET['page']) ? 'page=' . $_GET['page'] . '&' : '') . (isset($_GET['bID']) ? 'bID=' . $_GET['bID'] : '')) . '">' . zen_image_button('button_cancel.gif', IMAGE_CANCEL) . '</a>'; ?></td>
  447.           </tr>
  448.         </table></td>
  449.       </form></tr>
  450. <?php
  451.   } else {
  452. ?>
  453.       <tr>
  454.         <td><table border="0" width="100%" cellspacing="0" cellpadding="0">
  455.           <tr>
  456.             <td valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="2">
  457.               <tr class="dataTableHeadingRow">
  458.                 <td class="dataTableHeadingContent"><?php echo TABLE_HEADING_BANNERS; ?></td>
  459.                 <td class="dataTableHeadingContent" align="right"><?php echo TABLE_HEADING_GROUPS; ?></td>
  460.                 <td class="dataTableHeadingContent" align="right"><?php echo TABLE_HEADING_STATISTICS; ?></td>
  461.                 <td class="dataTableHeadingContent" align="center"><?php echo TABLE_HEADING_STATUS; ?></td>
  462.                 <td class="dataTableHeadingContent" align="center"><?php echo TABLE_HEADING_BANNER_OPEN_NEW_WINDOWS; ?></td>
  463.                 <td class="dataTableHeadingContent" align="center"><?php echo TABLE_HEADING_BANNER_ON_SSL; ?></td>
  464.                 <td class="dataTableHeadingContent" align="right"><?php echo TABLE_HEADING_BANNER_SORT_ORDER; ?></td>
  465.                 <td class="dataTableHeadingContent" align="right"><?php echo TABLE_HEADING_ACTION; ?>&nbsp;</td>
  466.               </tr>
  467. <?php
  468. // Split Page
  469. // reset page when page is unknown
  470. if (($_GET['page'] == '' or $_GET['page'] == '1') and $_GET['bID'] != '') {
  471.   $banners_query_raw = "select banners_id, banners_title, banners_image, banners_group, status, expires_date, expires_impressions, date_status_change, date_scheduled, date_added, banners_open_new_windows, banners_on_ssl, banners_sort_order from " . TABLE_BANNERS . " order by banners_title, banners_group";
  472.   $check_page = $db->Execute($banners_query_raw);
  473.   $check_count=1;
  474.   if ($check_page->RecordCount() > MAX_DISPLAY_SEARCH_RESULTS) {
  475.     while (!$check_page->EOF) {
  476.       if ($check_page->fields['banners_id'] == $_GET['bID']) {
  477.         break;
  478.       }
  479.       $check_count++;
  480.       $check_page->MoveNext();
  481.     }
  482.     $_GET['page'] = round((($check_count/MAX_DISPLAY_SEARCH_RESULTS)+(fmod_round($check_count,MAX_DISPLAY_SEARCH_RESULTS) !=0 ? .5 : 0)),0);
  483.   } else {
  484.     $_GET['page'] = 1;
  485.   }
  486. }
  487.  
  488.     $banners_query_raw = "select banners_id, banners_title, banners_image, banners_group, status, expires_date, expires_impressions, date_status_change, date_scheduled, date_added, banners_open_new_windows, banners_on_ssl, banners_sort_order from " . TABLE_BANNERS . " order by banners_title, banners_group";
  489.     $banners_split = new splitPageResults($_GET['page'], MAX_DISPLAY_SEARCH_RESULTS, $banners_query_raw, $banners_query_numrows);
  490.     $banners = $db->Execute($banners_query_raw);
  491.     while (!$banners->EOF) {
  492.       $info = $db->Execute("select sum(banners_shown) as banners_shown,
  493.                                   sum(banners_clicked) as banners_clicked
  494.                            from " . TABLE_BANNERS_HISTORY . "
  495.                            where banners_id = '" . (int)$banners->fields['banners_id'] . "'");
  496.  
  497.       if ((!isset($_GET['bID']) || (isset($_GET['bID']) && ($_GET['bID'] == $banners->fields['banners_id']))) && !isset($bInfo) && (substr($action, 0, 3) != 'new')) {
  498.         $bInfo_array = array_merge($banners->fields, $info->fields);
  499.         $bInfo = new objectInfo($bInfo_array);
  500.       }
  501.  
  502.       $banners_shown = ($info->fields['banners_shown'] != '') ? $info->fields['banners_shown'] : '0';
  503.       $banners_clicked = ($info->fields['banners_clicked'] != '') ? $info->fields['banners_clicked'] : '0';
  504.  
  505.       if (isset($bInfo) && is_object($bInfo) && ($banners->fields['banners_id'] == $bInfo->banners_id)) {
  506.         echo '              <tr id="defaultSelected" class="dataTableRowSelected" onmouseover="rowOverEffect(this)" onmouseout="rowOutEffect(this)" onclick="document.location.href=\'' . zen_href_link(FILENAME_BANNER_MANAGER, 'page=' . $_GET['page'] . '&bID=' . $bInfo->banners_id . '&action=new') . '\'">' . "\n";
  507.       } else {
  508.         echo '              <tr class="dataTableRow" onmouseover="rowOverEffect(this)" onmouseout="rowOutEffect(this)" onclick="document.location.href=\'' . zen_href_link(FILENAME_BANNER_MANAGER, 'page=' . $_GET['page'] . '&bID=' . $banners->fields['banners_id']) . '\'">' . "\n";
  509.       }
  510. ?>
  511.                 <td class="dataTableContent"><?php echo '<a href="javascript:popupImageWindow(\'' . FILENAME_POPUP_IMAGE . '.php' . '?banner=' . $banners->fields['banners_id']  . '\')">' . zen_image(DIR_WS_IMAGES . 'icon_popup.gif', 'View Banner') . '</a>&nbsp;' . $banners->fields['banners_title']; ?></td>
  512.                 <td class="dataTableContent" align="right"><?php echo $banners->fields['banners_group']; ?></td>
  513.                 <td class="dataTableContent" align="right"><?php echo $banners_shown . ' / ' . $banners_clicked; ?></td>
  514.                 <td class="dataTableContent" align="center">
  515. <?php
  516.       if ($banners->fields['status'] == '1') {
  517.         echo '<a href="' . zen_href_link(FILENAME_BANNER_MANAGER, 'page=' . $_GET['page'] . '&bID=' . $banners->fields['banners_id'] . '&action=setflag&flag=0') . '">' . zen_image(DIR_WS_IMAGES . 'icon_green_on.gif', IMAGE_ICON_STATUS_ON) . '</a>';
  518.       } else {
  519.         echo '<a href="' . zen_href_link(FILENAME_BANNER_MANAGER, 'page=' . $_GET['page'] . '&bID=' . $banners->fields['banners_id'] . '&action=setflag&flag=1') . '">' . zen_image(DIR_WS_IMAGES . 'icon_red_on.gif', IMAGE_ICON_STATUS_OFF) . '</a>';
  520.       }
  521. ?>
  522.                 </td>
  523.                 <td class="dataTableContent" align="center">
  524. <?php
  525.       if ($banners->fields['banners_open_new_windows'] == '1') {
  526.         echo '<a href="' . zen_href_link(FILENAME_BANNER_MANAGER, 'page=' . $_GET['page'] . '&bID=' . $banners->fields['banners_id'] . '&action=setbanners_open_new_windows&flagbanners_open_new_windows=0') . '">' . zen_image(DIR_WS_IMAGES . 'icon_orange_on.gif', IMAGE_ICON_BANNER_OPEN_NEW_WINDOWS_ON) . '</a>';
  527.       } else {
  528.         echo '<a href="' . zen_href_link(FILENAME_BANNER_MANAGER, 'page=' . $_GET['page'] . '&bID=' . $banners->fields['banners_id'] . '&action=setbanners_open_new_windows&flagbanners_open_new_windows=1') . '">' . zen_image(DIR_WS_IMAGES . 'icon_orange_off.gif', IMAGE_ICON_BANNER_OPEN_NEW_WINDOWS_OFF) . '</a>';
  529.       }
  530. ?>
  531.                 </td>
  532.                 <td class="dataTableContent" align="center">
  533. <?php
  534.       if ($banners->fields['banners_on_ssl'] == '1') {
  535.         echo '<a href="' . zen_href_link(FILENAME_BANNER_MANAGER, 'page=' . $_GET['page'] . '&bID=' . $banners->fields['banners_id'] . '&action=setbanners_on_ssl&flagbanners_on_ssl=0') . '">' . zen_image(DIR_WS_IMAGES . 'icon_blue_on.gif', IMAGE_ICON_BANNER_ON_SSL_ON) . '</a>';
  536.       } else {
  537.         echo '<a href="' . zen_href_link(FILENAME_BANNER_MANAGER, 'page=' . $_GET['page'] . '&bID=' . $banners->fields['banners_id'] . '&action=setbanners_on_ssl&flagbanners_on_ssl=1') . '">' . zen_image(DIR_WS_IMAGES . 'icon_blue_off.gif', IMAGE_ICON_BANNER_ON_SSL_OFF) . '</a>';
  538.       }
  539. ?>
  540.                 </td>
  541.                 <td class="dataTableContent" align="right"><?php echo $banners->fields['banners_sort_order']; ?></td>
  542.  
  543.                 <td class="dataTableContent" align="right"><?php echo '<a href="' . zen_href_link(FILENAME_BANNER_STATISTICS, 'page=' . $_GET['page'] . '&bID=' . $banners->fields['banners_id']) . '">' . zen_image(DIR_WS_ICONS . 'statistics.gif', ICON_STATISTICS) . '</a>&nbsp;'; if (isset($bInfo) && is_object($bInfo) && ($banners->fields['banners_id'] == $bInfo->banners_id)) { echo zen_image(DIR_WS_IMAGES . 'icon_arrow_right.gif', ''); } else { echo '<a href="' . zen_href_link(FILENAME_BANNER_MANAGER, 'page=' . $_GET['page'] . '&bID=' . $banners->fields['banners_id']) . '">' . zen_image(DIR_WS_IMAGES . 'icon_info.gif', IMAGE_ICON_INFO) . '</a>'; } ?>&nbsp;</td>
  544.               </tr>
  545. <?php
  546.       $banners->MoveNext();
  547.     }
  548. ?>
  549.               <tr>
  550.                 <td colspan="5"><table border="0" width="100%" cellspacing="0" cellpadding="2">
  551.                   <tr>
  552.                     <td class="smallText" valign="top"><?php echo $banners_split->display_count($banners_query_numrows, MAX_DISPLAY_SEARCH_RESULTS, $_GET['page'], TEXT_DISPLAY_NUMBER_OF_BANNERS); ?></td>
  553.                     <td class="smallText" align="right"><?php echo $banners_split->display_links($banners_query_numrows, MAX_DISPLAY_SEARCH_RESULTS, MAX_DISPLAY_PAGE_LINKS, $_GET['page']); ?></td>
  554.                   </tr>
  555.                   <tr>
  556.                     <td align="right" colspan="2"><?php echo '<a href="' . zen_href_link(FILENAME_BANNER_MANAGER, 'action=new') . '">' . zen_image_button('button_new_banner.gif', IMAGE_NEW_BANNER) . '</a>'; ?></td>
  557.                   </tr>
  558.                 </table></td>
  559.               </tr>
  560.             </table></td>
  561. <?php
  562.   $heading = array();
  563.   $contents = array();
  564.   switch ($action) {
  565.     case 'delete': // deprecated
  566.     case 'del':
  567.       $heading[] = array('text' => '<b>' . $bInfo->banners_title . '</b>');
  568.  
  569.       $contents = array('form' => zen_draw_form('banners', FILENAME_BANNER_MANAGER, 'page=' . $_GET['page'] . '&action=deleteconfirm') . zen_draw_hidden_field('bID', $bInfo->banners_id));
  570.       $contents[] = array('text' => TEXT_INFO_DELETE_INTRO);
  571.       $contents[] = array('text' => '<br><b>' . $bInfo->banners_title . '</b>');
  572.       if ($bInfo->banners_image) $contents[] = array('text' => '<br>' . zen_draw_checkbox_field('delete_image', 'on', true) . ' ' . TEXT_INFO_DELETE_IMAGE);
  573.       $contents[] = array('align' => 'center', 'text' => '<br>' . zen_image_submit('button_delete.gif', IMAGE_DELETE) . '&nbsp;<a href="' . zen_href_link(FILENAME_BANNER_MANAGER, 'page=' . $_GET['page'] . '&bID=' . $_GET['bID']) . '">' . zen_image_button('button_cancel.gif', IMAGE_CANCEL) . '</a>');
  574.       break;
  575.     default:
  576.       if (is_object($bInfo)) {
  577.         $heading[] = array('text' => '<b>' . $bInfo->banners_title . '</b>');
  578.  
  579.         $contents[] = array('align' => 'center', 'text' => '<a href="' . zen_href_link(FILENAME_BANNER_MANAGER, 'page=' . $_GET['page'] . '&bID=' . $bInfo->banners_id . '&action=new') . '">' . zen_image_button('button_edit.gif', IMAGE_EDIT) . '</a> <a href="' . zen_href_link(FILENAME_BANNER_MANAGER, 'page=' . $_GET['page'] . '&bID=' . $bInfo->banners_id . '&action=del') . '">' . zen_image_button('button_delete.gif', IMAGE_DELETE) . '</a>');
  580.         $contents[] = array('text' => '<br>' . TEXT_BANNERS_DATE_ADDED . ' ' . zen_date_short($bInfo->date_added));
  581.         $contents[] = array('center', 'text' => '<br />' . '<a href="' . zen_href_link(FILENAME_BANNER_MANAGER, 'page=' . $_GET['page'] . '&bID=' . $bInfo->banners_id) . '">' . zen_image_button('button_update.gif', IMAGE_UPDATE) . '</a>' );
  582.  
  583.         if ( (function_exists('imagecreate')) && ($dir_ok) && ($banner_extension) ) {
  584.           $banner_id = $bInfo->banners_id;
  585.           $days = '3';
  586.           include(DIR_WS_INCLUDES . 'graphs/banner_infobox.php');
  587.           $contents[] = array('align' => 'center', 'text' => '<br>' . zen_image(DIR_WS_IMAGES . 'graphs/banner_infobox-' . $banner_id . '.' . $banner_extension));
  588.         } else {
  589.           include(DIR_WS_FUNCTIONS . 'html_graphs.php');
  590.           $contents[] = array('align' => 'center', 'text' => '<br>' . zen_banner_graph_infoBox($bInfo->banners_id, '3'));
  591.         }
  592.  
  593.         $contents[] = array('text' => zen_image(DIR_WS_IMAGES . 'graph_hbar_blue.gif', 'Blue', '5', '5') . ' ' . TEXT_BANNERS_BANNER_VIEWS . '<br>' . zen_image(DIR_WS_IMAGES . 'graph_hbar_red.gif', 'Red', '5', '5') . ' ' . TEXT_BANNERS_BANNER_CLICKS);
  594.  
  595.         if ($bInfo->date_scheduled) $contents[] = array('text' => '<br>' . sprintf(TEXT_BANNERS_SCHEDULED_AT_DATE, zen_date_short($bInfo->date_scheduled)));
  596.  
  597.         if ($bInfo->expires_date) {
  598.           $contents[] = array('text' => '<br>' . sprintf(TEXT_BANNERS_EXPIRES_AT_DATE, zen_date_short($bInfo->expires_date)));
  599.         } elseif ($bInfo->expires_impressions) {
  600.           $contents[] = array('text' => '<br>' . sprintf(TEXT_BANNERS_EXPIRES_AT_IMPRESSIONS, $bInfo->expires_impressions));
  601.         }
  602.  
  603.         if ($bInfo->date_status_change) $contents[] = array('text' => '<br>' . sprintf(TEXT_BANNERS_STATUS_CHANGE, zen_date_short($bInfo->date_status_change)));
  604.       }
  605.       break;
  606.   }
  607.  
  608.   if ( (zen_not_null($heading)) && (zen_not_null($contents)) ) {
  609.     echo '            <td width="25%" valign="top">' . "\n";
  610.  
  611.     $box = new box;
  612.     echo $box->infoBox($heading, $contents);
  613.  
  614.     echo '            </td>' . "\n";
  615.   }
  616. ?>
  617.           </tr>
  618.         </table></td>
  619.       </tr>
  620. <?php
  621.   }
  622. ?>
  623.     </table></td>
  624. <!-- body_text_eof //-->
  625.   </tr>
  626. </table>
  627. <!-- body_eof //-->
  628.  
  629. <!-- footer //-->
  630. <?php require(DIR_WS_INCLUDES . 'footer.php'); ?>
  631. <!-- footer_eof //-->
  632. <br>
  633. </body>
  634. </html>
  635. <?php require(DIR_WS_INCLUDES . 'application_bottom.php'); ?>


cron