/**
  * Отображает индексную страницу модуля
  *
  * @return \Illuminate\View\View
  */
 public function getIndex()
 {
     // Ищем данные прайс-листа
     $data['article'] = Article::firstOrCreate(['type' => 'price_list_description']);
     $data['file_name'] = Memory::get('price.primer.file_name');
     return view('marketing.companies.price_list.index', $data);
 }
 /**
  * Handle the event.
  *
  * @param  SomeEvent  $event
  * @return void
  */
 public function handle(OrderWasCreatedEvent $event)
 {
     Mail::send('emails.order', ['order' => $event->order], function ($message) {
         $message->from('*****@*****.**');
         $message->to(Memory::get('site.email_to', '*****@*****.**'))->subject('Заказ с сайта kadsgroup.com.ua');
     });
 }
 /**
  * Обработчик запроса на сохранение данных.
  *
  * @param StoreContactsRequest $request
  * @return \Illuminate\Http\RedirectResponse
  */
 public function postIndex(StoreContactsRequest $request)
 {
     // Сохраняем координаты в таблице настроек
     Memory::put('contacts.latitude', $request->get('latitude'));
     Memory::put('contacts.longitude', $request->get('longitude'));
     // Данные статей
     Model::unguard();
     $contacts_form_text = Article::firstOrNew(['type' => 'contacts_form_text']);
     $contacts_contacts = Article::firstOrNew(['type' => 'contacts_contacts']);
     $contacts_working_time = Article::firstOrNew(['type' => 'contacts_working_time']);
     $contacts_why_us = Article::firstOrNew(['type' => 'contacts_why_us']);
     // Обновляем тексты
     $contacts_form_text->full_text = $request->get('contacts_form_text');
     // настройки СЕО
     $contacts_form_text->page_title = $request->get('page_title');
     $contacts_form_text->page_keywords = $request->get('page_keywords');
     $contacts_form_text->page_description = $request->get('page_description');
     $contacts_form_text->page_h1 = $request->get('page_h1');
     $contacts_contacts->full_text = $request->get('contacts_contacts');
     $contacts_working_time->full_text = $request->get('contacts_working_time');
     $contacts_why_us->full_text = $request->get('contacts_why_us');
     // Сохранение
     $contacts_form_text->save();
     $contacts_contacts->save();
     $contacts_working_time->save();
     $contacts_why_us->save();
     Model::reguard();
     return redirect()->action('Admin\\ContactsController@getIndex')->with('success', 'Данные успешно сохранены.');
 }
 /**
  * Обработчик запроса на отправку сообщения
  *
  * @param ContactsMessageRequest $request
  * @return \Illuminate\Http\RedirectResponse
  */
 public function postIndex(ContactsMessageRequest $request)
 {
     // Отправляем сообщение на email
     $subject = 'Повідомлення користувача веб-сайту ' . url();
     Mail::raw(nl2br($request->get('message')), function ($message) use(&$request, &$subject) {
         $message->from($request->get('email'), $request->get('name'));
         $message->subject($subject);
         $message->to(Memory::get('site.email_to', '*****@*****.**'));
     });
     if ($request->ajax()) {
         return response()->json(['success' => true]);
     } else {
         return redirect()->action('Marketing\\ContactsController@getIndex')->with('success', 'Спасибо, сообщение успешно отправлено. Наши менеджеры ответят на него в ближайшее время!');
     }
 }
 /**
  * Обработчик запроса на сохранение данных.
  *
  * @param StoreSettingsRequest $request
  * @return \Illuminate\Http\RedirectResponse
  */
 public function postIndex(StoreSettingsRequest $request)
 {
     // Сохраняем координаты в таблице настроек
     Memory::put('site.email_to', $request->get('email_to'));
     // JivoSite
     Memory::put('site.jivosite_enabled', $request->get('jivosite_enabled', 0));
     // Данные статей
     $mainArticle = Article::whereType('main_article')->first();
     $footerAbout = Article::whereType('footer_about')->first();
     $footerContacts = Article::whereType('footer_contacts')->first();
     // Обновляем тексты
     $mainArticle->full_text = $request->get('main_article');
     $footerAbout->full_text = $request->get('footer_about');
     $footerContacts->full_text = $request->get('footer_contacts');
     // Сохранение
     $mainArticle->save();
     $footerAbout->save();
     $footerContacts->save();
     return redirect()->back()->with('success', 'Данные успешно сохранены.');
 }
 /**
  * Обработчик запроса на сохранение нового прайса.
  *
  * @param StorePriceListsRequest $request
  * @return \Illuminate\Http\RedirectResponse
  * @throws \App\Services\Exception
  */
 public function postIndex(StorePriceListsRequest $request)
 {
     // Изменяем статью
     $article = Article::whereType('price_list_description')->first();
     $article->full_text = $request->get('full_text');
     $article->page_title = $request->get('page_title');
     $article->page_keywords = $request->get('page_keywords');
     $article->page_description = $request->get('page_description');
     $article->page_h1 = $request->get('page_h1');
     $article->save();
     // Сохраняем файл прайса
     if ($request->hasFile('file_name')) {
         // Удаляем старый файл
         File::delete('assets/price-list/' . Memory::get('price.primer.file_name'));
         // Сохраняем загруженный файл
         $fileName = 'prices.' . $request->file('file_name')->getClientOriginalExtension();
         $request->file('file_name')->move('assets/price-list/', $fileName);
         // Обновляем данные БД
         Memory::put('price.primer.file_name', $fileName);
         Memory::put('price.primer.last_update', Carbon::now());
     }
     return redirect()->back()->with('success', 'Данные успешно обновлены.');
 }