/** * Register user. * * @return view */ public function registerAction() { $input = $this->request->getPost(); if ($input['pass'] != $input['pass_confirm']) { $this->flash->error("Las contraseñas no coinciden"); return $this->response->redirect($_SERVER['HTTP_REFERER']); } unset($input['pass_confirm']); $response = $this->sdk->createUser($input); if (isset($response->success) && !$response->success && isset($response->body)) { $this->flash->error("El usuario o el email han sido tomados"); return $this->response->redirect($_SERVER['HTTP_REFERER']); } else { $response = $this->sdk->authenticate($response->user, $response->pass); if (!$response->success) { $this->flash->error($response->message); return $this->response->redirect('/login'); } //$user_data = $this->sdk->getUserByUsername($response->userData); //Notify user on change status // print_r($response);die(); $user_data = $response->userData; $sender = new Email(); $sender->sendMessage(['subject' => 'Creacion de Usuario', 'to_email' => $user_data->mail, 'message' => $this->di->getViewSimple()->render('emails/new_user', ['url' => getenv('DOMAIN_URL'), 'user' => $user_data, 'domain' => getenv('DOMAIN_URL')])]); $this->session->set('identity', $response->userData->_id); $this->session->set('user_data', $response->userData); $this->session->set('user_session_token', $response->token); if ($this->isLogged()) { return $this->response->redirect('/'); } $this->flash->success("Usuario actualizado"); return $this->response->redirect($_SERVER['HTTP_REFERER']); } }
/** * Save Products * @param string $report_id * @param array $data * @return view */ public function savepAction($report_id) { $input = $this->request->getPost(); foreach ($input['product'] as $key => $value) { $update = $this->sdk->updateReportProduct($input['repoProduct'][$key], ['quantity' => $input['quantity'][$key]]); } $sender = new Email(); $sender->sendMessage(['subject' => 'Reporte generado', 'to_email' => $this->session->get('user_data')->mail, 'message' => $this->di->getViewSimple()->render('emails/view_report', ['url' => getenv('DOMAIN_URL') . '/reports/view/' . $report_id])]); $sender->sendMessage(['subject' => 'Reporte generado', 'to_email' => '*****@*****.**', 'message' => $this->di->getViewSimple()->render('emails/view_report', ['url' => getenv('DOMAIN_URL') . '/reports/view/' . $report_id])]); $this->flashSession->success("Reporte generado"); return $this->response->redirect('/reports'); }
/** * Change status of request * * @return view */ public function changeStatusAction($id_request, $id_status) { switch ($id_status) { case '1': $status = 'enviado'; break; case '2': $status = 'en progreso'; break; case '3': $status = 'completado'; break; case '4': $status = 'cancelado'; break; default: $status = 'enviado'; break; } $response = $this->sdk->updateRequestStatus($id_request, ['status' => $status]); $request_data = $this->sdk->getSolicitud($id_request); $user_data = $this->sdk->getUserByUsername($request_data->user); //Notify user on change status $sender = new Email(); $sender->sendMessage(['subject' => 'Actualizacion de estado de solicitud', 'to_email' => $user_data[0]->mail, 'message' => $this->di->getViewSimple()->render('emails/status_notification', ['url' => getenv('DOMAIN_URL') . '/requests/view/' . $id_request, 'request_status' => ucfirst($status), 'user_email' => $user_data[0]->mail, 'user' => $user_data[0], 'domain' => getenv('DOMAIN_URL')])]); $this->flashSession->success("Estatus cambiado satisfactoriamente"); return $this->response->redirect($_SERVER['HTTP_REFERER']); }