185 lines
		
	
	
		
			7.1 KiB
		
	
	
	
		
			PHP
		
	
	
			
		
		
	
	
			185 lines
		
	
	
		
			7.1 KiB
		
	
	
	
		
			PHP
		
	
	
<?php
 | 
						|
 | 
						|
/**
 | 
						|
 * 读取上传日志
 | 
						|
 */
 | 
						|
 | 
						|
require_once __DIR__ . '/function.php';
 | 
						|
 | 
						|
// 非管理员不可访问!
 | 
						|
if (!is_who_login('admin')) {
 | 
						|
    exit;
 | 
						|
}
 | 
						|
 | 
						|
// 禁止直接访问
 | 
						|
if (empty($_POST['pass']) || $_POST['pass'] !== md5($config['password'] . date('YMDH'))) exit('Permission denied!');
 | 
						|
 | 
						|
require_once APP_ROOT . '/application/header.php';
 | 
						|
 | 
						|
if (isset($_POST['logDate'])) {
 | 
						|
    $logFile = APP_ROOT . '/admin/logs/upload/' . $_POST['logDate'] . '.php';
 | 
						|
} else {
 | 
						|
    $logFile = APP_ROOT . '/admin/logs/upload/' . date('Y-m') . '.php';
 | 
						|
}
 | 
						|
 | 
						|
try {
 | 
						|
    if (is_file($logFile)) {
 | 
						|
        require_once $logFile;
 | 
						|
    } else {
 | 
						|
        throw new Exception('<h3 class="alert alert-danger">日志文件不存在, 请在图床安全中开启上传日志!</h3>');
 | 
						|
    }
 | 
						|
    if (empty($logs)) {
 | 
						|
        throw new Exception('<div class="alert alert-info">没有上传日志!<div>');
 | 
						|
    }
 | 
						|
} catch (Exception $e) {
 | 
						|
    echo $e->getMessage();
 | 
						|
    require_once APP_ROOT . '/application/footer.php';
 | 
						|
    exit;
 | 
						|
}
 | 
						|
?>
 | 
						|
<div class="col-md-12">
 | 
						|
    <div id="logs" class="datagrid table-bordered">
 | 
						|
        <div class="input-control search-box search-box-circle has-icon-left has-icon-right" id="searchboxExample2" style="margin-bottom: 10px;">
 | 
						|
            <input id="inputSearchExample2" type="search" class="form-control search-input input-sm" placeholder="日志搜索...">
 | 
						|
            <label for="inputSearchExample2" class="input-control-icon-left search-icon"><i class="icon icon-search"></i></label>
 | 
						|
            <a href="#" class="input-control-icon-right search-clear-btn"><i class="icon icon-remove"></i></a>
 | 
						|
        </div>
 | 
						|
        <div class="datagrid-container"></div>
 | 
						|
    </div>
 | 
						|
    <p class="text-muted" style="font-size:10px;"><i class="modal-icon icon-info"></i> 建议使用分辨率 ≥ 1366*768px; 当前日志文件: <?php echo $logFile; ?></p>
 | 
						|
</div>
 | 
						|
<link href="<?php static_cdn(); ?>/public/static/zui/lib/datagrid/zui.datagrid.min.css" rel="stylesheet">
 | 
						|
<script src="<?php static_cdn(); ?>/public/static/zui/lib/datagrid/zui.datagrid.min.js"></script>
 | 
						|
<script>
 | 
						|
    // 更改页面布局
 | 
						|
    $(document).ready(function() {
 | 
						|
        $("body").removeClass("container").addClass("container-fixed-lg");
 | 
						|
    });
 | 
						|
 | 
						|
    // logs 数据表格
 | 
						|
    $('#logs').datagrid({
 | 
						|
        dataSource: {
 | 
						|
            height: 800,
 | 
						|
            cols: [{
 | 
						|
                    label: '当前名称',
 | 
						|
                    name: 'orgin',
 | 
						|
                    width: 0.07
 | 
						|
                },
 | 
						|
                {
 | 
						|
                    label: '源文件名',
 | 
						|
                    name: 'source',
 | 
						|
                    html: true,
 | 
						|
                    width: 0.08
 | 
						|
                },
 | 
						|
                {
 | 
						|
                    label: '上传时间',
 | 
						|
                    name: 'date',
 | 
						|
                    html: true,
 | 
						|
                    width: 0.09
 | 
						|
                },
 | 
						|
                {
 | 
						|
                    label: '上传IP及端口',
 | 
						|
                    name: 'ip',
 | 
						|
                    html: true,
 | 
						|
                    width: 0.08
 | 
						|
                },
 | 
						|
                {
 | 
						|
                    label: '上传地址',
 | 
						|
                    name: 'ip2region',
 | 
						|
                    html: true,
 | 
						|
                    width: 0.1
 | 
						|
                },
 | 
						|
                {
 | 
						|
                    label: 'User-Agent',
 | 
						|
                    name: 'user_agent',
 | 
						|
                    html: true,
 | 
						|
                    width: 0.11
 | 
						|
                },
 | 
						|
                {
 | 
						|
                    label: 'FILE-MD5',
 | 
						|
                    name: 'md5',
 | 
						|
                    html: true,
 | 
						|
                    width: 0.1
 | 
						|
                },
 | 
						|
                {
 | 
						|
                    label: '文件路径',
 | 
						|
                    name: 'path',
 | 
						|
                    html: true,
 | 
						|
                    width: 0.11
 | 
						|
                },
 | 
						|
                {
 | 
						|
                    label: '文件大小',
 | 
						|
                    name: 'size',
 | 
						|
                    html: true,
 | 
						|
                    width: 0.06
 | 
						|
                },
 | 
						|
                {
 | 
						|
                    label: '鉴黄?',
 | 
						|
                    name: 'checkImg',
 | 
						|
                    html: true,
 | 
						|
                    width: 0.05
 | 
						|
                },
 | 
						|
                {
 | 
						|
                    label: '来源',
 | 
						|
                    name: 'from',
 | 
						|
                    html: true,
 | 
						|
                    width: 0.05
 | 
						|
                },
 | 
						|
                {
 | 
						|
                    label: '管理',
 | 
						|
                    name: 'manage',
 | 
						|
                    html: true,
 | 
						|
                    width: 0.1
 | 
						|
                },
 | 
						|
            ],
 | 
						|
            array: [
 | 
						|
                <?php foreach ($logs as $k => $v) : ?> {
 | 
						|
                        orgin: '<?php echo $k; ?>',
 | 
						|
                        source: '<input class="form-control input-sm" type="text" value="<?php echo $v['source']; ?>" readonly>',
 | 
						|
                        date: '<?php echo $v['date']; ?>',
 | 
						|
                        ip: '<a href="http://ip.tool.chinaz.com/<?php echo $v['ip']; ?>" target="_blank"><?php echo $v['ip'] . ':' . $v['port']; ?></a>', // 备用IP查询: https://www.ip138.com/iplookup.asp?ip=
 | 
						|
                        ip2region: '<?php echo ip2region($v['ip']); ?>',
 | 
						|
                        user_agent: '<input class="form-control input-sm" type="text" value="<?php echo $v['user_agent']; ?>" readonly>',
 | 
						|
                        path: '<input class="form-control input-sm" type="text" value="<?php echo $v['path']; ?>" readonly>',
 | 
						|
                        md5: '<input class="form-control input-sm" type="text" value="<?php echo $v['md5']; ?>" readonly>',
 | 
						|
                        size: '<?php echo $v['size']; ?>',
 | 
						|
                        checkImg: '<?php echo strstr('OFF', $v['checkImg']) ? '否' : '是'; ?>',
 | 
						|
                        from: '<?php echo is_string($v['from']) ? "网页" : 'API: ' . $v['from']; ?>',
 | 
						|
                        manage: "<div class='btn-group'><a href='<?php echo $config['domain'] . $v['path']; ?>' target='_blank' class='btn btn-mini btn-success'>查看</a> <a href='/application/info.php?img=<?php echo $v['path']; ?>' target='_blank' class='btn btn-mini'>信息</a> <a href='/application/del.php?recycle_url=<?php echo $v['path']; ?>' target='_blank' class='btn btn-mini btn-info'>回收</a> <a href='/application/del.php?url=<?php echo $v['path']; ?>' target='_blank' class='btn btn-mini btn-danger'>删除</a></div>",
 | 
						|
                    },
 | 
						|
                <?php endforeach; ?>
 | 
						|
            ]
 | 
						|
        },
 | 
						|
        sortable: true,
 | 
						|
        hoverCell: true,
 | 
						|
        showRowIndex: true,
 | 
						|
        responsive: true,
 | 
						|
        height: 666,
 | 
						|
        // ... 其他初始化选项
 | 
						|
        configs: {
 | 
						|
            R1: {
 | 
						|
                style: {
 | 
						|
                    color: '#00b8d4',
 | 
						|
                    backgroundColor: '#e0f7fa'
 | 
						|
                }
 | 
						|
            },
 | 
						|
        }
 | 
						|
    });
 | 
						|
 | 
						|
    // 获取数据表格实例
 | 
						|
    var logMyDataGrid = $('#logs').data('zui.datagrid');
 | 
						|
 | 
						|
    var myDate = new Date();
 | 
						|
    logMyDataGrid.showMessage('已获取 <?php echo pathinfo($logFile, PATHINFO_FILENAME); ?> 月上传日志...... ', 'primary', 2000);
 | 
						|
 | 
						|
    // logMyDataGrid.showMessage('上传日志已加载完毕...... ', 'primary', 2500);
 | 
						|
 | 
						|
    // 按照 `name` 列降序排序
 | 
						|
    logMyDataGrid.sortBy('date', 'desc');
 | 
						|
 | 
						|
    // 更改网页标题
 | 
						|
    document.title = "<?php echo pathinfo($logFile, PATHINFO_FILENAME); ?>月上传日志 - <?php echo $config['title']; ?>"
 | 
						|
</script>
 | 
						|
<?php
 | 
						|
require_once APP_ROOT . '/application/footer.php';
 |