Пример #1
0
 public static function newTag($entity, $texto)
 {
     $user = sfContext::getInstance()->getUser();
     if ($user->isAuthenticated() && $texto) {
         $tags = preg_split("/[\\s,]+/", $texto);
         foreach ($tags as $tag) {
             $c = new Criteria();
             $c1 = new VoCriterion($c, EtiquetaPeer::TEXTO, SfVoUtil::strtolowerEs($tag));
             $c1->setIgnoreAccent(true);
             //$c->add(EtiquetaPeer::TEXTO, strtolower($tag) . ' collate utf8_bin');
             $c->add($c1);
             $c->add(EtiquetaPeer::CULTURE, $user->getCulture());
             $etiqueta = EtiquetaPeer::doSelectOne($c);
             if (!$etiqueta) {
                 $etiqueta = new Etiqueta();
                 $etiqueta->setTexto(SfVoUtil::strtolowerEs($tag));
                 $etiqueta->setCulture($user->getCulture());
                 $etiqueta->save();
             }
             if ($entity->getType() == Politico::NUM_ENTITY) {
                 $c->add(EtiquetaPoliticoPeer::ETIQUETA_ID, $etiqueta->getId());
                 $c->add(EtiquetaPoliticoPeer::CULTURE, $user->getCulture());
                 $c->add(EtiquetaPoliticoPeer::POLITICO_ID, $entity->getId());
                 $c->add(EtiquetaPoliticoPeer::SF_GUARD_USER_ID, $user->getGuardUser()->getId());
                 $etiquetaPolitico = EtiquetaPoliticoPeer::doSelectOne($c);
                 if (!$etiquetaPolitico) {
                     $etiquetaPolitico = new EtiquetaPolitico();
                     $etiquetaPolitico->setPoliticoId($entity->getId());
                     $etiquetaPolitico->setEtiquetaId($etiqueta->getId());
                     $etiquetaPolitico->setCulture($user->getCulture());
                     $etiquetaPolitico->setFecha(time());
                     $etiquetaPolitico->setSfGuardUserId($user->getGuardUser()->getId());
                     $etiquetaPolitico->save();
                 } else {
                     $etiquetaPolitico->setFecha(time());
                     $etiquetaPolitico->save();
                 }
             } elseif ($entity->getType() == Partido::NUM_ENTITY) {
                 $c->add(EtiquetaPartidoPeer::ETIQUETA_ID, $etiqueta->getId());
                 $c->add(EtiquetaPartidoPeer::CULTURE, $user->getCulture());
                 $c->add(EtiquetaPartidoPeer::PARTIDO_ID, $entity->getId());
                 $c->add(EtiquetaPartidoPeer::SF_GUARD_USER_ID, $user->getGuardUser()->getId());
                 $etiquetaPartido = EtiquetaPartidoPeer::doSelectOne($c);
                 if (!$etiquetaPartido) {
                     $etiquetaPartido = new EtiquetaPartido();
                     $etiquetaPartido->setPartidoId($entity->getId());
                     $etiquetaPartido->setEtiquetaId($etiqueta->getId());
                     $etiquetaPartido->setCulture($user->getCulture());
                     $etiquetaPartido->setFecha(time());
                     $etiquetaPartido->setSfGuardUserId($user->getGuardUser()->getId());
                     $etiquetaPartido->save();
                 } else {
                     $etiquetaPartido->setFecha(time());
                     $etiquetaPartido->save();
                 }
             } elseif ($entity->getType() == Propuesta::NUM_ENTITY) {
                 $c->add(EtiquetaPropuestaPeer::ETIQUETA_ID, $etiqueta->getId());
                 $c->add(EtiquetaPropuestaPeer::CULTURE, $user->getCulture());
                 $c->add(EtiquetaPropuestaPeer::PROPUESTA_ID, $entity->getId());
                 $c->add(EtiquetaPropuestaPeer::SF_GUARD_USER_ID, $user->getGuardUser()->getId());
                 $etiquetaPropuesta = EtiquetaPropuestaPeer::doSelectOne($c);
                 if (!$etiquetaPropuesta) {
                     $etiquetaPropuesta = new EtiquetaPropuesta();
                     $etiquetaPropuesta->setPropuestaId($entity->getId());
                     $etiquetaPropuesta->setEtiquetaId($etiqueta->getId());
                     $etiquetaPropuesta->setCulture($user->getCulture());
                     $etiquetaPropuesta->setFecha(time());
                     $etiquetaPropuesta->setSfGuardUserId($user->getGuardUser()->getId());
                     $etiquetaPropuesta->save();
                 } else {
                     $etiquetaPropuesta->setFecha(time());
                     $etiquetaPropuesta->save();
                 }
             }
         }
     }
 }
Пример #2
0
 /**
  * Declares an association between this object and a Etiqueta object.
  *
  * @param      Etiqueta $v
  * @return     EtiquetaPartido The current object (for fluent API support)
  * @throws     PropelException
  */
 public function setEtiqueta(Etiqueta $v = null)
 {
     if ($v === null) {
         $this->setEtiquetaId(NULL);
     } else {
         $this->setEtiquetaId($v->getId());
     }
     $this->aEtiqueta = $v;
     // Add binding for other direction of this n:n relationship.
     // If this object has already been added to the Etiqueta object, it will not be re-added.
     if ($v !== null) {
         $v->addEtiquetaPartido($this);
     }
     return $this;
 }
Пример #3
0
 /**
  * Adds an object to the instance pool.
  *
  * Propel keeps cached copies of objects in an instance pool when they are retrieved
  * from the database.  In some cases -- especially when you override doSelect*()
  * methods in your stub classes -- you may need to explicitly add objects
  * to the cache in order to ensure that the same objects are always returned by doSelect*()
  * and retrieveByPK*() calls.
  *
  * @param      Etiqueta $value A Etiqueta object.
  * @param      string $key (optional) key to use for instance map (for performance boost if key was already calculated externally).
  */
 public static function addInstanceToPool(Etiqueta $obj, $key = null)
 {
     if (Propel::isInstancePoolingEnabled()) {
         if ($key === null) {
             $key = serialize(array((string) $obj->getId(), (string) $obj->getCulture()));
         }
         // if key === null
         self::$instances[$key] = $obj;
     }
 }