/**
 * @author HieuTV
 * @Date created 2009/07/11
 */
if (typeof objFAQ == 'undefined') {
    
var objFAQ = {
    
    /**
     * action click on category input
     * added by HieuTV 2009/06/03
     */
    onclickAddCategory : function(moduleId){
    	var data = 'moduleId=' + moduleId;
        var sUrl = GetID('site_root').value + "/category/selectCategory/";        
		var request = YAHOO.util.Connect.asyncRequest('POST', sUrl, {success:objFAQ.onclickAddCategoryFinish}, data);
    },
    /**
     * get data from server
     */
    onclickAddCategoryFinish : function(xmlhttp) {
        var objData = (xmlhttp.responseText).parseJSON();
        if (objData != null) {
			objFAQ.showOverlayCategory(objData.template);
        } else {
            alert('System error.');
        }
    },
    /**
     * action click on category input
     * added by HieuTV 2009/06/03
     */
    onclickTabFAQ : function(proId, faqId){
    	if (faqId > 0) {
    		GetID('listFAQ').className = 'tskt';
    		GetID('addFAQ').className = 'd_g';
    		GetID('viewParts_1').innerHTML = '';
			GetID('viewParts_1').innerHTML = GetID('add_question_for_product').innerHTML;
			return;
    		
    	} else {
    		GetID('listFAQ').className = 'd_g';
    		GetID('addFAQ').className = 'tskt';
    	}
    	var data = 'pro_id=' + parseInt(proId);		
    		data += '&faqId=' + parseInt(faqId);		
		var sUrl = GetID('site_root').value + "/faq/viewProduct";
		var request = YAHOO.util.Connect.asyncRequest('POST', sUrl, {success:objFAQ.onclickTabFAQFinish, argument:faqId}, data);    	
    },
    
    /**
	 * added by HieuTV 2009/07/16
	 */
    onclickTabFAQFinish: function(xmlhttp) {
    	var objData = (xmlhttp.responseText).parseJSON();
    	var fagId = xmlhttp.argument;
    	if (fagId > 0) {
    		GetID('viewParts_1').innerHTML = '';
			GetID('viewParts_1').innerHTML = objData.template;
		} else {
			GetID('viewParts').innerHTML = '';
			GetID('viewParts').innerHTML = objData.template;
		}
	},    
    
    /**
     * action click on category input
     * added by HieuTV 2009/06/03
     */
    onclickReplyQuestion : function(id, user_id){
    	if (user_id == 0) {
    		alert("Bạn phải đăng nhập trước khi trả lời câu hỏi này.");
    		return;
		}
		objFAQ.showOverlayReplyQuestion();
		GetID('dvContent').innerHTML = GetID('spContent').innerHTML;
    },
    
    /**
     * get data from server
     */
    onclickSelectCategory : function(o) {
        var id = o.id;
        var name = GetID(id).innerHTML;
        GetID('category_id').value = id;
        GetID('category_name').value = name;
        objFAQ.ovlCategory.hide();
    },    
    
    
    
    /**response data from server*/
	onclickAddQuestion : function() {
		var oEditor = FCKeditorAPI.GetInstance('content');        
		var data = 'content=' + encodeURIComponent(oEditor.GetHTML());
		YAHOO.util.Connect.setForm(GetID('frmQuestion'));
        var sUrl = GetID('site_root').value +"/faq/addQuestion";
		var request = YAHOO.util.Connect.asyncRequest('POST', sUrl, {success:objFAQ.onclickAddQuestionFinish}, data);
    },
    
    /**response data from server*/
	onclickAddQuestionFinish : function(xmlhttp) {
        var objData = (xmlhttp.responseText).parseJSON();
        if (parseInt(objData.intOK) > 0) {
            alert('Gửi câu hỏi thành công. Xin mời bạn tiếp tục đặt câu hỏi khác hoặc thực hiện chức năng khác.');
            objFAQ.resetFormQuestion();
        } else {
            alert(objData.strError);
        }
    },
    
    /**response data from server*/
	onclickDeleteFAQ : function(id) {
		if (!confirm('Bạn có muốn xóa câu hỏi này không?')) return;
		var data = 'faq_id=' + parseInt(id);
        var sUrl = GetID('site_root').value +"/faq/deleteQuestion";
		var request = YAHOO.util.Connect.asyncRequest('POST', sUrl, {success:objFAQ.onclickDeleteFAQFinish}, data);
    },
    
    /**response data from server*/
	onclickDeleteFAQFinish : function(xmlhttp) {
        var objData = (xmlhttp.responseText).parseJSON();
        if (parseInt(objData.intOK) > 0) {
            document.location = document.location.href;
        } else {
            alert(objData.strError);
        }
    },
    
    /**response data from server*/
	onclickDeleteAnswer : function(id) {
		if (!confirm('Bạn có muốn xóa câu trả lời này không?')) return;
		var data = 'id=' + parseInt(id);
        var sUrl = GetID('site_root').value +"/faq/deleteAnswer";
		var request = YAHOO.util.Connect.asyncRequest('POST', sUrl, {success:objFAQ.onclickDeleteAnswerFinish}, data);
    },
    
    /**response data from server*/
	onclickDeleteAnswerFinish : function(xmlhttp) {
        var objData = (xmlhttp.responseText).parseJSON();
        if (parseInt(objData.intOK) > 0) {
            document.location = document.location.href;
        } else {
            alert(objData.strError);
        }
    },
    
    /**response data from server*/
	onclickAddAnswer : function(id) {
		var oEditor = FCKeditorAPI.GetInstance('content');
		var data = 'content=' + encodeURIComponent(oEditor.GetHTML());
			data += '&id=' + id;
		YAHOO.util.Connect.setForm(GetID('frmQuestion'));
        var sUrl = GetID('site_root').value +"/faq/addAnswer";
		var request = YAHOO.util.Connect.asyncRequest('POST', sUrl, {success:objFAQ.onclickAddAnswerFinish}, data);
    },    
    /**response data from server*/
	onclickAddAnswerFinish : function(xmlhttp) {
        var objData = (xmlhttp.responseText).parseJSON();
        if (parseInt(objData.intOK) > 0) {
            alert('Gửi thành công câu trả lời.');
            document.location = document.location.href;
        } else {
            alert(objData.strError);
        }
    },
    
    /**action onclick update FAQ*/
	onclickUpdateFAQ : function() {
		var type = GetID('typeFAQ').value;
		var id = parseInt(GetID('detail_id').value);
		var oEditor = FCKeditorAPI.GetInstance('content');
		var data = 'content=' + encodeURIComponent(oEditor.GetHTML());
			data += '&id=' + parseInt(id);
			data += '&type=' + parseInt(type);

		if (type == 0) {
			data += '&title=' + GetID('title').value;
        }
        var sUrl = GetID('site_root').value +"/faq/updateFAQ";
		var request = YAHOO.util.Connect.asyncRequest('POST', sUrl, {success:objFAQ.onclickUpdateFAQFinish}, data);
    },
    
    /**response data from server*/
	onclickUpdateFAQFinish : function(xmlhttp) {
        var objData = (xmlhttp.responseText).parseJSON();
        if (parseInt(objData.intOK) > 0) {
        	alert("Update thành công");
            document.location = document.location.href;
        } else {
            alert(objData.strError);
        }
    },
    
    /**response data from server*/
	onclickEditFAQ : function(id, type) {
		GetID('detail_id').value = id;
		if (type == 0) {
			GetID('content').value = GetID('content_'+id).innerHTML;
			GetID('title').value = GetID('title_'+id).innerHTML;
			GetID('rowTitle').style.display = '';
			GetID('spContent').innerHTML = 'Nội dung câu hỏi';
			objFAQ.showOverlayEditFAQ();
		} else {
			GetID('content').value = GetID('content_'+id).innerHTML;
			GetID('rowTitle').style.display = 'none';
			GetID('spContent').innerHTML = 'Nội dung trả lời';
			objFAQ.showOverlayEditFAQ();
		}
    },
    
    resetFormQuestion : function() {
    	GetID('title').value = '';
    	var oEditor = FCKeditorAPI.GetInstance('content');
    	oEditor.SetHTML('');  
    	GetID('content').value = '';
    	GetID('category_id').value = '';
    	GetID('category_name').value = '';    	
    },
    
    /**show overlay select category*/	
	showOverlayCategory : function(temp) {
		objFAQ.ovlCategory = new YAHOO.widget.Panel("ovlCategory",
					{
						fixedcenter: true,
						constraintoviewport: true,
						width: "600px",
						visible:false,
						modal: true,
						draggable:true,
						close:true,
						underlay : "none",
						zIndex:"5"
					}
		);		
		EscapeOverlay(objFAQ.ovlCategory);
		document.body.className='yui-skin-sam';
		objFAQ.ovlCategory.render(document.body);
		GetID('ovlCategory').style.display = '';
		objFAQ.ovlCategory.setBody(temp);
		objFAQ.ovlCategory.show();
	},
    /**show overlay select category*/	
	showOverlayEditFAQ : function() {
		objFAQ.ovlEditFAQ = new YAHOO.widget.Panel("ovlEditFAQ",
					{
						fixedcenter: true,
						constraintoviewport: true,
						width: "600px",
						visible:false,
						modal: true,
						draggable:true,
						close:true,
						underlay : "none",
						zIndex:"5"
					}
		);		
		EscapeOverlay(objFAQ.ovlEditFAQ);
		objFAQ.ovlEditFAQ.render(document.body);
		GetID('ovlEditFAQ').style.display = '';
		objFAQ.ovlEditFAQ.show();
	},
	
    /**show overlay select category*/	
	showOverlayReplyQuestion : function(aryFAQ) {
		objFAQ.ovlReplyFAQ = new YAHOO.widget.Panel("ovlReplyFAQ",
					{
						fixedcenter: true,
						constraintoviewport: true,
						width: "600px",
						visible:false,
						modal: true,
						draggable:true,
						close:true,
						underlay : "none",
						zIndex:"5"
					}
		);		
		EscapeOverlay(objFAQ.ovlReplyFAQ);
		objFAQ.ovlReplyFAQ.render(document.body);
		GetID('ovlReplyFAQ').style.display = '';
		objFAQ.ovlReplyFAQ.show();
	}
};
}
