function showManage(area){
	switch(area){
		case 'dogs':
			$.post('/_xhr/dogs.php',
				{action: 'show'},
				function (data) {
					var e = data.error;
					if(e.length > 0) {
						alert(e);
					} else {
						var d = data.details;
						$('#managementArea').html(d);
						$('.datepicker').datepicker(
								{
								'dateFormat':'yy-mm-dd',
								'disabled': true
								}
						);						
					}				
				},'json'
			);
			break;
		case 'judges':
			$.post('/_xhr/judges.php',
				{action: 'show'},
				function (data) {
					var e = data.error;
					if(e.length > 0) {
						alert(e);
					} else {
						var d = data.details;
						$('#managementArea').html(d);
						$('#managementArea .ck_editor').each(function(){
							var ckID = $(this).attr('id');
							if(CKEDITOR.instances[ckID]){
								CKEDITOR.remove(CKEDITOR.instances[ckID]);
							}
							CKEDITOR.replace(ckID, {'toolbar':'Basic'});
						});
					}
				},'json'
			);		
			break;
		case 'shows':
			$.post('/_xhr/shows.php',
				{action: 'show'},
				function (data) {
					var e = data.error;
					if(e.length > 0) {
						alert(e);
					} else {
						var d = data.details;
						$('#managementArea').html(d);
						$('.datepicker').datepicker(
							{
							'dateFormat':'yy-mm-dd',
							'disabled': true
							}
						);
					}				
				},'json'
			);		
			break;
		case 'points':
			$.post('/_xhr/points.php',
				{action: 'show'},
				function (data) {
					var e = data.error;
					if(e.length > 0) {
						alert(e);
					} else {
						var d = data.details;
						$('#managementArea').html(d);
						$('.datepicker').datepicker(
							{
							'dateFormat':'yy-mm-dd',
							'disabled': true
							}
						);					
					}				
				},'json'
			);		
			break;
		case 'breeds':
			$.post('/_xhr/breeds.php',
				{action: 'show'},
				function (data) {
					var e = data.error;
					if(e.length > 0) {
						alert(e);
					} else {
						var d = data.details;
						$('#managementArea').html(d);
					}				
				},'json'
			);			
			break;
		case 'ads':	
			$.post('/_xhr/ads.php',
					{action: 'show'},
					function (data) {
						var e = data.error;
						if(e.length > 0) {
							alert(e);
						} else {
							var d = data.details;
							var i = data.myid
							$(i).html(d);
							setButtons('.formButton');
							setIconButtons('.tableButton');
							setButtonset('#filterSet');
							setButtonset('#pageFilterSet');
						}				
					},'json'
				);			
				break;	
		case 'sideads':	
			$.post('/_xhr/side_ads.php',
					{action: 'show'},
					function (data) {
						var e = data.error;
						if(e.length > 0) {
							alert(e);
						} else {
							var d = data.details;
							var i = data.myid
							$(i).html(d);
							setButtons('.formButton');
							setIconButtons('.tableButton');
							setButtonset('#filterSet');
							setButtonset('#pageFilterSet');
						}				
					},'json'
				);			
				break;			
	}
}

function adminDog(action, id) {
	var outputDiv = '';
	switch(action) {
		case 'showDogs':
			outputDiv = '#currentDogUpdate';
			break;
		case 'editDog':
			outputDiv = '#dogEditArea';
			break;
	}
	$.post('/_xhr/dogs.php',
		{action  : action,
		 id : id},
		 function (data) {
			var e = data.error;
			if(e.length > 0) {
				alert(e);
			} else {
				var d = data.details;
				if(action == 'editDog'){
					$('#dogEditArea').show();
				}
				$(outputDiv).html(d);
			}				
		},'json'
	);							 	
}
	
function updateShowSelector() {
	$.post('/_xhr/points.php',
		{
		'action'		: 'update show selector',
		'showFromDate'	: $('#showsFromDate').val(),
		'showToDate'	: $('#showsToDate').val()
		},
		function(data){
			var e = data.error;
			if(e.length > 0){
				alert(e);
			} else {
				var d = data.details;
				$('#thisShow').html(d);
			}
		},'json'
	);
	
}
function adminJudge(action, id) {
	var outputDiv = '#editJudge';

	$.post('/_xhr/judges.php',
		{action  : action,
		 id : id},
		 function (data) {
			var e = data.error;
			if(e.length > 0) {
				alert(e);
			} else {
				var d = data.details;
				if(action == 'editJudge'){
					$('#editJudge').show();
				}
				$(outputDiv).html(d);
				var ckID = $('#editJudge .ck_editor').attr('id');
				if(CKEDITOR.instances[ckID]){
					CKEDITOR.remove(CKEDITOR.instances[ckID]);
				}
				CKEDITOR.replace(ckID, {'toolbar':'Basic'});
			}				
		},'json'
	);							 	
}
function showHide(show, hide){
	$(show).show();
	if(typeof(hide) != 'undefinded') { 
		$(hide).hide(); 
		if($(hide).hasClass('uploadify')){
			//remove it from the dom
			$(hide+'Uploader').remove();
			$(hide+'Queue').remove();
		}
	}
	if($(show).hasClass('uploadify')){
		var submitID = $(show).attr('rel');
		setUploadify(show,submitID);
	}
}

function showMe(divid) {
	$(divid).toggle();
}

function getDogsFromGroup(v){
	$.post('/_xhr/fromGroup.php',
		{grp: v},
		function (data) {
			var e = data.error;
			if(e.length > 0) {
				alert(e);
			} else {
				var d = data.details;
				$('#dogBreedID').html(d);
			}				
		},'json'
	);			
}
function showPreview(imgName, imgPath, divid) { 
	if(imgName != '' && imgPath != '') {
		var i = '<img src="/'+imgPath+'/'+imgName+'" />';
		$(divid).html(i);
	} else {
		$(divid).html('');
	}
}
function formValidate(myFormID) {
	var flag=0;
	var bgc = '#FFCFCF';
	var filter	= /^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-])+.)+([a-zA-Z0-9]{2,4})+$/;	
	//load ckeditor data into normal form areas.
	$(myFormID+' .ck_editor').each(function(){
		var myName = $(this).attr('id');
		if(myName.length == 0){
			var myName = $(this).attr('name');
		}
		if(myName.length > 0){
			if(CKEDITOR.instances[myName]){
				var myData = CKEDITOR.instances[myName].getData();
				$(this).val(myData);
			}
		}
	});
	$(myFormID+' :input').each(function() {
		if( $(this).hasClass('req') && ($(this).val() == '' || $(this).val() == '0' || $(this).val() == '0.00')) {
			$(this).css('background-color', bgc);
			flag = 1;
		}
		if( ($(this).hasClass('isInteger') || $(this).hasClass('isDollar') || $(this).hasClass('isDecimal')) && isNaN($(this).val()) ) {
			$(this).css('background-color', bgc);
			flag=1;
		} else if($(this).hasClass('isInteger')) {
			var n = Number($(this).val());
			$(this).val(n.toFixed(0));
		} else if($(this).hasClass('isDollar')) {
			var n = Number($(this).val());
			$(this).val(n.toFixed(2));						
		}
		if( $(this).hasClass('isEmail') ){
			if(!filter.test($(this).val())){
				$(this).css('background-color', bgc);
				flag=1;				
			}
		}
	});
	if(flag == 1) {
		alert('Either some required fields have not been filled out or they have been filled out improperly. Please make the appropriate changes to the highlighted areas.');
		return false;
	} else {
		return true;	
	}
}

function checkMeOver(myFormID, childlevel) {
	if(myFormID.indexOf('#') != 0) { myFormID = '#'+myFormID; }
	var myForm = $(myFormID);
	var table = $(myFormID +' .myTable').val();
	var action = $(myFormID +' .myAction').val();
	if(childlevel != undefined) { myFormID += ' '+childlevel; }
	var flag=0;
	var bgc = '#FFCFCF';
	//set ck_editor instances to their proper areas.
	$(myFormID+' .ck_editor').each(function(){
		var myName = $(this).attr('id');
		if(myName.length == 0){
			var myName = $(this).attr('name');
		}
		if(myName.length > 0){
			if(CKEDITOR.instances[myName]){
				var myData = CKEDITOR.instances[myName].getData();
				$(this).val(myData);
			}
		}
	});
	$(myFormID+' .req').each(function() {
		if( $(this).val() == '' || $(this).val() == '0' || $(this).val() == '0.00') {
			$(this).css('background-color', bgc);
			flag = 1;
		}
		if( ($(this).hasClass('isInteger') || $(this).hasClass('isDollar') || $(this).hasClass('isDecimal')) && isNaN($(this).val()) ) {
			$(this).css('background-color', bgc);
			flag=1;
		} else if($(this).hasClass('isInteger')) {
			var n = Number($(this).val());
			$(this).val(n.toFixed(0));
		} else if($(this).hasClass('isDollar')) {
			var n = Number($(this).val());
			$(this).val(n.toFixed(2));						
		}			

	});
	if(flag == 1) {
		alert('Either some required fields have not been filled out or they have been filled out improperly. Please make the appropriate changes to the highlighted areas.');
		return false;
	} else {
		if(table != '' && action != '') {
			updateTables(myForm);
		} else {
			myForm.submit();
		}
	}
}

function updateTables(myForm){
		$.post('/_xhr/formSubmit.php',$(myForm).serialize(), 
			function(data){
				var e = data.error;
				var d = data.details;
				var m = data.message;
				var t = data.table;
				var a = data.action;
				var s = data.show;
				if(e.length > 0) {
					alert(e);
				} else if(m == 1) {
					alert(d);
					showManage(s);
				} else {
					$('#managementArea').html(d);
					$('#managementArea .ck_editor').each(function(){
						
					});
				}
			},'json'
		);	
}
function showTableSet(i) {
	$('tr').each( function() {
		var myClass = $(this).attr('class');
		if(myClass.indexOf('myTableRow') != -1){
			$(this).hide();
		}	
	});
	$('.myTableRow'+i).show();
}

function getShows(){
	var day1 = $('#showsStartDate').val();
	var day2 = $('#showsEndDate').val();
	$.post('/_xhr/shows.php', 
		{action: 'display',
		 day1: day1,
		 day2: day2
		}, function (data) {
			var e = data.error;
			var d = data.details;
			if(e.length > 0) {
					alert(e);
			} else {
				$('#showsDisplayTable').html(d);
			}		
		},"json"
	);	
}

function editShow(showID){
	$.post('/_xhr/shows.php', 
		{action: 'edit',
		 showID: showID
		}, function (data) {
			var e = data.error;
			var d = data.details;
			if(e.length > 0) {
					alert(e);
			} else {
				$('#editShowArea').html(d);
				$('#showDate'+showID).datepicker(
					{
					'dateFormat':'yy-mm-dd',
					'disabled': true
					}
				);
			}		
		},"json"
	);	
}

function setAutoComplete(){
	$('.autoComplete').each( function() {
		var displayArea = '#' + $(this).attr('id');
		var valueArea = $(this).attr('ref');
		var titleArea = $(this).prev('select');
		$(this).autocomplete({
			source: function(request, response) {
				$.ajax({
					url: "autocomplete.php",
					dataType: "json",
					data: {
						term: request.term
					},
					success: function(data) {
						response($.map(data.dogs, function(item) {
							return {
								value: item.dogID,
								label: item.dogName,
								title: item.dogTitle
							}
						}))
					}
				})
			},
			minLength: 3,
			focus: function(event, ui) {
				$(displayArea).val(ui.item.label);
				$(valueArea).val(ui.item.value);
				$(titleArea).val(ui.item.title);
				return false;
			},
			select: function(event, data){
				$(displayArea).val(data.item.label);
				$(valueArea).val(data.item.value);
				$(titleArea).val(ui.item.title);
				return false;
			}
		});
	});
}

function setDogTitle(myid){
	var dogTitle 	= $(myid +' option:selected').val();
	var dogID		= $(myid).prev('input').val();
	$.post('/_xhr/dogs.php',
			{action		: 'setTitle',
			 dogID		: dogID,
			 dogTitle	: dogTitle
			},
			function(data) {
				var e = data.error;
				if(e.length > 0){
					alert(e);
				}
			},
		'json'
	);
}

function showTheShow(showID){
	if(showID != 0) {
		$.post('/_xhr/points.php',
			{action:'get show',
			 showID: showID},
			function (data) {
				var e = data.error;
				var d = data.details;
				if(e.length > 0) {
						alert(e);
				} else {
					$('#updatePointsArea').html(d);
					setAutoComplete();	
				}						
			}, 'json'
		);	
	} else {
		alert('Invalid Show');
	}
}

function switchBreed(breedID,groupID,theYear) {
	if(typeof(theYear) == 'undefined') { 
		var d = new Date();
		theYear = d.getFullYear();
	}
	if(breedID == 0 ) {
		$('#breedSelector option').eq(0).text('Show Only This Breed');
	} else {
		$('#breedSelector option').eq(0).text('Show All Breeds');
	}
	$.post('/_xhr/showBreedList.php',
		{'grp'		: groupID,
		 'bid'		: breedID,
		 'theYear' 	: theYear},
		function (data) {
			var e = data.error;
			var d = data.details;
			if(e.length > 0) {
				alert(e);
			} else {
				$('#resultsTable').html(d);
			}						
		}, 'json'
	);		
}
var editor;

function attachEditor(ta) {
	if (editor) {
		editor.destroy();
	} else {
		editor = CKEDITOR.replace( ta, 
			{toolbar : [
						['Source','-','Cut','Copy','Paste','PasteText','PasteFromWord','-', 'SpellChecker', 'Scayt','-','Link','Unlink','Anchor'],
						['Bold','Italic','Strike','-','NumberedList','BulletedList','-','Outdent','Indent','Blockquote']
					   ]
			}
		);
	}
}

function setJudge(me){
		var i = $('#'+me).val();
		$('.'+me).val(i);
}

function editAdvertisment(myid,action){
	var params = new Object();
	var check = true;
	params.myid = myid;
	params.action = action;
	params.status = $('input[name="showAds"]:checked').val();
	if(action == 'addNew' || action == 'update'){
		check = formValidate('#editAdvertisementForm');
		params.adAdvertiser = $('#editAdvertisementForm input[name="adAdvertiser"]').val();
		params.adPhoto = $('#editAdvertisementForm input[name="adPhoto"]').val();
		params.adText = CKEDITOR.instances['adText'].getData();
		params.startDate = $('#editAdvertisementForm input[name="startDate"]').val();
		params.expiryDate = $('#editAdvertisementForm input[name="expiryDate"]').val();
		params.adPosition = $('#editAdvertisementForm input[name="adPosition"]:checked').val();
		params.adPage = $('#editAdvertisementForm select[name="adPage"]').val();
		params.adTextColour = $('#editAdvertisementForm input[name="adTextColour"]').val();
//alert(params.adPhoto);		
	}
	if(check){
		$.post('/_xhr/ads.php', params,
			function(data){
				var e = data.error;
				if(e.length > 0){
					alert(e);
				}else{
					var d = data.details;
					var i = data.myid;
					var t = data.mytitle;
					if(action.indexOf('show') != -1){
						$(i).html(d);
						$(i).dialog("option","title", t);
						$(i).dialog("open");
						setButtons('.formButton');
						setButtonset('#adPosition');
						setDatepicker('.datePicker');
						loadEditor('adText');
						$('#colourPicker').farbtastic('#adTextColour');
						setUploadify('#adPhoto','#adFormSaveButton');
					} else {
						$(i).html(d);
						$(t).dialog("close");
						setIconButtons('.tableButton');
						setButtons('.formButton');
						setButtonset('#filterSet');
						setButtonset('#pageFilterSet');
					}
				}
			},'json'
		);
	}
}

function filterAds(){
	var params = new Object();
	params.action	= 'filter';
	params.status	= $('input[name="showAds"]:checked').val();
	params.page		= $('input[name="showPage"]:checked').val();
	$.post('/_xhr/ads.php', params,
		function(data){
			var e = data.error;
			if(e.length > 0){
				alert(e);
			}else{
				var d = data.details;
				var i = data.myid;
				var t = data.mytitle;
				$(i).html(d);
				setIconButtons('.tableButton');
				setButtons('.formButton');
				setButtonset('#filterSet');
				setButtonset('#pageFilterSet');
			}
		},'json'
	);	
}

function editSideAdvertisment(myid,action){
	var params = new Object();
	var check = true;
	params.myid = myid;
	params.action = action;
	params.status = $('input[name="showAds"]:checked').val();
	if(action == 'addNew' || action == 'update'){
		check = formValidate('#editSideAdvertisementForm');
		params.adAdvertiser = $('#editSideAdvertisementForm input[name="adAdvertiser"]').val();
		params.adPhoto = $('#editSideAdvertisementForm input[name="adPhoto"]').val();
		params.adText = CKEDITOR.instances['adText'].getData();
		params.startDate = $('#editSideAdvertisementForm input[name="startDate"]').val();
		params.expiryDate = $('#editSideAdvertisementForm input[name="expiryDate"]').val();
		params.adPosition = $('#editSideAdvertisementForm input[name="adPosition"]:checked').val();
		params.adPage = $('#editSideAdvertisementForm select[name="adPage"]').val();
		params.adTextColour = $('#editSideAdvertisementForm input[name="adTextColour"]').val();
//alert(params.adPhoto);		
	}
	if(check){
		$.post('/_xhr/side_ads.php', params,
			function(data){
				var e = data.error;
				if(e.length > 0){
					alert(e);
				}else{
					var d = data.details;
					var i = data.myid;
					var t = data.mytitle;
					if(action.indexOf('show') != -1){
						$(i).html(d);
						$(i).dialog("option","title", t);
						$(i).dialog("open");
						setButtons('.formButton');
						setButtonset('#adPosition');
						setDatepicker('.datePicker');
						loadEditor('adText');
						$('#colourPicker').farbtastic('#adTextColour');
						setUploadify('#adPhoto','#adFormSaveButton');
					} else {
						$(i).html(d);
						$(t).dialog("close");
						setIconButtons('.tableButton');
						setButtons('.formButton');
						setButtonset('#filterSet');
						setButtonset('#pageFilterSet');
					}
				}
			},'json'
		);
	}
}

function filterSideAds(){
	var params = new Object();
	params.action	= 'filter';
	params.status	= $('input[name="showAds"]:checked').val();
	params.page		= 8;
	$.post('/_xhr/side_ads.php', params,
		function(data){
			var e = data.error;
			if(e.length > 0){
				alert(e);
			}else{
				var d = data.details;
				var i = data.myid;
				var t = data.mytitle;
				$(i).html(d);
				setIconButtons('.tableButton');
				setButtons('.formButton');
				setButtonset('#filterSet');
				setButtonset('#pageFilterSet');
			}
		},'json'
	);	
}
function setUploadify(myID,submitID) {
	var myIDclean = myID.substr(1);
	$(myID).uploadify(
		{
		'uploader'	: '/javascripts/jquery.uploadify-v2.1.0/uploadify.swf',
		'script'	: '/_xhr/uploadify.php',
		'folder'	: '/uploads',
		'auto'		: true,
		'multi'		: false,
		'fileDesc'  : 'Only Image Files may be selected',
		'fileExt'	: '*.gif;*.jpg;*.jpeg;*.png',
		'onOpen'	: function(event,queueID,fileObj) {
							var tn = $(submitID).tagName;
							if(tn == "INPUT"){
								$(submitID).button("option", "disabled", true);
							} else if (tn == "A"){
								$(submitID).css('visibility', 'hidden');
							}
						},
		'onComplete': function(event, queueID, fileObj, response, data) {
							//alert('/uploads/'+fileObj.name);
							$(myID+'Uploader').hide();
							//$(myID).parent('td').append(fileObj.name);
							$(myID).val('/uploads/'+fileObj.name);
							//$(myID).attr('readonly','readonly');
							$(myID).show();
							
						},
		'onAllComplete': function(event, data) {
							var tn = $(submitID).tagName;
							if(tn == "INPUT"){
								$(submitID).button("option", "disabled", false);
							} else if (tn == "A"){
								$(submitID).css('visibility', 'visible');
							}
						},
		'onError'	: function(event, queueID, fileObj, errorObj) {
							alert(queueID+': '+fileObj.name +', error: '+errorObj.type+', '+errorObj.info);		
						}
		}
	);

}
function loadEditor(ckID){
	if(CKEDITOR.instances[ckID]){
		CKEDITOR.remove(CKEDITOR.instances[ckID]);
	}
	CKEDITOR.replace(ckID, {'toolbar':'Basic'});		
}
function setIconButtons(buttonClass){
	$('a'+buttonClass).each( function(){
		$(this).button({
			'text'	: false,
			'icons'	: {'primary':$(this).attr('rel')}		
		});		
	});	
}
function setButtons(buttonClass){
	$('a'+buttonClass).each( function(){
		var opts = new Object();
		opts.text = true;
		if($(this).attr('rel').length > 0){
			var i = new Object();
			i.primary = $(this).attr('rel');
			opts.icons = i;
		}
		$(this).button(opts);		
	});	
}

function setButtonset(myid){
	$(myid).buttonset();
}

function setDialogueArea(myid){
	$(myid).dialog(
		{
		'autoOpen'	: false,
		'width'		: 500
		}
	);
}

function setDatepicker(myid){
	$(myid).datepicker({
		'dateFormat': 'yy-mm-dd',
		'gotoCurrent'	: true
	});	
}
$(document).ready( function(){
	setDialogueArea('#adDialogueArea');
});
