$(document).ready(function() {

// ----------------------------- display on click of photos,videos side Tabs -------------------- //	
	$('#videos_tab').click(function(){
		
		$('div#user_photos').hide();
		$('div#user_photos:eq()>div').hide();
				
		$('#side_tabs').hide();
			$('div#user_videos:eq(0)>div').show();
			$('div#user_videos').slideDown('slow');
			$('#photos_banner').hide();
			$('#videos_banner').show();
			$('#side_tabs').fadeIn('slow');
	});
	
	$('#photos_tab').click(function(){

		$('#user_videos').hide();
		$('#user_videos:eq(0)>div').hide();
		
		$('#side_tabs').hide();
			$('div#user_photos:eq(0)>div').show();
			$('div#user_photos').slideDown('slow');
			$('#videos_banner').hide();
			$('#photos_banner').show();
			$('#side_tabs').fadeIn('slow');
	});	
// -------------- Events

	$('.event > div').not('.event_header').hide();

	$('.event_header h1').hover(
		function(){
		$(this).css({color: "#003399"});
	},
	function(){
		$(this).css({color: "#333"});
	}
	);

	$('.event_header').toggle(
		function(){
	  	$(this).find('.arrow').css({background: "transparent url(images/arrow.gif) no-repeat scroll 0px 0px"});
			$(this).next().slideDown('fast');
			$(this).next().next().show('fast');
		},
		function(){
  		$(this).find('.arrow').css({background: "transparent url(images/arrow.gif) no-repeat scroll 0px -20px"});
			$(this).next().next().hide();
			$(this).next().slideUp('fast');
		}
	);
	
	// Cancel Button
	$('.cancel_event').click(function(){
		var d = $(this).parents().find('form').parent();
		$(d).slideUp();		
	});		
	
	// Hover effect on edit commands
	$('.edit_commands').children().hover(
		function(){
			$(this).css({background: "pink"});
		},
		function(){
			$(this).css({background: "none"});
		}
	);
	
	$('.add_event_photo').click(function(){		
//		$('.edit_commands').nextAll().hide();
		$(this).parent().next().slideToggle('fast');		
	});	
	
	$('.add_event_video').click(function(){
//		$('.edit_commands').nextAll().hide();
		$(this).parent().next().next().slideToggle('fast');
	});
	
	$('.e_event').click(function(){
//		$('.edit_commands').nextAll().hide();
		$(this).parent().next().next().next().slideToggle('fast');	
	});	
	
	$('.delete_event').click(function(){
//		$('.edit_commands').nextAll().hide();
		$(this).parent().next().next().next().next().slideToggle('fast');	
	});	
		
// -------------- Show user photos upload form	window		
		// $('#upload_photo').hide();
		var p_upload_hide = true;
		$('#up_user_photos').click(function(){
			$(this).parents().find('.warning').hide();
			if(p_upload_hide){
				$('#up_user_photos').text(' - close');
				$('#upload_photo').load('upload_photo.html');
				$('#upload_photo').fadeIn('fast');
				p_upload_hide = false;
			}else{			
				$('#upload_photo').fadeOut('fast');
				$('#up_user_photos').removeClass('clicked').text(' + Add Photo');
				p_upload_hide = true;
			}
		});
// -------------- Show user videos upload form	window		
		// $('#upload_video').hide();
		var v_upload_hide = true;
		$('#up_user_videos').click(function(){
			$(this).parents().find('.warning').hide();
			if(v_upload_hide){
				$('#up_user_videos').text(' - close');
				$('#upload_video').load('upload_video.html');
				$('#upload_video').fadeIn('fast');
				v_upload_hide = false;
			}else{			
				$('#upload_video').fadeOut('fast');
				$('#up_user_videos').removeClass('clicked').text(' + Add video');
				v_upload_hide = true;
			}
		});		
		
// ----------------------------- users pagination ----------------------------- //

				var u_current_page = 1;
				$('#u_prev').hide();				
				$('#u_prev').click(function(){
					$.get('load_media.php',{'page_cmd': 'allUsers','page': $('#u_prev_page').text()},
					function (data){
						$('#users_loader').html(data);
						
						--u_current_page;
						if(u_current_page == 1){
							$('#u_prev').hide();					
						}else{
							$('#u_prev_page').html(u_current_page - 1);
						}
						$('#users_current').html(u_current_page);
						$('#u_next_page').html(u_current_page + 1);
						$('#u_next').show();									
					});
					return false;
				});								
				$('#u_next').click(function(){

					$.get('load_media.php',{'page_cmd': 'allUsers','page': $('#u_next_page').text()},
					function (data){
						$('#users_loader').html(data);
						// $('#left_loader').hide();
						++u_current_page;
						if(u_current_page < $('#u_total_pages').text()){
							$('#u_next_page').html(u_current_page + 1);
						}else{
							$('#u_next').hide();				
						}
						$('#u_prev').show();
						$('#users_current').html(u_current_page);
						$('#u_prev_page').html(u_current_page - 1);								
					});
					return false;
				});

// ----------------------------- Graduado users pagination ----------------------------- //

				var gu_current_page = 1;
				$('#gu_prev').hide();				
				$('#gu_prev').click(function(){
					$.get('load_media.php',{'page_cmd': 'allGraduados','page': $('#gu_prev_page').text()},
					function (data){
						$('#gusers_loader').html(data);
						
						--gu_current_page;
						if(gu_current_page == 1){
							$('#gu_prev').hide();					
						}else{
							$('#gu_prev_page').html(gu_current_page - 1);
						}
						$('#gusers_current').html(gu_current_page);
						$('#gu_next_page').html(gu_current_page + 1);
						$('#gu_next').show();									
					});
					return false;
				});								
				$('#gu_next').click(function(){

					$.get('load_media.php',{'page_cmd': 'allGraduados','page': $('#gu_next_page').text()},
					function (data){
						$('#gusers_loader').html(data);
						// $('#left_loader').hide();
						++gu_current_page;
						if(gu_current_page < $('#gu_total_pages').text()){
							$('#gu_next_page').html(gu_current_page + 1);
						}else{
							$('#gu_next').hide();				
						}
						$('#gu_prev').show();
						$('#gusers_current').html(gu_current_page);
						$('#gu_prev_page').html(gu_current_page - 1);								
					});
					return false;
				});
						
		
// ----------------------------- photos pagination ----------------------------- //
	
		var p_current_page = 1;
		$('#p_prev').hide();				
		$('#p_prev').click(function(){
			$('#left_loader').show();
			$.get('load_media.php',{'page_cmd': $('#photo_page').text(), 'page': $('#p_prev_page').text(), 'usr': $('#usr').text()},
			function (data){
				$('#photo_loader').html(data);
				$('#left_loader').hide();
				--p_current_page;
				if(p_current_page == 1){
					$('#p_prev').hide();					
				}else{
					$('#p_prev_page').html(p_current_page - 1);
				}
				$('#photos_current').html(p_current_page);
				$('#p_next_page').html(p_current_page + 1);
				$('#p_next').show();									
			});
			return false;
		});								
		$('#p_next').click(function(){
			$('#left_loader').show();
			$.get('load_media.php',{'page_cmd': $('#photo_page').text(), 'page': $('#p_next_page').text(), 'usr': $('#usr').text()},
			function (data){
				$('#photo_loader').html(data);
				$('#left_loader').hide();
				++p_current_page;
				if(p_current_page < $('#p_total_pages').text()){
					$('#p_next_page').html(p_current_page + 1);
				}else{
					$('#p_next').hide();				
				}
				$('#p_prev').show();
				$('#photos_current').html(p_current_page);
				$('#p_prev_page').html(p_current_page - 1);								
			});
			return false;
		});

		
		// ----------------------------- videos pagination ----------------------------- //

	var v_current_page = 1;
	$('#v_prev').hide();

	$('#v_prev').click(function(){
		$('#left_loader').show();
		$.get('load_media.php',{'page_cmd': $('#video_page').text(), 'page': $('#v_prev_page').text(), 'usr': $('#usr').text()},
		function (data){
			$('#video_loader').html(data);
			$('#left_loader').hide();
			--v_current_page;
			if(v_current_page == 1){
				$('#v_prev').hide();					
			}else{
				$('#v_prev_page').html(v_current_page - 1);
			}
			$('#videos_current').html(v_current_page);
			$('#v_next_page').html(v_current_page + 1);
			$('#v_next').show();									
		});
		return false;
	});								
	$('#v_next').click(function(){
		$('#left_loader').show();
		$.get('load_media.php',{'page_cmd': $('#video_page').text(),'page': $('#v_next_page').text(), 'usr': $('#usr').text()},
		function (data){
			$('#video_loader').html(data);
			$('#left_loader').hide();
			++v_current_page;
			if(v_current_page < $('#v_total_pages').text()){
				$('#v_next_page').html(v_current_page +1)
			}else{
				$('#v_next').hide();
			}
			$('#v_prev').show();
			$('#videos_current').html(v_current_page);
			$('#v_prev_page').html(v_current_page - 1);								
		});
		return false;
	});
// ----------------------------- scraps pagination ----------------------------- //
		
	var s_current_page = 1;
	var t_pages = $('#s_total_pages').text();
	$('#s_prev').hide();

	$('#s_prev').click(function(){
		$('#right_loader').show();
		$.get('load_media.php',{'page_cmd': 'scraps', 'page': $('#s_prev_page').text(), 'usr': $('#usr').text()},
		function (data){
			$('#scraps_loader').html(data);
			$('#right_loader').hide();
			--s_current_page;
			if(s_current_page == 1){
				$('#s_prev').hide();					
			}else{
				$('#s_prev_page').html(s_current_page - 1);
			}
			$('#scraps_current').html(s_current_page);
			$('#s_next_page').html(s_current_page + 1);
			$('#s_next').show();									
		});
		return false;
	});								
	$('#s_next').click(function(){
		$('#right_loader').show();
		$.get('load_media.php',{'page_cmd': 'scraps', 'page': $('#s_next_page').text(), 'usr': $('#usr').text()},
		function (data){
			$('#scraps_loader').html(data);
			$('#right_loader').hide();
			++s_current_page;
			if(s_current_page < $('#s_total_pages').text()){					
				$('#s_next_page').html(s_current_page + 1)
			}else{
				$('#s_next').hide();
			}
			$('#s_prev').show();
			$('#scraps_current').html(s_current_page);
			$('#s_prev_page').html(s_current_page - 1);								
		});
		return false;
	});



	


// ----------------------------- Form windows  ---------------------------- //
	// Submit email to get forgotten password 
	$('#fg_pass').submit(function(){
		$.post('fg_pass_2.php', $(this).find('input').serialize(),function(data)
				{
					$('#pass_message').html(data);
				});
		return false;
	});
	
// Show edit profile photo form window
	// $('#e_photo_form').hide();
	var e_upload_hide = true;
	$('#e_photo_button').click(function(){
		$(this).parents().find('.warning').hide();
		if(e_upload_hide){
			$('#e_photo_button').text(' - close');
			$('#e_photo_form').load('profile_img.html');
			$('#e_photo_form').fadeIn('slow');
			e_upload_hide = false;
		}else{			
			$('#e_photo_form').fadeOut('slow');
			$('#e_photo_button').text(' + Edit Photo');
			e_upload_hide = true;
		}
	});

// -------------- Show edit profile info form window	------------
	// $('#e_prf_form').hide();
	var e_prf_hide = true;
	$('#e_prf_button').click(function(){
	
		$(this).parents().find('.warning').hide();
		if(e_prf_hide){
			if($('#change_pass').is(':checked')){
				$('#change').show();
			}else{
				$('#change').hide();
			}
			$('#e_prf_form').fadeIn('fast');
			$('#e_prf_button').text(' - close');
			e_prf_hide = false;
			// show edit password options
			$('#change_pass').click(function(){
				if(this.checked){
					$('#change').show();
				}else{
					$('#change').hide();
				}
			})			
		}else{
			// $('#change_pass').checked = false;
			$('#e_prf_form').fadeOut('fast');
			$('#e_prf_button').text(' + Edit Profile');		
			e_prf_hide = true;
		}
	});	
	$('#cancel').click(function(){
		$('#e_prf_form').fadeOut('fast');
		$('#e_prf_button').text(' + Edit Profile');	
		e_prf_hide = true;
	});

	
	// ******************** Show Edit Scrap form window
		var e_scrap_hide = true;
		$('.edit_scrap').click(function(){
			if(e_scrap_hide){
				$(this).next().slideDown();
				e_scrap_hide = false;
			}			
		});
		
		$('.c_scrap').click(function(){
			$(this).parent().parent().slideUp();
			e_scrap_hide = true;
		});
		
		
	
// Show classes page photos upload form			
	$('#upload_photo').hide();
	var upload_hide = true;
	$('#up_class_photos').click(function(){
		$(this).parents().find('.warning').hide();
		if(upload_hide){
			$('#up_class_photos').text(' - close');
			$('#upload_photo').load('upload_class_photo.html');
			$('#upload_photo').fadeIn();
			upload_hide = false;
		}else{			
			$('#upload_photo').fadeOut();
			$('#up_class_photos').removeClass('clicked').text(' + Add Photo');
			upload_hide = true;
		}
	});	

	
// -------------- Show Scrap Tips Window 
		// $('#scrap_tips').hide();
		var scrap_hide = true;
	$('#tips').click(function(){
		if(scrap_hide){
			$(this).attr("src", "images/close.jpg");	
			$('#scrap_tips').load('scrap_tips.html');
			$('#scrap_tips').fadeIn('slow');		
			scrap_hide = false;
		}else{		
			$('#scrap_tips').fadeOut('slow');
			$(this).attr("src","images/tips.jpg");
			scrap_hide = true;
		}	
	});
	

// ----------------------------- Form Input Validation ---------------------------- //
	
// substitue required for key
		var requiredFlag = ' * ';
		var requiredKey = $('input.required:first').next('span').text(); 
		requiredKey = requiredFlag + requiredKey.replace(/^\((.+)\)$/,"$1");
	
// Add class to labels of required fields
		$('form :input').filter('.required')
		.next('span').text(requiredFlag).end()
		.prev('label').addClass('req-label');

// Only allow letter,numbers, @ on selected input fields
	$('#user_name').alphanumeric();
	$('#email').alphanumeric({allow:"@."});
	$('#password').alphanumeric();
	$('#edit_pass').alphanumeric();
	$('#confirm_password').alphanumeric();
	$('#confirm_edit_pass').alphanumeric();
	
	
// Validate form on blur
$('form :input').blur(function(){
		//  Remove error messages
		$(this).parents('li:first').removeClass('warning')
		.find('p.error-message').remove();
		// Validate required input fields	
		if($(this).is('.required')){
			var $listItem = $(this).parents('li:first');
			if(this.value == ''){
				var errorMessage = ' This is a required field';		
				$('<p></p>')
			 .addClass('error-message')
			 .text(errorMessage)
			 .appendTo($listItem);
				$listItem.addClass('warning');
			}
		}		
			
		// Validate Correct email format
		if($(this).is('#email')){
			var $listItem = $(this).parents('li:first');
			if(this.value != '' && !/.+@.+\.[a-zA-Z]{2,4}$/.test(this.value)){
				var errorMessage = 'Please use proper e-mail format';
				$('<p></p>')
				.addClass('error-message')
				.text(errorMessage)
				.appendTo($listItem);
				$listItem.addClass('warning');
			}
		}		
		
		// Check if user name already exists in the database				
		if($(this).is('#user_name')){
			var $listItem = $(this).parents('li:first');
			$.post('check_user_name.php', {'user_name': $(this).val()}, function(data){	
				if(data != ""){
					var errorMessage = 'Username ' + data + ' taken. Please pick another one.';
				$('<p></p>')
				.addClass('error-message')
				.text(errorMessage)
				.appendTo($listItem);
				$listItem.addClass('warning');
				}
			});						
		}		

		// Check if passwords match						
		if($(this).is('#confirm_password')){ 	
			var pass = $(this).parents().find('#password').val();
			var $listItem = $(this).parents('li:first');
			if(this.value != pass){
				var errorMessage = 'Passwords do not match';
				$('<p></p>')
				.addClass('error-message')
				.text(errorMessage)
				.appendTo($listItem);
				$listItem.addClass('warning');
			}
		}		

}); // End validate form on blur

// if javascript is not enabled the form will be disabled
$('#submit').removeAttr("disabled");

$('#sumbit').click(function(){
	$(this).attr("disabled", "disabled");
});
	
// Validate form again on submission
$('form').submit(function(){
		
		$('#submit-message').remove();
		$(':input.required').trigger('blur');

		//get Total number of warnings
		var  numWarnings = $('.warning', this).length;
		if(numWarnings){
			var fieldList = [];
			
			$('.warning label').each(function(){
				fieldList.push($(this).text());
			});
			$('#submit').removeAttr("disabled");
			$('<div></div>').attr({'id': 'submit-message', 'class': 'warning'})
			.append('Please correct errors with ' + numWarnings + ' fields:<br />') 
			.append('&bull; ' + fieldList.join('<br />&bull; '))
			.insertBefore('#submit');
			return false;
		}		
});
	
});