commit
ff5ff3ee80
@ -0,0 +1,237 @@
|
||||
<?php
|
||||
|
||||
namespace Admin\Controller;
|
||||
|
||||
|
||||
class AmericaIpForbitController extends ThinkController
|
||||
{
|
||||
|
||||
public function index($p = 1) {
|
||||
|
||||
$page = intval($p);
|
||||
$page = $page ? $page : 1; //默认显示第一页数据
|
||||
|
||||
if (isset($_REQUEST['row'])) {
|
||||
$row = $_REQUEST['row'];
|
||||
} else {
|
||||
$row = 10;
|
||||
}
|
||||
|
||||
$map = [];
|
||||
|
||||
if ($_REQUEST['user_account']) {
|
||||
$map['user_account'] = ['like',"%{$_REQUEST['user_account']}%"];
|
||||
}
|
||||
|
||||
$data = M('forbit_ip','tab_')
|
||||
->where($map)
|
||||
->page($page,$row)
|
||||
->order('create_time DESC')
|
||||
->select();
|
||||
|
||||
foreach ( $data as $key => $value ) {
|
||||
|
||||
$data[$key]['create_time'] = date('Y-m-d H:i:s',$value['create_time']);
|
||||
|
||||
}
|
||||
|
||||
$count = M('forbit_ip','tab_')
|
||||
->where($map)
|
||||
->count();
|
||||
|
||||
$appleInteriorBuyStatus = M('tool','tab_')->where(['name'=>'apple_interior_buy'])->getField('status');
|
||||
|
||||
$setAppleInteriorBuyStatus = $appleInteriorBuyStatus?0:1;
|
||||
|
||||
|
||||
$page = set_pagination($count, $row);
|
||||
|
||||
$this->assign('_page', $page);
|
||||
|
||||
$this->assign('apple_interior_buy',$appleInteriorBuyStatus);
|
||||
$this->assign('set_apple_interior_buy',$setAppleInteriorBuyStatus);
|
||||
|
||||
$this->assign('data',$data);
|
||||
|
||||
$this->display();
|
||||
|
||||
}
|
||||
|
||||
public function export() {
|
||||
|
||||
$xlsName = 'ip限制白名单';
|
||||
|
||||
$xlsCell = array(
|
||||
"玩家账号", "区域", '状态', '添加人', '添加时间'
|
||||
);
|
||||
|
||||
$map = [];
|
||||
|
||||
if ($_REQUEST['user_account']) {
|
||||
$map['user_account'] = ['like',"%{$_REQUEST['user_account']}%"];
|
||||
}
|
||||
|
||||
$csvFileName = $xlsName.'.csv';
|
||||
//设置好告诉浏览器要下载excel文件的headers
|
||||
header('Content-Description: File Transfer');
|
||||
header('Content-Type: application/vnd.ms-excel');
|
||||
header('Content-Disposition: attachment; filename="'. $csvFileName .'"');
|
||||
header('Expires: 0');
|
||||
header('Cache-Control: must-revalidate');
|
||||
header('Pragma: public');
|
||||
$fp = fopen('php://output', 'a');//打开output流
|
||||
mb_convert_variables('GBK', 'UTF-8', $xlsCell);
|
||||
fputcsv($fp, $xlsCell);//将数据格式化为CSV格式并写入到output流中
|
||||
|
||||
$accessNum = M('forbit_ip','tab_')
|
||||
->where($map)
|
||||
->count();
|
||||
|
||||
$accessNum =$accessNum['count'];
|
||||
|
||||
$perSize = 2000;//每次查询的条数
|
||||
$pages = ceil($accessNum / $perSize);
|
||||
|
||||
for($i = 1; $i <= $pages; $i++) {
|
||||
$xlsData = M('forbit_ip','tab_')
|
||||
->field('user_account,area,status,admin_account,create_time')
|
||||
->where($map)
|
||||
->limit(($i-1)*$perSize ,$perSize)
|
||||
->order('create_time DESC')
|
||||
->select();
|
||||
|
||||
foreach($xlsData as $value) {
|
||||
$value['create_time'] = date("Y-m-d H:i:s",$value['create_time']);
|
||||
|
||||
if ($value['status'] == 0) {
|
||||
$value['status'] = '限制';
|
||||
} else {
|
||||
$value['status'] = '不限制';
|
||||
}
|
||||
|
||||
mb_convert_variables('GBK', 'UTF-8', $value);
|
||||
fputcsv($fp, $value);
|
||||
}
|
||||
unset($xlsData);//释放变量的内存
|
||||
//刷新输出缓冲到浏览器
|
||||
ob_flush();
|
||||
flush();//必须同时使用 ob_flush() 和flush() 函数来刷新输出缓冲。
|
||||
}
|
||||
fclose($fp);
|
||||
|
||||
$getData = $_GET;
|
||||
unset($getData['id']);
|
||||
unset($getData['xlsname']);
|
||||
|
||||
}
|
||||
|
||||
public function operateIp() {
|
||||
|
||||
if (!I('id')) {
|
||||
$this->ajaxReturn(['code'=>1,'msg'=>'ID未选择']);
|
||||
} else {
|
||||
$id = I('id');
|
||||
}
|
||||
|
||||
if (I('status')) {
|
||||
$status = I('status');
|
||||
} else {
|
||||
$status = 0;
|
||||
}
|
||||
|
||||
|
||||
$map['id'] = ['in',$id];
|
||||
|
||||
|
||||
$is_change = M('forbit_ip','tab_')->where(['id'=>['in',$id]])->save(['status'=>$status]);
|
||||
|
||||
if ($is_change) {
|
||||
$this->ajaxReturn(['code'=>1]);
|
||||
} else {
|
||||
$this->ajaxReturn(['code'=>0]);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public function del() {
|
||||
|
||||
if (!I('id')) {
|
||||
$this->ajaxReturn(['code'=>1,'msg'=>'ID未选择']);
|
||||
} else {
|
||||
$id = I('id');
|
||||
}
|
||||
|
||||
$is_del = $is_change = M('forbit_ip','tab_')->where(['id'=>['in',$id]])->delete();
|
||||
|
||||
if ($is_del) {
|
||||
$this->ajaxReturn(['code'=>1]);
|
||||
} else {
|
||||
$this->ajaxReturn(['code'=>0]);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public function add() {
|
||||
|
||||
$this->display();
|
||||
|
||||
}
|
||||
|
||||
public function addUser() {
|
||||
|
||||
$insert = [];
|
||||
|
||||
$hav_user = M('user','tab_')->where(['account'=>I('account')])->find();
|
||||
|
||||
$auth = $_SESSION['onethink_admin']['user_auth'];
|
||||
|
||||
if (!$hav_user) {
|
||||
$this->error('用户不存在');
|
||||
}
|
||||
|
||||
$hav_firbit = M('forbit_ip','tab_')->where(['user_account'=>I('account')])->find();
|
||||
|
||||
if ($hav_firbit) {
|
||||
$this->error('该用户已添加封禁');
|
||||
}
|
||||
|
||||
$insert['user_id'] = $hav_user['id'];
|
||||
$insert['user_account'] = I('account');
|
||||
$insert['area'] = I('area');
|
||||
$insert['status'] = I('status');
|
||||
$insert['admin_id'] = $auth['uid'];
|
||||
$insert['admin_account'] = $auth['username'];
|
||||
$insert['create_time'] = time();
|
||||
$insert['remarks'] = '';
|
||||
|
||||
$is_insert = M('forbit_ip','tab_')->add($insert);
|
||||
|
||||
if ($is_insert) {
|
||||
$this->success('添加成功',U('AmericaIpForbit/index'));
|
||||
} else {
|
||||
$this->error('添加失败');
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
public function setAppleInteriorBuyStatus() {
|
||||
|
||||
$status = I('status');
|
||||
|
||||
if (!$status && $status!='0') {
|
||||
$this->ajaxReturn(['code'=>0]);
|
||||
}
|
||||
|
||||
$is_success = M('tool','tab_')->where(['name'=>'apple_interior_buy'])->save(['status'=>$status]);
|
||||
|
||||
if ($is_success) {
|
||||
$this->ajaxReturn(['code'=>1]);
|
||||
} else {
|
||||
$this->ajaxReturn(['code'=>0]);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
@ -0,0 +1,546 @@
|
||||
<extend name="Public/base"/>
|
||||
|
||||
<block name="body">
|
||||
<link rel="stylesheet" href="__CSS__/select2.min.css" type="text/css" />
|
||||
<script type="text/javascript" src="__JS__/bootstrap.min.js"></script>
|
||||
<script type="text/javascript" src="__JS__/select2.min.js"></script>
|
||||
<style>
|
||||
.select2-container--default .select2-selection--single {
|
||||
color: #000;
|
||||
resize: none;
|
||||
border-width: 1px;
|
||||
border-style: solid;
|
||||
border-color: #a7b5bc #ced9df #ced9df #a7b5bc;
|
||||
box-shadow: 0px 3px 3px #F7F8F9 inset;height:35px;
|
||||
height:28px;border-radius:3px;font-size:12px;
|
||||
}
|
||||
.select2-container--default .select2-selection--single .select2-selection__rendered {
|
||||
line-height:35px;
|
||||
line-height:28px;
|
||||
}
|
||||
.select2-container--default .select2-selection--single .select2-selection__arrow {
|
||||
height:26px;
|
||||
}
|
||||
.select2-container--default .select2-search--dropdown .select2-search__field {
|
||||
height:26px;line-height:26px;font-size:12px;
|
||||
}
|
||||
.select2-results__option[aria-selected] {font-size:12px;}
|
||||
|
||||
.tooltip {
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
color: #056dae;
|
||||
}
|
||||
|
||||
.tooltip .tooltiptext {
|
||||
visibility: hidden;
|
||||
width: 250%;
|
||||
background-color: #fff;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
border-radius: 6px;
|
||||
padding: 5px 0;
|
||||
position: absolute;
|
||||
z-index: 1;
|
||||
bottom: 80%;
|
||||
left: 0;
|
||||
margin-left: -70%;
|
||||
border: #000 solid 1px;
|
||||
}
|
||||
|
||||
.tooltip .tooltiptext::after {
|
||||
content: "";
|
||||
position: absolute;
|
||||
top: 100%;
|
||||
left: 50%;
|
||||
margin-left: -5px;
|
||||
border-width: 5px;
|
||||
border-style: solid;
|
||||
border-color: black transparent transparent transparent;
|
||||
}
|
||||
|
||||
.tooltip:hover .tooltiptext {
|
||||
|
||||
color: #000;
|
||||
visibility: visible;
|
||||
line-height: 20px;
|
||||
}
|
||||
|
||||
.select2-container--default .select2-selection--single {
|
||||
color: #000;
|
||||
resize: none;
|
||||
border-width: 1px;
|
||||
border-style: solid;
|
||||
border-color: #a7b5bc #ced9df #ced9df #a7b5bc;
|
||||
box-shadow: 0px 3px 3px #F7F8F9 inset;height:35px;
|
||||
height:28px;border-radius:3px;font-size:12px;
|
||||
}
|
||||
.select2-container--default .select2-selection--single .select2-selection__rendered {
|
||||
line-height:35px;
|
||||
line-height:28px;
|
||||
}
|
||||
.select2-container--default .select2-selection--single .select2-selection__arrow {
|
||||
height:26px;
|
||||
}
|
||||
.select2-container--default .select2-search--dropdown .select2-search__field {
|
||||
height:26px;line-height:26px;font-size:12px;
|
||||
}
|
||||
.select2-results__option[aria-selected] {font-size:12px;}
|
||||
.layui-layer-dialog .layui-layer-content{color:red}
|
||||
.butnbox {padding:10px 0 10px;}
|
||||
.butnbox .butnlist {overflow:hidden;clear:both;}
|
||||
.butnbox .butnlist .butn,.butnbox .butnlist .butn:hover {text-decoration:none;border:none;}
|
||||
.butnbox .butnlist .butn {display:inline-block;width:120px;height:28px;line-height:28px;text-align:center;color:#FFF;background:#3C95C8;border-radius:3px;}
|
||||
.butnbox .butnlist .butn.last {background:#009900;}
|
||||
.butnbox .butnlist .butn~.butn {margin-left:20px;}
|
||||
.data_list table tbody tr a.disabled,.data_list table tbody tr a.disabled:hover {color:#999;cursor:default;}
|
||||
.layui-layer-title {
|
||||
text-align: center;
|
||||
height: 80px;
|
||||
line-height: 80px;
|
||||
font-weight: 600;
|
||||
font-size: 18px;
|
||||
}
|
||||
|
||||
.chk_1,.chk_2,.chk_3,.chk_4 {
|
||||
display: none;
|
||||
}
|
||||
|
||||
/*******STYLE 3*******/
|
||||
.chk_3 + label {
|
||||
background-color: #fafbfa;
|
||||
padding: 9px;
|
||||
border-radius: 50px;
|
||||
display: inline-block;
|
||||
position: relative;
|
||||
margin-right: 30px;
|
||||
-webkit-transition: all 0.1s ease-in;
|
||||
transition: all 0.1s ease-in;
|
||||
width: 40px;
|
||||
height: 15px;
|
||||
}
|
||||
|
||||
.chk_3 + label:after {
|
||||
content: ' ';
|
||||
position: absolute;
|
||||
top: 0;
|
||||
-webkit-transition: box-shadow 0.1s ease-in;
|
||||
transition: box-shadow 0.1s ease-in;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
border-radius: 100px;
|
||||
box-shadow: inset 0 0 0 0 #eee, 0 0 1px rgba(0,0,0,0.4);
|
||||
}
|
||||
|
||||
.chk_3 + label:before {
|
||||
content: ' ';
|
||||
position: absolute;
|
||||
background: white;
|
||||
top: 1px;
|
||||
left: 1px;
|
||||
z-index: 999999;
|
||||
width: 31px;
|
||||
-webkit-transition: all 0.1s ease-in;
|
||||
transition: all 0.1s ease-in;
|
||||
height: 31px;
|
||||
border-radius: 100px;
|
||||
box-shadow: 0 3px 1px rgba(0,0,0,0.05), 0 0px 1px rgba(0,0,0,0.3);
|
||||
}
|
||||
|
||||
.chk_3:active + label:after {
|
||||
box-shadow: inset 0 0 0 20px #eee, 0 0 1px #eee;
|
||||
}
|
||||
|
||||
.chk_3:active + label:before {
|
||||
width: 37px;
|
||||
}
|
||||
|
||||
.chk_3:checked:active + label:before {
|
||||
width: 37px;
|
||||
left: 20px;
|
||||
}
|
||||
|
||||
.chk_3 + label:active {
|
||||
box-shadow: 0 1px 2px rgba(0,0,0,0.05), inset 0px 1px 3px rgba(0,0,0,0.1);
|
||||
}
|
||||
|
||||
.chk_3:checked + label:before {
|
||||
content: ' ';
|
||||
position: absolute;
|
||||
left: 26px;
|
||||
border-radius: 100px;
|
||||
}
|
||||
|
||||
.chk_3:checked + label:after {
|
||||
content: ' ';
|
||||
font-size: 1.5em;
|
||||
position: absolute;
|
||||
background: #4cda60;
|
||||
box-shadow: 0 0 1px #4cda60;
|
||||
}
|
||||
|
||||
#checkbox_d2 + label:after, #checkbox_d2 + label:before, #checkbox label {
|
||||
-webkit-transition: all 0.1s ease-in;
|
||||
transition: all 0.1s ease-in;
|
||||
}
|
||||
|
||||
</style>
|
||||
|
||||
<div class="cf main-place top_nav_list navtab_list">
|
||||
|
||||
<h3 class="page_title">ip限制白名单</h3>
|
||||
<p class="description_text">说明:苹果内购白名单,名单中的用户支付成功可通知游戏</p>
|
||||
<div class="demo">
|
||||
<div class="wrap" ><span style="float: right;margin-top: 7px;margin-right: 120px">关</span>
|
||||
<input type="checkbox" id="checkbox_c2" class="chk_3" <if condition="$apple_interior_buy eq 1">checked</if> /><label for="checkbox_c2" style="float: right;margin-right: 5px" onclick="setAppleInteriorBuyStatus({$set_apple_interior_buy})"></label>
|
||||
<span style="float: right;margin-top: 7px;margin-right: 5px">开</span>
|
||||
<span style="float: right;margin-top: 7px;margin-right: 30px">全游戏苹果内购支付成功通知默认限制</span>
|
||||
</div>
|
||||
</div>
|
||||
<!-- <div class="fr">-->
|
||||
<!-- <a class="tabchose" href="">游戏充值统计</a>-->
|
||||
<!-- <a class="" href="{:U('Finance/payTypeStatistics')}">充值方式统计</a>-->
|
||||
<!-- </div>-->
|
||||
</div>
|
||||
|
||||
<div class="cf top_nav_list">
|
||||
|
||||
<!-- 高级搜索 -->
|
||||
<div class="jssearch fl cf search_list">
|
||||
<!--游戏类型搜索END-->
|
||||
|
||||
<div class="input-list">
|
||||
<input type="text" id="user_account" name="user_account" class="" value="{:I('user_account')}" placeholder="玩家账号" autocomplete="off"/>
|
||||
</div>
|
||||
|
||||
<input type="hidden" name="" value="" class="sortBy">
|
||||
<div class="input-list">
|
||||
<a class="sch-btn" href="javascript:;" id="search"
|
||||
style="width: 100px;border: #3C95C8 solid 1px; " url="{:U('AmericaIpForbit/index','model='.$model['name'].'&row='.I('row'),false)}">搜索</a>
|
||||
</div>
|
||||
|
||||
<div class="input-list">
|
||||
<a class="sch-btn" href="javascript:;" id="forbit"
|
||||
style="width: 150px;background: #fff;color: #000;border:1px solid #000;">批量限制</a>
|
||||
</div>
|
||||
<div class="input-list">
|
||||
<a class="sch-btn" href="javascript:;" id="noforbit"
|
||||
style="width: 150px;background: #fff;color: #000;border:1px solid #000;">批量不限制</a>
|
||||
</div>
|
||||
<div class="input-list">
|
||||
<a class="sch-btn" href="javascript:;" id="delete"
|
||||
style="width: 150px;background: #fff;color: #000;border:1px solid #000;">批量删除</a>
|
||||
</div>
|
||||
<div class="input-list">
|
||||
<a class="sch-btn" href="{:U('AmericaIpForbit/add')}"
|
||||
style="width: 150px;background: #fff;color: #000;border:1px solid #000;">添加玩家账号</a>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<!-- 数据列表 -->
|
||||
<div class="data_list">
|
||||
<empty name="show_status">
|
||||
<div class="">
|
||||
<table>
|
||||
<!-- 表头 -->
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th class="" style="width: 50px;">
|
||||
<input class="check-all" type="checkbox">
|
||||
</th>
|
||||
|
||||
<th >玩家账号</th>
|
||||
|
||||
<th >区域</th>
|
||||
|
||||
<th >状态</th>
|
||||
|
||||
<th >添加人</th>
|
||||
|
||||
<th >添加时间</th>
|
||||
|
||||
<th >操作</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<!-- 列表 -->
|
||||
<tbody>
|
||||
<style>
|
||||
.data-table thead th, .data-table tbody td{text-align:center}
|
||||
.data-table tbody td{border-right:1px solid #DDDDDD;}
|
||||
.d_list .drop-down ul {z-index:999;}
|
||||
</style>
|
||||
<if condition = "empty($data)">
|
||||
<tr>
|
||||
<td colspan="14" class="text-center">aOh! 暂时还没有内容!</td>
|
||||
</tr>
|
||||
</if>
|
||||
<notemtpy name = "data">
|
||||
<volist name="data" id="data">
|
||||
<tr>
|
||||
<td ><input class="ids" type="checkbox" value="{$data.id}" name="ids[]"></td>
|
||||
<td >{$data.user_account}</td>
|
||||
<td>{$data.area}</td>
|
||||
<td ><if condition="$data.status eq 1">不限制<else/>限制</if></td>
|
||||
<td >{$data.admin_account}</td>
|
||||
<td >{$data.create_time}</td>
|
||||
<td >
|
||||
<a href="javascript:;" onclick="del({$data.id})">删除 </a>
|
||||
<if condition="$data.status eq 1">
|
||||
<a class="ajax-get" href="javascript:;" onclick="limit({$data.id},0)">限制 </a>
|
||||
<else />
|
||||
<a href="javascript:;" id="lock" onclick="limit({$data.id},1)">不限制</a>
|
||||
</if>
|
||||
</td>
|
||||
</tr>
|
||||
</volist>
|
||||
</notemtpy>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</empty>
|
||||
</div>
|
||||
<div class="page">
|
||||
<if condition="$is_admin eq true ">
|
||||
<a class="sch-btn export-btn"
|
||||
href="{:U('AmericaIpForbit/export',array_merge(['export'=>1],I('get.')))}" target="_blank">导出</a>
|
||||
<!-- <a class="sch-btn" href="{:U('Export/expUser',array_merge(['id'=>3,'xlsname'=>'玩家_玩家列表_'.(I('get.type')==2?'第三方玩家':'本站玩家')],I('get.')))}">导出</a> -->
|
||||
</if>
|
||||
{$_page|default=''}
|
||||
</div>
|
||||
|
||||
</block>
|
||||
|
||||
<block name="script">
|
||||
<script src="__STATIC__/layer/layer.js" type="text/javascript"></script>
|
||||
<script type="text/javascript" src="__STATIC__/layer/extend/layer.ext.js" ></script>
|
||||
<link href="__STATIC__/datetimepicker/css/datetimepicker.css" rel="stylesheet" type="text/css">
|
||||
<php>if(C('COLOR_STYLE')=='blue_color') echo '<link href="__STATIC__/datetimepicker/css/datetimepicker_blue.css" rel="stylesheet" type="text/css">';</php>
|
||||
<link href="__STATIC__/datetimepicker/css/dropdown.css" rel="stylesheet" type="text/css">
|
||||
<script type="text/javascript" src="__STATIC__/datetimepicker/js/bootstrap-datetimepicker.min.js"></script>
|
||||
<script type="text/javascript" src="__STATIC__/datetimepicker/js/locales/bootstrap-datetimepicker.zh-CN.js" charset="UTF-8"></script>
|
||||
<script>
|
||||
<volist name=":I('get.')" id="vo">
|
||||
Think.setValue('{$key}',"{$vo}");
|
||||
</volist>
|
||||
</script>
|
||||
<script type="text/javascript">
|
||||
|
||||
|
||||
|
||||
//导航高亮
|
||||
highlight_subnav('{:U('AmericaIpForbit/index')}');
|
||||
|
||||
$('#forbit').click(function () {
|
||||
var text = $("input:checkbox[name='ids[]']:checked").map(function(index,elem) {
|
||||
return $(elem).val();
|
||||
}).get().join(",");
|
||||
|
||||
layer.confirm('【警告】是否确认此操作', {
|
||||
btn: ['确认','取消'],
|
||||
title:false
|
||||
}, function(index) {
|
||||
if (!text) {
|
||||
layer.msg("<em style='color:white'>" + '请选择后再进行操作' + "</em>");
|
||||
return;
|
||||
}
|
||||
|
||||
$.ajax({
|
||||
url: "{:U('AmericaIpForbit/operateIp')}",
|
||||
type: "get",
|
||||
data: {id: text,status:0},
|
||||
dataType: 'json',
|
||||
success: function (data) {
|
||||
if (data.code == 0) {
|
||||
layer.msg("<em style='color:white'>" + '批量限制失败' + "</em>");
|
||||
} else {
|
||||
layer.msg("<em style='color:white'>" + '批量限制成功' + "</em>")
|
||||
setTimeout(function(){
|
||||
window.location.reload();
|
||||
},1500);
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
//搜索功能
|
||||
$("#search").click(function(){
|
||||
var starttime = $.trim($('#time-start').val());
|
||||
var endtime = $.trim($('#time-end').val());
|
||||
|
||||
if (starttime && endtime && starttime > endtime) {layer.msg('开始时间必须小于等于结束时间');return false;}
|
||||
|
||||
|
||||
var url = $(this).attr('url');
|
||||
var query = $('.jssearch').find('input').serialize();
|
||||
query += "&" + $('.jssearch').find('select').serialize();
|
||||
query = query.replace(/(&|^)(\w*?\d*?\-*?_*?)*?=?((?=&)|(?=$))/g,'');
|
||||
query = query.replace(/^&/g,'');
|
||||
if( url.indexOf('?')>0 ){
|
||||
url += '&' + query;
|
||||
}else{
|
||||
url += '?' + query;
|
||||
}
|
||||
window.location.href = url;
|
||||
});
|
||||
|
||||
$('#noforbit').click(function () {
|
||||
var text = $("input:checkbox[name='ids[]']:checked").map(function(index,elem) {
|
||||
return $(elem).val();
|
||||
}).get().join(",");
|
||||
|
||||
layer.confirm('【警告】是否确认此操作', {
|
||||
btn: ['确认','取消'],
|
||||
title:false
|
||||
}, function(index) {
|
||||
if (!text) {
|
||||
layer.msg("<em style='color:white'>" + '请选择后再进行操作' + "</em>");
|
||||
return;
|
||||
}
|
||||
|
||||
$.ajax({
|
||||
url: "{:U('AmericaIpForbit/operateIp')}",
|
||||
type: "get",
|
||||
data: {id: text,status:1},
|
||||
dataType: 'json',
|
||||
success: function (data) {
|
||||
if (data.code == 0) {
|
||||
layer.msg("<em style='color:white'>" + '批量不限制失败' + "</em>");
|
||||
} else {
|
||||
layer.msg("<em style='color:white'>" + '批量不限制成功' + "</em>")
|
||||
setTimeout(function(){
|
||||
window.location.reload();
|
||||
},1500);
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
$('#delete').click(function () {
|
||||
var text = $("input:checkbox[name='ids[]']:checked").map(function(index,elem) {
|
||||
return $(elem).val();
|
||||
}).get().join(",");
|
||||
|
||||
layer.confirm('【警告】撤销后将不可回退,如需继续请点击确认', {
|
||||
btn: ['确认','取消'],
|
||||
title:false
|
||||
}, function(index) {
|
||||
if (!text) {
|
||||
layer.msg("<em style='color:white'>" + '请选择后再进行操作' + "</em>");
|
||||
return;
|
||||
}
|
||||
|
||||
$.ajax({
|
||||
url: "{:U('AmericaIpForbit/del')}",
|
||||
type: "get",
|
||||
data: {id: text},
|
||||
dataType: 'json',
|
||||
success: function (data) {
|
||||
if (data.code == 0) {
|
||||
layer.msg("<em style='color:white'>" + '批量删除失败' + "</em>");
|
||||
} else {
|
||||
layer.msg("<em style='color:white'>" + '批量删除成功' + "</em>")
|
||||
setTimeout(function(){
|
||||
window.location.reload();
|
||||
},1500);
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
$('#add').click(function () {
|
||||
|
||||
});
|
||||
|
||||
function limit(id,status) {
|
||||
|
||||
layer.confirm('【警告】是否确认此操作', {
|
||||
btn: ['确认','取消'],
|
||||
title:false
|
||||
}, function(index) {
|
||||
|
||||
$.ajax({
|
||||
url: "{:U('AmericaIpForbit/operateIp')}",
|
||||
type: "get",
|
||||
data: {id: id,status: status},
|
||||
dataType: 'json',
|
||||
success: function (data) {
|
||||
if (data.code == 0) {
|
||||
layer.msg("<em style='color:white'>" + '操作失败' + "</em>");
|
||||
} else {
|
||||
layer.msg("<em style='color:white'>" + '操作成功' + "</em>")
|
||||
setTimeout(function(){
|
||||
window.location.reload();
|
||||
},1500);
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
function del(id) {
|
||||
|
||||
layer.confirm('【警告】撤销后将不可回退,如需继续请点击确认', {
|
||||
btn: ['确认','取消'],
|
||||
title:false
|
||||
}, function(index) {
|
||||
|
||||
$.ajax({
|
||||
url: "{:U('AmericaIpForbit/del')}",
|
||||
type: "get",
|
||||
data: {id: id},
|
||||
dataType: 'json',
|
||||
success: function (data) {
|
||||
if (data.code == 0) {
|
||||
layer.msg("<em style='color:white'>" + '操作失败' + "</em>");
|
||||
} else {
|
||||
layer.msg("<em style='color:white'>" + '操作成功' + "</em>")
|
||||
setTimeout(function(){
|
||||
window.location.reload();
|
||||
},1500);
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
function setAppleInteriorBuyStatus(status) {
|
||||
|
||||
layer.confirm('【警告】是否确认打开全游戏苹果内购支付成功通知', {
|
||||
btn: ['确认','取消'],
|
||||
area: ['380px','120px'],
|
||||
title: false
|
||||
}, function(index) {
|
||||
|
||||
$.ajax({
|
||||
url: "{:U('AmericaIpForbit/setAppleInteriorBuyStatus')}",
|
||||
type: "get",
|
||||
data: {status: status},
|
||||
dataType: 'json',
|
||||
success: function (data) {
|
||||
if (data.code == 0) {
|
||||
layer.msg("<em style='color:white'>" + '操作失败' + "</em>");
|
||||
} else {
|
||||
layer.msg("<em style='color:white'>" + '操作成功' + "</em>")
|
||||
setTimeout(function(){
|
||||
window.location.reload();
|
||||
},1500);
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
</script>
|
||||
</block>
|
Loading…
Reference in New Issue