257 lines
		
	
	
		
			8.0 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			257 lines
		
	
	
		
			8.0 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
<style type="text/css">
 | 
						|
    .sm-st {
 | 
						|
        background:#fff;
 | 
						|
        padding:20px;
 | 
						|
        -webkit-border-radius:3px;
 | 
						|
        -moz-border-radius:3px;
 | 
						|
        border-radius:3px;
 | 
						|
        margin-bottom:20px;
 | 
						|
        -webkit-box-shadow: 0 1px 0px rgba(0,0,0,0.05);
 | 
						|
        box-shadow: 0 1px 0px rgba(0,0,0,0.05);
 | 
						|
    }
 | 
						|
    .sm-st-icon {
 | 
						|
        width:60px;
 | 
						|
        height:60px;
 | 
						|
        display:inline-block;
 | 
						|
        line-height:60px;
 | 
						|
        text-align:center;
 | 
						|
        font-size:30px;
 | 
						|
        background:#eee;
 | 
						|
        -webkit-border-radius:5px;
 | 
						|
        -moz-border-radius:5px;
 | 
						|
        border-radius:5px;
 | 
						|
        float:left;
 | 
						|
        margin-right:10px;
 | 
						|
        color:#fff;
 | 
						|
    }
 | 
						|
    .sm-st-info {
 | 
						|
        font-size:12px;
 | 
						|
        padding-top:2px;
 | 
						|
    }
 | 
						|
    .sm-st-info span {
 | 
						|
        display:block;
 | 
						|
        font-size:24px;
 | 
						|
        font-weight:600;
 | 
						|
    }
 | 
						|
    .orange {
 | 
						|
        background:#fa8564 !important;
 | 
						|
    }
 | 
						|
    .tar {
 | 
						|
        background:#45cf95 !important;
 | 
						|
    }
 | 
						|
    .sm-st .green {
 | 
						|
        background:#86ba41 !important;
 | 
						|
    }
 | 
						|
    .pink {
 | 
						|
        background:#AC75F0 !important;
 | 
						|
    }
 | 
						|
    .yellow-b {
 | 
						|
        background: #fdd752 !important;
 | 
						|
    }
 | 
						|
    .stat-elem {
 | 
						|
 | 
						|
        background-color: #fff;
 | 
						|
        padding: 18px;
 | 
						|
        border-radius: 40px;
 | 
						|
 | 
						|
    }
 | 
						|
 | 
						|
    .stat-info {
 | 
						|
        text-align: center;
 | 
						|
        background-color:#fff;
 | 
						|
        border-radius: 5px;
 | 
						|
        margin-top: -5px;
 | 
						|
        padding: 8px;
 | 
						|
        -webkit-box-shadow: 0 1px 0px rgba(0,0,0,0.05);
 | 
						|
        box-shadow: 0 1px 0px rgba(0,0,0,0.05);
 | 
						|
        font-style: italic;
 | 
						|
    }
 | 
						|
 | 
						|
    .stat-icon {
 | 
						|
        text-align: center;
 | 
						|
        margin-bottom: 5px;
 | 
						|
    }
 | 
						|
 | 
						|
    .st-red {
 | 
						|
        background-color: #F05050;
 | 
						|
    }
 | 
						|
    .st-green {
 | 
						|
        background-color: #27C24C;
 | 
						|
    }
 | 
						|
    .st-violet {
 | 
						|
        background-color: #7266ba;
 | 
						|
    }
 | 
						|
    .st-blue {
 | 
						|
        background-color: #23b7e5;
 | 
						|
    }
 | 
						|
 | 
						|
    .stats .stat-icon {
 | 
						|
        color: #28bb9c;
 | 
						|
        display: inline-block;
 | 
						|
        font-size: 26px;
 | 
						|
        text-align: center;
 | 
						|
        vertical-align: middle;
 | 
						|
        width: 50px;
 | 
						|
        float:left;
 | 
						|
    }
 | 
						|
 | 
						|
    .stat {
 | 
						|
        white-space: nowrap;
 | 
						|
        overflow: hidden;
 | 
						|
        text-overflow: ellipsis;
 | 
						|
        display: inline-block;
 | 
						|
        margin-right: 10px; }
 | 
						|
    .stat .value {
 | 
						|
        font-size: 20px;
 | 
						|
        line-height: 24px;
 | 
						|
        overflow: hidden;
 | 
						|
        text-overflow: ellipsis;
 | 
						|
        font-weight: 500; }
 | 
						|
    .stat .name {
 | 
						|
        overflow: hidden;
 | 
						|
        text-overflow: ellipsis; }
 | 
						|
    .stat.lg .value {
 | 
						|
        font-size: 26px;
 | 
						|
        line-height: 28px; }
 | 
						|
    .stat.lg .name {
 | 
						|
        font-size: 16px; }
 | 
						|
    .stat-col .progress {height:2px;}
 | 
						|
    .stat-col .progress-bar {line-height:2px;height:2px;}
 | 
						|
 | 
						|
    .item {
 | 
						|
        padding:30px 0;
 | 
						|
    }
 | 
						|
</style>
 | 
						|
{if $todaytimes>0}
 | 
						|
<div class="alert alert-danger-light">
 | 
						|
    今日有攻击,请注意安全防护,安全并不能完全依赖于本插件。
 | 
						|
</div>
 | 
						|
{/if}
 | 
						|
<div class="panel panel-default panel-intro">
 | 
						|
    <div class="panel-heading">
 | 
						|
        {:build_heading(null, false)}
 | 
						|
        <ul class="nav nav-tabs">
 | 
						|
            <li class="active"><a href="#one" data-toggle="tab">概括</a></li>
 | 
						|
        </ul>
 | 
						|
    </div>
 | 
						|
    <div class="panel-body">
 | 
						|
        <div id="myTabContent" class="tab-content">
 | 
						|
            <div class="tab-pane fade active in" id="one">
 | 
						|
 | 
						|
                <div class="row">
 | 
						|
                    <div class="col-sm-3 col-xs-6">
 | 
						|
                        <div class="sm-st clearfix">
 | 
						|
                            <a href="javascript:;"  data-title="">
 | 
						|
                                <span class="sm-st-icon st-red"><i class="fa fa-warning"></i></span>
 | 
						|
                                <div class="sm-st-info">
 | 
						|
                                    <span>{$todaytimes}</span>
 | 
						|
                                        今日攻击(次)
 | 
						|
                                </div>
 | 
						|
                            </a>
 | 
						|
                        </div>
 | 
						|
                    </div>
 | 
						|
                    <div class="col-sm-3 col-xs-6">
 | 
						|
                        <div class="sm-st clearfix">
 | 
						|
                            <a href="javascript:;"  data-title="攻击来源(IP)">
 | 
						|
                                <span class="sm-st-icon st-violet"><i class="fa fa-users"></i></span>
 | 
						|
                                <div class="sm-st-info">
 | 
						|
                                    <span>{$todayips}</span>
 | 
						|
                                    今日IP
 | 
						|
                                </div>
 | 
						|
                            </a>
 | 
						|
                        </div>
 | 
						|
                    </div>
 | 
						|
                    <div class="col-sm-3 col-xs-6">
 | 
						|
                        <div class="sm-st clearfix">
 | 
						|
                            <a href="javascript:;"  data-title="">
 | 
						|
                                <span class="sm-st-icon st-violet"><i class="fa fa-warning"></i></span>
 | 
						|
                                <div class="sm-st-info">
 | 
						|
                                    <span>{$totaltimes}</span>
 | 
						|
                                    总攻击(次)
 | 
						|
                                </div>
 | 
						|
                            </a>
 | 
						|
                        </div>
 | 
						|
                    </div>
 | 
						|
                    <div class="col-sm-3 col-xs-6">
 | 
						|
                        <div class="sm-st clearfix">
 | 
						|
                            <a href="javascript:;"  data-title="攻击来源(IP)">
 | 
						|
                                <span class="sm-st-icon st-green"><i class="fa fa-users"></i></span>
 | 
						|
                                <div class="sm-st-info">
 | 
						|
                                    <span>{$totalips}</span>
 | 
						|
                                    总共(IP)
 | 
						|
                                </div>
 | 
						|
                            </a>
 | 
						|
                        </div>
 | 
						|
                    </div>
 | 
						|
 | 
						|
                </div>
 | 
						|
 | 
						|
                <div class="row">
 | 
						|
                    <div class="col-lg-12">
 | 
						|
                        <div id="echart" style="height:400px;width:100%;"></div>
 | 
						|
                    </div>
 | 
						|
 | 
						|
 | 
						|
                </div>
 | 
						|
 | 
						|
                <div class="row">
 | 
						|
                    <div class="col-lg-6">
 | 
						|
                        <div class="box box-info">
 | 
						|
                            <div class="box-header"><h3 class="box-title">攻击排行</h3></div>
 | 
						|
                            <div class="box-body" style="padding-top:0;">
 | 
						|
                                <table class="table table-striped">
 | 
						|
                                    <tbody>
 | 
						|
                                    {foreach rankingips as $v}
 | 
						|
 | 
						|
                                    <tr>
 | 
						|
                                        <td width="140">{$v['count']}(次)</td>
 | 
						|
                                        <td>{$v['ip']}</td>
 | 
						|
                                    </tr>
 | 
						|
                                    {/foreach}
 | 
						|
                                    </tbody>
 | 
						|
                                </table>
 | 
						|
                            </div>
 | 
						|
                        </div>
 | 
						|
                    </div>
 | 
						|
 | 
						|
                    <div class="col-lg-6">
 | 
						|
                        <div class="box box-info">
 | 
						|
                            <div class="box-header"><h3 class="box-title">今日攻击排行</h3></div>
 | 
						|
                            <div class="box-body" style="padding-top:0;">
 | 
						|
                                <table class="table table-striped">
 | 
						|
                                    <tbody>
 | 
						|
                                    {foreach $todayranking as $v}
 | 
						|
 | 
						|
                                    <tr>
 | 
						|
                                        <td width="140">{$v['count']}(次)</td>
 | 
						|
                                        <td>{$v['ip']}</td>
 | 
						|
                                    </tr>
 | 
						|
                                    {/foreach}
 | 
						|
                                    </tbody>
 | 
						|
                                </table>
 | 
						|
                            </div>
 | 
						|
                        </div>
 | 
						|
                    </div>
 | 
						|
 | 
						|
                </div>
 | 
						|
 | 
						|
 | 
						|
 | 
						|
            </div>
 | 
						|
        </div>
 | 
						|
        <div class="tab-pane fade" id="two">
 | 
						|
            <div class="row">
 | 
						|
                <div class="col-xs-12">
 | 
						|
                    {:__('Custom zone')}
 | 
						|
                </div>
 | 
						|
            </div>
 | 
						|
        </div>
 | 
						|
    </div>
 | 
						|
</div>
 | 
						|
 | 
						|
<script>
 | 
						|
    var data = {
 | 
						|
        column: {:json_encode(array_keys($totallist))},
 | 
						|
    totallist: {:json_encode(array_values($totallist))},
 | 
						|
    };
 | 
						|
</script> |