|
From: <al...@us...> - 2008-11-21 21:18:56
|
Revision: 783
http://sciret.svn.sourceforge.net/sciret/?rev=783&view=rev
Author: alpeb
Date: 2008-11-21 21:18:52 +0000 (Fri, 21 Nov 2008)
Log Message:
-----------
updated snippet for uploading media in the rich-text-editor (added compatibility with YUI 2.6)
Modified Paths:
--------------
trunk/javascript/general.js
Modified: trunk/javascript/general.js
===================================================================
--- trunk/javascript/general.js 2008-11-21 20:34:01 UTC (rev 782)
+++ trunk/javascript/general.js 2008-11-21 21:18:52 UTC (rev 783)
@@ -803,72 +803,77 @@
{status:'We only allow JPEG Images.'}
*/
- var yuiImgUploader = function(rte, upload_url, upload_image_name) {
- // customize the editor img button
-
- YAHOO.log( "Adding Click Listener" ,'debug');
- rte.addListener('toolbarLoaded',function() {
- rte.toolbar.addListener ( 'insertimageClick', function(o) {
- try {
- var imgPanel=new YAHOO.util.Element('yui-editor-panel');
- imgPanel.on ( 'contentReady', function() {
- try {
- var Dom=YAHOO.util.Dom;
- var label=document.createElement('label');
- label.innerHTML='<strong>Upload:</strong>'+
- '<input type="file" id="insertimage_upload" name="'+upload_image_name+
- '" size="10" style="width: 20%" />'+
- '<a href="#" id="insertimage_upload_btn" style="width: 20%; margin-left: 10em;">Upload Image</a>'+
- '</label>';
-
- var img_elem=Dom.get('insertimage_url');
- Dom.getAncestorByTagName(img_elem, 'form').encoding = 'multipart/form-data';
-
- Dom.insertAfter(
- label,
- img_elem.parentNode);
-
- YAHOO.util.Event.on ( 'insertimage_upload_btn', 'click', function(ev) {
- YAHOO.util.Event.stopEvent(ev); // no default click action
- YAHOO.util.Connect.setForm ( img_elem.form, true, true );
- var c=YAHOO.util.Connect.asyncRequest(
- 'POST', upload_url, {
- upload:function(r){
- try {
- // strip pre tags if they got added somehow
- resp=r.responseText.replace( /<pre>/i, '').replace ( /<\/pre>/i, '');
- var o=eval('('+resp+')');
- if (o.status=='UPLOADED') {
- Dom.get('insertimage_upload').value='';
- Dom.get('insertimage_url').value=o.image_url;
- // tell the image panel the url changed
- // hack instead of fireEvent('blur')
- // which for some reason isn't working
- Dom.get('insertimage_url').focus();
- Dom.get('insertimage_upload').focus();
- } else {
- alert ( "Upload Failed: "+o.status );
- }
-
- } catch ( eee ) {
- YAHOO.log( eee.message, 'error' )
- }
- }
- }
- );
- return false;
- });
-
- } catch ( ee ) { YAHOO.log( ee.message, 'error' ) }
- });
- } catch ( e ) {
- YAHOO.log( e.message, 'error' )
- }
- });
- });
-
- }
+ var yuiImgUploader = function(rte, editor_name, upload_url, upload_image_name) {
+ // customize the editor img button
+ YAHOO.log( "Adding Click Listener" ,'debug');
+ rte.addListener('toolbarLoaded',function() {
+ rte.toolbar.addListener ( 'insertimageClick', function(o) {
+ try {
+ var imgPanel=new YAHOO.util.Element(editor_name + '-panel');
+ imgPanel.on ( 'contentReady', function() {
+ try {
+ var Dom=YAHOO.util.Dom;
+
+ if (! Dom.get(editor_name + '_insertimage_upload'))
+ {
+ var label=document.createElement('label');
+ label.innerHTML='<strong>Upload:</strong>'+
+ '<input type="file" id="' +
+ editor_name + '_insertimage_upload" name="'+upload_image_name+
+ '" size="10" style="width: 300px" />'+
+ '</label>';
+
+ var img_elem=Dom.get(editor_name + '_insertimage_url');
+ Dom.getAncestorByTagName(img_elem, 'form').encoding = 'multipart/form-data';
+
+ Dom.insertAfter(
+ label,
+ img_elem.parentNode);
+
+ YAHOO.util.Event.on ( editor_name + '_insertimage_upload', 'change', function(ev) {
+ YAHOO.util.Event.stopEvent(ev); // no default click action
+ YAHOO.util.Connect.setForm ( img_elem.form, true, true );
+ var c=YAHOO.util.Connect.asyncRequest(
+ 'POST', upload_url, {
+ upload:function(r){
+ try {
+ // strip pre tags if they got added somehow
+ resp=r.responseText.replace( /<pre>/i, '').replace ( /<\/pre>/i, '');
+ var o=eval('('+resp+')');
+ if (o.status=='UPLOADED') {
+ Dom.get(editor_name + '_insertimage_upload').value='';
+ Dom.get(editor_name + '_insertimage_url').value=o.image_url;
+ // tell the image panel the url changed
+ // hack instead of fireEvent('blur')
+ // which for some reason isn't working
+ Dom.get(editor_name + '_insertimage_url').focus();
+ Dom.get(editor_name + '_insertimage_upload').focus();
+ } else {
+ alert ( "Upload Failed: "+o.status );
+ }
+
+ } catch ( eee ) {
+ YAHOO.log( eee.message, 'error' );
+ }
+ }
+ }
+ );
+ return false;
+ });
+ }
+ }
+ catch ( ee ) { YAHOO.log( ee.message, 'error' ); }
+
+ });
+ } catch ( e ) {
+ YAHOO.log( e.message, 'error' );
+ }
+ });
+ });
+
+ };
+
return {
init: function(width, height, element) {
@@ -976,7 +981,7 @@
});
myEditor._defaultToolbar.titlebar = false;
- yuiImgUploader(myEditor, 'index.php?action=UploadImage', 'image');
+ yuiImgUploader(myEditor, 'text_content', 'index.php?action=UploadImage', 'image');
myEditor.render();
}
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|