Esempio n. 1
0
 /**
  * Creates a new Notificaciones model.
  * If creation is successful, the browser will be redirected to the 'view' page.
  * @return mixed
  */
 public function actionCreate()
 {
     $model = new CrearNotificacionForm();
     $model->scenario = CrearNotificacionForm::ESCENARIO_CREAR;
     if ($model->load(Yii::$app->request->post()) && ($notificacion = $model->crear())) {
         Yii::$app->session->setFlash('toasts', 'Se ha enviado la notificación');
         return $this->redirect(['index']);
         return $this->redirect(['view', 'id' => $notificacion->idnotificacion]);
     } else {
         return $this->render('create', ['model' => $model]);
     }
 }
 /**
  * Crear notificacion para un usuario
  * @param $usuario
  * @param $mensaje
  * @param $tipo
  */
 public function actionCrear($usuario, $mensaje, $tipo)
 {
     //		$usuario = !empty($usuario) ? intval($usuario) : 1;
     $mensaje = !empty($mensaje) ? $mensaje : 'Notificacion de prueba';
     $tipo = !empty($tipo) ? $tipo : NotificacionesTipo::TIPO_MENSAJE;
     $model = new CrearNotificacionForm();
     if ($tipo == Notificaciones::REF_MENSAJE) {
         $model->scenario = CrearNotificacionForm::ESCENARIO_CREAR_POR_MENSAJE;
     } else {
         $model->scenario = CrearNotificacionForm::ESCENARIO_CREAR;
     }
     $model->usuario = $usuario;
     $model->tipo = $tipo;
     $model->referencia = 40;
     $model->referencia_tipo = Notificaciones::REF_MENSAJE;
     $model->mensaje = $mensaje;
     $model->leida = Notificaciones::VISTO_NO;
     if ($notificacion = $model->crear()) {
         $this->stdout('Se ha creado la notificacion para el usuario: ' . $notificacion->usuarios->nombre, Console::FG_GREEN);
         return;
     }
     $this->stdout("No se ha podido crear la notificacion \n", Console::FG_RED);
     return;
 }
Esempio n. 3
0
 /**
  * Envia un mensaje al propietario o interesado
  * Desde el frontend en el detalle del anuncio
  * Se crea una notificacion para el propietario
  * @return bool
  */
 public function enviarMensajePublico()
 {
     $model = new Mensajes();
     $this->scenario = self::ESCENARIO_PUBLICO;
     if ($this->validate()) {
         $model->texto = !empty($this->texto) ? ucfirst($this->texto) : self::TEXTO;
         $model->articulo = $this->articulo;
         $model->usuario = $this->usuario;
         $model->tipo = $this->tipo;
         $model->conversacion = $this->conversacion;
         if ($model->save(false)) {
             //                echo '<pre>';print_r(['',$this->_conversacion->upropietario]);die();
             $notificacion = new CrearNotificacionForm();
             $notificacion->scenario = CrearNotificacionForm::ESCENARIO_CREAR_POR_MENSAJE;
             $notificacion->usuario = $this->_conversacion->propietario;
             $notificacion->tipo = NotificacionesTipo::TIPO_MENSAJE;
             $notificacion->referencia = $model->idmensaje;
             $notificacion->referencia_tipo = Notificaciones::REF_MENSAJE;
             $notificacion->mensaje = strlen($model->texto) > 85 ? substr($model->texto, 0, 85) . '...' : $model->texto;
             $notificacion->leida = Notificaciones::VISTO_NO;
             $notificacion->crear();
             return true;
         }
     }
     return false;
 }