Working on accepting terms

This commit is contained in:
Hillel Coren 2018-03-12 16:17:27 +02:00
parent 57cca8a6a4
commit b6c40e4474
4 changed files with 20 additions and 20 deletions

View File

@ -1327,6 +1327,7 @@ class AccountController extends BaseController
public function submitSignup() public function submitSignup()
{ {
$user = Auth::user(); $user = Auth::user();
$ip = Request::getClientIp();
$account = $user->account; $account = $user->account;
$rules = [ $rules = [
@ -1358,6 +1359,7 @@ class AccountController extends BaseController
if ($user->registered) { if ($user->registered) {
$newAccount = $this->accountRepo->create($firstName, $lastName, $email, $password, $account->company); $newAccount = $this->accountRepo->create($firstName, $lastName, $email, $password, $account->company);
$newUser = $newAccount->users()->first(); $newUser = $newAccount->users()->first();
$newUser->acceptLatestTerms($ip)->save();
$users = $this->accountRepo->associateAccounts($user->id, $newUser->id); $users = $this->accountRepo->associateAccounts($user->id, $newUser->id);
Session::flash('message', trans('texts.created_new_company')); Session::flash('message', trans('texts.created_new_company'));
@ -1372,6 +1374,7 @@ class AccountController extends BaseController
$user->username = $user->email; $user->username = $user->email;
$user->password = bcrypt($password); $user->password = bcrypt($password);
$user->registered = true; $user->registered = true;
$newUser->acceptLatestTerms($ip);
$user->save(); $user->save();
$user->account->startTrial(PLAN_PRO); $user->account->startTrial(PLAN_PRO);

View File

@ -400,7 +400,7 @@ class UserController extends BaseController
$message = ''; $message = '';
if (request()->accepted_terms) { if (request()->accepted_terms) {
auth()->user()->acceptedLatestTerms($ip); auth()->user()->acceptLatestTerms($ip)->save();
$message = trans('texts.accepted_terms'); $message = trans('texts.accepted_terms');
} }

View File

@ -462,12 +462,13 @@ class User extends Authenticatable
return $this->accepted_terms_version == NINJA_TERMS_VERSION; return $this->accepted_terms_version == NINJA_TERMS_VERSION;
} }
public function acceptedLatestTerms($ip) public function acceptLatestTerms($ip)
{ {
$this->accepted_terms_version = NINJA_TERMS_VERSION; $this->accepted_terms_version = NINJA_TERMS_VERSION;
$this->accepted_terms_timestamp = date('Y-m-d H:i:s'); $this->accepted_terms_timestamp = date('Y-m-d H:i:s');
$this->accepted_terms_ip = $ip; $this->accepted_terms_ip = $ip;
$this->save();
return $this;
} }
} }

View File

@ -25,7 +25,7 @@
@endif @endif
// Ensure terms is checked for sign up form // Ensure terms is checked for sign up form
@if (Auth::check() && ! Auth::user()->registered) @if (Auth::check())
setSignupEnabled(false); setSignupEnabled(false);
$("#terms_checkbox").change(function() { $("#terms_checkbox").change(function() {
setSignupEnabled(this.checked); setSignupEnabled(this.checked);
@ -78,11 +78,9 @@
} }
}); });
@if (! Auth::user()->registered)
if (!$('#terms_checkbox').is(':checked')) { if (!$('#terms_checkbox').is(':checked')) {
isFormValid = false; isFormValid = false;
} }
@endif
$('#saveSignUpButton').prop('disabled', !isFormValid); $('#saveSignUpButton').prop('disabled', !isFormValid);
@ -182,7 +180,6 @@
</div> </div>
<div class="row signup-form"> <div class="row signup-form">
@if (! Auth::user()->registered)
<div class="col-md-12"> <div class="col-md-12">
{!! Former::checkbox('terms_checkbox') {!! Former::checkbox('terms_checkbox')
->label(' ') ->label(' ')
@ -192,7 +189,6 @@
<br/> <br/>
</div> </div>
<br/>&nbsp;<br/> <br/>&nbsp;<br/>
@endif
@if (Utils::isOAuthEnabled() && ! Auth::user()->registered) @if (Utils::isOAuthEnabled() && ! Auth::user()->registered)
<div class="col-md-5"> <div class="col-md-5">
@foreach (App\Services\AuthService::$providers as $provider) @foreach (App\Services\AuthService::$providers as $provider)