﻿function orderPrints(target, albumID, noJobsScript, sortOrder)
{
	var checkboxManager = $find(PageObjects.CheckboxManagerID);
	var selectJobPopupExtender = $find(PageObjects.SelectJobPopupID);
	selectJobPopupExtender.set_ControlArgumentValue(
		target.id, 'albumID', albumID);
	selectJobPopupExtender.set_ControlArgumentValue(
			target.id, 'sortOrder', sortOrder);

	if (checkboxManager.get_checkedCount() == 0)
	{
		if (noJobsScript)
			eval (noJobsScript);
		else
			selectJobPopupExtender.initializePopup(target.id);
	}
	else
	{
		var printAllRequestExtender = $find(PageObjects.PrintAllRequest);
		printAllRequestExtender.set_ControlArgumentValue(
			target.id, 'ID', target.id);
		printAllRequestExtender.set_ControlArgumentValue(
			target.id, 'albumID', albumID);
		printAllRequestExtender.set_ControlArgumentValue(
			target.id, 'sortOrder', sortOrder);
		printAllRequestExtender.initializePopup(target.id);
	}
}

function printAllImages(target)
{
	var selectJobPopupExtender = $find(PageObjects.SelectJobPopupID);
	selectJobPopupExtender.initializePopup(target.id);
}

function printCheckedImages(target, sortOrder)
{
	var checkboxManager = $find(PageObjects.CheckboxManagerID);
	if (checkboxManager.get_checkedCount() == 0)
	{
		alert('Please select an image');
		return;
	}

	var selectJobPopupExtender = $find(PageObjects.SelectJobPopupID);
	selectJobPopupExtender.set_ControlArgumentValue(
		target.id, 'albumID', '');
	selectJobPopupExtender.set_ControlArgumentValue(
		target.id, 'checkboxManagerID', checkboxManager.get_id());
	selectJobPopupExtender.set_ControlArgumentValue(
		target.id, 'sortOrder', sortOrder);
	selectJobPopupExtender.initializePopup(target.id);
}

function rotateCheckedImages(degrees)
{
	var checkboxManager = $find(PageObjects.CheckboxManagerID);
	if (checkboxManager.get_checkedCount() == 0)
	{
		alert('Please select an image');
		return;
	}
	
	PageMethods.RotateImages(
		checkboxManager.checkboxes, degrees,
		modifyWebMethodComplete, webMethodError);
}

function rotateImage(albumImageID, degrees)
{
	var albumImages = {};
	albumImages[albumImageID] = true;
	PageMethods.RotateImages(
		albumImages, degrees,
		modifyWebMethodComplete, webMethodError);
}

function autoCorrectCheckedImages(applyCorrections)
{
	var checkboxManager = $find(PageObjects.CheckboxManagerID);
	if (checkboxManager.get_checkedCount() == 0)
	{
		alert('Please select an image');
		return;
	}
	
	PageMethods.AutoCorrectImages(
		checkboxManager.checkboxes, applyCorrections,
		modifyWebMethodComplete, webMethodError);
}

function autoCorrectImage(albumImageID, applyCorrections)
{
	var albumImages = {};
	albumImages[albumImageID] = true;
	PageMethods.AutoCorrectImages(
		albumImages, applyCorrections,
		modifyWebMethodComplete, webMethodError);
}

function webMethodError(error, userContext, methodName)
{
	var scrollExtender = $find(PageObjects.DynamicScrollerID);
	scrollExtender.onError(error);
}

function modifyWebMethodComplete(result, userContext, methodName)
{
	reloadImages(result);
	
	if (window.modifyComplete)
		modifyComplete(result);
}

function reloadImages(images)
{
	var scrollExtender = $find(PageObjects.DynamicScrollerID);
	for(itemIndex=0; itemIndex<images.length; itemIndex++)
	{
		scrollExtender.discardCacheItem(
			images[itemIndex],
			AdoramaPix.AjaxExtenders.LayoutItemType.Item);
	}
	scrollExtender.UpdateScrollingArea();
}

function copyCheckedImages(target)
{
	var checkboxManager = $find(PageObjects.CheckboxManagerID);
	if (checkboxManager.get_checkedCount() == 0)
	{
		alert('Please select an image');
		return;
	}
	
	var copyPopupExtender = $find(PageObjects.CopyPopupID);
	
	copyPopupExtender.set_ControlArgumentValue(
		target.id, 'checkboxManagerID', checkboxManager.get_id());
	copyPopupExtender.initializePopup(target.id);
}

function copyImage(target, albumImageID)
{
	var copyPopupExtender = $find(PageObjects.CopyPopupID);
	
	copyPopupExtender.set_ControlArgumentValue(
		target.id, 'albumImageID', albumImageID);
	copyPopupExtender.initializePopup(target.id);
}

function moveCheckedImages(target)
{
	var checkboxManager = $find(PageObjects.CheckboxManagerID);
	if (checkboxManager.get_checkedCount() == 0)
	{
		alert('Please select an image');
		return;
	}
	
	var movePopupExtender = $find(PageObjects.MovePopupID);
	
	movePopupExtender.set_ControlArgumentValue(
		target.id, 'checkboxManagerID', checkboxManager.get_id());
	movePopupExtender.initializePopup(target.id);
}

function moveImage(target, albumImageID)
{
	var movePopupExtender = $find(PageObjects.MovePopupID);
	
	movePopupExtender.set_ControlArgumentValue(
		target.id, 'albumImageID', albumImageID);
	movePopupExtender.initializePopup(target.id);
}

function deleteCheckedImages(target)
{
	var checkboxManager = $find(PageObjects.CheckboxManagerID);
	if (checkboxManager.get_checkedCount() == 0)
	{
		alert('Please select an image');
		return;
	}
	
	var deletePopupExtender = $find(PageObjects.DeletePopupID);
	
	deletePopupExtender.set_ControlArgumentValue(
		target.id, 'checkboxManagerID', checkboxManager.get_id());
	deletePopupExtender.initializePopup(target.id);
}

function deleteImage(target, albumImageID)
{
	var deletePopupExtender = $find(PageObjects.DeletePopupID);
	
	deletePopupExtender.set_ControlArgumentValue(
		target.id, 'albumImageID', albumImageID);
	deletePopupExtender.initializePopup(target.id);
}

function cropCheckedImages(target)
{
	var checkboxManager = $find(PageObjects.CheckboxManagerID);
	if (checkboxManager.get_checkedCount() == 0)
	{
		alert('Please select an image');
		return;
	}
	
	var scrollExtender = $find(PageObjects.DynamicScrollerID);
	
	var str = '';
	for(i=0;i<scrollExtender.layout.Items.length; i++)
	{
		if (checkboxManager.checkboxes[scrollExtender.layout.Items[i].ID])
			str += scrollExtender.layout.Items[i].ID + ',';
	}
	str = str.replace(/,$/, '');

	var cropPopupExtender = $find(PageObjects.CroppingPopupID);

	cropPopupExtender.set_ControlArgumentValue(
		target.id, 'albumImageID', str);
	cropPopupExtender.initializePopup(target.id);
}

function cropImage(target, albumImageID)
{
	var lightboxPopup = $find(PageObjects.LightboxPopupID);
	if (lightboxPopup)
		lightboxPopup.hide();
		
	var cropPopupExtender = $find(PageObjects.CroppingPopupID);
	
	cropPopupExtender.set_ControlArgumentValue(
		target.id, 'albumImageID', albumImageID);
	cropPopupExtender.initializePopup(target.id);
}

function redeyeCheckedImages(target)
{
	var checkboxManager = $find(PageObjects.CheckboxManagerID);
	if (checkboxManager.get_checkedCount() == 0)
	{
		alert('Please select an image');
		return;
	}
	
	var scrollExtender = $find(PageObjects.DynamicScrollerID);
	
	var str = '';
	for(i=0;i<scrollExtender.layout.Items.length; i++)
	{
		if (checkboxManager.checkboxes[scrollExtender.layout.Items[i].ID])
			str += scrollExtender.layout.Items[i].ID + ',';
	}
	str = str.replace(/,$/, '');

	var redeyePopupExtender = $find(PageObjects.RedeyePopupID);

	redeyePopupExtender.set_ControlArgumentValue(
		target.id, 'albumImageID', str);
	redeyePopupExtender.initializePopup(target.id);
}

function redeyeImage(target, albumImageID)
{
	var lightboxPopup = $find(PageObjects.LightboxPopupID);
	if (lightboxPopup)
		lightboxPopup.hide();
		
	var redeyePopupExtender = $find(PageObjects.RedeyePopupID);
	
	redeyePopupExtender.set_ControlArgumentValue(
		target.id, 'albumImageID', albumImageID);
	redeyePopupExtender.initializePopup(target.id);
}

