Your IP : 216.73.216.48
<?php
namespace app\models;
use Yii;
use yii\behaviors\TimestampBehavior;
use vendor\custom\BrowserDetection;
class MembersLogins extends \yii\db\ActiveRecord {
public static function tableName() {
return '{{%members_logins}}';
}
public function behaviors() {
return [
[
'class' => TimestampBehavior::className(),
'createdAtAttribute' => 'time',
'updatedAtAttribute' => NULL
],
];
}
public function rules() {
return [
[['member_id', 'ip_address', 'browser', 'os'], 'required'],
[['member_id', 'ip_address', 'is_successful', 'time'], 'integer'],
[['browser', 'os'], 'string', 'max' => 255]
];
}
public function attributeLabels() {
return [
'login_id' => Yii::t('app', 'ID'),
'member_id' => Yii::t('app', 'ID на потребителя'),
'ip_address' => Yii::t('app', 'IP адрес'),
'browser' => Yii::t('app', 'Браузър'),
'os' => Yii::t('app', 'OS'),
'is_successful' => Yii::t('app', 'Успешен?'),
'time' => Yii::t('app', 'Дата и час'),
];
}
public function addLogin($memberID, $ipAddress, $isSuccessful) {
$this->member_id = $memberID;
$this->ip_address = ip2long($ipAddress);
$browserDetection = new BrowserDetection();
$this->browser = $browserDetection->getBrowser() . ' ' . $browserDetection->getVersion();
$this->os = $browserDetection->getPlatform();
$this->is_successful = $isSuccessful;
return $this->save();
}
public function getLogins($where = []) {
$logins = $this->find()->where($where)->orderBy('time DESC');
return $logins;
}
public function getLoginInfo($loginID) {
return $this->findOne($loginID);
}
public function deleteLogin($loginInfo) {
return $loginInfo->delete();
}
public function getMember() {
return $this->hasOne(Members::className(), ['member_id' => 'member_id']);
}
}