﻿var jQueryloaded = false;
function EnsurePublishingHTMLEditorScripts() {
    EnsureScripts(
[['SP.Ribbon.js', 'SP.Ribbon', true],
['SP.UI.Rte.js', 'RTE', true],
['AssetPickers.js', 'AP_IsEmpty', true],
['SP.Publishing.Resources.resx', 'SP.Publishing.Resources', false],
['SP.UI.Rte.Publishing.js', 'RTE.PublishingCanvas', true]], PublishingRibbonUpdateRibbon);
}
function loadArticleFieldControl(controlId, htmlFieldId) {
    if (typeof $ == 'undefined') {
        if (!jQueryloaded) {
            jQueryloaded = true;
            document.write("<scr" + "ipt type=\"text/javascript\" src=\"/_layouts/ArticleFieldType/jquery-1.4.4.min.js\"></scr" + "ipt>");
        }
        setTimeout("loadArticleFieldControl('" + controlId + "','" + htmlFieldId + "')", 50);
    } else {
    $(function () {
        var articleCtl = '#' + controlId;
        var richtextCtl = '#' + htmlFieldId;
        var _currentArticleType = $(articleCtl + ' > input');
        function showArticleTab(index) {
            $(articleCtl + ' .ArticleTabPanels > div').hide();
            $(articleCtl + ' .ArticleTabs > span').removeClass("selected");
            $(articleCtl + ' .ArticleTabs > span').eq(index).addClass("selected");
            $(articleCtl + ' .ArticleTabPanels > div').eq(index).show();
            _currentArticleType.val($(articleCtl + ' .ArticleTabs > span').eq(index).text());
        }
        function initEditPanel() {
            if ($.trim(_currentArticleType.val()).length != 0) {
                switch ($.trim(_currentArticleType.val())) {
                    case 'RichText':
                        showArticleTab(0);
                        if ($.trim($(richtextCtl).val()).length == 0) {
                            $(articleCtl + " .ms-inputuserfield").hide();
                            $(articleCtl + " .ms-selectorlink").show();
                        }
                        else {
                            $(articleCtl).find(' .ms-inputuserfield').html($(richtextCtl).val());
                        }
                        break;
                    case 'Image':
                        showArticleTab(1);
                        $(articleCtl + ' .ArticleTabPanels > div').eq(1).find('input:eq(0)').focus();
                        break;
                    case 'Video':
                        showArticleTab(2);
                        $(articleCtl + ' .ArticleTabPanels > div').eq(2).find('input:eq(0)').focus();
                        break;
                    case 'Visio':
                        showArticleTab(3);
                        $(articleCtl + ' .ArticleTabPanels > div').eq(3).find('input:eq(0)').focus();
                        break;
                }
            }
            else {
                showArticleTab(0);
            }
            $(articleCtl + ' .ArticleTabs > span').bind({
                click: function () {
                    if ($(this).hasClass('selected')) return;
                    showArticleTab($(this).index());
                }
            });
        }

        var postbackfun = __doPostBack;
        __doPostBack = function (eventTarget, eventArgument) {
            $(richtextCtl).val($(articleCtl).find(' .ms-inputuserfield').html());
            postbackfun(eventTarget, eventArgument);
        }

        if ($(articleCtl + ' .ArticleTabs').length > 0) {
            initEditPanel();
        }

    });
    }
}
