Le seul traitement de '@' que j'ai trouver dans lang est dans la fonction
load et si je change:
$langs->load('diodm'); en $langs->load('@diodm');
en debut d'un fichier.php, alors les traductions ce font pour ce fichier.
Sinon oui en remplacent globalement les $langs->load('diodm'); en
$langs->load('@diodm'); sa marcheUne chose cependant m'étonne, c'est que les tableaux de clefs soit ré-régénérer à chaque chargement de page. Et pourquoi indiquer le fichier de lang dans dans le fichier modxxxxxxx.php si on ne charge pas se fichier de langue une fois pour toute jusqu'à la prochaine reconstruction du tableau lors de l'activation ou de la désactivation d'un module ? Vous faite du SUPER travail, en plus le source est commenter et clair, un vrai travail de PRO et je m'y connais. Cordialement, Alain Le 17 avril 2010 01:25, Alain Ivars <[email protected]> a écrit : > Je confirme : même avec : > $this->langfiles = array("@diodm"); > le fichier est celui de : /htdocs/langs/fr_FR/diodm.lang > et non celui de : /htdocs/diodm/langs/fr_FR/diodm.lang > demain, je jetterai un oeil pour trouver pourquoi, mais là je ne sais pas > trop ou chercher, peut tu m'indiquer la fonction qui traite cela si tu t'en > souviens ? :-) > > Pour ce qui est de la page de setup du module: > $this->config_page_url = array("diodm_setup_page....@diodm"); > fonctionne Nickel :-) Merci > > > Le 16 avril 2010 20:33, Régis Houssin <[email protected]> a > écrit : > >> >> >> > Merci mais ca marche pas avec ma version 2.9dev d'il y à 2 jours, >> doit-je >> > l'updater ? >> >> Ca fonctionne chez moi >> >> > Pour le fichier /monmodule/admin/setup_page.php cela sera pareil avec >> > $this->config_page_url = array("@monmodule_setup_page.php");? >> >> Non c'est: >> >> $this->config_page_url = 'mymodule....@mymodule'; >> >> Soit nomdufich...@nomdumodule >> >> >> > Le 16 avril 2010 19:18, Régis Houssin <[email protected]> >> a écrit >> > : >> >> Non ceci tu peux le mettre dans le fichier de langue de ton module sous >> >> /htdocs/mymodule/langs/fr_FR/mymodule.lang >> >> >> >> Et dans le fichier de conf du module tu ajoute ceci : >> >> >> >> $this->langfiles = array("@mymodule"); >> >> >> >> L¹arobase détermine que le fichier de langue ³mymodule.lang² est dans >> le >> >> répertoire en question >> >> >> >> >> >> >> >> >> >> >> >> >> >> Le 16/04/10 18:31, « Alain Ivars » <[email protected] >> >> <http://[email protected]> > a écrit : >> >> >> >>> Encore un autre point pour la séparation du système et des module, le >> >>> fichier "admin.lang", je suis obliger d'y ajouter: >> >>> >> >>> ModulexxxName = DI : Ordres de Mission >> >>> ModulexxxDesc = Diagnostic Immobilier : Interface de gestion des >> Ordres de >> >>> missions >> >>> et >> >>> Permissionxxxx = Récupérer le résultat d'un export >> >>> Permissionxxxx = Créer/Modifier un export >> >>> >> >>> Alors que j'ai déja données ces information dans : >> "modXXXXXX.class.php aux >> >>> lignes: >> >>> >> >>> // Module label (no space allowed), used if translation string >> >>> 'ModulexxxName' not found (where xxx is value of numeric property >> 'numero' >> >>> of module) >> >>> $this->name = preg_replace('/^mod/i','',get_class($this)); >> >>> // Module description, used if translation string 'ModulexxxDesc' not >> found >> >>> (where xxx is value of numeric property 'numero' of module) >> >>> $this->description = "(Diagnostic Immobilier) Interface de gestion des >> >>> ordres de mission"; >> >>> >> >>> A première vue c'est en préparation mais pas encore fait, si quelqu'un >> >>> travaille sur la séparation système/modules, il faudra qu'il rajoute >> le >> >>> traitement de ces 2 items. >> >>> >> >>> >> >>> Le 16 avril 2010 17:51, Alain Ivars <[email protected] >> >>> <http://[email protected]> > a écrit : >> >>>> Merci pour tes réponses :-) >> >>>> >> >>>> Le 15 avril 2010 00:39, Laurent Destailleur (eldy) < >> [email protected] >> >>>> <http://[email protected]> > a écrit : >> >>>> >> >>>>> Pour 1,2 3 tu peux créer une page d'admin des délais indépendante en >> >>>>> attendant qu'on mette en place un systeme exploitable par tout >> module. >> >>>>> >> >>>>> Pour 4, cela doit se faire en automatique. Pas besoin d'ajouter ces >> >>>>> lignes. >> >>>>> >> >>>>> Pour 5 et 6, tu peux utiliser ne direct >> >>>>> ($this->global->MAIN_DELAY_DI_ODMS_TO_BILL*24*60*60) dans ton code. >> Les >> >>>>> constantes dans ->warning_xxx ont été ajouté dans le conf pour des >> raisons >> >>>>> historiques mais autant exploité directement ta constante. >> >>>>> >> >>>>> Pour 7,8,9,13 je refléchirais a une solution apres la 2.9. >> >>>>> >> >>>>> Pour 10 et 11, cela ne devrait pas etre nécessaire. La partie >> générique du >> >>>>> code devrait fonctionner >> >>>>> >> >>>>> Pour 12, faut que je modifie pour avoir un else finale générique qui >> >>>>> focntionne pour tout module >> >>>>> >> >>>>> Pour le 14, ce n'est pas nécessaire. tu peux deja ajouter tes >> propres >> >>>>> liens vers ton propre js an mettant la liste des js dans un tableau >> passé >> >>>>> en paramètre de la fonction llx_header. >> >>>>> >> >>>>> >> >>>>> PS: Avec la 2.9, de nombreuses classes dans htdocs sont déplacées >> dans >> >>>>> htocs/xxx, il faudra modifier les includes pour etre compatible avec >> la >> >>>>> future 2.9 >> >>>>> >> >>>>> >> >>>>> Alain Ivars a écrit : >> >>>>>> Salut à tous, >> >>>>>> >> >>>>>> En cour de développement d'un module spécialisé pour les >> Diagnostiqueurs >> >>>>>> Immobilier, j'ai plusieurs points à présenter sur lesquels on devra >> >>>>>> surement faire des aménagements pour permettre une meuilleure >> isolation: >> >>>>>> >> >>>>>> Dans: >> >>>>>> ****** >> >>>>>> 1/ htdocs/admin/delais.php ligne 55: j'ai besoin de rajouter: >> >>>>>> *********************************************************** >> >>>>>> if ($_POST["di_odmsToBill"]) dolibarr_set_const($db, >> >>>>>> >> "MAIN_DELAY_DI_ODMS_TO_BILL",$_POST["di_odmsToBill"],'chaine',0,'',$conf- >> >>>>>> >entity); >> >>>>>> >> >>>>>> Je propose de faire une boucle d'include sur tout les modules et de >> >>>>>> mettre dans un répertoire htdocs/MonModule/system/ un fichier >> nommer >> >>>>>> delais1.php qui contiendra cette ligne et qui sera inclus si trouvé >> par >> >>>>>> la boucle d'include. >> >>>>>> >> >>>>>> 2/ htdocs/admin/delais.php ligne 172: j'ai besoin de rajouter: >> >>>>>> >> ******************************************************************** >> >>>>>> if ($conf->di_odm->enabled) >> >>>>>> { >> >>>>>> $var=!$var; >> >>>>>> print '<tr '.$bc[$var].'>'; >> >>>>>> print '<td width="20px">'.img_object('','propal').'</td>'; >> >>>>>> print >> >>>>>> '<td>'.$langs->trans("di_odmDelaysOfToleranceToBill").'</td><td>'; >> >>>>>> print '<input size="5" name="di_odmsToBill" value="'. >> >>>>>> ($conf->global->MAIN_DELAY_DI_ODMS_TO_BILL+0) . '"> ' . >> >>>>>> $langs->trans("days") . '</td></tr>'; >> >>>>>> } >> >>>>>> Je propose de faire une boucle d'include sur tout les modules et de >> >>>>>> mettre dans un répertoire htdocs/MonModule/system/ un fichier >> nommer >> >>>>>> delais2.php qui contiendra cette ligne et qui sera inclus si trouvé >> par >> >>>>>> la boucle d'include. >> >>>>>> >> >>>>>> 3/ htdocs/admin/delais.php ligne 292: j'ai besoin de rajouter: >> >>>>>> >> ******************************************************************** >> >>>>>> if ($conf->di_odm->enabled) >> >>>>>> { >> >>>>>> $var=!$var; >> >>>>>> print '<tr '.$bc[$var].'>'; >> >>>>>> print '<td width="20px">'.img_object('','service').'</td>'; >> >>>>>> print >> >>>>>> '<td>'.$langs->trans("di_odmDelaysOfToleranceToBill").'</td><td>' . >> >>>>>> ($conf->global->MAIN_DELAY_DI_ODMS_TO_BILL+0) . ' ' . >> >>>>>> $langs->trans("days") . '</td></tr>'; >> >>>>>> } >> >>>>>> Je propose de faire une boucle d'include sur tout les modules et de >> >>>>>> mettre dans un répertoire htdocs/MonModule/system/ un fichier >> nommer >> >>>>>> delais3.php qui contiendra cette ligne et qui sera inclus si trouvé >> par >> >>>>>> la boucle d'include. >> >>>>>> >> >>>>>> 4/ htdocs/core/conf.class.php ligne 273: j'ai besoin de rajouter: >> >>>>>> >> *********************************************************************** >> >>>>>> $this->di_odm->dir_output=DOL_DATA_ROOT."/di_odm"; >> >>>>>> $this->di_odm->dir_temp =DOL_DATA_ROOT."/di_odm/temp"; >> >>>>>> >> >>>>>> Je propose de faire une boucle d'include sur tout les modules et de >> >>>>>> mettre dans un répertoire htdocs/MonModule/system/ un fichier >> nommer >> >>>>>> conf.class1.php qui contiendra cette ligne et qui sera inclus si >> trouvé >> >>>>>> par la boucle d'include. >> >>>>>> >> >>>>>> 5/ htdocs/core/conf.class.php ligne 407: j'ai besoin de rajouter: >> >>>>>> >> *********************************************************************** >> >>>>>> >> >>>>>> >> $this->di_odm->facturation->warning_delay=$this->global->MAIN_DELAY_DI_O >> >>>>>> DMS_TO_BILL*24*60*60; >> >>>>>> >> >>>>>> Je propose de faire une boucle d'include sur tout les modules et de >> >>>>>> mettre dans un répertoire htdocs/MonModule/system/ un fichier >> nommer >> >>>>>> conf.class1.php qui contiendra cette ligne et qui sera inclus si >> trouvé >> >>>>>> par la boucle d'include. >> >>>>>> >> >>>>>> 6/ htdocs/core/conf.class.php ligne 407: j'ai besoin de rajouter: >> >>>>>> >> *********************************************************************** >> >>>>>> >> >>>>>> >> $this->di_odm->facturation->warning_delay=$this->global->MAIN_DELAY_DI_O >> >>>>>> DMS_TO_BILL*24*60*60; >> >>>>>> >> >>>>>> Je propose de faire une boucle d'include sur tout les modules et de >> >>>>>> mettre dans un répertoire htdocs/MonModule/system/ un fichier >> nommer >> >>>>>> conf.class2.php qui contiendra cette ligne et qui sera inclus si >> trouvé >> >>>>>> par la boucle d'include. >> >>>>>> >> >>>>>> 7/ htdocs/product/stats/fiche.php ligne 164: j'ai besoin de >> rajouter: >> >>>>>> >> ************************************************************************* >> >>>>>> ** >> >>>>>> 'di_odm' >> =>array('modulepart'=>'di_odmproductstats', >> >>>>>> 'file' => $product->id.'/di_odm12m.png', >> >>>>>> 'label' => >> >>>>>> >> ($mode=='byunit'?$langs->trans("di_odmNumberOfUnits"):$langs->trans("di_o >> >>>>>> dmNumberOf"))), >> >>>>>> >> >>>>>> Je propose de faire une boucle d'include sur tout les modules et de >> >>>>>> mettre dans un répertoire htdocs/MonModule/system/ un fichier >> nommer >> >>>>>> fiche1.php qui contiendra cette ligne et qui sera inclus si trouvé >> par la >> >>>>>> boucle d'include. >> >>>>>> >> >>>>>> 8/ htdocs/product/stats/fiche.php ligne 188: j'ai besoin de >> rajouter: >> >>>>>> >> ************************************************************************* >> >>>>>> ** >> >>>>>> if ($key == 'di_odm') $graph_data = >> >>>>>> $product->get_nb_di_odm($socid,$mode); >> >>>>>> >> >>>>>> Je propose de faire une boucle d'include sur tout les modules et de >> >>>>>> mettre dans un répertoire htdocs/MonModule/system/ un fichier >> nommer >> >>>>>> fiche2.php qui contiendra cette ligne et qui sera inclus si trouvé >> par la >> >>>>>> boucle d'include. >> >>>>>> >> >>>>>> 9/ htdocs/product/stats/fiche.php ligne 222: j'ai besoin de >> rajouter: >> >>>>>> >> ************************************************************************* >> >>>>>> ** >> >>>>>> if ($graphfiles == 'di_odm' && ! >> $user->right->di_odm->lire) >> >>>>>> continue; >> >>>>>> >> >>>>>> Je propose de faire une boucle d'include sur tout les modules et de >> >>>>>> mettre dans un répertoire htdocs/MonModule/system/ un fichier >> nommer >> >>>>>> fiche3.php qui contiendra cette ligne et qui sera inclus si trouvé >> par la >> >>>>>> boucle d'include. >> >>>>>> >> >>>>>> 10/ htdocs/commonObject.php ligne 805: j'ai besoin de rajouter: >> >>>>>> >> ************************************************************************* >> >>>>>> 805: if ($this->element == 'di_odm') $fieldtva='total_tva'; >> >>>>>> >> >>>>>> Je propose de faire une boucle d'include sur tout les modules et de >> >>>>>> mettre dans un répertoire htdocs/MonModule/system/ un fichier >> nommer >> >>>>>> commonObject1.php qui contiendra cette ligne et qui sera inclus si >> trouvé >> >>>>>> par la boucle d'include. >> >>>>>> >> >>>>>> 11/ htdocs/document.php ligne 805: j'ai besoin de rajouter: >> >>>>>> >> ************************************************************************* >> >>>>>> // Wrapping pour les di_odm >> >>>>>> if ($modulepart == 'di_odm') >> >>>>>> { >> >>>>>> $user->getrights('di_odm'); >> >>>>>> if ($user->rights->di_odm->lire || >> >>>>>> preg_match('/^specimen/i',$original_file)) >> >>>>>> { >> >>>>>> $accessallowed=1; >> >>>>>> } >> >>>>>> >> $original_file=$conf->di_odm->dir_output.'/'.$original_file; >> >>>>>> $sqlprotectagainstexternals = "SELECT fk_soc as fk_soc FROM >> >>>>>> ".MAIN_DB_PREFIX."di_ordremission WHERE ref='$refname'"; >> >>>>>> } >> >>>>>> >> >>>>>> Je propose de faire une boucle d'include sur tout les modules et de >> >>>>>> mettre dans un répertoire htdocs/MonModule/system/ un fichier >> nommer >> >>>>>> commonObject1.php qui contiendra cette ligne et qui sera inclus si >> trouvé >> >>>>>> par la boucle d'include. >> >>>>>> >> >>>>>> 12/ htdocs/html.formfile.class.php ligne 282: j'ai besoin de >> rajouter: >> >>>>>> >> ********************************************************************** >> >>>>>> else if ($modulepart == 'di_odm') >> >>>>>> { >> >>>>>> if (is_array($genallowed)) $modellist=$genallowed; >> >>>>>> else >> >>>>>> { >> >>>>>> >> >>>>>> >> include_once(DOL_DOCUMENT_ROOT.'/includes/modules/di_odm/di_odm_ModelePD >> >>>>>> F.php'); >> >>>>>> $model=new di_odm_ModelePDF(); >> >>>>>> $modellist=$model->liste_modeles($this->db); >> >>>>>> } >> >>>>>> } >> >>>>>> >> >>>>>> Je propose de faire une boucle d'include sur tout les modules et de >> >>>>>> mettre dans un répertoire htdocs/MonModule/system/ un fichier >> nommer >> >>>>>> html.formfile.class1.php qui contiendra cette ligne et qui sera >> inclus >> >>>>>> si trouvé par la boucle d'include. >> >>>>>> >> >>>>>> >> >>>>>> 13/ htdocs/index.php ligne j'ai besoin de rajouter: >> >>>>>> ******************************************************** >> >>>>>> 128: ! empty($conf->di_odm->enabled) && >> $user->rights->di_odm->lire >> >>>>>> 142: DOL_DOCUMENT_ROOT."/di_odm/di_odm.class.php" >> >>>>>> 156: 'di_odm_model' >> >>>>>> 198: "di_odmTitreMenu" >> >>>>>> 212: DOL_URL_ROOT.'/di_odm/di_odm.php?mainmenu=commercial' >> >>>>>> 226: "di_odm" >> >>>>>> 568 à 617: >> >>>>>> // Nbre di_odm ouvertes (expirees) >> >>>>>> if ($conf->di_odm->enabled && $user->rights->di_odm->lire) >> >>>>>> { >> >>>>>> $langs->load("di_odm"); >> >>>>>> include_once(DOL_DOCUMENT_ROOT."/di_odm/di_odm.class.php"); >> >>>>>> $board=new di_odm_model($db); >> >>>>>> $board->load_board($user,"opened"); >> >>>>>> $var=!$var; >> >>>>>> print '<tr '.$bc[$var].'><td >> >>>>>> >> width="16">'.img_object($langs->trans("di_odmsToClose"),"propal").'</td>< >> >>>>>> td>'.$langs->trans("di_odmsToClose").'</td>'; >> >>>>>> print '<td align="right"><a >> >>>>>> >> href="'.DOL_URL_ROOT.'/di_odm/di_odm_view.php?viewstatut=1">'.$board->nbt >> >>>>>> odo.'</a></td>'; >> >>>>>> print '<td align="right">'; >> >>>>>> print '<a >> >>>>>> href="'.DOL_URL_ROOT.'/di_odm/di_odm_view.php?viewstatut=1">'; >> >>>>>> print $board->nbtodolate; >> >>>>>> print '</a></td><td nowrap align="right">'; >> >>>>>> print ' >> (>'.ceil($conf->di_odm->cloture->warning_delay/60/60/24).' >> >>>>>> '.$langs->trans("days").')'; >> >>>>>> print '</td>'; >> >>>>>> print '<td>'; >> >>>>>> if ($board->nbtodolate > 0) { print >> >>>>>> >> img_picto($langs->trans("NActionsLate",$board->nbtodolate),"warning"); >> >>>>>> $nboflate+=$board->nbtodolate; } >> >>>>>> else print ' '; >> >>>>>> print '</td>'; >> >>>>>> print '</tr>'; >> >>>>>> } >> >>>>>> // Nbre di_odm fermees signees (a facturer) >> >>>>>> if ($conf->di_odm->enabled && $user->rights->di_odm->lire) >> >>>>>> { >> >>>>>> $langs->load("di_odm"); >> >>>>>> include_once(DOL_DOCUMENT_ROOT."/di_odm/di_odm.class.php"); >> >>>>>> $board=new di_odm_model($db); >> >>>>>> $board->load_board($user,"signed"); >> >>>>>> $var=!$var; >> >>>>>> print '<tr '.$bc[$var].'><td >> >>>>>> >> width="16">'.img_object($langs->trans("di_odmToBill"),"propal").'</td><td >> >>>>>> >'.$langs->trans("di_odmToBill").'</td>'; >> >>>>>> print '<td align="right"><a >> >>>>>> >> href="'.DOL_URL_ROOT.'/comm/propal.php?viewstatut=2">'.$board->nbtodo.'</ >> >>>>>> a></td>'; >> >>>>>> print '<td align="right">'; >> >>>>>> print '<a >> >>>>>> href="'.DOL_URL_ROOT.'/di_odm/di_odm_view.php?viewstatut=2">'; >> >>>>>> print $board->nbtodolate; >> >>>>>> print '</a></td><td nowrap align="right">'; >> >>>>>> print ' >> >>>>>> (>'.ceil($conf->di_odm->facturation->warning_delay/60/60/24).' >> >>>>>> '.$langs->trans("days").')'; >> >>>>>> print '</td>'; >> >>>>>> print '<td>'; >> >>>>>> if ($board->nbtodolate > 0) { print >> >>>>>> >> img_picto($langs->trans("NActionsLate",$board->nbtodolate),"warning"); >> >>>>>> $nboflate+=$board->nbtodolate; } >> >>>>>> else print ' '; >> >>>>>> print '</td>'; >> >>>>>> print '</tr>'; >> >>>>>> print "\n"; >> >>>>>> } >> >>>>>> >> >>>>>> La je ne sais pas quoi proposer >> >>>>>> >> >>>>>> 14/ htdocs/main.inc.php lj'ai besoin de rajouter: >> >>>>>> ****************************************************** >> >>>>>> print '<script type="text/javascript" >> >>>>>> src="'.DOL_URL_ROOT.'/di_odm/js/jquery-1.4.2.js"></script>'."\n"; >> //TODO: >> >>>>>> Needed for di_odm >> >>>>>> print '<script type="text/javascript" >> >>>>>> >> src="'.DOL_URL_ROOT.'/di_odm/js/jquery-ui-1.8.custom.min.js"></script>'." >> >>>>>> \n"; //TODO: Needed for di_odm >> >>>>>> print '<script type="text/javascript" >> >>>>>> src="'.DOL_URL_ROOT.'/di_odm/js/imbc.js"></script>'."\n"; //TODO: >> Needed >> >>>>>> for di_odm >> >>>>>> >> >>>>>> Pour ce point la c'est assez simple : jquery sera peut etre >> rajouter à >> >>>>>> Dolibarr, mais il faut quand même une possibilité de rajouter au >> moins un >> >>>>>> .js par module, peut-etre comme le .css dans le fichier >> modMonModule.php >> >>>>>> >> >>>>>> Y a t'il des solutions qui existe déjà dans la 2.8 ou la 2.9 car je >> suis >> >>>>>> en 2.7.1 en ce moment ? >> >>>>>> Mon module est-il le seul à avoir ce type de besoin ? >> >>>>>> >> >> -- >> Régis Houssin >> ------------------------------------------------------ >> Cap-Networks >> 30, Quai de Verdun >> 71700 Tournus >> Tél. +33 6 33 02 07 97 >> Web: http://www.cap-networks.com >> Email: [email protected] >> >> Développeur Dolibarr : [email protected] >> Portail francophone : www.dolibarr.fr >> Offres SaaS de Dolibarr : www.dolibox.fr >> Development platform : www.dolibarr.pro >> ------------------------------------------------------ >> >> _______________________________________________ >> Dolibarr-dev mailing list >> [email protected] >> http://lists.nongnu.org/mailman/listinfo/dolibarr-dev >> >> > > > -- > Alain IVARS > Groupement Diagnostiqueurs Immobilier Indépendants (www.GDII.fr) > Tel: 09 53 23 01 91 Mobile: 06 79 00 77 95 > Innovativ Method Business Concept (www.IMBC.fr) > Tel: 09 53 23 01 91 Mobile: 06 79 00 77 95 > Société Diagnostic Immobilier pour les Particuliers les Professionnels et > les Administrations (www.DIPPA.fr) > Tel: 09 53 23 01 91 Mobile: 06 79 00 77 95 > > -- Alain IVARS Groupement Diagnostiqueurs Immobilier Indépendants (www.GDII.fr) Tel: 09 53 23 01 91 Mobile: 06 79 00 77 95 Innovativ Method Business Concept (www.IMBC.fr) Tel: 09 53 23 01 91 Mobile: 06 79 00 77 95 Société Diagnostic Immobilier pour les Particuliers les Professionnels et les Administrations (www.DIPPA.fr) Tel: 09 53 23 01 91 Mobile: 06 79 00 77 95
_______________________________________________ Dolibarr-dev mailing list [email protected] http://lists.nongnu.org/mailman/listinfo/dolibarr-dev
