	
	jQuery.noConflict();
	
	jQuery(document).ready(function()
	{
		if(window.alphaPNG) alphaPNG();

		media_display();
		frm_upload();
		rate_video();
		flag_video();
		flag_comment();
		staf();
		flag();
		add_comment();
		contest_switcher();
		watcher_overview();
		
		// set focus on watcher login-form
		if (jQuery('#login_username')) jQuery('#login_username').focus();
		jQuery('a[@rel*=lightbox]').lightBox(); // Select all links that contains lightbox in the attribute rel
	});
	
	function media_display() {
		var youtube_player = '<object width="425" height="339"><param name="movie" value="http://www.youtube.com/v/[MEDIA_EXTRA]&hl=nl&autoplay=1"></param><param name="wmode" value="transparent"></param><embed src="http://www.youtube.com/v/[MEDIA_EXTRA]&hl=nl&autoplay=1" type="application/x-shockwave-flash" wmode="transparent" width="425" height="339"></embed></object>';
		
		jQuery.each(jQuery(".video_player"), function() {
			switch(jQuery(this).attr('media_type')) {
				case 'youtube':
					jQuery(this).html(youtube_player.replace(/\[MEDIA_EXTRA\]/g, jQuery(this).attr('media_extra')));	
				break;
			}
		});
	}
	
	function watcher_overview() {		
		jQuery(".watcher_verwijder").click(function()
		{
			if(confirm('Weet je zeker dat je dit item wilt verwijderen?')) {
				jQuery.ajax(
				{
					type: "POST",
					url: "/ajax/delete_video.ajax.php",
					data: "media_id="+jQuery(this).attr('media_id'),
					success: function(msg)
					{
						var media_id = parseInt(msg);
						if(media_id > 0) {
							jQuery("#overview_media_" + media_id).hide('0.75');
						}
					}
				});
			}
			
			return false;
		});
		
		jQuery(".watcher_blokkeer").click(ip_blokkeer);
		
		jQuery(".watcher_deblokkeer").click(ip_deblokkeer);
	}
	
	function ip_blokkeer()
	{
		if(confirm('Weet je zeker dat je dit IP (' + jQuery(this).attr('owner_ip') + ') wilt blokkeren?')) {
			jQuery.ajax(
			{
				type: "POST",
				url: "/ajax/blokkeer_ip.ajax.php",
				data: "owner_ip=" + jQuery(this).attr('owner_ip'),
				success: function(msg)
				{
					var owner_ip = msg;
					if(owner_ip != '') {
						jQuery("a[@owner_ip= '" + owner_ip + "']").unbind('click', ip_blokkeer);
						jQuery("a[@owner_ip= '" + owner_ip + "']").text('IP Deblokkeren (' + owner_ip + ')');
						jQuery("a[@owner_ip= '" + owner_ip + "']").attr('href', function(arr) { var url = this.toString(); url = url.replace("block", "deblock"); return url; });
						jQuery("a[@owner_ip= '" + owner_ip + "']").removeClass('watcher_blokkeer');
						jQuery("a[@owner_ip= '" + owner_ip + "']").addClass('watcher_deblokkeer');
												
						watcher_overview();
					}
				}
			});
		}
		
		return false;
	}
	
	function ip_deblokkeer()
	{
		if(confirm('Weet je zeker dat je dit IP (' + jQuery(this).attr('owner_ip') + ') wilt deblokkeren?')) {
			jQuery.ajax(
			{
				type: "POST",
				url: "/ajax/deblokkeer_ip.ajax.php",
				data: "owner_ip="+jQuery(this).attr('owner_ip'),
				success: function(msg)
				{
					var owner_ip = msg;
					if(owner_ip != '') {
						jQuery("a[@owner_ip= '" + owner_ip + "']").unbind('click', ip_deblokkeer);
						jQuery("a[@owner_ip= '" + owner_ip + "']").text('IP Blokkeren (' + owner_ip + ')');
						jQuery("a[@owner_ip= '" + owner_ip + "']").attr('href', function(arr) { var url = this.toString(); url = url.replace("deblock", "block"); return url; });
						jQuery("a[@owner_ip= '" + owner_ip + "']").removeClass('watcher_deblokkeer');
						jQuery("a[@owner_ip= '" + owner_ip + "']").addClass('watcher_blokkeer');
												
						watcher_overview();
					}
				}
			});
		}
		
		return false;
	}
	
	function frm_upload()
	{
		var id = jQuery("#frm_upload select[@name='upl_type']");
		
		// check value if page is reloaded and save select value
		frm_upload_switch(jQuery(id).val());
	
		// check value when selected value changes
		jQuery(id).change(function()
		{
			frm_upload_switch(jQuery(this).val());
		});
		
		// check form for valid/invalid values
		frm_upload_check();
	}

	function frm_upload_switch(val)
	{
		switch(val)
		{
			case 'foto':
				jQuery('#upl_photo1').css('display', 'block');
				jQuery('#upl_photo2').css('display', 'block');
				jQuery('#upl_photo3').css('display', 'block');
				jQuery('#upl_video_url').css('display', 'none');
				jQuery('#upl_video_file').css('display', 'none');
				break;
			case 'url':
				jQuery('#upl_photo1').css('display', 'none');
				jQuery('#upl_photo2').css('display', 'none');
				jQuery('#upl_photo3').css('display', 'none');
				jQuery('#upl_video_url').css('display', 'block');
				jQuery('#upl_video_file').css('display', 'none');
				break;
			case 'video':
				jQuery('#upl_photo1').css('display', 'none');
				jQuery('#upl_photo2').css('display', 'none');
				jQuery('#upl_photo3').css('display', 'none');
				jQuery('#upl_video_url').css('display', 'none');
				jQuery('#upl_video_file').css('display', 'block');
				break;
		}
	}
	
	function frm_upload_check()
	{
		jQuery('#frm_upload').submit(function()
		{
			var loadingHTML = '<img src="img/upload_ico_loader.gif" alt="" />';
			loadingHTML+= '<p style="font-size: 12px; color: #ffffff;">';
			loadingHTML+= 'Bezig met uploaden...<br />een moment geduld a.u.b.';
			loadingHTML+= '</p>';
			
			/* do form validation over here */
			var error = '';
			
			// error is false when form is valid
			error = false;
			
			// get the upload type
			var upload_type = jQuery("#frm_upload select[@name='upl_type']").val();
			
			// check the fields
			jQuery.each(jQuery("#frm_upload input[@type!= 'submit'][@name!= 'upl_website'], #frm_upload textarea"), function() {
				if (jQuery(this).attr('name') == 'upl_huisregels' && jQuery(this).attr('checked') != true) {
					jQuery(this).parent().addClass('error');
					error = true;
				} else if (upload_type == 'foto' && (jQuery(this).attr('name') == 'upl_video_url' || jQuery(this).attr('name') == 'upl_video_file' || jQuery(this).attr('name') == 'upl_photo2' || jQuery(this).attr('name') == 'upl_photo3')) {
					// Do nothing	
				} else if (upload_type == 'video' && (jQuery(this).attr('name') == 'upl_video_url' || jQuery(this).attr('name') == 'upl_photo1' || jQuery(this).attr('name') == 'upl_photo2' || jQuery(this).attr('name') == 'upl_photo3')) {
					// Do nothing	
				} else if (upload_type == 'url' && (jQuery(this).attr('name') == 'upl_video_file' || jQuery(this).attr('name') == 'upl_photo1' || jQuery(this).attr('name') == 'upl_photo2' || jQuery(this).attr('name') == 'upl_photo3')) {
					// Do nothing	
				} else if (jQuery(this).val() == '') {
					jQuery(this).parent().addClass('error');
					error = true;
				} else if (jQuery(this).parent().hasClass('error')) {
					jQuery(this).parent().removeClass('error');
				}
			});
	
			// Get page scroll
			var arrPageScroll = ___getPageScroll();
			
			if (error == false)
			{
				// IE6 bug: hide all select boxes (z-index bug)
				if (jQuery.browser.msie && jQuery.browser.version == '6.0' ) { jQuery('select').css('visibility', 'hidden'); }
			
				// create overlay element
				jQuery('<div></div>').attr(
				{
					id: 'dimm'
				})
				.css(
				{
					position: 'absolute',
					top: '0', left: '0',
					width: jQuery(window).width() + 'px',
					height: jQuery(document).height() + 'px',
					zIndex: '999',
					background: '#000'
				})
				.appendTo(document.body).fadeTo('slow', '0.75');

				// create loadingMessage element
				jQuery('<div>'+loadingHTML+'</div>').attr(
				{
					id: 'loadingMessage'
				})
				.css(
				{
					display: 'none'
				})	
				.appendTo(document.body);

				// position loadingMessage element
				jQuery('#loadingMessage').css(
				{
					position: 'absolute',
					zIndex: '1000',
					top: ((jQuery(window).height()- jQuery('#loadingMessage').height()) / 2) + arrPageScroll[1],
					left: (jQuery(window).width() - jQuery('#loadingMessage').width()) / 2,
					display: 'block'
				});

			}
			
			if(error) {		
				return false;
			}
		
		});
	}
	
	function rate_video()
	{
		jQuery('#rate_video li a').click(function()
		{
			
			
			if (!jQuery('#rate_video li a').hasClass('active'))
			{
				// 'up' or 'down' is set in the title tag
				var rating = jQuery(this).attr('title');
				if(jQuery('#rate_video li a.'+rating).hasClass('disabled')) {
					return false;
				}
				// get media_id for reference
				var media_id = jQuery('#video_info').attr('media_id');
			
				jQuery.ajax(
				{
					type: "POST",
					url: "/ajax/rate_video.ajax.php",
					data: "rating="+rating+"&media_id="+media_id,
					success: function(msg)
					{
						jQuery('.kudos_'+parseInt(media_id)).text(msg);

						jQuery('#rate_video li a').addClass('active'); // JvdE: was 'disabled'
						jQuery('#rate_video li a.'+rating).removeClass('active'); // JvdE: was 'disabled'
						jQuery('#rate_video li a.'+rating).addClass('active');
					
						// reload most popular
						jQuery("#most_popular").load("/ajax/most_popular.ajax.php");
					}
				});
			}
			
			return false;
		});
	}
	
	function flag_video()
	{
		jQuery('#detail #flag_video').toggle(function() {
				jQuery('#flag').show();
			}, function() {
				jQuery('#flag').hide();
			} 
		
		);
		/*
		jQuery('#detail #flag_video').click(function()
		{
			if (!jQuery(this).hasClass('active'))
			{
				var media_id = jQuery('#video_info').attr('media_id');
				
				jQuery.ajax(
				{
					type: "POST",
					url: "/ajax/flag_video.ajax.php",
					data: "media_id="+media_id,
					success: function(msg)
					{
						jQuery('#detail #flag_video').addClass('active');
					}
				});
				
				
			}
			
			return false;
		});
		*/
	}
	
	function flag_comment()
	{
		jQuery('#comments .comment .ok').click(function()
		{
			var obj_id = jQuery(this).parent().attr('id');
			var comment_id = jQuery(this).parent().attr('comment_id');
			
			if (!jQuery('#'+obj_id+' div.ok').hasClass('active'))
			{
				jQuery.ajax(
				{
					type: "POST",
					url: "/ajax/flag_comment.ajax.php",
					data: "comment_id="+comment_id,
					success: function(msg)
					{
						jQuery('#'+obj_id+' div.ok').addClass('active');
					}
				});
			}
			return false;
		});
	}
	
	function staf()
	{
		if(jQuery("#staf").length > 0) {
			ClearInputEvents('staf_name');
			ClearInputEvents('staf_from');
			ClearInputEvents('staf_to');
		}
		
		jQuery('#staf').submit(staf_submit);
	}
	
	function staf_submit()
	{
		var staf_name = jQuery("#staf input[@name='staf_name']").val();
		var staf_from = jQuery("#staf input[@name='staf_from']").val();
		var staf_to = jQuery("#staf input[@name='staf_to']").val();
		var navigatie_id = jQuery("#staf input[@name='staf_navigatie_id']").val();
	
		jQuery('#staf_placeholder').load(
			"/ajax/staf.ajax.php",
			{
				name: staf_name, 
				from: staf_from,
				to: staf_to,
				navigatie_id: navigatie_id
			}, 
			function() {
				ClearInputEvents('staf_name');
				ClearInputEvents('staf_from');
				ClearInputEvents('staf_to');
				
				jQuery('#staf').submit(staf_submit);
			}
		);
					
		return false;
	}
	
	function flag()
	{
		if(jQuery("#flag").length > 0) {
			ClearInputEvents('flag_name');
			ClearInputEvents('flag_email');
			ClearInputEvents('flag_comment');
		}
		
		jQuery('#flag').submit(flag_submit);
	}
	
	function flag_submit()
	{
		var flag_name = jQuery("#flag input[@name='flag_name']").val();
		var flag_email = jQuery("#flag input[@name='flag_email']").val();
		var flag_comment = jQuery("#flag textarea[@name='flag_comment']").val();
		var navigatie_id = jQuery("#flag input[@name='flag_navigatie_id']").val();
		
		jQuery('#flag_placeholder').load(
			"/ajax/flag.ajax.php",
			{
				name: flag_name, 
				email: flag_email,
				comment: flag_comment,
				navigatie_id: navigatie_id
			}, 
			function() {
				ClearInputEvents('flag_name');
				ClearInputEvents('flag_email');
				ClearInputEvents('flag_comment');
				
				jQuery('#flag').submit(flag_submit);
				
				jQuery('#flag').show();
			}
		);
					
		return false;
	}
	
	function add_comment()
	{
		if(jQuery("#comment").length > 0) {
			ClearInputEvents('comment_name');
			ClearInputEvents('comment_email');
			ClearInputEvents('comment_comment');
			ClearInputEvents('comment_captcha');
		}
	}
	
	function contest_switcher()
	{
		jQuery('#frm_contests_select').change(function()
		{
			var val = jQuery("#frm_contests_select").val();
			window.location = val;
		});
	}
	
	function ___getPageScroll()
	{
		var xScroll, yScroll;
	
		if (self.pageYOffset) {
			yScroll = self.pageYOffset;
			xScroll = self.pageXOffset;
		} else if (document.documentElement && document.documentElement.scrollTop) { // Explorer 6 Strict
			yScroll = document.documentElement.scrollTop;
			xScroll = document.documentElement.scrollLeft;
		} else if (document.body) { // all other Explorers
			yScroll = document.body.scrollTop;
			xScroll = document.body.scrollLeft;	
		}
		
		arrayPageScroll = new Array(xScroll,yScroll);
		return arrayPageScroll;
	}

	/* CLEAR INPUT ON FOCUS
	----------------------------------------------------------------*/
	function ClearInputEvents(id) {
		obj = document.getElementById(id);
		// JvdE: Added support for form fields only having a name tag
		if (obj == null) {
			obj = document.getElementsByName(id)[0];
		}
		if(obj != null) {
			if(obj.value) { 
				obj.startvalue = obj.value;
				obj.onfocus = function() { if(this.value == this.startvalue) { this.value = '';}}
				obj.onblur =  function() { if(this.value == '') { this.value = this.startvalue; }}
			} else {  
				val = '';
			}
		}
	}
