ReferenceError: Uploader n'est pas défini dans magento 1.9.3


8

après la mise à jour vers la nouvelle version 1.9.3 . l'uploader ne fonctionne plus. donné ci-dessous error.i mettre à jour mon code mais toujours le même.

var uploader = new

Uploader ({"uploaderConfig": {"chunkSize": 1073741824, "withCrede ...

ci-dessous est mon code

class Spacename_Modulename_Block_Adminhtml_Modulename_Edit_Tab_Images extends Mage_Adminhtml_Block_Widget {

    protected $_uploaderType = 'uploader/multiple';

    protected function _prepareForm() {
        $data = $this->getRequest()->getPost();
        $form = new Varien_Data_Form();
        $form->setValues($data);
        $this->setForm($form);

        return parent::_prepareForm();
    }

    protected function _prepareLayout() {
        $this->setChild('uploader', $this->getLayout()->createBlock($this->_uploaderType)
        );

        $this->getUploader()->getUploaderConfig()
                ->setFileParameterName('image')
                ->setTarget(Mage::getModel('adminhtml/url')->addSessionParam()->getUrl('*/*/image'));

        $browseConfig = $this->getUploader()->getButtonConfig();
        $browseConfig
                ->setAttributes(array(
                    'accept' => $browseConfig->getMimeTypesByExtensions('gif, png, jpeg, jpg')
        ));


        return parent::_prepareLayout();
    }

}

code js

<script type="text/javascript">
//<![CDATA[
var <?php echo $_block->getJsObjectName(); ?> = new Product.Gallery('<?php echo $_block->getHtmlId() ?>', <?php echo $_block->getImageTypesJson() ?>);
//]]>
</script>

Réponses:


25

Après beaucoup de recherches, j'ai trouvé que magento 1.9.3.0 supprimait le téléchargeur flash, donc le fichier js doit exécuter le téléchargeur ajouter ces fichiers dans la tête

<reference name="head">
            <action method="addJs"><file>lib/uploader/flow.min.js</file></action>
            <action method="addJs"><file>lib/uploader/fusty-flow.js</file></action>
            <action method="addJs"><file>lib/uploader/fusty-flow-factory.js</file></action>
            <action method="addJs"><file>mage/adminhtml/uploader/instance.js</file></action>
</reference>

1
Comment voter 5 fois?
Arvind07

@ Arvind07 trouver 5 réponse et upvote: D
Qaisar Satti

1
J'ai trouvé cette réponse 5 fois jusqu'à présent. Ça me sauve toujours :)
Arvind07

@QaisarSatti Je suis nouveau dans Magento et je travaille pour résoudre le même problème, dans la console, il me montre l'erreur MediabrowserInstance is not defined magento. Je ne sais pas d'où je peux ajouter les fichiers dans la tête et je n'ai pas non plus trouvé ces fichiers dans la structure des dossiers. Pouvez-vous m'aider s'il vous plait
Anshul Mishra

@AnshulMishra vérifiez également cette solution magento.stackexchange.com/questions/142006/…
Qaisar Satti

1

J'ai résolu ce problème en ajustant les autorisations de fichier.

Le problème était que les (nouveaux) fichiers Javascript mentionnés ci-dessus ne pouvaient pas être chargés. Un code d'erreur 403 a été émis.

Après avoir défini les autorisations de fichier sur les répertoires

js/image/adminhtml/uploader

et

js/lib/uploader,

le bouton de téléchargement fonctionne à nouveau correctement!


Ce dossier aussi: "js / mage / adminhtml / *"
artur

1

Où sommes-nous censés ajouter:

<reference name="head">
            <action method="addJs"><file>lib/uploader/flow.min.js</file></action>
            <action method="addJs"><file>lib/uploader/fusty-flow.js</file></action>
            <action method="addJs"><file>lib/uploader/fusty-flow-factory.js</file></action>
            <action method="addJs"><file>mage/adminhtml/uploader/instance.js</file></action>
</reference>

Je ne sais pas ce que tu veux dire par tête


cela est censé ajouter la zone d'en-tête de la page d'extension actuelle.
Qaisar Satti

Pouvez-vous me dire où ajouter ce code? J'utilise un thème personnalisé dans la version Magento 1.9.3.8. Veuillez me donner le chemin du fichier.
Sanjay Gohil
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.