<?php include(mvc::$cfg['PATH_TPL'].'public/header.php');?>
<?php include(mvc::$cfg['PATH_TPL'].'product/common.php');?>
<link href="<?php echo mvc::$cfg['URL_STATIC'];?>css/plugins/iCheck/custom.css" rel="stylesheet">
<!--BEGIN FROM DIV-->
<div class="row">
<div class="col-sm-12">
<div class="ibox float-e-margins">
<div class="ibox-title">
<h2><span class="form_title"></span> <small></small></h2>
</div>
<div class="ibox-content">
<!-- 参考 https://jqueryvalidation.org/
required:true               必输字段
remote:"remote.php"         使用ajax方法调用remote.php验证输入值, 返回'false'验证不通过，返回'true'验证通过
email:true                  必须输入正确格式的电子邮件
url:true                    必须输入正确格式的网址
date:true                   必须输入正确格式的日期，日期校验ie6出错，慎用
dateISO:true                必须输入正确格式的日期(ISO)，例如：2009-06-23，1998/01/22 只验证格式，不验证有效性
number:true                 必须输入合法的数字(负数，小数)
digits:true                 必须输入整数
creditcard:true             必须输入合法的信用卡号
equalTo:"#password"         输入值必须和#password相同
accept:                     输入拥有合法后缀名的字符串（上传文件的后缀）
maxlength:5                 输入长度最多是5的字符串(汉字算一个字符)
minlength:10                输入长度最小是10的字符串(汉字算一个字符)
rangelength:[5,10]          输入长度必须介于 5 和 10 之间的字符串")(汉字算一个字符)
range:[5,10]                输入值必须介于 5 和 10 之间
max:5                       输入值不能大于5
min:10                      输入值不能小于10
$("#form").validate({
	messages:{
		f_username:{remote:"用户名已经被注册"},
	}
});
-->	
	<form id="form" method="post" class="form-horizontal">
		<input type="hidden" name="f_p_id" id="f_p_id" class="form-control" value="<?php echo $_GET['key']?>" required minlength="0" maxlength="11" number="true">
<div class="form-group">
		<label class="col-sm-2 control-label">公司</label>
		<div class="col-sm-10">
			<label class="radio-inline i-checks">
				<input type="radio" value="1"  name="f_p_parent_id" checked> <i></i>宜配</label>
			<label class="radio-inline i-checks">
				<input type="radio" value="2"  name="f_p_parent_id"> <i></i>跑街令</label>
		</div>
	</div>
<div class="form-group">
			<label class="col-sm-2 control-label">产品名称</label>
			<div class="col-sm-10">
				<input type="text" tabindex=2 name="f_p_name" id="f_p_name" class="form-control" required minlength="0" maxlength="100" >
			</div>
		</div>
		<div class="hr-line-dashed"></div>
		<div class="form-group">
			<div class="col-sm-4 col-sm-offset-2">
				<button class="btn btn-primary" type="button" tabindex=3 id="save">保存</button>
				<button class="btn btn-white" type="button" tabindex=4 id="view">预览</button>
				<button class="btn btn-white" type="button" tabindex=1 id="close" onclick="javascript:parent.layer.close(parent.layer.getFrameIndex(window.name));">取消</button>
			</div>
		</div>
	</form>
</div>
</div>
</div>
</div>
<!--END FROM DIV-->
<script src="<?php echo mvc::$cfg['URL_STATIC'];?>js/plugins/iCheck/icheck.min.js"></script>
<script src="<?php echo mvc::$cfg['URL_STATIC'];?>js/plugins/validate/jquery.validate.min.js"></script>
<script src="<?php echo mvc::$cfg['URL_STATIC'];?>js/plugins/validate/messages_zh.min.js"></script>
<script type="text/javascript" defer> 
var op            = "<?php echo $_GET['op']?>";
var key           = "<?php echo $_GET['key']?>";

//获取上级页面
var ele = (window.top).document.querySelectorAll('[data-id="' + urls.list + '"]')[1];
var listIframe = ele.contentWindow || parent;

var validator = null;
$(document).ready(function () {
	$('#close').focus(); //初始焦点
	$(".i-checks").iCheck({checkboxClass:"icheckbox_square-green",radioClass:"iradio_square-green",});//美化 单选与复选框
	if(op=='add') $('#view').hide(); //添加模式时，隐藏预览功能
	$('#save').on("click", gotoSave);
	$('#view').on("click", gotoView);
	if(key){
		getValueByKey(key); //给表单赋值
	}else{
		$('.form_title').text('添加');
	}
	//BEGIN 表单验证
	validator = $("#form").validate({
		rules:{
			f_p_name: {
				required: true,
				minlength: 2,
				remote:{
					url: urls.remote,
					type:'post',
					data:{
						p_id:function(){ return $("input[name='f_p_id']").val(); },
						p_parent_id:function(){ return $("input[name='f_p_parent_id']:checked").val(); },
						p_name:function(){ return $("input[name='f_p_name']").val(); },
					}
				}
			},
		},//rules
		messages:{
			f_p_name: {
				minlength: '至少需要2个字符',
				remote:'产品名称已被使用'
			}
		},
	});//END 表单验证
});
//按键处理
$(document).keydown(function(e){
	if(e.keyCode=='27'){ //Esc
		parent.layer.close(parent.layer.getFrameIndex(window.name)); //关闭当前弹层
	}else if(e.shiftKey && e.keyCode=='86'){ //shift + V
		gotoView();
	}else if(e.shiftKey && e.keyCode=='83'){ //shift + S
		gotoSave();
	}
}); 
/**方法******************************************/
function getValueByKey(key){
	$.getJSON(urls.rowByKey+"?key="+key,function(res){
		if(res.code==0){
			$('.form_title').text(res.data.p_name);
			qgui.form.setValues('#form',res.data); 
		}else{
			qgui.box.error(res.msg);
		}
	});
}
var gotoSave = function(){
	if(!$("#form").valid()) return false; //有未通过验证的发生时，终止提交
	var data = qgui.form.getValues('#form'); //序列化表单
	var url = (op=='add') ? urls.addPost : urls.editPost;
	$.post(url,JSON.stringify(data),function(res,status){
		if(res.code==0){
			if(op=='add'){
				qgui.box.yesno('保存成功，是否添加下一条记录?',function(btn){
					if(btn=='yes'){
						qgui.form.reset('#form'); //重置表单
					}else{ //从添加模式转化成修改模式
						op = 'edit';
						key = res.data.key;
						$('#view').show(); //编辑模式时，显示预览功能
						getValueByKey(key); 
					}
				});
			}else{
				qgui.box.ok('保存成功',1000);
			}
			listIframe.gridReload(); //刷新数据表
		}else{
			qgui.box.error(res.msg);
		}
	},"json");
}
var gotoView = function(){
	window.location.href = urls.view+'?key='+key;
}
</script>
<?php include(mvc::$cfg['PATH_TPL'].'public/footer.php');?>