meraproject/module/core/lang/structure/LangValue.php
keboss-m 5c21d25d45 Initial commit: Merakomis portal, Docker stack and user-reader API.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-24 11:04:05 +03:00

70 lines
2.1 KiB
PHP

<?
namespace core\lang\structure;
use \core\db\structure\Column as C;
use \core\db\structure\eColumnType;
class LangValue extends \ModuleTable {
// Название таблицы
static $table_name = 'langValue';
// Ссылка на самого себя
static $self;
// Переменные столбцов
static $ID = 'id';
static $VARIABLE = 'variable';
static $VALUE = 'value';
static $LANG = 'lang';
static $SYSTEM = 'system';
public function _insert(array $values, array $options = array()) {
if($options['isUpdate']) {
$options[\Query::ON_DUPLICATE_KEY_UPDATE] = [self::$VALUE=>$values[self::$VALUE]];
}
return parent::_insert($values, $options); // TODO: Change the autogenerated stub
}
static function add($values,$options = []){
return self::insert($values,$options);
}
public static function installUniques() {
\Db::addUnique(self::$table_name,self::$table_name.'_unique',[self::$VARIABLE,self::$LANG]);
parent::installUniques(); // TODO: Change the autogenerated stub
}
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,
]),
new C([
C::VAR_NAME =>&self::$VARIABLE,
C::TYPE =>eColumnType::INT,
]),
new C([
C::VAR_NAME =>&self::$VALUE,
C::TYPE =>eColumnType::TEXT,
]),
new C([
C::VAR_NAME =>&self::$LANG,
C::TYPE =>eColumnType::INT,
]),
new C([
C::VAR_NAME =>&self::$SYSTEM,
C::TYPE =>eColumnType::TINYINT,
C::LENGTH =>1,
C::DEFAULT =>0,
]),
];
}
}
new LangValue();