/**
 * ToutsWidgetJS
 *
 */
var ToutsWidgetJs = function(OptionObj){
    var _widget_id = "";
    var _item_array = OptionObj.items;
    var _table_id = "";
    var _base_img_src = "";
    var _renderMode = "";

    function _renderWidget(id){
        _table_id = "tbl_" + id;

        $("#" + id).append("<table width='100%' id='" + _table_id + "'><tr>" + "</tr></table>");
        var length = _item_array.length;
        if (length == 0) {
            return;
        }
        _base_img_src = "/media/widgets/"+ OptionObj.items[0].widgetHeaderId +"/";
        for (var i = 0; i < length; ++i) {
            var align = "center";
            if (i == length - 1 && length > 1) {
                align = "right";
            }
            else
                if (i == 0) {
                    align = "left";
                }
            _addItemsToWidget(align, _item_array[i]);
        }
    }

    function _addItemsToWidget(align, item){
        var item_id = "itm_" + item.widgetLineId;
        $("#" + _table_id + " tr ").append("<td align='" + align + "' id='" + item_id + "'></td>");
        _renderItems(item, item_id);
    }

    function _renderItems(item, item_id){
        if (_renderMode == "detail") {
            $("#" + item_id).append("<div class='toutDetail'><a target='" + item.linkTarget + "' href=\"javascript:toutDisplayShadowbox('" + _base_img_src + item.thumbnailImage + "', 'img')\"><img src='" + _base_img_src + item.largeImage + "' border='0'></a></div>");
        }else {
            $("#" + item_id).append("<div class='tout'><a target='" + item.linkTarget + "' href=\"" + item.link + "\"><img src='" + _base_img_src + item.largeImage + "' border='0'></a></div>");
        }
    }

    return {
        renderUI: function(id, renderMode){
            _renderMode = renderMode;
            _renderWidget(id);
        },
        setCSSOfWidget: function(CSS){
            $("#" + _table_id).addClass(CSS);
        },
        setBaseImgSrc: function(baseImgSrc){
            _base_img_src = baseImgSrc;
        }
    }
}

