Bonjour à tous.

Je remercie tout d'abord Grafikart pour ce magnifique Plugin :)

j'utilise le plugin sur une vue add_article et une autre edit_article. Pour edit_article aucun probleme ,cependant pour add_article c'est autre chose.

tout d'abord il m'a fallu utiliser une fonction getDraft proposé par un sympathique membre du forum pour avoir un id et pouvoir acceder à l'upload d'image.

Mais m'aintenant le probleme est qu'apres la publication d'un article je me retrouve avec un article avec mon contenu et un autre avec seulement l'image à la une :

la fonction getdraft :

public function getDraft() {
    $elem = $this->find('first', array(
        'conditions' => array('online' => -1)
    ));

    if(empty($elem)) {
        $this->save(array('online' => -1), false);
        $elem = $this->read();
    }
    $elem$this->alias]'created'] = date('Y')."-".date('m')."-".date('d')." ".date('H').":".date('i').":".date('s');
    $elem$this->alias]'online'] = 0;
    return $elem;
}

Ma fonction article_add issue de mon UsersController

public function article_add($id = null){

    $this->helpers]='Media.Uploader';
    $this->layout='admin';

    $d'pages']= $this->Paginate('Post',array('online>=-1'));
    $this->set($d);

    if($this->request->is('post') || $this->request->is('put')) {
        /*
            on teste les regles de validation du Model
            Si les regles sont correctes : save() renvoie true
        */
        if($this->Post->save($this->request->data)) {

            $this->Session->setFlash('Le contenu a bien été modifié', 'notif');
            $this->redirect(array('action' => 'article'));
        } else {
            $this->Session->setFlash("Le contenu n'a pas pu être modifié", 'notif', array('type' => 'error'));
        }
    } elseif($id) { 
        $this->Post->id = $id;
        $this->request->data = $this->Post->read();
    } else {
        $this->request->data = $this->Post->getDraft('post');
   }

}

Voilà j’espère que j'ai été claire et je vous remercie d'avance des propositions données

3 réponses


sufyan66
Auteur

Up :)

sufyan66
Auteur

Dernier Up :/ de l'aide SVP :'( je suis sur que c'est un truc tout bête en plus

Première chose: Ton getDraft doit recevoir un type (ton controller envoi un type, ton model ne reçoit rien).

En suite, est tu sur que l'id que reçoit le plugin media pour l'upload est le même que celui que tu as dans ton formulaire d'édition de page?

Aussi, je te conseil de faire un debug et un die avant ton save de ton formulaire pour voir si il a toutes les infos. Affiche nous la réponse d debug!