19,7 → 19,7 |
// | License along with this library; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: selecteur_sites.php,v 1.4 2004-09-15 09:32:01 jpm Exp $ |
// CVS : $Id: selecteur_sites.php,v 1.5 2004-10-26 18:42:02 jpm Exp $ |
/** |
* Applette : selecteur sites |
* |
40,7 → 40,7 |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.4 $ $Date: 2004-09-15 09:32:01 $ |
*@version $Revision: 1.5 $ $Date: 2004-10-26 18:42:02 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
|
48,7 → 48,7 |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
$_GEN_commun['info_applette_nom_fonction'] = 'afficherSelecteurSite'; |
$_GEN_commun['info_applette_balise'] = 'SELECTEUR_SITES_?(XHTML)?'; |
$_GEN_commun['info_applette_balise'] = 'SELECTEUR_SITES_?(XHTML)?_?(SANS_(?:\d+_?)+)?'; |
|
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
72,9 → 72,11 |
function afficherSelecteurSite($tab_applette_arguments, $_GEN_commun) |
{ |
// Initialisation de variable de configuration. |
$liste_type_site = '102, 103';// Les id des types des sites pouvant apparaître dans le sélecteur |
$objet_pear_db = $_GEN_commun['pear_db'];//objet Pear créé par DB contenant la connexion à la base de données. |
$code_site = $_GEN_commun['url_site'];//identifiant du site courant. |
$id_langue = $_GEN_commun['url_i18n'];//identifiant de la langue principale du site courant. |
$url_base = PAP_URL; |
$url_cle_site = GEN_URL_CLE_SITE; |
$url_cle_i18n = GEN_URL_CLE_I18N; |
$url_id_type_site = GEN_URL_ID_TYPE_SITE; |
87,21 → 89,33 |
if (isset($tab_applette_arguments[2]) && $tab_applette_arguments[2] == 'XHTML') { |
$bln_xhtml_strict = 1; |
} |
// Nous vérifions s'il y a des sites que nous ne voulons pas afficher: |
$morceau_requete_id_suppr = ''; |
if (isset($tab_applette_arguments[3]) && ereg('SANS_(.+)', $tab_applette_arguments[3], $tab_id_suppr_groupe)) { |
if (preg_match('/^\d+$/', $tab_id_suppr_groupe[1])) { |
$liste_id_suppr = $tab_id_suppr_groupe[1]; |
} else if (preg_match('/^\d+(?:_\d+)+$/', $tab_id_suppr_groupe[1])) { |
$liste_id_suppr = preg_replace('/_/', ', ', $tab_id_suppr_groupe[1]); |
} else { |
$liste_id_suppr = '0'; |
} |
$morceau_requete_id_suppr = 'AND gs_id_site NOT IN ('.$liste_id_suppr.') '; |
} |
|
// Texte à traduire |
$etiquette_legende = 'Sélecteur de monde'; |
$etiquette_option_defaut = 'changer de monde'; |
$etiquette_bouton_valider = 'ok'; |
$etiquette_erreur = 'Un seul site disponible dans Génésia.'; |
$etiquette_erreur = 'Un seul site disponible dans Papyrus.'; |
|
// On recherche l'ensemble des sites principaux en excluant le site admin (administration de Génésia). |
$requete = 'SELECT gs_id_site, gs_code_num, gs_code_alpha, gs_nom '. |
'FROM gen_site, gen_site_relation '. |
'WHERE './/gs_id_site <> 1 '.// 1 correspond à l'identifiant du site Admin par défaut. |
'gsr_id_site_01 = gsr_id_site_02 './/'AND |
'AND gsr_id_valeur = 102 '.// 102 = site "principal" |
'AND gs_id_site = gsr_id_site_01'; |
|
'WHERE gsr_id_site_01 = gsr_id_site_02 '. |
'AND gs_id_site = gsr_id_site_01 '. |
'AND gsr_id_valeur IN ('.$liste_type_site.') '. |
$morceau_requete_id_suppr.// Liste des sites ne devant pas figurer |
'ORDER BY gs_code_num ASC';// 102 = site "principal" et 103 = site "externe" |
$retourultat = $objet_pear_db->query($requete); |
(DB::isError($retourultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $retourultat->getMessage(), $requete)) : ''; |
if ( $retourultat->numRows() == 0 ) { |
109,8 → 123,8 |
'<!-- '.$etiquette_erreur.' -->'; |
} else { |
// Préparation de l'url de retour du formulaire |
$objet_pear_url = & new Net_URL('http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF']); |
$objet_pear_url->addQueryString($url_cle_i18n, $id_langue); |
$objet_pear_url = & new Net_URL($url_base); |
//$objet_pear_url->addQueryString($url_cle_i18n, $id_langue); |
// Préparation du code du sites |
$champs_code_site = ($url_id_type_site == 'int') ? 'gs_code_num' : 'gs_code_alpha'; |
|
180,6 → 194,9 |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.4 2004/09/15 09:32:01 jpm |
* Mise en conformité avec le standard XHTML Strict. |
* |
* Revision 1.3 2004/07/06 17:07:16 jpm |
* Modification de la documentation pour une mailleur analyse par PhpDocumentor. |
* |