]> scripts.mit.edu Git - autoinstalls/wordpress.git/blobdiff - wp-includes/js/tinymce/themes/advanced/jscripts/link.js
Wordpress 2.3.2
[autoinstalls/wordpress.git] / wp-includes / js / tinymce / themes / advanced / jscripts / link.js
index adc1053505980664e96294350e3aa557b1246b24..36df14e451374b69c16941e00fd5086f7a05a472 100644 (file)
@@ -10,7 +10,11 @@ if (url != null) {
 function init() {
        tinyMCEPopup.resizeToInnerSize();
 
-//     document.getElementById('hrefbrowsercontainer').innerHTML = getBrowserHTML('hrefbrowser','href','file','theme_advanced_link');
+       document.getElementById('hrefbrowsercontainer').innerHTML = getBrowserHTML('hrefbrowser','href','file','theme_advanced_link');
+
+       // Handle file browser
+       if (isVisible('hrefbrowser'))
+               document.getElementById('href').style.width = '180px';
 
        var formObj = document.forms[0];
 
@@ -20,17 +24,24 @@ function init() {
                if (option.value == tinyMCE.getWindowArg('target'))
                        option.selected = true;
        }
-
-       document.forms[0].href.value = tinyMCE.getWindowArg('href');
+       
+       // WordPress -- next 3 lines
+       document.forms[0].href.value = tinyMCE.getWindowArg('href') || 'http://';
+       document.forms[0].href.select();
+       document.forms[0].href.focus();
+       
        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);
+       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';
+       // Hide css select row if no CSS classes
+       if (formObj.styleSelect && formObj.styleSelect.options.length <= 1) {
+               var sr = document.getElementById('styleSelectRow');
+               sr.style.display = 'none';
+               sr.parentNode.removeChild(sr);
+       }
 
        // Auto select link in list
        if (typeof(tinyMCELinkList) != "undefined" && tinyMCELinkList.length > 0) {
@@ -43,22 +54,29 @@ function init() {
        }
 }
 
+function checkPrefix(n) {
+       if (Validator.isEmail(n) && !/^\s*mailto:/i.test(n.value) && confirm(tinyMCE.getLang('lang_is_email')))
+               n.value = 'mailto:' + n.value;
+
+       if (/^\s*www./i.test(n.value) && confirm(tinyMCE.getLang('lang_is_external')))
+               n.value = 'http://' + n.value;
+}
+
 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;
-
-               // Make anchors absolute
-               if (href.charAt(0) == '#')
-                       href = tinyMCE.settings['document_base_url'] + href;
-
-               if (target == '_self')
-                       target = '';
-
-               window.opener.tinyMCE.insertLink(href, target, title, dummy, style_class);
-               tinyMCEPopup.close();
-       }
+       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 ? document.forms[0].styleSelect.value : "";
+       var dummy;
+       
+       // WordPress: Make anchors absolute;
+       if (href.charAt(0) == '#')
+               href = tinyMCE.settings.document_base_url + href;
+
+       if (target == '_self')
+               target = '';
+
+       tinyMCEPopup.restoreSelection();
+       tinyMCE.themes['advanced']._insertLink(href, target, title, dummy, style_class);
+       tinyMCEPopup.close();
 }