je($data)]); } } } return $res; } public static function checkUserAddAccess(array $values = [], int $id = 0, bool $isEdit = false): bool { //return parent::checkUserAddAccess($values, $id, $isEdit); // TODO: Change the autogenerated stub return true; } public static function getEditTabs($values=[]) { $id = $values[self::$ID]; return [ [ eTab::NAME=>'Редактировать', 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=[]){ $justData = boolval($values['justData']); $id = $values[self::$ID]; $o = [ \Query::WHERE=>new \Where(\Where::_and([ \Where::_operator(Page::$TO,'=',msTo::SECTION), \Where::_operator(Page::$OID,'=',$id), ])), \ModuleTable::ROW_CLICK => $justData ? eRowClick::CARD : eRowClick::OPEN_UADD, \ModuleTable::FORM_INIT_DATA=>[ Page::$TO => msTo::SECTION, Page::$OID => $id, ], \ModuleTable::TABLE_ID => self::$table_name.'_'.Page::$table_name.'_'.$id ]; return $justData ? Page::getTableData( $o ) : Page::drawTable( $o ); }, ], [ eTab::NAME=>'Код в тег HEAD', eTab::TYPE=>eTabType::TABLE, eTab::CONTENT=>function($values=[]){ $justData = boolval($values['justData']); $id = $values[self::$ID]; $o = [ \Query::WHERE=>new \Where(\Where::_and([ \Where::_operator(Script::$TO,'=',msTo::SECTION), \Where::_operator(Script::$OID,'=',$id), ])), \ModuleTable::ROW_CLICK => $justData ? eRowClick::CARD : eRowClick::OPEN_UADD, \Query::SORT=>Script::$POS, \ModuleTable::FORM_INIT_DATA=>[ Script::$TO => msTo::SECTION, Script::$OID => $id, ], \ModuleTable::TABLE_ID => self::$table_name.'_'.Script::$table_name.'_'.$id ]; return $justData ? Script::getTableData( $o ) : Script::drawTable( $o ); }, ], ]; } static function getByPath($path,$portal_id){ $portal_id = intval($portal_id); $res = null; if($portal_id) { $r = self::select([ \Query::WHERE => new \Where(\Where::_and([ \Where::_operator(self::$PATH, '=', $path), \Where::_operator(self::$PORTAL, '=', $portal_id), ])), \Query::COUNT => 1, ],true); if(count($r)==1) { $res = array_pop($r); } } return $res; } public static function afterInstall() { \DB::addUnique(self::$table_name,self::$table_name.'_unique',[self::$PORTAL,self::$PATH]); parent::afterInstall(); // TODO: Change the autogenerated stub } static function getForm($values = [], $options = []) :array { return [ self::getCommonFormInputs(), [ Form::VIEW=>FORM::INPUT, Form::TYPE=>eInputType::HIDDEN, Form::KEY_VALUE=>self::$PORTAL, ], [ Form::VIEW=>Form::ROW, Form::COLS => [ [ Form::VIEW =>Form::INPUT, Form::COL_CLASSES =>'c c-1-3', 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-1-3', Form::KEY_VALUE =>self::$PATH, Form::TYPE =>eInputType::TEXT, Form::INPUT_OPT => [ Input::PLACEHOLDER => $c = V::get(Vars::$PATH), Input::LABEL => $c, Input::VALIDATION=>[ //eInputValidation::NOT_EMPTY, //eInputValidation::REQUIRED, ], ], ], [ Form::VIEW =>Form::INPUT, Form::COL_CLASSES =>'c c-1-3', Form::KEY_VALUE =>self::$THEME, Form::TYPE =>eInputType::SELECT, Form::INPUT_OPT => [ Input::PLACEHOLDER => $c = V::get(Vars::$THEME), Input::LABEL => $c, Input::OPTIONS => eThemes::getMyArray(), ], ], ] ], [ Form::VIEW=>FORM::INPUT, Form::TYPE=>eInputType::SCRIPT, Form::INPUT_OPT=>[ Input::VALUE=>'$.fn.SECTION(\'initChangingTheme\','.je(($c = $values[self::$DATA])?$c:[]).')', ], ], [ Form::VIEW=>FORM::INPUT, Form::TYPE=>eInputType::HTML, Form::INPUT_OPT=>[ Input::VALUE=>'
', ], ], 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::$PATH, C::TYPE => eColumnType::VARCHAR, C::LENGTH => 63, C::TH => V::get(Vars::$PATH), ]), new C([ C::VAR_NAME => &self::$PORTAL, C::TYPE => eColumnType::INT, C::LENGTH => 11, C::TH => V::get(Vars::$PORTAL), C::HIDDEN => true, ]), new C([ C::VAR_NAME => &self::$THEME, C::TYPE => eColumnType::INT, C::LENGTH => 11, C::TH => V::get(Vars::$THEME), C::FUNC_VALUE => function($v){ return eThemes::getName($v[self::$THEME]); } ]), new C([ C::VAR_NAME => &self::$DATA, C::TYPE => eColumnType::TEXT, //C::HIDDEN => true, C::TH => V::get(Vars::$DATA), c::FUNC_VALUE_DATA => function($v){ return 'Настройки'; }, c::FUNC_VALUE => function($v){ return 'Настройки'; }, ]), 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 Section(); ///