139 lines
4.8 KiB
PHP
139 lines
4.8 KiB
PHP
|
|
<?
|
||
|
|
namespace themes\merakomis;
|
||
|
|
|
||
|
|
use core\columns\structure\eFilterType;
|
||
|
|
use core\db\structure\Column as C;
|
||
|
|
use core\db\structure\eColumnType;
|
||
|
|
use core\lang\structure\LangVariable as V;
|
||
|
|
use themes\merakomis\History\structure\eType;
|
||
|
|
use themes\merakomis\history\structure\lang as Vars;
|
||
|
|
use themes\merakomis\structure\merakomisModuleTable;
|
||
|
|
|
||
|
|
|
||
|
|
class History extends merakomisModuleTable {
|
||
|
|
static $self;
|
||
|
|
static $cache = [];
|
||
|
|
static $table_name = 'tMerakomisHistory';
|
||
|
|
static $controller = 'themes.merakomis.history';
|
||
|
|
static $easy_left_joins = [];
|
||
|
|
static $default_sort;
|
||
|
|
|
||
|
|
static $ID = 'id';
|
||
|
|
static $EMP = 'emp';
|
||
|
|
static $TYPE = 'type';
|
||
|
|
static $PORTAL = 'portal';
|
||
|
|
static $PROFILE = 'profile';
|
||
|
|
static $ACCOUNT = 'account';
|
||
|
|
static $CREATED = 'created';
|
||
|
|
|
||
|
|
//--
|
||
|
|
static $EMAIL = 'email';
|
||
|
|
|
||
|
|
static function getTitle(){return V::get(Vars::$MODULE_NAME);}
|
||
|
|
static function getSystemLangValues():array{ return Vars::getArray(); }
|
||
|
|
public function __construct($install_id = null) {
|
||
|
|
parent::__construct($install_id);
|
||
|
|
static::$easy_left_joins = [
|
||
|
|
[Emp::$table_name,Emp::$ID,self::$EMP]
|
||
|
|
];
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
static function login($emp) { self::add($emp,eType::LOGIN); }
|
||
|
|
static function exit($emp) { self::add($emp,eType::EXIT); }
|
||
|
|
static function login_bad($emp) { self::add($emp,eType::LOGIN_BAD); }
|
||
|
|
static function reg($emp) { self::add($emp,eType::REG); }
|
||
|
|
static function remind($emp) { self::add($emp,eType::REMIND); }
|
||
|
|
static function ban($emp) { self::add($emp,eType::BAN); }
|
||
|
|
|
||
|
|
|
||
|
|
static function add($emp,$type){
|
||
|
|
self::insert([
|
||
|
|
self::$EMP => $emp,
|
||
|
|
self::$TYPE => $type,
|
||
|
|
]);
|
||
|
|
}
|
||
|
|
|
||
|
|
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 => 'Сотрудник',
|
||
|
|
C::FUNC_VALUE_DATA => function($v){
|
||
|
|
return Emp::getName($v);
|
||
|
|
},
|
||
|
|
C::FILTER_TYPE => eFilterType::SELECT,
|
||
|
|
C::FUNC_FILTER_SELECT_OPTIONS => function(){
|
||
|
|
return Emp::getNameList();
|
||
|
|
},
|
||
|
|
]),
|
||
|
|
new C([
|
||
|
|
C::VAR_NAME => &self::$EMAIL,
|
||
|
|
C::TYPE => eColumnType::NONE,
|
||
|
|
C::TH => 'Логин',
|
||
|
|
C::FUNC_VALUE_DATA => function($v){
|
||
|
|
return $v[Emp::$LOGIN];
|
||
|
|
}
|
||
|
|
]),
|
||
|
|
new C([
|
||
|
|
C::VAR_NAME => &self::$TYPE,
|
||
|
|
C::TYPE => eColumnType::TINYINT,
|
||
|
|
C::TH => 'Тип',
|
||
|
|
C::FUNC_VALUE_DATA => function($v){
|
||
|
|
return eType::getName($v[self::$TYPE]);
|
||
|
|
},
|
||
|
|
C::FILTER_TYPE => eFilterType::SELECT,
|
||
|
|
C::FUNC_FILTER_SELECT_OPTIONS => function(){
|
||
|
|
return eType::getNameList();
|
||
|
|
}
|
||
|
|
]),
|
||
|
|
|
||
|
|
|
||
|
|
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::$PROFILE,
|
||
|
|
C::TYPE => eColumnType::INT,
|
||
|
|
C::DEFAULT => intval(PID),
|
||
|
|
//C::TH => V::get(Vars::$PROFILE),
|
||
|
|
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 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_DATA => function($v){return self::formatDate($v[self::$CREATED]);},
|
||
|
|
//c::HIDDEN => true,
|
||
|
|
]),
|
||
|
|
];
|
||
|
|
}
|
||
|
|
|
||
|
|
}
|
||
|
|
new History();
|
||
|
|
|
||
|
|
|
||
|
|
///
|