Bonjour, je suis entrain d'essayer d'utiliser l'éditeur redactor sous symfony, je suis donc sous twig.

Voici la partie que j'ai du mal à comprendre :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
<script type="text/javascript"> 
       $(document).ready(
               function()
               {
                       $('#form_text').redactor({ 	
                               imageUpload: '/lib/redactor/demo/scripts/image_upload.php',
                               fileUpload: '/lib/redactor/demo/scripts/file_upload.php',
                               imageGetJson: '/lib/redactor/demo/json/data.json'
                       });
               }
       );
    </script>
Comme je suis sous symfony2, j'ai essayé de mettre les fichiers .php dans le contrôleur.

Pouvez-vous me dire si lorsque j'upload une image, jquery appelle image_upload.php ?

Pour essayer d'avancer petit à petit et comprendre le fonctionnement, j'ai créé un fichier json.txt pour y écrire quelque chose dès que j'upload une image (enfin c'est ce que j'essaye de comprendre).

J'ai donc modifié l'appelle de image_upload.php :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
                       $('#form_text').redactor({ 	
                               imageUpload: "{{ path('redactor_img')}}",
                               fileUpload: '/lib/redactor/demo/scripts/file_upload.php',
                               imageGetJson: '/lib/redactor/demo/json/data.json'
 
                       });
Lorsque j'appelle "path('redactor_img'", ça m'écrit dans le fichier json.txt "test".
J'ai donc test cette adresse qui correspond à cette "route" :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
http://localhost/app.php/document/envoyer-image
Ici mon test est bon, à l'appelle de cette url, j'ai bien mon fichier json.txt qui contient "test" :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
//controlleur
    public function imgUploadAction() {
        echo "ecrire image";
        $chemin = dirname(__FILE__);
        $chemin_url = $chemin . "/json.txt";
        $handle = fopen($chemin_url, "r+");
        fputs($handle, "test");
    }
Maintenant j'appelle le fichier qui fait apparaître l'éditeur de texte. En voici la page html :

Code html : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
 
 
<h1>editeur un document</h1>
<meta name="viewport" content="width=device-width">
<link rel="stylesheet" href="/lib/redactor/css/style.css" type="text/css" />
<link rel="stylesheet" href="/lib/redactor/redactor/css/redactor.css" type="text/css" />
<script src="/lib/redactor/redactor/redactor.js"></script>
 
<script type="text/javascript"> 
       $(document).ready(
               function()
               {
                       $('#form_text').redactor({       
                               imageUpload: "/app.php/document/envoyer-image",
                               fileUpload: '/lib/redactor/demo/scripts/file_upload.php',
                               imageGetJson: '/lib/redactor/demo/json/data.json'
 
                       });
               }
       );
    </script>
 
    <style>
    #redactor
    {
        width: 500px;
        margin-left: 50px;
        }
        </style>
    <form id="redactor" action="/app.php/document/editer-texte" method="post">
    <label for="form_text">Titre de l'article</label>
 
    <!-- Affichage des erreurs pour ce champ précis. -->
 
 
    <!-- Génération de l'input. -->
    <textarea id="form_text" name="form[text]"></textarea>
        <input type="submit" value="enregistrer" />  
    </form>
            <br/>
            <footer>
                keokod.com Auto-Entreprise pour les technologies de l'information et de la communication © 2012 web@keokod.com
            </footer>
        </body>
    </html>

J'ai effacé le contenu de json.txt, uploader une image pour la mettre dans
l'éditeur, après cela mon fichier txt est toujours vide ?

Comment ça fonctionne ? A quel moment fait-il appel à "imageUpload:" ?

Voici le lien du wysiwig :

http://redactorjs.com/

Je vous remercie d'avance pour la réponse.