'Редактировать', eTab::TYPE=>eTabType::FORM, eTab::CONTENT=>function($values=[]){ return self::_getForm($values, static::getFormOptions($values)); }, ], [ eTab::NAME=>'Товары', eTab::TYPE=>eTabType::TABLE, eTab::CONTENT=>function($values=[]){ $id = $values[self::$ID]; $o = [ /* \Query::LEFT_JOINS => [ [Item::$table_name,Item::$ID,SaleItem::$ITEM] ], /**/ \Query::WHERE=>new \Where(\Where::_operator(SaleItem::$SALE,'=',$id)), \ModuleTable::ROW_CLICK => eRowClick::CARD, \ModuleTable::FORM_INIT_DATA=>[ SaleItem::$SALE => $id, ], \ModuleTable::TABLE_ID => self::$table_name.'_'.SaleItem::$table_name.'_'.$id ]; return $values['justData'] ? SaleItem::getTableData( $o ) : SaleItem::drawTable( $o ); }, ], [ eTab::NAME=>'Категории', eTab::TYPE=>eTabType::TABLE, eTab::CONTENT=>function($values=[]){ $id = $values[self::$ID]; $o = [ /* \Query::LEFT_JOINS => [ [Item::$table_name,Item::$ID,SaleItem::$ITEM] ], /**/ \Query::WHERE=>new \Where(\Where::_operator(SaleCategory::$SALE,'=',$id)), \ModuleTable::ROW_CLICK => eRowClick::CARD, \ModuleTable::FORM_INIT_DATA=>[ SaleCategory::$SALE => $id, ], \ModuleTable::TABLE_ID => self::$table_name.'_'.SaleCategory::$table_name.'_'.$id ]; return $values['justData'] ? SaleCategory::getTableData( $o ) : SaleCategory::drawTable( $o ); }, ], ]; } static function getForm($values = [], $options = []) :array { return [ self::getCommonFormInputs(), [ Form::VIEW =>Form::INPUT, Form::KEY_VALUE =>self::$SHOP, Form::TYPE =>eInputType::HIDDEN, ], [ Form::VIEW=>Form::ROW, Form::COLS => [ [ Form::VIEW =>Form::INPUT, Form::COL_CLASSES =>'c c-50', Form::KEY_VALUE =>self::$NAME, Form::TYPE =>eInputType::TEXT, Form::INPUT_OPT => [ Input::PLACEHOLDER => $c = V::get(Vars::$NAME), Input::LABEL => $c, ], ], [ Form::VIEW =>Form::INPUT, Form::COL_CLASSES =>'c c-50', Form::KEY_VALUE =>self::$ACTIVE, Form::TYPE =>eInputType::CHECKBOX, Form::INPUT_OPT => [ Input::PLACEHOLDER => $c = V::get(Vars::$ACTIVE), Input::LABEL => $c, Input::VALUE =>1, Input::CHECKED => boolval($values[self::$ACTIVE]) ], ], ] ], [ Form::VIEW=>Form::ROW, Form::COLS => [ [ Form::VIEW =>Form::INPUT, Form::COL_CLASSES =>'c c-1-3', Form::KEY_VALUE =>self::$PERIOD_TYPE, Form::TYPE =>eInputType::SELECT, Form::INPUT_OPT => [ Input::PLACEHOLDER => $c = V::get(Vars::$PERIOD_TYPE), Input::LABEL => $c, Input::OPTIONS => eShopSalePeriodType::getArray(), ], ], [ Form::VIEW =>Form::INPUT, Form::COL_CLASSES =>'c c-1-3', Form::KEY_VALUE =>self::$BEGIN, Form::TYPE =>eInputType::DATE_TIME, Form::INPUT_OPT => [ Input::PLACEHOLDER => $c = V::get(Vars::$BEGIN), Input::LABEL => $c, INput::RULES => [ [self::$PERIOD_TYPE,'=',eShopSalePeriodType::INFINITY,eInputRulesAction::HIDE] ], ], ], [ Form::VIEW =>Form::INPUT, Form::COL_CLASSES =>'c c-1-3', Form::KEY_VALUE =>self::$END, Form::TYPE =>eInputType::DATE_TIME, Form::INPUT_OPT => [ Input::PLACEHOLDER => $c = V::get(Vars::$END), Input::LABEL => $c, INput::RULES => [ [self::$PERIOD_TYPE,'=',eShopSalePeriodType::INFINITY,eInputRulesAction::HIDE] ], ], ], ] ], [ Form::VIEW=>Form::ROW, Form::COLS => [ [ Form::VIEW =>Form::INPUT, Form::COL_CLASSES =>'c c-50', Form::KEY_VALUE =>self::$TYPE, Form::TYPE =>eInputType::SELECT, Form::INPUT_OPT => [ Input::PLACEHOLDER => $c = V::get(Vars::$TYPE), Input::LABEL => $c, Input::OPTIONS => eShopSaleType::getArray(), ], ], [ Form::VIEW =>Form::INPUT, Form::COL_CLASSES =>'c c-50', Form::KEY_VALUE =>self::$VALUE, Form::TYPE =>eInputType::TEXT, Form::INPUT_OPT => [ Input::PLACEHOLDER => $c = V::get(Vars::$VALUE), Input::LABEL => $c, ], ], ] ], self::getCommonFormSubmits($values), ]; } static function columnInfo() : array { return [ new C([ C::VAR_NAME =>&self::$ID, C::TYPE =>eColumnType::INT, C::AUTO_INCREMENT =>true, C::PRIMARY =>true, C::DEFAULT =>0, C::HIDDEN =>true, C::TH =>V::get(Vars::$ID), ]), new C([ C::VAR_NAME => &self::$NAME, C::TYPE => eColumnType::VARCHAR, C::LENGTH => 1023, C::TH => V::get(Vars::$NAME), ]), new C([ C::VAR_NAME => &self::$ACTIVE, C::TYPE => eColumnType::TINYINT, C::LENGTH => 1, C::DEFAULT => 0, C::TH => V::get(Vars::$ACTIVE), C::FUNC_VALUE => function($v){ return MS::getBoolValText($v[self::$ACTIVE]); } ]), new C([ C::VAR_NAME => &self::$SHOP, C::TYPE => eColumnType::INT, C::DEFAULT => 0, C::TH => V::get(Vars::$SHOP), C::HIDDEN => true, ]), new C([ C::VAR_NAME => &self::$PERIOD_TYPE, C::TYPE => eColumnType::TINYINT, C::DEFAULT => 1, C::TH => V::get(Vars::$PERIOD_TYPE), C::FUNC_VALUE => function($v){ return eShopSalePeriodType::getName($v[self::$TYPE]); } ]), new C([ C::VAR_NAME => &self::$BEGIN, C::TYPE => eColumnType::INT, C::DEFAULT => 0, C::TH => V::get(Vars::$BEGIN), ]), new C([ C::VAR_NAME => &self::$END, C::TYPE => eColumnType::INT, C::DEFAULT => 0, C::TH => V::get(Vars::$END), ]), new C([ C::VAR_NAME => &self::$TYPE, C::TYPE => eColumnType::TINYINT, C::LENGTH => 1, C::TH => V::get(Vars::$TYPE), C::FUNC_VALUE => function($v){ return eShopSaleType::getName($v[self::$TYPE]); } ]), new C([ C::VAR_NAME => &self::$VALUE, C::TYPE => eColumnType::DOUBLE, C::DEFAULT => 0, C::TH => V::get(Vars::$VALUE), ]), new C([ C::VAR_NAME => &self::$POS, C::TYPE => eColumnType::INT, C::DEFAULT => time(), C::TH => V::get(Vars::$POS), C::HIDDEN => true, ]), new C([ C::VAR_NAME => &self::$ACCOUNT, C::TYPE => eColumnType::INT, C::LENGTH => 11, C::TH => V::get(Vars::$ACCOUNT), C::DEFAULT => intval(UID), c::HIDDEN=>true, c::FUNC_VALUE => function($v){ if($id = $v[self::$ACCOUNT]) { return \Account::getName( \Account::getByID($id) ); } else return '-'; }, ]), new C([ C::VAR_NAME => &self::$CREATED, C::TYPE => eColumnType::INT, C::LENGTH => 11, C::TH => V::get(Vars::$CREATED), C::DEFAULT => time(), c::FUNC_VALUE => function($v){return self::formatDate($v[self::$CREATED]);}, c::HIDDEN=>true, ]), new C([ C::VAR_NAME => &self::$UPDATED, C::TYPE => eColumnType::INT, C::DEFAULT => time(), C::TH => V::get(Vars::$UPDATED), c::FUNC_VALUE => function($v){return self::formatDate($v[self::$UPDATED]);}, c::HIDDEN=>true, ]), ]; } } new Sale(); ///