feat: new chain
This commit is contained in:
@@ -20,7 +20,15 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<th>IP</th>
|
||||
<td colspan="3">{{ $device->ip ?: '—' }}</td>
|
||||
<td>{{ $device->ip ?: '—' }}</td>
|
||||
<th>相册存储</th>
|
||||
<td>
|
||||
<form class="layui-form" lay-filter="LAY-device-album" style="margin:0;">
|
||||
<input type="checkbox" name="album_storage" lay-skin="switch" lay-text="开|关"
|
||||
lay-filter="LAY-device-album-storage"
|
||||
{{ $device->albumStorageEnabled() ? 'checked' : '' }}>
|
||||
</form>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>User-Agent</th>
|
||||
@@ -66,6 +74,7 @@
|
||||
<div class="layui-inline">
|
||||
<button class="layui-btn" lay-submit lay-filter="LAY-photo-search">筛选</button>
|
||||
<button type="reset" class="layui-btn layui-btn-primary" id="LAY-photo-reset">重置</button>
|
||||
<button type="button" class="layui-btn layui-btn-danger" id="LAY-photo-clear">清理相册数据</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
@@ -122,6 +131,9 @@ layui.use(['table', 'form', 'laypage', 'layer'], function () {
|
||||
var $ = layui.$;
|
||||
var tab = @json($tab);
|
||||
var tabDataUrl = @json(route(($portal ?? 'admin').'.devices.tabData', $device));
|
||||
var updateUrl = @json(route(($portal ?? 'admin').'.devices.update', $device));
|
||||
var clearPhotosUrl = @json(route(($portal ?? 'admin').'.devices.photos.clear', $device));
|
||||
var token = @json(csrf_token());
|
||||
var dash = function (v) { return v ? v : '—'; };
|
||||
var esc = function (v) {
|
||||
return String(v == null ? '' : v)
|
||||
@@ -131,6 +143,29 @@ layui.use(['table', 'form', 'laypage', 'layer'], function () {
|
||||
.replace(/"/g, '"');
|
||||
};
|
||||
|
||||
form.on('switch(LAY-device-album-storage)', function (obj) {
|
||||
var on = obj.elem.checked ? 1 : 0;
|
||||
$.ajax({
|
||||
url: updateUrl,
|
||||
method: 'POST',
|
||||
data: { album_storage: on, _method: 'PUT', _token: token },
|
||||
success: function (res) {
|
||||
if (!res || res.code !== 0) {
|
||||
obj.elem.checked = !obj.elem.checked;
|
||||
form.render('checkbox');
|
||||
return layer.msg((res && res.msg) || '保存失败');
|
||||
}
|
||||
layer.msg(on ? '已开启相册存储' : '已关闭相册存储');
|
||||
},
|
||||
error: function () {
|
||||
obj.elem.checked = !obj.elem.checked;
|
||||
form.render('checkbox');
|
||||
layer.msg('保存失败');
|
||||
}
|
||||
});
|
||||
});
|
||||
form.render('checkbox');
|
||||
|
||||
if (tab === 'photos') {
|
||||
var photoState = { page: 1, limit: 15, sensitive: '' };
|
||||
|
||||
@@ -213,6 +248,33 @@ layui.use(['table', 'form', 'laypage', 'layer'], function () {
|
||||
}, 0);
|
||||
});
|
||||
|
||||
$('#LAY-photo-clear').on('click', function () {
|
||||
layer.confirm('确认清理该设备全部相册数据?将删除数据库记录及本地图片文件,且不可恢复。', {
|
||||
icon: 3,
|
||||
title: '清理相册'
|
||||
}, function (index) {
|
||||
layer.close(index);
|
||||
var loading = layer.load(1, { shade: 0.2 });
|
||||
$.ajax({
|
||||
url: clearPhotosUrl,
|
||||
method: 'POST',
|
||||
data: { _token: token },
|
||||
success: function (res) {
|
||||
layer.close(loading);
|
||||
if (!res || res.code !== 0) return layer.msg((res && res.msg) || '清理失败');
|
||||
var n = (res.data && res.data.deleted_rows) ? res.data.deleted_rows : 0;
|
||||
layer.msg('已清理 ' + n + ' 条相册记录');
|
||||
photoState.page = 1;
|
||||
renderPhotos();
|
||||
},
|
||||
error: function () {
|
||||
layer.close(loading);
|
||||
layer.msg('清理失败');
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
form.render('select');
|
||||
renderPhotos();
|
||||
return;
|
||||
|
||||
Reference in New Issue
Block a user