Problème de traduction dans un composant d'elearning

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

  • [RÉGLÉ] Problème de traduction dans un composant d'elearning

    Cliquez sur l'image pour l'afficher en taille normale  Nom : success1.jpg* Affichages : 3* Taille : 82,3 Ko* ID : 1998245 Bonjour,

    Je rencontre un problème qui est un point de détail, mais quand les clients sont pointilleux...

    Pour s'inscrire à un cours, il faut cliquer sur un bouton, et il y a un message de succès qui s'affiche.
    Voir PJ.
    Or, impossible de trouver comment traduire le titre du message "Success" !
    Le texte du message correspond à la chaîne de valeur COM_TJLMS_COURSE_ENROLL_SUCCESS_USERS_SELF

    On trouve cette chaîne de valeur dans un seul fichier du composant, le fichier enrolment.php (qui fait partie des controllers), que je vous mets ici dans sa dernière partie :

    Code PHP:

    if ($success)
    {
    if (
    $selfEnrl == 1)
    {
    $msg JText::_('COM_TJLMS_COURSE_ENROLL_SUCCESS_USERS_SE LF');
    $type 'success';
    $app->enqueueMessage($msg$type);
    $success--;
    }

    if (
    $success >= 1)
    {
    $msg JText::sprintf('COM_TJLMS_COURSE_ENROLL_SUCCESS'$success);
    $type 'success';
    $app->enqueueMessage($msg$type);
    }
    }

    if (
    $failed)
    {
    $msg JText::sprintf('COM_TJLMS_COURSE_ENROLL_FAILED'$failed);
    $type 'error';
    $app->enqueueMessage($msg$type);
    }

    $this->setRedirect($flink);
    }

    /**
    * common function to drive enrollment and assignment
    *
    * @return void
    *
    * since 1.1
    */
    public function enrollAssignWrapper()
    {
    $app JFactory::getApplication();
    $input JFactory::getApplication()->input;
    $post $input->post;

    $dueDate $post->get('due_date''''DATE');

    if (
    $dueDate)
    {
    $this->assignUser();
    }
    else
    {
    $this->enrolUser();
    }
    }

    Voyez-vous où peut se cacher ce terme, que je voudrais traduire en français "Succès" ? non pas le texte de la 2e ligne, mais bien ce mot "Success".
    Est-ce qu'il faut aller chercher dans un fichier .js, ou autre chose, ou dans la base de données ?
    Si quelqu'un peut m'éclairer à partir de ces éléments...
    Merci à l'avance.
    Dernière édition par marie13600 à 27/03/2019, 15h28

  • #2
    Bonjour,

    Si le composant est correctement fait pour Joomla!, il utilise des fichiers de langue "ini" et doit donc supporter la substitution (Extensions->Langues->Substitutions") qui permet de donner une traduction différente de celle de l'auteur pour cette chaîne.
    "Patience et longueur de temps font plus que force ni que rage..." (La Fontaine : Le Lion et le Rat) - "Il n'y a pas de problèmes; il n'y a que des solutions" (André Gide).
    MoovJla et LazyDbBackup sur www.joomxtensions.com - FaQ sur www.fontanil.info - Site pro : www.robertg-conseil.fr chez PHPNET, sites perso chez PlanetHoster + sites gérés chez PHPNET, PlanetHoster, Ionos et OVH

    Commentaire


    • #3
      Oui, ça devrait marcher comme ça.
      Malheureusement, ce n'est pas le cas.

      On voit la chaîne de valeur dans le bas du fichier :
      if ($selfEnrl == 1)
      {

      $msg = JText::_('COM_TJLMS_COURSE_ENROLL_SUCCESS_USERS_SELF');
      $type = 'success';
      $app->enqueueMessage($msg, $type);
      $success--;
      }
      Mais à propos du titre "Success" ?

      Commentaire


      • #4
        Tu veux dire que tu ne trouves pas COM_TJLMS_COURSE_ENROLL_SUCCESS_USERS_SELF dans la substitution de langue ou qu'une fois substitué par ton texte, celui-ci est ignoré ?
        "Patience et longueur de temps font plus que force ni que rage..." (La Fontaine : Le Lion et le Rat) - "Il n'y a pas de problèmes; il n'y a que des solutions" (André Gide).
        MoovJla et LazyDbBackup sur www.joomxtensions.com - FaQ sur www.fontanil.info - Site pro : www.robertg-conseil.fr chez PHPNET, sites perso chez PlanetHoster + sites gérés chez PHPNET, PlanetHoster, Ionos et OVH

        Commentaire


        • #5
          Je veux dire que cette chaîne de caractères ne permet de traduire que : "Vous êtes inscrit au cours avec succès", pas le titre "Success" qui, lui, est codé en <h2>

          Commentaire


          • #6
            En effet, désolé, j'avais mal lu le code.
            En fait, le "type" est à la fois le titre et l'apparence de la barre.
            Je ne vois pas comment faire autrement que remplacer dans le code par "message" pour avoir un affichage standard, comme après un envoi de formulaire de contact. Il n'y a pas de référence à "success" comme type dans cette page https://docs.joomla.org/Display_erro...and_notices/fr et je ne me souviens pas avoir vu en standard dans Joomla! de barre d'info utilisant "success" comme type de message.
            Essaie quand même d'ajouter dans la substitution de langue (site et administration) la ligne :
            SUCCESS="Succès"
            "Patience et longueur de temps font plus que force ni que rage..." (La Fontaine : Le Lion et le Rat) - "Il n'y a pas de problèmes; il n'y a que des solutions" (André Gide).
            MoovJla et LazyDbBackup sur www.joomxtensions.com - FaQ sur www.fontanil.info - Site pro : www.robertg-conseil.fr chez PHPNET, sites perso chez PlanetHoster + sites gérés chez PHPNET, PlanetHoster, Ionos et OVH

            Commentaire


            • #7
              Super, merci !
              Les 2 solutions que tu proposes marchent !
              Jamais je n'aurais pensé à ajouter la ligne :
              SUCCESS="Succès"
              dans le fichier .ini (partie site) (car elle n'est pas présente dans le fichier GB.ini)
              Ça fait 2 semaines que je m'escrime là-dessus. Bien contente d'avoir la réponse !
              Dernière édition par marie13600 à 28/03/2019, 08h37

              Commentaire

              Annonce

              Réduire
              Aucune annonce pour le moment.

              Partenaire de l'association

              Réduire

              Hébergeur Web PlanetHoster
              Travaille ...
              X