﻿/*	Panel Related Operations	*/

var arPollOptions = new Array();

var strOpened = "/images/icon_panel_opened.gif";
var strClosed = "/images/icon_panel_closed.gif";
function CustomizePanel(id,objClickedElement)
{
    SetInnerHtml("OverlayFront","<iframe src='/CustomizePanel.aspx?lngUniPanelID="+id+"' width='385px' height='270px' border='0' style='overflow:hidden;border:2px solid #037ba7'></iframe>");
    HideObjects(true);
    DynamicOverlayByObj(objClickedElement);
}
function fClosePanel( id )
{
	Hide("ShowHide_" + id);
	getID("Img_" + id).src = ( getID("ShowHide_" + id).style.display == "none" ? strClosed : strOpened ); 
}
function fCloseDynamicPanel(id)
{
	glbXmlRequest = new AkimanXmlHTTP(document.getElementById("loading"),document.getElementById("debug"));
	var	params = CustomParamBuilder("strOperation", "OpenClose");
	params += CustomParamBuilder("lngUniPanelID", id);
	var soapData = SoapDataBuilder("PanelOperations",params);
	AjaxRequest("/PanelOperationV2.asmx",soapData,"","loading");		
}
function fMoveDynamicPanel(id,lngPanelRelationID,intPanelRelationType,strPanelGroupName,intMovementType)
{
	glbXmlRequest = new AkimanXmlHTTP(document.getElementById("loading"),document.getElementById("debug"));
	var	params = CustomParamBuilder("strOperation", "MoveUpDown");
	params += CustomParamBuilder("lngUniPanelID", id);
	params += CustomParamBuilder("lngPanelRelationID", lngPanelRelationID);
	params += CustomParamBuilder("intPanelRelationType", intPanelRelationType);	
	params += CustomParamBuilder("intMovementType", intMovementType);
	params += CustomParamBuilder("strPanelGroupName", strPanelGroupName);	
	var soapData = SoapDataBuilder("PanelOperations",params);
	AjaxRequest("/PanelOperationV2.asmx",soapData,"","loading");		
}
function fMovePanel(SourceIndex,TargetIndex,PanelGroupName)
{
	var panel_src_id = PanelGroupName+"_"+SourceIndex;
	var panel_trgt_id = PanelGroupName+"_"+TargetIndex;
	Swap("Header_" + panel_src_id,"Header_" + panel_trgt_id);
	Swap("Content_" + panel_src_id,"Content_" + panel_trgt_id);
	Swap("DownImg_" + panel_src_id,"DownImg_" + panel_trgt_id);
	Swap("UpImg_" + panel_src_id,"UpImg_" + panel_trgt_id);
}
function fUpdateDragablePanelGroup(strNewPositionOrder)
{
	glbXmlRequest = new AkimanXmlHTTP(document.getElementById("loading"),document.getElementById("debug"));
	var	params = CustomParamBuilder("strOperation", "UpdateDragablePanelGroup");
	params += CustomParamBuilder("strNewPositionOrder", strNewPositionOrder);
	var soapData = SoapDataBuilder("PanelOperations",params);
	AjaxRequest("/PanelOperationV2.asmx",soapData,"","loading");		
}
function fUpdateCrossDragablePanelGroup(lngPanelGroupID,strNewPositionOrder)
{
	glbXmlRequest = new AkimanXmlHTTP(document.getElementById("loading"),document.getElementById("debug"));
	var	params = CustomParamBuilder("strOperation", "UpdateCrossDragablePanelGroup");
	params += CustomParamBuilder("strNewPositionOrder", strNewPositionOrder);
	params += CustomParamBuilder("lngPanelGroupID", lngPanelGroupID);
	var soapData = SoapDataBuilder("PanelOperations",params);
	AjaxRequest("/PanelOperationV2.asmx",soapData,"","loading");		
}

function ChangeTitle(ID)
{
    Hide("ViewPanelTitle_"+ID);
    Hide("EditPanelTitle_"+ID);    
}
function UpdateTitle(ID)
{
    glbXmlRequest = new AkimanXmlHTTP(document.getElementById("loading"),document.getElementById("debug"));
	var	params = CustomParamBuilder("strOperation", "UpdateTitle");
	var strTitle = GetAspFormField("PanelTitleInput_"+ID);
	params += CustomParamBuilder("lngUniPanelID", ID);
	params += CustomParamBuilder("strTitle", strTitle.value);	
	var soapData = SoapDataBuilder("PanelOperations",params);
	AjaxRequest("/PanelOperationV2.asmx",soapData,"","loading");
}
function DeletePanel(ID)
{
    if (confirm("Are you sure , you want to delete this panel?"))
	{
    glbXmlRequest = new AkimanXmlHTTP(document.getElementById("loading"),document.getElementById("debug"));
	var	params = CustomParamBuilder("strOperation", "DeletePanel");
	params += CustomParamBuilder("lngUniPanelID", ID);	
	var soapData = SoapDataBuilder("PanelOperations",params);
	AjaxRequest("/PanelOperationV2.asmx",soapData,"","loading");
	}
}

function AddGenericPanel(GenericPanelID,PanelGroupID,PageRelationID,PageRelationType,PageIdentifier)
{
    glbXmlRequest = new AkimanXmlHTTP(document.getElementById("loading"),document.getElementById("debug"));
	var	params = CustomParamBuilder("strOperation", "AddGenericPanel");
	params += CustomParamBuilder("lngGenericPanelID", GenericPanelID);	
	params += CustomParamBuilder("lngPanelGroupID", PanelGroupID);
	params += CustomParamBuilder("lngPageRelationID", PageRelationID);	
	params += CustomParamBuilder("intPageRelationType", PageRelationType);	
	params += CustomParamBuilder("strPageIdentifier", PageIdentifier);
	var soapData = SoapDataBuilder("PanelOperations",params);
	AjaxRequest("/PanelOperationV2.asmx",soapData,"","loading");
}

function AddPageGenericPanel(GenericPanelID,PanelGroupID,PageRelationID,PageRelationType,PageIdentifier)
{
    glbXmlRequest = new AkimanXmlHTTP(document.getElementById("loading"),document.getElementById("debug"));
	var	params = CustomParamBuilder("strOperation", "AddPageGenericPanel");
	params += CustomParamBuilder("lngGenericPanelID", GenericPanelID);	
	params += CustomParamBuilder("lngPanelGroupID", PanelGroupID);
	params += CustomParamBuilder("lngPageRelationID", PageRelationID);	
	params += CustomParamBuilder("intPageRelationType", PageRelationType);	
	params += CustomParamBuilder("strPageIdentifier", PageIdentifier);
	var soapData = SoapDataBuilder("PanelOperations",params);
	AjaxRequest("/PanelOperationV2.asmx",soapData,"","loading");
}

function AddBlogGenericPanel(GenericPanelID,PanelGroupID,PageRelationID,PageRelationType,PageIdentifier, BackLink)
{
    glbXmlRequest = new AkimanXmlHTTP(document.getElementById("loading"),document.getElementById("debug"));
	var	params = CustomParamBuilder("strOperation", "AddBlogGenericPanel");
	params += CustomParamBuilder("lngGenericPanelID", GenericPanelID);	
	params += CustomParamBuilder("lngPanelGroupID", PanelGroupID);
	params += CustomParamBuilder("lngPageRelationID", PageRelationID);	
	params += CustomParamBuilder("intPageRelationType", PageRelationType);	
	params += CustomParamBuilder("strPageIdentifier", PageIdentifier);
	var soapData = SoapDataBuilder("PanelOperations",params);
	AjaxRequest("/PanelOperationV2.asmx",soapData,"","loading");
	window.location = ("/ModuleBlog/Blog.aspx?strBackLink="+BackLink);
}

function AddSharedBlogGenericPanel(GenericPanelID,PanelGroupID,PageRelationID,PageRelationType,PageIdentifier, BackLink)
{
    glbXmlRequest = new AkimanXmlHTTP(document.getElementById("loading"),document.getElementById("debug"));
	var	params = CustomParamBuilder("strOperation", "AddSharedBlogGenericPanel");
	params += CustomParamBuilder("lngGenericPanelID", GenericPanelID);	
	params += CustomParamBuilder("lngPanelGroupID", PanelGroupID);
	params += CustomParamBuilder("lngPageRelationID", PageRelationID);	
	params += CustomParamBuilder("intPageRelationType", PageRelationType);	
	params += CustomParamBuilder("strPageIdentifier", PageIdentifier);
	var soapData = SoapDataBuilder("PanelOperations",params);
	AjaxRequest("/PanelOperationV2.asmx",soapData,"","loading");
	window.location = ("/ModuleBlog/Blog.aspx?strBackLink="+BackLink+"&intShared=1");
}

function AddBlogEntry(BackLink, Shared)
{
	window.location = ("/ModuleBlog/Blog.aspx?strBackLink="+BackLink+"&intShared="+Shared);
}

function AddGenericPicturePanel(GenericPanelID,PanelGroupID,PageRelationID,PageRelationType,PageIdentifier)
{
    var strURL = "/editpictureweblinklayer.aspx?lngGenericPanelID="+GenericPanelID+"&lngPanelGroupID="+PanelGroupID+"&lngPageRelationID="+PageRelationID+"&intPageRelationType="+PageRelationType+"&strPageIdentifier="+PageIdentifier;
    SetInnerHtml("OverlayFront","<iframe src='"+strURL+"' width='600px' height='250px' border='0' style='overflow:hidden;border:2px solid #037ba7'></iframe>");
    HideObjects(true);
    Overlay();
}

function AddPictureToWebLink(UniPanelID,ImageID,objClickedElement)
{
    var lngWeblinkID = GetAspFormField("lngWeblinkID"+UniPanelID).value;
    if (lngWeblinkID != "")
    {
        EditWeblink(lngWeblinkID,UniPanelID);
    }
    var strWeblinkText = GetAspFormField("strWeblinkText"+UniPanelID).value;
    var strWeblinkUrl = GetAspFormField("strWeblinkUrl"+UniPanelID).value;
    //window.alert("AddPictureToWebLink started! lngWeblinkID: "+lngWeblinkID);
    var strURL = "";    
    if (lngWeblinkID == "")
    {
	    lngWeblinkID = lngNewWeblinkID = GetAspFormField("lngWeblinkID"+UniPanelID).value;
    }
    else
    {
        strURL = "&strOperation=UpdateWeblinkPicture";
    }
    strURL = "/editimage_layer.aspx?intMainContentType=31&lngImageID="+ImageID+"&strReturnTo="+lngWeblinkID+"&lngUniPanelID="+UniPanelID+"&strCaption="+strWeblinkText;
    SetInnerHtml("OverlayFront","<iframe src='"+strURL+"' width='600px' height='325px' border='0' style='overflow:hidden;border:2px solid #037ba7'></iframe>");
    HideObjects(true);
    DynamicOverlayByObj(objClickedElement);
}

function VoteGenericPoll(ID)
{
	var objID = GetAspFormField("lngPollAnswerID"+ID);
	var blnChecked = false;
	for(var i=0;i<objID.length;i++)
	{
		if (objID[i] && objID[i].checked)
		{
			blnChecked = true;			
		}
	}	
	if (blnChecked)
	{
	  glbXmlRequest = new AkimanXmlHTTP(document.getElementById("loading"),document.getElementById("debug"));
      var	params = CustomParamBuilder("strOperation", "VotePoll");
	  params += CustomParamBuilder("lngUniPanelID", ID);	
	  params += parseForm("aspnetForm");
	  var soapData = SoapDataBuilder("GenericPollOperations",params);
	  AjaxRequest("/PanelOperationV2.asmx",soapData,"","loading");	
	 
	}
	else
	{
	 alert("Please select at least one answer.");
	}	
}

function EditWeblink(WeblinkID,UniPanelID)
{
    SetAspFormField('lngWeblinkID'+UniPanelID,WeblinkID);
	var objWeblinkUrl = getID('WeblinkUrl_'+WeblinkID);
    if(objWeblinkUrl)
    {
	    SetAspFormField('strWeblinkUrl'+UniPanelID,GetAspFormField('WeblinkUrl_'+WeblinkID).value);
	}
	var objWeblinkText = getID('WeblinkText_'+WeblinkID);
    if(objWeblinkText)
    {
	    SetAspFormField('strWeblinkText'+UniPanelID,GetAspFormField('WeblinkText_'+WeblinkID).value);
	}
	var objImageID = getID('WeblinkImage_'+WeblinkID);
    if(objImageID)
    {
	    SetAspFormField('lngImageID'+UniPanelID,GetAspFormField('WeblinkImage_'+WeblinkID).value);
	}
}

function SaveWeblink(WebLinkID,UniPanelID)
{
    var objWeblinkID = getID('lngWeblinkID'+UniPanelID);
    if(objWeblinkID)
    {
        getID('lngWeblinkID'+UniPanelID).value = WebLinkID;
    }
    EditWeblink(WebLinkID,UniPanelID);
	ResetError("WeblinkUrl_"+WebLinkID,"color","black");
	var blnValid= true ;
	var objWeblink= GetAspFormField("strWeblinkUrl"+UniPanelID);
	if (objWeblink)
	{
		var strWeblink = objWeblink.value.trim();		
//		if (!(strWeblink == ""))
//		{
			var reg_exp = new RegExp("http://");
			var m = reg_exp.exec(strWeblink);
			if (m == null) 
			{
			    if((strWeblink == "www.")||(strWeblink == ""))
			    {
			        objWeblink.value = "";
			    }else
			    {
			        objWeblink.value ="http://"+ strWeblink ;
			    }
			} 
			else 
			{
				if ( m.index > 0 )
				{
					blnValid = false ;
				}
				else
				{
				//	blnValid = isWeblink( objWeblink.value) ;
				}
			}
//		}
//		else
//		{
//			blnValid = false;
//		}		
	} 
	else
	{
		blnValid = false;
	}
	if (blnValid)	
	{
		LinkOperation("SaveLink",UniPanelID,WebLinkID);
	}
	else
	{
		DisplayError("WeblinkUrl_"+WebLinkID,"ErrorBox","","ErrorText","","Please enter a valid Url.","color","white");
	}
}

function AddWeblink(UniPanelID)
{
    var lngWeblinkID = GetAspFormField("lngNewWeblinkID"+UniPanelID).value;
	ResetError("strWeblinkUrl"+UniPanelID,"color","black");
	var blnValid= true ;
	var objWeblink= GetAspFormField("strWeblinkUrl"+UniPanelID);
	if (objWeblink)
	{
		var strWeblink = objWeblink.value.trim();
//		if (!(strWeblink == ""))
//		{
			var reg_exp = new RegExp("http://");
			var m = reg_exp.exec(strWeblink);
			if (m == null) 
			{
			    if((strWeblink == "www.")||(strWeblink == ""))
			    {
			        objWeblink.value ="";
			    }
			    else
			    {
			        objWeblink.value ="http://"+ strWeblink ;
			    }
			}
			else 
			{
				if ( m.index > 0 )
				{
					blnValid = false ;
				}
				else
				{
				//	blnValid = isWeblink( objWeblink.value) ;
				}
			}
//		}
//		else
//		{
//			blnValid = false;
//		}		
	} 
	else
	{
		blnValid = false;
	}
	if (blnValid)	
	{
		LinkOperation("AddLink",UniPanelID,lngWeblinkID);
	}
	else
	{
		DisplayError("strWeblinkUrl"+UniPanelID,"ErrorBox","","ErrorText","","Please enter a valid Url.","color","white");
	}
}

function ClearWeblinkInput(UniPanelID)
{
	SetAspFormField('lngWeblinkID'+UniPanelID,"");
	SetAspFormField('strWeblinkUrl'+UniPanelID,"");
	SetAspFormField('strWeblinkText'+UniPanelID,"Text");
	SetAspFormField('lngImageID'+UniPanelID,"");
}
function DeleteWeblink(UniPanelID,WeblinkID)
{
	if (confirm("Are you sure , you want to delete this entry?"))
	{
	    var objWeblinkID = getID('lngWeblinkID'+UniPanelID);
        if(objWeblinkID)
        {
            getID('lngWeblinkID'+UniPanelID).value = "";
        }
		LinkOperation("DeleteLink",UniPanelID,WeblinkID);
	}	
}

function LinkOperation(Operation,UniPanelID,WeblinkID)
{
      glbXmlRequest = new AkimanXmlHTTP(document.getElementById("loading"),document.getElementById("debug"));
      var	params = CustomParamBuilder("strOperation", Operation);
	  params += CustomParamBuilder("lngUniPanelID", UniPanelID);
	  params += CustomParamBuilder("lngWeblinkID", WeblinkID);
	  params += parseForm("aspnetForm");
	  var soapData = SoapDataBuilder("GenericLinkOperations",params);
	  AjaxRequest("/PanelOperationV2.asmx",soapData,"","loading");	
}

function ResizeInPicturePanel(lngUniPanelID, strPanelGroupName)
{
        var objContainer = getID("res_pic_container_"+lngUniPanelID);		
		if (objContainer)
		{
		    var cWidth;
		    switch(strPanelGroupName)
		    {
		    case "Center":
		        cWidth = 415;
		    break;
		    case "Left":
		        cWidth = 148;
		    break;
		    case "Right":
		        cWidth = 148;
		    break;
		    default:
		        cWidth = objContainer.offsetWidth;
		    break;
		    }
		    //window.alert("cWidth: "+cWidth);
		    var objImg = getID("res_pic_"+lngUniPanelID);
		    if (objImg)
		    {
		        var iWidth = objImg.offsetWidth;
		        var iHeight = objImg.offsetHeight;
    		    //window.alert("iWidth: "+iWidth+" iHeight: "+iHeight);
		        
		        if (iWidth  > cWidth)
		        {
		          iHeight = iHeight/ iWidth * cWidth;
		          iWidth = cWidth ;
		        }
		        //window.alert("after; iWidth: "+iWidth+" iHeight: "+iHeight);
		        objImg.style.width = iWidth+"px";
		        objImg.style.height = iHeight+"px";
		    }
		}
}

function SetPollOption(lngUniPanelID,intCount)
{
    arPollOptions[lngUniPanelID] = intCount;
}

function AddPollOption(lngUniPanelID)
{
    var intCount = arPollOptions[lngUniPanelID];
    intCount++;
    var strOptionText = 'Answer '+ intCount;
    var strOption = '<div class="Option"><input type="text" size="15" name="strOption__'+lngUniPanelID+'_'+intCount+'" value="'+strOptionText+'" /></div>';
    AppendInnerHtml("PollOptions_"+lngUniPanelID,strOption);    
    arPollOptions[lngUniPanelID] = intCount;
}

function SetPollView(lngUniPanelID)
{
  PollOperation(lngUniPanelID,"SetPollView");
}

function SetPollEdit(lngUniPanelID)
{
  PollOperation(lngUniPanelID,"SetPollEdit");
}

function PollOperation(lngUniPanelID,strOperation)
{
  glbXmlRequest = new AkimanXmlHTTP(document.getElementById("loading"),document.getElementById("debug"));
  var	params = CustomParamBuilder("strOperation", strOperation);
  params += CustomParamBuilder("lngUniPanelID", lngUniPanelID);
  params += CustomParamBuilder("intMaxOption",arPollOptions[lngUniPanelID]);
  params += parseForm("aspnetForm");
  var soapData = SoapDataBuilder("GenericPollOperations",params);
  AjaxRequest("/PanelOperationV2.asmx",soapData,"","loading");	
}
function SavePoll(lngUniPanelID)
{
    var blnValid = true;
    var strErrorMessage ="Please enter a question text and fill at least two answer fields.";
    var objQ = GetAspFormField("strQuestion"+lngUniPanelID) ;
    if (objQ)
	{
	    if (objQ.value.trim() == "")
	    {
	        blnValid= false;
	    }
	}
    
    var objPollID = GetAspFormField("lngPollID" + lngUniPanelID);
    var lngPollID = 0;
    if (objPollID) lngPollID = parseInt(objPollID.value);
    
    
    if (lngPollID < 1)
    {       
	    var objA1 = GetAspFormField("strOption__"+lngUniPanelID+"_1") ;
	    var objA2 = GetAspFormField("strOption__"+lngUniPanelID+"_2") ;
	    if (objA1 && objA2)
	    {
	         if (objA1.value.trim() == "" || objA2.value.trim() == "")
	         {
	            blnValid = false;
	         }
	    }
	}
	
	
    if (blnValid)
    {
        PollOperation(lngUniPanelID,"SavePoll");
    }
    else
    {
        alert(strErrorMessage);
    }
}

function CancelPollEdit(lngUniPanelID)
{
    Hide("Edit_Poll_"+lngUniPanelID);
    Hide("View_Poll_"+lngUniPanelID);
    Hide("EditButton_"+lngUniPanelID);
}

function UpdateFeaturePanelStatus(lngUniPanelID,blnStatus)
{
  glbXmlRequest = new AkimanXmlHTTP(document.getElementById("loading"),document.getElementById("debug"));
  var	params = CustomParamBuilder("strOperation", "UpdateFeaturePanelStatus");
  params += CustomParamBuilder("lngUniPanelID", lngUniPanelID);
  params += CustomParamBuilder("blnStatus",(blnStatus?1:0));
  params += parseForm("aspnetForm");
  var soapData = SoapDataBuilder("GenericFeaturePanelOperations",params);
  AjaxRequest("/PanelOperationV2.asmx",soapData,"","loading");	
}

function ImportStoryToGenericFeaturePanel(lngUniPanelID,lngStoryID)
{
  glbXmlRequest = new AkimanXmlHTTP(document.getElementById("loading"),document.getElementById("debug"));
  var	params = CustomParamBuilder("strOperation", "ImportStoryToGenericFeaturePanel");
  params += CustomParamBuilder("lngUniPanelID", lngUniPanelID);
  params += CustomParamBuilder("lngStoryID",lngStoryID);
  var soapData = SoapDataBuilder("GenericFeaturePanelOperations",params);
  AjaxRequest("/PanelOperationV2.asmx",soapData,"","loading");	
}

function UnFeatureFromGenericFeaturePanel(lngUniPanelID,lngStoryID)
{
  glbXmlRequest = new AkimanXmlHTTP(document.getElementById("loading"),document.getElementById("debug"));
  var	params = CustomParamBuilder("strOperation", "UnFeatureFromGenericFeaturePanel");
  params += CustomParamBuilder("lngUniPanelID", lngUniPanelID);
  params += CustomParamBuilder("lngStoryID",lngStoryID);
  var soapData = SoapDataBuilder("GenericFeaturePanelOperations",params);
  AjaxRequest("/PanelOperationV2.asmx",soapData,"","loading");
}

function SaveGenericTextEditor(lngUniPanelID,strEditorID)
{
  glbXmlRequest = new AkimanXmlHTTP(document.getElementById("loading"),document.getElementById("debug"));
  var	params = CustomParamBuilder("strOperation", "SaveGenericTextEditor");
  params += CustomParamBuilder("lngUniPanelID", lngUniPanelID);
  params += CustomParamBuilder("txtText", getID(strEditorID).value);
  var soapData = SoapDataBuilder("GenericTextEditorOperations",params);
  AjaxRequest("/PanelOperationV2.asmx",soapData,"","loading");
}

function AddGenericDocument(UniPanelID,lngDocumentID,objClickedElement)
{
    var strURL = "/editdocument_layer.aspx?intMainContentType=51&lngUniPanelID="+UniPanelID+"&lngDocumentID="+lngDocumentID;
    SetInnerHtml("OverlayFront","<iframe src='"+strURL+"' width='525px' height='325px' border='0' style='overflow:hidden;border:2px solid #037ba7'></iframe>");
    HideObjects(true);
    DynamicOverlayByObj(objClickedElement);
}

function AddGenericVideo(UniPanelID,lngVideoID,objClickedElement)
{
    var strURL = "/editvideo_layer.aspx?intMainContentType=52&lngUniPanelID="+UniPanelID+"&lngVideoID="+lngVideoID;
    SetInnerHtml("OverlayFront","<iframe src='"+strURL+"' width='525px' height='325px' border='0' style='overflow:hidden;border:2px solid #037ba7'></iframe>");
    HideObjects(true);
    DynamicOverlayByObj(objClickedElement);
}

function EditGenericTextEditor(lngUniPanelID)
{
  Hide("TextEditorBackOffice_Preview"+lngUniPanelID);
  Hide("TextEditorBackOffice_Edit"+lngUniPanelID);
}


