/* 
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
var PKTopic = {
    commentArticle:function(articleId){
        $("comment_content").focus();
        var content = $("comment_content").value.replace(/^\s*/, "").replace(/\s*$/, "");
        var verify_code_name = "comment_article_verify";
        var verify_code = $F(verify_code_name);

        if (content == ""){
            $("message").innerHTML = NativeText.get("fill_comment");
            return;
        }
        
        if (verify_code.length != 4 || !PKUtil.validateVerifyCode(verify_code)){
            $("message").innerHTML = NativeText.get("invalid_verify_code");
            $(verify_code_name).value = ""
            PKUtil.getVerifyImage("comment_article_verify", 14, 20, 20);
            return;
        }
        var commenting_article = PKToonWeb.Container.get("commenting_article") ;
        if (commenting_article != undefined && commenting_article != null){
            return;
        }
        PKToonWeb.Container.set("commenting_article",true) ;
        var url = "/article/comment";
        var params =  PKUtil.authenticityToken() + 
        "&id=" + articleId + "&content=" + PKUtil.urlEncode(content) + "&verify_code=" + verify_code +
        "&verify_code_name=" + verify_code_name;
        new Ajax.Request(url,
        {
            method: "post",
            postBody: params,
            onSuccess: function(rsp){
                var r = rsp.responseText.evalJSON();
                if (r.result)
                {
                    $("comment_content").value = "";
                    $(verify_code_name).value = "";
                    $("message").innerHTML = "";
                    PKUtil.retrievePage("/article/comments/" + articleId + "/1", "article_comments");
                }
                else
                {
                    $("message").innerHTML = r.message;
                }
                PKUtil.getVerifyImage(verify_code_name, 14, 20, 20);
                PKToonWeb.Container.unset("commenting_article") ;
            },
            onFailure: function(rsp){
                $("message").innerHTML = NativeText.get("cant_access_server");
                PKToonWeb.Container.unset("commenting_article") ;
            }
        }
        );
    },
    topicMessage:function(topicId){
        $("msg").focus();
        var content = $("msg").value.replace(/^\s*/, "").replace(/\s*$/, "");
        var verify_code_name = "comment_article_verify";
        var verify_code = $(verify_code_name).value;
        if (content == ""){
            alert(NativeText.get("fill_message"));
            return;
        }
        if (verify_code.length != 4 || !PKUtil.validateVerifyCode(verify_code)){
            alert(NativeText.get("invalid_verify_code_login"));
            PKUtil.getVerifyImage(verify_code_name, 14, 20, 20);
            $(verify_code_name).value = ""
            return;
        }
        var url = "/topic/create_message";
        var params =  PKUtil.authenticityToken() +
        "&id=" + topicId + "&content=" + PKUtil.urlEncode(content)+ "&verify_code=" + verify_code +
        "&verify_code_name=" + verify_code_name;
        new Ajax.Request(url,
        {
            method: "post",
            postBody: params,
            onSuccess: function(rsp){
                var r = rsp.responseText;
                $(verify_code_name).value = "";
                if(r == "false"){
                    alert(NativeText.get("invalid_verify_code_login"));
                    PKUtil.getVerifyImage(verify_code_name, 14, 20, 20);
                }else{
                    $("msg").value="";
                    PKUtil.getVerifyImage(verify_code_name, 14, 20, 20);
                }

            },
            onFailure: function(){
                $(verify_code_name).value = "";
                PKUtil.getVerifyImage(verify_code_name, 14, 20, 20);
            }
        }
        );
    },
    deleteMessage:function(msgId){
        var msg = confirm(NativeText.get('delete_msg_confirm'));
        if(msg){
            var url = "/topic/delete_message";
            var params =  PKUtil.authenticityToken() + "&id=" + msgId;
            new Ajax.Request(url,{
                method: "post",
                postBody: params
            });
        }
    },
    addMessage:function(topicId){
        $("comment_content").focus();
        var content = $("comment_content").value.replace(/^\s*/, "").replace(/\s*$/, "");
        var verify_code_name = "comment_article_verify";
        var verify_code = $(verify_code_name).value;

        if (content == ""){
            alert(NativeText.get("fill_message"));
            return;
        }
        if (verify_code.length != 4 || !PKUtil.validateVerifyCode(verify_code))
        {
            alert(NativeText.get("invalid_verify_code"));
            PKUtil.getVerifyImage("comment_article_verify", 14, 20, 20);
            $(verify_code_name).value = ""
            return;
        }
        var url = "/topic/save_message";
        var params =  PKUtil.authenticityToken() +
        "&id=" + topicId + "&content=" + PKUtil.urlEncode(content) + "&verify_code=" + verify_code +
        "&verify_code_name=" + verify_code_name;
        new Ajax.Request(url,
        {
            method: "post",
            postBody: params,
            onSuccess:function(rsp){
                var r = rsp.responseText;
                $(verify_code_name).value = "";
                if(r == "false"){
                    alert(NativeText.get("invalid_verify_code"));
                    PKUtil.getVerifyImage(verify_code_name, 14, 20, 20);
                }else{
                    $("comment_content").value="";
                    PKUtil.getVerifyImage(verify_code_name, 14, 20, 20);
                }
            },
            onFailure: function(){
                $("comment_content").value="";
                PKUtil.getVerifyImage("comment_article_verify", 14, 20, 20);
            }
        }
        );
    }
}

