]> code.citadel.org Git - citadel.git/blobdiff - webcit/tiny_mce/themes/advanced/jscripts/link.js
webcit_before_automake is now the trunk
[citadel.git] / webcit / tiny_mce / themes / advanced / jscripts / link.js
index 9cf5b4a8103cca237622bdd6c9c309a0fe19fb36..62204ceb67bd32fb1e0e0e774dea825ad2b7b3df 100644 (file)
@@ -1,58 +1,69 @@
-var url = tinyMCE.getParam("external_link_list_url");
-if (url != null) {
-       // Fix relative
-       if (url.charAt(0) != '/')
-               url = tinyMCE.documentBasePath + "/" + url;
-
-       document.write('<sc'+'ript language="javascript" type="text/javascript" src="' + url + '"></sc'+'ript>');
-}
-
-function init() {
-       tinyMCEPopup.resizeToInnerSize();
-
-       var formObj = document.forms[0];
-
-       for (var i=0; i<document.forms[0].target.options.length; i++) {
-               var option = document.forms[0].target.options[i];
-
-               if (option.value == tinyMCE.getWindowArg('target'))
-                       option.selected = true;
-       }
-
-       document.forms[0].href.value = tinyMCE.getWindowArg('href');
-       document.forms[0].linktitle.value = tinyMCE.getWindowArg('title');
-       document.forms[0].insert.value = tinyMCE.getLang('lang_' + tinyMCE.getWindowArg('action'), 'Insert', true); 
-
-       addClassesToList('styleSelect', 'theme_advanced_link_styles');
-       selectByValue(formObj, 'styleSelect', tinyMCE.getWindowArg('className'), true);
-
-       // Handle file browser
-       if (isVisible('hrefbrowser'))
-               document.getElementById('href').style.width = '180px';
-
-       // Auto select link in list
-       if (typeof(tinyMCELinkList) != "undefined" && tinyMCELinkList.length > 0) {
-               var formObj = document.forms[0];
-
-               for (var i=0; i<formObj.link_list.length; i++) {
-                       if (formObj.link_list.options[i].value == tinyMCE.getWindowArg('href'))
-                               formObj.link_list.options[i].selected = true;
-               }
-       }
-}
-
-function insertLink() {
-       if (window.opener) {
-               var href = document.forms[0].href.value;
-               var target = document.forms[0].target.options[document.forms[0].target.selectedIndex].value;
-               var title = document.forms[0].linktitle.value;
-               var style_class = document.forms[0].styleSelect.value;
-               var dummy;
-
-               if (target == '_self')
-                       target = '';
-
-               window.opener.tinyMCE.insertLink(href, target, title, dummy, style_class);
-               tinyMCEPopup.close();
-       }
-}
+var url = tinyMCE.getParam("external_link_list_url");\r
+if (url != null) {\r
+       // Fix relative\r
+       if (url.charAt(0) != '/' && url.indexOf('://') == -1)\r
+               url = tinyMCE.documentBasePath + "/" + url;\r
+\r
+       document.write('<sc'+'ript language="javascript" type="text/javascript" src="' + url + '"></sc'+'ript>');\r
+}\r
+\r
+function init() {\r
+       tinyMCEPopup.resizeToInnerSize();\r
+\r
+       document.getElementById('hrefbrowsercontainer').innerHTML = getBrowserHTML('hrefbrowser','href','file','theme_advanced_link');\r
+\r
+       var formObj = document.forms[0];\r
+\r
+       for (var i=0; i<document.forms[0].target.options.length; i++) {\r
+               var option = document.forms[0].target.options[i];\r
+\r
+               if (option.value == tinyMCE.getWindowArg('target'))\r
+                       option.selected = true;\r
+       }\r
+\r
+       document.forms[0].href.value = tinyMCE.getWindowArg('href');\r
+       document.forms[0].linktitle.value = tinyMCE.getWindowArg('title');\r
+       document.forms[0].insert.value = tinyMCE.getLang('lang_' + tinyMCE.getWindowArg('action'), 'Insert', true); \r
+\r
+       addClassesToList('styleSelect', 'theme_advanced_link_styles');\r
+       selectByValue(formObj, 'styleSelect', tinyMCE.getWindowArg('className'), true);\r
+\r
+       // Hide css select row if no CSS classes\r
+       if (formObj.styleSelect && formObj.styleSelect.options.length <= 1) {\r
+               document.getElementById('styleSelectRow').style.display = 'none';\r
+               window.resizeBy(0, -20);\r
+       }\r
+\r
+       // Handle file browser\r
+       if (isVisible('hrefbrowser'))\r
+               document.getElementById('href').style.width = '180px';\r
+\r
+       // Auto select link in list\r
+       if (typeof(tinyMCELinkList) != "undefined" && tinyMCELinkList.length > 0) {\r
+               var formObj = document.forms[0];\r
+\r
+               for (var i=0; i<formObj.link_list.length; i++) {\r
+                       if (formObj.link_list.options[i].value == tinyMCE.getWindowArg('href'))\r
+                               formObj.link_list.options[i].selected = true;\r
+               }\r
+       }\r
+}\r
+\r
+function insertLink() {\r
+       var href = document.forms[0].href.value;\r
+       var target = document.forms[0].target.options[document.forms[0].target.selectedIndex].value;\r
+       var title = document.forms[0].linktitle.value;\r
+       var style_class = document.forms[0].styleSelect.value;\r
+       var dummy;\r
+\r
+       // Make anchors absolute\r
+       if (href.charAt(0) == '#')\r
+               href = tinyMCE.settings['document_base_url'] + href;\r
+\r
+       if (target == '_self')\r
+               target = '';\r
+\r
+       tinyMCEPopup.restoreSelection();\r
+       tinyMCE.insertLink(href, target, title, dummy, style_class);\r
+       tinyMCEPopup.close();\r
+}\r