예제 #1
0
 public function create(Request $request)
 {
     $validator = Validator::make($request->all(), ['startDate' => 'required', 'endDate' => 'required', 'startTime' => 'required|regex:/^[0-9]{2}:[0-9]{2}$/', 'endTime' => 'required|regex:/^[0-9]{2}:[0-9]{2}$/', 'subscriber' => 'required']);
     if ($validator->fails()) {
         Session::flash('breakCreateError', 'Ошибка при добавлении перерыва');
         return redirect()->back();
     }
     $subscriber = $request->input('subscriber');
     $startDate = Carbon::createFromFormat('d.m.Y H:i', $request->input('startDate') . ' ' . trim($request->input('startTime')));
     $endDate = Carbon::createFromFormat('d.m.Y H:i', $request->input('endDate') . ' ' . trim($request->input('endTime')));
     if (Schedule::createBreak($subscriber, $startDate, $endDate)) {
         return redirect('/subscribers/' . $subscriber);
     } else {
         Session::flash('breakCreateError', 'Ошибка при добавлении перерыва');
         return redirect()->back();
     }
 }
예제 #2
0
 public function parseMessage(Request $request)
 {
     $phone = $request->input('phone');
     $message = trim($request->input('message'));
     $subscriberId = Subscriber::getByPhoneNumber($phone)->id;
     if (preg_match('/Уш[оеё]л$/ui', $message)) {
         //создать новую запись
         if (Schedule::createBreak($subscriberId, Carbon::now('Europe/Moscow'), null)) {
             echo 'Created!';
         }
     } else {
         if (preg_match('/Пр[ие]ш[еёо]л$/ui', $message)) {
             //обновить существующую
             $breakId = Schedule::getLastBreak($subscriberId)->id;
             Schedule::updateEndDate($breakId, Carbon::now('Europe/Moscow'));
         }
     }
 }