public function listContactGroup($value, $type = "id") { $criteria = new Criteria(); $criteria->add(GrupoTrabajoScPeer::FLAG, 1); if ($type == "id") { $criteria->add(GrupoTrabajoScPeer::ID, $value); } else { $criteria->add(GrupoTrabajoScPeer::NAME, '%' . $value . '%', Criteria::LIKE); } $criteria->addJoin(GrupoTrabajoScPeer::ID, DetalleGrupoTrabajoScPeer::GRUPO_ID); $lista = DetalleGrupoTrabajoScPeer::doSelect($criteria); return array("success" => true, "object" => $lista, "message" => "succes!"); }
public function executeSearch_contact(sfWebRequest $request) { //la busqueda se realizara por el email o por el nombre //por ahora solo x el email $name_or_email = $request->getParameter('data'); $group_id = $request->getParameter('workGroup'); $current_user = $this->getUser()->getAttribute(sfConfig::get('app_session_current_user'), null); //reviso si la session existe if ($current_user != null) { $criterio_user = new Criteria(); $criterio_user->add(DetalleGrupoTrabajoScPeer::EMAIL, '%' . $name_or_email . '%', Criteria::LIKE); $criterio_user->add(GrupoTrabajoScPeer::OWNER_ID, $current_user->getId()); $criterio_user->add(GrupoTrabajoScPeer::ID, $group_id); $criterio_user->addJoin(DetalleGrupoTrabajoScPeer::GRUPO_ID, GrupoTrabajoScPeer::ID); $list_results = DetalleGrupoTrabajoScPeer::doSelect($criterio_user); $this->results = $list_results; return sfView::SUCCESS; } else { return sfView::ERROR; } }
/** * If this collection has already been initialized with * an identical criteria, it returns the collection. * Otherwise if this UserSc is new, it will return * an empty collection; or if this UserSc has previously * been saved, it will retrieve related DetalleGrupoTrabajoScs from storage. * * This method is protected by default in order to keep the public * api reasonable. You can provide public methods for those you * actually need in UserSc. */ public function getDetalleGrupoTrabajoScsJoinGrupoTrabajoSc($criteria = null, $con = null, $join_behavior = Criteria::LEFT_JOIN) { if ($criteria === null) { $criteria = new Criteria(UserScPeer::DATABASE_NAME); } elseif ($criteria instanceof Criteria) { $criteria = clone $criteria; } if ($this->collDetalleGrupoTrabajoScs === null) { if ($this->isNew()) { $this->collDetalleGrupoTrabajoScs = array(); } else { $criteria->add(DetalleGrupoTrabajoScPeer::USER_ID, $this->id); $this->collDetalleGrupoTrabajoScs = DetalleGrupoTrabajoScPeer::doSelectJoinGrupoTrabajoSc($criteria, $con, $join_behavior); } } else { // the following code is to determine if a new query is // called for. If the criteria is the same as the last // one, just return the collection. $criteria->add(DetalleGrupoTrabajoScPeer::USER_ID, $this->id); if (!isset($this->lastDetalleGrupoTrabajoScCriteria) || !$this->lastDetalleGrupoTrabajoScCriteria->equals($criteria)) { $this->collDetalleGrupoTrabajoScs = DetalleGrupoTrabajoScPeer::doSelectJoinGrupoTrabajoSc($criteria, $con, $join_behavior); } } $this->lastDetalleGrupoTrabajoScCriteria = $criteria; return $this->collDetalleGrupoTrabajoScs; }
public function executeSave_indicator(sfWebRequest $request) { $request->setRequestFormat('json'); $indicadorId = $request->getParameter('indicatorId'); $titulo = $request->getParameter('title'); $descripcion = $request->getParameter('description'); $valor_minimo = $request->getParameter('valueMin'); $valor_deseado = $request->getParameter('valueDes'); $valor_optimo = $request->getParameter('valueOpt'); $responsable_id = $request->getParameter('responsableId'); $responsable_email = $request->getParameter('responsableEmail'); $grupo_trabajo_id = $request->getParameter('workGroup'); $conector_id = $request->getParameter('conectorId'); /* Google, Facebook, Twitter */ $attribute_id = $request->getParameter('attributeId'); $tableId = $request->getParameter('tableId'); $facebook_username = $request->getParameter('facebook_username'); $twitter_username = $request->getParameter('twitter_username'); $fec_ini = $request->getParameter('fec_ini'); $fec_fin = $request->getParameter('fec_fin'); $json_children = $request->getParameter('indicatorChildren'); $oaux_manejo_data = $request->getParameter('oaux_manejo_data'); $json = json_decode($json_children); if (count($json) > 0) { foreach ($json as $row) { $indicador_children = IndicatorsScPeer::retrieveByPK($row->{'pk'}); $indicador_children->setConectoresConfigure($row->{'values'}); $indicador_children->save(); } } //primero validamos y esta logeado //segundo validamos si el idicador existe //tercero verificamos si se asigno un usuario //(si se le asigno un usuario)cuarto vamos a revisar si el usuario que es asignado esta en e grupo de trabajo /*si no esta en grupo de trabajo envio una solictud ( antes verifico si no le mande una solicitud antes) * por que no se va estar mandando varias solicitudes al mismo usuario * en este caso las solicitudes son 1 vez por grupo de trabajo y no por indicador */ //despues de vefiricar grabamos la primera vesion del indicador con los datos secundarios $user = $this->getUser()->getAttribute(sfConfig::get('app_session_current_user'), null); if ($user != null) { $indicador = IndicatorsScPeer::retrieveByPK($indicadorId); if (is_object($indicador)) { if ($responsable_email != "") { /* aca vamos crear el registro de asignaciones, esta tabla me permite manejar un historial de las asignacion de resposanble x indicador asi podre ver todas los responsables de un determinado indicador.*/ $asignacion_indicador = new AsignacionSc(); $asignacion_indicador->setGrupoId($grupo_trabajo_id); $asignacion_indicador->setEmail($responsable_email); $asignacion_indicador->setTreeId($indicador->getTreeId()); $asignacion_indicador->setIndicadorId($indicador->getId()); $asignacion_indicador->setCreateAt(time()); $asignacion_indicador->setUpdateAt(time()); /**********************************************************************/ if ($responsable_id != "") { /* * */ if ($responsable_id != $indicador->getResponsableId()) { $serviceDataIndicadores = new dataIndicadoresImplementation(); $serviceDataIndicadores->changeOwnerIndicadores($indicador, $responsable_id); } /******************************************/ $asignacion_indicador->setFlag(json_encode(array("estado" => true, "owner_id" => $user->getId()))); $asignacion_indicador->setUserId($responsable_id); $indicador->setResponsableId($responsable_id); $indicador->setEmailResponsable($responsable_email); } else { //envio solicitud //antes verificar si no le enviando una solicitud antes $rsp = $this->evaluar_solicitud($responsable_email, $grupo_trabajo_id, $user); if ($rsp['success']) { $criterio = new Criteria(); $criterio->add(DetalleGrupoTrabajoScPeer::EMAIL, '%' . $responsable_email . '%', Criteria::LIKE); $criterio->add(DetalleGrupoTrabajoScPeer::GRUPO_ID, $grupo_trabajo_id); $cantidad = DetalleGrupoTrabajoScPeer::doCount($criterio); if ($cantidad <= 0) { $newDetalle = new DetalleGrupoTrabajoSc(); $newDetalle->setEmail($responsable_email); $newDetalle->setGrupoId($grupo_trabajo_id); $newDetalle->save(); } $indicador->setEmailResponsable($responsable_email); $indicador->setResponsableId(null); $asignacion_indicador->setFlag(json_encode(array("estado" => false, "owner_id" => $user->getId()))); } else { $this->message = $rsp['message']; return sfView::ERROR; } } $asignacion_indicador->save(); } else { $indicador->setResponsableId(null); $indicador->setEmailResponsable(''); } if ($descripcion != "") { $indicador->setDescripcion($descripcion); } if ($valor_minimo != "") { $indicador->setValorMinimo($valor_minimo); } if ($valor_deseado != "") { $indicador->setValorDeseado($valor_deseado); } if ($valor_optimo != "") { $indicador->setValorOptimo($valor_optimo); } if ($titulo != "") { $indicador->setTitulo($titulo); } if ($oaux_manejo_data == '1') { /* ingreso manual */ $indicador->setDetNetworkAttributeId(null); $indicador->setUsernameInNetwork(null); $indicador->setValorActualEntregado(0); $indicador->setGaFecIni(null); $indicador->setGaFecFin(null); } elseif ($oaux_manejo_data == '2') { /* ingreso automatico */ if ($conector_id != '' && $attribute_id != '') { $c = new Criteria(); $c->add(NetworkPeer::NAME, $conector_id); $c->add(DetNetworkAttributePeer::ATTRIBUTE_ID, $attribute_id); $c->addJoin(NetworkPeer::ID, DetNetworkAttributePeer::NETWORK_ID); $det_network_attribute = DetNetworkAttributePeer::doSelectOne($c); if ($conector_id == 'Facebook') { if ($facebook_username != '') { $indicador->setDetNetworkAttributeId($det_network_attribute->getId()); $indicador->setUsernameInNetwork($facebook_username); /* se extrae valor de la consulta */ $data = $this->privateFunctionGetFacebookData($facebook_username, $det_network_attribute->getId()); if ($data != null) { $indicador->setValorActualEntregado($data); } else { $indicador->setValorActualEntregado(0); } } else { $indicador->setDetNetworkAttributeId(null); $indicador->setUsernameInNetwork(null); $indicador->setValorActualEntregado(0); $indicador->setGaFecIni(null); $indicador->setGaFecFin(null); } } elseif ($conector_id == 'Twitter') { if ($twitter_username != '') { $indicador->setDetNetworkAttributeId($det_network_attribute->getId()); $indicador->setUsernameInNetwork($twitter_username); /* se extrae valor de la consulta */ $data = $this->privateFunctionGetTwitterData($twitter_username, $det_network_attribute->getId()); $indicador->setValorActualEntregado($data); } else { $indicador->setDetNetworkAttributeId(null); $indicador->setUsernameInNetwork(null); $indicador->setValorActualEntregado(0); $indicador->setGaFecIni(null); $indicador->setGaFecFin(null); } } elseif ($conector_id == 'Google Analytics') { if ($tableId != '' && $tableId != 'null') { $indicador->setDetNetworkAttributeId($det_network_attribute->getId()); $indicador->setUsernameInNetwork($tableId); /* se extrae valor de la consulta */ $data = $this->privateFunctionGetGoogleAnalyticsData($indicador->getId(), $tableId, $fec_ini, $fec_fin, $det_network_attribute->getId()); $indicador->setGaFecIni($fec_ini); $indicador->setGaFecFin($fec_fin); $indicador->setValorActualEntregado($data); } else { if (is_object($det_network_attribute)) { $indicador->setDetNetworkAttributeId($det_network_attribute->getId()); } else { $indicador->setDetNetworkAttributeId(null); } $indicador->setUsernameInNetwork(null); $indicador->setValorActualEntregado(0); $indicador->setGaFecIni(null); $indicador->setGaFecFin(null); } } } else { $indicador->setDetNetworkAttributeId(null); $indicador->setUsernameInNetwork(null); $indicador->setValorActualEntregado(0); $indicador->setGaFecIni(null); $indicador->setGaFecFin(null); } } $indicador->save(); } else { $this->message = 'not found indicator'; return sfView::ERROR; } } else { $this->message = 'session expired'; return sfView::ERROR; } }
public function executeSave_bost_group(sfWebRequest $request) { $request->setRequestFormat('json'); $user = $this->getUser()->getAttribute(sfConfig::get('app_session_current_user'), null); $bost_id = $request->getParameter('bostId'); $rowId = $request->getParameter('rowId'); if ($user != null) { $row = DetalleGrupoTrabajoScPeer::retrieveByPK($rowId); if (is_object($row)) { if ($bost_id == "none") { $row->setBostId(0); } else { $row->setBostId($bost_id); } $row->save(); return sfView::SUCCESS; } else { return sfView::ERROR; } } else { return sfView::ERROR; } }
/** * Populates the object using an array. * * This is particularly useful when populating an object from one of the * request arrays (e.g. $_POST). This method goes through the column * names, checking to see whether a matching key exists in populated * array. If so the setByName() method is called for that column. * * You can specify the key type of the array by additionally passing one * of the class type constants BasePeer::TYPE_PHPNAME, BasePeer::TYPE_STUDLYPHPNAME, * BasePeer::TYPE_COLNAME, BasePeer::TYPE_FIELDNAME, BasePeer::TYPE_NUM. * The default key type is the column's phpname (e.g. 'AuthorId') * * @param array $arr An array to populate the object from. * @param string $keyType The type of keys the array uses. * @return void */ public function fromArray($arr, $keyType = BasePeer::TYPE_PHPNAME) { $keys = DetalleGrupoTrabajoScPeer::getFieldNames($keyType); if (array_key_exists($keys[0], $arr)) { $this->setId($arr[$keys[0]]); } if (array_key_exists($keys[1], $arr)) { $this->setEmail($arr[$keys[1]]); } if (array_key_exists($keys[2], $arr)) { $this->setUserId($arr[$keys[2]]); } if (array_key_exists($keys[3], $arr)) { $this->setGrupoId($arr[$keys[3]]); } }
/** * Retrieve multiple objects by pkey. * * @param array $pks List of primary keys * @param PropelPDO $con the connection to use * @throws PropelException Any exceptions caught during processing will be * rethrown wrapped into a PropelException. */ public static function retrieveByPKs($pks, PropelPDO $con = null) { if ($con === null) { $con = Propel::getConnection(DetalleGrupoTrabajoScPeer::DATABASE_NAME, Propel::CONNECTION_READ); } $objs = null; if (empty($pks)) { $objs = array(); } else { $criteria = new Criteria(DetalleGrupoTrabajoScPeer::DATABASE_NAME); $criteria->add(DetalleGrupoTrabajoScPeer::ID, $pks, Criteria::IN); $objs = DetalleGrupoTrabajoScPeer::doSelect($criteria, $con); } return $objs; }
private function executeLevel_down($user, $group) { $criterio = new Criteria(); $criterio->add(DetalleGrupoTrabajoScPeer::GRUPO_ID, $group->getId()); $criterio->add(DetalleGrupoTrabajoScPeer::BOST_ID, $user->getId()); $detalle_list_bean = DetalleGrupoTrabajoScPeer::doSelect($criterio); if (count($detalle_list_bean) > 0) { return $detalle_list_bean; } else { return null; } }