$v[Project::$NAME], 'id' => $v[Project::$ID], 'sub' => [], ]; } 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=[]){ $id = $values[self::$ID]; $o = [ \ModuleTable::ROW_CLICK => eRowClick::CARD, \Query::WHERE=>new \Where( \Where::_and([ \Where::_operator(Desk::$TO,'=',msTo::PROJECT), \Where::_operator(Desk::$OID,'=',$id), ]) ), \ModuleTable::FORM_INIT_DATA=>[ Desk::$TO => msTo::PROJECT, Desk::$OID => $id, ], \ModuleTable::TABLE_ID => self::$table_name.'_'.Desk::$table_name.'_'.$id ]; return $values['justData'] ? Desk::getTableData( $o ) : Desk::drawTable( $o ); }, ], /**/ [ eTab::NAME=>'Заметки', eTab::TYPE=>eTabType::TABLE, eTab::CONTENT=>function($values=[]){ $id = $values[self::$ID]; $o = [ \ModuleTable::ROW_CLICK => eRowClick::CARD, \Query::WHERE=>new \Where( \Where::_and([ \Where::_operator(Note::$TO,'=',msTo::PROJECT), \Where::_operator(Note::$OID,'=',$id), ]) ), \ModuleTable::FORM_INIT_DATA=>[ Note::$TO => msTo::PROJECT, Note::$OID => $id, ], \ModuleTable::TABLE_ID => self::$table_name.'_'.Note::$table_name.'_'.$id ] ; return $values['justData'] ? Note::getTableData( $o ) : Note::drawTable( $o ); }, ], ]; } static function getForm($values = [], $options = []) :array { return [ self::getCommonFormInputs(), [ Form::VIEW =>Form::INPUT, Form::KEY_VALUE =>self::$TO, Form::TYPE =>eInputType::HIDDEN, ], [ Form::VIEW =>Form::INPUT, Form::KEY_VALUE =>self::$OID, Form::TYPE =>eInputType::HIDDEN, ], [ Form::VIEW=>Form::ROW, Form::COLS => [ [ Form::VIEW =>Form::INPUT, Form::COL_CLASSES =>'c c-1-3', Form::KEY_VALUE =>self::$COMPANY, Form::TYPE =>eInputType::SELECT, Form::INPUT_OPT => [ Input::PLACEHOLDER => $c = V::get(Vars::$COMPANY), Input::LABEL => $c, Input::OPTIONS => Company::getNameList([ 'zero'=>true, \Query::WHERE => new \Where( \Where::_operator(Company::$ACCOUNT,'=',UID) ) ]), ], ], [ Form::VIEW =>Form::INPUT, Form::COL_CLASSES =>'c c-1-3', Form::KEY_VALUE =>self::$PIPELINE, Form::TYPE =>eInputType::SELECT, Form::INPUT_OPT => [ Input::PLACEHOLDER => $c = V::get(Vars::$PIPELINE), Input::LABEL => $c, Input::OPTIONS => Pipeline::getNameList([ 'zero'=>true, \Query::WHERE => new \Where( \Where::_operator(Pipeline::$ACCOUNT,'=',UID) ) ]), ], ], /* [ Form::VIEW =>Form::INPUT, Form::COL_CLASSES =>'c c-1-3', Form::KEY_VALUE =>self::$STAGE, Form::TYPE =>eInputType::SELECT, Form::INPUT_OPT => [ Input::PLACEHOLDER => $c = V::get(Vars::$STAGE), Input::LABEL => $c, Input::OPTIONS => $values[self::$PIPELINE]? Stage::getNameList([ \Query::WHERE => new \Where(\Where::_and([ \Where::_operator(Stage::$PIPELINE,'=',$values[self::$PIPELINE]), \Where::_operator(Stage::$ACCOUNT,'=',UID), ])) ]):['0'=>'-'], Input::RULES => [ [self::$PIPELINE, eInputRulesCommand::ON, eInputRulesOperator::CHANGE, eInputRulesAction::FUNCTION, 'function(){ Array.prototype.unshift.call(arguments,\'changePipeline\');console.log(arguments) ; $.fn.PROJECT.apply(null,arguments);}'] ], ], ], /**/ ] ], [ Form::VIEW=>Form::ROW, Form::COLS => [ [ Form::VIEW =>Form::INPUT, Form::COL_CLASSES =>'c c-25', 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-25', Form::KEY_VALUE =>self::$CLIENT, Form::TYPE =>eInputType::SELECT, Form::INPUT_OPT => [ Input::PLACEHOLDER => $c = V::get(Vars::$NAME), Input::LABEL => $c, Input::OPTIONS => Client::getNameList([ \Query::WHERE => new \Where( \Where::_operator(Client::$ACCOUNT,'=',UID) ) ]), ], ], [ Form::VIEW =>Form::INPUT, Form::COL_CLASSES =>'c c-25', Form::KEY_VALUE =>self::$BEGIN, Form::TYPE =>eInputType::DATE, Form::INPUT_OPT => [ Input::PLACEHOLDER => $c = V::get(Vars::$BEGIN), Input::LABEL => $c, ], ], [ Form::VIEW =>Form::INPUT, Form::COL_CLASSES =>'c c-25', Form::KEY_VALUE =>self::$END, Form::TYPE =>eInputType::DATE, Form::INPUT_OPT => [ Input::PLACEHOLDER => $c = V::get(Vars::$END), Input::LABEL => $c, ], ], [ Form::VIEW =>Form::INPUT, Form::COL_CLASSES =>'c', Form::KEY_VALUE =>self::$DESCRIPTION, Form::TYPE =>eInputType::TEXTAREA, Form::INPUT_OPT => [ Input::PLACEHOLDER => $c = V::get(Vars::$DESCRIPTION), 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::$TO, C::TYPE => eColumnType::INT, C::DEFAULT => 0, C::HIDDEN => true, ]), new C([ C::VAR_NAME => &self::$OID, C::TYPE => eColumnType::INT, C::DEFAULT => 0, C::HIDDEN => true, ]), new C([ C::VAR_NAME => &self::$CLIENT, C::TYPE => eColumnType::INT, C::DEFAULT => 0, C::TH => V::get(Vars::$CLIENT), C::FUNC_VALUE => function($v){ if($id = $v[self::$CLIENT]) { return Client::getName( Client::getByID($id) ); } return '-'; }, C::FUNC_VALUE_DATA => function($v){ if($id = $v[self::$CLIENT]) { return Client::getName( Client::getByID($id) ); } return '-'; } ]), new C([ C::VAR_NAME => &self::$COMPANY, C::TYPE => eColumnType::INT, C::DEFAULT => 0, C::TH => V::get(Vars::$COMPANY), C::FUNC_VALUE => function($v){ if($id = $v[self::$COMPANY]) { return Company::getName( Company::getByID($id) ); } return '-'; }, C::FUNC_VALUE_DATA => function($v){ if($id = $v[self::$COMPANY]) { return Company::getName( Company::getByID($id) ); } return '-'; } ]), new C([ C::VAR_NAME => &self::$PIPELINE, C::TYPE => eColumnType::INT, C::DEFAULT => 0, C::TH => V::get(Vars::$PIPELINE), c::FUNC_VALUE_DATA => function($v){ if($id = $v[self::$PIPELINE]) { return Pipeline::getName( Pipeline::getByID($id) ); } else return '-'; }, ]), new C([ C::VAR_NAME => &self::$STAGE, C::TYPE => eColumnType::INT, C::DEFAULT => 0, C::TH => V::get(Vars::$STAGE), c::FUNC_VALUE_DATA => function($v){ if($id = $v[self::$STAGE]) { return Stage::getName( Stage::getByID($id) ); } else return '-'; }, ]), new C([ C::VAR_NAME => &self::$DESCRIPTION, C::TYPE => eColumnType::TEXT, C::TH => V::get(Vars::$DESCRIPTION), C::FUNC_VALUE_DATA => function($v){ return $v[self::$DESCRIPTION]; }, ]), new C([ C::VAR_NAME => &self::$BEGIN, C::TYPE => eColumnType::DATE, C::TH => V::get(Vars::$BEGIN), C::FUNC_VALUE_DATA => function($v){ return MS::fdate($v[self::$BEGIN]); } ]), new C([ C::VAR_NAME => &self::$END, C::TYPE => eColumnType::DATE, C::TH => V::get(Vars::$END), C::FUNC_VALUE_DATA => function($v){ return MS::fdate($v[self::$END]); } ]), 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 Project(); ///