﻿function showHtmlModal(htmlData, titleData, widthData, heightData, cssFile) {
    if (heightData == null) {
        heightData = 250;
    }
    if (widthData == null) {
        widthData = 400;
    }

    htmlData = htmlData.replace(/@gt;/g, ">");
    htmlData = htmlData.replace(/@lt;/g, "<");
    htmlData = htmlData.replace(/@apos;/g, "\'");
    htmlData = htmlData.replace(/@quot;/g, "\"");
    htmlData = htmlData.replace(/@amp;/g, "&");

    //htmlData = htmlData.replace("&amp;quot;", "&quot;");

    $('#exp-htmlmodalcontentdiv-title').html(titleData);
    createIframe(widthData, heightData);
    var doc = $('#exp-htmlmodalcontentdiv-contentframe').contents()[0];
    //Permet d'acceder au body, car à ce moment là, il n'existe pas
    doc.open();
    if (cssFile != null && cssFile != '') {
        doc.write('<html><head><link rel="stylesheet" href="' + cssFile + '" type="text/css" /><\/head><body><\/body><\/html>'); 
    }
    doc.close();

    $(doc.body).append(htmlData);

    $('#exp-htmlmodalcontentdiv').css('position', 'absolute');
    $('#exp-htmlmodalcontentdiv').css('display', 'block');
    $('#exp-htmlmodalcontentdiv').css('z-index', '1001');
    $('#exp-htmlmodalcontentdiv').css('top', (($(window).height() - heightData) / 2) - 33 + $(document).scrollTop());
    $('#exp-htmlmodalcontentdiv').css('left', (($(window).width() - widthData) / 2));
    $('#exp-htmlmodalcontentdiv').css('width', widthData);
    $('#exp-htmlmodalcontentdiv').css('height', heightData);

    $('#exp-htmlmodalbackspan').css('display', 'block');
    $('#exp-htmlmodalbackspan').css('position', 'absolute');
    $('#exp-htmlmodalbackspan').css('z-index', '1000');
    $('#exp-htmlmodalbackspan').css('top', '0px');
    $('#exp-htmlmodalbackspan').css('left', '0px');
    $('#exp-htmlmodalbackspan').css('width', document.body.offsetWidth);
    $('#exp-htmlmodalbackspan').css('height', document.body.offsetHeight);
}

function showPageModal(uri, titleData, widthData, heightData) {
    if (heightData == null) {
        heightData = 250;
    }
    if (widthData == null) {
        widthData = 400;
    }
    $('#exp-htmlmodalcontentdiv-title').html(titleData);
    createIframe(widthData, heightData);
    $('#exp-htmlmodalcontentdiv-contentframe').attr('src', uri);

    $('#exp-htmlmodalcontentdiv').css('position', 'absolute');
    $('#exp-htmlmodalcontentdiv').css('display', 'block');
    $('#exp-htmlmodalcontentdiv').css('z-index', '1001');
    $('#exp-htmlmodalcontentdiv').css('top', (($(window).height() - heightData) / 2) - 33 + $(document).scrollTop());
    $('#exp-htmlmodalcontentdiv').css('left', (($(window).width() - widthData) / 2));
    $('#exp-htmlmodalcontentdiv').css('width', widthData);
    $('#exp-htmlmodalcontentdiv').css('height', heightData);

    $('#exp-htmlmodalbackspan').css('display', 'block');
    $('#exp-htmlmodalbackspan').css('position', 'absolute');
    $('#exp-htmlmodalbackspan').css('z-index', '1000');
    $('#exp-htmlmodalbackspan').css('top', '0px');
    $('#exp-htmlmodalbackspan').css('left', '0px');
    $('#exp-htmlmodalbackspan').css('width', document.body.offsetWidth);
    $('#exp-htmlmodalbackspan').css('height', document.body.offsetHeight);
}

function hideHtmlModal() {
    $('#exp-htmlmodalcontentdiv-contentframe').remove();
    $('#exp-htmlmodalcontentdiv').css('display', 'none');
    $('#exp-htmlmodalbackspan').css('display', 'none');
}

function createIframe(widthData, heightData) {
    $('#exp-htmlmodalcontentdiv-content').html('<iframe id="exp-htmlmodalcontentdiv-contentframe" frameborder="0" height="' + heightData + 'px" width="' + widthData + 'px"></iframe>');
}