Jump to content

Création d'un module perso - Afficher dans le formulaire backoffice l'image qui a été téléchargée


Recommended Posts

Bonjour à tous,

 

Dans le cadre de la création d'un module personnalisé, j'aimerai afficher l'image qui a été téléchargée dans le formulaire du backoffice afin de voir quelle image on est en train de modifier.

 

Un peu comme dans le module configurateur de thème :

post-871940-0-20499500-1436344150_thumb.png

 

Merci d'avance pour votre aide.

Link to comment
Share on other sites

J'y suis presque ! Le seul souci est que je n'arrive pas à bien remplir deux valeurs dans le formulaire.

 

Voici mon formulaire, où je cherche à remplir les valeurs "image" et "size" de MONMODULE_FILE :

$fields_form[0]['form'] = array(
      'legend' => array(
        'title' => $this->l('Bloc image')
      ),
      'input' => array(
        array(
          'type' => 'text',
          'label' => $this->l('Titre du bloc'),
          'name' => 'MONMODULE_TITLE',
          'col' => 6,
          'required' => true
        ),
        array(
          'type' => 'text',
          'label' => $this->l('Texte du bouton'),
          'name' => 'MONMODULE_TEXT',
          'col' => 6,
          'required' => true
        ),
        array(
          'type' => 'text',
          'label' => $this->l('Lien du bouton'),
          'desc' => $this->l('Entrez le lien qui sera appliqué sur le bouton.'),
          'name' => 'MONMODULE_URL',
          'col' => 6,
          'required' => true
        ),
        array(
          'type' => 'file',
          'label' => $this->l('Image de fond'),
          'name' => 'MONMODULE_FILE',
          'image' => NULL,
          'size' => NULL,
          'display_image' => true,
          'col' => 6,
          'hint' => $this->l('Télécharger une image de votre ordinateur.')
        ),
        array(
          'type' => 'hidden',
          'name' => 'MONMODULE_IMG'
        )
      ),
      'submit' => array(
        'title' => $this->l('Enregister'),
        'class' => 'button'
      )
    );

Et voici le helper en question que j'appelle juste en-dessous :

(et les autres helpers marchent correctement, le reste de mon formulaire est correctement rempli !)

$MONMODULE_IMG = Configuration::get('MONMODULE_IMG');
    if ($MONMODULE_IMG)
    {
      $helper->fields_value['MONMODULE_IMG'] = $MONMODULE_IMG;
      $pathinfo = pathinfo($MONMODULE_IMG);
      $image = ImageManager::thumbnail($this->local_path.'img/'.$MONMODULE_IMG, $MONMODULE_IMG, 150, $pathinfo['extension'], true);
      $helper->fields_value['image'] = ($image) ? $image : false;
      $helper->fields_value['size'] = ($image) ? filesize($this->local_path.'img/'.$MONMODULE_IMG) / 1000 : false;
    }

Je crois que ce sont les déclarations "fields_value['image']" et "fields_value['size']" qui ne sont pas bonnes.

Elle ne réfèrent pas au bon élément dans mon tableau.

 

Où est-ce que j'ai loupé quelque chose ?

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...