$(document).ready(function(){

	function fadeToggle(node) {
		if (node.css('display') == 'block' ) {
			node.fadeOut('normal');
		} else {
			node.fadeIn('normal');
		}
	}

	$('.js-hide').click( function(event) {
			event.preventDefault();
			$(this).parents('.js-hidebox').slideUp('slow');
		}
	);
	
	$('.js-reset').click( function(event) {
			event.preventDefault();
			// $(this).parents('form').reset();
		}
	);
	
	$('.js-submit').click( function(event) {
			event.preventDefault();
			error = false;
			
			$(this).parents('form').children('fieldset').children('input[type="text"], textarea').each( function() {
				if ($(this).hasClass('v-noempty')) {
					if (!validateNoempty($(this).val())) {
						$(this).animate( { opacity: 0.2 }, 175 ).animate( { opacity: 1 }, 150 );
						error = true;
					}
					
				} else if ($(this).hasClass('v-text')) {
					if (!validateText($(this).val())) {
						$(this).animate( { opacity: 0.2 }, 175 ).animate( { opacity: 1 }, 150 );
						error = true;
					}
				} else if ($(this).hasClass('v-mail')) {
					if (!validateEmail($(this).val())) {
						$(this).animate( { opacity: 0.2 }, 175 ).animate( { opacity: 1 }, 150 );
						error = true;
					}
				}
			});
			
			if (!error) {
				var node = $(this).parents('.js-hidebox');
				node.slideUp('slow');
				$(this).parents('form').submit();
			}
		}
	);		

	$('a.js-add-comment').click( function(event) {
			var node = $(this).parents('.x-post').next('.js-comment').children('.f-add-comment');
			
			var tarea = node.children('form').children('.w-right').children('.js-ta-comm')	
			
			var ax = 'js-add-comment js-img-id-';
			var k = $(this).attr('class');
			k = '{img}' + k.substr(ax.length, 255) + '{/img}';

			tarea.val( tarea.val() + k );

			if (node.css('display') == 'none') {
				node.slideDown('slow');
			}
		}
	);
	
	$('a[href="#f-add-comment"]').click( function(event) {
			event.preventDefault();

			var node = $(this).parents('.x-comment').next('.f-add-comment');
			node.slideToggle('slow');
		}
	);

	$('a[href="#f-send-to-friend"]').click( function(event) {
			event.preventDefault();

			var node = $(this).parents('.x-comment').next().next('.f-send-to-friend');
			node.slideToggle('slow');
		}
	);

	$('a[href="#hide-comments"]').click( function(event) {
			event.preventDefault();
			
			var ax = new Array();
			ax[0] = 'Hide'; ax[1] = 'Show';
	
			var node = $(this).parents('.x-comment').children('.js-hide-comment'); 
				
			if ( $(this).html() == ax[0] ) { $(this).html(ax[1]); } else { $(this).html(ax[0]); }  
	
			node.slideToggle('slow');
		}
	);

	

});


// COMMENTS SCROLLER
$(document).ready(function(){

	var scroll_inc, scroll_offs, scroll_speed, scroll_busy;

	scroll_busy = false;
	scroll_inc = 28; /* line-height */
	scroll_speed = 333;

	//var debug = document.getElementById('debug');
	//debug.innerHTML = scroll_node.css('top');

	$('a.js-scrolldown').click(function(event) {
			event.preventDefault();
			if (scroll_busy) { return; }

			var scroll_offs = $('.x-comment .w-scroll').height() - $('.w-hide').height() - scroll_inc;
			
			var	scroll_node = $(this).parents('.w-action').prev('.w-hide').children('.w-scroll');
		
			if (parseInt(scroll_node.css('top')) >= -scroll_offs) {
				scroll_busy = true;				
				scroll_node.stop();				

				scroll_move = Math.floor( Math.abs(parseInt(scroll_node.css('top'))) + scroll_inc);

				scroll_node.animate(
					{ top: -scroll_move + 'px' },
					scroll_speed,
					function() { scroll_busy = false; }
				);

			} else {
				scroll_busy = false; 
				scroll_node.stop();
			}
		}
	);
	
	$('a.js-scrollup').click(function(event) {
			event.preventDefault();
			if (scroll_busy) { return; }

			var	scroll_node = $(this).parents('.w-action').prev('.w-hide').children('.w-scroll');
			
			if (parseInt(scroll_node.css('top')) <= -1) {
				scroll_busy = true;				
				scroll_node.stop();				
			
				scroll_move = Math.floor( parseInt(scroll_node.css('top')) + scroll_inc);
			
				scroll_node.animate(
					{ top: scroll_move + 'px' },
					scroll_speed,
					function() { scroll_busy = false; }
				);

			} else {
				scroll_busy = false; 
				scroll_node.stop();
			}
			
		}
	);

});

// FORM HELPER
$(document).ready(function(){

 function populateElement(selector, defvalue) {

		$(selector).focus(function() {
				if ($(selector).val() == defvalue) {
						$(selector).val('');
				}
		});
		
		$(selector).blur(function() {
				if ($.trim($(selector).val()) == '') {
						$(selector).val(defvalue);
				}
		});
	};

	$('input[type="text"], input[type="password"], textarea').each(function() {
			populateElement($(this), $(this).val())
		}
	);
	
	/* */
	
	var _char_count = 500;
	
	$('textarea').keydown( function() {
			var node = $(this).parents('form').children('.w-left').
												 children('.w-action').children('.js-count-char').children('em');

			if ($(this).val().length >= _char_count) {
				$(this).val( $(this).val().substr(0, _char_count) );
			}
			
			node.html( _char_count - $(this).val().length );

		}
	);
});

// RIGHT MENU
$(document).ready(function(){
	$('.w-side .menu-lvl-2 .afx2').click(function(event) {
		event.preventDefault();
		
		node = $(this).parents('.menu-lvl-2').children('ul');
		if (node.css('display') == 'block') {
			$(this).removeClass('selected');
		} else {
			$(this).addClass('selected');
		}
		
			node.slideToggle('normal');		
	});
	
});

// ---

function validateNoempty(text) {
	if (!text || text.length < 3) return false;	
	
	return true;
}

function validateText(text) {
	if (!validateNoempty(text)) { return false; }
	
	var re_text = /[^A-Za-z0-9\s]/;
	if (text.match(re_text) != null ) {
		return false;
	} 
	return true;
}

function validateEmail(email) {
	if (!validateNoempty(email)) { return false; }
	
    var splitted = email.match("^(.+)@(.+)$");
    if(splitted == null) return false;
    if(splitted[1] != null ) {
      var regexp_user=/^\"?[\w-_\.]*\"?$/;
      if(splitted[1].match(regexp_user) == null) return false;
    }
    
    if(splitted[2] != null) {
      var regexp_domain=/^[\w-\.]*\.[A-Za-z]{2,4}$/;
      if(splitted[2].match(regexp_domain) == null) {
	    var regexp_ip =/^\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]$/;
	    if(splitted[2].match(regexp_ip) == null) return false;
      }
      return true;
    }
    return false;
}

// ---

function comments(x)
{
	var xmlHttp;
	try
	  {
		// Firefox, Opera 8.0+, Safari
		xmlHttp=new XMLHttpRequest();
	  }
	catch (e)
	  {
	  // Internet Explorer
	  try
	    {
		  xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
	    }
	  catch (e)
	    {
	    try
	      {
	    	xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
	      }
	    catch (e)
	      {
	    	alert("Your browser does not support AJAX!");
	    	return false;
	      }
	    }
	  }
	 
	  xmlHttp.onreadystatechange=function()
	    {
	    
		  if(xmlHttp.readyState==4)
	      {
	
			  document.getElementById("com_container_"+x).innerHTML= xmlHttp.responseText;
	      
		  }
		  
	    
		}
		
		
	  
	  
	  
	  var url=_site_url+"index.php/comments";
	  url=url+"/?post_id="+x+"&rand="+Math.random()*9999999999999;
	  xmlHttp.open("GET",url,true);
	  xmlHttp.send(null);
	  
	  
	  
	
			
				var temp = new Array();
						var temp2 = new Array();
						temp = _site_url.split('://www.');
						temp2 = _site_url.split('://');
						
						
						if(temp[1])
							{
								
								var newlink=temp[0]+"://"+temp[1];
								
							}
							else
							{
							
								var newlink=temp2[0]+"://www."+temp2[1];
							
							}
							
							_site_url=newlink;
							var idd=x; 
							comments(idd);
			
		  
		  
	  
	  
	  
	  
	  
}



function comments_nums(x)
{

var xmlHttp;
try
  {
  // Firefox, Opera 8.0+, Safari
  xmlHttp=new XMLHttpRequest();
  }
catch (e)
  {
  // Internet Explorer
  try
    {
    xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
    }
  catch (e)
    {
    try
      {
      xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
      }
    catch (e)
      {
      alert("Your browser does not support AJAX!");
      return false;
      }
    }
  }
 
  xmlHttp.onreadystatechange=function()
    {
    
	if(xmlHttp.readyState==4)
      {

      document.getElementById("comsnums_"+x).innerHTML=xmlHttp.responseText;
	  
      }
    }
  var url=_site_url+"index.php/commentsnums";
  url=url+"/?post_id="+x+"&rand="+Math.random()*9999999999999;
  xmlHttp.open("GET",url,true);
  xmlHttp.send(null);

}

