/**************************************/
/***** Q&A Functions Essentials ******/
/**************************************/

this.qna = function(){
	postForm_ask();
	postForm_answer();
	toggle_add_images();
	trigger_reply();
	loadRegister();
	loadDelete();
	
	if (($('.item-ask').length > 0)&&($('.item-answer').length == 0)) {
		
		// get the path name from the url.
		var pathname = window.location.pathname;
		//alert(pathname);
		
		// split the value and put them in an array.
		var array = pathname.split('/');
		
		// get the last item in the array. -> .slice( start, [ end ] )
		var last = array.slice(-1);
		//var lastEl = $(arrA).last()[0];
		
		// get the second to last item in the array. -> .slice( start, [ end ] )
		var secondlast = array.slice(-2,-1);
		//var secondlast = array.slice((array.length-2),(array.length-1));
		
		//  load the login form and pass the value.
		loadLogin(http_root+rp_cms+'form_login.php?pg_url='+secondlast+'&ask_id='+last);
	}
	//delete_qna();
	
	/*
	$('textarea').prettyComments({
		animate: true,
		animationSpeed: 'normal',
		maxHeight: 500
	});
	*/
		
	//$('textarea').elastic();

	/*
	alert($('input[type=file]').length);
	$(this).focus(function () {
		if($('input[type=file]').length == 3)
		{
			//alert('hide me!');
			$('input[type=file]').attr('disabled', 'disabled');
		}
		});
	*/
	}
	
/*****************/

this.trigger_reply = function(){	
	$(".reply-qna").click(function(){
		var target = $(this).parent().parent().parent().parent().next();
		
		//var current = $(this).parent().parent().parent().parent().next().css('background-color', 'red');
		//class_current = current.attr("class");
		//alert(class_current);
		
		var admin_textarea = $(".form-answer-wrapper textarea", target);
		$(admin_textarea).trigger("focus");
		return false;
	});
}

/*****************/

this.delete_qna = function(){	
	$(".delete-qna").click(function(){
		//var target = $(this).parent().parent().parent().parent().parent();
		//var catagory = $(this).attr('class');
		var catagory = $(this).attr("class").split(' ').slice(1,2);
		alert(catagory);
		var target = $(this).parent().parent().parent().parent();
		target.slideUp();
		
		//var target = $(this).parent().parent().parent().parent().parent().css('background-color', 'red');
		//class_current = current.attr("class");
		//alert(class_current);
		
		return false;
	});
}

/*****************/

this.postForm_answer = function(){
	
	var admin_avatar = $(".form-answer-wrapper > .left:first-child");
	var admin_buttons = $(".form-answer-wrapper form .item-form:last-child");
	var admin_textarea = $("textarea[name=anw_content]");
	
	admin_textarea.css({
		height: '15px',
		overflow: 'hidden', 
		display: 'block'
		});
	admin_avatar.hide();
	admin_buttons.hide();
	
	admin_textarea.focus(function () {
        
		//$(this).parentsUntil('.item-answer-wrapper').css('background-color', 'red');
		$(this).elastic();
		var current = $(this).parentsUntil('.item-answer-wrapper');
		var textarea_value = $(this).val();
		current.prev().show();
		current.next().show();
		
		if ( textarea_value == 'Write a reply...') {
			$(this).css({
				height: '',
				minHeight: '100px'
			});
		}
		
		$(this).blur(function(){
			var textarea_value = $(this).val();
			if ( textarea_value == 'Write a reply...') {
				$(this).css({
				height: '15px',
				minHeight: '15px'
				});
				current.prev().hide();
				current.next().hide();
				current.unbind('submit');
			}
		})

		current.submit(function(){
			
			var path = $(this).attr('action');
			//alert(path);
			
			var processing = $('.processing', this);
			processing
				.css({
					margin:"5px 0px 0px 0px",
					position:"absolute",
					visibility:"visible"
					});
					
			processing.html('<div><p><img src="'+http_root+rp_image_global+img_loader+'"/> loading</p></div>');
			
			$.post(path, current.serialize(),function(xml){
				//alert(current.serialize());
				processing
				.css({
					visibility:"hidden"
					});
				processXML_answer(xml,current);
			});
			current.unbind('submit');
			$('input[name=anw_submit]', current).attr('disabled', 'disabled').css({opacity:0.4});
			return false;
		});

		$('input[name=anw_cancel]', current).one('click', function() {
			//alert(current.serialize());
			clearFormElements(current);
			return false;
		});
		
    });
}

this.processXML_answer = function(xml,current){ //  ==  function addMessages(xml) { 
	$("#popup_result").remove();
	$(document.body).append("<div id=\"popup_result\" class=\"popup\"></div>");
		var target = $('#popup_result');
		var scrollTop = $(window).scrollTop();
		var scrollLeft = $(window).scrollLeft();
		var width = 300;
		var top = 200;
		var marginLeft = "-"+ ((scrollLeft + width)/2);
		target
			.css({
				top:(scrollTop + top) + "px", 
				left:"50%",
				marginLeft:marginLeft + "px",
				width:width + "px",
				zIndex:"11",
				display:"none"
				});
				
	target.load(http_root+rp_layout+"result.php", {}, function(){
	
	$("error", xml).each(function(){
		
		/*
		var parent = current.parent().siblings(":first").css('background-color', 'red');
		
		//var id = current.parent().prev().attr("class");
		
		var class_current = current.parent().attr("class");
		var class_previous = current.parent().prev().attr("class");
		
		if(class_current != class_previous) alert(class_current);
		
		

		var test = $('<div><p><img src="'+http_root+rp_image_global+img_loader+'"/> loading</p></div>').insertAfter(parent);
		
		
		test.hide();
		test.slideDown("slow", function(){
			//clearFormElements(current);
		});
		
		*/
		

		var elementid = $(this).attr('elementid');
		var message = $(this).attr('message');
		$("#"+elementid+"_label").addClass('error');
		$(".result").append("<img src='"+http_root+rp_image_global+"attention.png' /> <b>" + message + "</b> <br />");
			target.fadeIn('slow', function(){	
				closePopup(target);
			});	
		});
		
	$("result",xml).each(function() {
		
		clearFormElements(current);
		
		var html = $(this).attr('html');
		var class_current = current.parent().attr("class");
		var class_previous = current.parent().prev().attr("class");
		
		if(class_current == class_previous) {
			//alert('the same');
			var item_previous = current.parent().prev().prev();
			var item_append = $(html).insertAfter(item_previous.next());
			item_append.hide();
			item_append.slideDown("slow");
		} else {
			//alert('not the same');
			var item_previous = current.parent().siblings(":first");
			var item_append = $(html).insertAfter(item_previous);
			item_append.hide();
			item_append.slideDown("slow");
		}
		
		loadDelete();
		});
		
		
		$('input[name=anw_submit]', current).attr('disabled', '').css({opacity:1});
		
	});		
}
	
/*****************/

this.postForm_ask = function(){
//$('input[type=file]').attr('disabled', 'disabled');
/*
	var options = { target: '#output' }; 

    $('#form_qna_ask').submit(function() { 
        $(this).ajaxSubmit(options); 
        return false; 
    });
*/
	var ask_textarea = $("textarea[name=ask_content]");
	ask_textarea.css({
		overflow: 'hidden', 
		display: 'block'
	});
	
	ask_textarea.focus(function () {
		//$(this).autogrow();
		$(this).prettyComments();
	});
	
	$('input[name=ask_cancel]').click(function() {
		//alert('1');
		clearFormElements('#form_qna_ask');
		$('input:file').MultiFile('reset');
		return false;
	});
	
	$('#form_qna_ask').submit(function() {
	
		//$('input[type=submit]', this).attr('disabled', 'disabled');
		$('#popup_result').remove();
		var processing = $('#qna .processing');
		processing
			.css({
				margin:"0px 0px 0px 0px",
				position:"absolute",
				visibility:"visible"
				});
		//alert($(this).serialize());
		
		processing.html('<div><p><img src="'+http_root+rp_image_global+img_loader+'"/> loading</p></div>');
		$(this).ajaxSubmit({ 
			target: '#output',
			
			// dataType identifies the expected content type of the server response 
			dataType:  'xml', 
	 
			// success identifies the function to invoke when the server response 
			// has been received 
			success: processXML_ask 
		});
		$('input[name=ask_submit]').attr('disabled', 'disabled').css({opacity:0.4});
        return false; 
	});	
}

this.processXML_ask = function(xml){ //  ==  function addMessages(xml) { 	

	
	//alert($('input[type=file]').length);
	/*
	if($('input[type=file]').length >= 3)
	{
		//alert('disable me!');
		$('form input[type=file]').attr('disabled', 'disabled');
	}
	*/
	
	$("label").removeClass('error-qna');
	var processing = $('#qna .processing');
	processing.css({
					visibility:"hidden"
					});
	
	$(document.body).append("<div id=\"popup_result\" class=\"popup\"></div>");
	var target = $('#popup_result');
	var scrollTop = $(window).scrollTop();
	var scrollLeft = $(window).scrollLeft();
	var width = 400;
	var top = 200;
	var marginLeft = "-"+ ((scrollLeft + width)/2);
	target
		.css({
			top:(scrollTop + top) + "px", 
			left:"50%",
			marginLeft:marginLeft + "px",
			width:width + "px",
			zIndex:"11",
			display:"none"
			});

	target.load(http_root+rp_layout+"result.php", {}, function(){
	$("error", xml).each(function(){
		var elementid = $(this).attr('elementid');
		var message = $(this).attr('message');
		//alert(elementid);
		$("#"+elementid+"_label").addClass('error-qna');
		$(".result").append("<img src='"+http_root+rp_image_global+"attention.png' /> <b>" + message + "</b> <br />");
			target.fadeIn('slow', function(){	
				closePopup(target);
				$('form *[title]').inputHint();
				$('input[name=ask_submit]').attr('disabled', '').css({opacity:1});
			});	
		});
	$("result", xml).each(function(){
		var message = $(this).attr('message');
		$(".result").append("<img src='"+http_root+rp_image_global+"info.png' /> <b>" + message + "</b> <br />");
			target.fadeIn('slow', function(){	
				closePopup(target);
				clearFormElements('form');
				$('.form *[title]').inputHint();
				$('input:file').MultiFile('reset');
				$('input[name=ask_submit]').attr('disabled', '').css({opacity:1});
			});	
		});
		
	
	});
}

/*****************/

this.toggle_add_images = function(xml){ 
	$("#ask_add_images").hide();
	$("#add_images_heading a").click(function(){
		$("#ask_add_images").slideToggle("fast");
		return false;
	});
}

/*****************/
