﻿var addthis_config = { data_ga_property: 'UA-810927-2', "data_track_clickback": true, ui_language: "ar" };
var article_details_qr = {
    init: function (aid) {
        article_details_qr.showLoaderImage(aid);
        article_details_qr.getData(aid);

    },
    showLoaderImage: function (aid) {
        jQuery("#article_detail_" + aid).empty().html("<div id='popup_loader' dir='ltr'><img src='/web/images/elaphImages2010/loading.gif' />&nbsp;&nbsp;Loading ...</div>");
    },
    getData: function (aid) {
        jQuery.getJSON("/web/webform/article_details.aspx?id=" + aid, function (json) {
            article_details_qr.processJson(json, aid);
        })
    },
    processJson: function (json, aid) {

        jQuery("#popup_loader").hide();
        var article_html = "<div id='popup_kicker'>" + json.article[0].kicker + "</div>"
        article_html += "<div id='popup_heading'><a target='_top'  href='" + json.article[0].perm_link + "'>" + json.article[0].heading + "'</a></div>"
        article_html += "<div id='popup_date_author'>"
        article_html += "<span id='popup_author'>"
        article_html += (json.article[0].author === "") ? json.article[0].organization : json.article[0].author
        article_html += "</span><span id='popup_date'>" + json.article[0].pubdate + "</span></div>"
        article_html += "<div id='popup_summary'>" + json.article[0].summary1 + "</div>"
        article_html += "<div id='popup_permlink'><a target='_top' href='" + json.article[0].perm_link + "'>اقرأ النص بالكامل</a></div>"


        $("#cArticle").val(json.article[0].id);
        var data = jQuery("#article_detail_content_data").html(article_html);
        jQuery("#addthisMain").attr("addthis:url", json.article[0].perm_link);
     
        var tbx = $("#addthisMain");
        tbx.attr("addthis:url", json.article[0].perm_link );
        tbx.append('<a class="addthis_button_facebook_like" fb:like:layout="button_count"></a>');
        tbx.append('<a class="addthis_button_tweet" tw:via="elaph"></a>');
        tbx.append('<a class="addthis_counter addthis_pill_style" id="atcounter"></a>');
        addthis.toolbox("#addthisMain", addthis_config);
        
        addthis.counter("#atcounter");


        var carhtml = jQuery("#articles_car");
        var ad;
        var arli;
        jQuery.each(json.article, function (i, item) {
			ad = jQuery("<div />", { id: item.id }).addClass("c_" + item.id).click(function () { article_details_qr.getArticle(item, this); return false; });
			ad.append("<img width='135' height='90' src=" + item.pic1 + " />");
			ad.append("<span>" + item.heading + "</span>");
			arli = jQuery("<li />").append(ad).appendTo(carhtml);
        });

        $(".item_selected").removeClass("item_selected");
        $("#" + json.article[0].id).addClass("item_selected");

        jQuery(".carousel").jCarouselLite({
            btnNext: ".next",
            btnPrev: ".prev",
            scroll: 1,
            visible: 4
        });

    },
    getArticle: function (a_obj, obj) {

        if( $("#cArticle").val() == a_obj.id)
        {
            return false;
        }
        $.ajax({ url: 'http://platform.twitter.com/widgets.js', dataType: 'script', cache:true});
       
        var article_html = "<div id='popup_kicker'>" + a_obj.kicker + "</div>"

        article_html += "<div id='popup_heading'><a href='" + a_obj.perm_link + "'>" + a_obj.heading + "'</a></div>"
        article_html += "<div id='popup_date_author'>"
        article_html += "<span id='popup_author'>"
        article_html += (a_obj.author === "") ? a_obj.organization : a_obj.author
        article_html += "</span><span id='popup_date'>" + a_obj.pubdate + "</span></div>"
        article_html += "<div id='popup_summary'>" + a_obj.summary1 + "</div>"
        article_html += "<div id='popup_permlink'><a target='_top' href='" + a_obj.perm_link + "'>اقرأ النص بالكامل</a></div>"
        $("#cArticle").val(a_obj.id);
        var data = jQuery("#article_detail_content_data").html(article_html);
        var tbx = $("#addthisMain");
        tbx.empty();
        tbx.attr("addthis:url", a_obj.perm_link );
        tbx.append('<a class="addthis_button_facebook_like" fb:like:layout="button_count"></a>');
        tbx.append('<a class="addthis_button_tweet" tw:via="elaph"></a>');
        tbx.append('<a class="addthis_counter addthis_pill_style" id="atcounter"></a>');
        addthis.toolbox("#addthisMain");
        
        addthis.counter("#atcounter");
       
        $(".item_selected").removeClass("item_selected");

        $(".c_" + a_obj.id).addClass("item_selected");
    }

};

var elaph_comment = {
    init: function (aid, tabid) {
        jQuery(".comments_tabs>li").each(function () {
            jQuery(this).removeClass("act");
        });
        jQuery("#" + tabid).parent().addClass("act");
        var stype = tabid.replace("comments_", "")
        elaph_comment.showLoaderImage();
        elaph_comment.getComments(aid, stype);
    },
    showLoaderImage: function () {
        jQuery("#commentsDivCont").empty().html("<div dir='ltr' class='w' style='height:100px;'><img src='/web/images/elaphImages2010/loading.gif' />&nbsp;&nbsp;Loading ...</div>");
    },
    getComments: function (aid, stype) {
        jQuery.getJSON("/Web/WebForm/commentsFeed.aspx?id=" + aid + "&s=" + stype, function (json) {
            elaph_comment.processJson(json, stype);
        })
    },
    processJson: function (json, stype) {
        if (!json) {
            jQuery("#Commentcount").html(0);
            jQuery("#comment_1").show();
            jQuery("#comment_2").show();
            jQuery("#commentsDivCont").empty();
            return;
        }
        else {
            var x = 1;
            jQuery("#Commentcount").html(json.total);
            jQuery("#commentsDivCont").empty();
            jQuery("#comment_1").show();
            jQuery("#comment_2").show();
            if (json.comments.length == 0) {
                if (stype == "ru") {
                    jQuery("#commentsDivCont").html("لا توجد تعليقات بهذا التصنيف");
                }
                else if (stype == "rd") {
                    jQuery("#commentsDivCont").html("لا توجد تعليقات بهذا التصنيف");
                }
                else {
                    jQuery("#commentsDivCont").html("لا توجد تعليقات بهذا التصنيف");
                }
            }
            else {
                jQuery.each(json.comments, function (i, item) {
                    elaph_comment.getCommentDiv(i, item, json.aid, x);
                    x++;
                });
            }
        }
    },
    getCommentDiv: function (i, item, aid, x) {
        var cDiv = jQuery("<div />", {id: 'comment_' + item.id}).addClass("commentBox").addClass((i % 2 === 0) ? "w" : "g");
        var sub = jQuery("<span />", {html: item.subject}).addClass('sub');
        jQuery("<a />", {name: item.id, html: (item.pid === 0) ? x + '.' : ''}).addClass('bmrk').append(sub).appendTo(cDiv);
        var sep = jQuery("<span />", {html: '-'}).addClass('sep')
        var sender = jQuery("<span />", {
            html: (item.sender.provider) ? "<a target='_blank' href='" + item.sender.profileURL + "' >" + item.sender.name + "</a>" : item.sender.name
        }).addClass('sender').append(sep);
        var dt = jQuery("<span />", {dir: 'ltr', html: item.commentDate}).addClass('cmt_dt');
        var sp = jQuery("<span />").addClass("senderdt").append(sender).append(dt);
        if (item.sender.provider) {
            var ssURL = jQuery("<a />", {target: '_blank', href: item.sender.profileURL}).addClass("ssURL").append(jQuery("<img />", {src: item.sender.imgURL}));
            var ssImgSpan = jQuery("<span />").addClass("ssImg").append(ssURL);
            jQuery("<div />").addClass("cmt_info").append(ssImgSpan).append(sp).appendTo(cDiv);
        }
        else {
            jQuery("<div />").addClass("cmt_info").append(sp).appendTo(cDiv)
        }
        jQuery("<span />", {html: item.commentText}).addClass('cmt').appendTo(cDiv);
        var cReply = jQuery("<div />").addClass('commentReply').appendTo(cDiv);
        jQuery("<span />", { id: "rating_" + item.id }).addClass("ratingcont").appendTo(cReply);
        jQuery("<span />", { id: "ratingr_" + item.id }).addClass("ratingr").appendTo(cReply);
        var rf = jQuery("<span />").addClass("reply_flag").appendTo(cReply);
        jQuery("<img />", {src: '/Web/Images/comments/flag3.png', title: 'أبلغ عن إساءة', alt: 'أبلغ عن إساءة', onClick: "FlagBoxprompt('" + item.id + "'); return false; "}).appendTo(rf);
        if (item.pid == 0) {
            jQuery("<img />", {src: '/Web/Images/comments/reply3.png', title: 'إرســال رد', alt: 'إرســال رد', onClick: "ReplyBoxprompt('عادل','" + aid + "','" + item.id + "'); return false; " }).appendTo(rf);
        }
        if (item.pid != 0) {
            cDiv.addClass('child');
            if (jQuery("#comment_" + item.pid).attr('class') == "w")
                cDiv.removeClass("w").addClass("g")
            else
                cDiv.removeClass("g").addClass("w")

            cDiv.appendTo(jQuery("#comment_" + item.pid));
        }
        else {
            cDiv.appendTo("#commentsDivCont");
        }
        elaph_comment.render_rating(item.id, aid, item.ratingP, item.ratingN);
    },
    render_rating: function (acId, aid, ratingP, ratingN) {
        var rc_div = jQuery("#rating_" + acId);
        rc_div.empty();
        var c = elaph_comment.getsetc("g", acId);
		ratingN = ratingN * -1;
        rc_div.append(jQuery("<span />", { html: ratingP }).addClass("rated_text_good rated_text"));
		if ((c != null)) {
            var c_up = (c === "+") ? "rated_up" : "rated_not_up";
            var c_down = (c === "-") ? "rated_down" : "rated_not_down";
            rc_div.append(jQuery("<span />").addClass("rating").append(jQuery("<span />", { html: '&nbsp;' }).addClass("rate").addClass(c_up)))
            rc_div.append(jQuery("<span />", { html: " قيّم التعليق" }).addClass("rating_title"));
			rc_div.append(jQuery("<span />").addClass("rating").append(jQuery("<span />", { html: '&nbsp;' }).addClass("rate").addClass(c_down)))
	   }
        else {
	        rc_div.append(jQuery("<span />").addClass("rating").append(jQuery("<a />", { href: '##', html: '&nbsp;' }).addClass("rate rate_up").click(function () { elaph_comment.addrating("+", parseInt(aid), acId); return false; })))
            rc_div.append(jQuery("<span />", { html: " قيّم التعليق" }).addClass("rating_title"));
			rc_div.append(jQuery("<span />").addClass("rating").append(jQuery("<a />", { href: '##', html: '&nbsp;' }).addClass("rate rate_down").click(function () { elaph_comment.addrating("-", parseInt(aid), acId); return false; })))
		}
		rc_div.append(jQuery("<span />", { html: ratingN }).addClass("rated_text_bad rated_text"));
    },
    getsetc: function (ctype, acId, val) {
        var c = elaph_helper.getCookie("ecr");
        if (ctype == "g") {
            if (c == null) {
                return null;
            }
            else {
                var cpos = c.indexOf(acId + "+;");
                if (cpos == -1) {
                    cpos = c.indexOf(acId + "-;");
                    if (cpos == -1)
                        return null;
                    else
                        return "-";
                }
                else {
                    return "+";
                }
            }
        }
        else {
            c = (c) ? c.split(";") : [];
            var expireDate = new Date();
            expireDate.setFullYear(2030);
            c.push(val)
            c = c.join(";") + ";";
            elaph_helper.setCookie("ecr", c, expireDate);
        }
    },
    addrating: function (r, aid, id) {
        var acr = new Object();
        acr.r = (r === "+") ? 1 : 0;
        acr.aid = aid;
        acr.id = id;

        jQuery.ajax({
            type: "POST",
            url: "/web/templates/ArticleCommentWebService.asmx/addComment2",
            data: "{acr :'" + JSON.stringify({ 'acr': acr }) + "'}",
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: function (result) { elaph_comment.commentPosted(result, r, aid, id); },
            error: function (result) { alert(result.status + ' ' + result.statusText); }
        });
    },
    commentPosted: function (result, r, aid, acId) {
        var cval = acId + r;
		var ra = result.d.split("-");
        elaph_comment.getsetc("s", acId, cval);
        elaph_comment.render_rating(acId, aid, ra[0], ra[1]);
        elaph_comment.update_rating(result.d, acId);
    }
};


var elaph_helper = {
    setCookie: function (szName, szValue, szExpires, szPath, szDomain, bSecure) {
        var szCookieText = escape(szName) + '=' + escape(szValue);
        szCookieText += (szExpires ? ';expires=' + szExpires.toGMTString() : '');
        szCookieText += (szPath ? ';path=' + szPath : '');
        szCookieText += (szDomain ? ';domain=' + szDomain : '');
        szCookieText += (bSecure ? ';secure' : '');
        document.cookie = szCookieText;
    },
    getCookie: function (szName) {
        var szValue = null;
        if (document.cookie) {
            var arr = document.cookie.split((escape(szName) + '='));
            if (2 <= arr.length) {
                var szValue = unescape(arr[1].split(';')[0]);
                if (szValue.length > 1 && szValue.charAt(0) == '"' && szValue.charAt(szValue.length - 1) == '"') {
                    szValue = szValue.substring(1, szValue.length - 1);
                }
            }
        }
        return szValue;
    },
    deleteCookie: function (szName) {
        var tmp = elaph_helper.getCookie(szName);
        if (tmp) elaph_helper.setCookie(szName, tmp, (new Date(1)));
    }
}


function FlagBoxprompt(ID) {

    if (parent.location == window.location) {
        var str = "/Web/Webform/FlagComment2010Ahmed.aspx?ArticleCommentId=" + ID;
        FlagBoxwindow = dhtmlmodal.open('FlagBox', 'iframe', str, 'إرســال إعتراض', 'width=500px,height=170px,left=350px,top=150px,resize=0,scrolling=0')
    }
    else {
        window.parent.FlagBoxprompt(ID);
    }
}

function ReplyBoxprompt(TxT, articleID, commentID) {

    if (parent.location == window.location) {
        var str = "/Web/Webform/NewComment2010Ahmed.aspx?ArticleId=" + articleID + "&ArticleCommentId=" + commentID;
        ReplyBoxwindow = dhtmlmodal.open('ReplyBox', 'iframe', str, 'إضــافة تعليق', 'width=680px,height=410px,left=250px,top=100px,resize=0,scrolling=0')
    }
    else {
        window.parent.ReplyBoxprompt(TxT, articleID, commentID);

    }
}

