openrat-cms

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs

commit f7e9b7bad5ea11f094e80bbeec4d2023b00125b6
parent 7787af7c42c46d57b69352e335cd3290e7128345
Author: dankert <devnull@localhost>
Date:   Sat, 19 Feb 2011 00:44:58 +0100

Aufruf des Editors nicht über das JQuery-Plugin, sondern direkt über JavaScript.

Diffstat:
editor/editor/config-openrat.js | 34++++++++++++++++++++++++++++++++++
editor/editor/config.js | 2+-
themes/default/js/openrat.js | 71++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
3 files changed, 105 insertions(+), 2 deletions(-)

diff --git a/editor/editor/config-openrat.js b/editor/editor/config-openrat.js @@ -0,0 +1,34 @@ +/* +Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.html or http://ckeditor.com/license +*/ + +CKEDITOR.editorConfig = function( config ) +{ + // Define changes to default configuration here. For example: + // config.language = 'fr'; + // config.uiColor = '#AADC6E'; + //baseHref: OR_THEMES_EXT_DIR+'../editor/editor/' + config.baseHref = ''; + config.skin = 'v2'; + config.filebrowserUploadUrl = './dispatcher.php?action=filebrowser&subaction=directupload&name=upload'; + config.filebrowserBrowseUrl = './dispatcher.php?action=filebrowser&subaction=browse'; + + config.toolbar = 'Openrat'; + config.toolbar_Openrat = [ /* Eigene Toolbar für OpenRat */ + ['Save','Preview','-'], /*,'Templates'*/ + ['Cut','Copy','Paste','PasteText','PasteFromWord','-','Print', 'SpellChecker', 'Scayt'], + ['Undo','Redo','-','Find','Replace','-','SelectAll','RemoveFormat'], + ['Form', 'Checkbox', 'Radio', 'TextField', 'Textarea', 'Select', 'Button', 'ImageButton', 'HiddenField'], + '/', + ['Bold','Italic',/*'Underline',*/'Strike','-','Subscript','Superscript'], + ['NumberedList','BulletedList','-','Outdent','Indent','Blockquote'], + ['JustifyLeft','JustifyCenter','JustifyRight','JustifyBlock'], + ['Link','Unlink','Anchor'], + ['Image','Flash','Table','HorizontalRule','SpecialChar','PageBreak'], + '/', + [/*'Styles',*/'Format','Font','FontSize'], + ['TextColor','BGColor'], + ['Source','-', 'ShowBlocks'] + ]; +}; diff --git a/editor/editor/config.js b/editor/editor/config.js @@ -1,5 +1,5 @@ /* -Copyright (c) 2003-2010, CKSource - Frederico Knabben. All rights reserved. +Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved. For licensing, see LICENSE.html or http://ckeditor.com/license */ diff --git a/themes/default/js/openrat.js b/themes/default/js/openrat.js @@ -34,6 +34,7 @@ function loadView(jo, url ) var editorConfig = { skin : 'v2', baseHref: OR_THEMES_EXT_DIR+'../editor/editor/', + customConfig : 'config-openrat.js', filebrowserUploadUrl:'./dispatcher.php?action=filebrowser&subaction=directupload&name=upload', filebrowserBrowseUrl:'./dispatcher.php?action=filebrowser&subaction=browse' }; @@ -44,7 +45,10 @@ function loadView(jo, url ) if (o) o.destroy(); //alert("o ist "+o); - $('textarea.editor').ckeditor( function() { /*alert("editor ready");*/ /* callback code */ }, editorConfig ); + //$('textarea.editor').ckeditor( function() { /*alert("editor ready");*/ /* callback code */ }, editorConfig ); + CKEDITOR.replace('text',{ + customConfig : 'config-openrat.js' + }); }); // S u c h e @@ -223,6 +227,7 @@ function doResponse(data,status) if ( status != 'success' ) alert('Error while saving the values: ' + status); + // Hinweismeldungen in Statuszeile anzeigen $.each(data['notices'], function(idx,value) { $('div.window div.status').html('<div />'); $('div.window div.status div').addClass( value.status ); @@ -266,3 +271,67 @@ $search.focus(function(){ //When the user tabs/clicks the search box. + +//Quelle: +//http://aktuell.de.selfhtml.org/tippstricks/javascript/bbcode/ +function insert(tagName, aTag, eTag) +{ +var input = document.forms[0].elements[tagName]; +input.focus(); +/* IE */ +if(typeof document.selection != 'undefined') { + /* Einfuegen des Formatierungscodes */ +// alert('IE'); + var range = document.selection.createRange(); + var insText = range.text; + range.text = aTag + insText + eTag; + /* Anpassen der Cursorposition */ + range = document.selection.createRange(); + if (insText.length == 0) { + range.move('character', -eTag.length); + } else { + range.moveStart('character', aTag.length + insText.length + eTag.length); + } + range.select(); +} +/* Gecko */ +else if(typeof input.selectionStart != 'undefined') +{ +// alert('Gecko'); + /* Einfuegen des Formatierungscodes */ + var start = input.selectionStart; + var end = input.selectionEnd; + var insText = input.value.substring(start, end); + input.value = input.value.substr(0, start) + aTag + insText + eTag + input.value.substr(end); + /* Anpassen der Cursorposition */ + var pos; + if (insText.length == 0) { + pos = start + aTag.length; + } else { + pos = start + aTag.length + insText.length + eTag.length; + } + input.selectionStart = pos; + input.selectionEnd = pos; +} +/* uebrige Browser */ +else +{ + /* Abfrage der Einfuegeposition */ + + /* + var pos; + var re = new RegExp('^[0-9]{0,3}$'); + while(!re.test(pos)) { + pos = prompt("Position (0.." + input.value.length + "):", "0"); + } + if(pos > input.value.length) { + pos = input.value.length; + } + */ + pos = input.value.length; + + /* Einfuegen des Formatierungscodes */ + var insText = prompt("Text"); + input.value = input.value.substr(0, pos) + aTag + insText + eTag + input.value.substr(pos); +} +}