Esempio n. 1
0
 /**
  * Update Events from CRM
  */
 public function onUpdateFromCrm()
 {
     $crmuserevents = CRMUserEvent::isNotUpdated()->with(['user', 'event'])->get();
     \CW::info(['userevents' => $crmuserevents]);
     if (count($crmuserevents) == 0) {
         Flash::info("No UserEvents to Create/Update");
         // echo "ERROR!";
         return;
     }
     $crmuserevents->each(function ($userevent) {
         if ($userevent->user && $userevent->event) {
             \CW::info([$userevent]);
             $cmsuser = User::where('email', $userevent->user->email)->first();
             $cmsevent = Event::where('crm_event_id', $userevent->event->id)->with('course')->first();
             $cmscourse = $cmsevent->course;
             $cmsusereventstate = UserEventState::where('crm_state_id', $userevent->state_id)->first();
             // $cmsuserevent = UserEvent::firstOrNew(['crm_event_id' => $userevent->event->id, 'user_id' => $cmsuser->id]);
             // $cmsuserevent = $cmsuser->userevents()
             // $cmsuserevent = $cmsuserevent
             $cmsuserevent = UserEvent::where('user_id', $cmsuser->id)->where('event_id', $cmsevent->id)->first();
             if (!$cmsuserevent) {
                 $cmsuserevent = new UserEvent();
             }
             \CW::info([$cmsuser, $cmsevent, $cmscourse, $cmsuserevent, $cmsusereventstate]);
             // if (!$cmsuser) {
             //     Log::warning("CMSUser is NULL\n");
             // }
             // if (!$cmsevent) {
             //     Log::warning("CMSEvent is NULL\n");
             // }
             // if (!$cmscourse) {
             //     Log::warning("CMSCourse is NULL\n");
             // }
             // if (!$cmsuserevent) {
             //     Log::warning("CMSUserEvent is NULL\n");
             // }
             // if (!$cmsusereventstate) {
             //     Log::warning("CMSUserEventState is NULL\n");
             // }
             $cmsuserevent->user()->associate($cmsuser);
             $cmsuserevent->course()->associate($cmscourse);
             $cmsuserevent->state()->associate($cmsusereventstate);
             $cmsuserevent->event()->associate($cmsevent);
             $cmsuserevent->fill(['course_type_id' => $cmscourse->course_type_id, 'course_category_id' => $cmscourse->course_category_id, 'crm_event_id' => $userevent->event->id]);
             \CW::info([$cmsuserevent]);
             $cmsuserevent->save();
             $userevent->update(['is_updated' => true]);
         }
     });
     Flash::success("UserEvents is update");
 }
Esempio n. 2
0
 public function onAddCourse()
 {
     extract(post());
     $user = $this->user();
     if (!$user) {
         Flash::info('Войдите или Зарегистрируйтесь, чтобы записаться на курс!');
         return ['#layout-flash-messages' => $this->renderPartial('@message')];
     }
     $course = CourseModel::find($course_id);
     // $userevents = $user->userevents()->isInOrder();
     try {
         $el = '#js' . $course_id . $type_id . $cat_id;
         // CW::info(['check' => $order->courses->contains('id', $course->id)]);
         if ($user->userevents->contains('course_id', $course->id)) {
             Flash::info('Учебная программа уже в личном кабинете');
             return [$el => $this->renderPartial('@button'), '#layout-flash-messages' => $this->renderPartial('@message')];
         }
         $userevent = new UserEventModel();
         $userevent->user()->associate($user);
         $userevent->course()->associate($course);
         $userevent->state()->associate(UserEventStateModel::find(1));
         // Статус: В заявке
         $userevent->fill(['course_type_id' => $type_id, 'course_category_id' => $cat_id]);
         $userevent->save();
         Flash::success('Учебная программа добавлена в личный кабинет');
         return [$el => $this->renderPartial('@button'), '#layout-flash-messages' => $this->renderPartial('@message')];
     } catch (Exception $e) {
         Flash::error('Ошибка!');
         return ['#layout-flash-messages' => $this->renderPartial('@message')];
     }
 }
Esempio n. 3
0
 public function onRestore()
 {
     extract(post());
     CW::info(['onRestore_POST' => post()]);
     $user = $this->user();
     if (!$user) {
         return;
     }
     $userevent = UserEventModel::find($userevent_id);
     CW::info(['userevent' => $userevent]);
     if (!$userevent) {
         return;
     }
     $userevent->state()->associate(UserEventStateModel::find(1));
     // Статус: В заявке
     $userevent->save();
 }