<!--

	//================================================================================================
	// VARIABLES DECLARATION
	//================================================================================================	
	var flagPopup = false;
	var clickCount = 1;
	var selectedBlock = "";
	var blnVisible = false;
	var prevDest = 1;
	var nextDest = 4;
	var mySpinner;

	//================================================================================================
	// AJAX FUNCTIONS
	//================================================================================================	
	function updateVisible(div, id, table)
	{
		var url = "update_visible.asp";

		var data = "process=visibility";
		data = data + "&action=ajax";		
		data = data + "&itemID=" + id;		
		data = data + "&table=" + table;		
		data = data + "&sid=" + Math.random();		
		
		//get true or false
		var imgOld, imgNew;
		var imgOld = ($(div).hasClass('img_True')) ? 'True' : 'False';
		var imgNew = ($(div).hasClass('img_True')) ? 'False' : 'True';
		
		data = data + "&visible=" + imgNew;

		var req = new Request( {method: 'get', url: '' + url,

			onSuccess: function(txt) {
				if (txt == 'Success')
				{
					$(div).removeClass('img_' + imgOld);
					$(div).addClass('img_' + imgNew);
				}
			},
			
			onFailure: function() {
				alert("Error connecting to server. Please refresh this page and try again.");
			}
			
		}).send(data);		
	}
	
	function savePictureDetails(pictureID)
	{
		var title = $('input_picture_title').get('value');
		var caption = $('input_picture_caption').get('value');
		var alt = $('input_picture_alt').get('value');
		
		var url = "process.asp";

		var data = "process=gallery";
		data = data + "&action=edit";
		data = data + "&pictureID=" + pictureID;
		data = data + "&title=" + title;
		data = data + "&caption=" + caption;
		data = data + "&alt=" + alt;
		data = data + "&sid=" + Math.random();		
			
		var req = new Request( {method: 'get', url: '' + url,

			onSuccess: function(txt) {
				$('picture_title_text').set('html', title);
				$('picture_caption_text').set('html', caption);
				$('picture_alt_text').set('html', alt);
				
				hideGalleryDetailsForm();
			},
			
			onFailure: function() {
				alert("Error connecting to server. Please refresh this page and try again.");
			}
			
		}).send(data);		
	}
	
	function showGalleryImage(pictureID)
	{
		var div = "div_gallery_picture";
		var url = "get_gallery_image.asp";

		var data = "pictureID=" + pictureID;
		data = data + "&sid=" + Math.random();		
		
		mySpinner = new Spinner(div);
		
		var req = new Request( {method: 'get', url: '' + url,

			onSuccess: function(txt) {
				$(div).set('html', txt);
				mySpinner.hide(true);
			},
			
			onRequest: function() {
				mySpinner.show(true);
			},
			
			onFailure: function() {
				mySpinner.hide(true);
				alert("Error connecting to server. Please refresh this page and try again.");
			}
			
		}).send(data);		
	}
	
	function generateCSV(listID, fields)
	{	
		var div = "csv";
		var btn = "btnCSV";
	
		var url = "csv.asp";

		var data = "listID=" + listID;
		data = data + "&fields=" + fields;		
		data = data + "&sid=" + Math.random();		
		
		var req = new Request( {method: 'get', url: '' + url, 

			onSuccess: function(txt) {
				$(div).set('html', txt);
				alert("Your CSV file is now ready to download. Please find the link on the right column.");
			},
			
			onFailure: function() {
				alert("Error connecting to server. Please refresh this page and try again.");
			}
			
		}).send(data);		
	}
	
	function showBouncebacks(domain, newsletterID)
	{
		var url = "get_bounce_emails.asp";

		var data = "domain=" + domain;
		data = data + "&newsletterID=" + newsletterID;		
		data = data + "&sid=" + Math.random();		
		
		var req = new Request( {method: 'get', url: '' + url, 

			onSuccess: function(txt) {
				$('div_recipients').set('html', txt);
				$$('.ajax_icons').set('html', '');
				new Element('img',{ src: 'images/true.png', width: 14, style: 'width:14; height:14;' }).inject($('icon_bounced')); 
			},
			
			onRequest: function() {
				$('icon_bounced').empty();
				new Element('img',{ src: 'images/ajax-loader-heading.gif', width: 16, style: 'width:16; height:16;' }).inject($('icon_bounced')); 
			},
			
			onFailure: function() {
				alert("Error connecting to server. Please refresh this page and try again.");
				$('icon_bounced').empty();
				new Element('img',{ src: 'images/false.png', width: 14, style: 'width:14; height:14;' }).inject($('icon_bounced')); 
			}
			
		}).send(data);		
	}

	function showOutOfOfficeEmails(domain)
	{
		var url = "get_outofoffice_emails.asp";

		var data = "domain=" + domain;
		data = data + "&sid=" + Math.random();		
		
		var req = new Request( {method: 'get', url: '' + url, 

			onSuccess: function(txt) {
				$('div_recipients').set('html', txt);
				$$('.ajax_icons').set('html', '');
				new Element('img',{ src: 'images/true.png', width: 14, style: 'width:14; height:14;' }).inject($('icon_outofoffice')); 
			},
			
			onRequest: function() {
				$('icon_outofoffice').empty();
				new Element('img',{ src: 'images/ajax-loader-heading.gif', width: 16, style: 'width:16; height:16;' }).inject($('icon_outofoffice')); 
			},
			
			onFailure: function() {
				alert("Error connecting to server. Please refresh this page and try again.");
				$('icon_outofoffice').empty();
				new Element('img',{ src: 'images/false.png', width: 14, style: 'width:14; height:14;' }).inject($('icon_outofoffice')); 
			}
			
		}).send(data);		
	}	
	
	function showRecipients(type, newsletterID, posted)
	{
		var url = "get_recipients_statistics.asp";

		var data = "type=" + type;
		data = data + "&newsletterID=" + newsletterID;
		data = data + "&posted=" + posted;		
		data = data + "&sid=" + Math.random();		
		
		var req = new Request( {method: 'get', url: '' + url, 

			onSuccess: function(txt) {
				$('div_recipients').set('html', txt);
				$$('.ajax_icons').set('html', '');
				new Element('img',{ src: 'images/true.png', width: 14, style: 'width:14; height:14;' }).inject($('icon_' + type)); 
			},
			
			onRequest: function() {
				$('icon_' + type).empty();
				new Element('img',{ src: 'images/ajax-loader-heading.gif', width: 16, style: 'width:16; height:16;' }).inject($('icon_' + type)); 
			},
			
			onFailure: function() {
				alert("Error connecting to server. Please refresh this page and try again.");
				$('icon_' + type).empty();
				new Element('img',{ src: 'images/false.png', width: 14, style: 'width:14; height:14;' }).inject($('icon_' + type)); 
			}
			
		}).send(data);		
	}	
	
	function showRecipientsContacts(listID, surname, keyword, sortby)
	{
		var url = "get_recipients_contacts.asp";

		var data = "listID=" + listID;
		data = data + "&surname=" + surname;
		data = data + "&keyword=" + keyword;		
		data = data + "&sortby=" + sortby;		
		data = data + "&sid=" + Math.random();		
		
		var req = new Request( {method: 'get', url: '' + url, 

			onSuccess: function(txt) {
				$('div_recipients').set('html', txt);
			},
			
			onRequest: function() {
				$('div_recipients').set('html', '<em>Loading recipients...</em>');
			},
			
			onFailure: function() {
				alert("Error connecting to server. Please refresh this page and try again.");
			}
			
		}).send(data);		
	}	
	
	function showSales(productID, customerID, month, year)
	{
		var url = "get_sales.asp";

		var data = "productID=" + productID;
		data = data + "&customerID=" + customerID;
		data = data + "&m=" + month;		
		data = data + "&y=" + year;		
		data = data + "&sid=" + Math.random();		
		
		var req = new Request( {method: 'get', url: '' + url, 

			onSuccess: function(txt) {
				$('div_sales').set('html', txt);
			},
			
			onFailure: function() {
				alert("Error connecting to server. Please refresh this page and try again.");
			}
			
		}).send(data);		
	}	
	
	function showSaleItems(productID, month, year)
	{
		var url = "get_saleitems.asp";

		var data = "productID=" + productID;
		data = data + "&m=" + month;		
		data = data + "&y=" + year;		
		data = data + "&sid=" + Math.random();		
		
		var req = new Request( {method: 'get', url: '' + url, 

			onSuccess: function(txt) {
				$('div_sales').set('html', txt);
			},
			
			onFailure: function() {
				alert("Error connecting to server. Please refresh this page and try again.");
			}
			
		}).send(data);		
	}	
	
	function showProducts(categoryID)
	{
		var url = "get_products.asp";

		var data = "categoryID=" + categoryID;
		data = data + "&sid=" + Math.random();		
		
		var req = new Request( {method: 'get', url: '' + url, 

			onSuccess: function(txt) {
				$('div_products').set('html', txt);
			},
			
			onFailure: function() {
				alert("Error connecting to server. Please refresh this page and try again.");
			}
			
		}).send(data);		
	}		
	
	function showStatisticsSummary(newsletterID, posted)
	{
		var url = "get_statistics_summary.asp";

		var data = "newsletterID=" + newsletterID;
		data = data + "&posted=" + posted;		
		data = data + "&sid=" + Math.random();		
		
		var req = new Request( {method: 'get', url: '' + url, 

			onSuccess: function(txt) {
				$('div_statistics_summary').set('html', txt);
			},
			
			onRequest: function() {
				$('div_statistics_summary').set('html', "<div style='padding:10px;'><img src='images/ajax-loader-heading.gif' width='16' height='16' /></div>");
			},
			
			onFailure: function() {
				alert("Error connecting to server. Please refresh this page and try again.");
			}
			
		}).send(data);		
	}	
	
	function showNewsletterTemplates(domain, newsletterID)
	{
		var url = "get_template_emails.asp";
		var div = "div_templates";

		var data = "domain=" + domain;
		data = data + "&newsletterID=" + newsletterID;
		data = data + "&sid=" + Math.random();		
		
		var req = new Request( {method: 'get', url: '' + url, 

			onSuccess: function(txt) {
				$(div).set('html', txt);
			},
			
			onRequest: function() {
				$(div).set('html', '<div style="padding:5px;">Loading template files..</div>');
			},
			
			onFailure: function() {
				$(div).set('html', '<div style="padding:5px;">Error connecting to server. Please refresh this page and try again.</div>');
			}
			
		}).send(data);		
	}

	var showFieldName = function() {		
		var tableName = $('tableName').value;
	
		var div = $('field_name');
		var url = "get_fields_name.asp";
		var data = "tableName=" + tableName;

		var req = new Request( {url: '' + url,

			onSuccess: function(txt) {
				$(div).set('html', txt);
			},

			onFailure: function() {
				$(div).set('html', '<br /><div class="ajax">Error loading... Please refresh the browser</div>');
			}

		}).send(data);
	}

	//================================================================================================
	// FORM FUNCTIONS
	//================================================================================================			
	function submitCSVForm()
	{
		var form = document.csvform;
		
		var c_fields = form.field;
		var ctt, db_fields
		
		var valid = true;

		ctt = 0;
		db_fields = "";
		for (var i=0; i < c_fields.length; i++)
		{
			if (c_fields[i].checked) 
			{
				db_fields += c_fields[i].value + ",";
				ctt++;
			}
		}
		
		if (ctt > 0) 
		{
			form.fields.value = db_fields.substring(0,db_fields.length - 1);
			form.submit();
		}	
		else
		{
			alert('Please select the fields to be included in the CSV file.');
		}
	}
	
	//================================================================================================
	// LAYOUT FUNCTIONS
	//================================================================================================				
	function showPopup()
	{
		if (!flagPopup)
		{
			$('container_popup').setStyle('display', 'block');
			flagPopup = true;
		}
	}
	
	function hidePopup()
	{
		if (flagPopup)
		{
			$('container_popup').setStyle('display', 'none');
			flagPopup = false;
		}
	}	

	function togglePopup()
	{
		if (!flagPopup)
		{
			showPopup();
		}
		else
		{
			hidePopup();
		}
	}	
	
	function showPopupItem(div_popup)
	{
		if ($chk($(div_popup)))
		{	
			$(div_popup).setStyle('display', 'block');
		}
	}	
	
	function hideAllPopups()
	{
		if ($chk($$('.pop_up')[0]))
		{	
			$$('.pop_up').setStyle('display', 'none');
		}	
	}	
	
	function showGalleryDetailsForm()
	{
		new Fx.Reveal($('gallery_details')).dissolve().chain(function () {
			$('input_picture_title').set('value', $('picture_title_text').get('html'));
			$('input_picture_caption').set('value', $('picture_caption_text').get('html'));
			$('input_picture_alt').set('value', $('picture_alt_text').get('html'));
			new Fx.Reveal($('gallery_details_form')).reveal();
		});
	}
	
	function hideGalleryDetailsForm()
	{
		new Fx.Reveal($('gallery_details_form')).dissolve().chain(function () {
			new Fx.Reveal($('gallery_details')).reveal();
		});
	}
	
	function showAddPictureForm()
	{
		if ($chk($('div_add_picture')))
		{	
			new Fx.Reveal($('div_add_picture')).reveal();
		}
	}		
	
	function hideAddPictureForm()
	{
		if ($chk($('div_add_picture')))
		{	
			new Fx.Reveal($('div_add_picture')).dissolve();
		}
	}		

	function toggleAddPictureForm()
	{
		if ($chk($('div_add_picture')))
		{	
			new Fx.Reveal($('div_add_picture')).toggle();
		}
	}	
	
	function toggleAddPictureForm()
	{
		new Fx.Reveal($('div_add_picture')).toggle();
	}		

	function gotoImage(id)
	{
		new Fx.Scroll('scrollable_images').toElement('img_' + id);		
	}		

	function gotoTab(id)
	{
		new Fx.Scroll('scrollable_thumbs').toElement('tab_' + id);		
	}	
	
	function showAddImage()
	{
		new Fx.Morph($('div_addimage')).start({'height' : 150});
	}		
	
	function hideAddImage()
	{
		new Fx.Morph($('div_addimage')).start({'height' : 0});
	}		

	function showFormattingOptions()
	{
		$('formatting_options').setStyle('display', 'block');
		new Fx.Morph($('formatting_options')).start({'height' : 190}).chain(function(){$('formatting_options').setStyle('visibility', 'visible');});
	}

	function hideFormattingOptions()
	{
		$('formatting_options').setStyle('display', 'none');
		$('formatting_options').setStyle('visibility', 'hidden');
		new Fx.Morph($('formatting_options')).start({'height' : 0});
	}

	function resetSortable(url)
	{
		if (confirm("Are you sure you want to reset this?"))
		{
			//return true;
			window.location = url;
		}
	}		
	
	function tweenFadeIn(item) 
	{
		$(item).setStyle('display', 'block');
		new Fx.Tween(item).start('opacity', 0, 1);
	}
	
	function tweenFadeOut(item) 
	{
		new Fx.Tween(item).start('opacity', 1, 0).chain(function(){$(item).setStyle('display', 'none');});
	}
	
	//================================================================================================
	// EVENTS FUNCTIONS
	//================================================================================================			
	function resizeProductImages()
	{
		if ($chk($$('.resizeImage')[0]))
		{
			$$('.resizeImage').each(function (el, i) {
				if (el.getWidth() > el.getHeight())
				{
					el.setStyles({ 'width' : '390px', 'height' : 'auto' });
				}
				else
				{
					el.setStyles({ 'width' : 'auto', 'height' : '390px' });
				}
			});
		}
		
		if ($chk($$('.resizeThumb')[0]))
		{
			$$('.resizeThumb').each(function (el, i) {
				if (el.getWidth() > el.getWidth())
				{
					el.setStyles({ 'width' : '250px', 'height' : 'auto' });
				}
				else
				{
					el.setStyles({ 'width' : 'auto', 'height' : '100px' });
				}
			});
		}		
	}	
	
	function setupActions()
	{
		if ($chk($$('.imgHover')[0]))
		{
			$$('.imgHover').setStyle('opacity', 0.7);
			
			$$('.imgHover').addEvents({
				
				'mouseover' : function(e) {
					this.setStyle('opacity', 1);
				},
			
				'mouseout' : function(e) {
					this.setStyle('opacity', 0.7);
				}
				
			});	
		}

		if ($chk($('formatting_options')))
		{
			$('formatting_options').setStyle('display', 'none');
			$('formatting_options').setStyle('visibility', 'hidden');
		}
	}		
	
	function setupMooRainbow()
	{
		if($chk($('branding_color_picker')))
		{
			var branding_color = new MooRainbow('branding_color_picker', {
									'id' : 'brandingPicker',
									'onChange': function(color) {
										$('myBranding').value = color.hex;
										$('brandingColor').value = color.hex;
									}
									});
		}

		if($chk($('link_color_picker')))
		{
			var link_color = new MooRainbow('link_color_picker', {
									'id' : 'linkPicker',
									'onChange': function(color) {
										$('myLink').value = color.hex;
										$('linkColor').value = color.hex;
									}
									});
		}	
	}
	
	function setupSortables()
	{
		if ($chk($('imagelist')))
		{
			var sortableListsArray = $('imagelist');
			
			var sortableLists = new Sortables(sortableListsArray, {
				clone: false,
				handle: '.handle .dragableimage',
				revert: {
					duration: 30
				},
				opacity: .5,
				onComplete: function(el) {
					var listOne = sortableLists.serialize(0);
					$('sort_1').set('value', listOne);
				}
			});
		}	
	}
	
	function showKeywords()
	{
		if((clickCount % 2) == 0)
		{
			tweenFadeOut($('existing'));
		}
		else
		{
			tweenFadeIn($('existing'));
		}
		
		clickCount++;	
	}	
	
	function setupDatePicker()
	{
		if ($chk($$('.datepicker_time')[0]))
		{
			new DatePicker('.datepicker_time', { pickerClass: 'datepicker_vista', timePicker: true, format: 'd/m/Y @ H:i', inputOutputFormat: 'd/m/Y H:i:s' });	
		}		
	}
		
	//================================================================================================
	// START THIS WHEN PAGE DOM READY
	//================================================================================================		
	window.addEvents({
	
		'domready' : function(e) {
			setupMooRainbow();
			setupSortables();	
			setupActions();
			setupDatePicker();
			resizeProductImages();			
		},
		
		'resize' : function() {

		}
		
	});
		
//-->