123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126 |
- var wysiwygWhizzywig = { currentField: null, fields: {} };
- var buttonPath = null;
- var w = function (string) {
- if (string) {
- wysiwygWhizzywig.fields[wysiwygWhizzywig.currentField] += string;
- }
- return wysiwygWhizzywig.fields[wysiwygWhizzywig.currentField];
- };
- var o = function (id) {
-
-
- if (id == 'whizzy' + wysiwygWhizzywig.currentField && wysiwygWhizzywig.fields[wysiwygWhizzywig.currentField]) {
- jQuery('#' + wysiwygWhizzywig.currentField).after('<div id="' + wysiwygWhizzywig.currentField + '-whizzywig"></div>');
-
- jQuery('#' + wysiwygWhizzywig.currentField + '-whizzywig').html(w());
-
- wysiwygWhizzywig.fields[wysiwygWhizzywig.currentField] = '';
- }
-
- if (jQuery('#' + id).size()) {
- return jQuery('#' + id).get(0);
- }
-
- return jQuery('#' + id, w()).get(0);
- };
- (function($) {
- Drupal.wysiwyg.editor.attach.whizzywig = function(context, params, settings) {
-
- if (settings.buttonPath) {
- window.buttonPath = settings.buttonPath;
- }
-
- wysiwygWhizzywig.currentField = params.field;
- wysiwygWhizzywig.fields[wysiwygWhizzywig.currentField] = '';
-
- $field = $('#' + params.field);
- var originalValues = Drupal.wysiwyg.instances[params.field];
- originalValues.originalStyle = $field.attr('style');
- $field.css('width', $field.width() + 'px');
-
- makeWhizzyWig(params.field, (settings.buttons ? settings.buttons : 'all'));
-
- var instance = $('#whizzy' + params.field).get(0);
- if (instance) {
- instance.contentWindow.document.body.innerHTML = tidyD($field.val());
- }
- };
- Drupal.wysiwyg.editor.detach.whizzywig = function(context, params) {
- var detach = function (index) {
- var id = whizzies[index];
- var instance = $('#whizzy' + id).get(0);
- if (!instance) {
- return;
- }
- var body = instance.contentWindow.document.body;
- var $field = $('#' + id);
-
- if ($field.css('display') == 'block') {
- body.innerHTML = $field.val();
- }
- body.innerHTML = tidyH(body.innerHTML);
-
- $field.val(window.get_xhtml ? get_xhtml(body) : body.innerHTML);
- $field.val($field.val().replace(location.href + '#', '#'));
-
- $('#' + id + '-whizzywig').remove();
- whizzies.splice(index, 1);
-
- var originalValues = Drupal.wysiwyg.instances[id];
- $field.removeAttr('style');
- $field.attr('style', originalValues.originalStyle);
- };
- if (typeof params != 'undefined') {
- for (var i = 0; i < whizzies.length; i++) {
- if (whizzies[i] == params.field) {
- detach(i);
- break;
- }
- }
- }
- else {
- while (whizzies.length > 0) {
- detach(0);
- }
- }
- };
- })(jQuery);
|