예제 #1
0
 /**
  * Create Candidate
  * @return \Illuminate\Http\JsonResponse
  */
 public function create()
 {
     $success = false;
     if ($this->validator->validate(\Input::all())) {
         $candidateData = \Input::all();
         $candidateData['user_id'] = \Auth::user()->id;
         // TODO: save uploaded image :|
         $candidate = Candidate::create($candidateData);
         $success = $candidate == true;
     }
     return \Response::json(['success' => $success, 'data' => $candidate->getTransformed(new CandidateTransformer())]);
 }
예제 #2
0
 public function run()
 {
     $faker = Faker::create();
     $candidates = Candidate::lists('id');
     User::create(['username' => "demoguy", 'first_name' => "demo", 'last_name' => "guy", 'email' => "*****@*****.**", 'password' => 'secret', 'confirmed' => 1, 'userable_type' => 'Motibu\\Models\\Candidate', 'userable_id' => 1]);
     foreach (range(2, 10) as $index) {
         User::create(['username' => $faker->userName(), 'first_name' => $faker->firstName, 'last_name' => $faker->lastName, 'email' => $faker->email(), 'password' => 'secret', 'confirmed' => 1, 'userable_type' => 'Motibu\\Models\\Candidate', 'userable_id' => $faker->randomElement($candidates)]);
     }
     $users = User::all();
     foreach (range(1, 10) as $index) {
         $users[$index - 1]->agencies()->attach($index);
         $users[$index - 1]->roles()->attach(4);
         // agency admin
     }
     $locations = [['location' => "Piarco International Airport (POS), Golden Grove Road, Piarco, Trinidad and Tobago", 'latitude' => 10.5976964, 'longitude' => -61.339527], ['location' => "Pos, Jalan Semeru Selatan, Dampit, Malang 65181, Republic of Indonesia", 'latitude' => -8.2109083, 'longitude' => 112.7520661], ['location' => "Pos, Jalan W. Monginsidi, Kendari, Kota Kendari 93127, Republic of Indonesia", 'latitude' => -3.970164, 'longitude' => 122.588356], ['location' => "Pos, Jalan Raya Sumorame, Candi, Kabupaten Sidoarjo 61271, Republic of Indonesia", 'latitude' => -7.4936845, 'longitude' => 112.7057069], ['location' => "New Delhi, Delhi, India", 'latitude' => 28.6139391, 'longitude' => 77.2090212], ['location' => "Delhi, Haixi, Qinghai, China", 'latitude' => 37.369436, 'longitude' => 97.360985], ['location' => "Delhi, NY 13753, USA", 'latitude' => 42.27814009999999, 'longitude' => -74.91599459999999]];
     // create candidates
     foreach (range(1, 10) as $index) {
         $randLoc = $faker->randomElement($locations);
         $user = User::create(['username' => $faker->userName(), 'first_name' => $faker->firstName, 'last_name' => $faker->lastName, 'email' => $index == 1 ? "*****@*****.**" : $faker->email(), 'password' => 'secret', 'confirmed' => 1]);
         $user->roles()->attach(3);
         // candidate
         Candidate::create(['user_id' => 10 + $index, 'residency' => $faker->city . ', ' . $faker->state . ' ' . $faker->country, 'telephone' => '5553882838', 'about' => $faker->paragraph(), 'location_name' => $randLoc['location'], 'location_latitude' => $randLoc['latitude'] * 1000, 'location_longitude' => $randLoc['longitude'] * 1000]);
     }
     // create agents
     foreach (range(1, 10) as $index) {
         foreach (range(1, 2) as $bleh) {
             $user = User::create(['username' => $faker->userName(), 'first_name' => $faker->firstName, 'last_name' => $faker->lastName, 'email' => $faker->email(), 'password' => 'secret', 'confirmed' => 1]);
             $user->roles()->attach(5);
             // agent
             Agent::create(['user_id' => $user->id, 'telephone' => '5553882838', 'agency_id' => $index, 'name' => $user->first_name . ' ' . $user->last_name]);
             // \DB::table('agent_to_job')->insert( [
             //     'user_id' => $user->id,
             //     'job_id' => $faker->numberBetween(1, 50)
             // ]);
         }
     }
     // Create a Super Admin
     $super = User::create(['username' => "demosuper", 'first_name' => "demo", 'last_name' => "guy", 'email' => "*****@*****.**", 'password' => 'secret', 'confirmed' => 1, 'userable_type' => 'Motibu\\Models\\Candidate', 'userable_id' => 1]);
     $super->roles()->attach(1);
     Plan::create(['title' => 'Basic', 'description' => 'Monthly Basic Plan', 'duration' => '30', 'cost_in_cents' => 2000, 'meta' => '{"can_contact_candidates": "true", "number_of_jobs_per_month": "5"}']);
 }
예제 #3
0
 public function register()
 {
     $success = false;
     $user = Input::only('email', 'password', 'confirm_password', 'first_name', 'last_name');
     $user['username'] = $user['email'];
     Log::info(Input::all());
     try {
         if ($this->userValidator->validate($user)) {
             $newUser = User::create($user);
             $success = $newUser == true;
             // $success = $success &&
             $newUser->roles()->attach(Role::findByName('Candidate')->id);
             if ($this->candidateValidator->validate(['user_id' => $newUser->id])) {
                 $is_external_vcard = 0;
                 if (Input::get("is_external_vcard") == 'true') {
                     $is_external_vcard = 1;
                 }
                 $success = $success && Candidate::create(['user_id' => $newUser->id, "is_external_vcard" => $is_external_vcard]) == true;
                 //Moticardtoken::create(['user_id' => $newUser->id,"token"=>md5("{$newUser->id}".time())]);
                 $mtoken = new Moticardtoken();
                 $mtoken->user_id = $newUser->id;
                 $mtoken->token = md5("{$newUser->id}" . time());
                 $mtoken->save();
             }
         }
     } catch (FormValidationException $e) {
         return \Response::json(['success' => false, 'errors' => $e->getErrors(), 400]);
     }
     Log::info(print_r($user, true));
     if ($success) {
         $newUser->confirmation_code = Hash::make($newUser->id . str_random(30));
         $newUser->save();
         Mail::send('emails.registration.confirmation', ['confirmation' => base64_encode($newUser->confirmation_code), 'client_base_url' => Input::get('client_base_url')], function ($message) {
             $message->to(Input::get('email'))->subject('Verify your email address');
         });
     }
     return \Response::json(['success' => $success]);
 }