﻿$(document).ready(function(){
    $.ajax({                              //使用ajax方式读取userinfo.htm的内容，userinfo.htm是读取users表中的usertitle，css，page
        url:API_URL+"getsiteinfo",
		data:"siteab="+siteab,          //传递用户名，这里是模拟，所以注释掉，以后出现这种情况，直接不写
        cache:false,
        success:function(rt){
            var info=rt.split("|");
            $("#usertitle").html(info[0]);
			AddCss(info[1]);
			AddTabs(info[2]);
			editUsertitle();
        }
    });
	//alert("this is site");
	addnewpage();
    setTimeout(function(){    //加setTimeout函数是为了看效果
        showMainpage();
		
		
		$('#stheme').change(function(){
			//alert("this is pricejs");
			var stheme=$("#stheme").val();
			AddCss(stheme);
			//alert("stheme is"+stheme);
			//setSearchDiv(selectType);
		});
    }, 1000);
})
function AddCss(css)                                 //获取CSS
{
    var hrefcss=BASE_URL+"themes/"+css+"/default.css";
	//alert("hrefcss is "+hrefcss);
    $("#linkcss").attr("href",hrefcss);
	 $.ajax({
        url:API_URL+"setcss",
        data:"css="+css+"&siteab="+siteab,
        cache:false
    });
}
function showMainpage()       //隐藏welcomepage并显示mainpage
{
    //$("#welcomepage").hide();
	$("#welcomepage").hide();
    $("#mainpage").show();
	$(".default_AddWidget").click(ShowAddWidgetPanel);
}
function editUsertitle()
{
	
	
	$.ajax({
		   	type:"POST",
            url:API_URL+"getTitleLocation",
			data:"siteab="+siteab.toString(),
            cache:false,
            success:function(rt){
				//alert("edit rt is "+rt);
				var myvar=rt.split("@");
				$("#usertitle").css("left",myvar[0] + "px");
				$("#usertitle").css("top",myvar[1]+ "px");
				
				$("#usertitle2").css("left",myvar[0] + "px");
				$("#usertitle2").css("top",myvar[1]+ "px");
				
            }
        });
	

}


function AddTabs(page){                      //获取Tabs  
    $.ajax({
        url:API_URL+"gettabs", 
		data:"siteab="+siteab,
        success:function(rt){
            $(".default_AddNewPages").before(rt);
			$(".GetTabs_Ll_Title").bind("click",ChangeTab);
            if($(".GetTabs_Ll_Title").size()>0)
                ChangeTabFirst($(".GetTabs_Ll_Title").eq(0));
            else
                $("#default_columns").html("没有可公开的内容！");
        }
    });
}
function ChangeTab(){                         //获取其他Tab信息 
    var tab_li=$(this).parent(".GetTabs_Ll");
    TabChecked(tab_li);
    $("#default_columns").html("Loading……");
	LoadingTabInfo(tab_li);
}
function ChangeTabFirst(tab_span){              //页面载入时获取第一个Tab信息
    var tab_li=tab_span.parent(".GetTabs_Ll");
    TabChecked(tab_li);
    $("#default_columns").html("Loading……");
    LoadingTabInfo(tab_li);
}
function LoadingTabInfo(tab_li){                         //Loading  Tab信息 
    var mod=tab_li.attr("mod");
    AddLayout(mod.substr(0,1));
    AddModules(mod.substr(1));
	setTimeout(function(){
       
		$("#somethingshow").html(mod);          //没意义，纯为了显示页面布局内容，左上角
		$("#somethingshow").hide();
    }, 500);
}
function TabChecked(tabcheck){                //选中Tab，改变CSS
    $(".GetTabs_Ll").removeClass("default_Tabs_Checked");
	$(".GetTabs_Ll_pipe").hide();
	$(".GetTabs_Ll_Down").hide();
	$(".GetTabs_Ll_Down_Area").hide();
    tabcheck.addClass("default_Tabs_Checked");
	//tabcheck.find(".GetTabs_Ll_pipe").show();
	//tabcheck.find(".GetTabs_Ll_Down").show();

}
function addnewpage()
{
    $(".default_AddNewPages").click(function(){
        var page=$(this);
        $.ajax({
            url:API_URL+"addpage",
            cache:false,
			data:"siteab="+siteab,
            success:function(rt){
                addnewpageready(page,rt);
            }
        });
    });
}



function tablidowntitleclick()
{
    $(".GetTabs_Ll_Down_Title").click(function(){
    var title=$(this).html();
    $(this).replaceWith("<input id='GetTabs_Ll_Down_Title_Input' type='text'  value='"+title+"' />");
    $("#GetTabs_Ll_Down_Title_Input").focus();
    $("#GetTabs_Ll_Down_Title_Input").keyup(function(event){
      
    });
    $("#GetTabs_Ll_Down_Title_Input").blur(function(){
		var title2=$(this).val();
        var input=$(this);
        var gettabli=$(this).parents(".GetTabs_Ll");

        $.ajax({
			  //在数据库中改变页面tab的标题
            type:"POST",
            url:API_URL+"changetabtitle",
            cache:false,
            data:"newtitle="+title2+"&pageid="+gettabli.attr("tid"),
            success:function(rt){
				
                 if(rt=="1")
                {
					//alert("rt ==1");
                    gettabli.find(".GetTabs_Ll_Title").html(title2);
                    input.replaceWith("<span class='GetTabs_Ll_Down_Title'>"+title2+"</span>");
                    gettabli.find(".GetTabs_Ll_Down_Area").hide();
					tablidowntitleclick();
                }
                else
                {
					//alert("rt <>1");
					gettabli.find(".GetTabs_Ll_Title").html(title2);
                    input.replaceWith("<span class='GetTabs_Ll_Down_Title'>"+title2+"</span>");
                    gettabli.find(".GetTabs_Ll_Down_Area").hide();
					tablidowntitleclick();
                }
				
            }
        });
		
    });
    });
}


function deletetab(tab)
{
    var tab=tab.parents(".GetTabs_Ll");
    var newtabid="";
    $(".GetTabs_Ll").not(tab).each(function(i){               //形成users表页面信息，|分割
        if(i==0)
            newtabid=newtabid+$(this).attr("tid");
        else
            newtabid=newtabid+"|"+$(this).attr("tid");
    });
	tab.remove();
	var li=$(".GetTabs_Ll_Title").eq(0);
	if(li.html()==null)
	{
		$("#default_columns").html("没有任何可以显示的内容！");
	}else{
         ChangeTabFirst(li);
	}
	
}
function deletetabwidget(tab)
{
    var mod=tab.parents(".GetTabs_Ll").attr("mod");      
    if(mod.length!=1)                             //widget不为空时删除数据库中对应的widget
    {
        var td=mod.substr(1).split("|");
        for(i=0;i<td.length;i++)
        {
            var widgetid=td[i].split(",")
            for(k=0;k<widgetid.length;k++)
            {
                DeleteWidgetNoRemove(widgetid[k]);
            }
        }
    }
}

function DeleteWidgetNoRemove(widgetid)          //NoRemove相对在页面中删除widget而言，不用删除页面内的，直接删数据库中的就可以
{
    $.ajax({
        url:API_URL+"deletewidget",
        data:"widgetid="+widgetid,
        cache:false
    });
}
function AddLayout(num){                       //载入布局
    switch(parseInt(num))
    {
        case 1:$("#default_columns").html('<ul id="column1" style="width:30%;"></ul><ul id="column2" style="width:70%;"></ul>');break;
        case 2:$("#default_columns").html('<ul id="column1" style="width:33%;"></ul><ul id="column2" style="width:34%;"></ul><ul id="column3" style="width:33%;"></ul>');break;
      
        default:$("#default_columns").html('<ul id="column1" style="width:33%;"></ul><ul id="column2" style="width:34%;"></ul><ul id="column3" style="width:33%;"></ul>');break;
    };
}
function AddModules(module){                   //根据验证登陆结果获取modules
    var content=module.split("|");
    for(i=0;i<content.length;i++)
    {
        var widgetid=content[i].split(",");
        for(j=0;j<widgetid.length;j++)
        { 
            if(widgetid[j]!="")
                GetModules(widgetid[j],i);
        }
    }
}
function GetModules(moduleid,tdid){                         //载入modules
	//alert("222 moduleid is "+moduleid);
	//alert("tdid is "+tdid);
	
	
    $.ajax({
		type: "POST",
        url:API_URL+"getwidget",                           //根据id读取widget类型等信息             
        cache:false,
        data:"widgetid="+parseInt(moduleid),
        //cache:false,
        success:function(rt){
			//alert("GetModules rt is "+rt);
            var widget=rt.split(",");
            var contenttd;
            switch(parseInt(tdid))
            {
                case 0:contenttd="#column1";break;
                case 1:contenttd="#column2";break;
                case 2:contenttd="#column3";break;
                case 3:contenttd="#column4";break;
            }
			/*放弃折叠，是否公开等，只保留最大/小化，编辑，删除*/
			var widget_menu_text='';
			$(contenttd).append('<li class="Widget_Main"  id="wmain'+moduleid+'" ><div class="Widget_Head" wid="'+moduleid+'" wif="'+widget[3]+','+widget[4]+'" exp="'+widget[2]+'"><h3 class="Widget_Title">'+widget[0]+'</h3></div><div class="Widget_Content">Loading……</div></li>');
			
			LoadingContent(moduleid);
			
			
        }
    });
}

function LoadingContent(widgetid)
{
	
	var mywidget=$("#wmain"+widgetid);
 
	//mywidget.prev(".Widget_Head").find(".Widget_Max").css({backgroundPosition: '-55px 0'});
    
    $.ajax({
        //url:url,
		type: "POST",
		url:API_URL+"getwidget_content",       //为了在非服务器的情况下也可以正常显示，不管类型，直接是new
        cache:false,
        data:"widgetid="+parseInt(widgetid),
        success:function(rt){
			
            mywidget.find(".Widget_Content").html(rt);
			
        }
    });
	
}



function updatepagemodule()
{
   
	var newmodule="";
	switch($(".default_Tabs_Checked").attr("mod").substr(0,1))
	{
		case '1':
			$("#column1").find(".Widget_Head").each(function(i){
					  if(i==0)
						  newmodule=newmodule+$(this).attr("wid");
					  else
						  newmodule=newmodule+","+$(this).attr("wid");
			});
			newmodule=newmodule+"|";
			$("#column2").find(".Widget_Head").each(function(i){
					  if(i==0)
						  newmodule=newmodule+$(this).attr("wid");
					  else
						  newmodule=newmodule+","+$(this).attr("wid");
			});
			;break;
		case '2':
			$("#column1").find(".Widget_Head").each(function(i){
					  if(i==0)
						  newmodule=newmodule+$(this).attr("wid");
					  else
						  newmodule=newmodule+","+$(this).attr("wid");
			});
			newmodule=newmodule+"|";
			$("#column2").find(".Widget_Head").each(function(i){
					  if(i==0)
						  newmodule=newmodule+$(this).attr("wid");
					  else
						  newmodule=newmodule+","+$(this).attr("wid");
			});
			newmodule=newmodule+"|";
			$("#column3").find(".Widget_Head").each(function(i){
					  if(i==0)
						  newmodule=newmodule+$(this).attr("wid");
					  else
						  newmodule=newmodule+","+$(this).attr("wid");
			});
			;break;
	}

    var modvalue;
	
	modvalue=$(".default_Tabs_Checked").attr("mod").substr(0,1)+newmodule;
	//alert("modvalue is "+modvalue);
	
	$("#somethingshow").html(modvalue);          //没意义，纯为了显示页面布局内容，左上角
	$("#somethingshow").hide();
	$.ajax({
        type:"POST",
        url:API_URL+"changemodule",
        data:"modvalue="+modvalue+"&pageid="+$(".default_Tabs_Checked").attr("tid"),
        cache:false,
        success:function(rt){
			//alert("update module sql is "+rt);
            
            $(".default_Tabs_Checked").attr("mod",modvalue);
        }
    });
}

function widgeteditvalue(editpanel,widgettitle,widgetinfo,elementid)
{
    var widgetinfo=widgetinfo.split("|");
    
	if(elementid==null)
	{
		var elementid="";
	}else{
		var elementid=elementid.split(",");
	}
	
	
    $(editpanel).find(".widget_title").val(widgettitle);
    for(i=0;i<elementid.length;i++)
    {
        var elementtype=elementid[i].substr(0,1);
        var elementclass="."+elementid[i].substr(1);
        switch(elementtype)
        {
            case "t":
                $(editpanel).find(elementclass).attr("value",widgetinfo[i]);
                break;
            case "c":
                if(widgetinfo[i]=="false")
                    $(editpanel).find(elementclass).attr("checked","");
                else
                    $(editpanel).find(elementclass).attr("checked","checked");
                break;
        }
    }
}

function refreshwidget(operatewidget)
{

	var targetContent = operatewidget.nextAll(".Widget_Content");
		 
	LoadingContent(targetContent);
	
}

function ShowAddWidgetPanel()
{
    if($(".default_AddWidget").html()=="页面配置")
    {
        $(".default_AddWidget").html("关闭页面配置");
        $("#default_AddWidgetPanel").show();
        GetAddWidgetPanel_Left();
    }
    else
    {
        $(".default_AddWidget").html("页面配置");
        $("#default_AddWidgetPanel").hide();
    }
}
function GetAddWidgetPanel_Left()
{
	 $.ajax({
            //type:"post",
            url:API_URL+"left",
            data:"siteab="+siteab,
            cache:false,
            success:function(rt){
				
				$("#AddWidgetPanel_Left").html(rt);
				ClickLeftArea();
				
            }
        });
  
}

function ClickLeftArea()
{
    $(".AddWidgetPanel_Left_li").click(function(){
        $(".AddWidgetPanel_Left_li").removeClass("AddWidgetPanel_checked");
        $(this).addClass("AddWidgetPanel_checked");
        var areaid=$(this).attr("wid");
		//alert("areaid is "+areaid);
        switch(areaid)
        {
            case "layout":LayoutSetting();break;
            default:GetWidgetHtml_Right(areaid);break;
        }
    });
}
function LayoutSetting()
{
    var url=API_URL+"layout";
    $("#AddWidgetPanel_Middle").hide();
    $.get(url,function(rt){
        $("#AddWidgetPanel_Right").html(rt);
        var colunm=$(".default_Tabs_Checked").attr("mod").substr(0,1);
		//alert("colunm is "+colunm);
        $(".ThinkBox_Right_Columarea_Input").eq(colunm-1).attr("checked","checked");
        $(".ThinkBox_Right_Columarea_Img").eq(colunm-1).addClass("ThinkBox_Right_Columarea_Img_Checked");
        $(".ThinkBox_Right_Columarea_Input").click(Layoutcolumclick);
    })
}
function Layoutcolumclick()
{
    $(".ThinkBox_Right_Columarea_Img").removeClass("ThinkBox_Right_Columarea_Img_Checked");
    var colum=$(this).parents(".ThinkBox_Right_Columarea");
    colum.find(".ThinkBox_Right_Columarea_Img").addClass("ThinkBox_Right_Columarea_Img_Checked");
    var columval=colum.find(".ThinkBox_Right_Columarea_Input").val();
    Layoutchangecolum(columval);
}
function Layoutchangecolum(newcolum)
{
    var oldcolunm=$(".default_Tabs_Checked").attr("mod").substr(0,1);
    var num=oldcolunm+newcolum;
    if(parseInt(oldcolunm)<parseInt(newcolum))
    {
        switch(num)
        {
            case "23":Layoutchangetdwidth(newcolum);break;
            case "14":Layoutadd2td();Layoutchangetdwidth(newcolum);break;
            default:Layoutaddtd(oldcolunm);Layoutchangetdwidth(newcolum);break;
        }
    }
    if(parseInt(oldcolunm)>parseInt(newcolum))
    {
        switch(num)
        {
            case "32":Layoutchangetdwidth(newcolum);break;
            case "41":Layoutdel2td();Layoutchangetdwidth(newcolum);break;
            default:Layoutdeltd(oldcolunm);Layoutchangetdwidth(newcolum);break;
        }
    }
    setTimeout(function(){         //更新布局和module
        $(".AddWidgetPanel_Right_Title_Close").click(ShowAddWidgetPanel);
        updatalayout(newcolum,oldcolunm);
    }, 0);
}
function Layoutchangetdwidth(colunm)
{
    switch(colunm)
    {
        case "1":
                $("#column1").css("width","30%");
                $("#column2").css("width","66%");
                break;
        case "2":
                $("#column1").css("width","33%");
                $("#column2").css("width","33%");
                $("#column3").css("width","31%");
                break;
    }
}
function Layoutaddtd(colunm)
{
    var tr=$("#default_columns");
    switch(colunm)
    {
        case "1":tr.append('<ul id="column3" style="width:33%;"></ul>');break;
        default:tr.append('<ul id="column4" style="width:25%;"></ul>');break;
    }
}
function Layoutadd2td()
{
    var tr=$("#default_columns");
    tr.append('<ul id="column3" style="width:25%;"></ul><ul id="column4" style="width:25%;"></ul>')
}
function Layoutdeltd(colunm)
{
    switch(colunm)
    {
        case "4":$("#column1").append($("#column4").html());$("#column4").remove();break;
        default:$("#column1").append($("#column3").html());$("#column3").remove();break;
    }
}
function Layoutdel2td()
{
    $("#column1").append($("#column4").html());$("#column4").remove();
    $("#column1").append($("#column3").html());$("#column3").remove();
}
function updatalayout(colunm,oldcolunm)
{
    var mod=$(".default_Tabs_Checked").attr("mod");
    var module=mod.substr(1);
    var td=module.split("|");
    var d=oldcolunm+colunm;
    var newmodule="";
    if(d=="23"||d=="32")
    {
        newmodule=module;
    }
    else if (oldcolunm<colunm)
    {
        switch(d)
        {
            case "14":newmodule=module+"||";break;
            default:newmodule=module+"|";break;
        }
    }
    else
    {
        switch(d)
        {
            case "41":
                   if(td[2]==""&&td[3]=="")
                       newmodule=td[0]+"|"+td[1];
                   else if(td[2]=="")
                       newmodule=td[0]+","+td[3]+"|"+td[1];
                   else if(td[3]=="")
                       newmodule=td[0]+","+td[2]+"|"+td[1];
                   else
                       newmodule=td[0]+","+td[2]+","+td[3]+"|"+td[1];
                   break;
            case "31":
                   if(td[2]=="")
                       newmodule=td[0]+"|"+td[1];
                   else
                       newmodule=td[0]+","+td[2]+"|"+td[1];
                   break;
            case "21":
                   if(td[2]=="")
                       newmodule=td[0]+"|"+td[1];
                   else
                       newmodule=td[0]+","+td[2]+"|"+td[1];
                   break;
            default:
                   if(td[3]=="")
                       newmodule=td[0]+"|"+td[1]+"|"+td[2];
                   else
                       newmodule=td[0]+","+td[3]+"|"+td[1]+"|"+td[2];
                   break;
        }
    }
    $(".default_Tabs_Checked").attr("mod",colunm+newmodule);
    setTimeout(function(){
        Ajaxupdatalayout($(".default_Tabs_Checked").attr("tid"),colunm,newmodule);
    }, 0);
}

function GetWidgetHtml_Right(areaid)
{
    //var url=BASE_URL+"asp/"+areaid+".htm";
	var url=API_URL+"getarea/areaid/"+areaid;
    $("#AddWidgetPanel_Middle").hide();
    $.get(url,function(rt){
        $("#AddWidgetPanel_Right").html(rt);
        
        $(".AddWidgetPanel_Right_Title_Close").click(ShowAddWidgetPanel);
    })
}




//更新数据库中每个页面对于那些wedget的信息
function updatepageaddmodule()
{
	
   
	var newmodule="";
	switch($(".default_Tabs_Checked").attr("mod").substr(0,1))
	{
		case '1':
			$("#column1").find(".Widget_Head").each(function(i){
					  if(i==0)
						  newmodule=newmodule+$(this).attr("wid");
					  else
						  newmodule=newmodule+","+$(this).attr("wid");
			});
			newmodule=newmodule+"|";
			$("#column2").find(".Widget_Head").each(function(i){
					  if(i==0)
						  newmodule=newmodule+$(this).attr("wid");
					  else
						  newmodule=newmodule+","+$(this).attr("wid");
			});
			;break;
		case '2':
			$("#column1").find(".Widget_Head").each(function(i){
					  if(i==0)
						  newmodule=newmodule+$(this).attr("wid");
					  else
						  newmodule=newmodule+","+$(this).attr("wid");
			});
			newmodule=newmodule+"|";
			$("#column2").find(".Widget_Head").each(function(i){
					  if(i==0)
						  newmodule=newmodule+$(this).attr("wid");
					  else
						  newmodule=newmodule+","+$(this).attr("wid");
			});
			newmodule=newmodule+"|";
			$("#column3").find(".Widget_Head").each(function(i){
					  if(i==0)
						  newmodule=newmodule+$(this).attr("wid");
					  else
						  newmodule=newmodule+","+$(this).attr("wid");
			});
			;break;
	}

    var oldmodule=$(".default_Tabs_Checked");

	//var oldtdwidgetid
	
    modvalue=oldmodule.attr("mod").substr(0,1)+newmodule;
	oldmodule.attr("mod",modvalue);
    $.ajax({
        type:"post",
        url:API_URL+"changemodule",
        data:"modvalue="+modvalue+"&pageid="+oldmodule.attr("tid"),
        cache:false,
        success:function(rt){
				
          
                oldmodule.attr("mod",modvalue);
				$("#somethingshow").html(modvalue); 
				$("#somethingshow").hide();
              
                //changeInfoWidget();
        }
    });
}
