Forum ZitePLUS

La communauté des utilisateurs du CMS ZitePLUS

Vous n'êtes pas identifié(e).

#76 11/11/2011 22:50:38

snypi
Moderateurs
Inscription : 11/03/2008
Messages : 1 235
Site Web

Re : Conception d'un module

la mise à jours d'un diaporama meme après avoir enregistrer la page cela fonctionne ??
change de taille pour voir
et ce n'est pas ton script qui à mis le souk


un zite+ associatif http://asso.gard.a.toi.free.fr
création de site internet dans le Gard et Ardèche http://www.creation-site-internet-gard.com/

Hors ligne

#77 11/11/2011 23:13:28

snypi
Moderateurs
Inscription : 11/03/2008
Messages : 1 235
Site Web

Re : Conception d'un module

comme tu est sur le fofo je rajoute un post
y'a du bonne avancement j'ai presque régler mon souci
normalement ta version ne doit pas marché smile
mais je sais d'ou cela vient et j'essaie de régler le problème

j'en suis à que l'on à plus d'image mais une div avec background en arrière plan
mais j'ai un souci pour mettre à jours les variable dans tinycme


un zite+ associatif http://asso.gard.a.toi.free.fr
création de site internet dans le Gard et Ardèche http://www.creation-site-internet-gard.com/

Hors ligne

#78 11/11/2011 23:16:03

Super_chemist
Membre
Inscription : 27/05/2011
Messages : 417

Re : Conception d'un module

Testé sous Chrome, tout est toujours ok pour moi...

Hors ligne

#79 11/11/2011 23:18:29

Super_chemist
Membre
Inscription : 27/05/2011
Messages : 417

Re : Conception d'un module

Qu'est ce qui ne va pas sur ma version ? Tout marche bien chez moi...

RECTIFICATION !!!

C'est pas la dernière version que j'ai sur mon site de test local !!! Je réessaye !

EDIT : en effet, dans la dernière version, la fenêtre de sélection ne fonctionne plus... Une erreur dans le js sans doute?

Dernière modification par Super_chemist (11/11/2011 23:25:32)

Hors ligne

#80 11/11/2011 23:42:38

Super_chemist
Membre
Inscription : 27/05/2011
Messages : 417

Re : Conception d'un module

Testé sous la 0.9.2alpha...

Rhooo non jpg, t'abuses de mettre du php dans le tinymce.php... tongue

Dernière modification par Super_chemist (11/11/2011 23:43:17)

Hors ligne

#81 11/11/2011 23:47:33

jpg
Administrateurs
Inscription : 19/11/2008
Messages : 2 086
Site Web

Re : Conception d'un module

Il faut ce qu'il faut wink
Tu as vu qu'il existe en 092ax un nouveau (et timide) module tinymce wink
Sinon, la version de tinymce a changé en 092: c'est la 344 qui fonctionne mieux sous ie9
a+
Jean-Paul

Hors ligne

#82 11/11/2011 23:56:09

Super_chemist
Membre
Inscription : 27/05/2011
Messages : 417

Re : Conception d'un module

Ouais, mais je vais en chier moi pour adapter mon script... Quand je pense que justement, j'avais pensé à l'éventualité de balises ?php là dedans, puis finalement je me suis dit "boarf, ça n'arrivera jamais...".

Je vais m'amuser pour transcrire ça en regex moi !!! :'-(

Dernière modification par Super_chemist (11/11/2011 23:56:57)

Hors ligne

#83 12/11/2011 00:07:42

jpg
Administrateurs
Inscription : 19/11/2008
Messages : 2 086
Site Web

Re : Conception d'un module

Heu ... tu sais qu'il y avait déjà du php dans les tinymce.php des versions  0.9.1, 0.9.0, 0.8.3 ?

Bon courage roll

Hors ligne

#84 12/11/2011 02:12:28

snypi
Moderateurs
Inscription : 11/03/2008
Messages : 1 235
Site Web

Re : Conception d'un module

edit : message de déprime supprimé
c'est cool un forum cela permet de poser réellement ses problèmes et d'y trouver sois même une réponse smile

@super_chemist
le zdiaporama.php situé dans le plugin nous créer notre (futur ident) que tu réduit dans ton module pour ne pas avoir de bug
comme c'est du php tu pourrais peut être appliquer ta formule magic dans ce fichier !!

pour ma part les corrections des hic provoque des hic et j'en ai encore un yikes

j'arrive pas à ce que notre div prennent les valeurs des modifications (j'avais pas ce problèmes avec l'image mais la div ne veut rien entendre )
@jpg une solution ??

paramv = 'ng='+nl.rubrique.value+'&h='+nl.h.value+
						'&w='+nl.w.value+'&t='+nl.t.value+'&float='+nl.float.value+'&pl='+nl.pl.value+'&pr='+nl.pr.value+'&pt='+nl.pt.value+'&pb='+nl.pb.value;
		tinymce.extend(args, {
			zdiaporama : nl.rubrique.value,
			param : paramv,
		});

		var code = '<!--?php echo $this->page_module("zdiaporama","'+paramv+'")?-->';
		var codediv= 'class="zdiapo '+nl.rubrique.value+'_zdiapo" style="height:'+nl.h.value+'px ; Width:'+nl.w.value+'px ; float:'+nl.float.value+'"';
		var node = ed.selection.getNode();
			if ((node.nodeName == 'DIV') && (dom.getAttrib(node,'zdiaporama'))) {
			ed.dom.setAttribs(node, args);
			var mydiv=node;
			mydiv.innerHTML=code;
		} else {
			ed.execCommand('mceInsertContent', false, '<div id="__mce_tmp" '+codediv+'>'+code+'</div>', {skip_undo : 1});
			ed.dom.setAttribs('__mce_tmp', args);
			ed.dom.setAttrib('__mce_tmp', 'id', '');
			ed.undoManager.add();

la variable codediv directement implanté dans la div id_mcetmp apporte le même résultat pas d'update !!
j'ai bien essayé de collé toute la div dans la variable code mais j'ai eu un retour "NaN"

voila cela montre bien à quelle point je patauge smile
l'update ce passe ici et il ne renvoie que la valeur de param

if ((node.nodeName == 'DIV') && (dom.getAttrib(node,'zdiaporama'))) {
		action="update";
			document.getElementById("rubrique").value=dom.getAttrib(node,'zdiaporama');
			prm = dom.getAttrib(node,'param');
			//comment faire pour avoir une nouvelle variable réactualiser à la fin
			//oubien remplacer entièrement le code 
			nl.insert.value = ed.getLang('update');

Dernière modification par snypi (12/11/2011 11:04:02)


un zite+ associatif http://asso.gard.a.toi.free.fr
création de site internet dans le Gard et Ardèche http://www.creation-site-internet-gard.com/

Hors ligne

#85 12/11/2011 19:39:39

Super_chemist
Membre
Inscription : 27/05/2011
Messages : 417

Re : Conception d'un module

Pour la suppression des espaces dans la variable, il est impossible de faire ça en php car ça doit être exécuté chez le client, non chez le serveur. Donc js, désolé !

En me basant sur le code que tu as cité au dessus (tu ajustera si tu as changé de code depuis)

var codediv= 'class="zdiapo '+nl.rubrique.value.replace(/([^a-zA-Z0-9])/g,"")+'_zdiapo" style="height:'+nl.h.value+'px ; Width:'+nl.w.value+'px ; float:'+nl.float.value+'"';

En résumé, +nl.rubrique.value+ deviens +nl.rubrique.value.replace(/([^a-zA-Z0-9])/g,"")+

Testé chez moi, ça marche

Hors ligne

#86 13/11/2011 13:28:47

snypi
Moderateurs
Inscription : 11/03/2008
Messages : 1 235
Site Web

Re : Conception d'un module

bon la persévérance apporte c'est fruit !! je m'approche à grand pas du but !!
dernier hic IE

Dernière modification par snypi (13/11/2011 13:29:31)


un zite+ associatif http://asso.gard.a.toi.free.fr
création de site internet dans le Gard et Ardèche http://www.creation-site-internet-gard.com/

Hors ligne

#87 13/11/2011 19:03:59

snypi
Moderateurs
Inscription : 11/03/2008
Messages : 1 235
Site Web

Re : Conception d'un module

si quelqu'un à une piste Help !!

mon script fonctionne bien sous chrome FF mais qu'a moitié sous IE

	var code = '<!--?php echo $this->page_module("zdiaporama","'+paramv+'")?-->';
		var stylediv= 'class="zdiapo '+nl.rubrique.value+'_zdiapo" style="height:'+nl.h.value+'px ; Width:'+nl.w.value+'px ; float:'+nl.float.value+'"';
		var node = ed.selection.getNode();
			if ((node.nodeName == 'DIV') && (dom.getAttrib(node,'zdiaporama'))) {
			ed.dom.remove(node);
			ed.execCommand('mceInsertContent', false, '<div id="__mce_tmp" '+stylediv+'>'+code+'</div>', {skip_undo : 1});
			ed.dom.setAttribs('__mce_tmp', args);
			ed.dom.setAttrib('__mce_tmp', 'id', '');
		} else {
			ed.execCommand('mceInsertContent', false, '<div id="__mce_tmp" '+stylediv+'>'+code+'</div>', {skip_undo : 1});
			ed.dom.setAttribs('__mce_tmp', args);
			ed.dom.setAttrib('__mce_tmp', 'id', '');
			ed.undoManager.add();
		}

En gros sous IE 8 lors de la création d'un diapo il m'insère le bon code dans ma page le diaporama marche (c'est le else)
lors de l'update (c'est le" if") le meme code que l'insertion il m'actualise ma div mais n'insère pas le +code+
là c'est plus fort que moi smile
et y'a t'il moyen de remplacer au lieu de supprimer ?? ed.dom.remove(node);

Dernière modification par snypi (13/11/2011 19:58:42)


un zite+ associatif http://asso.gard.a.toi.free.fr
création de site internet dans le Gard et Ardèche http://www.creation-site-internet-gard.com/

Hors ligne

#88 13/11/2011 19:59:10

Super_chemist
Membre
Inscription : 27/05/2011
Messages : 417

Re : Conception d'un module

Tu as regardé dans la console de débogage de IE? Sous IE9, il faut appuyer sur F12. Il y a peut être une fonction qui foire... Ca serai bien de savoir laquelle.

Sinon, tu as vu mon message #85 ? Je vois que la modif n'apparait pas dans ton code.


De mon côté, j'ai trouvé comment modifier les scripts d'install pour être php-proof et donc compatibles avec ziteplus 092 (et suivantes j'espère!).
Upload peut être ce soir, ou demain.
J'ajouterai également un CSS dans le dossier du module côté tinymce, pour l'histoire de la div à afficher.

Hors ligne

#89 13/11/2011 20:27:21

jpg
Administrateurs
Inscription : 19/11/2008
Messages : 2 086
Site Web

Re : Conception d'un module

snypi a écrit :

si quelqu'un à une piste Help !!
...
et y'a t'il moyen de remplacer au lieu de supprimer ?? ed.dom.remove(node);

Oui, Le problème vient surement de cette ligne:     ed.dom.remove(node)
Essaye d'adapter la méthode que j'ai utilisé dans photoshow.js pour remplacer le code sans supprimer le noeud.
a+
Jean-Paul

Hors ligne

#90 13/11/2011 20:34:42

jpg
Administrateurs
Inscription : 19/11/2008
Messages : 2 086
Site Web

Re : Conception d'un module

Super_chemist a écrit :

De mon côté, j'ai trouvé comment modifier les scripts d'install pour être php-proof et donc compatibles avec ziteplus 092 (et suivantes j'espère!).

Si la modification est faite "proprement", elle devrait fonctionner encore wink
Mais cela ne sera plus la méthode recommandée dans la 093, ça c'est sur.
En effet, tu as peut-être remarqué la création en 092ax d'un embryon de module tinymce, et déjà d'une option de configuration (boite de dialogue modale).
Ce module va être la base d'autres développements qui vont permettre l'ajout de plugins à tinymce plus facilement et pouvant survivre aux mises à jours de tinymce ou ZitePLUS.
a+
Jean-Paul

Hors ligne

#91 13/11/2011 20:58:00

Super_chemist
Membre
Inscription : 27/05/2011
Messages : 417

Re : Conception d'un module

@jpg
Je m'en suis douté. Mais on verra tout ça en temps voulu !

Hors ligne

#92 13/11/2011 21:38:19

snypi
Moderateurs
Inscription : 11/03/2008
Messages : 1 235
Site Web

Re : Conception d'un module

super_chemist a écrit :

Sinon, tu as vu mon message #85 ? Je vois que la modif n'apparait pas dans ton code.

je vient de l'implémenté je l'avais remis à plus tard car dans la globilité c'est tinymce qui vas créer la div d'encadrement donc on vas pouvoir épurer l'implémentation css du module


jpg a écrit :

Essaye d'adapter la méthode que j'ai utilisé dans photoshow.js pour remplacer le code sans supprimer le noeud.

j'ai bien essayé mais j'ai pas réussi smile alors je suis passé sur autre chose
comment récupérer les variable style et les mettre à jours ??
ou j'en suis marche super avec FF avec une div en background attention modifie un fichier css de tinymce

Dernière modification par snypi (13/11/2011 21:42:24)


un zite+ associatif http://asso.gard.a.toi.free.fr
création de site internet dans le Gard et Ardèche http://www.creation-site-internet-gard.com/

Hors ligne

#93 14/11/2011 15:37:10

Super_chemist
Membre
Inscription : 27/05/2011
Messages : 417

Re : Conception d'un module

Version 1.2beta 5
http://pelles.chalonnaises.free.fr/zdia … 2beta5.zip
A RENOMMER EN zdiaporama.zip

Pour le javascript, j'ai repris ce qu'à posté snypi au dessus #92.

-Modification de mes regex pour supporter les balises ?php? au milieu du fichier tinymce.php. Tu peux y aller maintenant jpg, c'est blindé !
-Ajout d'un fichier extended_content.css dans le dossier tiny/plugins/zdiaporama/css, et ajout automatique de cette ligne dans tinymce.php à l'install. Il n'est donc plus nécessaire de modifier les fichiers de base de tinymce, pensez à effacer vos modifs !
-Suppression de la div générée par le php.
-Correction d'un petit bug créé par snypi si les padding ne sont pas renseignés.

Bugs trouvés (@snypi)
- Si on laisse les cases "largeur", "hauteur",etc vides, tinymce créera une div avec un attribut style="height: px;..." Dans l'idéal, il faudrait que tu vérifies si ces variables sont vides, et le cas échéant ne pas générer height et px... Pour info, tu as laissé trainé le même bug côté php avec les padding!

A+

Hors ligne

#94 15/11/2011 00:36:27

snypi
Moderateurs
Inscription : 11/03/2008
Messages : 1 235
Site Web

Re : Conception d'un module

salut à tous
je vais devoir mettre en suspend l'intégration du module zdiapo car j'ai un rush boulo
et un gros besoin de me former en javascript smile

si un amateur de javascript passe par la faite vous plaisir je suis partageur smile
j'essaye de boucler mes cordes au plus vite et de finir le site du zero pour revenir rapidement
@+


un zite+ associatif http://asso.gard.a.toi.free.fr
création de site internet dans le Gard et Ardèche http://www.creation-site-internet-gard.com/

Hors ligne

#95 22/11/2011 13:07:55

Super_chemist
Membre
Inscription : 27/05/2011
Messages : 417

Re : Conception d'un module

Ca avance doucement. J'identifie les bugs au fur et à mesure.
C'est marrant de voir que systématiquement, sous IE, il y a un truc qui coince...

Nouvelle version beta d'ici la fin de semaine si j'ai de la chance.

Adrien

Hors ligne

#96 22/11/2011 13:34:03

snypi
Moderateurs
Inscription : 11/03/2008
Messages : 1 235
Site Web

Re : Conception d'un module

salut tu t'es mis sur le js ??
j'ai toujours mon rush boulot à gérer mais j'essaye de temps en temps de solutionné les soucis
problème c'est que j'ai pas tellement la compréhension du javascript alors je rame smile
dit moi en plus wink


un zite+ associatif http://asso.gard.a.toi.free.fr
création de site internet dans le Gard et Ardèche http://www.creation-site-internet-gard.com/

Hors ligne

#97 22/11/2011 14:05:39

Super_chemist
Membre
Inscription : 27/05/2011
Messages : 417

Re : Conception d'un module

En partant du code de la beta5, je me suis rendu compte que le code d'update foirait pas mal, sous plusieurs navigateurs. Donc j'ai viré ton remove, et j'ai fait en sorte via les méthodes objet de tinymce de "mettre à jour" la div. Pas encore testé sous tous les navigateurs, mais ça sent bon !

En parallèle, je vois que ce qui fout le boxon, c'est quand on insère un div dans un p (ce qui n'est pas valide car div est un block alors que p est un inline... Du coup, ça foire le parsage, IE n'y comprend plus rien, les autres guère plus). Donc je vais faire en sorte que la fonction d'insertion insère le div hors des paragraphes... Pas encore eu le temps de me pencher dessus.

Enfin, vu que c'est tinymce qui génère le div avec un style intégré, ce n'est plus la peine que mon module php insère ces styles dans le head de la page. Je vais nettoyer ça.


J'uploaderai dés que possible.

Hors ligne

#98 22/11/2011 15:35:55

snypi
Moderateurs
Inscription : 11/03/2008
Messages : 1 235
Site Web

Re : Conception d'un module

yes t'assure je savais qu'un expert allais ce penché dessus wink
désoler de m’être embarqué dans une aventure ou j'avais pas les tenants et aboutissant
et du coup t'y mettre avec moi
++


un zite+ associatif http://asso.gard.a.toi.free.fr
création de site internet dans le Gard et Ardèche http://www.creation-site-internet-gard.com/

Hors ligne

#99 22/11/2011 20:28:19

Super_chemist
Membre
Inscription : 27/05/2011
Messages : 417

Re : Conception d'un module

Bon, voici la version 1.2beta6
http://pelles.chalonnaises.free.fr/zdia … 2beta6.zip
A renommer en zdiaporama.zip

Testé et OK sur la 092 sous Chrome et IE
Sous la 091, OK pour Chrome mais pas pour IE (bug semble-t-il résolu par la mise à jour de tinymce)
Merci de tester sous Firefox (je ne l'ai pas sur mon ordi), Opéra et autres trucs plus exotiques.
Je part du principe que la 092 va bientot sortir, donc que IE ne passe pas sous la 091 n'est pas un problème...

Au menu : ben ça marche... Intégration à tinymce finalisée !!!

ATTENTION : cette version n'est pas rétrocompatible avec la version 1.1 stable de zdiaporama, donc il va falloir supprimer vos vieux diaporamas, et les recréer via tinymce (je conseille de faire ça également pour une mise à jour d'une 1.2beta...)

Changelog:
Plein de petits bug corrigés
Ajustements CSS pour la fenêtre modale du plugin

Bugs connus:
Si l'user rentre n'importe quoi dans les champs de la fenetre modale, il se passera n'importe quoi. Never trust user input... A corriger !

Je parlais plus haut de ne pas insérer la div dans un p.
Ce n'est plus un problème, car le tinymce de la 092 nettoie tout ça tout seul !


Voilà, torturez-moi ça dans tous les sens, des accents dans les rubriques, ce que vous voulez !
Je pense qu'on est bon pour une version finale.


Adrien

Hors ligne

#100 22/11/2011 22:22:14

snypi
Moderateurs
Inscription : 11/03/2008
Messages : 1 235
Site Web

Re : Conception d'un module

salut

var stylediv= '';
			if (nl.h.value) { if (nl.h.value!==0){stylediv += 'height:'+nl.h.value+'px; ';}} else {stylediv += 'height:256px; ';}
			if (nl.w.value) { if (nl.w.value!==0){stylediv += 'width:'+nl.w.value+'px; ';}} else {stylediv += 'width:256px; ';}
			if (nl.fl.value) {stylediv += 'float:'+nl.fl.value+'; ';}
			if (nl.pl.value) {stylediv += 'padding-left:'+nl.pl.value+'px; ';}
			if (nl.pr.value) {stylediv += 'padding-right:'+nl.pr.value+'px; ';}
			if (nl.pt.value) {stylediv += 'padding-top:'+nl.pt.value+'px; ';}
			if (nl.pb.value) {stylediv += 'padding-bottom:'+nl.pb.value+'px; ';}
		var node = ed.selection.getNode();
		
		if ((node.nodeName == 'DIV') && (dom.getAttrib(node,'zdiaporama'))) {
			ed.dom.setAttribs(node, args);
			ed.dom.setAttrib(node,'class',classdiv);
			ed.dom.setAttrib(node,'style',stylediv);
			ed.dom.setHTML(node,code);

que c'est bon de voir le code qui vas bien !!!! merci à toi je teste ceci dès que j'ai une minute avec firefox et opera


un zite+ associatif http://asso.gard.a.toi.free.fr
création de site internet dans le Gard et Ardèche http://www.creation-site-internet-gard.com/

Hors ligne

Pied de page des forums