Mercurial > public > sg101
view static/js/tiny_mce/plugins/template/js/template.js @ 1104:47e7dc23da4a
Membermap no longer needs jquery-ui.
author | Brian Neal <bgneal@gmail.com> |
---|---|
date | Wed, 06 Jul 2016 20:27:46 -0500 |
parents | 6c182ceb7147 |
children |
line wrap: on
line source
tinyMCEPopup.requireLangPack(); var TemplateDialog = { preInit : function() { var url = tinyMCEPopup.getParam("template_external_list_url"); if (url != null) document.write('<sc'+'ript language="javascript" type="text/javascript" src="' + tinyMCEPopup.editor.documentBaseURI.toAbsolute(url) + '"></sc'+'ript>'); }, init : function() { var ed = tinyMCEPopup.editor, tsrc, sel, x, u; tsrc = ed.getParam("template_templates", false); sel = document.getElementById('tpath'); // Setup external template list if (!tsrc && typeof(tinyMCETemplateList) != 'undefined') { for (x=0, tsrc = []; x<tinyMCETemplateList.length; x++) tsrc.push({title : tinyMCETemplateList[x][0], src : tinyMCETemplateList[x][1], description : tinyMCETemplateList[x][2]}); } for (x=0; x<tsrc.length; x++) sel.options[sel.options.length] = new Option(tsrc[x].title, tinyMCEPopup.editor.documentBaseURI.toAbsolute(tsrc[x].src)); this.resize(); this.tsrc = tsrc; }, resize : function() { var w, h, e; if (!self.innerWidth) { w = document.body.clientWidth - 50; h = document.body.clientHeight - 160; } else { w = self.innerWidth - 50; h = self.innerHeight - 170; } e = document.getElementById('templatesrc'); if (e) { e.style.height = Math.abs(h) + 'px'; e.style.width = Math.abs(w - 5) + 'px'; } }, loadCSSFiles : function(d) { var ed = tinyMCEPopup.editor; tinymce.each(ed.getParam("content_css", '').split(','), function(u) { d.write('<link href="' + ed.documentBaseURI.toAbsolute(u) + '" rel="stylesheet" type="text/css" />'); }); }, selectTemplate : function(u, ti) { var d = window.frames['templatesrc'].document, x, tsrc = this.tsrc; if (!u) return; d.body.innerHTML = this.templateHTML = this.getFileContents(u); for (x=0; x<tsrc.length; x++) { if (tsrc[x].title == ti) document.getElementById('tmpldesc').innerHTML = tsrc[x].description || ''; } }, insert : function() { tinyMCEPopup.execCommand('mceInsertTemplate', false, { content : this.templateHTML, selection : tinyMCEPopup.editor.selection.getContent() }); tinyMCEPopup.close(); }, getFileContents : function(u) { var x, d, t = 'text/plain'; function g(s) { x = 0; try { x = new ActiveXObject(s); } catch (s) { } return x; }; x = window.ActiveXObject ? g('Msxml2.XMLHTTP') || g('Microsoft.XMLHTTP') : new XMLHttpRequest(); // Synchronous AJAX load file x.overrideMimeType && x.overrideMimeType(t); x.open("GET", u, false); x.send(null); return x.responseText; } }; TemplateDialog.preInit(); tinyMCEPopup.onInit.add(TemplateDialog.init, TemplateDialog);