diff options
| author | Jesse Morgan <jesse@jesterpm.net> | 2011-06-02 17:20:54 -0700 | 
|---|---|---|
| committer | Jesse Morgan <jesse@jesterpm.net ; true> | 2011-06-02 17:20:54 -0700 | 
| commit | 0720091ca73b9714aab2b38c3682c15a0cbd4533 (patch) | |
| tree | 0d77e48eb52d3f39123659550976c5999effddff /htdocs/js/tiny_mce/plugins/advlist | |
| parent | 1800a1e9022a9f4316e0d57a650faed9da0e8df4 (diff) | |
Added pages
Diffstat (limited to 'htdocs/js/tiny_mce/plugins/advlist')
| -rw-r--r-- | htdocs/js/tiny_mce/plugins/advlist/editor_plugin.js | 1 | ||||
| -rw-r--r-- | htdocs/js/tiny_mce/plugins/advlist/editor_plugin_src.js | 161 | 
2 files changed, 162 insertions, 0 deletions
diff --git a/htdocs/js/tiny_mce/plugins/advlist/editor_plugin.js b/htdocs/js/tiny_mce/plugins/advlist/editor_plugin.js new file mode 100644 index 0000000..8895112 --- /dev/null +++ b/htdocs/js/tiny_mce/plugins/advlist/editor_plugin.js @@ -0,0 +1 @@ +(function(){var a=tinymce.each;tinymce.create("tinymce.plugins.AdvListPlugin",{init:function(b,c){var d=this;d.editor=b;function e(g){var f=[];a(g.split(/,/),function(h){f.push({title:"advlist."+(h=="default"?"def":h.replace(/-/g,"_")),styles:{listStyleType:h=="default"?"":h}})});return f}d.numlist=b.getParam("advlist_number_styles")||e("default,lower-alpha,lower-greek,lower-roman,upper-alpha,upper-roman");d.bullist=b.getParam("advlist_bullet_styles")||e("default,circle,disc,square");if(tinymce.isIE&&/MSIE [2-7]/.test(navigator.userAgent)){d.isIE7=true}},createControl:function(d,b){var f=this,e,h;if(d=="numlist"||d=="bullist"){if(f[d][0].title=="advlist.def"){h=f[d][0]}function c(i,k){var j=true;a(k.styles,function(m,l){if(f.editor.dom.getStyle(i,l)!=m){j=false;return false}});return j}function g(){var k,i=f.editor,l=i.dom,j=i.selection;k=l.getParent(j.getNode(),"ol,ul");if(!k||k.nodeName==(d=="bullist"?"OL":"UL")||c(k,h)){i.execCommand(d=="bullist"?"InsertUnorderedList":"InsertOrderedList")}if(h){k=l.getParent(j.getNode(),"ol,ul");if(k){l.setStyles(k,h.styles);k.removeAttribute("data-mce-style")}}i.focus()}e=b.createSplitButton(d,{title:"advanced."+d+"_desc","class":"mce_"+d,onclick:function(){g()}});e.onRenderMenu.add(function(i,j){j.onShowMenu.add(function(){var m=f.editor.dom,l=m.getParent(f.editor.selection.getNode(),"ol,ul"),k;if(l||h){k=f[d];a(j.items,function(n){var o=true;n.setSelected(0);if(l&&!n.isDisabled()){a(k,function(p){if(p.id==n.id){if(!c(l,p)){o=false;return false}}});if(o){n.setSelected(1)}}});if(!l){j.items[h.id].setSelected(1)}}});j.add({id:f.editor.dom.uniqueId(),title:"advlist.types","class":"mceMenuItemTitle",titleItem:true}).setDisabled(1);a(f[d],function(k){if(f.isIE7&&k.styles.listStyleType=="lower-greek"){return}k.id=f.editor.dom.uniqueId();j.add({id:k.id,title:k.title,onclick:function(){h=k;g()}})})});return e}},getInfo:function(){return{longname:"Advanced lists",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advlist",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("advlist",tinymce.plugins.AdvListPlugin)})();
\ No newline at end of file diff --git a/htdocs/js/tiny_mce/plugins/advlist/editor_plugin_src.js b/htdocs/js/tiny_mce/plugins/advlist/editor_plugin_src.js new file mode 100644 index 0000000..13ef02d --- /dev/null +++ b/htdocs/js/tiny_mce/plugins/advlist/editor_plugin_src.js @@ -0,0 +1,161 @@ +/**
 + * editor_plugin_src.js
 + *
 + * Copyright 2009, Moxiecode Systems AB
 + * Released under LGPL License.
 + *
 + * License: http://tinymce.moxiecode.com/license
 + * Contributing: http://tinymce.moxiecode.com/contributing
 + */
 +
 +(function() {
 +	var each = tinymce.each;
 +
 +	tinymce.create('tinymce.plugins.AdvListPlugin', {
 +		init : function(ed, url) {
 +			var t = this;
 +
 +			t.editor = ed;
 +
 +			function buildFormats(str) {
 +				var formats = [];
 +
 +				each(str.split(/,/), function(type) {
 +					formats.push({
 +						title : 'advlist.' + (type == 'default' ? 'def' : type.replace(/-/g, '_')),
 +						styles : {
 +							listStyleType : type == 'default' ? '' : type
 +						}
 +					});
 +				});
 +
 +				return formats;
 +			};
 +
 +			// Setup number formats from config or default
 +			t.numlist = ed.getParam("advlist_number_styles") || buildFormats("default,lower-alpha,lower-greek,lower-roman,upper-alpha,upper-roman");
 +			t.bullist = ed.getParam("advlist_bullet_styles") || buildFormats("default,circle,disc,square");
 +
 +			if (tinymce.isIE && /MSIE [2-7]/.test(navigator.userAgent))
 +				t.isIE7 = true;
 +		},
 +
 +		createControl: function(name, cm) {
 +			var t = this, btn, format;
 +
 +			if (name == 'numlist' || name == 'bullist') {
 +				// Default to first item if it's a default item
 +				if (t[name][0].title == 'advlist.def')
 +					format = t[name][0];
 +
 +				function hasFormat(node, format) {
 +					var state = true;
 +
 +					each(format.styles, function(value, name) {
 +						// Format doesn't match
 +						if (t.editor.dom.getStyle(node, name) != value) {
 +							state = false;
 +							return false;
 +						}
 +					});
 +
 +					return state;
 +				};
 +
 +				function applyListFormat() {
 +					var list, ed = t.editor, dom = ed.dom, sel = ed.selection;
 +
 +					// Check for existing list element
 +					list = dom.getParent(sel.getNode(), 'ol,ul');
 +
 +					// Switch/add list type if needed
 +					if (!list || list.nodeName == (name == 'bullist' ? 'OL' : 'UL') || hasFormat(list, format))
 +						ed.execCommand(name == 'bullist' ? 'InsertUnorderedList' : 'InsertOrderedList');
 +
 +					// Append styles to new list element
 +					if (format) {
 +						list = dom.getParent(sel.getNode(), 'ol,ul');
 +						if (list) {
 +							dom.setStyles(list, format.styles);
 +							list.removeAttribute('data-mce-style');
 +						}
 +					}
 +					ed.focus();
 +				};
 +
 +				btn = cm.createSplitButton(name, {
 +					title : 'advanced.' + name + '_desc',
 +					'class' : 'mce_' + name,
 +					onclick : function() {
 +						applyListFormat();
 +					}
 +				});
 +
 +				btn.onRenderMenu.add(function(btn, menu) {
 +					menu.onShowMenu.add(function() {
 +						var dom = t.editor.dom, list = dom.getParent(t.editor.selection.getNode(), 'ol,ul'), fmtList;
 +
 +						if (list || format) {
 +							fmtList = t[name];
 +
 +							// Unselect existing items
 +							each(menu.items, function(item) {
 +								var state = true;
 +
 +								item.setSelected(0);
 +
 +								if (list && !item.isDisabled()) {
 +									each(fmtList, function(fmt) {
 +										if (fmt.id == item.id) {
 +											if (!hasFormat(list, fmt)) {
 +												state = false;
 +												return false;
 +											}
 +										}
 +									});
 +
 +									if (state)
 +										item.setSelected(1);
 +								}
 +							});
 +
 +							// Select the current format
 +							if (!list)
 +								menu.items[format.id].setSelected(1);
 +						}
 +					});
 +
 +					menu.add({id : t.editor.dom.uniqueId(), title : 'advlist.types', 'class' : 'mceMenuItemTitle', titleItem: true}).setDisabled(1);
 +
 +					each(t[name], function(item) {
 +						// IE<8 doesn't support lower-greek, skip it
 +						if (t.isIE7 && item.styles.listStyleType == 'lower-greek')
 +							return;
 +
 +						item.id = t.editor.dom.uniqueId();
 +
 +						menu.add({id : item.id, title : item.title, onclick : function() {
 +							format = item;
 +							applyListFormat();
 +						}});
 +					});
 +				});
 +
 +				return btn;
 +			}
 +		},
 +
 +		getInfo : function() {
 +			return {
 +				longname : 'Advanced lists',
 +				author : 'Moxiecode Systems AB',
 +				authorurl : 'http://tinymce.moxiecode.com',
 +				infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advlist',
 +				version : tinymce.majorVersion + "." + tinymce.minorVersion
 +			};
 +		}
 +	});
 +
 +	// Register plugin
 +	tinymce.PluginManager.add('advlist', tinymce.plugins.AdvListPlugin);
 +})();
\ No newline at end of file  | 
