Btv.Templating.Register([{id:"News.NewsModule",fnc:function($data){var $text = [];var _write = function(text) {$text.push((typeof text == "number")?text:(text||""));};with($data){ Main = function(o, ht) {var $text = [];var _write = function(text) {$text.push((typeof text == "number")?text:(text||""));};_write('\r\n\n<div class=\"btv_module\">\n<div class=\"btv_module_head\"><div class=\"c\"></div></div>\n<div class=\"btv_module_body\">\n<div class=\"c\">\n<h2 ');_write(o.Elem('ModuleTitle'));_write('  style=\"');_write(o.Style());_write('\">');_write(o.InnerHTML());_write('</h2>\n<div class=\"sort-by\">\n<div ');_write(o.Elem('ModuleViewLinks'));_write('  style=\"');_write(o.Style());_write('\">');_write(o.InnerHTML());_write('</div>\n</div>\n<div ');_write(o.Elem('ModuleViewBody'));_write('  style=\"');_write(o.Style());_write('\">');_write(o.InnerHTML());_write('</div>\n<div style=\"clear:both;\"></div>\n</div>\n</div>\n<div class=\"btv_module_foot\"><div class=\"c\"></div></div>\n</div>\n');;return($text.join(""));};
new (function(d, ui) {
var oThis = Btv.Lang.Extend(this, Btv.Cst.BaseTemplate, [$data, true]);
var htUI = ui;
var $el = oThis.El;

    var oElMan = oThis.ElMan();
    var currentState = 0;
    oThis.d = d;
    
    function Render()
    {
        BuildViewLinks();
        BuildBody();
        return (htUI.Main(oThis, {}));
    }
    
    oThis.GetModuleViewTemplate = function(i)
    {
        if (!htModuleViewTemplates[i])
        {
            var out = {};
            oThis.RunTemplateSimple(d.moduleViews[i].templateID, d.moduleViews[i].templateData || {}, out);
            htModuleViewTemplates[i] = out.value;
        }
        return(htModuleViewTemplates[i])
    }
    var htModuleViewTemplates = {};
    
    oThis.ChangeView = function(index)
    {
        var oldState = currentState;
        currentState = index;
        
        $('moduleViewLink.' + oldState).className = '';
        $('moduleViewLink.' + currentState).className = 'strong';
        
        BuildBody();
        Btv.Ads.Change();
    }

    function BuildViewLinks(){

        oElMan.InnerHTML("ModuleTitle", d.moduleTitle);
    
        var aHtml = new Array();
        for(i = 0; i < d.moduleViews.length; i++){
            aHtml.push($F('<a id="moduleViewLink.{0}" onclick="{2}({0});" class="{3}"><span><span>{1}</span></span></a>', i, d.moduleViews[i].title, $OG(oThis.ChangeView), (i == currentState) ? "strong" : ""));
        }

        var html = aHtml.join("");
        oElMan.InnerHTML("ModuleViewLinks", html);
    }
    
    function BuildBody(){
        var template = oThis.GetModuleViewTemplate(currentState);
        
        if(template.IsReady()) {
            oElMan.InnerHTML("ModuleViewBody", template.Render());
        }
        else {
            setModuleViewBody(currentState);    
        }
    }
    
    function setModuleViewBody(currentState)
    {
        function f(){
            if (++i == 2)
            {
                oElMan.InnerHTML("ModuleViewBody", s);
            }
        }
        
        function HaveHTML(s_)
        {
            s = s_;
            f();
        }
        var s;
        var i=0;
        
        oThis.GetModuleViewTemplate(currentState);
        htModuleViewTemplates[currentState].GetHTML(HaveHTML);
        f();
    }

    oThis.DeclareVirtualMethods({
        Render: Render
    });
})($data, {Main:Main});
}return $text.join("");}},{id:"News.NewsList",fnc:function($data){var $text = [];var _write = function(text) {$text.push((typeof text == "number")?text:(text||""));};with($data){ Main = function(o, ht) {var $text = [];var _write = function(text) {$text.push((typeof text == "number")?text:(text||""));};_write('\r\n\n<div ');_write(o.Elem('Body'));_write('  class=\"article-list08\" style=\"');_write(o.Style());_write('\">');_write(o.InnerHTML());_write('</div>\n');;return($text.join(""));};
new (function(d, ui) {
var oThis = Btv.Lang.Extend(this, Btv.Cst.BaseTemplate, [$data, true]);
var htUI = ui;
var $el = oThis.El;

    var oElMan = oThis.ElMan();
    oThis.d = d;
    
    oThis.IsReady = function()
    {
        return(!!d.news);
    }
    
    oThis.HasEmptyData = function()
    {
        if(d.news == null || d.news.length == 0){
            return true;
        }
        
        return false;            
    }

    oThis.BuildBody = function() {
        var aHtml = new Array();
        
        if (d.news == null || d.news.length == 0) {
            aHtml.push("No Articles");
        }
        else {
            for (i = 0; i < d.news.length; i++) {
                aHtml.push('<div>');
                aHtml.push($F('<a href="{0}">{1}</a>&nbsp;<span>{2}</span>&nbsp;', d.news[i].entryUrl, d.news[i].entryTitle, d.news[i].elapsedTime));
                /*if(news[i].totalComments > 0){
                aHtml.push(); 
                }*/
                aHtml.push('</div>');
            }
        }

        oElMan.InnerHTML("Body", aHtml.join(""));
    }
    
    oThis.GetHTML = function(fnc)
    {
        function haveData(data){
            oThis.d.news = data;
            var s = Render();
            fnc(s);
        }
        
        d.fncGetModule(d.contentScopeId, d.count, haveData);
    }
                        
    function Render() {
        oThis.BuildBody();
        return (htUI.Main(oThis, {}));
    }  
})($data, {Main:Main});
}return $text.join("");}}]);
