]> CyberLeo.Net >> Repos - Github/sugarcrm.git/blob - include/javascript/tiny_mce/plugins/advlink/editor_plugin_src.js
Release 6.5.0
[Github/sugarcrm.git] / include / javascript / tiny_mce / plugins / advlink / editor_plugin_src.js
1 /**
2  * editor_plugin_src.js
3  *
4  * Copyright 2009, Moxiecode Systems AB
5  * Released under LGPL License.
6  *
7  * License: http://tinymce.moxiecode.com/license
8  * Contributing: http://tinymce.moxiecode.com/contributing
9  */
10
11 (function() {
12         tinymce.create('tinymce.plugins.AdvancedLinkPlugin', {
13                 init : function(ed, url) {
14                         this.editor = ed;
15
16                         // Register commands
17                         ed.addCommand('mceAdvLink', function() {
18                                 var se = ed.selection;
19
20                                 // No selection and not in link
21                                 if (se.isCollapsed() && !ed.dom.getParent(se.getNode(), 'A'))
22                                         return;
23
24                                 ed.windowManager.open({
25                                         file : url + '/link.htm',
26                                         width : 480 + parseInt(ed.getLang('advlink.delta_width', 0)),
27                                         height : 400 + parseInt(ed.getLang('advlink.delta_height', 0)),
28                                         inline : 1
29                                 }, {
30                                         plugin_url : url
31                                 });
32                         });
33
34                         // Register buttons
35                         ed.addButton('link', {
36                                 title : 'advlink.link_desc',
37                                 cmd : 'mceAdvLink'
38                         });
39
40                         ed.addShortcut('ctrl+k', 'advlink.advlink_desc', 'mceAdvLink');
41
42                         ed.onNodeChange.add(function(ed, cm, n, co) {
43                                 cm.setDisabled('link', co && n.nodeName != 'A');
44                                 cm.setActive('link', n.nodeName == 'A' && !n.name);
45                         });
46                 },
47
48                 getInfo : function() {
49                         return {
50                                 longname : 'Advanced link',
51                                 author : 'Moxiecode Systems AB',
52                                 authorurl : 'http://tinymce.moxiecode.com',
53                                 infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advlink',
54                                 version : tinymce.majorVersion + "." + tinymce.minorVersion
55                         };
56                 }
57         });
58
59         // Register plugin
60         tinymce.PluginManager.add('advlink', tinymce.plugins.AdvancedLinkPlugin);
61 })();