Ingrédients :
- Joomla 1.5.x
- Un éditeur de texte (vi/emacs/notepad …)
Un bug présent sur joomla 1.5.x empêche l’upload d’image depuis l’éditeur d’articles en mode admin.
Depuis l’éditeur un bouton Image permet d’afficher via mootools avec un effet lightbox, une popup de sélection d’image. En bas de cette « popup », un module d’upload apparaît, mais impossible d’activer les différents boutons, rien ne se passe.
Après exploration et exclusion des pistes classiques :
- permissions unix
- blocage adblock
- navigateur (ie/chrome/opera/ff)
RAS
En général, dans ce cas, une seule issue, le code.
Voilà donc le « patch » appliqué pour activer le module d’upload flash du sélecteur d’image :
fichier :
$JOOMLA_HOME/libraries/joomla/html/html/behavior.php
fonction php :
function uploader($id='file-upload', $params = array())
action :
commenter les lignes 217 à 221, soit, dans mon cas :
/* types: Object with (description: extension) pairs, default: Images (*.jpg; *.jpeg; *.gif; *.png) */ $options = JHTMLBehavior::_getJSObject($opt); // Attach tooltips to document $document =& JFactory::getDocument(); /* $uploaderInit = 'sBrowseCaption=\''.JText::_('Browse Files', true).'\'; sRemoveToolTip=\''.JText::_('Remove from queue', true).'\'; window.addEvent(\'load\', function(){ var Uploader = new FancyUpload($(\''.$id.'\'), '.$options.'); $(\'upload-clear\').adopt(new Element(\'input\', { type: \'button\', events: { click: Uploader.clearList.bind(Uploader, [false])}, valu\ e: \''.JText::_('Clear Completed').'\' })); });'; */ $document->addScriptDeclaration($uploaderInit); // Set static array $uploaders[$id] = true; return;