X-Git-Url: http://git.cyclocoop.org/?p=velocampus%2Fweb%2Fwww.git;a=blobdiff_plain;f=www%2Fconfig%2Fmes_fonctions.php;fp=www%2Fconfig%2Fmes_fonctions.php;h=b31bf716d00c4f1d1499ac7efdb72402ca8609c6;hp=0000000000000000000000000000000000000000;hb=80b4d3e85f78d402ed2e73f8f5d1bf4c19962eed;hpb=aaf970bf4cdaf76689ecc10609048e18d073820c diff --git a/www/config/mes_fonctions.php b/www/config/mes_fonctions.php new file mode 100755 index 0000000..b31bf71 --- /dev/null +++ b/www/config/mes_fonctions.php @@ -0,0 +1,50 @@ +0 AND id_trad=id_trad(precedent)) +// OR id_article=id_article(precedent) +function critere_traduction($idb, &$boucles, $param, $not) { + $boucle = &$boucles[$idb]; + + // cas des rubriques : on va chercher toutes les rubriques contenant + // des trads *publiees* de nos articles *publies* + if ($boucle->id_table == 'rubriques') { + if ($param == 'traduction') { + $boucle->from[] = "spip_articles AS source"; + $boucle->from[] = "spip_articles AS dest"; + $boucle->group = "rubriques.id_rubrique"; + $boucle->where[] = "((source.id_trad=dest.id_trad + AND source.statut='publie' + AND dest.statut='publie' + AND rubriques.id_rubrique = source.id_rubrique + AND dest.id_rubrique = '\"." + . calculer_argument_precedent($idb, 'id_rubrique', + $boucles) + . ".\"') OR (rubriques.id_rubrique = '\"." + . calculer_argument_precedent($idb, 'id_rubrique', + $boucles) + . ".\"')) + "; + return; + } else + erreur_squelette(_T('zbug_info_erreur_squelette'), $param); + } + + // cas normal (articles) : la table possede un champ id_trad + if ($param == 'traduction') { + $boucle->where[] = "((".$boucle->id_table.".id_trad > 0 AND " + . $boucle->id_table.".id_trad ='\"." + . calculer_argument_precedent($idb, 'id_trad', + $boucles) + . ".\"') + OR + (" . $boucle->id_table.".".$boucle->primary." ='\"." + . calculer_argument_precedent($idb, $boucle->primary, + $boucles) + . ".\"'))"; + } else + erreur_squelette(_T('zbug_info_erreur_squelette'), $param); +} + +?> \ No newline at end of file