Your IP : 216.73.216.48
<?php
namespace app\models;
use Yii;
use yii\behaviors\TimestampBehavior;
use yii\db\Expression;
class SiteSettings extends \yii\db\ActiveRecord {
public static function tableName() {
return '{{%site_settings}}';
}
public function behaviors() {
return [
[
'class' => TimestampBehavior::className(),
'createdAtAttribute' => NULL,
'updatedAtAttribute' => 'last_updated',
],
];
}
public function rules() {
return [
[['title', 'meta_description', 'meta_keywords', 'in_maintenance', 'opened_registration'], 'required'],
[['title'], 'string', 'max' => 50],
[['meta_description', 'meta_keywords', 'maintenance_message', 'registration_message'], 'string', 'max' => 1000],
[['settings_id', 'in_maintenance', 'opened_registration', 'last_updated'], 'integer'],
];
}
public function attributeLabels() {
return [
'title' => Yii::t('app', 'Заглавие'),
'meta_description' => Yii::t('app', 'Описание'),
'meta_keywords' => Yii::t('app', 'Ключови думи'),
'in_maintenance' => Yii::t('app', 'В режим на разработка'),
'maintenance_message' => Yii::t('app', 'Съобщение до потребителите'),
'opened_registration' => Yii::t('app', 'Отворена регистрация?'),
'last_updated' => Yii::t('app', 'Последна редакция'),
];
}
public function editSettings($settings) {
return $settings->save();
}
public function getSiteSettings() {
$cacheKey = md5('site-settings');
$settings = Yii::$app->cache->get($cacheKey);
if ($settings === false) {
$settings = SiteSettings::find()->one();
Yii::$app->cache->set($cacheKey, $settings, 10 * 60);
}
return $settings;
}
}