Пример #1
0
 /**
  *  Create a new newsletter from request.
  *
  * @param $request input form data
  * @return User
  */
 public function pushNewsletter($request)
 {
     $input = $request->all();
     $newsletter = new Newsletter();
     $newsletter->fill($input);
     $newsletter->save();
     return $newsletter;
 }
 public function newsletter_save_and_send(ClientsNewsletterFormRequest $request)
 {
     $email_subject = $request->get('email_subject');
     $email_body = $request->get('email_body');
     $data = ['email_subject' => $email_subject, 'email_body' => $email_body];
     //functionality for saving to database
     $newsletter = new Newsletter($data);
     $newsletter->save();
     //functionality fo sending email
     $data = ['email_subject' => $email_subject, 'email_body' => $email_body];
     Mail::send('bard_clients/newsletter_template', $data, function ($message) {
         $message->from('*****@*****.**', 'learning laravel 2');
         $message->bcc($this->all_clients_email())->subject(Input::get('email_subject'));
     });
     return redirect('clients/create_newsletter')->withStatus('Newsletter sent successfully');
 }
Пример #3
0
 /**
  * @param $request
  * @return bool
  */
 private function isValid($request)
 {
     $validated = true;
     if ($this->newsletter->isNewsletter($request->input('email'))) {
         $validated = false;
     }
     return $validated;
 }
 public function delete(Request $request)
 {
     if (!ACL::hasPermission('newsletter', 'delete')) {
         return redirect(route('newsletter'))->withErrors(['Você não tem permissão para deletar e-mails.']);
     }
     Newsletter::find($request->get('newsletterId'))->delete();
     $success = "E-mail excluído com sucesso.";
     return redirect(route('newsletter'))->with(compact('success'));
 }
Пример #5
0
 public function saveEmail(Request $request)
 {
     $validate = Validator::make($request->all(), ['email' => 'required|email|unique:newsletter']);
     if (!$validate->fails()) {
         Newsletter::create($request->all());
         return back()->withSuccess('Your email has been saved successfully.');
     } else {
         return back()->withErrors($validate->errors()->all());
     }
 }
Пример #6
0
 public function register(NewsletterRequest $request)
 {
     if ($request->ajax()) {
         Newsletter::create($request->all());
         // Pushing Jobs Onto The Queue
         $job = (new SendNewsletterEmail($request->get('email')))->onQueue('emails');
         $this->dispatch($job);
         return 1;
     }
 }
 public function post(Request $request)
 {
     //dd($request->all());
     $validation = Validator::make($request->all(), ['email' => 'required|email|unique:newsletter|max:40']);
     $array = [];
     if (!$validation->fails()) {
         $newsletterConsult = Newsletter::where('email', $request->email)->count();
         if ($newsletterConsult == 0) {
             $newsletter = new Newsletter();
             $newsletter->email = $request->email;
             $newsletter->save();
             $array = ['error' => 0, 'msg' => 'E-mail cadastrado com sucesso!'];
         } else {
             $array = ['error' => 1, 'msg' => 'E-mail já cadastrado anteriormente!'];
         }
     } else {
         $array = ['error' => 1, 'msg' => 'Erro ao cadastrar o e-mail!'];
     }
     return json_encode($array);
 }
Пример #8
0
 public function subscribe($email)
 {
     if (filter_var($email, FILTER_VALIDATE_EMAIL)) {
         $alreadyExists = count(Newsletter::where('email', $email)->first());
         if ($alreadyExists > 0) {
             echo 0;
         } else {
             DB::table('newsletter')->insert(['email' => $email]);
             echo 1;
         }
     } else {
         echo 2;
     }
 }
 public function send(Request $request)
 {
     //WEBSITE SETTINGS
     $websiteSettings = \App\Exceptions\Handler::readFile("websiteSettings.json");
     $this->validate($request, ['patientName' => 'required|max:100', 'weight' => 'required|max:5', 'height' => 'required|max:4', 'reactionDescription' => 'required', 'birthDate' => 'required|max:10', 'gender' => 'required', 'productReaction' => 'required|max:100', 'productReasonOfUse' => 'required', 'productBatch' => 'required|max:100', 'notifierName' => 'required|max:100', 'peopleType' => 'required', 'cpf' => 'required_if:peopleType,Física|max:14', 'notifierBirthDate' => 'required_if:peopleType,Física|max:10', 'cnpj' => 'required_if:peopleType,Jurídica|max:18', 'youAre' => 'required', 'phone' => 'required_without:mobile', 'mobile' => 'required_without:phone', 'email' => 'required|email|max:40', 'newsletter' => 'required'], ['patientName.required' => 'Informe o nome do paciente', 'patientName.max' => 'O nome do paciente não pode passar de :max caracteres', 'weight.required' => 'Informe o peso do paciente', 'weight.max' => 'O peso do paciente não pode passar de :max caracteres', 'height.required' => 'Informe a altura do paciente', 'height.max' => 'A altura do paciente não pode passar de :max caracteres', 'reactionDescription.required' => 'Descreva a reação do paciente', 'birthDate.required' => 'Informe a data de nascimento do paciente', 'birthDate.max' => 'A data de nascimento do paciente não pode passar de :max caracteres', 'gender.required' => 'Marque o sexo do paciente', 'productReaction.required' => 'Informe o produto que causou a reação', 'productReaction.max' => 'O nome do produto não pode passar de :max caracteres', 'productReasonOfUse.required' => 'Informe o motivo do uso do produto', 'productBatch.required' => 'Informe o lote do produto', 'productBatch.max' => 'O lote do produto não pode passar de :max caracteres', 'notifierName.required' => 'Informe o nome do notificador', 'notifierName.max' => 'O nome do notificador não pode passar de :max caracteres', 'peopleType.required' => 'Informe o tipo de pessoa', 'cpf.required_if' => 'Informe o CPF do notificador', 'cpf.max' => 'O CPF do notificador não pode passar de :max caracteres', 'notifierBirthDate.required_if' => 'Informe da data de nascimento do notificador', 'notifierBirthDate.max' => 'A data de nascimento do notificador não pode passar de :max caracteres', 'cnpj.required_if' => 'Informe o CNPJ do notificador', 'cnpj.max' => 'O CNPJ do notificador não pode passar de :max caracteres', 'youAre.required' => 'Informe qual das informações você se enquadra', 'phone.required_without' => 'Informe um número de telefone', 'mobile.required_without' => 'ou um número de celular', 'email.required' => 'Informe um e-mail para contato', 'email.email' => 'Informe um e-mail válido', 'email.max' => 'O e-mail não pode passar de :max caracteres', 'newsletter.required' => 'Marque se você deseja ou não receber nossos e-mails']);
     if ($request->newsletter == 'Sim') {
         $newsletterConsult = Newsletter::where('email', '=', $request->email)->count();
         if ($newsletterConsult == 0) {
             $newsletter = new Newsletter();
             $newsletter->email = $request->email;
             $newsletter->save();
         }
     }
     array_set($request, "date", Carbon::now()->format('d/m/Y'));
     $emails = EmailsFarmacovigilance::find(1);
     Mail::send('website.farmacovigilance.email', ['request' => $request], function ($message) use($emails) {
         $emailsSend = explode(',', $emails->emails);
         foreach ($emailsSend as $email) {
             $message->from('*****@*****.**', 'Teuto/Pfizer')->subject('Farmacovigilância [espacofarmaceutico.com.br]')->to($email);
         }
     });
     $success = "E-mail enviado com sucesso!";
     return redirect(url('farmacovigilancia'))->with(compact('success'));
 }
Пример #10
0
 /**
  * @param AjaxFormRequest $request
  * @return \Illuminate\Http\JsonResponse
  */
 public function subscribeNewsletter(AjaxFormRequest $request)
 {
     $validator = Validator::make($request->all(), $request->rules());
     // check if the validator failed -----------------------
     if ($validator->fails()) {
         return response()->json(array('status' => 'ko', 'errors' => $validator->getMessageBag()->toArray()));
     } else {
         /*
          *  INSERT RECORD IN DB AND NOTIFY SUBSCRIPTION
          *  @event App\Events\Registration\NewsletterSubscribe
          */
         $newsletter = Newsletter::addToDefaultList($request->email);
         return response()->json(array('status' => 'ok', 'msg' => trans('website.newsletter_subscribe_ok')));
     }
 }
Пример #11
0
 public function __construct()
 {
     $A_authors = Author::all();
     view()->share('A_authors', $A_authors);
     $A_projects = Project::all();
     view()->share('A_projects', $A_projects);
     $A_blogs = Blog::all();
     view()->share('A_blogs', $A_blogs);
     $A_newsletters = Newsletter::all();
     view()->share('A_newsletters', $A_newsletters);
     $A_quotations = Quotation::all();
     view()->share('A_quotations', $A_quotations);
     $quotations = Quotation::all();
     //dump($quotations);
     $quotations = count($quotations) > 1 ? $quotations->random(2) : $quotations;
     view()->share('quotations', $quotations);
 }
Пример #12
0
 public function subscribe(Request $request, NewsletterManager $newsletterManager)
 {
     $this->validate($request, ['email' => 'email|required|unique:newsletter,email']);
     $options = Config::get('onepager.options');
     $onepager_options = [];
     foreach ($options as $option) {
         if ($request->has($option['name'])) {
             if ($option['data']) {
                 array_push($onepager_options, ['name' => $option['name'], 'label' => $option['label'], 'content' => $request->get($option['name'] . '_data')]);
             } else {
                 array_push($onepager_options, ['name' => $option['name'], 'label' => $option['label']]);
             }
         }
     }
     Newsletter::create(['email' => $request->input('email'), 'onepager_options' => $onepager_options]);
     $newsletterManager->addEmailToList($request->input('email'));
     return response()->json(['status' => 'ok', 'message' => 'Email added to newsletter.']);
 }
 public function index()
 {
     $subscribers = Newsletter::paginate(10);
     $count = count(Newsletter::all());
     return view('dashboard.newsletter.index', ['subscribers' => $subscribers, 'count' => $count]);
 }
Пример #14
0
 public function deleteNewsletter($id)
 {
     $newsletter = Newsletter::findOrFail($id);
     return $id;
     //return view('administration.blog.showBlog')->with('blog', $blog);
 }
Пример #15
0
 /**
  * Show the application dashboard.
  *
  * @return \Illuminate\Http\Response
  */
 public function index()
 {
     $emails = Newsletter::latest()->paginate(30);
     return view('admin.home', ['emails' => $emails]);
 }
 /**
  * Remove the specified resource from storage.
  *
  * @param  int  $id
  *
  * @return Response
  */
 public function destroy($id)
 {
     Newsletter::destroy($id);
     Session::flash('flash_message', 'Newsletter deleted!');
     return redirect('auth/newsletters');
 }
 /**
  * Handle the event.
  *
  * @param  UserRegistered  $event
  * @return void
  */
 public function handle(UserRegistered $event)
 {
     //add user to newsletter default  recipient
     // TODO  check if  emailis  already present /create trait)
     Newsletter::addToDefaultList($event->user->email);
 }
Пример #18
0
    return redirect('https://www.youtube.com/watch?v=gS65yoNcq88', 307);
});
Route::get('/live', function () {
    return redirect('https://www.youtube.com/watch?v=gS65yoNcq88', 307);
});
/*
 * Newsletter routes
 *
 * Muig9%41
 */
Route::group(['middleware' => 'auth', 'prefix' => 'dashboard', 'namespace' => 'Dashboard'], function () {
    Route::get('/', function () {
        return redirect()->route('dashboard.newsletter.index');
    });
    Route::get('/export', function () {
        $newsletters = \App\Newsletter::get();
        $subscriber = new \Illuminate\Support\Collection();
        foreach ($newsletters as $newsletter) {
            $subscriber->push(['id' => $newsletter->id, 'email' => $newsletter->email]);
        }
        Excel::create('Newsletter_Subscriber', function ($excel) use($subscriber) {
            $excel->sheet('Subscriber', function ($sheet) use($subscriber) {
                $sheet->fromArray($subscriber, null, 'A1', false);
            });
        })->download('csv');
    });
    Route::get('/newsletter', ['as' => 'dashboard.newsletter.index', 'uses' => 'NewsletterController@index']);
});
/*
 * Authentication routes
 */
 public function newsletter(Request $request)
 {
     Newsletter::create($request->all());
     return redirect()->back()->with('success_message', 'Su correo se guardo satisfactoriamente');
 }