Lenguaje y Normas de Desarrollo: Difference between revisions

Line 84: Line 84:
* las funciones NOW ó SYSDATE están prohibidas en las órdenes de SQL. Si se necesita indicar la fecha del momento en un campo, el valor debe provenir de PHP y no del motor de la base de datos. Esto además de ofrecer una mejor portabilidad del código, también permite una gestión correcta de la zona horaria.
* las funciones NOW ó SYSDATE están prohibidas en las órdenes de SQL. Si se necesita indicar la fecha del momento en un campo, el valor debe provenir de PHP y no del motor de la base de datos. Esto además de ofrecer una mejor portabilidad del código, también permite una gestión correcta de la zona horaria.


== Normes HTML ==
== Normas HTML ==


* Tous les attributs dans les balises HTML doivent être *en minuscule* et quotés avec des *doubles quote* (Norme xhtml)
* Todos los atributos de las etiquetas HTML deben de estar *en minúscula* y entrecomillados con *doble comilla* (Norma xhtml)


* Les liens href doivent être absolus et se baser pour les pages sur la constante DOL_URL_ROOT qui pointe sur htdocs et pour les images se base sur l'appel de la fonction img_picto.
* Los enlaces href deben de ser absolutos. para las páginas, basarse en la constante DOL_URL_ROOT que apunta a htdocs, para las imágenes basarse en la llamada de la función img_picto.
Par exemple:
Por ejemplo:
<pre>
<pre>
print '<a href="'.DOL_URL_ROOT.'/monrep/mapage.php">'.img_picto('Texte alt','nompictopng','').'</a>';
print '<a href="'.DOL_URL_ROOT.'/monrep/mapage.php">'.img_picto('Texte alt','nompictopng','').'</a>';
</pre>
</pre>


* Le javascript et l'appel aux scripts java dans les pages php est à proscrire. Si toutefois du code javascript est inclus, il doit être conditionné par le test sur "$conf->use_javascript"
* Javascript y la llamada a scripts java en las páginas php está fuera de las normas. Si de todas maneras se incluye código javascript, debe estar condicionado mediante el test "$conf->use_javascript"
<pre>
<pre>
if ($conf->use_javascript)
if ($conf->use_javascript)
{
{
...  // Le code php qui génère du javascript est ici
...  // El código PHP que genera el javascript va aquí
}
}
</pre>
</pre>


* Les popups windows ne doivent pas être utilisées, sauf pour des tooltips (et restent condtionnées par le point ci-dessus).
* Las ventanas emergentes  no deben de ser utilizadas, exceptuando los tooltips (y quedan condicionados por el punto anterior).


* Les scripts externes sont écrits en Perl s'ils ne peuvent l'être en php, l'utilisation d'un autre langage n'est pas interdit mais doit être discuté au préalable dans la mailing list des développeurs. Le langage devra être maitrisé par au moins 2 développeurs pour en assurer la maintenance.
* Los scripts externos son escritos en Perl si no pueden serlo en php, la utilización de otro lenguaje no está prohibido, pero debe de ser discutido priero en la lista de correo de desarrollo. El lenguaje debe de ser dominado al menos por 2 desarrolladores para asegurar el mantenimiento


== Normes Dolibarr et squelettes de code ==
== Normes Dolibarr et squelettes de code ==