Créer un module

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • #16
    Re : Créer un module

    Ha j'ai trouvé.
    Fichiers joints

    Commentaire


    • #17
      Re : Créer un module

      Comme je te l'ai dit, il faut que les fichiers existent pour pouvoir les indiquer dans le .xml

      .xml corrigé.
      Je n'ai pas regardé le reste.
      mod_crmchrono.zip
      Un message d’erreur sur votre site Joomla ... ayez le reflexe de consulter lla base de connaissance : https://kb.joomla.fr

      Ce forum, vous l'aimez ? il vous a sauvé la vie ? Vous y apprenez chaque jour ? Alors adhérez à l'AFUJ https://www.joomla.fr/association/adherer

      Commentaire


      • #18
        Re : Créer un module

        je te conseille d'utiliser aussi le packager de Folcomedia, ultra pratique pour développer sur le site et packager l'extension.
        Folcomedia Packager - Joomla! Extension Directory ->
        Find extensions for your Joomla site in the Joomla Extensions Directory, the official directory for Joomla components, modules and plugins.
        Un message d’erreur sur votre site Joomla ... ayez le reflexe de consulter lla base de connaissance : https://kb.joomla.fr

        Ce forum, vous l'aimez ? il vous a sauvé la vie ? Vous y apprenez chaque jour ? Alors adhérez à l'AFUJ https://www.joomla.fr/association/adherer

        Commentaire


        • #19
          Re : Créer un module

          Merci beaucoup,
          L'installation fonctionne.
          Je regarde la différence entre ce que tu as fais et ce que j'avais fait.

          J'ai un souci dans mon fichier mod_crmchrono.php mais il faut de toute façon maintenant que mon module me permette d'afficher un chronomètre (PHP que je suis en train de développer)

          Il faut maintenant que je comprenne comment faire pour insérer mon code pour que le module affiche mon chronomètre.

          Merci beaucoup en tout cas.
          Cordialement.
          Eric

          Commentaire


          • #20
            Re : Créer un module

            Un chronomètre ?
            Je veux bien voir quand tu auras finalisé ton projet.
            Perso, j'irais plutôt voir du côté du Javascript que du PHP, mais le JS est plus mon truc.
            Un message d’erreur sur votre site Joomla ... ayez le reflexe de consulter lla base de connaissance : https://kb.joomla.fr

            Ce forum, vous l'aimez ? il vous a sauvé la vie ? Vous y apprenez chaque jour ? Alors adhérez à l'AFUJ https://www.joomla.fr/association/adherer

            Commentaire


            • #21
              Re : Créer un module

              Bonjour,
              Voici ce que j'ai préparé.
              En fait je développe un composant CRM pour un client Centre de formation. J'y ai besoin d'un chronomètre pour ses téléprospecteurs (Qui sont dans un UserGroup).
              Mon module doit continuer à compter (le temps de connexion des utilisateurs) même quand ces utilisateurs changent de page, pour cela je vais utiliser les variables de session et afficher le chronomètre dans un module pour qu'il reste affiché quelque soit la page où navigue les utilisateurs d'un certain groupe.

              Cordialement.
              Eric


              <?php
              session_start();
              ?>


              <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//FR" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
              <html xmlns="http://www.w3.org/1999/xhtml">
              <head>
              <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
              <title>Chronomètre</title>
              <link rel="stylesheet" type="text/css" href="css/principal.css">

              <!-- scripts -->
              <script src="jquery.min.js"></script>
              </head>

              <script language="JavaScript">
              var startTime = 0
              var start = 0
              var end = 0
              var diff = 0
              var timerID = 0


              function chrono(){

              end = new Date()
              diff = end - start
              diff = new Date(diff)
              var msec = diff.getMilliseconds()
              var sec = diff.getSeconds()
              var min = diff.getMinutes()
              var hr = diff.getHours()-1
              if (min < 10){
              min = "0" + min
              }
              if (sec < 10){
              sec = "0" + sec
              }
              if(msec < 10){
              msec = "00" +msec
              }
              else if(msec < 100){
              msec = "0" +msec
              }
              document.getElementById("chronotime").innerHTML = hr + ":" + min + ":" + sec + ":" + msec
              document.getElementById("chronotimeS").innerHTML = sec
              document.getElementById("chronotimeM").innerHTML = min
              document.getElementById("chronotimeH").innerHTML = hr

              // Renvoyer dans des INPUT
              var secondes = document.getElementById("chronotimeS").innerHTML = sec
              var minutes = document.getElementById("chronotimeM").innerHTML = min
              var heures = document.getElementById("chronotimeH").innerHTML = hr

              //var heure_courante = System.out.println(new Date());

              var now = new Date();
              var heure = now.getHours();
              var minute = now.getMinutes();
              var heure_min = heure + ":" + minute;

              d = new Date();
              var date_du_jour = (d.toLocaleDateString());
              var teleacteur = 3;

              jQuery('#secondes').val(secondes);
              jQuery('#minutes').val(minutes);
              jQuery('#heures').val(heures);
              jQuery('#secondes2').val(secondes);
              jQuery('#minutes2').val(minutes);
              jQuery('#heures2').val(heures);
              jQuery('#teleacteur').val(teleacteur);
              jQuery('#date').val(date_du_jour);
              jQuery('#heurecourante').val(now);
              jQuery('#heure').val(heure);
              jQuery('#minute').val(minute);
              jQuery('#heurmin').val(heure_min);

              timerID = setTimeout("chrono()", 10)
              }
              function chronoStart(){
              document.chronoForm.startstop.value = "Pause !"
              document.chronoForm.startstop.onclick = chronoStop
              document.chronoForm.reset.onclick = chronoReset
              start = new Date()
              chrono()
              }
              function chronoContinue(){
              document.chronoForm.startstop.value = "Pause !"
              document.chronoForm.startstop.onclick = chronoStop
              document.chronoForm.reset.onclick = chronoReset
              start = new Date()-diff
              start = new Date(start)
              chrono()
              }
              function chronoReset(){
              document.getElementById("chronotime").innerHTML = "0:00:00:000"
              start = new Date()
              }
              function Sauvegarde(){
              document.getElementById("chronotime").innerHTML = "0:00:00:000"
              start = new Date()
              }
              function chronoStopReset(){
              document.getElementById("chronotime").innerHTML = "0:00:00:000"
              document.chronoForm.startstop.onclick = chronoStart
              }
              function chronoStop(){
              document.chronoForm.startstop.value = "Start !"
              document.chronoForm.startstop.onclick = chronoContinue
              document.chronoForm.reset.onclick = chronoStopReset
              clearTimeout(timerID)
              }

              </script>
              <!--
              <script language="JavaScript">
              if
              jQuery('#masque').hide();

              </script>
              -->

              <div id="masque">
              <span id="chronotime">0:00:00:00</span>
              <span id="chronotimeH">00</span>
              <span id="chronotimeM">00</span>
              <span id="chronotimeS">00</span>
              </div>

              <div class="form">
              <form name="chronoForm">
              <label for="heures">Heures :</label> <input type="text" id="heures">
              <label for="minutes">Minutes :</label><input type="text" id="minutes">
              <label for="secondes">Secondes :</label><input type="text" id="secondes">
              <input type="button" class ="btn" name="startstop" value="Début de session" onClick="chronoStart()" />
              <!-- <input type="button" name="reset" value="reset!" onClick="chronoReset()" /> -->
              <!-- <input type="button" class = "btn btn-primary" name="reset" value="Arrêter le compteur!" onClick="Sauvegarde()" /> -->
              </form>
              </div>

              <!-- Super Variables, ici seront mes variables de session -->
              <?php
              $_SESSION['heuretest'] = 'test aaa';


              ?>

              <?php
              echo "<br/><br/><br/>";
              ?>

              <!-- Ce formulaire envoie les donnés dans un PHP qui enregistre dans la table quand on clique sur "FIN DE SESSION"-->
              <div id="cacher">
              <form id="formulaire1" name="form1" method="post" action="http://www.editinfo.com/crm/components/com_crmform/views/projetform/tmpl/chronometre.php">
              <!--
              Récupérer la date du jour
              Récupérer le nom du Téléacteur
              -->

              <input type="text" size="10" class="controls" name="teleacteur" id="teleacteur">
              <input type="text" size="10" class="controls" name="date" id="date">
              <input type="text" size="10" class="controls" name="heurecourante" id="heurecourante">
              <input type="text" size="10" class="controls" name="heure" id="heure">
              <input type="text" size="10" class="controls" name="minute" id="minute">
              <input type="text" size="10" class="controls" name="heurmin" id="heurmin">
              <input type="text" size="10" class="controls" name="heuretest" id="heuretest" value="<?php echo $_SESSION[heuretest]?>">

              <input type="hidden" size="10" class="controls" name="heures" id="heures2">
              <input type="hidden" size="10" class="controls" name="minutes" id="minutes2">
              <input type="hidden" size="10" class="controls" name="secondes" id="secondes2">
              <input id="clickform" class ="btn" type="submit" value=" FIN DE SESSION " />
              </form>
              </div>

              </body>
              </html>

              Commentaire


              • #22
                Re : Créer un module

                je vois le principe mais tu devrais quand même t'appuyer sur l'API joomla.

                Qq références :
                Indispensable
                Standard form field types - Joomla! Documentation ->


                Des pistes :
                J3.x:Creating a simple module/Adding Form Fields - Joomla! Documentation ->


                Creating a custom form field type - Joomla! Documentation ->


                En FR, le bouquin de Marc Studer (garstud), pas donné (sorry garstud) (faut bien que les devs vivent) mais très utile.
                Développez des extensions en PHP pour Joomla! - avec TP et code source en téléchargement


                Conseil : fais attention au code que tu trouves sur internet, ce qu'on y trouve remonte parfois à joomla 1.5 (l'Antiquité !).
                Un message d’erreur sur votre site Joomla ... ayez le reflexe de consulter lla base de connaissance : https://kb.joomla.fr

                Ce forum, vous l'aimez ? il vous a sauvé la vie ? Vous y apprenez chaque jour ? Alors adhérez à l'AFUJ https://www.joomla.fr/association/adherer

                Commentaire


                • #23
                  Re : Créer un module

                  Merci beaucoup,
                  Je débute en développement, comme je t'avais dit, je suis conscient de ne pas avoir pris les bonnes pistes.
                  Je me documente beaucoup.

                  Mon travail est de donner des cours de stratégie et communication visuelle. j'exerce cette activité en profession libérale depuis 1989.

                  Je connais Marc, on s'est rencontrer à propos d'une affaire chez un de mes clients dont je souhaitais lui confier une partie de l'intervention (Que l'on avait d'ailleurs préparée et programmée), mais les développeurs de chez ce clients (Un gros assureur, qui migrait vers Joomla) n'approuvaient pas la décision de cette migration prise par leur direction et avaient mal accepté les cours que je devais donner avec Marc, j'ai donc après les 2 premiers jours de cours, cessé ce projet)
                  Marc m'avait aussi déjà parlé de ses bouquins. (Je donne aussi des cours pour son éditeur (ENI) qui est un de mes clients depuis 1992)

                  Sinon, si je puis me permettre, puis-je te demander ton aide si je bute sur des problèmes?

                  Par exemple, j'ai installé le module, mais dès que je le publie j'ai cette erreur:

                  Warning: require(/home/editinfo/www/crm/modules/mod_crmchrono/tmpl/default.php): failed to open stream: No such file or directory in /home/editinfo/www/crm/modules/mod_crmchrono/mod_crmchrono.php on line 17

                  Fatal error: require(): Failed opening required '/home/editinfo/www/crm/modules/mod_crmchrono/tmpl/default.php' (include_path='.:/usr/local/php5.4/lib/php') in /home/editinfo/www/crm/modules/mod_crmchrono/mod_crmchrono.php on line 17

                  Cordialement.

                  Eric
                  Dernière édition par Agrepe à 03/08/2016, 13h31

                  Commentaire


                  • #24
                    Re : Créer un module

                    Je débute en développement, comme je t'avais dit
                    Rien n'est impossible, mais ca demande beaucoup de temps, entre apprendre et développer proprement dit, et beaucoup d'attention au détail.
                    J'espère que tu en as (du temps).

                    Sinon, si je puis me permettre, puis-je te demander ton aide si je bute sur des problèmes?
                    Pas de souci, mais je ne suis une flèche en PHP.
                    Ton projet est assez ambitieux pour un débutant, surtout quand on aborde les "forms" dans joomla. Du boulot en perspective.

                    Bon courage.
                    Un message d’erreur sur votre site Joomla ... ayez le reflexe de consulter lla base de connaissance : https://kb.joomla.fr

                    Ce forum, vous l'aimez ? il vous a sauvé la vie ? Vous y apprenez chaque jour ? Alors adhérez à l'AFUJ https://www.joomla.fr/association/adherer

                    Commentaire


                    • #25
                      Re : Créer un module

                      Je me suis aidé de Component Creator pour tous mes formulaires, mes tables ... (Pour commencer le travail), puis j'ai mis pas mal de JS dans ce que m'avait propose Component Creator, l'ensemble fonctionne plutôt pas mal.
                      Création de formulaires, interaction entre eux, envoie de mail, éditions PDF...

                      J'y ai donc ajouté du PHP, du JS, du jQuery ...

                      ça marche bien, mais justement, pour moi le fait d'avoir un "VRAI" besoin me permet de mieux comprendre ce que je fais

                      Alors après le composant en tant que tel, je me lance dans les modules.
                      Bon si j'y arrive et si j'apprends, c'est grâce à des gens comme toi, merci beaucoup.

                      Aurais-tu une idée d'ou provient mon message d'erreur.
                      Je me suis servi de la doc JOOMLA pour créer mon premier module (La doc que tu me conseilles justement dans ton précédent post)

                      J'aimerai que mon module affiche cela: http://www.editinfo.com/crm/componen...mpl/chrono.php
                      Dernière édition par Agrepe à 03/08/2016, 14h04

                      Commentaire

                      Annonce

                      Réduire
                      Aucune annonce pour le moment.

                      Partenaire de l'association

                      Réduire

                      Hébergeur Web PlanetHoster
                      Travaille ...
                      X