[Agora-commits] agora/ecrire/include/authorization/common afficherOngletAuteur_common.php, 1.2, 1.3

oliviermansour at adullact1.hosting.cri74.org oliviermansour at adullact1.hosting.cri74.org
Lun 5 Sep 17:29:53 CEST 2005


Update of /cvsroot/agora/agora/ecrire/include/authorization/common
In directory adullact1:/tmp/cvs-serv30804/ecrire/include/authorization/common

Modified Files:
	afficherOngletAuteur_common.php 
Log Message:
debugging access to the autor page info

Index: afficherOngletAuteur_common.php
===================================================================
RCS file: /cvsroot/agora/agora/ecrire/include/authorization/common/afficherOngletAuteur_common.php,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- afficherOngletAuteur_common.php	9 Jul 2004 16:13:48 -0000	1.2
+++ afficherOngletAuteur_common.php	5 Sep 2005 15:29:51 -0000	1.3
@@ -9,11 +9,11 @@
 // Base class for Action "afficherOngletAuteur ".
 //
 
-if (defined("_AUTHORIZATION_AFFICHER_ONGLET_AUTEUR_COMMON")) return;
-define("_AUTHORIZATION_AFFICHER_ONGLET_AUTEUR_COMMON", "1");
+// $Id$
 
-require_once dirname(__FILE__)."/../Action.php";
+require_once (dirname(__FILE__)."/../Action.php");
 require_once (dirname(__FILE__)."/../../bd/inc_profil_factory.php");
+require_once (dirname(__FILE__)."/../../bd/inc_auteur_factory.php");
 
 /**
  * afficherOngletAuteur is an implementation for Common of "afficherOngletAuteur Action.
@@ -33,12 +33,26 @@
 
     function _isAuthorized() {
 
-		$profilMetier = &recuperer_instance_profil();
+		/*
+        $profilMetier = &recuperer_instance_profil();
 		$monProfil = $profilMetier->getProfilForIntitule('item_redacteur');
 		if(PEAR::isError($monProfil)) {
 		    die($monProfil->getMessage());
 		}
-		return ($this->_user->getProfil() >= $monProfil->getPoids() OR $this->_user->getAuteurId() == $this->_parameters['id_auteur']);
+        */
+		// return ($this->_user->getProfil() >= $monProfil->getPoids() OR $this->_user->getAuteurId() == $this->_parameters['id_auteur']);
+        
+        if ($this->_parameters['id_auteur'] == $this->_user->getAuteurId() ) return true; // i can see my own profile
+        
+        $auteurMetier = &recuperer_instance_auteur();
+        $loadOK = $auteurMetier->load ($this->_parameters['id_auteur']);
+        if(PEAR::isError($loadOK)) {
+            return false; 
+        }
+        if ($this->_user->getProfil() > $auteurMetier->getPoids()) return true; // I can see profile of auteur "under me"
+        
+        return false;
+        
 
 	}
 




Plus d'informations sur la liste de diffusion Agora-commits