Fork me on GitHub


 Bas   Précédent   Suivant

« 1 2 (3) 4 »


Re: Le module FAQ a disparu ?
Aspirant
Inscrit: 28/11/2021 22:07
Messages: 34
BOnjour Christelle,
Non, j'ai omis le 0 final, je suis sur 2.5.10

Avant, la partie module de Xoops FR était beaucoup plus étoffée, il me semble.
Ou est ce que je peux trouver les modules de traduction Français ?

Posté le : 21/02 14:09
Transférer la contribution vers d'autres applications Transférer


Le module FAQ a disparu ?
Aspirant
Inscrit: 28/11/2021 22:07
Messages: 34
Bonjour à tous,
J'ai le souvenir que dans les temps anciens, il y avait un module FAQ, à la fois simple et efficace.

Je suis maintenant avec une version 2.5.1 de Xoops et je ne le retrouve plus.
A-t-il été remplacé/renommé ?
Faut-il retrouver l'archive du vieux et prier pour qu'il soit encore compatible ?

[EDIT] J'ai parlé un peu vite ,je l'ai retrouvé.
https://github.com/XoopsModules25x/xoopsfaq
Du coup, il faut que je trouve aussi le pack langue FR associé

Cordialement

Posté le : 21/02 11:57
Transférer la contribution vers d'autres applications Transférer


Re: XoopsFormTextDateSelect pouvoir mettre null / empty
Aspirant
Inscrit: 28/11/2021 22:07
Messages: 34
C'est bon, j'ai récupéré FormDateTimePicker du module xoopspoll
J'ai un peu adapté pour qu'on puisse mettre Date seule ou date/Heure
class FormDateTimePicker extends XoopsFormText
{
    
/**
     * Contains the maximum field size
     */
    
public const MAXSIZE 25;
    protected 
$showTime;

    
/**
     * Constructor to build FormDateTimePicker object
     * @param mixed $caption HTML description to display for the element
     * @param mixed $name    HTML element name (ie. name='$name')
     * @param mixed $size    size of field to display
     * @param mixed $value   timestamp of date/time to show
     */
    
public function __construct($caption$name$size$value$showTime=true)
    {
        
$value = (!is_numeric($value) || (=== (int)$value)) ? null : (int)$value;
        
$size  = (int)$size;
        
$size  = ($size && $size <= self::MAXSIZE) ? $size self::MAXSIZE;
        
$this->$showTime $showTime;
        
parent::__construct($caption$name$sizeself::MAXSIZE$value);
    }

    
/**
     * Generate the HTML <input> to display the date/time field
     * @return string HTML code used to display in a form
     */
    
public function render()
    {
        static 
$included false;

        
$ele_name  $this->getName();
        
$ele_value $this->getValue(true);
        
//if (is_string($ele_value)) {
        
if (!is_numeric($ele_value)) {
            
$display_value $ele_value;
            
$ele_value     time();
        } else if (
$ele_value>0) {
            
//$display_value = '';
            //$display_value = formatTimestamp($ele_value, 'm');
            
if ($this->$showTime)
                
$display_value ucfirst(date("d-m-Y H:i"$ele_value)); // _MEDIUMDATESTRING = d-m-Y H:i
            
else
                
$display_value ucfirst(date("d-m-Y"$ele_value)); // _MEDIUMDATESTRING = d-m-Y H:i
        
}

        if (
is_object($GLOBALS['xoTheme'])) {
            
$moduleHandler xoops_getHandler('module');
            
$sys_module    $moduleHandler->getByDirname('system');
            
$configHandler xoops_getHandler('config');
            
$moduleConfig  $configHandler->getConfigsByCat(0$sys_module->getVar('mid'));
            
$jq_theme_dir  $moduleConfig['jquery_theme'];

            
$GLOBALS['xoTheme']->addStylesheet($GLOBALS['xoops']->url("modules/system/css/ui/{$jq_theme_dir}/ui.all.css"));
            
$GLOBALS['xoTheme']->addScript('browse.php?Frameworks/jquery/jquery.js');
            
$GLOBALS['xoTheme']->addScript('browse.php?Frameworks/jquery/plugins/jquery.ui.js');
            
$GLOBALS['xoTheme']->addScript('browse.php?modules/comin/assets/js/jquery-ui-timepicker-addon.js');
            
$GLOBALS['xoTheme']->addScript('browse.php?modules/comin/assets/js/jquery-ui-sliderAccess.js');
            
$GLOBALS['xoTheme']->addStylesheet($GLOBALS['xoops']->url('modules/comin/css/datetimepicker.css'));

            if (!
$included) {
                
$included true;
                
xoops_loadLanguage('admin''Comin');
                
// setup regional date variables
                
$reg_values "closeText: '"._AM_COMIN_DTP_CLOSETEXT."',"
                    
."prevText: '"._AM_COMIN_DTP_PREVTEXT."',"
                    
."nextText: '"._AM_COMIN_DTP_NEXTTEXT."',"
                    
."currentText: '"._AM_COMIN_DTP_CURRENTTEXT."',"
                    
.'monthNames: ['._AM_COMIN_DTP_MONTHNAMES.'],'
                    
.'monthNamesShort: ['._AM_COMIN_DTP_MONTHNAMESSHORT.'],'
                    
.'dayNames: ['._AM_COMIN_DTP_DAYNAMES.'],'
                    
.'dayNamesShort: ['._AM_COMIN_DTP_DAYNAMESSHORT.'],'
                    
.'dayNamesMin: ['._AM_COMIN_DTP_DAYNAMESMIN.'],'
                    
."weekHeader: '"._AM_COMIN_DTP_WEEKHEADER."',"
                    
."dateFormat: '"._AM_COMIN_DTP_DATEFORMAT."',"
                    
."firstDay: '"._AM_COMIN_DTP_FIRSTDAY."',"
                    
."isRTL: "._AM_COMIN_DTP_ISRTL.","
                    
."showTimepicker: ".(($this->$showTime)?"true":"false")."," // 
                    
."showMonthAfterYear: "._AM_COMIN_DTP_SHOWMONTHAFTERYEAR.","
                    
."yearSuffix: '"._AM_COMIN_DTP_YEARSUFFIX."',";
                
// set regional time variables
                
$reg_values .= "timeOnlyTitle: '"._AM_COMIN_DTP_TIMEONLYTITLE."',"
                    
."timeText: '"._AM_COMIN_DTP_TIMETEXT."',"
                    
."hourText: '"._AM_COMIN_DTP_HOURTEXT."',"
                    
."minuteText: '"._AM_COMIN_DTP_MINUTETEXT."',"
                    
."secondText: '"._AM_COMIN_DTP_SECONDTEXT."',"
                    
."millisecText: '"._AM_COMIN_DTP_MILLISECTEXT."',"
                    
."timeFormat: '"._AM_COMIN_DTP_TIMEFORMAT."',"
                    
.'ampm: false,'.'stepMinute: 5';
                
$GLOBALS['xoTheme']->addScript('','','$(function() {$( ".datetimepicker" ).datetimepicker({'.$reg_values.'});});');
            }
        }

        return 
"<input type='text' name='{$ele_name}' id='{$ele_name}' class='datetimepicker' size='".$this->getSize()."' maxlength='".$this->getMaxlength()."' 
            value='
{$display_value}'".$this->getExtra().'>';
    }
}

Posté le : 17/02 14:57
Transférer la contribution vers d'autres applications Transférer


Re: XoopsFormTextDateSelect pouvoir mettre null / empty
Aspirant
Inscrit: 28/11/2021 22:07
Messages: 34
Bonjour,

Merci pour vos réponses rapide.
En effet, ça me va très bien d'utiliser 0.
Le souci, c'est que le contrôle XoopsFormTextDateSelect remplace vide ou 0 par time() qu'il pleuve qu'il vente, qu'il neige.
Alors en JS, pas facile à intercepter.

Posté le : 17/02 12:33
Transférer la contribution vers d'autres applications Transférer


Re: XoopsFormTextDateSelect pouvoir mettre null / empty
Aspirant
Inscrit: 28/11/2021 22:07
Messages: 34
Bonjour,

BIen pensé, en effet.
C'est chose faite, mais du coup, ce ne sera prit en compte (ou pas) que dans la prochaine version de Xoops.
Il me faut une méthode de contournement pour mon cas.

Posté le : 17/02 12:19
Transférer la contribution vers d'autres applications Transférer


XoopsFormTextDateSelect pouvoir mettre null / empty
Aspirant
Inscrit: 28/11/2021 22:07
Messages: 34
Bonjour à tous,

J'ai un champ date géré en timestamp (int)
Il peut être nullable car la date est optionnelle.
Seulement, le composant XoopsFormTextDateSelect ne gère pas l'état vide/null

C'est un "manqué" de Xoops, de ce que je lis et déduit.

DU coup, je pense qu'il faut que gère ça indépendamment.

Faut-il que je prenne un truc PHP bricolé, ou est ce qu'il y a des chose de Xoops qu'on peut utiliser ?
J'ai vu par exemple qu'il y a le fichier "calendar.js" dans Xoops/Include" par exemple.

Posté le : 17/02 11:21
Transférer la contribution vers d'autres applications Transférer


Re: Mémoriser un tri (passé en GET) pour faire le DESC ensuite
Aspirant
Inscrit: 28/11/2021 22:07
Messages: 34
Bonjour,

Bon, finalement je me suis appuyé sur la session, ça me semble le plus simple.
$tri "";
$sens = (($order>0) && ($_SESSION['pOrder']==$order))? "Desc":"Asc"// 2 fois la même demande
if ($order>0$_SESSION['pOrder']=$order;
if (
$sens=="Desc"$_SESSION['pOrder']=0;

if (
$order==1) { $tri "eid ".$sens.", "; }
else if (
$order==2) { $tri "name ".$sens.", "; }
else if (
$order==3) { $tri "dateDebut ".$sens.", "; }
else if (
$order==4) { $tri "dateFin ".$sens.", "; }
else if (
$order==5) { $tri "estActif ".$sens.", "; }

$criteria->setSort($tri.'name');



Merci pour la réponse

Posté le : 10/02 19:22
Transférer la contribution vers d'autres applications Transférer


Mémoriser un tri (passé en GET) pour faire le DESC ensuite
Aspirant
Inscrit: 28/11/2021 22:07
Messages: 34
Bonjour,

Sur un template, J'ai une liste d'éléments, et sur mes entêtes, je peux faire un tri via une balise A (<a href="?o=2"><{$lang_name}></a>).

Ca marche bien, mais j'aimerais sauvegarder ce clic de manière ponctuelle dans le cas ou il reclique, afin de faire le tri inverse.

Les $_SESSION est trop persistant.
Je pensais mettre une balise hidden, mais ce n'est pas un formulaire, ça ne va pas. Tout est en Get.

$order Request::getInt('o'0);
$tri "";
if (
$order==1) { $tri "eid, "; }
else if (
$order==3) { $tri "dateDebut, "; }
else if (
$order==4) { $tri "dateFin, "; }
$criteria->setSort($tri.'name');



Posté le : 09/02 11:02
Transférer la contribution vers d'autres applications Transférer


Re: Faire un Join avec XoopsObject
Aspirant
Inscrit: 28/11/2021 22:07
Messages: 34
Bonjour JJDai et montuy,

Merci pour vos retours, désolé du temps de réponse, je m'attendais à être notifié par mail mais je ne l'ai pas été.
(je viens d'aller éditer le moyen de notif dans mon profil)

En effet, je me suis tourné vers la solution du mappage d'objects (ajouter des clés dans le foreach de mon objet de base).

En effet, pour la requête dédiée, il faut faire un objet dédié j'imagine (ou ajouter des propriétés de l'autre table dans l'objet de base, qui ne seront pas toujours renseignées si on passe par le GetAll()).

Posté le : 09/02 10:39
Transférer la contribution vers d'autres applications Transférer


Faire un Join avec XoopsObject
Aspirant
Inscrit: 28/11/2021 22:07
Messages: 34
Bonjour,

J'ai une table éléments et ils ont un statut, dont le libellé est dans une autre table.
Je voudrais lister ces éléments et afficher le libellé du status sans avoir à faire une requête $stts->get($idStt); à chaque boucle du foreach (car ça fait une requête à chaque fois).

Le plus simple je pense est de faire un Join dans ma classe Element afin de l'avoir directement dans ma requête ->getAll()
Mais je ne sais pas comment faire.


Posté le : 05/01 11:52
Transférer la contribution vers d'autres applications Transférer



 Haut
« 1 2 (3) 4 »




Propulsé avec XOOPS | Graphisme adapté par Tatane, Grosdunord, Montuy337513

31 Personne(s) en ligne (20 Personne(s) connectée(s) sur Forum) | Utilisateur(s): 0 | Invité(s): 31 | Plus ...