Subversion Repositories eFlore/Applications.del

Rev

Rev 2059 | Rev 2065 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2059 Rev 2063
Line 743... Line 743...
743
		$resultat = $this->bdd->recuperer('SELECT FOUND_ROWS() AS nbre -- '.__FILE__.':'.__LINE__);
743
		$resultat = $this->bdd->recuperer('SELECT FOUND_ROWS() AS nbre -- '.__FILE__.':'.__LINE__);
744
		return intval($resultat['nbre']);
744
		return intval($resultat['nbre']);
745
	}
745
	}
Line 746... Line 746...
746
	
746
	
747
	public function getRequeteIdObsMonactiviteTout($id_utilisateur, $limite = "") {
747
	public function getRequeteIdObsMonactiviteTout($id_utilisateur, $limite = "") {
748
		/*
-
 
749
		 - Faire apparaitre un chiffre sur la maison lorsque certains évènement se sont produits
-
 
750
		- Les actions des autres sur mes observations ou sur mes proposition ou commentaires
-
 
751
		- Les observations à venir valider
-
 
752
		- Mes observations validées
-
 
753
	
-
 
754
	
748
		/*	
755
		Une action c'est :
749
		Une action c'est :
756
		- Quelqu'un commente mon observation
750
		- Quelqu'un commente mon observation
Line 757... Line 751...
757
		- Quelqu'un fait une proposition sur mon observation
751
		- Quelqu'un fait une proposition sur mon observation
758
	
752
	
Line 759... Line 753...
759
		- Quelqu'un vote pour ma proposition
753
		- Quelqu'un vote pour ma proposition
760
		- Quelqu'un commente ma proposition ou mon commentaire
754
		- Quelqu'un commente ma proposition ou mon commentaire
761
	
755
	
762
		- Quelqu'un vote pour une proposition sur mon observation
-
 
763
		- Quelqu'un commente une proposition ou un commentaire sur mon observation
756
		- Quelqu'un vote pour une proposition sur mon observation
764
		*/
757
		- Quelqu'un commente une proposition ou un commentaire sur mon observation
765
	
758
		*/
766
		$requete = "SELECT SQL_CALC_FOUND_ROWS DISTINCT id_observation FROM del_observation do ".
759
		$requete = "SELECT SQL_CALC_FOUND_ROWS DISTINCT id_observation FROM del_observation do ".
767
				$this->getJointureMonActivite($id_utilisateur).
760
				$this->getJointureMonActivite($id_utilisateur).
Line 782... Line 775...
782
		return $requete;
775
		return $requete;
783
	}
776
	}
Line 784... Line 777...
784
	
777
	
785
	public function getEvenementsObs($idsObsConcat, $id_utilisateur) {
778
	public function getEvenementsObs($idsObsConcat, $id_utilisateur) {
786
		$sous_champ_date_max = $this->getCombinaisonChampsDateMax()." as date_max";
779
		$sous_champ_date_max = $this->getCombinaisonChampsDateMax()." as date_max";
-
 
780
		$sous_champ_date = "dc.date as date_com, dc.nom_sel as nom_sel_com, dcpr.ce_commentaire_parent as parent_com, dcv.date as date_vote, ".
-
 
781
							"do.date_observation as date_obs, dcp.date_validation as date_validation, dcpr.date as date_com_reponse, ".
787
		$sous_champ_date = "dc.date as date_com, dc.nom_sel as nom_sel_com, dc.ce_commentaire_parent as parent_com, dcv.date as date_vote, do.date_observation as date_obs, dcp.date_validation as date_validation";
782
							"dcvp.nom_sel as nom_sel_com_parent";
788
		$sous_champs_utilisateurs = "dc.ce_utilisateur as utilisateur_commentaire, dcp.ce_utilisateur as utilisateur_commentaire_valide, ".
783
		$sous_champs_utilisateurs = "dc.ce_utilisateur as utilisateur_commentaire, dcp.ce_utilisateur as utilisateur_commentaire_valide, ".
789
									"dcv.ce_utilisateur as utilisateur_vote_commentaire, do.ce_utilisateur as utilisateur_observation, ".
784
									"dcv.ce_utilisateur as utilisateur_vote_commentaire, do.ce_utilisateur as utilisateur_observation, ".
-
 
785
									"dcp.ce_validateur as utilisateur_validation, dcvp.ce_utilisateur as utilisateur_commentaire_vote, ".
Line 790... Line 786...
790
									"dcp.ce_validateur as utilisateur_validation, dcvp.ce_utilisateur as utilisateur_commentaire_vote";
786
									"dcpr.ce_utilisateur as utilisateur_commentaire_reponse";
791
			
787
			
792
		$requete = "SELECT DISTINCT id_observation, ".$sous_champs_utilisateurs.", ".$sous_champ_date_max.", ".$sous_champ_date." ".
788
		$requete = "SELECT DISTINCT id_observation, ".$sous_champs_utilisateurs.", ".$sous_champ_date_max.", ".$sous_champ_date." ".
793
				"FROM del_observation do ".
789
				"FROM del_observation do ".
794
				$this->getJointureMonActivite($id_utilisateur).
790
				$this->getJointureMonActivite($id_utilisateur).
795
				$this->getConditionMonActivite($id_utilisateur).
791
				$this->getConditionMonActivite($id_utilisateur).
796
				"AND id_observation IN ($idsObsConcat) ORDER BY date_max DESC";
792
				"AND id_observation IN ($idsObsConcat) ORDER BY date_max DESC";
Line 797... Line 793...
797
		
793
 
798
		$evenements = $this->bdd->recupererTous($requete);
794
		$evenements = $this->bdd->recupererTous($requete);
Line 814... Line 810...
814
		// quelqu'un vote pour ma proposition ou sur une proposition sur une de mes observations
810
		// quelqu'un vote pour ma proposition ou sur une proposition sur une de mes observations
815
		"LEFT JOIN del_commentaire dcvp ON do.id_observation = dcvp.ce_observation ".
811
		"LEFT JOIN del_commentaire dcvp ON do.id_observation = dcvp.ce_observation ".
816
		"LEFT JOIN del_commentaire_vote dcv ON dcv.ce_proposition = dcvp.id_commentaire ".
812
		"LEFT JOIN del_commentaire_vote dcv ON dcv.ce_proposition = dcvp.id_commentaire ".
817
		"AND (dcvp.ce_utilisateur = $id_utilisateur OR do.ce_utilisateur = $id_utilisateur) ".
813
		"AND (dcvp.ce_utilisateur = $id_utilisateur OR do.ce_utilisateur = $id_utilisateur) ".
818
		"AND dcv.ce_utilisateur != $id_utilisateur ".
814
		"AND dcv.ce_utilisateur != $id_utilisateur ".
819
		"AND dcv.ce_utilisateur != dcvp.ce_utilisateur ";
815
		"AND dcv.ce_utilisateur != dcvp.ce_utilisateur ".
820
		// Quelqu'un répond à l'un de mes commentaires ou commente une de mes propositions
816
		// Quelqu'un répond à l'un de mes commentaires ou commente une de mes propositions
821
		//"LEFT JOIN del_commentaire dcpr ON do.id_observation = dcvp.ce_observation ".
817
		"LEFT JOIN del_commentaire dcpr ON do.id_observation = dcvp.ce_observation ".
822
		//"AND dcpr.ce_commentaire_parent = dcvp.id_commentaire AND dcvp.ce_utilisateur = $id_utilisateur ";
818
		"AND dcpr.ce_commentaire_parent = dcvp.id_commentaire AND dcvp.ce_utilisateur = $id_utilisateur ";
823
	}
819
	}
Line 824... Line 820...
824
	
820
	
825
	public function getConditionMonActivite($id_utilisateur, $type = "autres") {
821
	public function getConditionMonActivite($id_utilisateur, $type = "autres") {
826
		//TODO: gérer les cas suivants :
822
		//TODO: gérer les cas suivants :
Line 834... Line 830...
834
		// mais qu'il y a au moins eu une action de la part d'une autre personne
830
		// mais qu'il y a au moins eu une action de la part d'une autre personne
835
		"(dc.ce_utilisateur IS NOT NULL OR dcp.ce_utilisateur IS NOT NULL OR dcv.ce_utilisateur IS NOT NULL) ";
831
		"(dc.ce_utilisateur IS NOT NULL OR dcp.ce_utilisateur IS NOT NULL OR dcv.ce_utilisateur IS NOT NULL) ";
836
	}
832
	}
Line 837... Line 833...
837
	
833
	
838
	private function getCombinaisonChampsDateMax() {
834
	private function getCombinaisonChampsDateMax() {
839
		return "GREATEST(IFNULL(dc.date,0), IFNULL(dcv.date,0), IFNULL(do.date_observation,0), IFNULL(dcp.date_validation,0))";
835
		return "GREATEST(IFNULL(dc.date,0), IFNULL(dcv.date,0), IFNULL(do.date_observation,0), IFNULL(dcp.date_validation,0), IFNULL(dcpr.date,0))";
840
	}
836
	}
841
}
837
}