
//全局变量
var currentModifyID = 0;//点击修改时,记录当前修改的ShippingAreaID
var strClose = "<img src='images/folder_close.gif' />";
var strOpen = "<img src='images/folder_open.gif' />";
var strSecondbghover = "#ffffd4";
var strSecondbghout = '#eeeeee';

$(document).ready(function(){
	var page = getQueryStringRegExp('Action');
	if(page == 'Manage'){ShowManage();}else{ShowAdd();GetShippingType(0);}
	
	$('#loadingContainer').ajaxStart(function(){
	    $(this).show();
	    $('#loadingbackground').show().css({"opacity": "0.5"});
	}).ajaxStop(function(){
	    $(this).hide();
	});
	
	$('#loadingContainer').hide();
	
//	$('tr[@id^=top_] td.name').each(function(){
//	    $(this).html(strClose + $(this).html());
//	});

	//获取第二级地区
	$('tr[@id^=top_]').toggle(function(){
	    $('tr.third').hide();
	    $('tr.second').hide();
	    var parentID = $(this).attr('id').substring(4);
	    if($('tr.second_'+parentID).length > 0){
	        $('tr.second_'+parentID).show();
	    }else{
	        GetSubAreas(parentID,$(this));
	    }
	    $('td.name img').attr('src','images/folder_close.gif');//先将其他打开的关闭
	    $('td.name img',this).attr('src','images/folder_open.gif');
	    $('tr.topactive').removeClass('topactive');
	    $(this).addClass('topactive')
	},function(){
        var parentID = $(this).attr('id').substring(4);
        $('tr.second_'+parentID).hide();
        $('tr.third').hide();
	    $('td.name img',this).attr('src','images/folder_close.gif');
	});
	
	$('tr[@id^=top_]').hover(function(){$(this).addClass('tophover');},function(){$(this).removeClass('tophover')});
	$('a').click(function(event){event.stopPropagation();});
	$('a','tr.top td.modify').each(function(){ SetModifyEvent($(this));});   //添加点击修改事件
	$('a','tr.top td.delete').each(function(){SetDeleteEvent($(this));});   //添加点击删除事
	
	
	//保存按扭
	$('#btnSave').click(function(){
		$('#shippingIDs').val('');
		$('#isHdfks').val('');
		$('#costs').val('');
	    $('input[@id^=shippingType_]').each(function(){
			if($(this).attr('checked')==true)
			{
				var thisID = $(this).attr('id').split('_')[1];
				$('#shippingIDs').val($('#shippingIDs').val() + ($('#shippingIDs').val() == '' ? '' : ',') + $(this).val());
				$('#isHdfks').val($('#isHdfks').val() + ($('#isHdfks').val() == '' ? '' : ',') + ($('#isHdfk_' + thisID).attr('checked') == true ? '1' : '0'));
				$('#costs').val($('#costs').val() + ($('#costs').val() == '' ? '' : ',') +  ($('#cost_' + thisID).val() == '' ? '0' : $('#cost_' + thisID).val()));
			}
		});
		if($('#shippingIDs').val() == '')
		{
			alert('请选择配送方式');
			return false;
		}
		
		if(page == 'Manage'){
	        var areaname = escape($('#txtName').val());
	        var code = escape($('#txtCode').val());
	        var parentID = escape($('option[selected]','#ddlArea').val());
	        var description = escape($('#txtDescription').val());
	        if(areaname==''){alert('地区名称必须填写');return false;}
	        if(parentID == currentModifyID){alert('不能作为自己的子地区，请重新选择！');return false;}
	        var weburl = 'ShippingArea.aspx?Action=UpdateShippingArea&ShippingAreaID=' + currentModifyID + '&txtName='+areaname+'&txtCode='+code+'&ddlArea='+parentID+'&txtDescription='+description + '&ran=' + Math.random() + '&NoCopyRight=1';
			$.ajax({
				type:"post",
	            url:weburl + '&shippingIDs=' + $('#shippingIDs').val() + '&isHdfks=' + $('#isHdfks').val() + '&costs=' + $('#costs').val(),
	            async:false,
	            success:function(data){
                    
					if(!checkLoginStatus(data)){return false;}//是否要重新登陆
	                if(data == 1){
	                    var objCurrentTR = $('tr[@id$=_'+currentModifyID+']');//当前要修改的行
	                    $('td.name',objCurrentTR).html($('#txtName').val());
	                    $('td.code',objCurrentTR).html($('#txtCode').val());
	                    $('td.description',objCurrentTR).html($('#txtDescription').val());
	                    alert('保存成功')
	                    ShowManage();
	                }else{alert('保存失败');}/**/
	            },
	            error:function(){
	                alert('操作失败');
	            }
	        });
	        return false;
	    }//end if
	});//end click
	
	$('#btnCancel').click(function(){
	    if(page == 'Manage'){ShowManage();return false;}
	});
});

function GetShippingType(shippingAreaID){
     var uhtml = '';
	 $.ajax({
        url:'ShippingArea.aspx?Action=GetShippingType&ShippingAreaID=' + shippingAreaID + '&ran=' + Math.random()+'&NoCopyRight=1',
        success:function(data){
			if(data != '')
			{
				$('tr:gt(0)','#shipping').remove();
				var shippingType = data.split('|');
				for(var i = 0; i < shippingType.length; i++)
				{
					var sub = shippingType[i].split('^');
					var row = $('#shippingType').clone().show();
					row.find('#shippingID').html('<input type="checkbox" id="shippingType_' + sub[0] +'" name="shippingType_' + sub[0] + '" value="' + sub[0] + '" ' + (sub[1] == '1' ? 'checked' : '') + ' />' + sub[2]);
					row.find('#isHdfk').html('<input type="checkbox" id="isHdfk_' + sub[0] +'" name="isHdfk_' + sub[0] + '" value="' + sub[0] + '" ' + (sub[3] == '1' ? 'checked' : '') + ' />' + '是否货到付款');
					row.find('#cost').html('货到付款手续费&nbsp;<input type="text" size="3" id="cost_' + sub[0] +'" name="cost_' + sub[0] + '" value="' + (sub[4] == '0' ? '' : sub[4]) + '" style="text-align:center;" />');
					row.appendTo("#shipping");
				}
			}
        },
        error:function(){alert('error')}
    });
}

function GetSubAreas(parentID,obj){
     $.ajax({
        url:'ShippingArea.aspx?Action=GetSubAreas&ParentID='+parentID + '&Depth=2&ran=' + Math.random()+'&NoCopyRight=1',
        success:function(data){
            if(!checkLoginStatus(data)){return false;}//是否要重新登陆
            
            obj.after(data);
            //添加修改的链接
            $('tr.second_'+parentID+' td.modify').each(function(){
                $(this).html('<a href="ShippingArea.aspx?Action=Modify&ShippingAreaID=' + $(this).html() + '">修改</a>');
                SetModifyEvent($('a',this));    //添加点击修改事件
            });
            //添加删除的链接
            $('tr.second_'+parentID+' td.delete').each(function(){
                $(this).html('<a href="ShippingArea.aspx?Action=DeleteShippingArea&ShippingAreaID=' + $(this).html() + '">删除</a>');
                SetDeleteEvent($('a',this));    //添加点击删除事件
            });
            //在前面加一个"+"图片
            $('tr.second_'+parentID+' td.name').each(function(){
                $(this).html('├' + strClose + $(this).html().substring(1));
            });
            
            $('tr[@id^=second_]').toggle(function(){
//                $('tr.third').remove();
                $('tr.third').hide();
                //获取第三级地区
                var pID = $(this).attr('id').substring(7);
                if($('tr.third_'+pID).length!=0){
                   $('tr.third_'+pID).show(); 
                }else{
                    GetThirdAreas(pID,$(this));
                }
                $('td.name img',this).attr('src','images/folder_open.gif');
            },function(){
                var pID = $(this).attr('id').substring(7);
                $('tr.third_'+pID).hide();
                $('td.name img',this).attr('src','images/folder_close.gif');
            }).hover(function(){
                $(this).css('background',strSecondbghover);
            },function(){
                $(this).css('background',strSecondbghout);
            });
            
        },//end success
        error:function(){alert('error')}
    });//end ajax
}

function GetThirdAreas(parentID,obj){
     $.ajax({
        url:'ShippingArea.aspx?Action=GetSubAreas&ParentID='+parentID + '&Depth=3&ran=' + Math.random()+'&NoCopyRight=1',
        success:function(data){
            if(!checkLoginStatus(data)){return false;}//是否要重新登陆
            obj.after(data);
            //添加修改的链接
            $('tr.third_'+parentID+' td.modify').each(function(){
                $(this).html('<a href="ShippingArea.aspx?Action=Modify&ShippingAreaID=' + $(this).html() + '">修改</a>');
                SetModifyEvent($('a',this));    //添加点击修改事件
            });
            $('tr.third_'+parentID+' td.delete').each(function(){
                $(this).html('<a href="ShippingArea.aspx?Action=DeleteShippingArea&ShippingAreaID=' + $(this).html() + '">删除</a>');
                SetDeleteEvent($('a',this));    //添加点击删除事件
            });
            $('tr.third_'+parentID).hover(function(){
                $(this).css('background',strSecondbghover);
            },function(){
                $(this).css('background','');
            });
        },//end success
        error:function(){alert('error')}
    });//end ajax
}

//点击修改链接
function SetModifyEvent(obj){
    obj.click(function(){
	    if($('option','#ddlArea').length == 0){
	        $.ajax({
	            url:'ShippingArea.aspx?Action=GetAreasForUpdate&ran=' + Math.random() + '&NoCopyRight=1',
	            async:false,
	            success:function(data){
                    if(!checkLoginStatus(data)){return false;}//是否要重新登陆
                    
	                $('#ddlArea').html(data);
	            },
	            error:function(){alert('error');}
	        });
	    }
	    currentModifyID = obj.parent().siblings('.areaID').html();//这一行的第一列内容为ID
		//--获取配送方式
		GetShippingType(currentModifyID);
		var weburl = 'ShippingArea.aspx?Action=GetShippingAreaInfo&ShippingAreaID='+currentModifyID + '&ran='+Math.random()+'&NoCopyRight=1';
	    $.ajax({
	        url:weburl,
	        success:function(data){
                if(!checkLoginStatus(data)){return false;}//是否要重新登陆
	            
	            $('#txtName').val(data.split('^')[0]);
	            $('#txtCode').val(data.split('^')[1]);
	            $('#txtDescription').val(data.split('^')[2]);
	            $('#ddlArea').val(data.split('^')[3]);
	            $('div.manage').hide();
	            $('div.modify').show();
	            if($('#ddlArea option[@value='+currentModifyID+']').text().indexOf('　├') == -1 && $('#ddlArea option[@value='+currentModifyID+']').next().text().indexOf('　├') != -1){
	                $('#ddlArea').attr('disabled','disabled');$('#lblNotify').text(' * 此地区有子类地区，只能作为一级地区');
	            }else{
	                $('#ddlArea').attr('disabled','');$('#lblNotify').text('');
	            }
	        },
	        error:function(){alert('error');}
	    });
	    
		return false;
	});
}

//点击删除链接
function SetDeleteEvent(obj){
    var areaID = obj.parent().siblings('.areaID').html();
    obj.click(function(){
        if(confirm('确定要删除吗?')){
            var weburl = 'ShippingArea.aspx?Action=DeleteShippingArea&ShippingAreaID=' + areaID + '&ran='+Math.random()+'&NoCopyRight=1';
            $.ajax({
                url:weburl,
                success:function(data){
                    if(!checkLoginStatus(data)){return false;}//是否要重新登陆
    
                    if(data>0){
                        deleteChild(obj.parent().parent());//参数为要点击删除的这一行
                        alert('已删除');
                    }
                    else{
                        alert('删除失败');
                    }
                },
                error:function(){alert('error');}
            });//end ajax
        }//end if
        return false;
    });//end click
}

//递归删除行, objTR 要删除的第一行
function deleteChild(objTR){
    var areaID = $('td',objTR).eq(0).html();//从第一个<td>里获取ID
    objTR.remove();
    $('tr[@class$=_'+areaID+']').each(function(){
        deleteChild($(this));
    });
}

//根据Action传来的参数来显示不同的内容
function ShowManage(){$('div.manage').show();$('div.modify').hide()}
function ShowAdd(){$('div.modify').show();$('div.manage').hide()}

//获取URL中参数
function getQueryStringRegExp(name){    
	var reg = new RegExp("(^|\\?|&)"+ name +"=([^&]*)(\\s|&|$)", "i");
	if (reg.test(location.href))
		return unescape(RegExp.$2.replace(/\+/g, " "));
		return "";
}

function checkLoginStatus(data){
    var result = true;
    if(data.indexOf('<!DOCTYPE') != -1){
        result = false;
        alert('身份已过期,请重新登陆!');
    }
    return result;
}

