141 lines
5.0 KiB
PHP
141 lines
5.0 KiB
PHP
|
|
<?
|
||
|
|
namespace themes\merakomis;
|
||
|
|
|
||
|
|
use core\db\structure\Column as C;
|
||
|
|
use core\db\structure\eColumnType;
|
||
|
|
use core\lang\structure\LangVariable as V;
|
||
|
|
use ModuleBZ\Form\Input\Hidden;
|
||
|
|
use ModuleBZ\Form\Input\Select;
|
||
|
|
use ModuleBZ\Layout\Column;
|
||
|
|
use ms\ms\structure\msModuleTable;
|
||
|
|
use common\Image;
|
||
|
|
use ModuleBZ\Form\Input\ImagePicker;
|
||
|
|
use ModuleBZ\Form\Input\Switcher;
|
||
|
|
use ModuleBZ\Form\Input\Text;
|
||
|
|
use ModuleBZ\Form\Input\Textarea;
|
||
|
|
use ModuleBZ\Layout\Row;
|
||
|
|
use themes\merakomis\input\Save as InputSave;
|
||
|
|
use themes\merakomis\post\structure\lang as Vars;
|
||
|
|
use themes\merakomis\structure\merakomisModuleTable;
|
||
|
|
|
||
|
|
|
||
|
|
class Post extends merakomisModuleTable {
|
||
|
|
static $self;
|
||
|
|
static $cache = [];
|
||
|
|
static $table_name = 'tMerakomisPost';
|
||
|
|
static $controller = 'themes.merakomis.post';
|
||
|
|
static $easy_left_joins;
|
||
|
|
|
||
|
|
static $ID = 'id';
|
||
|
|
//static $NAME = 'name';
|
||
|
|
static $EMP = 'emp';
|
||
|
|
static $DEPARTMENT = 'department';
|
||
|
|
static $IS_DIRECTOR = 'director';
|
||
|
|
static $PORTAL = 'portal';
|
||
|
|
static $ACCOUNT = 'account';
|
||
|
|
|
||
|
|
|
||
|
|
public function __construct($install_id = null) {
|
||
|
|
parent::__construct($install_id);
|
||
|
|
static::$easy_left_joins = [
|
||
|
|
[Emp::$table_name,Emp::$ID,self::$EMP],
|
||
|
|
];
|
||
|
|
}
|
||
|
|
|
||
|
|
public static function getName($v, array $options = []): string
|
||
|
|
{
|
||
|
|
return Emp::getName($v, $options); // TODO: Change the autogenerated stub
|
||
|
|
}
|
||
|
|
|
||
|
|
static function getTitle(){return V::get(Vars::$MODULE_NAME);}
|
||
|
|
static function getSystemLangValues():array{ return Vars::getArray(); }
|
||
|
|
|
||
|
|
public function _deleteById(int $id) {
|
||
|
|
//Role::delete(new \Where(\Where::_operator(Role::$POST,'=',$id)));
|
||
|
|
return parent::_deleteById($id); // TODO: Change the autogenerated stub
|
||
|
|
}
|
||
|
|
|
||
|
|
static function getFormInputs(\ModuleBZ\Form &$form, array $data, $C, bool $isEdit) {
|
||
|
|
$emps = Emp::getNameList();
|
||
|
|
|
||
|
|
$form
|
||
|
|
->addInput((new Hidden())->setName(self::$DEPARTMENT)->setValue( intval($C[self::$DEPARTMENT]?:$data['department']) ))
|
||
|
|
->addRow((new Row())
|
||
|
|
->addColumn((new Column())->setClassAll('c-40 ')->addRow((new Row())))
|
||
|
|
->addColumn(
|
||
|
|
(new Column())->setClassAll('c-20 ')->addRow((new Row())
|
||
|
|
->addColumn(((new Select())
|
||
|
|
->setName(self::$EMP)
|
||
|
|
->setValue(intval($C[self::$EMP]))
|
||
|
|
->setClassAll('c-100')
|
||
|
|
->setLabel($c = V::get(Vars::$EMP))
|
||
|
|
->setPlaceholder($c)
|
||
|
|
->setOptions($emps)
|
||
|
|
->setSearch(true)
|
||
|
|
))
|
||
|
|
->addColumn(((new Switcher())
|
||
|
|
->setName(self::$IS_DIRECTOR)
|
||
|
|
->setValue(intval($C[self::$IS_DIRECTOR]))
|
||
|
|
->setClassAll('c-50')
|
||
|
|
//->setLabel($c = V::get(Vars::$IS_DIRECTOR))
|
||
|
|
->setPlaceholder($c = V::get(Vars::$IS_DIRECTOR))
|
||
|
|
->setLabel($c)
|
||
|
|
->setChecked(boolval($C[self::$IS_DIRECTOR]))
|
||
|
|
))
|
||
|
|
)->addRow((new Row())
|
||
|
|
->addColumn(((new InputSave())->setClassAll('c-100')->setName('save')))
|
||
|
|
)
|
||
|
|
|
||
|
|
))
|
||
|
|
;
|
||
|
|
}
|
||
|
|
|
||
|
|
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::$EMP,
|
||
|
|
C::TYPE => eColumnType::INT,
|
||
|
|
C::TH => V::get(Vars::$EMP),
|
||
|
|
]),
|
||
|
|
new C([
|
||
|
|
C::VAR_NAME => &self::$DEPARTMENT,
|
||
|
|
C::TYPE => eColumnType::INT,
|
||
|
|
C::LENGTH => 1,
|
||
|
|
C::TH => V::get(Vars::$DEPARTMENT),
|
||
|
|
]),
|
||
|
|
new C([
|
||
|
|
C::VAR_NAME => &self::$IS_DIRECTOR,
|
||
|
|
C::TYPE => eColumnType::TINYINT,
|
||
|
|
C::LENGTH => 1,
|
||
|
|
C::DEFAULT => 0,
|
||
|
|
C::TH => V::get(Vars::$IS_DIRECTOR),
|
||
|
|
]),
|
||
|
|
|
||
|
|
new C([
|
||
|
|
C::VAR_NAME => &self::$PORTAL,
|
||
|
|
C::TYPE => eColumnType::INT,
|
||
|
|
C::DEFAULT => intval(\Site::$portal_id),
|
||
|
|
c::HIDDEN => true,
|
||
|
|
]),
|
||
|
|
new C([
|
||
|
|
C::VAR_NAME => &self::$ACCOUNT,
|
||
|
|
C::TYPE => eColumnType::INT,
|
||
|
|
C::DEFAULT => intval(\Site::$owner_id),
|
||
|
|
//C::TH => V::get(Vars::$ACCOUNT),
|
||
|
|
c::HIDDEN => true,
|
||
|
|
]),
|
||
|
|
];
|
||
|
|
}
|
||
|
|
|
||
|
|
}
|
||
|
|
new Post();
|