From 609728156edcbc41198f19771195db9742906de5 Mon Sep 17 00:00:00 2001 From: mbriand Date: Sun, 29 Aug 2010 20:08:11 +0000 Subject: [PATCH] fiche mmt publiques pour tous les utbm --- activites.php | 2 +- galaxy.php | 2 +- include/cts/fsearch.inc.php | 9 +++++++-- include/entities/utilisateur.inc.php | 4 ++-- matmatronch/index.php | 6 ++++-- matmatronch/mapfrance.php | 2 +- temp/repair_users.php | 2 +- trombi/index.php | 7 +++---- user.php | 13 +++++++++---- 9 files changed, 29 insertions(+), 18 deletions(-) diff --git a/activites.php b/activites.php index db90ecd88..2b9b0a683 100644 --- a/activites.php +++ b/activites.php @@ -95,7 +95,7 @@ else "AND `asso_membre`.`role`='10' " . "AND `asso`.`id_asso_parent` = '".$rowpoles['id_asso']."'" . "AND `asso`.`hidden` = '0' " . - ($site->user->is_in_group ("gestion_ae") ? "" : "AND `utilisateurs`.`publique_utl` = '1'") . + ($site->user->is_in_group ("gestion_ae") ? "" : "AND `utilisateurs`.`publique_utl` >= '1'") . "GROUP BY `asso`.`id_asso` " . "ORDER BY `asso`.`nom_asso`"); diff --git a/galaxy.php b/galaxy.php index e522560fa..8e1434886 100644 --- a/galaxy.php +++ b/galaxy.php @@ -222,7 +222,7 @@ elseif ( isset($_REQUEST["id_utilisateur"]) ) $req = new requete($site->db,"SELECT rx_star,ry_star FROM galaxy_star WHERE id_star='".mysql_real_escape_string($user->id)."'"); - if ( !$user->publique ) + if ( $user->publique < 1 ) { $cts->add_paragraph("C'est utilisateur n'est pas présent dans galaxy car son profil n'est pas publique."); if ($user->id==$site->user->id) diff --git a/include/cts/fsearch.inc.php b/include/cts/fsearch.inc.php index 448a356db..a4652afe4 100644 --- a/include/cts/fsearch.inc.php +++ b/include/cts/fsearch.inc.php @@ -139,11 +139,16 @@ class fsearch extends stdcontents $sqlpattern = mysql_real_escape_string($pattern); // Utilisateurs - if ( $site->user->is_valid() && $site->user->cotisant ) + if ( $site->user->is_valid() && ($site->user->cotisant || $site->user->utbm)) { if ( !$site->user->is_in_group("gestion_ae") && !$site->user->is_asso_role ( 27, 1 ) && !$site->user->is_in_group("visu_cotisants") ) - $force_sql = "AND `publique_utl`='1'"; + { + if ($site->user->cotisant) + $force_sql = "AND `publique_utl`>='1'"; + else + $force_sql = "AND `publique_utl`='2'"; + } else $force_sql = ""; diff --git a/include/entities/utilisateur.inc.php b/include/entities/utilisateur.inc.php index d31e1479a..01b927dae 100644 --- a/include/entities/utilisateur.inc.php +++ b/include/entities/utilisateur.inc.php @@ -1168,7 +1168,7 @@ class utilisateur extends stdentity $this->etudiant = $_etudiant; $this->ancien_etudiant = false; $this->modere = false; - $this->publique = true; + $this->publique = 2; $this->publique_mmtpapier = true; $sql = new insert ($this->dbrw, @@ -1345,7 +1345,7 @@ class utilisateur extends stdentity if ($date_naissance) $this->date_naissance = $date_naissance; - $this->publique = true; + $this->publique = 2; $this->publique_mmtpapier = true; $this->droit_image = $droit_image; diff --git a/matmatronch/index.php b/matmatronch/index.php index e098e814e..facb561e2 100644 --- a/matmatronch/index.php +++ b/matmatronch/index.php @@ -167,8 +167,10 @@ if ( $_REQUEST["action"] == "search" || $_REQUEST["action"] == "simplesearch" ) else $params.= "&inclus_nutbm"; - if ( !$is_admin && !$site->user->is_in_group("visu_cotisants")) - $elements[] = "`publique_utl`='1'"; + if ( !$is_admin && !$site->user->is_in_group("visu_cotisants") && $site->user->cotisant) + $elements[] = "`publique_utl`>='1'"; + elseif ( !$is_admin && !$site->user->is_in_group("visu_cotisants")) + $elements[] = "`publique_utl`>='2'"; $req = new requete($site->db,"SELECT COUNT(`utilisateurs`.`id_utilisateur`) " . "FROM `utilisateurs` " . diff --git a/matmatronch/mapfrance.php b/matmatronch/mapfrance.php index 54bd87bea..fb03cba4b 100644 --- a/matmatronch/mapfrance.php +++ b/matmatronch/mapfrance.php @@ -153,7 +153,7 @@ if (isset($_REQUEST['getinfodepts'])) INNER JOIN `utl_etu_utbm` ON `utl_etu_utbm`.`id_utilisateur` = `utilisateurs`.`id_utilisateur` INNER JOIN `loc_ville` ON `loc_ville`.`id_ville` = `utl_etu`.`id_ville` WHERE `loc_ville`.`cpostal_ville` LIKE '".$cp."' - AND `publique_utl` = '1' + AND `publique_utl` = '2' ORDER BY RAND() LIMIT 10"); diff --git a/temp/repair_users.php b/temp/repair_users.php index 0e4331909..1a5b3fd71 100644 --- a/temp/repair_users.php +++ b/temp/repair_users.php @@ -94,7 +94,7 @@ if(isset($_POST["action"]) && $_POST["action"]=="merge") //droit_image(true or false) $user->droit_image=true; //publique - $user->publique=true; //nazi :P + $user->publique=1; //nazi :P //publique_mmtpapier $user->publique_mmtpapier=true; //nazi aussi :P //signature_utl diff --git a/trombi/index.php b/trombi/index.php index d2058c30a..3c0a5e0b5 100644 --- a/trombi/index.php +++ b/trombi/index.php @@ -72,7 +72,7 @@ if (isset($_REQUEST['id_utilisateur'])) if ($user->id != $site->user->id && !$site->user->utbm && !$site->user->ae) $site->error_forbidden("matmatronch","group",10001); - if (!$user->publique && !$can_edit) + if ( (($user->publique == 0) || ($user->publique == 1 && !$site->user->cotisant)) && !$can_edit ) $site->error_forbidden("matmatronch","private"); if ($user->promo_utbm != $site->user->promo_utbm) @@ -400,7 +400,7 @@ if($_REQUEST["view"] == "listing") WHERE `promo_utbm`='" . $site->user->promo_utbm . "' AND - `publique_utl`='1' + `publique_utl`>='".($site->user->cotisant ? '1' : '2')."' ORDER BY `nom_utl` ASC"); @@ -424,7 +424,7 @@ if($_REQUEST["view"] == "listing") ."LEFT JOIN `utilisateurs` USING (`id_utilisateur`) " ."LEFT JOIN `utl_etu` USING (`id_utilisateur`) " ."WHERE `promo_utbm`='" . $site->user->promo_utbm . "' " - ."AND `publique_utl`='1' " + ."AND `publique_utl`>='".($site->user->cotisant ? '1' : '2')."' " ."ORDER BY `nom_utl`, `prenom_utl` ASC " ."LIMIT ".$st." , ".$npp.""); if ($req->lines == 0) @@ -727,4 +727,3 @@ $site->add_contents($cts); $site->end_page (); ?> - diff --git a/user.php b/user.php index cecb6974a..ad2fe08b8 100644 --- a/user.php +++ b/user.php @@ -67,8 +67,8 @@ if ( isset($_REQUEST['id_utilisateur']) ) // Si la fiche n'est pas public, et qu'on ne peut pas l'éditer, // cela veut dire que l'on est i admin, ni l'utilisateur en question // donc on a pas le droit de la consulter - if ( !$user->publique && !$can_edit ) - $site->error_forbidden("mat11matronch","private"); + if ( (($user->publique == 0) || ($user->publique == 1 && !$site->user->cotisant)) && !$can_edit ) + $site->error_forbidden("matmatronch","private"); } else @@ -164,7 +164,7 @@ elseif ( $_REQUEST["action"] == "saveinfos" && $can_edit ) $user->tel_portable = telephone_userinput($_REQUEST['tel_portable']); $user->date_maj = time(); - $user->publique = isset($_REQUEST["publique"]); + $user->publique = $_REQUEST["publique"]; $user->publique_mmtpapier = isset($_REQUEST["publique_mmtpapier"]); $user->signature = $_REQUEST['signature']; @@ -697,7 +697,12 @@ if ( $_REQUEST["page"] == "edit" && $can_edit ) //signature $frm->add_text_area("signature","Signature (forum)",$user->signature); - $frm->add_checkbox ( "publique", "Rendre mon profil public : Apparaitre dans le matmatronch en ligne.", $user->publique ); + $frm->add_radiobox_field ( "publique", "Publicité de mon profil", + array(2=>"Permettre à tous les membres de l'AE, de l'utbm ou anciens de l'utbm de voir mon profil", + 1=>"Limiter l'accès à mon profil aux membres de l'AE", + 0=>"Ne pas rendre mon profil publique"), + $user->publique ); + $frm->add_checkbox ( "publique_mmtpapier", "Autoriser la publication de mon profil dans le matmatronch papier.", $user->publique_mmtpapier ); $frm->add_submit("save","Enregistrer"); -- GitLab