annotate sites/all/modules/wysiwyg/editors/js/none.js @ 13:134d4b2e75f6

updated quicktabs and google analytics modules
author danieleb <danielebarchiesi@me.com>
date Tue, 29 Oct 2013 13:48:59 +0000
parents ff03f76ab3fe
children
rev   line source
danielebarchiesi@0 1 (function($) {
danielebarchiesi@0 2
danielebarchiesi@0 3 /**
danielebarchiesi@0 4 * Attach this editor to a target element.
danielebarchiesi@0 5 *
danielebarchiesi@0 6 * @param context
danielebarchiesi@0 7 * A DOM element, supplied by Drupal.attachBehaviors().
danielebarchiesi@0 8 * @param params
danielebarchiesi@0 9 * An object containing input format parameters. Default parameters are:
danielebarchiesi@0 10 * - editor: The internal editor name.
danielebarchiesi@0 11 * - theme: The name/key of the editor theme/profile to use.
danielebarchiesi@0 12 * - field: The CSS id of the target element.
danielebarchiesi@0 13 * @param settings
danielebarchiesi@0 14 * An object containing editor settings for all enabled editor themes.
danielebarchiesi@0 15 */
danielebarchiesi@0 16 Drupal.wysiwyg.editor.attach.none = function(context, params, settings) {
danielebarchiesi@0 17 if (params.resizable) {
danielebarchiesi@0 18 var $wrapper = $('#' + params.field).parents('.form-textarea-wrapper:first');
danielebarchiesi@0 19 $wrapper.addClass('resizable');
danielebarchiesi@0 20 if (Drupal.behaviors.textarea) {
danielebarchiesi@0 21 Drupal.behaviors.textarea.attach();
danielebarchiesi@0 22 }
danielebarchiesi@0 23 }
danielebarchiesi@0 24 };
danielebarchiesi@0 25
danielebarchiesi@0 26 /**
danielebarchiesi@0 27 * Detach a single or all editors.
danielebarchiesi@0 28 *
danielebarchiesi@0 29 * The editor syncs its contents back to the original field before its instance
danielebarchiesi@0 30 * is removed.
danielebarchiesi@0 31 *
danielebarchiesi@0 32 * @param context
danielebarchiesi@0 33 * A DOM element, supplied by Drupal.attachBehaviors().
danielebarchiesi@0 34 * @param params
danielebarchiesi@0 35 * (optional) An object containing input format parameters. If defined,
danielebarchiesi@0 36 * only the editor instance in params.field should be detached. Otherwise,
danielebarchiesi@0 37 * all editors should be detached and saved, so they can be submitted in
danielebarchiesi@0 38 * AJAX/AHAH applications.
danielebarchiesi@0 39 * @param trigger
danielebarchiesi@0 40 * A string describing why the editor is being detached.
danielebarchiesi@0 41 * Possible triggers are:
danielebarchiesi@0 42 * - unload: (default) Another or no editor is about to take its place.
danielebarchiesi@0 43 * - move: Currently expected to produce the same result as unload.
danielebarchiesi@0 44 * - serialize: The form is about to be serialized before an AJAX request or
danielebarchiesi@0 45 * a normal form submission. If possible, perform a quick detach and leave
danielebarchiesi@0 46 * the editor's GUI elements in place to avoid flashes or scrolling issues.
danielebarchiesi@0 47 * @see Drupal.detachBehaviors
danielebarchiesi@0 48 */
danielebarchiesi@0 49 Drupal.wysiwyg.editor.detach.none = function (context, params, trigger) {
danielebarchiesi@0 50 if (typeof params != 'undefined' && (trigger != 'serialize')) {
danielebarchiesi@0 51 var $wrapper = $('#' + params.field).parents('.form-textarea-wrapper:first');
danielebarchiesi@0 52 $wrapper.removeOnce('textarea').removeClass('.resizable-textarea')
danielebarchiesi@0 53 .find('.grippie').remove();
danielebarchiesi@0 54 }
danielebarchiesi@0 55 };
danielebarchiesi@0 56
danielebarchiesi@0 57 /**
danielebarchiesi@0 58 * Instance methods for plain text areas.
danielebarchiesi@0 59 */
danielebarchiesi@0 60 Drupal.wysiwyg.editor.instance.none = {
danielebarchiesi@0 61 insert: function(content) {
danielebarchiesi@0 62 var editor = document.getElementById(this.field);
danielebarchiesi@0 63
danielebarchiesi@0 64 // IE support.
danielebarchiesi@0 65 if (document.selection) {
danielebarchiesi@0 66 editor.focus();
danielebarchiesi@0 67 var sel = document.selection.createRange();
danielebarchiesi@0 68 sel.text = content;
danielebarchiesi@0 69 }
danielebarchiesi@0 70 // Mozilla/Firefox/Netscape 7+ support.
danielebarchiesi@0 71 else if (editor.selectionStart || editor.selectionStart == '0') {
danielebarchiesi@0 72 var startPos = editor.selectionStart;
danielebarchiesi@0 73 var endPos = editor.selectionEnd;
danielebarchiesi@0 74 editor.value = editor.value.substring(0, startPos) + content + editor.value.substring(endPos, editor.value.length);
danielebarchiesi@0 75 }
danielebarchiesi@0 76 // Fallback, just add to the end of the content.
danielebarchiesi@0 77 else {
danielebarchiesi@0 78 editor.value += content;
danielebarchiesi@0 79 }
danielebarchiesi@0 80 },
danielebarchiesi@0 81
danielebarchiesi@0 82 setContent: function (content) {
danielebarchiesi@0 83 $('#' + this.field).val(content);
danielebarchiesi@0 84 },
danielebarchiesi@0 85
danielebarchiesi@0 86 getContent: function () {
danielebarchiesi@0 87 return $('#' + this.field).val();
danielebarchiesi@0 88 }
danielebarchiesi@0 89 };
danielebarchiesi@0 90
danielebarchiesi@0 91 })(jQuery);