﻿
function OnClientButtonClicking(sender, args) {
    var button = args.get_item();
    switch (button.get_commandName()) {
        case 'modele':
            eval('jsoe' + button.get_commandArgument()).showModeleDialog();
            break;
        case 'importCatalog':
            eval('jsoe' + button.get_commandArgument()).showImportDialog();
            break;
    }
}

function jsOptaEditor(aRadeditorClientID, awinModeleClientID, acbModeleReplace, awinImportClientID, artvCatalogClientID) {

    //    radEditorClientID = aRadeditorClientID;
    //    cRadEditor = $find(aRadeditorClientID);

    //    winModeleClientID = awinModeleClientID;
    //    cWinModele = $find(awinModeleClientID);

    cbModeleReplace = acbModeleReplace;
    replaceMode = false;

    //Import HTML d'une Item
    this.rtvCatalog_OnImport = function () {
        if ($find(artvCatalogClientID).get_selectedNode() == null) {
            alert('Vous devez sélectionner un élément');
        }
        else {
            id_Item = $find(artvCatalogClientID).get_selectedNode().get_value();
            optavis.catalog.wsOptavisCatalogAdmin.getItemHtml(id_Item, this.ongetOptavisImportCatalogHtml_Success, onErrorOptaEditorHtml);
        }
    }
    this.ongetOptavisImportCatalogHtml_Success = function (rtnHtml) {
            $find(aRadeditorClientID).pasteHtml(rtnHtml.message);
    }

    //Modèles
    this.getOptavisEditorModele = function (idPortal, idModele, onSuccess) {
        optavis.wsEditorHtml.getHtmlModele(idPortal, idModele, this.ongetOptavisEditorModele_Success, onErrorOptaEditorHtml);
    }

    this.ongetOptavisEditorModele_Success = function (rtnHtml) {
        if (replaceMode)
            $find(aRadeditorClientID).set_html(rtnHtml);
        else
            $find(aRadeditorClientID).pasteHtml(rtnHtml);
    }

    this.delOptavisEditorModele = function (idPortal, idModele, onSuccess) {
        if (confirm('Ce modèle sera supprimer pour l\'ensemble du site.\n\nEtes-vous sûr de vouloir supprimer ce modèle ?'))
            optavis.wsEditorHtml.delHtmlModele(idPortal, idModele, this.ondelOptavisEditorModele_Success, onErrorOptaEditorHtml);
    }
    this.ondelOptavisEditorModele_Success = function (idModele) {
        $('#li_' + aRadeditorClientID + '_' + idModele).hide();
    }

    this.setReplaceMode = function (checkbox) {
        replaceMode = checkbox.checked;
    }

    //Sauvegarde des modèles
    //    this.saveOptaEditorModele function (idPortal, idTextboxNomModele, idRadEditor) {
    //        oEditor = $find(idRadEditor);
    //        oText = $find(idTextboxNomModele);
    //        alert(oEditor.get_html());
    //        //optavis.wsEditorHtml.saveHtmlModele(idPortal, libelle, html, onsaveOptaEditorModele, onErrorOptaEditorHtml);
    //    }

    //    function onsaveOptaEditorModele(return1) {
    //        return return1;
    //    }

    // This is the failed callback function.
    function onErrorOptaEditorHtml(error) {
        var stackTrace = error.get_stackTrace();
        var message = error.get_message();
        var statusCode = error.get_statusCode();
        var exceptionType = error.get_exceptionType();
        var timedout = error.get_timedOut();

        // Display the error.    
        var RsltElem = document.getElementById("Results");
        RsltElem.innerHTML =
            "Stack Trace: " + stackTrace + "<br/>" +
        "Service Error: " + message + "<br/>" +
        "Status Code: " + statusCode + "<br/>" +
        "Exception Type: " + exceptionType + "<br/>" +
        "Timedout: " + timedout;
    }

    //Window Modele
    this.showModeleDialog = function () {
        $find(awinModeleClientID).show();
    }

    //Window Import
    this.showImportDialog = function () {
        $find(awinImportClientID).show();
    }

    this.getHtmlCatalog = function (id_Item) {

        alert(id_Item);
        //getHtmlPhotos
    }

}