[Résolu]Création d'un module -
Celtic MAn - 09/05/2012
Citation :#~~~~~ DEBUT BLOC A NE PAS SUPPRIMER ~~~~~
#~ Version du CMS: #1.10.3
#~ Url du site :
#~ Hébergeur / Soft : Ovh
#~~~~~ FIN BLOC A NE PAS SUPPRIMER ~~~~~
Bonjour,
je vous explique mon "problème", je veux mettre à disposition une sorte d'annuaire professionnel sur un de mes sites qui listera des structures dans le domaine du social (un peu comme ici
http://mda44.free.fr/2009/pros/annuaire.php) : une BDD contenant des structures (15 champs : principalement des zones de texte et 2 checkboxes). Rien de bien compliqué jusque là (en html + php + MYSQL ça me pose pas de soucis). Maintenant que j'utilise CMSMS, j'aimerai le faire sous forme de module. J'ai essayé CTL Module Maker (qui est vraiment sympa et qui me donnait pas mal de possibilité comme l'édition "frontend"...) mais apparemment il y a des soucis avec ma version... J'ai vu sur le forum qu'on pouvait essayer mcfactory mais quand j'installe les dépendances j'ai quelques erreurs.
Que me conseillez vous ?
Merci d'avance.
[Résolu]Création d'un module -
jissey - 09/05/2012
Bonjour,
tu peux rechercher sur la forge (
http://dev.cmsmadesimple.org ) avec le mot clé : listit
Il y a listit extended et module generator, peut-être cela fera-t-il ton bonheur...tiens nous au courant.
[Résolu]Création d'un module -
Celtic MAn - 09/05/2012
Merci,
mon retour : listit extended s'appelle maintenant ListIt2, il me parait pas mal, je vais bidouiller un peu et vous tenir au courant avant la fin de la semaine.
Pour ce qui est de Module Generator j'ai une "erreur" : Strict Standards: Non-static method generator_tools::get_extra() should not be called statically, assuming $this from incompatible context in /homez.520/pierjean/www/mda37/modules/ModuleGenerator/lib/class.generator_filters.php on line 62
Du coup je vais regarder listit pour le moment, et au besoin je m'attaquerai à MG
[Résolu]Création d'un module -
bess - 09/05/2012
Citation :Pour ce qui est de Module Generator j'ai une "erreur" : Strict Standards: Non-static method generator_tools::get_extra() should not be called statically, assuming $this from incompatible context in /homez.520/pierjean/www/mda37/modules/ModuleGenerator/lib/class.generator_filters.php on line 62
Strict est un avertissement PHP, ce n'est pas une erreur en soit. Regarde ton php.ini pour désactiver le strict (et le deprecated s'il est activé)
[Résolu]Création d'un module -
airelibre - 09/05/2012
Regarde CompanyDirectory. A mon avis tu n'as pas besoin de partir sur un module custom
[Résolu]Création d'un module -
Celtic MAn - 16/05/2012
Je vais tester ce module. Merci pour l'info
[Résolu]Création d'un module -
Celtic MAn - 21/05/2012
Après avoir tester différent module, je pense opter pour le dernier : CompanyDirectory.
Par contre j'ai une petite question : j'ai ajouté des champs supplémentaires pour présenter les différentes structures. J'ai utilisé le code suivant {CompanyDirectory action="fe_edit"} pour permettre aux utilisateurs de crée leur structure.
Mais car il y en a un, mes champs "perso" n'apparaisse pas dans le formulaire.
Pourtant que je vais voir dans le fichier "orig_frontendform_template.tpl" :
Code :
[== HTML ==]
{if $companyid > 1}
<h4>{$mod->Lang('editcompany')}</h4>
{else}
<h4>{$mod->Lang('addcompany')}</h4>
{/if}
{cgerror}{$message}{/cgerror}
{$startform}
<div class="pagerow">
<div class="rowtext">{$nametext}</div>
<div class="rowinput">{$inputname}</div>
</div>
{if isset($inputstatus)}
<div class="pagerow">
<div class="rowtext">{$mod->Lang('status')}</div>
<div class="rowinput">{$inputstatus}</div>
</div>
{/if}
<div class="pagerow">
<div class="rowtext">{$addresstext}</div>
<div class="rowinput">{$inputaddress}</div>
</div>
<div class="pagerow">
<div class="rowtext">{$mod->Lang('latitude')}</div>
<div class="rowinput">{$inputlatitude}</div>
</div>
<div class="pagerow">
<div class="rowtext">{$mod->Lang('longitude')}</div>
<div class="rowinput">{$inputlongitude}</div>
</div>
<div class="pagerow">
<div class="rowtext">{$telephonetext}</div>
<div class="rowinput">{$inputtelephone}</div>
</div>
<div class="pagerow">
<div class="rowtext">{$faxtext}</div>
<div class="rowinput">{$inputfax}</div>
</div>
<div class="pagerow">
<div class="rowtext">{$emailtext}</div>
<div class="rowinput">{$inputemail}</div>
</div>
<div class="pagerow">
<div class="rowtext">{$websitetext}</div>
<div class="rowinput">{$inputwebsite}</div>
</div>
<div class="pagerow">
<div class="rowtext">{$detailstext}</div>
<div class="rowinput">{$inputdetails}</div>
</div>
<div class="pagerow">
<div class="rowtext">{$imagetext}</div>
<div class="rowinput">{$imagecurrent}{$imagecurrenthidden}{$imageupload}{$deletetext}{$imagecurrentdelete}</div>
</div>
<div class="pagerow">
<div class="rowtext">{$logotext}</div>
<div class="rowinput">{$logocurrent}{$logocurrenthidden}{$logoupload}{$deletetext}{$logocurrentdelete}</div>
</div>
{if $customfieldscount gt 0}
{foreach from=$customfields item=customfield}
<div class="pagerow">
<p class="rowtext">{$customfield->name}:</p>
<p class="rowinput">{$customfield->input_box}</p>
{if isset($customfield->thumb_url)}
<a class="fancybox" href="{$customfield->image_url}"><img src="{$customfield->thumb_url}"></a>
{/if}
</div>
{/foreach}
{/if}
<div class="pagerow">
<div class="rowtext">{$mod->Lang('hierarchy')}:</div>
<div class="rowinput">{$inputhier}</div>
</div>
{if $categoriescount gt 0}
<div class="pagerow">
<p class="rowtext">{$mod->Lang('categories')}:</p>
<p class="rowinput">
<select name="{$actionid}cd_categories[]" multiple="multiple" size="5">
{html_options options=$catnames selected=$sel_categories"}
</select>
</p>
</div>
{/if}
<div class="pagerow">
<p class="rowtext"> </p>
<p class="rowinput">{$submit}</p>
</div>
{$endform}
Il y a bien la variable custumfield.
Apres dans le gabarit du module pour la page d'édition j'ai bien ceci :
Code :
[== HTML ==]
{if $companyid > 1}
<h4>{$mod->Lang('editcompany')}</h4>
{else}
<h4>{$mod->Lang('addcompany')}</h4>
{/if}
{cgerror}{$message}{/cgerror}
{$startform}
<div class="pagerow">
<div class="rowtext">{$nametext}</div>
<div class="rowinput">{$inputname}</div>
</div>
{if isset($inputstatus)}
<div class="pagerow">
<div class="rowtext">{$mod->Lang('status')}</div>
<div class="rowinput">{$inputstatus}</div>
</div>
{/if}
<div class="pagerow">
<div class="rowtext">{$addresstext}</div>
<div class="rowinput">{$inputaddress}</div>
</div>
<div class="pagerow">
<div class="rowtext">{$telephonetext}</div>
<div class="rowinput">{$inputtelephone}</div>
</div>
<div class="pagerow">
<div class="rowtext">{$faxtext}</div>
<div class="rowinput">{$inputfax}</div>
</div>
<div class="pagerow">
<div class="rowtext">{$emailtext}</div>
<div class="rowinput">{$inputemail}</div>
</div>
<div class="pagerow">
<div class="rowtext">{$websitetext}</div>
<div class="rowinput">{$inputwebsite}</div>
</div>
<div class="pagerow">
<div class="rowtext">{$detailstext}</div>
<div class="rowinput">{$inputdetails}</div>
</div>
<div class="pagerow">
<div class="rowtext">nbabobpdb</div>
<div class="rowinput">{$inputdetails}</div>
</div>
<div class="pagerow">
<div class="rowtext">{$logotext}</div>
<div class="rowinput">{$logocurrent}{$logocurrenthidden}{$logoupload}{$deletetext}{$logocurrentdelete}</div>
</div>
{if $customfieldscount gt 0}
{foreach from=$customfields item=customfield}
<div class="pagerow">
<p class="rowtext">{$customfield->name}:</p>
<p class="rowinput">{$customfield->input_box}</p>
{if isset($customfield->thumb_url)}
<a class="fancybox" href="{$customfield->image_url}"><img src="{$customfield->thumb_url}"></a>
{/if}
</div>
{/foreach}
{/if}
<div class="pagerow">
<div class="rowtext">{$mod->Lang('hierarchy')}:</div>
<div class="rowinput">{$inputhier}</div>
</div>
{if $categoriescount gt 0}
<div class="pagerow">
<p class="rowtext">{$mod->Lang('categories')}:</p>
<p class="rowinput">
<select name="{$actionid}cd_categories[]" multiple="multiple" size="5">
{html_options options=$catnames selected=$sel_categories"}
</select>
</p>
</div>
{/if}
<div class="pagerow">
<p class="rowtext"> </p>
<p class="rowinput">{$submit}</p>
</div>
{$endform}
Normal jusqu'ici sauf que mes champs perso ne sont pas visible... (je précise qu'ils apparaissent bien quand je les crée à partir de panneau admin).
[Résolu]Création d'un module -
airelibre - 21/05/2012
Est-ce que les champs custom sont marqués "publiques" dans tes préférences de module (définitions des champs) ?
[Résolu]Création d'un module -
Celtic MAn - 21/05/2012
La checkbox pour "Publique" est cochée.
[Résolu]Création d'un module -
airelibre - 21/05/2012
C'est un bug connu et corrigé dans la version SVN :
http://dev.cmsmadesimple.org/bug/view/7841
La solution est sur cette page
[Résolu]Création d'un module -
Celtic MAn - 21/05/2012
airelibre a écrit :C'est un bug connu et corrigé dans la version SVN : http://dev.cmsmadesimple.org/bug/view/7841
La solution est sur cette page
Merci beaucoup
Maintenant je m'attaque à la recherche par "filtre".
[Résolu]Création d'un module -
airelibre - 21/05/2012
Ok ca marche - peux-tu marquer le sujet en [Résolu] dans le sujet ?
Pour le filtre, normalement ca marche bien. Utilises le module PostCode pour gérer les distances par km autour de ton adresse par exemple
[Résolu]Création d'un module -
Celtic MAn - 21/05/2012
Merci pour l'info.
[Résolu]Création d'un module -
airelibre - 21/05/2012
De rien, je ferme le sujet - Bonne continuation !