/** * Run the database seeds. * * @return void */ public function run() { /** * Users */ // ID 2 \VisualAppeal\Connect\User::create(['first_name' => 'Arno', 'last_name' => 'Nym', 'email' => '*****@*****.**', 'password' => password_hash('Test', PASSWORD_DEFAULT), 'activated' => 1, 'activated_at' => \Carbon\Carbon::now()->subDays(5), 'last_login' => \Carbon\Carbon::now()->subDays(1)]); // ID 3 - NOT ACTIVATED \VisualAppeal\Connect\User::create(['first_name' => 'Tom', 'last_name' => 'Test', 'email' => '*****@*****.**', 'password' => password_hash('123456', PASSWORD_DEFAULT), 'activated' => 0, 'comment' => 'IBM']); // ID 4 \VisualAppeal\Connect\User::create(['first_name' => 'Max', 'last_name' => 'Test', 'email' => '*****@*****.**', 'password' => password_hash('654321', PASSWORD_DEFAULT), 'activated' => 1, 'activated_at' => \Carbon\Carbon::now()->subDays(614), 'last_login' => \Carbon\Carbon::now()->subDays(12)]); // ID 1 \VisualAppeal\Connect\ClientProfile::create(['client_id' => 4, 'title' => 'phone-private', 'value' => '+49 202 74617821']); // ID 2 \VisualAppeal\Connect\ClientProfile::create(['client_id' => 4, 'title' => 'phone-business', 'value' => '+49 202 74617822']); // ID 5 \VisualAppeal\Connect\User::create(['first_name' => 'Jack', 'last_name' => 'Bauer', 'email' => '*****@*****.**', 'password' => password_hash('24', PASSWORD_DEFAULT), 'activated' => 1, 'activated_at' => \Carbon\Carbon::now()->subDays(214), 'last_login' => \Carbon\Carbon::now()->subDays(4)]); // ID 6 \VisualAppeal\Connect\User::create(['first_name' => 'Katy', 'last_name' => 'Holmes', 'email' => '*****@*****.**', 'password' => password_hash('tom', PASSWORD_DEFAULT), 'activated' => 1, 'activated_at' => \Carbon\Carbon::now()->subDays(872), 'last_login' => \Carbon\Carbon::now()->subDays(3)]); /** * Clients */ // ID 1 \VisualAppeal\Connect\Client::create(['first_name' => 'Max', 'last_name' => 'Black', 'form_of_address' => 'Prof. Dr.', 'email' => '*****@*****.**', 'website' => 'http://example.com', 'sex' => 'female', 'birthday' => '1980-04-12']); }
/** * Unbans a User. * * @param int $id * * @return Response */ public function unban($id) { $user = User::findOrFail($id); $user->unban(); return redirect()->back(); }
/** * Create a new user instance after a valid registration. * * @param array $data * @return \VisualAppeal\Connect\User */ public function create(array $data) { return User::create(['name' => $data['name'], 'email' => $data['email'], 'password' => bcrypt($data['password'])]); }
/** * Register events. * * @param \Illuminate\Contracts\Events\Dispatcher $events * @return void */ public function boot(DispatcherContract $events) { parent::boot($events); /** * Users */ // Create client with user User::created(function (User $user) { // Save ID of user who created the client $client = new Client(); if (\Sentry::check()) { $client->user_id = \Sentry::getUser()->id; } $client->save(); // Save ID of the client in the user model $user->client_id = $client->id; $user->save(); }); // Client about to be created Client::creating(function (Client $client) { if (\Sentry::check()) { $client->user_id = \Sentry::getUser()->id; } }); // ClientProfile about to be created ClientProfile::creating(function (ClientProfile $clientProfile) { if (\Sentry::check()) { $clientProfile->user_id = \Sentry::getUser()->id; } }); // ClientComment about to be created ClientComment::creating(function (ClientComment $clientComment) { if (\Sentry::check()) { $clientComment->user_id = \Sentry::getUser()->id; } }); /** * Tasks */ // User assigned user to task TaskClient::created(function (TaskClient $taskClient) { Notification::notify(['from_user_id' => $taskClient->user_id, 'to_user_id' => $taskClient->client->user->id, 'icon' => 'tasks', 'message' => 'notification.task.assigned', 'message_parameters' => ['task' => $taskClient->task->title], 'url' => 'task.view', 'url_parameters' => ['id' => $taskClient->task->id]]); }); // User assigned user to job TaskJobClient::created(function (TaskJobClient $taskJobClient) { Notification::notify(['from_user_id' => $taskJobClient->user_id, 'to_user_id' => $taskJobClient->client->user->id, 'icon' => 'tasks', 'message' => 'notification.task.job.assigned', 'message_parameters' => ['job' => $taskJobClient->job->title, 'task' => $taskJobClient->job->task->title], 'url' => 'task.job.view', 'url_parameters' => ['id' => $taskJobClient->job->id]]); }); // User created new job for task TaskJob::created(function (TaskJob $taskJob) { foreach ($taskJob->task->clients as $client) { if (!isset($client->user->id)) { continue; } Notification::notify(['from_user_id' => $taskJob->user_id, 'to_user_id' => $client->user->id, 'icon' => 'tasks', 'message' => 'notification.task.job.created', 'message_parameters' => ['job' => $taskJob->title, 'task' => $taskJob->task->title], 'url' => 'task.job.view', 'url_parameters' => ['id' => $taskJob->id]]); } }); // Task about to be created Task::creating(function (Task $task) { if (\Sentry::check()) { $task->user_id = \Sentry::getUser()->id; } }); // Task user assignment about to be created TaskClient::creating(function (TaskClient $taskClient) { if (\Sentry::check()) { $taskClient->user_id = \Sentry::getUser()->id; } }); // Job about to be created TaskJob::creating(function (TaskJob $taskJob) { if (\Sentry::check()) { $taskJob->user_id = \Sentry::getUser()->id; } }); // Job user assignment about to be created TaskJobClient::creating(function (TaskJobClient $taskJobClient) { if (\Sentry::check()) { $taskJobClient->user_id = \Sentry::getUser()->id; } }); /** * Companies */ // Company about to be created Company::creating(function (Company $company) { if (\Sentry::check()) { $company->user_id = \Sentry::getUser()->id; } }); // Company department about to be created CompanyDepartment::creating(function (CompanyDepartment $companyDepartment) { if (\Sentry::check()) { $companyDepartment->user_id = \Sentry::getUser()->id; } }); // Company user about to be created CompanyClient::creating(function (CompanyClient $companyClient) { if (\Sentry::check()) { $companyClient->user_id = \Sentry::getUser()->id; } }); // Company profile about to be created CompanyProfile::creating(function (CompanyProfile $companyProfile) { if (\Sentry::check()) { $companyProfile->user_id = \Sentry::getUser()->id; } }); /** * Invoices */ // Save user ID for the invoice Invoice::creating(function (Invoice $invoice) { if (\Sentry::check()) { $invoice->user_id = \Sentry::getUser()->id; } }); // Final invoices cannot be updated Invoice::updating(function (Invoice $invoice) { if ($invoice->final) { return false; } }); // Save user ID for the invoice item InvoiceItem::creating(function (InvoiceItem $invoiceItem) { if (\Sentry::check()) { $invoiceItem->user_id = \Sentry::getUser()->id; } }); // Items of final invoices cannot be updated InvoiceItem::updating(function (InvoiceItem $invoiceItem) { if ($invoiceItem->invoice->final) { return false; } }); // Save user ID for the recurring invoice InvoiceRecurring::creating(function (InvoiceRecurring $invoiceRecurring) { if (\Sentry::check()) { $invoiceRecurring->user_id = \Sentry::getUser()->id; } }); // Save user ID for the split invoice InvoiceSplit::creating(function (InvoiceSplit $invoiceSplit) { if (\Sentry::check()) { $invoiceSplit->user_id = \Sentry::getUser()->id; } }); /** * Projects */ // Save user ID for the Project Project::creating(function (Project $project) { if (\Sentry::check()) { $project->user_id = \Sentry::getUser()->id; } }); // Save user ID for the ProjectProfile ProjectProfile::creating(function (ProjectProfile $projectProfile) { if (\Sentry::check()) { $projectProfile->user_id = \Sentry::getUser()->id; } }); // Save user ID for the ProjectClient ProjectClient::creating(function (ProjectClient $projectClient) { if (\Sentry::check()) { $projectClient->user_id = \Sentry::getUser()->id; } }); // Save user ID for the ProjectCompanyDepartment ProjectCompanyDepartment::creating(function (ProjectCompanyDepartment $projectCompanyDepartment) { if (\Sentry::check()) { $projectCompanyDepartment->user_id = \Sentry::getUser()->id; } }); // Save user ID for the ProjectPhase ProjectPhase::creating(function (ProjectPhase $projectPhase) { if (\Sentry::check()) { $projectPhase->user_id = \Sentry::getUser()->id; } }); // Save user ID for the ProjectPhaseDocument ProjectPhaseDocument::creating(function (ProjectPhaseDocument $projectPhaseDocument) { if (\Sentry::check()) { $projectPhaseDocument->user_id = \Sentry::getUser()->id; } }); // Save user ID for the ProjectPhaseDocumentComment ProjectPhaseDocumentComment::creating(function (ProjectPhaseDocumentComment $projectPhaseDocumentComment) { if (\Sentry::check()) { $projectPhaseDocumentComment->user_id = \Sentry::getUser()->id; } }); }
/** * Test if the user can be activated. */ public function testActivate() { $admin = $this->createSuperuser(); $this->be($admin); $user = $this->createUser(); $user->activated = false; $user->save(); $this->assertFalse($user->isActivated()); $this->call('GET', route('user.show', ['user' => $user->id])); $response = $this->call('POST', route('user.activate', ['user' => $user->id]), ['_token' => Session::token()]); $user = \VisualAppeal\Connect\User::findOrFail($user->id); $this->assertTrue($user->isActivated()); }