public function executeEnviar_alarmas() { set_time_limit(0); $fecha = new Date(); $fecha_uno = $fecha->toString(FMT_DATEMYSQL); $c1 = new Criteria(); $crit0 = $c1->getNewCriterion(TareaPeer::FECHA_INICIO, $fecha_uno . " 00:00:00", Criteria::GREATER_EQUAL); $crit1 = $c1->getNewCriterion(TareaPeer::FECHA_INICIO, $fecha_uno . " 23:59:59", Criteria::LESS_EQUAL); $crit4 = $c1->getNewCriterion(TareaPeer::AVISAR_EMAIL, true, Criteria::EQUAL); $crit0->addAnd($crit1); $crit0->addAnd($crit4); $crit2 = $c1->getNewCriterion(TareaPeer::FECHA_VENCIMIENTO, $fecha_uno . " 00:00:00", Criteria::GREATER_EQUAL); $crit3 = $c1->getNewCriterion(TareaPeer::FECHA_VENCIMIENTO, $fecha_uno . " 23:59:59", Criteria::LESS_EQUAL); $crit5 = $c1->getNewCriterion(TareaPeer::AVISAR_EMAIL_FIN, true, Criteria::EQUAL); $crit2->addAnd($crit3); $crit2->addAnd($crit5); $crit0->addOr($crit2); $c1->add($crit0); $c1->setDistinct(); $tareas_hoy = TareaPeer::doSelect($c1); foreach ($tareas_hoy as $tarea) { $asunto = $tarea->getResumen(); $fecha_uno = $tarea->getFechaInicio('d/m/Y'); $fecha_dos = $tarea->getFechaVencimiento('d/m/Y'); if ($fecha_uno != $fecha_dos && $fecha_uno == date('d/m/Y')) { $cuerpo .= "<strong>Legedia</strong> - Inicio de "; $cuerpo .= $tarea->getEsEvento() ? "evento: " : "tarea: "; } elseif ($fecha_uno != $fecha_dos && $fecha_dos == date('d/m/Y')) { $cuerpo = "<strong>Legedia</strong> - Vencimiento de "; $cuerpo .= $tarea->getEsEvento() ? "evento: " : "tarea: "; } else { $cuerpo = "<strong>Legedia</strong> - " . $tarea->getEsEvento() ? "Evento:" : "Tarea: "; } $cuerpo .= $tarea->getResumen() . "<br />"; $cuerpo .= "Inicio: " . $fecha_uno . "<br />"; $cuerpo .= "Fin: " . $fecha_dos . "<br />"; $cuerpo .= $tarea->getDescripcion(); if ($tarea->getIdFormulario() != 0) { $form = FormularioPeer::retrieveByPK($tarea->getIdFormulario()); if ($form instanceof Formulario) { $cuerpo .= "Objeto relacionado: <a href=\"" . UsuarioPeer::getRuta() . "formularios/edit?id_formulario=" . $tarea->getIdFormulario() . "\">" . $form->__toString() . "</a>"; } } $cuerpo .= "<br /><br />Muchas gracias<br /><br />Un Saludo<br />Administrador <strong>LEGEDIA</strong>\n"; $mens = new Mensaje(); $mens->setAsunto($asunto); $mens->setCuerpo($cuerpo); $mens->setEmail(true); $mens->setFecha(time()); $mens->save(); $c = new Criteria(); $c->addAnd(MensajeDestinoPeer::ID_MENSAJE, $mens->getPrimaryKey()); MensajeDestinoPeer::doDelete($c); $mensajeDestino = new MensajeDestino(); $mensajeDestino->setIdMensaje($mens->getPrimaryKey()); $mensajeDestino->setIdUsuario($tarea->getUsuario()->getIdUsuario()); $mensajeDestino->save(); echo $tarea->getUsuario()->getEmail() . "::" . $asunto . "<br />" . $cuerpo . "<br /><br />"; if (trim($tarea->getUsuario()->getEmail()) != "") { $enviado = MensajePeer::enviarEmailDefault($tarea->getIdEmpresa(), $asunto, $cuerpo, array($tarea->getUsuario()->getEmail())); } } echo "ENVIADOS: " . $enviado; return sfView::NONE; }
protected function saveMensaje($mensaje) { $mensaje->save(); // Update many-to-many for "mensaje_destino" $c = new Criteria(); $c->add(MensajeDestinoPeer::ID_MENSAJE, $mensaje->getPrimaryKey()); MensajeDestinoPeer::doDelete($c); $ids = $this->getRequestParameter('associated_mensaje_destinos'); if (is_array($ids)) { foreach ($ids as $id) { $mensajeDestino = new MensajeDestino(); $mensajeDestino->setIdMensaje($mensaje->getPrimaryKey()); $mensajeDestino->setIdUsuario($id); $mensajeDestino->save(); } } }