Ejemplo n.º 1
0
 public function saveMailToDbAndSendMail($_current_user_id, $_ad_user_id, $_ad_id, $_text, $_mail_to)
 {
     //generate conversation hash
     $hash_array = array($_current_user_id, $_ad_user_id, $_ad_id);
     sort($hash_array);
     $hash = md5(join('-', $hash_array));
     //save message
     $userMail = new UserMail();
     $userMail->ad_id = $_ad_id;
     $userMail->user_id_from = $_current_user_id;
     $userMail->user_id_to = $_ad_user_id;
     $userMail->mail_text = Util::nl2br(strip_tags($_text));
     $userMail->mail_date = date('Y-m-d H:i:s');
     $userMail->mail_hash = $hash;
     $userMail->save();
     //save message status
     $userMailStatus = new UserMailStatus();
     $userMailStatus->mail_id = $userMail->mail_id;
     $userMailStatus->user_id = $_ad_user_id;
     $userMailStatus->mail_status = UserMailStatus::MAIL_STATUS_UNREAD;
     $userMailStatus->mail_deleted = UserMailStatus::MAIL_STATUS_NOT_DELETED;
     $userMailStatus->mail_hash = $hash;
     $userMailStatus->save();
     //save status for the other user
     $userMailStatus = new UserMailStatus();
     $userMailStatus->mail_id = $userMail->mail_id;
     $userMailStatus->user_id = $_current_user_id;
     $userMailStatus->mail_status = UserMailStatus::MAIL_STATUS_SEND;
     $userMailStatus->mail_deleted = UserMailStatus::MAIL_STATUS_NOT_DELETED;
     $userMailStatus->mail_hash = $hash;
     $userMailStatus->save();
     //send mail to ad publisher
     Mail::send('emails.ad_contact', ['userMail' => $userMail], function ($m) use($_mail_to) {
         $m->from('*****@*****.**', 'dclassifieds ad contact');
         $m->to($_mail_to)->subject('You have new message in DClassifieds');
     });
 }
Ejemplo n.º 2
0
 public function delete(Request $request)
 {
     //locations to be deleted
     $data = [];
     //check for single delete
     if (isset($request->id)) {
         $data[] = $request->id;
     }
     //check for mass delete if no single delete
     if (empty($data)) {
         $data = $request->input('mail_id');
     }
     //delete
     if (!empty($data)) {
         UserMail::destroy($data);
         //clear cache, set message, redirect to list
         Cache::flush();
         session()->flash('message', trans('admin_common.User Mail deleted'));
         return redirect(url('admin/mail'));
     }
     //nothing for deletion set message and redirect
     session()->flash('message', trans('admin_common.Nothing for deletion'));
     return redirect(url('admin/mail'));
 }