| | |
| | | tinyMCEPopup.requireLangPack();
|
| | |
|
| | | function saveContent() {
|
| | | var html = document.getElementById("frmData").contentWindow.document.body.innerHTML;
|
| | | var PasteWordDialog = {
|
| | | init : function() {
|
| | | var ed = tinyMCEPopup.editor, el = document.getElementById('iframecontainer'), ifr, doc, css, cssHTML = '';
|
| | |
|
| | | if (html == ''){
|
| | | // Create iframe
|
| | | el.innerHTML = '<iframe id="iframe" src="javascript:\'\';" frameBorder="0" style="border: 1px solid gray"></iframe>';
|
| | | ifr = document.getElementById('iframe');
|
| | | doc = ifr.contentWindow.document;
|
| | |
|
| | | // Force absolute CSS urls
|
| | | css = [ed.baseURI.toAbsolute("themes/" + ed.settings.theme + "/skins/" + ed.settings.skin + "/content.css")];
|
| | | css = css.concat(tinymce.explode(ed.settings.content_css) || []);
|
| | | tinymce.each(css, function(u) {
|
| | | cssHTML += '<link href="' + ed.documentBaseURI.toAbsolute('' + u) + '" rel="stylesheet" type="text/css" />';
|
| | | });
|
| | |
|
| | | // Write content into iframe
|
| | | doc.open();
|
| | | doc.write('<html><head>' + cssHTML + '</head><body class="mceContentBody" spellcheck="false"></body></html>');
|
| | | doc.close();
|
| | |
|
| | | doc.designMode = 'on';
|
| | | this.resize();
|
| | |
|
| | | window.setTimeout(function() {
|
| | | ifr.contentWindow.focus();
|
| | | }, 10);
|
| | | },
|
| | |
|
| | | insert : function() {
|
| | | var h = document.getElementById('iframe').contentWindow.document.body.innerHTML;
|
| | |
|
| | | tinyMCEPopup.editor.execCommand('mceInsertClipboardContent', false, {content : h, wordContent : true});
|
| | | tinyMCEPopup.close();
|
| | | return false;
|
| | | },
|
| | |
|
| | | resize : function() {
|
| | | var vp = tinyMCEPopup.dom.getViewPort(window), el;
|
| | |
|
| | | el = document.getElementById('iframe');
|
| | |
|
| | | if (el) {
|
| | | el.style.width = (vp.w - 20) + 'px';
|
| | | el.style.height = (vp.h - 90) + 'px';
|
| | | }
|
| | | }
|
| | | };
|
| | |
|
| | | tinyMCEPopup.execCommand('mcePasteWord', false, html);
|
| | | tinyMCEPopup.close();
|
| | | }
|
| | |
|
| | | function onLoadInit() {
|
| | | tinyMCEPopup.resizeToInnerSize();
|
| | |
|
| | | // Fix for endless reloading in FF
|
| | | window.setTimeout(createIFrame, 10);
|
| | | }
|
| | |
|
| | | function createIFrame() {
|
| | | document.getElementById('iframecontainer').innerHTML = '<iframe id="frmData" name="frmData" class="sourceIframe" src="blank.htm" height="280" width="400" frameborder="0" style="background-color:#FFFFFF; width:100%;" dir="ltr" wrap="soft"></iframe>';
|
| | | }
|
| | |
|
| | | var wHeight=0, wWidth=0, owHeight=0, owWidth=0;
|
| | |
|
| | | function initIframe(doc) {
|
| | | var dir = tinyMCEPopup.editor.settings.directionality;
|
| | |
|
| | | doc.body.dir = dir;
|
| | |
|
| | | // Remove Gecko spellchecking
|
| | | if (tinymce.isGecko)
|
| | | doc.body.spellcheck = tinyMCEPopup.getParam("gecko_spellcheck");
|
| | |
|
| | | resizeInputs();
|
| | | }
|
| | |
|
| | | function resizeInputs() {
|
| | | if (!tinymce.isIE) {
|
| | | wHeight = self.innerHeight - 80;
|
| | | wWidth = self.innerWidth - 18;
|
| | | } else {
|
| | | wHeight = document.body.clientHeight - 80;
|
| | | wWidth = document.body.clientWidth - 18;
|
| | | }
|
| | |
|
| | | var elm = document.getElementById('frmData');
|
| | | if (elm) {
|
| | | elm.style.height = Math.abs(wHeight) + 'px';
|
| | | elm.style.width = Math.abs(wWidth) + 'px';
|
| | | }
|
| | | }
|
| | |
|
| | | tinyMCEPopup.onInit.add(onLoadInit);
|
| | | tinyMCEPopup.onInit.add(PasteWordDialog.init, PasteWordDialog);
|