diff options
Diffstat (limited to 'lib/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink')
7 files changed, 1009 insertions, 0 deletions
diff --git a/lib/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink/css/advlink.css b/lib/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink/css/advlink.css new file mode 100644 index 0000000..66c6549 --- /dev/null +++ b/lib/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink/css/advlink.css @@ -0,0 +1,8 @@ +.mceLinkList, .mceAnchorList, #targetlist {width:280px;} +.mceActionPanel {margin-top:7px;} +.panel_wrapper div.current {height:320px;} +#classlist, #title, #href {width:280px;} +#popupurl, #popupname {width:200px;} +#popupwidth, #popupheight, #popupleft, #popuptop {width:30px;vertical-align:middle;text-align:center;} +#id, #style, #classes, #target, #dir, #hreflang, #lang, #charset, #type, #rel, #rev, #tabindex, #accesskey {width:200px;} +#events_panel input {width:200px;} diff --git a/lib/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink/editor_plugin.js b/lib/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink/editor_plugin.js new file mode 100644 index 0000000..34a38f8 --- /dev/null +++ b/lib/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink/editor_plugin.js @@ -0,0 +1 @@ +(function(){tinymce.create('tinymce.plugins.AdvancedLinkPlugin',{init:function(ed,url){this.editor=ed;ed.addCommand('mceAdvLink',function(){var se=ed.selection;if(se.isCollapsed()&&!ed.dom.getParent(se.getNode(),'A'))return;ed.windowManager.open({file:url+'/link.htm',width:480+parseInt(ed.getLang('advlink.delta_width',0)),height:320+parseInt(ed.getLang('advlink.delta_height',0)),inline:1},{plugin_url:url});});ed.addButton('link',{title:'advlink.link_desc',cmd:'mceAdvLink'});ed.addShortcut('ctrl+k','advlink.advlink_desc','mceAdvLink');ed.onNodeChange.add(function(ed,cm,n,co){cm.setDisabled('link',co&&n.nodeName!='A');cm.setActive('link',n.nodeName=='A'&&!n.name);});},getInfo:function(){return{longname:'Advanced link',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advlink',version:tinymce.majorVersion+"."+tinymce.minorVersion};}});tinymce.PluginManager.add('advlink',tinymce.plugins.AdvancedLinkPlugin);})();
\ No newline at end of file diff --git a/lib/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink/editor_plugin_src.js b/lib/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink/editor_plugin_src.js new file mode 100644 index 0000000..7081e72 --- /dev/null +++ b/lib/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink/editor_plugin_src.js @@ -0,0 +1,58 @@ +/** + * $Id: editor_plugin_src.js 539 2008-01-14 19:08:58Z spocke $ + * + * @author Moxiecode + * @copyright Copyright © 2004-2008, Moxiecode Systems AB, All rights reserved. + */ + +(function() { + tinymce.create('tinymce.plugins.AdvancedLinkPlugin', { + init : function(ed, url) { + this.editor = ed; + + // Register commands + ed.addCommand('mceAdvLink', function() { + var se = ed.selection; + + // No selection and not in link + if (se.isCollapsed() && !ed.dom.getParent(se.getNode(), 'A')) + return; + + ed.windowManager.open({ + file : url + '/link.htm', + width : 480 + parseInt(ed.getLang('advlink.delta_width', 0)), + height : 400 + parseInt(ed.getLang('advlink.delta_height', 0)), + inline : 1 + }, { + plugin_url : url + }); + }); + + // Register buttons + ed.addButton('link', { + title : 'advlink.link_desc', + cmd : 'mceAdvLink' + }); + + ed.addShortcut('ctrl+k', 'advlink.advlink_desc', 'mceAdvLink'); + + ed.onNodeChange.add(function(ed, cm, n, co) { + cm.setDisabled('link', co && n.nodeName != 'A'); + cm.setActive('link', n.nodeName == 'A' && !n.name); + }); + }, + + getInfo : function() { + return { + longname : 'Advanced link', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advlink', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('advlink', tinymce.plugins.AdvancedLinkPlugin); +})();
\ No newline at end of file diff --git a/lib/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink/js/advlink.js b/lib/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink/js/advlink.js new file mode 100644 index 0000000..c8d1983 --- /dev/null +++ b/lib/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink/js/advlink.js @@ -0,0 +1,527 @@ +/* Functions for the advlink plugin popup */ + +tinyMCEPopup.requireLangPack(); + +var templates = { + "window.open" : "window.open('${url}','${target}','${options}')" +}; + +function preinit() { + var url; + + if (url = tinyMCEPopup.getParam("external_link_list_url")) + document.write('<script language="javascript" type="text/javascript" src="' + tinyMCEPopup.editor.documentBaseURI.toAbsolute(url) + '"></script>'); +} + +function changeClass() { + var f = document.forms[0]; + + f.classes.value = getSelectValue(f, 'classlist'); +} + +function init() { + tinyMCEPopup.resizeToInnerSize(); + + var formObj = document.forms[0]; + var inst = tinyMCEPopup.editor; + var elm = inst.selection.getNode(); + var action = "insert"; + var html; + + document.getElementById('hrefbrowsercontainer').innerHTML = getBrowserHTML('hrefbrowser','href','file','advlink'); + document.getElementById('popupurlbrowsercontainer').innerHTML = getBrowserHTML('popupurlbrowser','popupurl','file','advlink'); + document.getElementById('linklisthrefcontainer').innerHTML = getLinkListHTML('linklisthref','href'); + document.getElementById('anchorlistcontainer').innerHTML = getAnchorListHTML('anchorlist','href'); + document.getElementById('targetlistcontainer').innerHTML = getTargetListHTML('targetlist','target'); + + // Link list + html = getLinkListHTML('linklisthref','href'); + if (html == "") + document.getElementById("linklisthrefrow").style.display = 'none'; + else + document.getElementById("linklisthrefcontainer").innerHTML = html; + + // Resize some elements + if (isVisible('hrefbrowser')) + document.getElementById('href').style.width = '260px'; + + if (isVisible('popupurlbrowser')) + document.getElementById('popupurl').style.width = '180px'; + + elm = inst.dom.getParent(elm, "A"); + if (elm != null && elm.nodeName == "A") + action = "update"; + + formObj.insert.value = tinyMCEPopup.getLang(action, 'Insert', true); + + setPopupControlsDisabled(true); + + if (action == "update") { + var href = inst.dom.getAttrib(elm, 'href'); + var onclick = inst.dom.getAttrib(elm, 'onclick'); + + // Setup form data + setFormValue('href', href); + setFormValue('title', inst.dom.getAttrib(elm, 'title')); + setFormValue('id', inst.dom.getAttrib(elm, 'id')); + setFormValue('style', inst.dom.getAttrib(elm, "style")); + setFormValue('rel', inst.dom.getAttrib(elm, 'rel')); + setFormValue('rev', inst.dom.getAttrib(elm, 'rev')); + setFormValue('charset', inst.dom.getAttrib(elm, 'charset')); + setFormValue('hreflang', inst.dom.getAttrib(elm, 'hreflang')); + setFormValue('dir', inst.dom.getAttrib(elm, 'dir')); + setFormValue('lang', inst.dom.getAttrib(elm, 'lang')); + setFormValue('tabindex', inst.dom.getAttrib(elm, 'tabindex', typeof(elm.tabindex) != "undefined" ? elm.tabindex : "")); + setFormValue('accesskey', inst.dom.getAttrib(elm, 'accesskey', typeof(elm.accesskey) != "undefined" ? elm.accesskey : "")); + setFormValue('type', inst.dom.getAttrib(elm, 'type')); + setFormValue('onfocus', inst.dom.getAttrib(elm, 'onfocus')); + setFormValue('onblur', inst.dom.getAttrib(elm, 'onblur')); + setFormValue('onclick', onclick); + setFormValue('ondblclick', inst.dom.getAttrib(elm, 'ondblclick')); + setFormValue('onmousedown', inst.dom.getAttrib(elm, 'onmousedown')); + setFormValue('onmouseup', inst.dom.getAttrib(elm, 'onmouseup')); + setFormValue('onmouseover', inst.dom.getAttrib(elm, 'onmouseover')); + setFormValue('onmousemove', inst.dom.getAttrib(elm, 'onmousemove')); + setFormValue('onmouseout', inst.dom.getAttrib(elm, 'onmouseout')); + setFormValue('onkeypress', inst.dom.getAttrib(elm, 'onkeypress')); + setFormValue('onkeydown', inst.dom.getAttrib(elm, 'onkeydown')); + setFormValue('onkeyup', inst.dom.getAttrib(elm, 'onkeyup')); + setFormValue('target', inst.dom.getAttrib(elm, 'target')); + setFormValue('classes', inst.dom.getAttrib(elm, 'class')); + + // Parse onclick data + if (onclick != null && onclick.indexOf('window.open') != -1) + parseWindowOpen(onclick); + else + parseFunction(onclick); + + // Select by the values + selectByValue(formObj, 'dir', inst.dom.getAttrib(elm, 'dir')); + selectByValue(formObj, 'rel', inst.dom.getAttrib(elm, 'rel')); + selectByValue(formObj, 'rev', inst.dom.getAttrib(elm, 'rev')); + selectByValue(formObj, 'linklisthref', href); + + if (href.charAt(0) == '#') + selectByValue(formObj, 'anchorlist', href); + + addClassesToList('classlist', 'advlink_styles'); + + selectByValue(formObj, 'classlist', inst.dom.getAttrib(elm, 'class'), true); + selectByValue(formObj, 'targetlist', inst.dom.getAttrib(elm, 'target'), true); + } else + addClassesToList('classlist', 'advlink_styles'); +} + +function checkPrefix(n) { + if (n.value && Validator.isEmail(n) && !/^\s*mailto:/i.test(n.value) && confirm(tinyMCEPopup.getLang('advlink_dlg.is_email'))) + n.value = 'mailto:' + n.value; + + if (/^\s*www./i.test(n.value) && confirm(tinyMCEPopup.getLang('advlink_dlg.is_external'))) + n.value = 'http://' + n.value; +} + +function setFormValue(name, value) { + document.forms[0].elements[name].value = value; +} + +function parseWindowOpen(onclick) { + var formObj = document.forms[0]; + + // Preprocess center code + if (onclick.indexOf('return false;') != -1) { + formObj.popupreturn.checked = true; + onclick = onclick.replace('return false;', ''); + } else + formObj.popupreturn.checked = false; + + var onClickData = parseLink(onclick); + + if (onClickData != null) { + formObj.ispopup.checked = true; + setPopupControlsDisabled(false); + + var onClickWindowOptions = parseOptions(onClickData['options']); + var url = onClickData['url']; + + formObj.popupname.value = onClickData['target']; + formObj.popupurl.value = url; + formObj.popupwidth.value = getOption(onClickWindowOptions, 'width'); + formObj.popupheight.value = getOption(onClickWindowOptions, 'height'); + + formObj.popupleft.value = getOption(onClickWindowOptions, 'left'); + formObj.popuptop.value = getOption(onClickWindowOptions, 'top'); + + if (formObj.popupleft.value.indexOf('screen') != -1) + formObj.popupleft.value = "c"; + + if (formObj.popuptop.value.indexOf('screen') != -1) + formObj.popuptop.value = "c"; + + formObj.popuplocation.checked = getOption(onClickWindowOptions, 'location') == "yes"; + formObj.popupscrollbars.checked = getOption(onClickWindowOptions, 'scrollbars') == "yes"; + formObj.popupmenubar.checked = getOption(onClickWindowOptions, 'menubar') == "yes"; + formObj.popupresizable.checked = getOption(onClickWindowOptions, 'resizable') == "yes"; + formObj.popuptoolbar.checked = getOption(onClickWindowOptions, 'toolbar') == "yes"; + formObj.popupstatus.checked = getOption(onClickWindowOptions, 'status') == "yes"; + formObj.popupdependent.checked = getOption(onClickWindowOptions, 'dependent') == "yes"; + + buildOnClick(); + } +} + +function parseFunction(onclick) { + var formObj = document.forms[0]; + var onClickData = parseLink(onclick); + + // TODO: Add stuff here +} + +function getOption(opts, name) { + return typeof(opts[name]) == "undefined" ? "" : opts[name]; +} + +function setPopupControlsDisabled(state) { + var formObj = document.forms[0]; + + formObj.popupname.disabled = state; + formObj.popupurl.disabled = state; + formObj.popupwidth.disabled = state; + formObj.popupheight.disabled = state; + formObj.popupleft.disabled = state; + formObj.popuptop.disabled = state; + formObj.popuplocation.disabled = state; + formObj.popupscrollbars.disabled = state; + formObj.popupmenubar.disabled = state; + formObj.popupresizable.disabled = state; + formObj.popuptoolbar.disabled = state; + formObj.popupstatus.disabled = state; + formObj.popupreturn.disabled = state; + formObj.popupdependent.disabled = state; + + setBrowserDisabled('popupurlbrowser', state); +} + +function parseLink(link) { + link = link.replace(new RegExp(''', 'g'), "'"); + + var fnName = link.replace(new RegExp("\\s*([A-Za-z0-9\.]*)\\s*\\(.*", "gi"), "$1"); + + // Is function name a template function + var template = templates[fnName]; + if (template) { + // Build regexp + var variableNames = template.match(new RegExp("'?\\$\\{[A-Za-z0-9\.]*\\}'?", "gi")); + var regExp = "\\s*[A-Za-z0-9\.]*\\s*\\("; + var replaceStr = ""; + for (var i=0; i<variableNames.length; i++) { + // Is string value + if (variableNames[i].indexOf("'${") != -1) + regExp += "'(.*)'"; + else // Number value + regExp += "([0-9]*)"; + + replaceStr += "$" + (i+1); + + // Cleanup variable name + variableNames[i] = variableNames[i].replace(new RegExp("[^A-Za-z0-9]", "gi"), ""); + + if (i != variableNames.length-1) { + regExp += "\\s*,\\s*"; + replaceStr += "<delim>"; + } else + regExp += ".*"; + } + + regExp += "\\);?"; + + // Build variable array + var variables = []; + variables["_function"] = fnName; + var variableValues = link.replace(new RegExp(regExp, "gi"), replaceStr).split('<delim>'); + for (var i=0; i<variableNames.length; i++) + variables[variableNames[i]] = variableValues[i]; + + return variables; + } + + return null; +} + +function parseOptions(opts) { + if (opts == null || opts == "") + return []; + + // Cleanup the options + opts = opts.toLowerCase(); + opts = opts.replace(/;/g, ","); + opts = opts.replace(/[^0-9a-z=,]/g, ""); + + var optionChunks = opts.split(','); + var options = []; + + for (var i=0; i<optionChunks.length; i++) { + var parts = optionChunks[i].split('='); + + if (parts.length == 2) + options[parts[0]] = parts[1]; + } + + return options; +} + +function buildOnClick() { + var formObj = document.forms[0]; + + if (!formObj.ispopup.checked) { + formObj.onclick.value = ""; + return; + } + + var onclick = "window.open('"; + var url = formObj.popupurl.value; + + onclick += url + "','"; + onclick += formObj.popupname.value + "','"; + + if (formObj.popuplocation.checked) + onclick += "location=yes,"; + + if (formObj.popupscrollbars.checked) + onclick += "scrollbars=yes,"; + + if (formObj.popupmenubar.checked) + onclick += "menubar=yes,"; + + if (formObj.popupresizable.checked) + onclick += "resizable=yes,"; + + if (formObj.popuptoolbar.checked) + onclick += "toolbar=yes,"; + + if (formObj.popupstatus.checked) + onclick += "status=yes,"; + + if (formObj.popupdependent.checked) + onclick += "dependent=yes,"; + + if (formObj.popupwidth.value != "") + onclick += "width=" + formObj.popupwidth.value + ","; + + if (formObj.popupheight.value != "") + onclick += "height=" + formObj.popupheight.value + ","; + + if (formObj.popupleft.value != "") { + if (formObj.popupleft.value != "c") + onclick += "left=" + formObj.popupleft.value + ","; + else + onclick += "left='+(screen.availWidth/2-" + (formObj.popupwidth.value/2) + ")+',"; + } + + if (formObj.popuptop.value != "") { + if (formObj.popuptop.value != "c") + onclick += "top=" + formObj.popuptop.value + ","; + else + onclick += "top='+(screen.availHeight/2-" + (formObj.popupheight.value/2) + ")+',"; + } + + if (onclick.charAt(onclick.length-1) == ',') + onclick = onclick.substring(0, onclick.length-1); + + onclick += "');"; + + if (formObj.popupreturn.checked) + onclick += "return false;"; + + // tinyMCE.debug(onclick); + + formObj.onclick.value = onclick; + + if (formObj.href.value == "") + formObj.href.value = url; +} + +function setAttrib(elm, attrib, value) { + var formObj = document.forms[0]; + var valueElm = formObj.elements[attrib.toLowerCase()]; + var dom = tinyMCEPopup.editor.dom; + + if (typeof(value) == "undefined" || value == null) { + value = ""; + + if (valueElm) + value = valueElm.value; + } + + // Clean up the style + if (attrib == 'style') + value = dom.serializeStyle(dom.parseStyle(value)); + + dom.setAttrib(elm, attrib, value); +} + +function getAnchorListHTML(id, target) { + var inst = tinyMCEPopup.editor; + var nodes = inst.dom.select('a.mceItemAnchor,img.mceItemAnchor'), name, i; + var html = ""; + + html += '<select id="' + id + '" name="' + id + '" class="mceAnchorList" o2nfocus="tinyMCE.addSelectAccessibility(event, this, window);" onchange="this.form.' + target + '.value='; + html += 'this.options[this.selectedIndex].value;">'; + html += '<option value="">---</option>'; + + for (i=0; i<nodes.length; i++) { + if ((name = inst.dom.getAttrib(nodes[i], "name")) != "") + html += '<option value="#' + name + '">' + name + '</option>'; + } + + html += '</select>'; + + return html; +} + +function insertAction() { + var inst = tinyMCEPopup.editor; + var elm, elementArray, i; + + elm = inst.selection.getNode(); + checkPrefix(document.forms[0].href); + + elm = inst.dom.getParent(elm, "A"); + + // Remove element if there is no href + if (!document.forms[0].href.value) { + tinyMCEPopup.execCommand("mceBeginUndoLevel"); + i = inst.selection.getBookmark(); + inst.dom.remove(elm, 1); + inst.selection.moveToBookmark(i); + tinyMCEPopup.execCommand("mceEndUndoLevel"); + tinyMCEPopup.close(); + return; + } + + tinyMCEPopup.execCommand("mceBeginUndoLevel"); + + // Create new anchor elements + if (elm == null) { + tinyMCEPopup.execCommand("CreateLink", false, "#mce_temp_url#", {skip_undo : 1}); + + elementArray = tinymce.grep(inst.dom.select("a"), function(n) {return inst.dom.getAttrib(n, 'href') == '#mce_temp_url#';}); + for (i=0; i<elementArray.length; i++) + setAllAttribs(elm = elementArray[i]); + } else + setAllAttribs(elm); + + // Don't move caret if selection was image + if (elm.childNodes.length != 1 || elm.firstChild.nodeName != 'IMG') { + inst.focus(); + inst.selection.select(elm); + inst.selection.collapse(0); + tinyMCEPopup.storeSelection(); + } + + tinyMCEPopup.execCommand("mceEndUndoLevel"); + tinyMCEPopup.close(); +} + +function setAllAttribs(elm) { + var formObj = document.forms[0]; + var href = formObj.href.value; + var target = getSelectValue(formObj, 'targetlist'); + + setAttrib(elm, 'href', href); + setAttrib(elm, 'title'); + setAttrib(elm, 'target', target == '_self' ? '' : target); + setAttrib(elm, 'id'); + setAttrib(elm, 'style'); + setAttrib(elm, 'class', getSelectValue(formObj, 'classlist')); + setAttrib(elm, 'rel'); + setAttrib(elm, 'rev'); + setAttrib(elm, 'charset'); + setAttrib(elm, 'hreflang'); + setAttrib(elm, 'dir'); + setAttrib(elm, 'lang'); + setAttrib(elm, 'tabindex'); + setAttrib(elm, 'accesskey'); + setAttrib(elm, 'type'); + setAttrib(elm, 'onfocus'); + setAttrib(elm, 'onblur'); + setAttrib(elm, 'onclick'); + setAttrib(elm, 'ondblclick'); + setAttrib(elm, 'onmousedown'); + setAttrib(elm, 'onmouseup'); + setAttrib(elm, 'onmouseover'); + setAttrib(elm, 'onmousemove'); + setAttrib(elm, 'onmouseout'); + setAttrib(elm, 'onkeypress'); + setAttrib(elm, 'onkeydown'); + setAttrib(elm, 'onkeyup'); + + // Refresh in old MSIE + if (tinyMCE.isMSIE5) + elm.outerHTML = elm.outerHTML; +} + +function getSelectValue(form_obj, field_name) { + var elm = form_obj.elements[field_name]; + + if (!elm || elm.options == null || elm.selectedIndex == -1) + return ""; + + return elm.options[elm.selectedIndex].value; +} + +function getLinkListHTML(elm_id, target_form_element, onchange_func) { + if (typeof(tinyMCELinkList) == "undefined" || tinyMCELinkList.length == 0) + return ""; + + var html = ""; + + html += '<select id="' + elm_id + '" name="' + elm_id + '"'; + html += ' class="mceLinkList" onfoc2us="tinyMCE.addSelectAccessibility(event, this, window);" onchange="this.form.' + target_form_element + '.value='; + html += 'this.options[this.selectedIndex].value;'; + + if (typeof(onchange_func) != "undefined") + html += onchange_func + '(\'' + target_form_element + '\',this.options[this.selectedIndex].text,this.options[this.selectedIndex].value);'; + + html += '"><option value="">---</option>'; + + for (var i=0; i<tinyMCELinkList.length; i++) + html += '<option value="' + tinyMCELinkList[i][1] + '">' + tinyMCELinkList[i][0] + '</option>'; + + html += '</select>'; + + return html; + + // tinyMCE.debug('-- image list start --', html, '-- image list end --'); +} + +function getTargetListHTML(elm_id, target_form_element) { + var targets = tinyMCEPopup.getParam('theme_advanced_link_targets', '').split(';'); + var html = ''; + + html += '<select id="' + elm_id + '" name="' + elm_id + '" onf2ocus="tinyMCE.addSelectAccessibility(event, this, window);" onchange="this.form.' + target_form_element + '.value='; + html += 'this.options[this.selectedIndex].value;">'; + html += '<option value="_self">' + tinyMCEPopup.getLang('advlink_dlg.target_same') + '</option>'; + html += '<option value="_blank">' + tinyMCEPopup.getLang('advlink_dlg.target_blank') + ' (_blank)</option>'; + html += '<option value="_parent">' + tinyMCEPopup.getLang('advlink_dlg.target_parent') + ' (_parent)</option>'; + html += '<option value="_top">' + tinyMCEPopup.getLang('advlink_dlg.target_top') + ' (_top)</option>'; + + for (var i=0; i<targets.length; i++) { + var key, value; + + if (targets[i] == "") + continue; + + key = targets[i].split('=')[0]; + value = targets[i].split('=')[1]; + + html += '<option value="' + key + '">' + value + ' (' + key + ')</option>'; + } + + html += '</select>'; + + return html; +} + +// While loading +preinit(); +tinyMCEPopup.onInit.add(init); diff --git a/lib/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink/langs/de_dlg.js b/lib/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink/langs/de_dlg.js new file mode 100644 index 0000000..5a68302 --- /dev/null +++ b/lib/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink/langs/de_dlg.js @@ -0,0 +1,52 @@ +tinyMCE.addI18n('de.advlink_dlg',{
+title:"Link einf\u00FCgen/bearbeiten",
+url:"Adresse",
+target:"Fenster",
+titlefield:"Titel",
+is_email:"Diese Adresse scheint eine E-Mail-Adresse zu sein. M\u00F6chten Sie das dazu ben\u00F6tigte \"mailto:\" voranstellen?",
+is_external:"Diese Adresse scheint ein externer Link zu sein. M\u00F6chten Sie das dazu ben\u00F6tigte \"http://\" voranstellen?",
+list:"Linkliste",
+general_tab:"Allgemein",
+popup_tab:"Popup",
+events_tab:"Ereignisse",
+advanced_tab:"Erweitert",
+general_props:"Allemeine Eigenschaften",
+popup_props:"Popup-Eigenschaften",
+event_props:"Ereignisse",
+advanced_props:"Erweiterte Eigenschaften",
+popup_opts:"Optionen",
+anchor_names:"Anker",
+target_same:"Im selben Fenster/Frame \u00F6ffnen",
+target_parent:"Im \u00FCbergeordneten Fenster/Frame \u00F6ffnen",
+target_top:"Im obersten Frame \u00F6ffnen (sprengt das Frameset)",
+target_blank:"In neuem Fenster \u00F6ffnen",
+popup:"JavaScript-Popup",
+popup_url:"Popup-Adresse",
+popup_name:"Name des Fensters",
+popup_return:"Link trotz Popup folgen",
+popup_scrollbars:"Scrollbalken anzeigen",
+popup_statusbar:"Statusleiste anzeigen",
+popup_toolbar:"Werkzeugleisten anzeigen",
+popup_menubar:"Browsermen\u00FC anzeigen",
+popup_location:"Adressleiste anzeigen",
+popup_resizable:"Vergr\u00F6\u00DFern des Fenster zulassen",
+popup_dependent:"Vom Elternfenster abh\u00E4ngig <br /> (nur Mozilla/Firefox) ",
+popup_size:"Gr\u00F6\u00DFe",
+popup_position:"Position (X/Y)",
+id:"ID",
+style:"Format",
+classes:"Klassen",
+target_name:"Name der Zielseite",
+langdir:"Schriftrichtung",
+target_langcode:"Sprache der Zielseite",
+langcode:"Sprachcode",
+encoding:"Zeichenkodierung der Zielseite",
+mime:"MIME-Type der Zielseite",
+rel:"Beziehung der Seite zum Linkziel",
+rev:"Beziehung des Linkziels zur Seite",
+tabindex:"Tabindex",
+accesskey:"Tastenk\u00FCrzel",
+ltr:"Links nach rechts",
+rtl:"Rechts nach links",
+link_list:"Linkliste"
+});
\ No newline at end of file diff --git a/lib/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink/langs/en_dlg.js b/lib/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink/langs/en_dlg.js new file mode 100644 index 0000000..8ef9c79 --- /dev/null +++ b/lib/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink/langs/en_dlg.js @@ -0,0 +1,52 @@ +tinyMCE.addI18n('en.advlink_dlg',{ +title:"Insert/edit link", +url:"Link URL", +target:"Target", +titlefield:"Title", +is_email:"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?", +is_external:"The URL you entered seems to external link, do you want to add the required http:// prefix?", +list:"Link list", +general_tab:"General", +popup_tab:"Popup", +events_tab:"Events", +advanced_tab:"Advanced", +general_props:"General properties", +popup_props:"Popup properties", +event_props:"Events", +advanced_props:"Advanced properties", +popup_opts:"Options", +anchor_names:"Anchors", +target_same:"Open in this window / frame", +target_parent:"Open in parent window / frame", +target_top:"Open in top frame (replaces all frames)", +target_blank:"Open in new window", +popup:"Javascript popup", +popup_url:"Popup URL", +popup_name:"Window name", +popup_return:"Insert 'return false'", +popup_scrollbars:"Show scrollbars", +popup_statusbar:"Show status bar", +popup_toolbar:"Show toolbars", +popup_menubar:"Show menu bar", +popup_location:"Show location bar", +popup_resizable:"Make window resizable", +popup_dependent:"Dependent (Mozilla/Firefox only)", +popup_size:"Size", +popup_position:"Position (X/Y)", +id:"Id", +style:"Style", +classes:"Classes", +target_name:"Target name", +langdir:"Language direction", +target_langcode:"Target language", +langcode:"Language code", +encoding:"Target character encoding", +mime:"Target MIME type", +rel:"Relationship page to target", +rev:"Relationship target to page", +tabindex:"Tabindex", +accesskey:"Accesskey", +ltr:"Left to right", +rtl:"Right to left", +link_list:"Link list" +});
\ No newline at end of file diff --git a/lib/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink/link.htm b/lib/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink/link.htm new file mode 100644 index 0000000..7b82b44 --- /dev/null +++ b/lib/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink/link.htm @@ -0,0 +1,311 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> + <title>{#advlink_dlg.title}</title> + <script type="text/javascript" src="../../tiny_mce_popup.js"></script> + <script type="text/javascript" src="../../utils/mctabs.js"></script> + <script type="text/javascript" src="../../utils/form_utils.js"></script> + <script type="text/javascript" src="../../utils/validate.js"></script> + <script type="text/javascript" src="js/advlink.js"></script> + <link href="css/advlink.css" rel="stylesheet" type="text/css" /> + <base target="_self" /> +</head> +<body id="advlink" style="display: none" class="tinyMCE"> + <form onsubmit="insertAction();return false;" action="#"> + <div class="tabs"> + <ul> + <li id="general_tab" class="current"><span><a href="javascript:mcTabs.displayTab('general_tab','general_panel');" onmousedown="return false;">{#advlink_dlg.general_tab}</a></span></li> + <!-- <li id="popup_tab"><span><a href="javascript:mcTabs.displayTab('popup_tab','popup_panel');" onmousedown="return false;">{#advlink_dlg.popup_tab}</a></span></li> --> + <!-- <li id="events_tab"><span><a href="javascript:mcTabs.displayTab('events_tab','events_panel');" onmousedown="return false;">{#advlink_dlg.events_tab}</a></span></li> --> + <li id="advanced_tab"><span><a href="javascript:mcTabs.displayTab('advanced_tab','advanced_panel');" onmousedown="return false;">{#advlink_dlg.advanced_tab}</a></span></li> + </ul> + </div> + + <div class="panel_wrapper"> + <div id="general_panel" class="panel current"> + <fieldset class="module"> + <legend>{#advlink_dlg.general_props}</legend> + <div class="row first"> + <div class="column span-4"><label id="hreflabel" for="href">{#advlink_dlg.url}</label></div> + <div class="column span-flexible"> + <input id="href" name="href" type="text" class="mceFocus" value="" onchange="selectByValue(this.form,'linklisthref',this.value);" /> + <div id="hrefbrowsercontainer"> </div> + </div> + </div> + <div id="linklisthrefrow" class="row"> + <div class="column span-4"><label for="linklisthref">{#advlink_dlg.list}</label></div> + <div class="column span-flexible"><div id="linklisthrefcontainer"> </div></div> + </div> + <div class="row"> + <div class="column span-4"><label for="anchorlist">{#advlink_dlg.anchor_names}</label></div> + <div class="column span-flexible"><div id="anchorlistcontainer"> </div></div> + </div> + <div class="row"> + <div class="column span-4"><label id="targetlistlabel" for="targetlist">{#advlink_dlg.target}</label></div> + <div class="column span-flexible"><div id="targetlistcontainer"> </div></div> + </div> + <div class="row"> + <div class="column span-4"><label id="titlelabel" for="title">{#advlink_dlg.titlefield}</label></div> + <div class="column span-flexible"><input id="title" name="title" type="text" value="" /></div> + </div> + <div class="row last"> + <div class="column span-4"><label id="classlabel" for="classlist">{#class_name}</label></div> + <div class="column span-flexible"> + <select id="classlist" name="classlist" onchange="changeClass();"> + <option value="" selected>{#not_set}</option> + </select> + </div> + </div> + </fieldset> + </div> + + <div id="popup_panel" class="panel"> + <fieldset class="module"> + <legend>{#advlink_dlg.popup_props}</legend> + <div class="row first"> + <div class="column span-4"><label id="ispopuplabel" for="ispopup">{#advlink_dlg.popup}</label></div> + <div class="column span-flexible"><input type="checkbox" id="ispopup" name="ispopup" class="radio" onclick="setPopupControlsDisabled(!this.checked);buildOnClick();" /></div> + </div> + <div class="row"> + <div class="column span-4"><label for="popupurl">{#advlink_dlg.popup_url}</label></div> + <div class="column span-flexible"> + <input type="text" name="popupurl" id="popupurl" value="" onchange="buildOnClick();" /> + <div id="popupurlbrowsercontainer"> </div> + </div> + </div> + <div class="row"> + <div class="column span-4"><label for="popupname">{#advlink_dlg.popup_name}</label></div> + <div class="column span-flexible"><input type="text" name="popupname" id="popupname" value="" onchange="buildOnClick();" /></div> + </div> + <div class="row"> + <div class="column span-4"><label>{#advlink_dlg.popup_size}</label></div> + <div class="column span-flexible"> + <input type="text" id="popupwidth" class="number" name="popupwidth" value="" onchange="buildOnClick();" /> x + <input type="text" id="popupheight" class="number" name="popupheight" value="" onchange="buildOnClick();" /> px + </div> + </div> + <div class="row"> + <div class="column span-4"><label>{#advlink_dlg.popup_position}</label></div> + <div class="column span-flexible"> + <input type="text" id="popupleft" class="number" name="popupleft" value="" onchange="buildOnClick();" /> / + <input type="text" id="popuptop" class="number" name="popuptop" value="" onchange="buildOnClick();" /> (c /c = center) + </div> + </div> + <div class="row combine"> + <div class="column span-4"><label id="popuplocationlabel" for="popuplocation">{#advlink_dlg.popup_location}</label></div> + <div class="column span-flexible"><input type="checkbox" id="popuplocation" name="popuplocation" class="checkbox" onchange="buildOnClick();" /></div> + </div> + <div class="row combine"> + <div class="column span-4"><label id="popupscrollbarslabel" for="popupscrollbars">{#advlink_dlg.popup_scrollbars}</label></div> + <div class="column span-flexible"><input type="checkbox" id="popupscrollbars" name="popupscrollbars" class="checkbox" onchange="buildOnClick();" /></div> + </div> + <div class="row"> + <div class="column span-4"><label id="popupmenubarlabel" for="popupmenubar">{#advlink_dlg.popup_menubar}</label></div> + <div class="column span-flexible"><input type="checkbox" id="popupmenubar" name="popupmenubar" class="checkbox" onchange="buildOnClick();" /></div> + </div> + <div class="row"> + <div class="column span-4"><label id="popupresizablelabel" for="popupresizable">{#advlink_dlg.popup_resizable}</label></div> + <div class="column span-flexible"><input type="checkbox" id="popupresizable" name="popupresizable" class="checkbox" onchange="buildOnClick();" /></div> + </div> + <div class="row combine"> + <div class="column span-4"><label id="popuptoolbarlabel" for="popuptoolbar">{#advlink_dlg.popup_toolbar}</label></div> + <div class="column span-flexible"> + <input type="checkbox" id="popuptoolbar" name="popuptoolbar" class="checkbox" onchange="buildOnClick();" /> + <input type="checkbox" id="popupdependent" name="popupdependent" class="checkbox additional" onchange="buildOnClick();" /> + <label id="popupdependentlabel" class="additional" for="popupdependent">{#advlink_dlg.popup_dependent}</label> + </div> + </div> + <div class="row"> + <div class="column span-4"><label id="popupstatuslabel" for="popupstatus">{#advlink_dlg.popup_statusbar}</label></div> + <div class="column span-flexible"><input type="checkbox" id="popupstatus" name="popupstatus" class="checkbox" onchange="buildOnClick();" /></div> + </div> + <div class="row"> + <div class="column span-4"><label id="popupreturnlabel" for="popupreturn">{#advlink_dlg.popup_return}</label></div> + <div class="column span-flexible"><input type="checkbox" id="popupreturn" name="popupreturn" class="checkbox" onchange="buildOnClick();" checked="checked" /></div> + </div> + </fieldset> + </div> + + <div id="advanced_panel" class="panel"> + <fieldset class="module"> + <legend>{#advlink_dlg.advanced_props}</legend> + <div class="row first last"> + <div class="column span-4"><label id="idlabel" for="id">{#advlink_dlg.id}</label></div> + <div class="column span-flexible"><input id="id" name="id" type="text" value="" /></div> + </div> + <div class="row" style="display:none"> + <div class="column span-4"><label id="stylelabel" for="style">{#advlink_dlg.style}</label></div> + <div class="column span-flexible"><input type="text" id="style" name="style" value="" /></div> + </div> + <div class="row" style="display:none"> + <div class="column span-4"><label id="classeslabel" for="classes">{#advlink_dlg.classes}</label></div> + <div class="column span-flexible"><input type="text" id="classes" name="classes" value="" onchange="selectByValue(this.form,'classlist',this.value,true);" /></div> + </div> + <div class="row" style="display:none"> + <div class="column span-4"><label id="targetlabel" for="target">{#advlink_dlg.target_name}</label></div> + <div class="column span-flexible"><input type="text" id="target" name="target" value="" onchange="selectByValue(this.form,'targetlist',this.value,true);" /></div> + </div> + <div class="row" style="display:none"> + <div class="column span-4"><label id="dirlabel" for="dir">{#advlink_dlg.langdir}</label></div> + <div class="column span-flexible"> + <select id="dir" name="dir"> + <option value="">{#not_set}</option> + <option value="ltr">{#advlink_dlg.ltr}</option> + <option value="rtl">{#advlink_dlg.rtl}</option> + </select> + </div> + </div> + <div class="row" style="display:none"> + <div class="column span-4"><label id="hreflanglabel" for="hreflang">{#advlink_dlg.target_langcode}</label></div> + <div class="column span-flexible"><input type="text" id="hreflang" name="hreflang" value="" /></div> + </div> + <div class="row" style="display:none"> + <div class="column span-4"><label id="langlabel" for="lang">{#advlink_dlg.langcode}</label></div> + <div class="column span-flexible"><input id="lang" name="lang" type="text" value="" /></div> + </div> + <div class="row" style="display:none"> + <div class="column span-4"><label id="charsetlabel" for="charset">{#advlink_dlg.encoding}</label></div> + <div class="column span-flexible"><input type="text" id="charset" name="charset" value="" /></div> + </div> + <div class="row" style="display:none"> + <div class="column span-4"><label id="typelabel" for="type">{#advlink_dlg.mime}</label></div> + <div class="column span-flexible"><input type="text" id="type" name="type" value="" /></div> + </div> + <div class="row" style="display:none"> + <div class="column span-4"><label id="rellabel" for="rel">{#advlink_dlg.rel}</label></div> + <div class="column span-flexible"> + <select id="rel" name="rel"> + <option value="">{#not_set}</option> + <option value="lightbox">Lightbox</option> + <option value="alternate">Alternate</option> + <option value="designates">Designates</option> + <option value="stylesheet">Stylesheet</option> + <option value="start">Start</option> + <option value="next">Next</option> + <option value="prev">Prev</option> + <option value="contents">Contents</option> + <option value="index">Index</option> + <option value="glossary">Glossary</option> + <option value="copyright">Copyright</option> + <option value="chapter">Chapter</option> + <option value="subsection">Subsection</option> + <option value="appendix">Appendix</option> + <option value="help">Help</option> + <option value="bookmark">Bookmark</option> + <option value="nofollow">No Follow</option> + <option value="tag">Tag</option> + </select> + </div> + </div> + <div class="row" style="display:none"> + <div class="column span-4"><label id="revlabel" for="rev">{#advlink_dlg.rev}</label></div> + <div class="column span-flexible"> + <select id="rev" name="rev"> + <option value="">{#not_set}</option> + <option value="alternate">Alternate</option> + <option value="designates">Designates</option> + <option value="stylesheet">Stylesheet</option> + <option value="start">Start</option> + <option value="next">Next</option> + <option value="prev">Prev</option> + <option value="contents">Contents</option> + <option value="index">Index</option> + <option value="glossary">Glossary</option> + <option value="copyright">Copyright</option> + <option value="chapter">Chapter</option> + <option value="subsection">Subsection</option> + <option value="appendix">Appendix</option> + <option value="help">Help</option> + <option value="bookmark">Bookmark</option> + </select> + </div> + </div> + <div class="row" style="display:none"> + <div class="column span-4"><label id="tabindexlabel" for="tabindex">{#advlink_dlg.tabindex}</label></div> + <div class="column span-flexible"><input type="text" id="tabindex" name="tabindex" value="" /></div> + </div> + <div class="row" style="display:none"> + <div class="column span-4"><label id="accesskeylabel" for="accesskey">{#advlink_dlg.accesskey}</label></div> + <div class="column span-flexible"><input type="text" id="accesskey" name="accesskey" value="" /></div> + </div> + </fieldset> + </div> + + <!-- Not Edited --> + <div id="events_panel" class="panel"> + <fieldset> + <legend>{#advlink_dlg.event_props}</legend> + + <table border="0" cellpadding="0" cellspacing="4"> + <tr> + <td class="column1"><label for="onfocus">onfocus</label></td> + <td><input id="onfocus" name="onfocus" type="text" value="" /></td> + </tr> + + <tr> + <td class="column1"><label for="onblur">onblur</label></td> + <td><input id="onblur" name="onblur" type="text" value="" /></td> + </tr> + + <tr> + <td class="column1"><label for="onclick">onclick</label></td> + <td><input id="onclick" name="onclick" type="text" value="" /></td> + </tr> + + <tr> + <td class="column1"><label for="ondblclick">ondblclick</label></td> + <td><input id="ondblclick" name="ondblclick" type="text" value="" /></td> + </tr> + + <tr> + <td class="column1"><label for="onmousedown">onmousedown</label></td> + <td><input id="onmousedown" name="onmousedown" type="text" value="" /></td> + </tr> + + <tr> + <td class="column1"><label for="onmouseup">onmouseup</label></td> + <td><input id="onmouseup" name="onmouseup" type="text" value="" /></td> + </tr> + + <tr> + <td class="column1"><label for="onmouseover">onmouseover</label></td> + <td><input id="onmouseover" name="onmouseover" type="text" value="" /></td> + </tr> + + <tr> + <td class="column1"><label for="onmousemove">onmousemove</label></td> + <td><input id="onmousemove" name="onmousemove" type="text" value="" /></td> + </tr> + + <tr> + <td class="column1"><label for="onmouseout">onmouseout</label></td> + <td><input id="onmouseout" name="onmouseout" type="text" value="" /></td> + </tr> + + <tr> + <td class="column1"><label for="onkeypress">onkeypress</label></td> + <td><input id="onkeypress" name="onkeypress" type="text" value="" /></td> + </tr> + + <tr> + <td class="column1"><label for="onkeydown">onkeydown</label></td> + <td><input id="onkeydown" name="onkeydown" type="text" value="" /></td> + </tr> + + <tr> + <td class="column1"><label for="onkeyup">onkeyup</label></td> + <td><input id="onkeyup" name="onkeyup" type="text" value="" /></td> + </tr> + </table> + </fieldset> + </div> + </div> + <div class="mceActionPanel module submit-row"> + <ul class="submit-row"> + <li class="cancel-button-container left"><input type="button" id="cancel" class="cancel" name="cancel" value="{#cancel}" onclick="tinyMCEPopup.close();" /></li> + <li class="submit-button-container"><input type="submit" id="insert" class="default" name="insert" value="{#insert}" /></li> + </ul> + </div> + </form> +</body> +</html> |