﻿//  ---------------------------------------
var onCompleteHandl = function(transport)
{
    res = transport.responseText;
    if(res.length > 50)
    {
        $('comments_block').update(transport.responseText);
        $('comments_block').show();
    }
}
//  ---------------------------------------
function validateCommentsForm()
{
    if(document.getElementById("cname").value.length == 0)
    {
        alert('يرجى تحديد الاسم');
        document.getElementById("cname").focus();
    }
    else if(document.getElementById("ctitle").value.length == 0)
    {
        alert('يرجى تحديد عنوان التعليق');
        document.getElementById("ctitle").focus();
    }
    else if(document.getElementById("cbody").value.length == 0)
    {
        alert('يرجى تحديد نص التعليق');
        document.getElementById("cbody").focus();
    }
    else
    {
        ajax_insert_comment();
    }
}
//  ---------------------------------------
var ajax_insert_commentReq = null;
var ajax_insert_comment = function()
{
    try
    {
        ajax_insert_commentReq.transport.abort();
    }
    catch(e)
    {
    }

    var cname = document.getElementById('cname').value;
    var cid = document.getElementById('cid').value;
    var ctitle = document.getElementById('ctitle').value;
    var cbody = document.getElementById('cbody').value;
    var nid = document.getElementById('content_id').value;
    var para = "cname=" + cname + "&cid=" + cid + "&ctitle=" + encodeURI(ctitle) + "&cbody=" + encodeURI(cbody) + "&nid=" + encodeURI(nid) + "&lang=1";

    ajax_insert_commentReq = new Ajax.Request('/ajax_app/comments/manage/insert-comment/' + get_time_stamp(),
    {
        method : 'post',
        parameters : para,
        onLoading:function(){$('comments_ajax_loader').show();},
        on503: function(){$('comments_ajax_loader').hide();},
        onFailure: function(){$('comments_ajax_loader').hide();},
        onSuccess : onCompleteHandl
    }
    );
}
//  ---------------------------------------
var commentsHandlerReq = null;
var commentsHandler = function(formID)
{
    var para, action;
    var fid = formID;
    if(typeof(formID) == 'undefined')
    {
        para = '';
        action = '/ajax_app/comments/manage/add-comment/'
    }
    else
    {
        para = $(formID).serialize();
        action = $(formID).readAttribute('action');
        $(fid).disable();
    }
    try{commentsHandlerReq.transport.abort();}
    catch(e){}
    commentsHandlerReq = new Ajax.Request(action ,//+ get_time_stamp() ,
    {
        method : 'post',
        parameters : para+'&contentId='+$('content_id').value,
        onLoading: function()
        			{
        				$('comments_ajax_loader').show();
        			},
        on503: function(){
                    setTimeout("$('"+fid+"').enable();commentsHandler('"+fid+"');",3000);
                },
        onFailure: function(){
            $('comments_ajax_loader').hide();
            $(fid).enable();
        },
        onSuccess : onCompleteHandl
    }
    );
}

//  ---------------------------------------

var availabilityHandlerReq = null;
var availabilityHandler = function(element)
{
    var name = $(element).readAttribute('name');
    var value = $F(element);
    $(element).disable();
    try
    {
        availabilityHandlerReq.transport.abort();
    }
    catch(e)
    {
    }
    availabilityHandlerReq = new Ajax.Request('/ajax_app/comments/user/check-' + name + '/',// + get_time_stamp(),
    {
        evalJS : true,
        method : 'post',
        parameters : name + '=' + value,
        on503: function(){
                    setTimeout("$('"+element+"').enable();availabilityHandler('"+element+"');",3000);
                },
        onFailure: function(){
            $('comments_ajax_loader').hide();
            $(element).enable();
        },
        onSuccess : function(transport)
        {
            eval(transport.responseText);
            $(element).enable();
        }
    }
    );
}
//  ---------------------------------------

var add_comment = function()
{
    new Ajax.Updater(
        'comments_block',
        '/ajax_app/comments/manage/add-comment/',
        {
            method : 'post',
            evalScripts: true,
            parameters : 'contentId='+$('content_id').value,
            on503: function()
            {
                setTimeout("add_comment();",3000);
            },
            onFailure: function()
            {
                setTimeout("add_comment();",3000);
            }
        });
}

window.onload = function()
{
try
{
	judgeuser();	
}
catch (err)
{

}
	add_comment();
}
