/** * Store a newly created resource in storage. * * @param Request $request * @return Response */ public function store(Request $request) { $agent = new Agent(); $validator = Validator::make($request->all(), ['first_name' => 'required', 'last_name' => 'required', 'email' => 'required|email|unique:agents', 'password' => 'required']); if ($validator->fails()) { $messages = $validator->messages(); //dd($messages); return redirect::route('agent_add')->withErrors($validator)->withInput(); } else { $first_name = $request->input('first_name'); $last_name = $request->input('last_name'); $email_address = $request->input('email'); $password = $request->input('password'); $phone = $request->file('phone'); if ($phone) { $agent->phone = $phone; } $agent->first_name = $first_name; $agent->last_name = $last_name; $agent->email = $email_address; $agent->password = $password; if ($request->file('user_image')) { $file = Input::file('user_image'); $imagename = time() . '.' . $file->getClientOriginalExtension(); $path = public_path('upload/agentprofile/' . $imagename); $image = \Image::make($file->getRealPath())->save($path); $th_path = public_path('upload/agentprofile/thumb/' . $imagename); $image = \Image::make($file->getRealPath())->resize(128, 128)->save($th_path); $agent->image = $imagename; } $agent->save(); return redirect::route('agent_management')->with('success', 'Agent inserted successfully.'); } }
public function testCallPlanet() { // Given $fakePhoneNumber = '+1555999000'; $newAgent = new Agent(['extension' => 'Brodo', 'phone_number' => $fakePhoneNumber]); $newAgent->save(); // When $response = $this->call('GET', route('extension-connection'), ['Digits' => 2]); $menuResponse = new SimpleXMLElement($response->getContent()); // Then $this->assertEquals($fakePhoneNumber, $menuResponse->Dial->Number); }
public function testIndex() { // Given $fakeNumber = '+15558884441'; $fakeRecording = 'http://help-pls.mp3'; $fakeTranscription = 'Help me I am trapped in a phone exchange'; $newAgent = new Agent(['extension' => 'Alderaan', 'phone_number' => '+15559997771']); $newAgent->save(); $newRecording = new Recording(['caller_number' => $fakeNumber, 'transcription' => $fakeTranscription, 'recording_url' => $fakeRecording, 'agent_id' => $newAgent->id]); $newRecording->save(); // When $response = $this->call('GET', route('agent-recordings') . '?agentNumber=15559997771'); $responseContext = $response->getOriginalContent(); // Then $this->assertCount(1, $responseContext['recordings']); $recordings = $responseContext['recordings']; $this->assertEquals($fakeNumber, $recordings[0]->caller_number); $this->assertEquals($fakeTranscription, $recordings[0]->transcription); $this->assertEquals($fakeRecording, $recordings[0]->recording_url); $this->assertEquals($newAgent->id, $recordings[0]->agent_id); }
/** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(Request $request) { // validate request $validateAgent = Validator::make($request->get('Agent'), Agent::$rules); $validationMessages = []; if ($validateAgent->fails() or count($validationMessages) > 0) { $validationMessages = array_merge_recursive($validateAgent->messages()->toArray(), $validationMessages); return redirect()->back()->withErrors($validationMessages)->withInput(); } $user = $request->user(); // insert Agent $agent = new Agent(); //$agent->key = Common::createKeyURL($request->input('Agent.name')); $agent->name = $request->input('Agent.name'); $agent->email = $request->input('Agent.email'); $agent->mobile = $request->input('Agent.mobile'); // get thumnail $agent->thumnail = $request->input('Agent.thumnail'); $agent->priority = $request->input('Agent.priority'); $agent->active = $request->input('Agent.active'); $agent->created_by = $user->name; $agent->updated_by = $user->name; $agent->save(); // save attachments if ($request->input('Agent.attachments') != "") { $requestAttachments = explode(',', $request->input('Agent.attachments')); $attachments = []; foreach ($requestAttachments as $key => $value) { array_push($attachments, new Attachment(['entry_id' => $agent->id, 'table_name' => 'agents', 'path' => $value, 'priority' => 0, 'is_publish' => 1])); } if (count($attachments) > 0) { $agent->attachments()->saveMany($attachments); } } return redirect()->route('admin.agents.index'); }