energine
[ class tree: energine ] [ index: energine ] [ all elements ]

Source for file DiscountsEditor.class.php

Documentation is available at DiscountsEditor.class.php

  1. <?php
  2. /**
  3.  * Содержит класс DiscountsEditor
  4.  *
  5.  * @package energine
  6.  * @subpackage shop
  7.  * @author 1m.dm
  8.  * @copyright ColoCall 2006
  9.  * @version $Id$
  10.  */
  11.  
  12. //require_once('core/modules/share/components/Grid.class.php');
  13.  
  14. /**
  15.  * Редактор скидок
  16.  *
  17.  * @package energine
  18.  * @subpackage shop
  19.  * @author 1m.dm
  20.  */
  21. class DiscountsEditor extends Grid {
  22.  
  23.     /**
  24.      * Конструктор класса
  25.      *
  26.      * @param string $name 
  27.      * @param string $module 
  28.      * @param Document $document 
  29.      * @param array $params 
  30.      * @access public
  31.      */
  32.     public function __construct($name$moduleDocument $document,  array $params null{
  33.         parent::__construct($name$module$document,  $params);
  34.         $this->setTableName('shop_discounts');
  35.     }
  36.  
  37.     protected function prepare({
  38.         parent::prepare();
  39.         if ($this->getAction(== 'add' || $this->getAction(== 'edit'{
  40.             $dateDescr $this->getDataDescription();
  41.             $fieldDescr $dateDescr->getFieldDescriptionByName('group_id');
  42.             if ($this->getAction(== 'add'{
  43.                 $result $this->dbh->selectRequest('SELECT * FROM `user_groups` WHERE group_id NOT IN (SELECT group_id FROM shop_discounts)');
  44.             }
  45.             elseif ($this->getAction(== 'edit'{
  46.                 $data $this->getData();
  47.                 $field $data->getFieldByName('group_id');
  48.                 $currGroupId $field->getRowData(0);
  49.                 $currGroupId intval($currGroupId[0]);
  50.                 $result $this->dbh->selectRequest(
  51.                     'SELECT * FROM `user_groups` WHERE group_id NOT IN (SELECT group_id FROM shop_discounts WHERE group_id != %s)',
  52.                     $currGroupId
  53.                 );
  54.             }
  55.             $fieldDescr->loadAvailableValues($result'group_id''group_name');
  56.         }
  57.     }
  58. }
В создании документации нам помог: phpDocumentor