}
}
//si pas  du compte rendu trouvé, récupération du groupe dans la requete et création d'un nouvel objet CahierTexteCompteRendu
if ($ctTravailAFaire == null) {
    $groupe = GroupePeer::retrieveByPK($id_groupe);
    if ($groupe == null) {
        echo "Erreur enregistrement de devoir : pas de groupe ou mauvais groupe spécifié";
        die;
    }
    // Vérification : est-ce que l'utilisateur a le droit de travailler sur ce groupe ?
    if (!$groupe->belongsTo($utilisateur)) {
        echo "Erreur enregistrement de devoir : le groupe n'appartient pas au professeur";
        die;
    }
    //pas de notices, on lance une création de notice
    $ctTravailAFaire = new CahierTexteTravailAFaire();
    $ctTravailAFaire->setIdGroupe($groupe->getId());
    $ctTravailAFaire->setIdLogin($utilisateur->getLogin());
}
// Vérification : est-ce que l'utilisateur a le droit de travailler sur ce devoir ?
if ($ctTravailAFaire->getIdLogin() != $utilisateur->getLogin()) {
    if (getSettingValue("cdt_autoriser_modif_multiprof") != "yes") {
        echo "Erreur enregistrement de devoir : vous n'avez pas le droit de modifier cette notice.";
        die;
    }
}
// interdire la modification d'un visa par le prof si c'est un visa
if ($ctTravailAFaire->getVise() == 'y') {
    echo "Erreur enregistrement de devoir : Notice signée, edition impossible/";
    die;
}
Пример #2
0
	/**
	 * @param	CahierTexteTravailAFaire $cahierTexteTravailAFaire The cahierTexteTravailAFaire object to add.
	 */
	protected function doAddCahierTexteTravailAFaire($cahierTexteTravailAFaire)
	{
		$this->collCahierTexteTravailAFaires[]= $cahierTexteTravailAFaire;
		$cahierTexteTravailAFaire->setUtilisateurProfessionnel($this);
	}
Пример #3
0
	/**
	 * Filter the query by a related CahierTexteTravailAFaire object
	 *
	 * @param     CahierTexteTravailAFaire $cahierTexteTravailAFaire  the related object to use as filter
	 * @param     string $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL
	 *
	 * @return    CahierTexteSequenceQuery The current query, for fluid interface
	 */
	public function filterByCahierTexteTravailAFaire($cahierTexteTravailAFaire, $comparison = null)
	{
		if ($cahierTexteTravailAFaire instanceof CahierTexteTravailAFaire) {
			return $this
				->addUsingAlias(CahierTexteSequencePeer::ID, $cahierTexteTravailAFaire->getIdSequence(), $comparison);
		} elseif ($cahierTexteTravailAFaire instanceof PropelCollection) {
			return $this
				->useCahierTexteTravailAFaireQuery()
				->filterByPrimaryKeys($cahierTexteTravailAFaire->getPrimaryKeys())
				->endUse();
		} else {
			throw new PropelException('filterByCahierTexteTravailAFaire() only accepts arguments of type CahierTexteTravailAFaire or PropelCollection');
		}
	}
Пример #4
0
    // Vérification : est-ce que l'utilisateur a le droit de travailler sur ce groupe ?
    if (!$groupe->belongsTo($utilisateur)) {
        echo "Erreur edition de devoir : le groupe n'appartient pas au professeur";
        die;
    }
    if ($ajout_nouvelle_notice != "oui") {
        //on cherche si il y a une notice pour le groupe à la date précisée
        $criteria = new Criteria(CahierTexteTravailAFairePeer::DATABASE_NAME);
        $criteria->add(CahierTexteTravailAFairePeer::DATE_CT, $today, '=');
        $criteria->add(CahierTexteTravailAFairePeer::ID_LOGIN, $utilisateur->getLogin());
        $ctTravailAFaires = $groupe->getCahierTexteTravailAFaires($criteria);
        $ctTravailAFaire = isset($ctTravailAFaires[0]) ? $ctTravailAFaires[0] : NULL;
    }
    if ($ctTravailAFaire == null) {
        //pas de notices, on initialise un nouvel objet
        $ctTravailAFaire = new CahierTexteTravailAFaire();
        $ctTravailAFaire->setIdGroupe($groupe->getId());
        $ctTravailAFaire->setDateCt($today);
        $ctTravailAFaire->setIdLogin($utilisateur->getLogin());
    }
}
// Vérification : est-ce que l'utilisateur a le droit de modifier cette entré ?
if (my_strtolower($ctTravailAFaire->getIdLogin()) != my_strtolower($utilisateur->getLogin()) && getSettingValue("cdt_autoriser_modif_multiprof") != "yes") {
    echo "Erreur edition de devoir : vous n'avez pas le droit de modifier cette notice car elle appartient à un autre professeur.";
    die;
}
if ($ctTravailAFaire->getVise() == 'y') {
    // interdire la modification d'un visa par le prof si c'est un visa
    echo "Erreur edition de devoir : Notice signée, edition impossible";
    die;
}
Пример #5
0
	/**
	 * @param	CahierTexteTravailAFaire $cahierTexteTravailAFaire The cahierTexteTravailAFaire object to add.
	 */
	protected function doAddCahierTexteTravailAFaire($cahierTexteTravailAFaire)
	{
		$this->collCahierTexteTravailAFaires[]= $cahierTexteTravailAFaire;
		$cahierTexteTravailAFaire->setGroupe($this);
	}
	/**
	 * Declares an association between this object and a CahierTexteTravailAFaire object.
	 *
	 * @param      CahierTexteTravailAFaire $v
	 * @return     CahierTexteTravailAFaireFichierJoint The current object (for fluent API support)
	 * @throws     PropelException
	 */
	public function setCahierTexteTravailAFaire(CahierTexteTravailAFaire $v = null)
	{
		if ($v === null) {
			$this->setIdCtDevoir(0);
		} else {
			$this->setIdCtDevoir($v->getIdCt());
		}

		$this->aCahierTexteTravailAFaire = $v;

		// Add binding for other direction of this n:n relationship.
		// If this object has already been added to the CahierTexteTravailAFaire object, it will not be re-added.
		if ($v !== null) {
			$v->addCahierTexteTravailAFaireFichierJoint($this);
		}

		return $this;
	}
	/**
	 * Exclude object from result
	 *
	 * @param     CahierTexteTravailAFaire $cahierTexteTravailAFaire Object to remove from the list of results
	 *
	 * @return    CahierTexteTravailAFaireQuery The current query, for fluid interface
	 */
	public function prune($cahierTexteTravailAFaire = null)
	{
		if ($cahierTexteTravailAFaire) {
			$this->addUsingAlias(CahierTexteTravailAFairePeer::ID_CT, $cahierTexteTravailAFaire->getIdCt(), Criteria::NOT_EQUAL);
		}

		return $this;
	}
	/**
	 * Filter the query by a related CahierTexteTravailAFaire object
	 *
	 * @param     CahierTexteTravailAFaire|PropelCollection $cahierTexteTravailAFaire The related object(s) to use as filter
	 * @param     string $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL
	 *
	 * @return    CahierTexteTravailAFaireFichierJointQuery The current query, for fluid interface
	 */
	public function filterByCahierTexteTravailAFaire($cahierTexteTravailAFaire, $comparison = null)
	{
		if ($cahierTexteTravailAFaire instanceof CahierTexteTravailAFaire) {
			return $this
				->addUsingAlias(CahierTexteTravailAFaireFichierJointPeer::ID_CT_DEVOIR, $cahierTexteTravailAFaire->getIdCt(), $comparison);
		} elseif ($cahierTexteTravailAFaire instanceof PropelCollection) {
			if (null === $comparison) {
				$comparison = Criteria::IN;
			}
			return $this
				->addUsingAlias(CahierTexteTravailAFaireFichierJointPeer::ID_CT_DEVOIR, $cahierTexteTravailAFaire->toKeyValue('PrimaryKey', 'IdCt'), $comparison);
		} else {
			throw new PropelException('filterByCahierTexteTravailAFaire() only accepts arguments of type CahierTexteTravailAFaire or PropelCollection');
		}
	}