{extend name="public:base" /}

{block name="body"}
  <div class="layui-fluid">
    <div class="layui-card">
      <div class="layui-card-header layuiadmin-card-header-auto">
        <button class="layui-btn layuiadmin-btn-database" data-type="back">备份</button>
      </div>
	  	
	  <div class="layui-progress layui-progress-big" lay-showpercent="true" lay-filter="demo">
		  <div class="layui-progress-bar layui-bg-red" lay-percent="0%"></div>
		</div>
	 
      <div class="layui-card-body">    
        <table id="LAY-app-content-database" lay-filter="LAY-app-content-database"></table>
		<script type="text/html" id="toolbarDemo">
		  <div class="layui-btn-container">
			<button class="layui-btn layui-btn-sm" lay-event="getCheckData">获取选中行数据</button>
			<button class="layui-btn layui-btn-sm" lay-event="getCheckLength">获取选中数目</button>
			<button class="layui-btn layui-btn-sm" lay-event="isAll">验证是否全选</button>
		  </div>
		</script>
        <script type="text/html" id="tao-database">
		  <a class="layui-btn layui-btn-normal layui-btn-xs" lay-event="down"><i class="layui-icon layui-icon-download-circle"></i></a>
		  <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del"><i class="layui-icon layui-icon-delete"></i></a>
        </script>
      </div>
    </div>
  </div>

{/block}

{block name="js"}
  <script>
 
  layui.config({
    base: '/static/admin/' //静态资源所在路径
  }).extend({
    index: 'lib/index' //主入口模块
  }).use(['index','table','layer','element'], function(){

    var table = layui.table,
	layer = layui.layer,
	element = layui.element;
    var $ = layui.$;

	var active = {
	
		back: function backup(predate)
		{
			var index = layer.load();
			$.ajax({
				url: "{:url('Database/backup')}",
				type: 'POST', //POST
				async: true, //或false,是否异步
				dataType: 'json',
				data:predate,
				success: function (data, textStatus, jqXHR) {
					
					if (data.totalpercentage >= 100)
					{
						//关闭
						layer.close(index);  
						layer.alert('备份完成', {icon: 1});
						table.reload('LAY-app-content-database'); //数据刷新
					}
						
					element.progress('demo', data.totalpercentage+'%');

					//循环备份
					if (data.totalpercentage < 100)
					{
						backup(data);
					}

				}	
					
			});		
		}

	};
	
	
	
	//信息
    table.render({
        elem: '#LAY-app-content-database'
        ,url: "{:url('Database/index')}"	//进列表接口
        ,toolbar: '#toolbarDemo' //开启头部工具栏,并为其绑定左侧模板
        ,cols: [[
            {type: 'checkbox', fixed: 'left'}
			,{field:'id', title:'ID', width:80, fixed: 'left', unresize: true, sort: true}
            ,{field: 'time', title: '备份时间',width: 180}
			,{field: 'name', title: '备份名', minWidth: 200}
            ,{title: '操作', width: 100, align: 'center', toolbar: '#tao-database'}
        ]]
		,page: true
		,limit: 15
		,limits: [10, 15, 20, 25, 30]
        ,text: '对不起,加载出现异常!'
    });
	
	//监听工具条
    table.on('tool(LAY-app-content-database)', function(obj){
        var data = obj.data;
        if(obj.event === 'del'){
            layer.confirm('确定删除此站点?', function(index){
                $.ajax({
                    type:'post',
                    url:"{:url('Database/delete')}",
                    data:{name:data.name},
                    dataType:'json',
                    success:function(data){
                        if(data.code == 0){
                            layer.msg(data.msg,{
                                icon:6,
                                time:2000
                            },function(){
                                location.reload();
                            });
                        } else {
                            layer.open({
                                title:'删除失败',
                                content:data.msg,
                                icon:5,
                                adim:6
                            })
                        }
                    }
                });
                //obj.del();
                layer.close(index);
            });
        } else if(obj.event === 'down'){
            var tr = $(obj.tr);
            layer.open({
                type: 2
                ,title: '下载'
                ,content: "{:url('Database/down')}" + '?id='+ data.id
                ,area: ['420px', '460px']
                ,btn: ['确定', '取消']
                ,yes: function(index, layero){
				
                    //获取iframe元素的值
					var iframeWindow = window['layui-layer-iframe'+ index]
				  ,submit = layero.find('iframe').contents().find("#LAY-admin-pay-submit");

				  //监听提交
				  iframeWindow.layui.form.on('submit(LAY-admin-pay-submit)', function(data){
					var field = data.field; //获取提交的字段
					
					//提交 Ajax 成功后,静态更新表格中的数据
					$.ajax({
						type:"post",
						url:payEdit,
						data:field,
						daType:"json",
						success:function (res){
							if (res.code == 0) {
								layer.msg(res.msg,{
									icon:6,
									time:2000
								});
							} else {
								layer.open({
									title:'修改失败',
									content:res.msg,
									icon:5,
									anim:6
								});
							}
						}
					});
					
					table.reload('LAY-app-content-pay'); //数据刷新
					layer.close(index); //关闭弹层
				  });  
				  
				  submit.trigger('click');
					
                }
                ,success: function(layero, index){
                    //给iframe元素赋值
                    var othis = layero.find('iframe').contents().find("#layuiadmin-app-form-pay").click();
                    othis.find('input[name="pay_value"]').val(Math.abs(data.pay_value))
                    ,othis.find('input[name="pay_name"]').val(data.pay_name);
                }
            });
        }
    });
	
	
	
	
	$('#back1').on('click',function(){
	
		//询问框
		layer.confirm('确定备份?', {
		  btn: ['确定','取消'] //按钮
		  }, function(){
		  console.log(123);
			backup({});
			//layer.msg('的确很重要', {icon: 1});
			
		}
		);
	
	});
	

	
    $('.layui-btn.layuiadmin-btn-database').on('click', function(){
      var type = $(this).data('type');
      active[type] ? active[type].call(this) : '';
    });
  });
  </script>
{/block}