Browse Source

Amélioration de la vérification des langues spip

svn/root/trunk
eric@smellup.net 3 years ago
parent
commit
df51b6c1b3
  1. 4
      demo/isocode.html
  2. 4
      demo/isocode_fonctions.php

4
demo/isocode.html

@ -24,24 +24,28 @@
<table class="spip">
<thead>
<tr>
<th>#</th>
<th>Code SPIP</th>
<th>Nom SPIP</th>
<th>Code 639-1</th>
<th>Code 639-3</th>
<th>Code 639-5</th>
<th>Nom référence EN</th>
<th>Scope</th>
<th>Hierarchie</th>
</tr>
</thead>
<tbody>
<BOUCLE_langues(DATA) {source table, #VAL|isocode_verifier_codes_spip} {par cle}>
<tr class="[row_(#COMPTEUR_BOUCLE|alterner{odd,even})]">
<td>#COMPTEUR_BOUCLE</td>
<td[ (#VALEUR{erreur}|oui)class="erreur"]>#CLE</td>
<td>#VALEUR{nom_spip}</td>
<td[ (#VALEUR{type_code}|=={639-1}|oui)class="code_ok"]>#VALEUR{code_639_1, ''}</td>
<td[ (#VALEUR{type_code}|=={639-3}|oui)class="code_ok"]>#VALEUR{code_639_3, ''}</td>
<td[ (#VALEUR{type_code}|=={639-5}|oui)class="code_ok"]>#VALEUR{code_639_5, ''}</td>
<td>#VALEUR{ref_name, #VALEUR{label_en, ''}}</td>
<td>#VALEUR{scope, ''}</td>
<td>#VALEUR{hierarchy, ''}</td>
</tr>
</BOUCLE_langues>

4
demo/isocode_fonctions.php

@ -69,7 +69,7 @@ function isocode_verifier_codes_spip() {
foreach ($GLOBALS['codes_langues'] as $_code => $_nom) {
$from = array('spip_iso639codes');
$select = array('*');
$codes_verifies[$_code] = array('nom_spip' => $_nom, 'type_code' => '', 'erreur' => false);
$codes_verifies[$_code] = array('nom_spip' => $_nom, 'type_code' => '', 'scope' => '', 'erreur' => false);
if (strlen($_code) == 2) {
// Si le code a une taille de 2 caractères on recherche de suite dans la table iso639codes
// un élément dont le code ISO639-1 est égal.
@ -90,12 +90,14 @@ function isocode_verifier_codes_spip() {
if ($codes_iso) {
$codes_verifies[$_code] = array_merge($codes_verifies[$_code], $codes_iso);
$codes_verifies[$_code]['type_code'] = '639-3';
$where = array('macro_639_3=' . sql_quote($_code));
} else {
$where = array('code_639_5=' . sql_quote($_code));
$code_famille = sql_fetsel($select, array('spip_iso639families'), $where);
if ($code_famille) {
$codes_verifies[$_code] = array_merge($codes_verifies[$_code], $code_famille);
$codes_verifies[$_code]['type_code'] = '639-5';
$codes_verifies[$_code]['scope'] = 'F';
} else {
$codes_verifies[$_code]['erreur'] = true;
}

Loading…
Cancel
Save