includes/clientside/tinymce/plugins/advlink/editor_plugin_src.js
changeset 395 fa4c5ecb7c9a
parent 335 67bd3121a12e
equal deleted inserted replaced
394:fbfdcea634a7 395:fa4c5ecb7c9a
     1 /**
     1 /**
     2  * $Id: editor_plugin_src.js 482 2007-12-10 16:51:29Z spocke $
     2  * $Id: editor_plugin_src.js 539 2008-01-14 19:08:58Z spocke $
     3  *
     3  *
     4  * @author Moxiecode
     4  * @author Moxiecode
     5  * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.
     5  * @copyright Copyright © 2004-2008, Moxiecode Systems AB, All rights reserved.
     6  */
     6  */
     7 
     7 
     8 (function() {
     8 (function() {
     9 	tinymce.create('tinymce.plugins.AdvancedLinkPlugin', {
     9 	tinymce.create('tinymce.plugins.AdvancedLinkPlugin', {
    10 		init : function(ed, url) {
    10 		init : function(ed, url) {
    13 			// Register commands
    13 			// Register commands
    14 			ed.addCommand('mceAdvLink', function() {
    14 			ed.addCommand('mceAdvLink', function() {
    15 				var se = ed.selection;
    15 				var se = ed.selection;
    16 
    16 
    17 				// No selection and not in link
    17 				// No selection and not in link
    18 				if (se.isCollapsed() && se.getNode().nodeName != 'A')
    18 				if (se.isCollapsed() && !ed.dom.getParent(se.getNode(), 'A'))
    19 					return;
    19 					return;
    20 
    20 
    21 				ed.windowManager.open({
    21 				ed.windowManager.open({
    22 					file : url + '/link.htm',
    22 					file : url + '/link.htm',
    23 					width : 480 + ed.getLang('advlink.delta_width', 0),
    23 					width : 480 + parseInt(ed.getLang('advlink.delta_width', 0)),
    24 					height : 400 + ed.getLang('advlink.delta_height', 0),
    24 					height : 400 + parseInt(ed.getLang('advlink.delta_height', 0)),
    25 					inline : 1
    25 					inline : 1
    26 				}, {
    26 				}, {
    27 					plugin_url : url
    27 					plugin_url : url
    28 				});
    28 				});
    29 			});
    29 			});
    36 
    36 
    37 			ed.addShortcut('ctrl+k', 'advlink.advlink_desc', 'mceAdvLink');
    37 			ed.addShortcut('ctrl+k', 'advlink.advlink_desc', 'mceAdvLink');
    38 
    38 
    39 			ed.onNodeChange.add(function(ed, cm, n, co) {
    39 			ed.onNodeChange.add(function(ed, cm, n, co) {
    40 				cm.setDisabled('link', co && n.nodeName != 'A');
    40 				cm.setDisabled('link', co && n.nodeName != 'A');
    41 				cm.setActive('link', n.nodeName == 'A');
    41 				cm.setActive('link', n.nodeName == 'A' && !n.name);
    42 			});
    42 			});
    43 		},
    43 		},
    44 
    44 
    45 		getInfo : function() {
    45 		getInfo : function() {
    46 			return {
    46 			return {