diff options
Diffstat (limited to 'Js/markitup')
26 files changed, 792 insertions, 0 deletions
| diff --git a/Js/markitup/jquery.markitup.js b/Js/markitup/jquery.markitup.js new file mode 100644 index 0000000..ee8f40f --- /dev/null +++ b/Js/markitup/jquery.markitup.js @@ -0,0 +1,559 @@ +// ---------------------------------------------------------------------------- +// markItUp! Universal MarkUp Engine, JQuery plugin +// v 1.1.7 +// Dual licensed under the MIT and GPL licenses. +// ---------------------------------------------------------------------------- +// Copyright (C) 2007-2010 Jay Salvat +// http://markitup.jaysalvat.com/ +// ---------------------------------------------------------------------------- +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +//  +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +//  +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +// THE SOFTWARE. +// ---------------------------------------------------------------------------- +(function($) { +	$.fn.markItUp = function(settings, extraSettings) { +		var options, ctrlKey, shiftKey, altKey; +		ctrlKey = shiftKey = altKey = false; + +		options = {	id:						'', +					nameSpace:				'', +					root:					'', +					previewInWindow:		'', // 'width=800, height=600, resizable=yes, scrollbars=yes' +					previewAutoRefresh:		true, +					previewPosition:		'after', +					previewTemplatePath:	'~/templates/preview.html', +					previewParserPath:		'', +					previewParserVar:		'data', +					resizeHandle:			true, +					beforeInsert:			'', +					afterInsert:			'', +					onEnter:				{}, +					onShiftEnter:			{}, +					onCtrlEnter:			{}, +					onTab:					{}, +					markupSet:			[	{ /* set */ } ] +				}; +		$.extend(options, settings, extraSettings); + +		// compute markItUp! path +		if (!options.root) { +			$('script').each(function(a, tag) { +				miuScript = $(tag).get(0).src.match(/(.*)jquery\.markitup(\.pack)?\.js$/); +				if (miuScript !== null) { +					options.root = miuScript[1]; +				} +			}); +		} + +		return this.each(function() { +			var $$, textarea, levels, scrollPosition, caretPosition, caretOffset, +				clicked, hash, header, footer, previewWindow, template, iFrame, abort; +			$$ = $(this); +			textarea = this; +			levels = []; +			abort = false; +			scrollPosition = caretPosition = 0; +			caretOffset = -1; + +			options.previewParserPath = localize(options.previewParserPath); +			options.previewTemplatePath = localize(options.previewTemplatePath); + +			// apply the computed path to ~/ +			function localize(data, inText) { +				if (inText) { +					return 	data.replace(/("|')~\//g, "$1"+options.root); +				} +				return 	data.replace(/^~\//, options.root); +			} + +			// init and build editor +			function init() { +				id = ''; nameSpace = ''; +				if (options.id) { +					id = 'id="'+options.id+'"'; +				} else if ($$.attr("id")) { +					id = 'id="markItUp'+($$.attr("id").substr(0, 1).toUpperCase())+($$.attr("id").substr(1))+'"'; + +				} +				if (options.nameSpace) { +					nameSpace = 'class="'+options.nameSpace+'"'; +				} +				$$.wrap('<div '+nameSpace+'></div>'); +				$$.wrap('<div '+id+' class="markItUp"></div>'); +				$$.wrap('<div class="markItUpContainer"></div>'); +				$$.addClass("markItUpEditor"); + +				// add the header before the textarea +				header = $('<div class="markItUpHeader"></div>').insertBefore($$); +				$(dropMenus(options.markupSet)).appendTo(header); + +				// add the footer after the textarea +				footer = $('<div class="markItUpFooter"></div>').insertAfter($$); + +				// add the resize handle after textarea +				if (options.resizeHandle === true && $.browser.safari !== true) { +					resizeHandle = $('<div class="markItUpResizeHandle"></div>') +						.insertAfter($$) +						.bind("mousedown", function(e) { +							var h = $$.height(), y = e.clientY, mouseMove, mouseUp; +							mouseMove = function(e) { +								$$.css("height", Math.max(20, e.clientY+h-y)+"px"); +								return false; +							}; +							mouseUp = function(e) { +								$("html").unbind("mousemove", mouseMove).unbind("mouseup", mouseUp); +								return false; +							}; +							$("html").bind("mousemove", mouseMove).bind("mouseup", mouseUp); +					}); +					footer.append(resizeHandle); +				} + +				// listen key events +				$$.keydown(keyPressed).keyup(keyPressed); +				 +				// bind an event to catch external calls +				$$.bind("insertion", function(e, settings) { +					if (settings.target !== false) { +						get(); +					} +					if (textarea === $.markItUp.focused) { +						markup(settings); +					} +				}); + +				// remember the last focus +				$$.focus(function() { +					$.markItUp.focused = this; +				}); +			} + +			// recursively build header with dropMenus from markupset +			function dropMenus(markupSet) { +				var ul = $('<ul></ul>'), i = 0; +				$('li:hover > ul', ul).css('display', 'block'); +				$.each(markupSet, function() { +					var button = this, t = '', title, li, j; +					title = (button.key) ? (button.name||'')+' [Ctrl+'+button.key+']' : (button.name||''); +					key   = (button.key) ? 'accesskey="'+button.key+'"' : ''; +					if (button.separator) { +						li = $('<li class="markItUpSeparator">'+(button.separator||'')+'</li>').appendTo(ul); +					} else { +						i++; +						for (j = levels.length -1; j >= 0; j--) { +							t += levels[j]+"-"; +						} +						li = $('<li class="markItUpButton markItUpButton'+t+(i)+' '+(button.className||'')+'"><a href="" '+key+' title="'+title+'">'+(button.name||'')+'</a></li>') +						.bind("contextmenu", function() { // prevent contextmenu on mac and allow ctrl+click +							return false; +						}).click(function() { +							return false; +						}).mousedown(function() { +							if (button.call) { +								eval(button.call)(); +							} +							setTimeout(function() { markup(button) },1); +							return false; +						}).hover(function() { +								$('> ul', this).show(); +								$(document).one('click', function() { // close dropmenu if click outside +										$('ul ul', header).hide(); +									} +								); +							}, function() { +								$('> ul', this).hide(); +							} +						).appendTo(ul); +						if (button.dropMenu) { +							levels.push(i); +							$(li).addClass('markItUpDropMenu').append(dropMenus(button.dropMenu)); +						} +					} +				});  +				levels.pop(); +				return ul; +			} + +			// markItUp! markups +			function magicMarkups(string) { +				if (string) { +					string = string.toString(); +					string = string.replace(/\(\!\(([\s\S]*?)\)\!\)/g, +						function(x, a) { +							var b = a.split('|!|'); +							if (altKey === true) { +								return (b[1] !== undefined) ? b[1] : b[0]; +							} else { +								return (b[1] === undefined) ? "" : b[0]; +							} +						} +					); +					// [![prompt]!], [![prompt:!:value]!] +					string = string.replace(/\[\!\[([\s\S]*?)\]\!\]/g, +						function(x, a) { +							var b = a.split(':!:'); +							if (abort === true) { +								return false; +							} +							value = prompt(b[0], (b[1]) ? b[1] : ''); +							if (value === null) { +								abort = true; +							} +							return value; +						} +					); +					return string; +				} +				return ""; +			} + +			// prepare action +			function prepare(action) { +				if ($.isFunction(action)) { +					action = action(hash); +				} +				return magicMarkups(action); +			} + +			// build block to insert +			function build(string) { +				openWith 	= prepare(clicked.openWith); +				placeHolder = prepare(clicked.placeHolder); +				replaceWith = prepare(clicked.replaceWith); +				closeWith 	= prepare(clicked.closeWith); +				if (replaceWith !== "") { +					block = openWith + replaceWith + closeWith; +				} else if (selection === '' && placeHolder !== '') { +					block = openWith + placeHolder + closeWith; +				} else { +					block = openWith + (string||selection) + closeWith; +				} +				return {	block:block,  +							openWith:openWith,  +							replaceWith:replaceWith,  +							placeHolder:placeHolder, +							closeWith:closeWith +					}; +			} + +			// define markup to insert +			function markup(button) { +				var len, j, n, i; +				hash = clicked = button; +				get(); + +				$.extend(hash, {	line:"",  +						 			root:options.root, +									textarea:textarea,  +									selection:(selection||''),  +									caretPosition:caretPosition, +									ctrlKey:ctrlKey,  +									shiftKey:shiftKey,  +									altKey:altKey +								} +							); +				// callbacks before insertion +				prepare(options.beforeInsert); +				prepare(clicked.beforeInsert); +				if (ctrlKey === true && shiftKey === true) { +					prepare(clicked.beforeMultiInsert); +				}			 +				$.extend(hash, { line:1 }); +				 +				if (ctrlKey === true && shiftKey === true) { +					lines = selection.split(/\r?\n/); +					for (j = 0, n = lines.length, i = 0; i < n; i++) { +						if ($.trim(lines[i]) !== '') { +							$.extend(hash, { line:++j, selection:lines[i] } ); +							lines[i] = build(lines[i]).block; +						} else { +							lines[i] = ""; +						} +					} +					string = { block:lines.join('\n')}; +					start = caretPosition; +					len = string.block.length + (($.browser.opera) ? n : 0); +				} else if (ctrlKey === true) { +					string = build(selection); +					start = caretPosition + string.openWith.length; +					len = string.block.length - string.openWith.length - string.closeWith.length; +					len -= fixIeBug(string.block); +				} else if (shiftKey === true) { +					string = build(selection); +					start = caretPosition; +					len = string.block.length; +					len -= fixIeBug(string.block); +				} else { +					string = build(selection); +					start = caretPosition + string.block.length ; +					len = 0; +					start -= fixIeBug(string.block); +				} +				if ((selection === '' && string.replaceWith === '')) { +					caretOffset += fixOperaBug(string.block); +					 +					start = caretPosition + string.openWith.length; +					len = string.block.length - string.openWith.length - string.closeWith.length; + +					caretOffset = $$.val().substring(caretPosition,  $$.val().length).length; +					caretOffset -= fixOperaBug($$.val().substring(0, caretPosition)); +				} +				$.extend(hash, { caretPosition:caretPosition, scrollPosition:scrollPosition } ); + +				if (string.block !== selection && abort === false) { +					insert(string.block); +					set(start, len); +				} else { +					caretOffset = -1; +				} +				get(); + +				$.extend(hash, { line:'', selection:selection }); + +				// callbacks after insertion +				if (ctrlKey === true && shiftKey === true) { +					prepare(clicked.afterMultiInsert); +				} +				prepare(clicked.afterInsert); +				prepare(options.afterInsert); + +				// refresh preview if opened +				if (previewWindow && options.previewAutoRefresh) { +					refreshPreview();  +				} +																									 +				// reinit keyevent +				shiftKey = altKey = ctrlKey = abort = false; +			} + +			// Substract linefeed in Opera +			function fixOperaBug(string) { +				if ($.browser.opera) { +					return string.length - string.replace(/\n*/g, '').length; +				} +				return 0; +			} +			// Substract linefeed in IE +			function fixIeBug(string) { +				if ($.browser.msie) { +					return string.length - string.replace(/\r*/g, '').length; +				} +				return 0; +			} +				 +			// add markup +			function insert(block) {	 +				if (document.selection) { +					var newSelection = document.selection.createRange(); +					newSelection.text = block; +				} else { +					$$.val($$.val().substring(0, caretPosition)	+ block + $$.val().substring(caretPosition + selection.length, $$.val().length)); +				} +			} + +			// set a selection +			function set(start, len) { +				if (textarea.createTextRange){ +					// quick fix to make it work on Opera 9.5 +					if ($.browser.opera && $.browser.version >= 9.5 && len == 0) { +						return false; +					} +					range = textarea.createTextRange(); +					range.collapse(true); +					range.moveStart('character', start);  +					range.moveEnd('character', len);  +					range.select(); +				} else if (textarea.setSelectionRange ){ +					textarea.setSelectionRange(start, start + len); +				} +				textarea.scrollTop = scrollPosition; +				textarea.focus(); +			} + +			// get the selection +			function get() { +				textarea.focus(); + +				scrollPosition = textarea.scrollTop; +				if (document.selection) { +					selection = document.selection.createRange().text; +					if ($.browser.msie) { // ie +						var range = document.selection.createRange(), rangeCopy = range.duplicate(); +						rangeCopy.moveToElementText(textarea); +						caretPosition = -1; +						while(rangeCopy.inRange(range)) { // fix most of the ie bugs with linefeeds... +							rangeCopy.moveStart('character'); +							caretPosition ++; +						} +					} else { // opera +						caretPosition = textarea.selectionStart; +					} +				} else { // gecko & webkit +					caretPosition = textarea.selectionStart; +					selection = $$.val().substring(caretPosition, textarea.selectionEnd); +				}  +				return selection; +			} + +			// open preview window +			function preview() { +				if (!previewWindow || previewWindow.closed) { +					if (options.previewInWindow) { +						previewWindow = window.open('', 'preview', options.previewInWindow); +					} else { +						iFrame = $('<iframe class="markItUpPreviewFrame"></iframe>'); +						if (options.previewPosition == 'after') { +							iFrame.insertAfter(footer); +						} else { +							iFrame.insertBefore(header); +						}	 +						previewWindow = iFrame[iFrame.length - 1].contentWindow || frame[iFrame.length - 1]; +					} +				} else if (altKey === true) { +					// Thx Stephen M. Redd for the IE8 fix +					if (iFrame) { +						iFrame.remove(); +					} else { +						previewWindow.close(); +					} +					previewWindow = iFrame = false; +				} +				if (!options.previewAutoRefresh) { +					refreshPreview();  +				} +			} + +			// refresh Preview window +			function refreshPreview() { + 				renderPreview(); +			} + +			function renderPreview() {		 +				var phtml; +				if (options.previewParserPath !== '') { +					$.ajax( { +						type: 'POST', +						url: options.previewParserPath, +						data: options.previewParserVar+'='+encodeURIComponent($$.val()), +						success: function(data) { +							writeInPreview( localize(data, 1) );  +						} +					} ); +				} else { +					if (!template) { +						$.ajax( { +							url: options.previewTemplatePath, +							success: function(data) { +								writeInPreview( localize(data, 1).replace(/<!-- content -->/g, $$.val()) ); +							} +						} ); +					} +				} +				return false; +			} +			 +			function writeInPreview(data) { +				if (previewWindow.document) {			 +					try { +						sp = previewWindow.document.documentElement.scrollTop +					} catch(e) { +						sp = 0; +					}	 +					previewWindow.document.open(); +					previewWindow.document.write(data); +					previewWindow.document.close(); +					previewWindow.document.documentElement.scrollTop = sp; +				} +				if (options.previewInWindow) { +					previewWindow.focus(); +				} +			} +			 +			// set keys pressed +			function keyPressed(e) {  +				shiftKey = e.shiftKey; +				altKey = e.altKey; +				ctrlKey = (!(e.altKey && e.ctrlKey)) ? e.ctrlKey : false; + +				if (e.type === 'keydown') { +					if (ctrlKey === true) { +						li = $("a[accesskey="+String.fromCharCode(e.keyCode)+"]", header).parent('li'); +						if (li.length !== 0) { +							ctrlKey = false; +							setTimeout(function() { +								li.triggerHandler('mousedown'); +							},1); +							return false; +						} +					} +					if (e.keyCode === 13 || e.keyCode === 10) { // Enter key +						if (ctrlKey === true) {  // Enter + Ctrl +							ctrlKey = false; +							markup(options.onCtrlEnter); +							return options.onCtrlEnter.keepDefault; +						} else if (shiftKey === true) { // Enter + Shift +							shiftKey = false; +							markup(options.onShiftEnter); +							return options.onShiftEnter.keepDefault; +						} else { // only Enter +							markup(options.onEnter); +							return options.onEnter.keepDefault; +						} +					} +					if (e.keyCode === 9) { // Tab key +						if (shiftKey == true || ctrlKey == true || altKey == true) { // Thx Dr Floob. +							return false;  +						} +						if (caretOffset !== -1) { +							get(); +							caretOffset = $$.val().length - caretOffset; +							set(caretOffset, 0); +							caretOffset = -1; +							return false; +						} else { +							markup(options.onTab); +							return options.onTab.keepDefault; +						} +					} +				} +			} + +			init(); +		}); +	}; + +	$.fn.markItUpRemove = function() { +		return this.each(function() { +				var $$ = $(this).unbind().removeClass('markItUpEditor'); +				$$.parent('div').parent('div.markItUp').parent('div').replaceWith($$); +			} +		); +	}; + +	$.markItUp = function(settings) { +		var options = { target:false }; +		$.extend(options, settings); +		if (options.target) { +			return $(options.target).each(function() { +				$(this).focus(); +				$(this).trigger('insertion', [options]); +			}); +		} else { +			$('textarea').trigger('insertion', [options]); +		} +	}; +})(jQuery); diff --git a/Js/markitup/sets/bbcode/images/bold.png b/Js/markitup/sets/bbcode/images/bold.pngBinary files differ new file mode 100644 index 0000000..889ae80 --- /dev/null +++ b/Js/markitup/sets/bbcode/images/bold.png diff --git a/Js/markitup/sets/bbcode/images/clean.png b/Js/markitup/sets/bbcode/images/clean.pngBinary files differ new file mode 100644 index 0000000..7e7cefb --- /dev/null +++ b/Js/markitup/sets/bbcode/images/clean.png diff --git a/Js/markitup/sets/bbcode/images/code.png b/Js/markitup/sets/bbcode/images/code.pngBinary files differ new file mode 100644 index 0000000..63fe6ce --- /dev/null +++ b/Js/markitup/sets/bbcode/images/code.png diff --git a/Js/markitup/sets/bbcode/images/fonts.png b/Js/markitup/sets/bbcode/images/fonts.pngBinary files differ new file mode 100644 index 0000000..b7960db --- /dev/null +++ b/Js/markitup/sets/bbcode/images/fonts.png diff --git a/Js/markitup/sets/bbcode/images/h1.png b/Js/markitup/sets/bbcode/images/h1.pngBinary files differ new file mode 100644 index 0000000..9c122e9 --- /dev/null +++ b/Js/markitup/sets/bbcode/images/h1.png diff --git a/Js/markitup/sets/bbcode/images/h2.png b/Js/markitup/sets/bbcode/images/h2.pngBinary files differ new file mode 100644 index 0000000..fbd8765 --- /dev/null +++ b/Js/markitup/sets/bbcode/images/h2.png diff --git a/Js/markitup/sets/bbcode/images/h3.png b/Js/markitup/sets/bbcode/images/h3.pngBinary files differ new file mode 100644 index 0000000..c7836cf --- /dev/null +++ b/Js/markitup/sets/bbcode/images/h3.png diff --git a/Js/markitup/sets/bbcode/images/italic.png b/Js/markitup/sets/bbcode/images/italic.pngBinary files differ new file mode 100644 index 0000000..8482ac8 --- /dev/null +++ b/Js/markitup/sets/bbcode/images/italic.png diff --git a/Js/markitup/sets/bbcode/images/link.png b/Js/markitup/sets/bbcode/images/link.pngBinary files differ new file mode 100644 index 0000000..25eacb7 --- /dev/null +++ b/Js/markitup/sets/bbcode/images/link.png diff --git a/Js/markitup/sets/bbcode/images/list-bullet.png b/Js/markitup/sets/bbcode/images/list-bullet.pngBinary files differ new file mode 100644 index 0000000..4a8672b --- /dev/null +++ b/Js/markitup/sets/bbcode/images/list-bullet.png diff --git a/Js/markitup/sets/bbcode/images/list-item.png b/Js/markitup/sets/bbcode/images/list-item.pngBinary files differ new file mode 100644 index 0000000..8cb4d69 --- /dev/null +++ b/Js/markitup/sets/bbcode/images/list-item.png diff --git a/Js/markitup/sets/bbcode/images/list-numeric.png b/Js/markitup/sets/bbcode/images/list-numeric.pngBinary files differ new file mode 100644 index 0000000..33b0b8d --- /dev/null +++ b/Js/markitup/sets/bbcode/images/list-numeric.png diff --git a/Js/markitup/sets/bbcode/images/paragraph.png b/Js/markitup/sets/bbcode/images/paragraph.pngBinary files differ new file mode 100644 index 0000000..95704fb --- /dev/null +++ b/Js/markitup/sets/bbcode/images/paragraph.png diff --git a/Js/markitup/sets/bbcode/images/picture.png b/Js/markitup/sets/bbcode/images/picture.pngBinary files differ new file mode 100644 index 0000000..4a158fe --- /dev/null +++ b/Js/markitup/sets/bbcode/images/picture.png diff --git a/Js/markitup/sets/bbcode/images/preview.png b/Js/markitup/sets/bbcode/images/preview.pngBinary files differ new file mode 100644 index 0000000..a9925a0 --- /dev/null +++ b/Js/markitup/sets/bbcode/images/preview.png diff --git a/Js/markitup/sets/bbcode/images/quotes.png b/Js/markitup/sets/bbcode/images/quotes.pngBinary files differ new file mode 100644 index 0000000..e54ebeb --- /dev/null +++ b/Js/markitup/sets/bbcode/images/quotes.png diff --git a/Js/markitup/sets/bbcode/images/stroke.png b/Js/markitup/sets/bbcode/images/stroke.pngBinary files differ new file mode 100644 index 0000000..612058a --- /dev/null +++ b/Js/markitup/sets/bbcode/images/stroke.png diff --git a/Js/markitup/sets/bbcode/images/underline.png b/Js/markitup/sets/bbcode/images/underline.pngBinary files differ new file mode 100644 index 0000000..90d0df2 --- /dev/null +++ b/Js/markitup/sets/bbcode/images/underline.png diff --git a/Js/markitup/sets/bbcode/readme.txt b/Js/markitup/sets/bbcode/readme.txt new file mode 100644 index 0000000..745d5dd --- /dev/null +++ b/Js/markitup/sets/bbcode/readme.txt @@ -0,0 +1,11 @@ +Markup language:  +BBCode + +Description: +A basic BBCode markup set with Bold, Italic, Underline, Picture, Link, Size, List, Quotes, Code, Clean button, Preview button. + +Install: +- Download the zip file +- Unzip it in your markItUp! sets folder +- Modify your JS link to point at this set.js +- Modify your CSS link to point at this style.css
\ No newline at end of file diff --git a/Js/markitup/sets/bbcode/set.js b/Js/markitup/sets/bbcode/set.js new file mode 100644 index 0000000..3d16ea5 --- /dev/null +++ b/Js/markitup/sets/bbcode/set.js @@ -0,0 +1,32 @@ +// ---------------------------------------------------------------------------- +// markItUp! +// ---------------------------------------------------------------------------- +// Copyright (C) 2008 Jay Salvat +// http://markitup.jaysalvat.com/ +// ---------------------------------------------------------------------------- +// BBCode tags example +// http://en.wikipedia.org/wiki/Bbcode +// ---------------------------------------------------------------------------- +// Feel free to add more tags +// ---------------------------------------------------------------------------- +mySettings = { +	previewParserPath:	'', // path to your BBCode parser +	markupSet: [ +		{name:'Heading 1', key:'1', openWith:'[h1]', closeWith:'[/h1]' }, +		{name:'Heading 2', key:'2', openWith:'[h2]', closeWith:'[/h2]' }, +		{name:'Heading 3', key:'3', openWith:'[h3]', closeWith:'[/h3]' }, +		{name:'Paragraph', openWith:'[p]', closeWith:'[/p]' }, +		{separator:'---------------' }, +		{name:'Bold', key:'B', openWith:'[b]', closeWith:'[/b]'}, +		{name:'Italic', key:'I', openWith:'[i]', closeWith:'[/i]'}, +		{name:'Underline', key:'U', openWith:'[u]', closeWith:'[/u]'}, +		{name:'Stroke through', key:'S', openWith:'[del]', closeWith:'[/del]' }, +		{separator:'---------------' }, +		{name:'Bulleted list', openWith:'[list]\n', closeWith:'\n[/list]'}, +		{name:'Numeric list', openWith:'[enum]\n', closeWith:'\n[/enum]'},  +		{name:'List item', openWith:'[*] ', closeWith:'[/*]'}, +		{separator:'---------------' }, +		{name:'Code', openWith:'[code]', closeWith:'[/code]'}, +		{name:'Link', key: 'L', openWith:'[a]', closeWith:'[/a]',placeHolder:'http://the_url | the_text'},  +	] +}
\ No newline at end of file diff --git a/Js/markitup/sets/bbcode/style.css b/Js/markitup/sets/bbcode/style.css new file mode 100644 index 0000000..4ab6031 --- /dev/null +++ b/Js/markitup/sets/bbcode/style.css @@ -0,0 +1,72 @@ +/* ------------------------------------------------------------------- +// markItUp! +// By Jay Salvat - http://markitup.jaysalvat.com/ +// ------------------------------------------------------------------*/ +.markItUp .markItUpButton1 a { +	background-image:url(images/h1.png); +} +.markItUp .markItUpButton2 a { +	background-image:url(images/h2.png); +} +.markItUp .markItUpButton3 a { +	background-image:url(images/h3.png); +} +.markItUp .markItUpButton4 a	{ +	background-image:url(images/paragraph.png); +} +.markItUp .markItUpButton5 a	{ +	background-image:url(images/bold.png); +} +.markItUp .markItUpButton6 a	{ +	background-image:url(images/italic.png); +} +.markItUp .markItUpButton7 a	{ +	background-image:url(images/underline.png); +} +.markItUp .markItUpButton8 a	{ +	background-image:url(images/stroke.png); +} +.markItUp .markItUpButton9 a	{ +	background-image:url(images/list-bullet.png); +} +.markItUp .markItUpButton10 a	{ +	background-image:url(images/list-numeric.png); +} +.markItUp .markItUpButton11 a	{ +	background-image:url(images/list-item.png); +} +.markItUp .markItUpButton12 a	{ +	background-image:url(images/code.png); +} +.markItUp .markItUpButton13 a	{ +	background-image:url(images/link.png); +} +/*.markItUp .markItUpButton4 a	{ +	background-image:url(images/stroke.png); +}*/ + +/*.markItUp .markItUpButton4 a	{ +	background-image:url(images/picture.png); +}*/ +/*.markItUp .markItUpButton5 a	{ +	background-image:url(images/link.png); +} + +.markItUp .markItUpButton6 a	{ +	background-image:url(images/fonts.png); +} + + +.markItUp .markItUpButton10 a	{ +	background-image:url(images/quotes.png); +} +.markItUp .markItUpButton11 a	{ +	background-image:url(images/code.png); +} +	 +.markItUp .clean a { +	background-image:url(images/clean.png); +} +.markItUp .preview a { +	background-image:url(images/preview.png); +}*/
\ No newline at end of file diff --git a/Js/markitup/skins/simple/images/handle.png b/Js/markitup/skins/simple/images/handle.pngBinary files differ new file mode 100644 index 0000000..3993b20 --- /dev/null +++ b/Js/markitup/skins/simple/images/handle.png diff --git a/Js/markitup/skins/simple/images/menu.png b/Js/markitup/skins/simple/images/menu.pngBinary files differ new file mode 100644 index 0000000..44a07af --- /dev/null +++ b/Js/markitup/skins/simple/images/menu.png diff --git a/Js/markitup/skins/simple/images/submenu.png b/Js/markitup/skins/simple/images/submenu.pngBinary files differ new file mode 100644 index 0000000..03d1977 --- /dev/null +++ b/Js/markitup/skins/simple/images/submenu.png diff --git a/Js/markitup/skins/simple/style.css b/Js/markitup/skins/simple/style.css new file mode 100644 index 0000000..4ff830f --- /dev/null +++ b/Js/markitup/skins/simple/style.css @@ -0,0 +1,118 @@ +/* ------------------------------------------------------------------- +// markItUp! Universal MarkUp Engine, JQuery plugin +// By Jay Salvat - http://markitup.jaysalvat.com/ +// ------------------------------------------------------------------*/ +.markItUp * { +	margin:0px; padding:0px; +	outline:none; +} +.markItUp a:link, +.markItUp a:visited { +	color:#000; +	text-decoration:none; +} +.markItUp  { +	width:700px; +	margin:5px 0 5px 0; +} +.markItUpContainer  { +	font:11px Verdana, Arial, Helvetica, sans-serif; +} +.markItUpEditor { +	font:12px 'Courier New', Courier, monospace; +	padding:5px; +	width:640px; +	height:300px; +	clear:both; display:block; +	line-height:18px; +	overflow:auto; +} +.markItUpPreviewFrame	{ +	overflow:auto; +	background-color:#FFF; +	width:99.9%; +	height:300px; +	margin:5px 0; +} +.markItUpFooter { +	width:100%; +} +.markItUpResizeHandle { +	overflow:hidden; +	width:22px; height:5px; +	margin-left:auto; +	margin-right:auto; +	background-image:url(images/handle.png); +	cursor:n-resize; +} +/***************************************************************************************/ +/* first row of buttons */ +.markItUpHeader ul li	{ +	list-style:none; +	float:left; +	position:relative; +} +.markItUpHeader ul li:hover > ul{ +	display:block; +} +.markItUpHeader ul .markItUpDropMenu { +	background:transparent url(images/menu.png) no-repeat 115% 50%; +	margin-right:5px; +} +.markItUpHeader ul .markItUpDropMenu li { +	margin-right:0px; +} +/* next rows of buttons */ +.markItUpHeader ul ul { +	display:none; +	position:absolute; +	top:18px; left:0px;	 +	background:#FFF; +	border:1px solid #000; +} +.markItUpHeader ul ul li { +	float:none; +	border-bottom:1px solid #000; +} +.markItUpHeader ul ul .markItUpDropMenu { +	background:#FFF url(images/submenu.png) no-repeat 100% 50%; +} +.markItUpHeader ul .markItUpSeparator { +	margin:0 10px; +	width:1px; +	height:16px; +	overflow:hidden; +	background-color:#CCC; +} +.markItUpHeader ul ul .markItUpSeparator { +	width:auto; height:1px; +	margin:0px; +} +/* next rows of buttons */ +.markItUpHeader ul ul ul { +	position:absolute; +	top:-1px; left:150px;  +} +.markItUpHeader ul ul ul li { +	float:none; +} +.markItUpHeader ul a { +	display:block; +	width:16px; height:16px; +	text-indent:-10000px; +	background-repeat:no-repeat; +	padding:3px; +	margin:0px; +} +.markItUpHeader ul ul a { +	display:block; +	padding-left:0px; +	text-indent:0; +	width:120px;  +	padding:5px 5px 5px 25px; +	background-position:2px 50%; +} +.markItUpHeader ul ul a:hover  { +	color:#FFF; +	background-color:#000; +} | 
