Changeset 330:251a7909b0fe for plugins/tags
- Timestamp:
- 06/03/11 11:55:39 (14 years ago)
- Branch:
- wysiwyg
- Location:
- plugins/tags
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
plugins/tags/_admin.php
r317 r330 39 39 40 40 $core->addBehavior('adminDashboardFavs',array('tagsBehaviors','dashboardFavs')); 41 42 $core->addBehavior('adminToolbar',array('tagsBehaviors','adminToolbar')); 41 43 42 44 # BEHAVIORS … … 122 124 "dotclear.msg.entry = '".html::escapeJS(__('entry'))."';\n". 123 125 "dotclear.msg.entries = '".html::escapeJS(__('entries'))."';\n". 124 "dcToolBarManager.bind('onInit','wiki',function() {\n".125 "jsToolBar.prototype.elements.tag.title = '".html::escapeJS(__('Tag'))."';\n".126 "jsToolBar.prototype.elements.tag.url = '".html::escapeJS($tag_url)."';\n".127 "});\n".128 "dcToolBarManager.bind('onInit','xhtml',function() {\n".129 "tinymce.plugins.dcTag.title = '".html::escapeJS(__('Tag'))."';\n".130 "tinymce.plugins.dcTag.url = '".html::escapeJS($tag_url)."';\n".131 "});\n".132 126 "\n//]]>\n". 133 127 "</script>\n". … … 137 131 public static function postsActionsHeaders() 138 132 { 139 $tag_url = $GLOBALS['core']->blog->url.$GLOBALS['core']->url->getBase('tag');140 141 133 $opts = $GLOBALS['core']->auth->getOptions(); 142 134 $type = isset($opts['tag_list_format']) ? $opts['tag_list_format'] : 'more'; … … 327 319 } 328 320 } 321 322 public static function adminToolbar($tb) 323 { 324 $tag_url = $GLOBALS['core']->blog->getQMarkURL().$GLOBALS['core']->url->getBase('tag'); 325 326 $tb->addSettings('xhtml',array('tag_url_pattern' => $tag_url)); 327 $tb->addPlugins('xhtml',array('dcTag' => false)); 328 $tb->addButtons('xhtml',array(3 => array('tag'))); 329 } 329 330 } 330 331 ?> -
plugins/tags/js/post.js
r317 r330 57 57 }); 58 58 }); 59 });60 59 61 // Toolbar button for tags62 dcToolBarManager.bind('onInit','wiki',function() {63 jsToolBar.prototype.elements.tagSpace = {type: 'space'};64 65 jsToolBar.prototype.elements.tag = {type: 'button', title: 'Keyword', fn:{} };66 jsToolBar.prototype.elements.tag.context = 'post';67 jsToolBar.prototype.elements.tag.icon = 'index.php?pf=tags/img/tag-add.png';68 jsToolBar.prototype.elements.tag.fn.wiki = function() {69 this.encloseSelection('','',function(str) {70 if (str == '') { window.alert(dotclear.msg.no_selection); return ''; }71 if (str.indexOf(',') != -1) {72 return str;73 } else {74 window.dc_tag_editor.addMeta(str);75 return '['+str+'|tag:'+str+']';76 }77 });78 };79 jsToolBar.prototype.elements.tag.fn.xhtml = function() {80 var url = this.elements.tag.url;81 this.encloseSelection('','',function(str) {82 if (str == '') { window.alert(dotclear.msg.no_selection); return ''; }83 if (str.indexOf(',') != -1) {84 return str;85 } else {86 window.dc_tag_editor.addMeta(str);87 return '<a href="'+this.stripBaseURL(url+'/'+str)+'">'+str+'</a>';88 }89 });90 };91 jsToolBar.prototype.elements.tag.fn.wysiwyg = function() {92 var t = this.getSelectedText();93 94 if (t == '') { window.alert(dotclear.msg.no_selection); return; }95 if (t.indexOf(',') != -1) { return; }96 97 var n = this.getSelectedNode();98 var a = document.createElement('a');99 a.href = this.stripBaseURL(this.elements.tag.url+'/'+t);100 a.appendChild(n);101 this.insertNode(a);102 window.dc_tag_editor.addMeta(t);103 };104 });105 106 dcToolBarManager.bind('onInit','xhtml',function() {107 60 tinymce.create('tinymce.plugins.dcTag', { 108 61 init : function(ed, url) { … … 115 68 return; 116 69 } 117 tinymce.execCommand("mceInsertLink", false, tinymce.plugins.dcTag.url+'/'+se.getContent(), {skip_undo : 1});70 118 71 window.dc_tag_editor.addMeta(se.getContent()); 72 tinymce.execCommand('mceInsertLink', false, '#mce_temp_url#', {skip_undo : 1}); 73 74 elementArray = tinymce.grep(ed.dom.select("a"),function(n) {return ed.dom.getAttrib(n,'href') == '#mce_temp_url#';}); 75 for (i=0; i<elementArray.length; i++) { 76 var node = elementArray[i]; 77 ed.dom.setAttrib(node,'href',ed.getParam('tag_url_pattern')+'/'+se.getContent()); 78 ed.dom.setAttrib(node,'title','Tag: ' + se.getContent()); 79 } 80 ed.focus(); 81 ed.selection.select(node); 82 ed.selection.collapse(0); 83 tinymce.storeSelection(); 84 tinymce.execCommand('mceEndUndoLevel'); 119 85 }); 120 86 121 87 ed.addButton('tag', { 122 title : tinymce.plugins.dcTag.title,88 title : 'dcTag.tag_desc', 123 89 cmd : 'dcTag', 124 90 image :'index.php?pf=tags/img/tag-add.png' 125 91 }); 126 92 127 ed.addShortcut('ctrl+alt+t', ' advlink.advlink_desc', 'dcTag');93 ed.addShortcut('ctrl+alt+t', 'dcTag.ta_desc', 'dcTag'); 128 94 129 95 ed.onNodeChange.add(function(ed, cm, n, co) { 130 cm.setDisabled('tag', co && n.nodeName != 'A'); 131 cm.setActive('tag', n.nodeName == 'A' && !n.name); 96 cm.setDisabled('tag', co || ed.dom.getParent(n, 'A')); 132 97 }); 133 98 }, … … 145 110 146 111 tinymce.PluginManager.add('dcTag', tinymce.plugins.dcTag); 147 148 tinymce.settings.plugins += ",-dcTag";149 tinymce.settings.theme_advanced_buttons3 += ",tag";150 112 });
Note: See TracChangeset
for help on using the changeset viewer.