Vous n'êtes pas identifié(e).
yep ! je voulais dire Shadowbox
A ton retour si pas de réponse tu package ton plugin comme tu veux (avec ou sans Shadowbox) et on met en ligne ! (et tu gardes de coté le mail que tu as envoyer .
... j'sais pas trop ... mais j'ai mis le plugin lightbox2 sous GNU/GPL3 donc on va dire que le plugin est sous GNU/GPL et que les scripts sont redistribué selon leur licence originale
Ça me semble être la bonne approche
Donc en ce qui me concerne pas de problème pour que j'indique GNU/GPL pour ton plugin et qu'il intègre les différents effets sauf pirobox car son auteur à l'aire de vouloir concervé l'exclusivité de la distribution !
Tu veux dire Shadowbox, pirobox étant sous CC-by-sa.
Dans tous les cas, j'ai envoyé un mail aux auteurs de ces deux plugins. Je n'ai toujours pas de réponse ; je pars en congés la semaine prochaine donc je ferai une relance d'ici une dizaine de jours et si mes mails sans réponse, je propose que les plugins intègrent l'archive. Qu'en penses-tu ?
A+
... j'sais pas trop ... mais j'ai mis le plugin lightbox2 sous GNU/GPL3 donc on va dire que le plugin est sous GNU/GPL et que les scripts sont redistribué selon leur licence originale
Donc en ce qui me concerne pas de problème pour que j'indique GNU/GPL pour ton plugin et qu'il intègre les différents effets sauf pirobox car son auteur à l'aire de vouloir concervé l'exclusivité de la distribution !
Je pensais le mettre sous licence GNU GPL ; mais entre pirobox et shadowbox ça ne va pas passer si je comprends bien J'avais déjà essayé d'envoyer des mails au développeur de pirobox mais j'ai jamais eu de réponse
Dans tous les cas, est-il possible d'inclure l'ensemble des scripts lightbox dans le package (je ne les ai pas modifié) avec leur licence respective et de ne placer que le render_selectlightbox sous GNU GPL ?
Je vais de toute façon contacter les développeurs.
A+
Y'a des développeur casse pied ! ils veux visiblement que les gens sache que c'est lui qui a codé ça !
Je vois 3 solutions :
- faire un ptit mail au développeur pour lui demander l'autorisation (te décidé avant sous quel licence serra distribué le code et le lui dire, égallement lui dire que son site serra en lien sur la page de téléchargement de plugin)
- ou donner les instrcutions à l'utlisateur pour télécharger le plugin sur le site officiel
- Supprimer le lightbox en question
A toit de voir
Salut jonas,
Alors pour ce qui est des plugins et de leurs licenses :
- lightbox2 : pas de problème
- fancybox : GPL et MIT
- pirobox : CC-by-sa
- shadowbox : je dois t'avouer que je ne suis pas trop sûr, au vu du texte de la licence :
Shadowbox.js Non-Commercial License version 1.0
Under the terms of this license, the licensee is granted the following privileges:
- The right to use the library as part of a website or application that is not
used for commercial purposes
- The right to modify the library to suit his purpose.
Under no circumstance is the licensee permitted to redistribute the source code,
images, or documentation contained in the library. All redistribution rights
remain with the copyright holder unless specific prior written permission is
obtained.
Under no circumstance shall this copyright notice or list of conditions be
modified or removed from the code distribution in either source or binary form.
This software is provided by the copyright holder and contributors "as is" and
any express or implied warranties, including, but not limited to, the implied
warranties of merchantability and fitness for a particular purpose are disclaimed.
In no event shall the copyright holder or contributors be liable for any direct,
indirect, incidental, special, exemplary, or consequential damages (including, but
not limited to, procurement of substitute goods or services; loss of use, data, or
profits; or business interruption) however caused and on any theory of liability,
whether in contract, strict liability, or tort (including negligence or otherwise)
arising in any way out of the use of this software, even if advised of the
possibility of such damage.
Qu'en penses-tu ? Dans tous les cas, je n'ai pas touché aux fichiers, j'ai laissé les licences, les en-têtes de fichier, les sources sont citées.
Je ferai le post / fiche type pour mettre à disposition, et mettrai l'archive sur mon serveur.
A+
J'ai laissé de côté la configuration du plugin pour me concentrer sur le plugin en lui-même ; je t'envoie cela par mail.
Ok, le but est je suppose que je le mets à disposition sur http://gcweb.web4me.fr/demo.php?model=list&collec=1 si oui
- Rempli le petite fiche type ici http://forum.jonas.tuxfamily.org/forum/ … php?id=140
- Si tu en as la possibilité, pour moi c'est beacoup plus simple si tu met ton plugin quelque part sur ton site web (et que les gens télécharge le plugin via un lien qui pointe sur ton site web).
- Et enfin, as-tu vérifié les différents effet sont redistribuable ? pour lightbox2 c'est ok, tant qu'on cite l'auteur, ce que tu fais (licence: http://creativecommons.org/licenses/by/2.5/) Pour les autres je te laisse vérifié (j'espère que c'est le cas, sinon il faudra supprimé les source du code et donner au utilisateur une procédure d'installation plus complexe genre "téléchargez les fichier là et copié les ici")
Sinon pour répondre à ta question dans ton mail, le code est très lisible et me semble propre (après je ne suis qu'un amateur ...)
Salut jonas,
J'ai laissé de côté la configuration du plugin pour me concentrer sur le plugin en lui-même ; je t'envoie cela par mail.
Cependant, j'aimerais comprendre comment écrire un fichier de configuration pour le plugin... la configuration étant assez longue et pas terrible dans le fichier render.
Merci et à bientôt.
Salut jonas,
Alors je m'arrache les cheveux... :'(
J'ai fait plusieurs essais sans succès et j'ai essayé de partir du fichier configuration.php et de l'adapter mais je ne parviens pas à saisir où je fais fausse route. Avec le code ci-dessous, le fichier de conf est bien créé / modifié mais les informations ne sont pas prises en compte ; de plus, si je modifie le fichier de conf à la main et que je recharge la page (même après avoir vidé le cache), la configuration n'est pas lue...
Voici le code :
<?php
//Charger ancienne config
$plgfileconfig = PATH_GCWEB.'/conf/plugin_selectlightbox.php';
$plgoldConf = plgreadconfig($plgfileconfig);
#$error = '';
#$warning = '';
#$ok = "<code style='color:green'>ok</code>";
#$ko = "<code style='color:red'>ko</code>";
/*** FONCTION ***/
function plgreadconfig($plgfileconfig) {
/*
* Lit le fichier de config et le retourne. Si le fichier de config
* n'existe pas retourne False
*/
global $plgoldconf;
if (!file_exists($plgfileconfig)) {
$plgoldconf = False;
return False;
} else {
include $plgfileconfig;
$plgoldconf = $plgconf;
return $plgconf;
}
}
function plgwriteconfig($plgfileconfig) {
/*
* Ecrit le fichier de config.
*/
$plgnewfileconfig = "<?php
/*****************************************************
* Fichier de configuration généré automatiquement *
*****************************************************/
\$plgconf = array(
/*** CONFIGURATION DU SITE ***/
'plgtitle' => ".checktype($_POST['plgtitle']).",
'plggenerator' => ".checktype($_POST['plggenerator'],'boolean')."
);\n?>
";
//pas d'erreur, on ecrit le fichier
$plgfp = fopen($plgfileconfig,'w');
fwrite($plgfp, $plgnewfileconfig);
fclose($plgfp);
}
/*** end function ***/
/*** ACTIONS *********************************************************/
//Sauvegarder le fichier
if ($checkUserPasswd) {
//Sauvegarde fichier config
$plgwriteconfigOK = plgwriteconfig($plgfileconfig);
if ($plgwriteconfigOK) {
//L'écriture du fichier de config est ok, lecture de la config
$plgoldConf = plgreadconfig($plgfileconfig);
unset ($_POST); // suppression des données post pour que ce soit celle de oldConf qui soit utilisée
}
}
include PATH_GCWEB.'/conf/plugin_selectlightbox.php';
echo '<fieldset><legend>'.__('Général','titre de section').'</legend>
'.input_type_texte('plgtitle',__('Titre du site')).'
<span></span>
'.input_checkbox('plggenerator',__('Générateur'),False).'
<span>'.__('Permet de créer les pages de thème pour un type de collection non
supportée ou d\'en remplacer une qui ne vous plait pas
(<a href="./?redirect=http%3A%2F%2Fjonas.tuxfamily.org%2Fwiki%2Fgcweb%2Fconfiguration%23Ordre_de_tri+par_defaut">plus d\'information</a>).
Activez cette fonctionnalité uniquement quand vous en avez
l\'utilité').'.</span>
</fieldset>
';
?>
Où donc est-ce que je me plante (j'ai lu et relu le code, j'en comprends grosso modo le fonctionnement mais quelque chose m'échappe) ? Sur quoi devrais-je me pencher (doc comprise) ?
Désolé et merci encore et par avance.
A+
Peut-être pour la version 2 ... mais pas pour la branche 1 et le version 2 ne sortira peut-être jamais !
Réutiliser le password ? pour quoi faire ?
/plugins/config_.........php serra un "include" de la page de configuration, comme indiqué dans la doc il faudra vérifié le mot de passe avec le fonction faite pour ça avant d'enregistré le fichier de config /conf/tonplugin.php sinon, n'importe qui pourra modifier la config du plugin.
/plugins/render_........php aura un "include" du fichier de config /conf/tonplugin.php il n'y a donc aucune boucle infini.
Certes... Tu prévois de modifier ce mécanisme pour les prochaines versions ?
Bon, j'essaierai malgré tout d'y regarder, histoire de rendre les choses intéressantes (bien sûr je t'embêterai sans doute pas mal si ça te dérange pas). Et pour commencer, on peut réutiliser les variables (je pense notamment à password) du configuration.php ? Il faut passer par un include ou pas (si oui, il faut récupérer le nouveau nom du fichier de conf et ça m'a l'air d'une boucle sans fin ) J'y regarderai de plus près d'ici la fin de la semaine (pas sûr que je produise quelque chose cependant).
Merci encore et à+
... réécrire la fonction writeconfig ...
Oui, en gros, donc je trouve que c'est lourd pour un simple plugin.
Salut jonas,
Alors si je m'en tiens au render, c'est quand même facile : intégration de trois différents système de lightbox fonctionnels, reste à en ajouter quelques un éventuellement et mettre en place quelques paramètres mais ça va (le tout en utilisant un switch avec case comme recommandé -- le seul truc dont je suis pas bien sûr, c'est le break mais je vais relire la doc php).
La doc n'est pas un tutorial pour le php dans un 1er temps contente toi de faire "simple" (comme je te l'ai dit pour le plugin isNew je ne l'ai pas fait ce n'est pas pour rien .
Effectivement, la doc n'est pas un tutoriel mais en la lisant on a vraiment l'impression que c'est simple Et si même toi, tu ne le fais pas... Mais bon, si je comprends bien, en relisant la doc, ce qu'il faut en fait c'est reprendre et réécrire la fonction writeconfig pour notre plugin ou je me trompe une nouvelle fois ?
Merci et à bientôt.
La doc n'est pas un tutorial pour le php dans un 1er temps contente toi de faire "simple" (comme je te l'ai dit pour le plugin isNew je ne l'ai pas fait ce n'est pas pour rien .
Dans ton render_....php
<?php
// Configuration
effetLightbox = "display"; // Effet ligntbox option possible : "display", "lightbox2" ou "pirobox"
...
?>
Bon j'ai poursuivi mes efforts mais je rencontre un nouveau problème. L'écriture dans le fichier /conf/plugin_selectlightbox.php se fait mais les infos saisies dans la configuration ne sont pas pris en compte :
<?php
$config_plugin_selectlightbox = array (
'selectlightbox_nolightbox' => False,
'selectlightbox_lightbox2' => False,
'selectlightbox_pirobox' => False,
'selectlightboxsel' => ''
);
?>
Et le /plugins/config_selectlightbox.php :
<?php
if ($checkUserPasswd) {
//Ecriture du fichier de config
$fp = fopen(PATH_GCWEB.'/conf/plugin_selectlightbox.php','w');
fwrite($fp, "<?php
\$config_plugin_selectlightbox = array (
'selectlightbox_nolightbox' => ".checktype($_POST['selectlightbox_nolightbox'],'boolean').",
'selectlightbox_lightbox2' => ".checktype($_POST['selectlightbox_lightbox2'],'boolean').",
'selectlightbox_pirobox' => ".checktype($_POST['selectlightbox_pirobox'],'boolean').",
'selectlightboxsel' => ".checktype($_POST['selectlightboxsel'])."
);\n?>
");
fclose($fp);
}
include PATH_GCWEB.'/conf/plugin_selectlightbox.php';
$selectlightboxoptions = array ("Désactivé","Lightbox2","Pirobox");
echo '<div><fieldset><legend>Choix du système de lightbox</legend>
'.input_checkbox('selectlightbox_nolightbox','Désactivé',$config_plugin_selectlightbox['nolightbox']).'
'.input_checkbox('selectlightbox_lightbox2','Lightbox2',$config_plugin_selectlightbox['lightbox2']).'
'.input_checkbox('selectlightbox_pirobox','Pirobox',$config_plugin_selectlightbox['pirobox']).'
'.input_select('selectlightboxsel',$selectlightboxoptions,False,__('Type de lightbox'),'default').'
</fieldset></div>';
?>
J'ai essayé de me basé sur le configuration.php notamment pour ce qui est de la récupération du select (pour le template par exemple) mais impossible de récupérer la valeur choisie et la checkbox cochée
En te remerciant (il va sans doute te falloir être patient )
A bientôt