EBS01

Nouveau Zwii User

Messages recommandés

EBS01    1

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 :glasses:.

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

 

 

Partager ce message


Lien à poster
Partager sur d’autres sites
EBS01    1

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)

confEmailCommun.png.d1de0d1af3be8547f14302ea88815389.png

 

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

 

 

Partager ce message


Lien à poster
Partager sur d’autres sites
PeterRabbit    283

@EBS01 Comme ça m'ennuie de voir que personne ne répond à ton message, je sors de mon terrier.

 

Nouvel utilisateur de Zwii peut-être, mais pas novice en matière d'ausculation des codes ! xD

Ton truc a l'air intéressant dans son principe et au point dans sa réalisation. Je t'en dirai plus lorsque j'aurai récupéré ma ligne téléphonique et ma Freebox, bousillés par un orage la semaine dernière.

Modifié par PeterRabbit (Voir l’historique des modifications)

Partager ce message


Lien à poster
Partager sur d’autres sites
creatifmen    5

@EBS01 j'ai pas encore tester ,mais juste pour le travail effectuer BRAVO.

super d'avoir une personne comme toi dans la communauté Zwii..

a+ creatif

 

Partager ce message


Lien à poster
Partager sur d’autres sites
CroqueWeb    73

Bienvenue @EBS01, merci de partager tes modifications avec la communauté, qui justement manque de personnes comme toi, comprenant la "POO" et sachant coder

Partager ce message


Lien à poster
Partager sur d’autres sites
dji    0

Bravo et merci ! Je gère aussi le site d'une association et ça va bien me servir j'en suis sûr !

@ bientôt !

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant