EBS01

Membres
  • Compteur de contenus

    4
  • Inscription

  • Dernière visite

Réputation sur la communauté

1 Neutre

À propos de EBS01

  • Rang
    Néophyte
  1. problème menu CLIC & sous menu possible?

    Bonjour, je suis nouvel utilisateur de ce CMS mais si tu ne souhaite pas que le menu "Parent" soit cliquable (c'est aussi mon cas) , il faut modifier la fonction showMenu qui se trouve dans le fichier core\core.php et remplacer la ligne <?php $items .= '<a href="' . helper::baseUrl() . $parentPageId . '"' . $active . $targetBlank . '>'; par <?php if($childrenPageIds){ $items .= '<a ' . $active . '>'; } else { $items .= '<a href="' . helper::baseUrl() . $parentPageId . '"' . $active . $targetBlank . '>'; } Explication : si le menu contient des enfants, ne pas mettre l'attribut href J'espère que l'équipe prendra en compte cette simple petit modif (ou alors qu'elle proposera dans la configuration la possibilité de choisir si on souhaite qu'un menu parent soit cliquable). Jérôme
  2. Nouveau Zwii User

    J'ai fait l'évolution du point 2 (ajout d'une adresse commune) en une quinzaine de minutes (le temps de comprendre un peu le mécanisme de Zwii qui est vraiment abordable). Si l'adresse est renseignée dans les paramètres généraux, le mail du formulaire de contact est systématiquement envoyé à cette adresse (le mécanisme de l'envoi à tous les membres d'un groupe restant toujours actif) Voici les modifications apportées dans les fichiers core/core.php: ligne 48, ajout de la valeur par défaut du nouveau paramètre de config commonEmail <?php ... private $defaultData = [ 'config' => [ 'analyticsId' => '', 'autoBackup' => true, 'cookieConsent' => true, 'favicon' => 'favicon.ico', 'homePageId' => 'accueil', 'maintenance' => false, 'commonEmail' => '', // ***** [[ADD]] Nouveau paramètre pour stocker une adresse mail commune 'metaDescription' => 'Zwii est un CMS sans base de données qui permet à ses utilisateurs de créer et gérer facilement un site web sans aucune connaissance en programmation.', 'social' => [ 'facebookId' => '', 'googleplusId' => '', 'instagramId' => '', 'pinterestId' => '', 'twitterId' => '', 'youtubeId' => '' ], 'timezone' => 'Europe/Paris', 'title' => 'Zwii, votre site en quelques clics !' ], ... core/module/config/config.php: line 175, sauvegarde de la donnée du nouveau paramètre <?php ... public function index() { // Soumission du formulaire if ($this->isPost()) { $this->setData([ 'config', [ 'analyticsId' => $this->getInput('configAnalyticsId'), 'autoBackup' => $this->getInput('configAutoBackup', helper::FILTER_BOOLEAN), 'maintenance' => $this->getInput('configMaintenance', helper::FILTER_BOOLEAN), 'cookieConsent' => $this->getInput('configCookieConsent', helper::FILTER_BOOLEAN), 'favicon' => $this->getInput('configFavicon'), 'homePageId' => $this->getInput('configHomePageId', helper::FILTER_ID, true), 'commonEmail' => $this->getInput('configCommonEmail', helper::FILTER_MAIL), // ***** [[ADD]] Sauvegarde de la valeur du paramètre commonEmail 'metaDescription' => $this->getInput('configMetaDescription', helper::FILTER_STRING_LONG, true), 'social' => [ 'facebookId' => $this->getInput('configSocialFacebookId'), 'googleplusId' => $this->getInput('configSocialGoogleplusId'), 'instagramId' => $this->getInput('configSocialInstagramId'), 'pinterestId' => $this->getInput('configSocialPinterestId'), 'twitterId' => $this->getInput('configSocialTwitterId'), 'youtubeId' => $this->getInput('configSocialYoutubeId') ], 'timezone' => $this->getInput('configTimezone', helper::FILTER_STRING_SHORT, true), 'title' => $this->getInput('configTitle', helper::FILTER_STRING_SHORT, true) ] ]); ... core/module/config/view/index/index.php: line 33, ajout de la zone de saisie du nouveau paramètre ... <?php echo template::textarea('configMetaDescription', [ 'label' => 'Description du site', 'value' => $this->getData(['config', 'metaDescription']) ]); ?> <?php // ***** [[ADD]] Ajout de la zone de saisie de l'adresse commune echo template::mail('configCommonEmail', [ 'help' => 'Saisissez une adresse mail commune.', 'label' => 'Email général', 'value' => $this->getData(['config', 'commonEmail']) ]); // ***** Fin ?> <?php echo template::select('configHomePageId', helper::arrayCollumn($this->getData(['page']), 'title', 'SORT_ASC'), [ 'label' => 'Page d\'accueil', 'selected' => $this->getData(['config', 'homePageId']) ]); ?> ... module/form/form.php: A partir de la ligne 187, modification de la constitution du tableau $to[] --> Si le paramètre commonEmail a été renseigné, l'ajouter à la liste des destinataire. <?php ... // Envoi du mail $sent = true; if ( self::$inputNotices === [] // ***** [[COMMENT]] Mis en commentaire de cette condition AND $group = $this->getData(['module', $this->getUrl(0), 'config', 'group']) ) { // Utilisateurs dans le groupe $to = []; // ***** [[ADD]] La condition mise en commentaire ci-dessus est ajoutée ici // Si envoi de mail au groupe if ($group = $this->getData(['module', $this->getUrl(0), 'config', 'group'])) { foreach ($this->getData(['user']) as $userId => $user) { if ($user['group'] === $group) { $to[] = $user['mail']; } } } // ***** [[ADD]] Si un email commun est configuré dans les pamètres, l'ajouter à la liste des destinataire if ($commonEmail = $this->getData(['config', 'commonEmail'])) { if (!is_null($commonEmail) AND strlen($commonEmail) > 0) { $to[] = $commonEmail; } } // FIN ADD if ($to) { // Sujet du mail $subject = $this->getData(['module', $this->getUrl(0), 'config', 'subject']); if ($subject === '') { $subject = 'Nouveau message en provenance de votre site'; } // Envoi le mail $sent = $this->sendMail( $to, $subject, 'Nouveau message en provenance de la page "' . $this->getData(['page', $this->getUrl(0), 'title']) . '" :<br><br>' . $content ); } } ... Quel est votre avis ? Jérôme
  3. Nouveau Zwii User

    Bonjour, j'ai découvert Zwii très récemment (moins de 5 jours) et je viens de le tester pour un de mes sites...j'ai été bluffé par la simplicité et l'efficacité de ce CMS à tel point que je viens de passer ce site (sous DotClear que je ne supportais pas) à Zwii. Ce site est pour une association qui gère une cantine scolaire; les bénévoles n'étant pas des informaticiens, il faut quelque chose de simple et avec un beau rendu. Je crois que j'ai trouvé ce qu'il faut . J'ai également ajouté le module group_adherent qui correspond parfaitement à nos besoins. Maintenant 2 petits reproches (quand même) ou du moins une demande d'évolution : 1- Il n'est pas possible de modifier un identifiant. J'avais fais tout la conversion du site en local avec un utilisateur ayant l'identifiant admin mais pour le site de prod, je voulais un identifiant moins simple. J'ai bien vu que le rechercher/remplacer dans le json ne fonctionnait pas car le cryptage du mot de passe prend en compte l'identifiant. ==> Ne serait-il pas possible d'implémenter une fonction spéciale pour permettre la modification de l'identifiant (qui implique donc aussi le changement de mot de passe). Pour l'histoire, dans mon cas, après avoir remplacer l'identifiant dans mon json, j'ai créé sur un second Zwii un user avec l'identifiant voulu j'ai recopié le password crypté dans mon le json de mon site. 2- Le deuxième point est plus important pour nous. Pour le formulaire de contact, le mail est envoyé à l'ensemble des utilisateurs d'un groupe donné; dans notre cas nous utilisons une adresse commune pour l'association et nous souhaitons, même s'il y a plusieurs administrateurs du site que les messages soient envoyés uniquement à cette adresse. Pour le moment j'ai modifié le form.php pour que la variable $to ne comporte que cette adresse. Il serait bien de pouvoir indiquer dans le paramétrage global du site (au même endroit où l'on définit les réseaux sociaux) une adresse mail générale; et au niveau du formulaire de contact de pouvoir sélectionner uniquement cette adresse. Et aller un dernier point, il serait bien de pouvoir indiquer que le mail envoyé via le formulaire de contact ai pour adresse d'expéditeur l'adresse qu'a saisi la personne (au lieu du noreply) afin de pouvoir faire une réponse directement (je sais que je peux faire un "transférer" mais c'est pour chipoter) Dans tous les cas, bon travail ! Jérôme