[ Index ]

PHP Cross Reference of Drupal 6 (yi-drupal)

title

Body

[close]

/sites/all/modules/yui_editor/plugins/ -> img_upload.js (source)

   1  // $Id: img_upload.js,v 1.1.2.2.2.1 2008/11/21 22:54:27 jeffcd Exp $
   2  
   3  function yui_editor_img_upload() {
   4    for (var e in YAHOO.Drupal.editors) {
   5      var myEditor = YAHOO.Drupal.editors[e].editor;
   6      var config = YAHOO.Drupal.editors[e].config;
   7  
   8      if (config.img_upload == 1) {
   9        yui_img_uploader(myEditor, '?q=/yui_editor/image_upload', 'files[upload]', config.base_path);
  10      }
  11    }
  12  }
  13  
  14  function yui_img_uploader(rte, upload_url, upload_image_name, base_path) {
  15    rte.addListener('toolbarLoaded', function() {
  16      rte.toolbar.addListener('insertimageClick', function(o) {
  17        try {
  18          var imgPanel = new YAHOO.util.Element('yui-editor-panel');
  19          imgPanel.on ('contentReady', function() {
  20            try {
  21              var Dom = YAHOO.util.Dom;
  22              var label = document.createElement('label');
  23              label.innerHTML = '<strong>Upload:</strong>' +
  24                '<input type="file" id="insertimage_upload" name="' + upload_image_name +
  25                '" size="10" style="width: 20%"/>' +
  26                '<a href="#"  id="insertimage_upload_btn" style="width: 20%; margin-left: 10em;">Upload Image</a>' +
  27                '</label>';
  28  
  29              var img_elem=Dom.get('insertimage_url');
  30              Dom.getAncestorByTagName(img_elem, 'form').encoding = 'multipart/form-data';
  31              Dom.insertAfter(label, img_elem.parentNode);
  32  
  33              YAHOO.util.Event.on('insertimage_upload_btn', 'click', function(ev) {
  34                YAHOO.util.Event.stopEvent(ev); // no default click action
  35                YAHOO.util.Connect.setForm(img_elem.form, true, true);
  36                var c = YAHOO.util.Connect.asyncRequest('POST', upload_url, { upload:
  37                  function(r) {
  38                    try {
  39                      resp = r.responseText.replace( /<hints .*/i, '');
  40                      var o = eval('('+resp+')');
  41                      if (o.status == 'UPLOADED') {
  42                        Dom.get('insertimage_upload').value = '';
  43                        Dom.get('insertimage_url').value=base_path + o.image_url;
  44                        Dom.get('insertimage_url').focus();
  45                        Dom.get('insertimage_upload').focus();
  46                      }
  47                      else {
  48                        alert ("Upload Failed: " + o.status);
  49                      }
  50                    }
  51                    catch (eee) {
  52                      YAHOO.log(eee.message, 'error');
  53                    }
  54                  }
  55                });
  56  
  57                return false;
  58              });
  59            }
  60            catch (ee) {
  61              YAHOO.log(ee.message, 'error');
  62            }
  63          });
  64        }
  65        catch (e) {
  66          YAHOO.log(e.message, 'error');
  67        }
  68      });
  69    });
  70  }
  71  YAHOO.Drupal.yui_editor_load.subscribe(yui_editor_img_upload);


Generated: Mon Jul 9 18:01:44 2012 Cross-referenced by PHPXref 0.7