/**
  * Store a newly created resource in storage.
  *
  * @return Response
  */
 public function postCreate()
 {
     // Declare the rules for the form validation
     $rules = array('name' => 'required|min:3', 'description' => 'required|min:3', 'email' => 'required|min:3', 'callback' => 'required|min:3', 'website' => 'required|min:3');
     // Validate the inputs
     $validator = Validator::make(Input::all(), $rules);
     // Check if the form validates with success
     if ($validator->passes()) {
         // Create a new blog post
         $user = Auth::user();
         // Update the blog post data
         $this->client->name = Input::get('name');
         $this->client->id = $this->keygen();
         $this->client->secret = $this->keygen();
         //$this->client->user_id          = $user->id;
         // Was the blog post created?
         if ($this->client->save()) {
             //Create Endpoint Object
             $endpoint = new ClientEndpoint(array('redirect_uri' => Input::get('callback')));
             $metadata = array(new ClientMetadata(array('key' => 'slug', 'value' => Str::slug(Input::get('name')))), new ClientMetadata(array('key' => 'description', 'value' => Str::slug(Input::get('description')))), new ClientMetadata(array('key' => 'email', 'value' => Str::slug(Input::get('email')))), new ClientMetadata(array('key' => 'website', 'value' => Str::slug(Input::get('website')))));
             if (!$this->client->endpoint()->save($endpoint)) {
                 //delete client
                 $id = $this->client->id;
                 $this->client->delete();
                 // Was the blog post deleted?
                 $client = Client::find($id);
                 if (empty($client)) {
                     // Redirect to the blog post create page
                     return Redirect::to('admin/clients/create')->with('error', Lang::get('admin/clients/messages.create.endpoint_error'));
                 }
             }
             if (!$this->client->metadata()->saveMany($metadata)) {
                 //delete client
                 $id = $this->client->id;
                 $this->client->delete();
                 // Was the blog post deleted?
                 $client = Client::find($id);
                 if (empty($client)) {
                     // Redirect to the blog post create page
                     return Redirect::to('admin/clients/create')->with('error', Lang::get('admin/clients/messages.create.metadata_error'));
                 }
             }
             // Redirect to the new blog post page
             return Redirect::to('admin/clients/' . $this->client->id . '/edit')->with('success', Lang::get('admin/clients/messages.create.success'));
         }
         // Redirect to the blog post create page
         return Redirect::to('admin/clients/create')->with('error', Lang::get('admin/clients/messages.create.error'));
     }
     // Form validation failed
     return Redirect::to('admin/clients/create')->withInput()->withErrors($validator);
 }
Example #2
0
 public function testPutEvent()
 {
     Client::relateIQ(GlobalVar::KEY, GlobalVar::SECRET);
     Client::endpoint('https://api.relateiq.com/v2/events');
     Client::headers(["Content-type" => "application/json", "Accept" => "application/json"]);
     $data = ["subject" => "Support Ticket #12345: How do I create an event?", "body" => "Just called Tim and walked him through how to create an event with the new API.\n-James.", "participantIds" => [["type" => "email", "value" => "*****@*****.**"], ["type" => "email", "value" => "*****@*****.**"], ["type" => "phone", "value" => "8001235555"]]];
     $res = Client::put('', $data, []);
     $this->assertEquals(204, $res->code);
 }
Example #3
0
 public function delete($endpoint, $options = [])
 {
     $uri = Client::endpoint() . $endpoint . Client::getUriOptions($options);
     $response = \Httpful\Request::delete($uri)->authenticateWith(Client::key(), Client::secret())->addHeaders(Client::headers())->send();
     return $response;
 }