var IDS_WIDTH_OFFSET = 30;
var IDS_HEIGHT_OFFSET = 30;

function resourceView(url)
{
	window.open(url);
}
// create resource gallery or edit
function resourceGalleryEdit(id, parentID, funcCallBack)
{
	var url = __CMS_WEBAPP_PATH + "CMS/WAE/ResourceManager/ResourceGalleryEdit.aspx?NRMODE=Update";
	if(parentID!=null) url += "&wbc_gallery={"+parentID+"}";
	if(id!=null) url += "&ID={"+id+"}";
	openDialog(url, "MCMS", "570px", "400px", funcCallBack, false, this);
}
function resourceCreate(galleryID, funcCallBack)
{
	openDialog(IDS_FRAMEWORK_NEW_VIRTUAL_PATH+"/Dialogs/ResourceBrowser/Management/ResourceCreate.aspx?NRMODE=Update&wbc_gallery={"+galleryID+"}", 
		"MCMS", "680px", "520px", funcCallBack, false, this);
}
function resourcePropertiesEdit(id, funcCallBack)
{
	openDialog(IDS_FRAMEWORK_NEW_VIRTUAL_PATH+"/Dialogs/ResourceBrowser/Management/ResourcePropertiesEdit.aspx?NRMODE=Update&wbc_resource="+id, 
		"MCMS", "680px", "450px", funcCallBack, false, this);
}
function resourceReplace(id, funcCallBack)
{
	openDialog(IDS_FRAMEWORK_NEW_VIRTUAL_PATH+"/Dialogs/ResourceBrowser/Management/ResourceReplace.aspx?NRMODE=Update&wbc_resource="+id, 
		"MCMS", "680px", "500px", funcCallBack, false, this);
}
function deleteHierarhyItems(aIDs, aNames, funcCallBack)
{
	var s = 'Delete item(s):';
	for(var i=0; i<aNames.length; i++)
	{
		if(i>0) 
			s += ",";
		s += ' "' + aNames[i] + '"';
	}
	s += "?";
	
	if(!confirm(s))
		return;
	
	_svc.onresult = function(){onWSresult(funcCallBack)};
	_svc.useService(window.location.protocol + '//' + window.location.host + __CMS_WEBAPP_PATH+'CMS/WAE/Commands/ProcessObject.asmx?WSDL', "ProcessObject");
	_svc.ProcessObject.callService("Delete", aIDs);
}
function deleteTreeItems(focusedTreeNode)
{
	var aIDs = new Array();
	var aNames = new Array();
	var aRefreshIDs = new Array();
	if(focusedTreeNode.selected)
	{/*delete all selected nodes*/
		var selNodes = focusedTreeNode.tree.selectedNodes;
		for(var i=0; i<selNodes.length;i++)
		{
			aIDs[aIDs.length] = selNodes[i].nodeID;
			aNames[aNames.length] = selNodes[i].text;
			aRefreshIDs[aRefreshIDs.length] = selNodes[i].parent.nodeID;
		}
	}
	else
	{/*delete single node*/
		aIDs[0] = focusedTreeNode.nodeID;
		aNames[0] = focusedTreeNode.text;
		aRefreshIDs[0] = focusedTreeNode.parent.nodeID;
	}
	deleteHierarhyItems(aIDs, aNames, function(){focusedTreeNode.tree.refreshNodes(aRefreshIDs);});
}

// serviceName = 'Approve', 'Decline', 'Submit', 'KillLock'
function callService(serviceName, focusedTreeNode)
{
	var aIDs = new Array();
	var aRefreshIDs = new Array();
	if(focusedTreeNode.selected)
	{/*call service for all selected nodes*/
		var selNodes = focusedTreeNode.tree.selectedNodes;
		for(var i=0; i<selNodes.length;i++)
		{
			aIDs[aIDs.length] = selNodes[i].nodeID;
			aRefreshIDs[aRefreshIDs.length] = selNodes[i].parent.nodeID;
		}
	}
	else
	{/*call service for single node*/
		aIDs[0] = focusedTreeNode.nodeID;
		aRefreshIDs[0] = focusedTreeNode.parent.nodeID;
	}
	
	var funcCallBack = function(){focusedTreeNode.tree.refreshNodes(aRefreshIDs);};
	_svc.onresult = function(){onWSresult(funcCallBack)};
	_svc.useService(window.location.protocol + '//' + window.location.host + __CMS_WEBAPP_PATH+'CMS/WAE/Commands/ProcessObject.asmx?WSDL', "ProcessObject");
	_svc.ProcessObject.callService(serviceName, aIDs);
}

function postingPreview(id)
{
//	_mode = "Preview";
	navigateWindow("/NR/exeres/"+id+"?NRMODE=Unpublished&WBCMODE=PresentationUnpublishedPreview&nr_emit=View");
}
function postingEdit(id)
{
//	_mode = "Edit";
	navigateWindow("/NR/exeres/"+id+"?NRMODE=Unpublished&WBCMODE=AuthoringReedit");
}
function postingUnpublished(id)
{
//	_mode = "Unpublished";
	navigateWindow("/NR/exeres/"+id+"?NRMODE=Unpublished&WBCMODE=PresentationUnpublished&wbc_purpose=Basic");
}
function postingPublished(id)
{
//	_mode = "Published";
	navigateWindow("/NR/exeres/"+id+"?NRMODE=Published");
}

function goToConnectedPage(id)
{
	openDialog(IDS_FRAMEWORK_NEW_VIRTUAL_PATH+"/Dialogs/QuickJump/ConnectedPagesQuickJump/ConnectedPagesQuickJumpDlg.aspx?NRMODE=Unpublished&NRNODEGUID={"+id+"}", 
		"MCMS", null, null, navigateWindow, false);
}
function createPage(id)
{
	var height = screen.height-screen.height*0.15;
	var width = height*1.5;
		
	openDialog(IDS_FRAMEWORK_NEW_VIRTUAL_PATH+"/Dialogs/PageCreationWizard/TemplateGalleriesBrowse/TemplateGalleriesBrowse.aspx?NRMODE=UNPUBLISHED&DestinationChannel={"+id+"}",
		"MCMS", width+"px", height+"px", navigateWindow, false);
}

function postingPropertiesEdit(id, funcCallBack)
{
	openDialog(IDS_FRAMEWORK_NEW_VIRTUAL_PATH+"/Dialogs/PropertiesDialogs/PostingProperties.aspx?NRMODE=Update&NRNODEGUID={"+id+"}", 
		"MCMS", "800px", "650px", funcCallBack, false);
}

function createChannel(id, funcCallBack)
{
	openDialog(__CMS_WEBAPP_PATH+"CMS/WAE/ChannelCreationWizard/NewChannelDlg.aspx?wbc_purpose=Basic&NRMODE=Update&WBCMODE=PresentationUnpublished&NRNODEGUID={"+id+"}&DestinationChannel={"+id+"}", 
		"MCMS", "580px", "480px", funcCallBack, false);
}
function channelPropertiesEdit(id, funcCallBack)
{
	openDialog(IDS_FRAMEWORK_NEW_VIRTUAL_PATH+"/Dialogs/PropertiesDialogs/ChannelProperties.aspx?NRMODE=Update&NRNODEGUID={"+id+"}", 
		"MCMS", "800px", "660px", funcCallBack, false);
}
function productionManager()
{
	openDialog(IDS_FRAMEWORK_NEW_VIRTUAL_PATH+"/Dialogs/TasksAssistant/ProductionManager/ProductionManager.aspx??NRMODE=Unpublished", 
		"Production Manager", null, null, navigateWindow, false);
}
function approvalAssistant()
{
	openDialog(IDS_FRAMEWORK_NEW_VIRTUAL_PATH+"/Dialogs/TasksAssistant/ApprovalAssistant/ApprovalAssistant.aspx?NRMODE=Update",
		"Approval Assistant", null, null, navigateWindow, false);
}
function resourceManager()
{
	openDialog(__CMS_WEBAPP_PATH + "CMS/WAE/ResourceManager/Manager.aspx", 
		"Resource Manager", (screen.width/1.2).toString()+"px", (screen.height/1.2).toString()+"px", null, false);
}
function webFolders()
{
	var res = window.open(__CMS_WEBAPP_PATH + "CMS/WAE/WebDav/ManageUserFiles.aspx");
}
function revisionHistory(id)
{
	openDialog(IDS_FRAMEWORK_NEW_VIRTUAL_PATH+"/Dialogs/RevisionBrowser/PageRevisionHistory.aspx?NRMODE=Unpublished&NRNODEGUID={"+id+"}", 
		"MCMS", null, null, null, false);
}
function revisionsByDate(id)
{
	openDialog(IDS_FRAMEWORK_NEW_VIRTUAL_PATH+"/Dialogs/RevisionBrowser/PageRevisionPreviewByDateDlg.aspx?NRMODE=Unpublished&NRNODEGUID={"+id+"}", 
		"MCMS", "600px", "450px", null, false);
}

function revertPosting(id)
{
//	openDialog(IDS_FRAMEWORK_NEW_VIRTUAL_PATH+"/Dialogs/RevertPosting/PageRevert.aspx?NRMODE=Unpublished&NRNODEGUID={"+id+"}", 
//		"MCMS", null, null, null, false, window.top);
		//alert(window);
		//alert(window.top);
    var pWindow = window.top.open(IDS_FRAMEWORK_NEW_VIRTUAL_PATH+"/Dialogs/RevertPosting/PageRevert.aspx?NRMODE=Unpublished&NRNODEGUID={"+id+"}", 'WBC_winPreviousPageRevert', WBC_UseDefaultSizing(window.top));
	if (pWindow)
		pWindow.focus();
}

function templatePreview(id)
{
	window.open("/NR/exeres/"+id+".htm?NRMODE=Unpublished");
}

function WBC_UseDefaultSizing(pWindow)
{
	var	lWidth = pWindow.document.body.clientWidth;
	var lHeight = pWindow.document.body.clientHeight;
	var strFeature;
	var lLeft;
	var lTop;

    // IE case
	lTop = pWindow.screenTop + IDS_HEIGHT_OFFSET;
	lLeft = pWindow.screenLeft + IDS_WIDTH_OFFSET;
	strFeature = "left=" + lLeft + ",top=" + lTop + ",width=" + lWidth + ",height=" + lHeight + ",resizable,scrollbars,status=yes";

	return strFeature;
}

