public function showCustomRecord($parameters) { // todo: cambiar por listado de programadores $users = User::builder()->get(); $parameters['users'] = $users->map(function ($user, $key) { $user->name = $user->name_010 . ' ' . $user->surname_010; return $user; }); $parameters['afterButtonFooter'] = '<a id="invoiceButton" class="btn btn-danger margin-l10 delete-lang-record" href="' . route('invoiceProjectsBilling', ['id' => $parameters['id'], 'offset' => $parameters['offset']]) . '">' . trans('projects::pulsar.invoice_todo') . '</a>'; return $parameters; }
private function sendRequestEmail($id, $action) { $octopusRequest = OctopusRequest::builder()->find($id); // get notification account $notificationsAccount = Preference::getValue('octopusNotificationsAccount', 8); $managerProfile = Preference::getValue('octopusManagerProfile', 8); $emailAccount = EmailAccount::find($notificationsAccount->value_018); $managers = User::builder()->where('profile_id_010', $managerProfile->value_018)->where('access_010', true)->get(); if ($emailAccount == null) { return null; } config(['mail.host' => $emailAccount->outgoing_server_013]); config(['mail.port' => $emailAccount->outgoing_port_013]); config(['mail.from' => ['address' => $emailAccount->email_013, 'name' => $emailAccount->name_013]]); config(['mail.encryption' => $emailAccount->outgoing_secure_013 == 'null' ? null : $emailAccount->outgoing_secure_013]); config(['mail.username' => $emailAccount->outgoing_user_013]); config(['mail.password' => Crypt::decrypt($emailAccount->outgoing_pass_013)]); $supervisor = User::builder()->find((int) $this->request->input('supervisor')); $shop = Shop::builder()->find($octopusRequest->shop_id_078); // send email to supervisor $dataMessage = ['emailTo' => $supervisor->email_010, 'nameTo' => $supervisor->name_010 . ' ' . $supervisor->surname_010, 'subject' => trans($action == 'update' ? 'octopus::pulsar.request_subject_update' : 'octopus::pulsar.request_subject_create', ['id' => $octopusRequest->id_078, 'name' => $supervisor->name_010, 'surname' => $supervisor->surname_010]), 'octopusRequest' => $octopusRequest, 'supervisor' => $supervisor, 'shop' => $shop, 'actions' => 'supervisor_request_actions_notification']; Mail::send('octopus::emails.request_notification', $dataMessage, function ($m) use($dataMessage) { $m->to($dataMessage['emailTo'], $dataMessage['nameTo'])->subject($dataMessage['subject']); }); // send email to manager $dataMessage['actions'] = 'manager_request_actions_notification'; Mail::send('octopus::emails.request_notification', $dataMessage, function ($m) use($dataMessage, $managers) { $m->subject($dataMessage['subject']); foreach ($managers as $manager) { $m->to($manager->email_010, $manager->name_010 . ' ' . $manager->surname_010); } }); }
public function editCustomRecord($parameters) { // get resourse to know if set user, depend of view, todos or user todos $actions = $this->request->route()->getAction(); $parameters['resource'] = $actions['resource']; if ($parameters['object']->type_id_093 == 2) { $response = FacturaDirecta::getClient($parameters['object']->customer_id_093); $collection = collect(); // check that response does not contain httpStatus 404 if (!isset($response['httpStatus'])) { // set id like integer, to compare in select $response['id'] = (int) $response['id']; $parameters['customers'] = $collection->push(Miscellaneous::arrayToObject($response)); } } // types $parameters['types'] = array_map(function ($object) { $object->name = trans_choice($object->name, 1); return $object; }, config('projects.types')); // projects $parameters['projects'] = Project::builder()->where('end_date_090', '>', date('U'))->orWhereNull('end_date_090')->get(); // todo: cambiar por listado de programadores $users = User::builder()->get(); $parameters['users'] = $users->map(function ($user, $key) { $user->name = $user->name_010 . ' ' . $user->surname_010; return $user; }); return $parameters; }
private function sendOrderEmail($id, $action) { // send email confirmation $order = Order::builder()->find($id); $laboratory = Laboratory::builder()->where('favorite_073', true)->get()->first(); // get notification account $notificationsAccount = Preference::getValue('octopusNotificationsAccount', 8); $emailAccount = EmailAccount::find($notificationsAccount->value_018); if ($emailAccount == null) { return null; } config(['mail.host' => $emailAccount->outgoing_server_013]); config(['mail.port' => $emailAccount->outgoing_port_013]); config(['mail.from' => ['address' => $emailAccount->email_013, 'name' => $emailAccount->name_013]]); config(['mail.encryption' => $emailAccount->outgoing_secure_013 == 'null' ? null : $emailAccount->outgoing_secure_013]); config(['mail.username' => $emailAccount->outgoing_user_013]); config(['mail.password' => Crypt::decrypt($emailAccount->outgoing_pass_013)]); $supervisor = User::builder()->find($order->supervisor_id_079); $shop = Shop::builder()->find($order->shop_id_079); // send email to laboratory $dataMessage = ['emailTo' => $laboratory->email_073, 'nameTo' => $laboratory->company_name_073, 'subject' => trans($action == 'update' ? 'octopus::pulsar.order_subject_update' : 'octopus::pulsar.order_subject_create', ['id' => $order->id_079, 'name' => $supervisor->name_010, 'surname' => $supervisor->surname_010]), 'order' => $order, 'supervisor' => $supervisor, 'shop' => $shop, 'key' => Crypt::encrypt($order->id_079), 'actions' => 'laboratory_order_actions_notification']; Mail::send('octopus::emails.order_notification', $dataMessage, function ($m) use($dataMessage) { $m->to($dataMessage['emailTo'], $dataMessage['nameTo'])->subject($dataMessage['subject']); }); }
private function endTodo($todo) { // if has enDate, so user has finished tour todo_ if ($todo->finished_091) { // 1 - project if ($todo->type_id_091 == 1) { // updates hour projects $project = Project::builder()->find($todo->project_id_091); Project::where('id_090', $todo->project_id_091)->update(['consumed_hours_090' => $project->consumed_hours_090 + $todo->hours_091, 'total_hours_090' => $project->total_hours_090 - $todo->hours_091]); History::create(['user_id_093' => $todo->user_id_091, 'user_name_093' => $todo->user_name_091, 'type_id_093' => $todo->type_id_091, 'project_id_093' => $todo->project_id_091, 'customer_id_093' => $todo->customer_id_091, 'customer_name_093' => $todo->customer_name_091, 'title_093' => $todo->title_091, 'description_093' => $todo->description_091, 'price_093' => $todo->price_091, 'request_date_093' => $todo->request_date_091, 'request_date_text_093' => $todo->request_date_text_091, 'end_date_093' => $todo->end_date_091, 'end_date_text_093' => $todo->end_date_text_091, 'hours_093' => $todo->hours_091]); // delete todo_, after register history Todo::destroy($todo->id_091); } elseif ($todo->type_id_091 == 2) { $billing = Billing::create(['todo_id_092' => $todo->id_091, 'user_id_092' => $todo->user_id_091, 'user_name_092' => $todo->user_name_091, 'customer_id_092' => $todo->customer_id_091, 'customer_name_092' => $todo->customer_name_091, 'title_092' => $todo->title_091, 'description_092' => $todo->description_091, 'request_date_092' => $todo->request_date_091, 'request_date_text_092' => $todo->request_date_text_091, 'end_date_092' => $todo->end_date_091, 'end_date_text_092' => $todo->end_date_text_091, 'hours_092' => $todo->hours_091, 'price_092' => $todo->price_091]); // envío de notificación $notificationsAccount = Preference::getValue('projectsNotificationsAccount', 6); $emailAccount = EmailAccount::find($notificationsAccount->value_018); if ($emailAccount == null) { return null; } config(['mail.host' => $emailAccount->outgoing_server_013]); config(['mail.port' => $emailAccount->outgoing_port_013]); config(['mail.from' => ['address' => $emailAccount->email_013, 'name' => $emailAccount->name_013]]); config(['mail.encryption' => $emailAccount->outgoing_secure_013 == 'null' ? null : $emailAccount->outgoing_secure_013]); config(['mail.username' => $emailAccount->outgoing_user_013]); config(['mail.password' => Crypt::decrypt($emailAccount->outgoing_pass_013)]); $users = User::builder()->where('profile_id_010', (int) Preference::getValue('projectsBillingProfile', 6)->value_018)->where('access_010', true)->get(); $nameTo = ''; foreach ($users as $key => $user) { $nameTo .= $user->name_010 . ' ' . $user->surname_010; if ($key < count($users) - 1) { $nameTo .= ', '; } } $dataMessage = ['nameTo' => $nameTo, 'users' => $users, 'subject' => 'Notificación de facturación de tarea', 'billing' => $billing]; Mail::send('projects::emails.billing_notification', $dataMessage, function ($m) use($dataMessage) { $m->subject($dataMessage['subject']); foreach ($dataMessage['users'] as $user) { $m->to($user->email_010, $user->name_010 . ' ' . $user->surname_010); } }); } } }