[plugin] MyTeam

DjbWebmasterDjbWebmaster Member
décembre 2015 modifié dans Plugins
Bonsoir à tous,

Je viens de mettre en ligne un plugin pour afficher une équipe sur une page statique.

Plugin facile à adapter et à modifier en fonction de votre besoin.

Page admin:

myteam1.jpg

myteam2.jpg

Le plugin est visible à cette adresse: http://nextum.fr/team ,pour le télécharger : ici

bye,
«1

Réponses

  • ça m'a l'air très bien ce plugin.
  • bazooka07bazooka07 PluXml Lead Developer, Moderator
    Bonjour,

    Cela ressemble beaucoup au panneau de config des utilisateurs de Pluxml, avec quelque champs en plus.

    Attention de ne pas mettre en clair les adresses mails sur un site sous peine de spam, amoins d'utiliser un truc comme mailinblack.

    A++
  • DjbWebmasterDjbWebmaster Member
    décembre 2015 modifié
    Bonsoir à tous,

    Petite modification avec la possibilité de modifier le nom des champs d'info (ex: Mail, Téléphone, ...) et l'ajout d'un texte en haut de page.


    @bazooka07

    C'est pour suite à une demande sur le forum
  • Super ce plugin en service sur *ttp://ecologe.reseauk.info/team

    N'y a-t-il pas moyen de cliquer sur la fiche pour aller vers une autre page plus complète ?
  • DjbWebmasterDjbWebmaster Member
    décembre 2015 modifié
    oui il est facilement configurable.

    Dans le fichier MyTeam.php du plugin, il suffit de modifier le HTML à partir de la ligne 46

    bye

    Edit: je ferai un tuto pour le modifer
  • Merci et OK pour la ligne 46 mais je ne vois bien sûr pas comment faire pour modifier.

    J'attends ton tuto. :)
  • Bonjour DjWebmaster,
    merci pour ce magnifique plugin, je l'ai très bien adapté pour mes besoins sans souci,(discographie d'un groupe de music)
    est ce que serait' il possible, s'il te plait, de trier les albums par ordre décroissant, soit afficher en première le dernier ajout,

    je suis en train d'utiliser la fonction sort mais ou la mettre ?? :D

    voici le script de mon fichier Album.php
    [== PHP ==]
    <?php
    class Album extends plxPlugin {
     
        public function __construct($default_lang){
        # Appel du constructeur de la classe plxPlugin (obligatoire)
        parent::__construct($default_lang);
        
        # Pour accéder à une page de configuration
        $this->setConfigProfil(PROFIL_ADMIN,PROFIL_MANAGER);
        # Déclaration des hooks
    
        $this->addHook('ThemeEndHead', 'ThemeEndHead');
        $this->addHook('plxShowConstruct', 'plxShowConstruct');
        $this->addHook('plxMotorPreChauffageBegin', 'plxMotorPreChauffageBegin');
        $this->addHook('plxShowStaticListEnd', 'plxShowStaticListEnd');
        $this->addHook('plxShowPageTitle', 'plxShowPageTitle');
        $this->addHook('SitemapStatics', 'SitemapStatics');
        $this->addHook('AdminTopEndHead', 'AdminTopEndHead');
        $this->addHook('Album', 'Album');
        } 
    
        public function Album(){
            
                $nb_albums = floor(sizeof($this->aParams)/6); // nombre de champs
                $nb_albums = $nb_albums + 1;
    
                             
                for($i=1; $i<$nb_albums; $i++) { // boucle pour afficher les albums
                    $titolo = $this->getParam('titolo'.$i);
                    $artist = $this->getParam('artist'.$i);
                    $years = $this->getParam('years'.$i);
                    $price = $this->getParam('price'.$i);
                    $cover = $this->getParam('cover'.$i);
                    $mail = $this->getParam('mail'.$i);
    
                    if(!empty($titolo)) { 
                        ?>	
                            
                            <div class="section-album">
                                <div class="col sml-12 med-6 lrg-4 grid-album ">
                                    <div class="element-album bkg-album-white  text-center">
                                       
                                        <div class="picture">
                                             <?php if (empty($cover)) {?>
                                                <img src="<?php echo PLX_PLUGINS ?>Album/APP/noavatar.png" alt="logo">
                                                    <?php }else{ ?>
                                                <img src="<?php echo $cover; ?>" alt="<?php echo $titolo; ?>">                                            
                                                     <?php } ?>
                                        </div>
    									<hr>
                                        <div class="titolo">
    									
                                            <h4>Title Album : <strong><?php echo $titolo; ?></strong> <br> 
       								           <span >Artist :  <?php echo $artist; ?></span>
    											</h4> 
       								     </div><!-- END titolo -->
                                       
     <div class="years">
                                            <h4>Release Date : <?php echo $years;?></h4>
                                        </div><!-- END DATA -->									 <div class="info"> 
                                            <h4>Price : <?php echo $price;?> <i class="fa fa-eur"></i></h4>
                                        </div><!-- END INFO -->	
                                      
                                        <input type="submit" class="blanc" value="Buy Album">	
                            </div><!-- END ELEMENT -->
                        </div><!-- END GRID -->
                    </div><!-- END SECTION -->
    
                                
                           
                    <?php }           
                } 
    
        }
    
        public function AdminTopEndHead() { ?>
        
            <link rel="stylesheet" href="<?php echo PLX_PLUGINS ?>Album/APP/admin_style.css">
    
        <?php
        }
        
        public function ThemeEndHead() { ?>
        
            <link rel="stylesheet" href="<?php echo PLX_PLUGINS ?>Album/APP/style.min.css">
            
         <?php 
        }
       
    
    
         public function plxShowConstruct() {
            # infos sur la page statique
            $string  = "if(\$this->plxMotor->mode=='album') {";
            $string .= "    \$array = array();";
            $string .= "    \$array[\$this->plxMotor->cible] = array(
                'name'      => '".$this->getParam('mnuName')."',
                'menu'      => '',
                'url'       => 'album',
                'readable'  => 1,
                'active'    => 1,
                'group'     => ''
            );";
            $string .= "    \$this->plxMotor->aStats = array_merge(\$this->plxMotor->aStats, \$array);";
            $string .= "}";
            echo "<?php ".$string." ?>";
        }
    
    
        public function plxMotorPreChauffageBegin() {
            $template = $this->getParam('template')==''?'static.php':$this->getParam('template');
            $string = "
            if(\$this->get && preg_match('/^album\/?/',\$this->get)) {
                \$this->mode = 'album';
                \$this->cible = '../../plugins/Album/static';
                \$this->template = '".$template."';
                return true;
            }
            ";
            echo "<?php ".$string." ?>";
        }
    
        public function plxShowStaticListEnd() {
            # ajout du menu pour accèder à la page de Album
            if($this->getParam('mnuDisplay')) {
                echo "<?php \$class = \$this->plxMotor->mode=='album'?'active':'noactive'; ?>";
                echo "<?php array_splice(\$menus, ".($this->getParam('mnuPos')-1).", 0, '<li><a class=\"static '.\$class.'\" href=\"'.\$this->plxMotor->urlRewrite('?album').'\">".$this->getParam('mnuName')."</a></li>'); ?>";
            }
        }
    
    
        public function plxShowPageTitle() {
            echo '<?php
                if($this->plxMotor->mode == "album") {
                    echo plxUtils::strCheck($this->plxMotor->aConf["title"]." - '.$this->getParam('mnuName').'");
                    return true;
                }
            ?>';
        }
    
        public function SitemapStatics() {
            echo '<?php
            echo "\n";
            echo "\t<url>\n";
            echo "\t\t<loc>".$plxMotor->urlRewrite("?album")."</loc>\n";
            echo "\t\t<changefreq>monthly</changefreq>\n";
            echo "\t\t<priority>0.8</priority>\n";
            echo "\t</url>\n";
            ?>';
        }
    
          
    } // class Album
    ?>
    
    

    Merci belle journée
  • DjbWebmasterDjbWebmaster Member
    janvier 2016 modifié
    Bonjour Dudy,

    j'ai modifié la boucle pour afficher les champs de cette manière, il faut remplacer ce code
    [== PHP ==]
     $nb_albums = floor(sizeof($this->aParams)/6); // nombre de champs
                $nb_albums = $nb_albums + 1;
    
                             
                for($i=1; $i<$nb_albums; $i++) { // boucle pour afficher les albums
    

    pour afficher en premier le plus recent, faut mettre ce code
    [== PHP ==]
     $nb_albums = floor(sizeof($this->aParams)/6); // nombre de champs
    
                             
                for($i=$nb_albums; $i>0; $i--) { // boucle pour afficher les albums
    
    

    je vais faire le modif sur le plugin, c'est plus logique.

    bye et bonne journée

    Edit: Si tu utilises la version en dev 5.5, j'ai ajouté le même principe en pop-up pour chercher une image dans les medias plus pratiques que de copier le lien de l'image.
  • @DjbWebmaster
    merci tout marche bien
    je suis en version 5.4, mais bientôt je me lance dans la 5.5

    ce plugin est le genre que j'aime bien, simple et efficace, il faudrait juste une option pour pouvoir modifier les champs et les avatars existants

    mais qui c'est, peut-être que tu avait déjà pensé ;)
    merci bonne soirée
  • Hello,
    Je reviens vers toi concernant ce plugin, j'ai le même souci d'affichage que le plugin "FAQ"
    Test fait sur un pluxml vierge sans aucun autres plugins.

    Jol5926
  • DjbWebmasterDjbWebmaster Member
    janvier 2016 modifié
    petite mise à jour pour le rendre compatible avec les anciennes versions PHP, tu peux DL et tester
  • DjbWebmaster a écrit:
    petite mise à jour pour le rendre compatible avec les anciennes versions PHP, tu peux DL et tester

    Suite mise à jour, plugin fonctionne, ok ! ;)
  • Hello,
    me revoilà !
    1- Pourquoi le membre ajouté en dernier se retrouve en premier sur l'affichage côté site ?
    y-a-t-il possibilité de choisir le classement des membres ?
    2- Peut-on à partir des coordonnées d'un membre avec une adresse émail, de cliquer sur l'émail et d'ouvrir le logiciel de messagerie ?

    Merci
    et encore félicitations pour ce plugin ;)
  • jol5926 a écrit:
    1- Pourquoi le membre ajouté en dernier se retrouve en premier sur l'affichage côté site ?

    C'est une demande d'un membre, regarde le code en haut de ce post si tu veux faire les modifs
  • jol5926jol5926 Member
    janvier 2016 modifié
    OK
    1- Est-ce qu'il serait possible de pouvoir les classer comme on veut, un peu comme l'ordre des plugins dans l'admin et qu'ils s'affichent dans l'ordre choisi ?

    je réédite une de mes questions :

    2- Peut-on à partir des coordonnées d'un membre avec une adresse émail, cliquer sur l'émail et ouvrir le logiciel de messagerie ou serait-ce envisageable. ?
  • DjbWebmasterDjbWebmaster Member
    janvier 2016 modifié
    jol5926 a écrit:
    1- Est-ce qu'il serait possible de pouvoir les classer comme on veut, un peu comme l'ordre des plugins dans l'admin et qu'ils s'affichent dans l'ordre choisi ?

    Oui pour une prochaine version
    jol5926 a écrit:
    2- Peut-on à partir des coordonnées d'un membre avec une adresse émail, cliquer sur l'émail et ouvrir le logiciel de messagerie ou serait-ce envisageable. ?

    Il suffit de modifier la partie HTML, fichier MyTeam.php ligne 62

    Remplacer
    [== HTML ==]
    <p><?= $label2.$mail; ?></p>
    

    par
    [== HTML ==]
    <p><a href="mailto:<?= $mail; ?>">Contacter par mail</a></p>
    

    ou (pour afficher l'adresse mail)
    [== HTML ==]
    <p><a href="mailto:<?= $mail; ?>"><?= $mail; ?></a></p>
    
  • DjbWebmaster a écrit:
    jol5926 a écrit:
    1- Est-ce qu'il serait possible de pouvoir les classer comme on veut, un peu comme l'ordre des plugins dans l'admin et qu'ils s'affichent dans l'ordre choisi ?

    Oui pour une prochaine version
    jol5926 a écrit:
    2- Peut-on à partir des coordonnées d'un membre avec une adresse émail, cliquer sur l'émail et ouvrir le logiciel de messagerie ou serait-ce envisageable. ?

    Il suffit de modifier la partie HTML, fichier MyTeam.php ligne 62

    Remplacer
    [== HTML ==]
    <p><?= $label2.$mail; ?></p>
    

    par
    [== HTML ==]
    <p><a href="mailto:<?= $mail; ?>">Contacter par mail</a></p>
    

    ou (pour afficher l'adresse mail)
    [== HTML ==]
    <p><a href="mailto:<?= $mail; ?>"><?= $mail; ?></a></p>
    

    Quand j'utilise ça :
    <p><a href="mailto:<?= $mail; ?>">Contacter par mail</a></p>

    voilà ce que j'ai dans mon logiciel de messagerie
    "eval(unescape('document.write('asl.lespresdamelie@orange.fr')'))" <script>
  • DjbWebmasterDjbWebmaster Member
    janvier 2016 modifié
    fonction chez moi, pour plus d'info

    mais je te déconseillé fortement de ne pas utiliser l'affichage des mails pour éviter des spams :D
  • Pourrait-on imaginer une évolution du plugin pour que les images soient cliquables avec une url. De cette façon on pourrait passer de "mon équipe" à "mon annuaire" ou "mes services". Je ne sais pas si je suis clair, ça fait penser à des pages comme celles-ci : http://lehollandaisvolant.net/tout/tools/
  • oui je suis sur une modification qui sera compatible avec la version pluxml 5.5,
    notamment la recherche des images dans la bibliothèque et l'ajout de liens vers une page.
  • jol5926jol5926 Member
    janvier 2016 modifié
    jol5926 a écrit:
    DjbWebmaster a écrit:
    jol5926 a écrit:
    1- Est-ce qu'il serait possible de pouvoir les classer comme on veut, un peu comme l'ordre des plugins dans l'admin et qu'ils s'affichent dans l'ordre choisi ?

    Oui pour une prochaine version
    jol5926 a écrit:
    2- Peut-on à partir des coordonnées d'un membre avec une adresse émail, cliquer sur l'émail et ouvrir le logiciel de messagerie ou serait-ce envisageable. ?

    Il suffit de modifier la partie HTML, fichier MyTeam.php ligne 62

    Remplacer
    [== HTML ==]
    <p><?= $label2.$mail; ?></p>
    

    par
    [== HTML ==]
    <p><a href="mailto:<?= $mail; ?>">Contacter par mail</a></p>
    

    ou (pour afficher l'adresse mail)
    [== HTML ==]
    <p><a href="mailto:<?= $mail; ?>"><?= $mail; ?></a></p>
    

    Quand j'utilise ça :
    <p><a href="mailto:<?= $mail; ?>">Contacter par mail</a></p>

    voilà ce que j'ai dans mon logiciel de messagerie
    "eval(unescape('document.write('asl.lespresdamelie@orange.fr')'))" <script>


    Hello,
    je reviens vers toi pour ce problème

    dans cette ligne
    <p><a href="mailto:<?= $mail; ?>">Contacter par mail</a></p>

    quand je remplace <?= $mail; ?> par une adresse émail, cela fonctionne

    quand je remets <?= $mail; ?>, j'ai toujours, ligne ci-dessous, dans mon logiciel de messagerie
    "eval(unescape('document.write('asl.lespresdamelie@orange.fr')'))" <script>

    As-tu une idée ou quelqu'un aurait-il une idée ?
    Merci
  • Hello,

    remplace
    [== PHP ==]
    <?= $mail; ?>
    

    par
    [== Indéfini ==]
    <?php echo $mail; ?>
    

    je ferai la modif dans le plugin cette semaine (idem pour jQmeter)
  • Hello,
    plugin "myteam" fonctionne maintenant. ;)
    Merci
  • J'ai laissé un message sur ton site, pas d'affichage chez moi
  • ok j'ai compris, j'avais noté "L'équipe", ça ne lui a pas plu dans le titre. Il y a un problème d'affichage lorsqu'on met une apostrophe
  • ce serait sympa de pouvoir éditer un profil sans avoir à le supprimer.
  • Bonjour,

    Ok je prends en compte ta remarque pour une mise à jour

    :D
  • jol5926jol5926 Member
    avril 2016 modifié
    Hello,
    je viens d'installer la version 5.5 de pluxml.

    1) Dans la partie admin du plugin quand je modifie un membre, je clique sur "mettre à jour", la mise à jour se fait mais j'ai ce message en haut de la page.

    myteam.png

    Comment corriger ?

    2) Avec la version 5.5, je croyais que tu avais mis en place une pop-up pour les images ??

    Merci de ton aide
  • Bonsoir,

    je n'ai pas encore mis en ligne, je vais le tester et le mettre sur github
  • DjbWebmaster a écrit:
    Bonsoir,

    je n'ai pas encore mis en ligne, je vais le tester et le mettre sur github

    ok,
    j'attends ta nouvelle version pour refaire des essais
Connectez-vous ou Inscrivez-vous pour répondre.