Server_AccessControl/helpers/DeviceGrid.php

54 lines
1.7 KiB
PHP

<?php
namespace app\helpers;
use app\models\Door;
use yii\helpers\Html;
use yii\helpers\Url;
class DeviceGrid extends CommonGrid {
public static function status($array) {
return function($model) use ($array) {
if ($model->status)
return "<i class='fa fa-check text-green'></i>";
return "<i class='fa fa-remove text-red'></i>";
};
}
public static function type($array) {
return function($model) use ($array) {
return isset($array[$model->type]) ? $array[$model->type] : "";
};
}
public static function area($array) {
return function($model) use ($array) {
return isset($array[$model->area_id]) ? $array[$model->area_id] : "";
};
}
public static function checkbox($type, $haveRoot = true) {
return function($model) use ($type) {
return "<input type='checkbox' value='{$model->id}' data='{$model->ip_address}' name='checkbox-{$type}' class='checkbox-{$type}'>";
};
}
public static function openDoor() {
return function($model) {
$doors = Door::find()->andWhere(["device_id" => $model->id])->all();
$html = "";
foreach ($doors as $key => $value) {
$html .= Html::button($value->code, [
'class' => 'btn btn-info',
'data' => ['toggle' => 'tooltip', 'href' => Url::to(['open-door', 'id' => $model->id, 'door' => $value->code])],
'title' => \Yii::t('app', 'Mở cửa'),
'onclick' => "openDoor(this);"
]) . "&nbsp;";
}
return $html;
};
}
}