Besoin d'aide pour du php

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

  • [RÉGLÉ] Besoin d'aide pour du php

    Bonjour,

    En cours de traduction de HelixUltimate, 95% sont traduit, mais j'ai quelques chaines qui résistent.

    Quelque-unes parce qu'il manque la constante dans le fichier ini, et certaines parce que la traduction n'est pas prévue ans le php, malgré la présence d'une constante qui va bien.

    Et, le php n'étant pas le langage que je maitrise, mes essais se heurtent à des erreurs.

    Voici, à titre d'exemple, le source d'un php (enfin un bout) :
    Code:
    use Joomla\CMS\Language\Text;
    
       public function getInput()
        {
            $output = '<div class="hu-image-holder">';
    
            if (!empty($this->value))
            {
                $output .= '<img src="' . Uri::root() . $this->value . '" alt="">';
            }
    
            $output .= '</div>';
    
            $output .= '<input type="hidden" name="' . $this->name . '" id="' . $this->id . '" value="' . $this->value . '">';
            $output .= '<a href="#" class="hu-media-picker hu-btn hu-btn-primary hu-mr-2" data-id="' . $this->id . '"><span class="fas fa-image" aria-hidden="true"></span> Select</a>';
            $output .= '<a href="#" class="hu-media-clear hu-btn hu-btn-secondary' . (empty($this->value) ? ' hide' : '') . '"><span class="fas fa-times" aria-hidden="true"></span> Clear</a>';
    
            return $output;
        }​
    Voici mes modifications:
    Code:
        public function getInput()
        {
            $output = '<div class="hu-image-holder">';
    
            if (!empty($this->value))
            {
                $output .= '<img src="' . Uri::root() . $this->value . '" alt="">';
            }
    
                    $clear  = Text::_('HELIX_ULTIMATE_CLEAR');
                    $select = Text::_('HELIX_ULTIMATE_SELECT');
    
            $output .= '</div>';
    
            $output .= '<input type="hidden" name="' . $this->name . '" id="' . $this->id . '" value="' . $this->value . '">';
            $output .= '<a href="#" class="hu-media-picker hu-btn hu-btn-primary hu-mr-2" data-id="' . $this->id . '"><span class="fas fa-image" aria-hidden="true"></span> . Text::_('HELIX_ULTIMATE_SELECT') .'</a>';
            $output .= '<a href="#" class="hu-media-clear hu-btn hu-btn-secondary' . (empty($this->value) ? ' hide' : '') . '"><span class="fas fa-times" aria-hidden="true"></span> . Text::_('HELIX_ULTIMATE_CLEAR') .'</a>';
    
            return $output;
        }​
    Si je remplace les fonctions Text:: par les variables dans $output, les boutons affichent $select ou $clear, mais pas le contenu des variables.
    Si je laisse les appels Text:: dans $output, j'ai l'erreur suivante :
    Code:
    Une erreur est survenue
    
        0 syntax error, unexpected identifier "HELIX_ULTIMATE_SELECT"​
    Je me demande s'il ne faudrait pas une librairie supplémentaire du style Joomla\CMS\Language\Language or Joomla\CMS\Language\LanguageHelper

    Merci
    A+
    Dernière édition par JujuLand à 03/12/2023, 19h06

  • #2
    Bon, en gratant du coté d'autres php, j'ai trouvé les librairies à appeler et corrigé une erreur dans les lignes concernées :
    Les librairies à ajouter :
    Code:
    use Joomla\CMS\Language\Text;
    use Joomla\CMS\HTML\HTMLHelper;​
    et l'erreur était là (présente sur les deux lignes):
    • manquait la simple quote après </span>
    Code:
    </span> ' . Text::_('HELIX_ULTIMATE_SELECT') .'</a>';
    au lieu de ça:
    </span> . Text::_('HELIX_ULTIMATE_SELECT') .'</a>';
    A+
    Dernière édition par JujuLand à 04/12/2023, 23h33

    Commentaire

    Annonce

    Réduire
    Aucune annonce pour le moment.

    Partenaire de l'association

    Réduire

    Hébergeur Web PlanetHoster
    Travaille ...
    X