specials.php

来自「this the oscommerce 3.0 aplha 4」· PHP 代码 · 共 117 行

PHP
117
字号
<?php/*  $Id: specials.php 1498 2007-03-29 14:04:50Z hpdl $  osCommerce, Open Source E-Commerce Solutions  http://www.oscommerce.com  Copyright (c) 2006 osCommerce  This program is free software; you can redistribute it and/or modify  it under the terms of the GNU General Public License v2 (1991)  as published by the Free Software Foundation.*/  class osC_Specials {/* Private variables */    var $_specials = array();/* Class constructor */    function osC_Specials() {    }/* Public methods */    function activateAll() {      global $osC_Database;      $Qspecials = $osC_Database->query('select specials_id from :table_specials where status = 0 and now() >= start_date and start_date > 0 and now() < expires_date');      $Qspecials->bindTable(':table_specials', TABLE_SPECIALS);      $Qspecials->execute();      while ($Qspecials->next()) {        $this->_setStatus($Qspecials->valueInt('specials_id'), true);      }      $Qspecials->freeResult();    }    function expireAll() {      global $osC_Database;      $Qspecials = $osC_Database->query('select specials_id from :table_specials where status = 1 and now() >= expires_date and expires_date > 0');      $Qspecials->bindTable(':table_specials', TABLE_SPECIALS);      $Qspecials->execute();      while ($Qspecials->next()) {        $this->_setStatus($Qspecials->valueInt('specials_id'), false);      }      $Qspecials->freeResult();    }    function isActive($id) {      global $osC_Database;      if (!isset($this->_specials[$id])) {        $this->_specials[$id] = $this->getPrice($id);      }      return is_numeric($this->_specials[$id]);    }    function getPrice($id) {      global $osC_Database;      if (!isset($this->_specials[$id])) {        $Qspecial = $osC_Database->query('select specials_new_products_price from :table_specials where products_id = :products_id and status = 1');        $Qspecial->bindTable(':table_specials', TABLE_SPECIALS);        $Qspecial->bindInt(':products_id', $id);        $Qspecial->execute();        if ($Qspecial->numberOfRows() > 0) {          $this->_specials[$id] = $Qspecial->valueDecimal('specials_new_products_price');        } else {          $this->_specials[$id] = null;        }        $Qspecial->freeResult();      }      return $this->_specials[$id];    }    function &getListing() {      global $osC_Database, $osC_Language, $osC_Image;      $Qspecials = $osC_Database->query('select p.products_id, p.products_price, p.products_tax_class_id, pd.products_name, pd.products_keyword, s.specials_new_products_price, i.image from :table_products p left join :table_products_images i on (p.products_id = i.products_id and i.default_flag = :default_flag), :table_products_description pd, :table_specials s where p.products_status = 1 and s.products_id = p.products_id and p.products_id = pd.products_id and pd.language_id = :language_id and s.status = 1 order by s.specials_date_added desc');      $Qspecials->bindTable(':table_products', TABLE_PRODUCTS);      $Qspecials->bindTable(':table_products_images', TABLE_PRODUCTS_IMAGES);      $Qspecials->bindTable(':table_products_description', TABLE_PRODUCTS_DESCRIPTION);      $Qspecials->bindTable(':table_specials', TABLE_SPECIALS);      $Qspecials->bindInt(':default_flag', 1);      $Qspecials->bindInt(':language_id', $osC_Language->getID());      $Qspecials->setBatchLimit((isset($_GET['page']) && is_numeric($_GET['page']) ? $_GET['page'] : 1), MAX_DISPLAY_SPECIAL_PRODUCTS);      $Qspecials->execute();      return $Qspecials;    }/* Private methods */    function _setStatus($id, $status) {      global $osC_Database;      $Qstatus = $osC_Database->query('update :table_specials set status = :status, date_status_change = now() where specials_id = :specials_id');      $Qstatus->bindTable(':table_specials', TABLE_SPECIALS);      $Qstatus->bindInt(':status', ($status === true) ? '1' : '0');      $Qstatus->bindInt(':specials_id', $id);      $Qstatus->execute();      $Qstatus->freeResult();    }  }?>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?