diff --git a/app/Http/Controllers/AccountController.php b/app/Http/Controllers/AccountController.php index ec6e3e78f171..cf647dcaa8c6 100644 --- a/app/Http/Controllers/AccountController.php +++ b/app/Http/Controllers/AccountController.php @@ -40,7 +40,6 @@ use App\Ninja\Repositories\AccountRepository; use App\Ninja\Mailers\UserMailer; use App\Ninja\Mailers\ContactMailer; use App\Events\UserLoggedIn; -use App\Events\UserSettingsChanged; class AccountController extends BaseController { @@ -686,7 +685,7 @@ class AccountController extends BaseController $user->username = trim(Input::get('email')); $user->email = trim(strtolower(Input::get('email'))); $user->phone = trim(Input::get('phone')); - if (Utils::isNinja()) { + if (Utils::isNinjaDev()) { $user->dark_mode = Input::get('dark_mode') ? true : false; } $user->save(); @@ -698,7 +697,6 @@ class AccountController extends BaseController File::delete('logo/'.$account->account_key.'.jpg'); File::delete('logo/'.$account->account_key.'.png'); - $image = Image::make($path); $mimeType = $file->getMimeType(); if ($mimeType == 'image/jpeg') { @@ -706,15 +704,19 @@ class AccountController extends BaseController } else if ($mimeType == 'image/png') { $file->move('logo/', $account->account_key . '.png'); } else { - $image->resize(200, 120, function ($constraint) { - $constraint->aspectRatio(); - }); - Image::canvas($image->width(), $image->height(), '#FFFFFF') - ->insert($image)->save('logo/'.$account->account_key.'.jpg'); + if (extension_loaded('fileinfo')) { + $image = Image::make($path); + $image->resize(200, 120, function ($constraint) { + $constraint->aspectRatio(); + }); + Image::canvas($image->width(), $image->height(), '#FFFFFF') + ->insert($image)->save('logo/'.$account->account_key.'.jpg'); + } else { + Session::flash('warning', 'Warning: To support gifs the fileinfo PHP extension needs to be enabled.'); + } } } - Event::fire(new UserSettingsChanged()); Session::flash('message', trans('texts.updated_settings')); return Redirect::to('company/details'); @@ -764,9 +766,9 @@ class AccountController extends BaseController $user->username = $user->email; $user->password = bcrypt(trim(Input::get('new_password'))); $user->registered = true; - $user->save(); + $user->save(); - if (Utils::isNinja()) { + if (Utils::isNinjaProd()) { $this->userMailer->sendConfirmation($user); } diff --git a/app/Http/Controllers/AppController.php b/app/Http/Controllers/AppController.php index bc6c699e728b..06268f45938c 100644 --- a/app/Http/Controllers/AppController.php +++ b/app/Http/Controllers/AppController.php @@ -34,7 +34,7 @@ class AppController extends BaseController public function showSetup() { - if (Utils::isNinja() || (Utils::isDatabaseSetup() && Account::count() > 0)) { + if (Utils::isNinjaProd() || (Utils::isDatabaseSetup() && Account::count() > 0)) { return Redirect::to('/'); } @@ -43,7 +43,7 @@ class AppController extends BaseController public function doSetup() { - if (Utils::isNinja() || (Utils::isDatabaseSetup() && Account::count() > 0)) { + if (Utils::isNinjaProd() || (Utils::isDatabaseSetup() && Account::count() > 0)) { return Redirect::to('/'); } @@ -159,7 +159,7 @@ class AppController extends BaseController public function install() { - if (!Utils::isNinja() && !Utils::isDatabaseSetup()) { + if (!Utils::isNinjaProd() && !Utils::isDatabaseSetup()) { try { Artisan::call('migrate', array('--force' => true)); if (Industry::count() == 0) { @@ -176,7 +176,7 @@ class AppController extends BaseController public function update() { - if (!Utils::isNinja()) { + if (!Utils::isNinjaProd()) { try { Artisan::call('migrate', array('--force' => true)); Artisan::call('db:seed', array('--force' => true, '--class' => 'PaymentLibrariesSeeder')); diff --git a/app/Http/Controllers/ClientController.php b/app/Http/Controllers/ClientController.php index 9072f6960d70..9aa821a2611d 100644 --- a/app/Http/Controllers/ClientController.php +++ b/app/Http/Controllers/ClientController.php @@ -268,7 +268,7 @@ class ClientController extends BaseController $record = Contact::createNew(); } - $record->email = trim(strtolower($contact->email)); + $record->email = trim($contact->email); $record->first_name = trim($contact->first_name); $record->last_name = trim($contact->last_name); $record->phone = trim($contact->phone); diff --git a/app/Http/Controllers/TaskController.php b/app/Http/Controllers/TaskController.php index 7b719e148d73..c9e65148a024 100644 --- a/app/Http/Controllers/TaskController.php +++ b/app/Http/Controllers/TaskController.php @@ -289,7 +289,7 @@ class TaskController extends BaseController private function checkTimezone() { if (!Auth::user()->account->timezone) { - $link = link_to('/company/details', trans('texts.click_here'), ['target' => '_blank']); + $link = link_to('/company/details?focus=timezone_id', trans('texts.click_here'), ['target' => '_blank']); Session::flash('warning', trans('texts.timezone_unset', ['link' => $link])); } } diff --git a/app/Http/Middleware/StartupCheck.php b/app/Http/Middleware/StartupCheck.php index a0b7fd2b1d09..cbf5e8d5310d 100644 --- a/app/Http/Middleware/StartupCheck.php +++ b/app/Http/Middleware/StartupCheck.php @@ -133,8 +133,8 @@ class StartupCheck $licenseKey = Input::get('license_key'); $productId = Input::get('product_id'); - $data = trim(file_get_contents((Utils::isNinjaDev() ? 'http://www.ninja.dev' : NINJA_APP_URL)."/claim_license?license_key={$licenseKey}&product_id={$productId}")); - + $data = trim(file_get_contents((Utils::isNinjaDev() ? SITE_URL : NINJA_APP_URL)."/claim_license?license_key={$licenseKey}&product_id={$productId}")); + if ($productId == PRODUCT_INVOICE_DESIGNS) { if ($data = json_decode($data)) { foreach ($data as $item) { diff --git a/app/Models/Account.php b/app/Models/Account.php index 7df9c09b2410..fbd10efcd9b6 100644 --- a/app/Models/Account.php +++ b/app/Models/Account.php @@ -4,7 +4,9 @@ use Eloquent; use Utils; use Session; use DateTime; +use Event; use App; +use App\Events\UserSettingsChanged; use Illuminate\Database\Eloquent\SoftDeletes; class Account extends Eloquent @@ -324,7 +326,7 @@ class Account extends Eloquent public function isWhiteLabel() { - if (Utils::isNinja()) { + if (Utils::isNinjaProd()) { return self::isPro() && $this->pro_plan_paid != NINJA_DATE; } else { return $this->pro_plan_paid == NINJA_DATE; @@ -429,4 +431,8 @@ class Account extends Eloquent { return $this->token_billing_type_id == TOKEN_BILLING_OPT_OUT; } -} \ No newline at end of file +} + +Account::updated(function ($account) { + Event::fire(new UserSettingsChanged()); +}); diff --git a/app/Models/User.php b/app/Models/User.php index 9343c686f666..93b263a55c63 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -2,7 +2,9 @@ use Session; use Auth; +use Event; use App\Libraries\Utils; +use App\Events\UserSettingsChanged; use Illuminate\Auth\Authenticatable; use Illuminate\Database\Eloquent\Model; use Illuminate\Auth\Passwords\CanResetPassword; @@ -213,3 +215,8 @@ class User extends Model implements AuthenticatableContract, CanResetPasswordCon User::updating(function ($user) { User::updateUser($user); }); + +User::updated(function ($user) { + Event::fire(new UserSettingsChanged()); +}); + diff --git a/app/Ninja/Mailers/Mailer.php b/app/Ninja/Mailers/Mailer.php index 71263682a765..9995a27c4df5 100644 --- a/app/Ninja/Mailers/Mailer.php +++ b/app/Ninja/Mailers/Mailer.php @@ -17,10 +17,11 @@ class Mailer try { Mail::send($views, $data, function ($message) use ($toEmail, $fromEmail, $fromName, $subject, $data) { + $toEmail = strtolower($toEmail); $replyEmail = $fromEmail; $fromEmail = CONTACT_EMAIL; - if(isset($data['invoice_id'])) { + if (isset($data['invoice_id'])) { $invoice = Invoice::with('account')->where('id', '=', $data['invoice_id'])->get()->first(); if($invoice->account->pdf_email_attachment && file_exists($invoice->getPDFPath())) { $message->attach( diff --git a/app/Ninja/Repositories/AccountRepository.php b/app/Ninja/Repositories/AccountRepository.php index d33c08f7abdf..593d113072c7 100644 --- a/app/Ninja/Repositories/AccountRepository.php +++ b/app/Ninja/Repositories/AccountRepository.php @@ -272,7 +272,6 @@ class AccountRepository } public function prepareUsersData($record) { - if (!$record) { return false; } @@ -381,7 +380,6 @@ class AccountRepository } public function unlinkUser($userAccountId, $userId) { - $userAccount = UserAccount::whereId($userAccountId)->first(); if ($userAccount->hasUserId($userId)) { $userAccount->removeUserId($userId); diff --git a/app/Ninja/Repositories/ClientRepository.php b/app/Ninja/Repositories/ClientRepository.php index 5ff208f36239..ab0baacda59f 100644 --- a/app/Ninja/Repositories/ClientRepository.php +++ b/app/Ninja/Repositories/ClientRepository.php @@ -120,7 +120,7 @@ class ClientRepository if (isset($data['contact'])) { $info = $data['contact']; if (isset($info['email'])) { - $contact->email = trim(strtolower($info['email'])); + $contact->email = trim($info['email']); } if (isset($info['first_name'])) { $contact->first_name = trim($info['first_name']); @@ -145,7 +145,7 @@ class ClientRepository } if (isset($record['email'])) { - $contact->email = trim(strtolower($record['email'])); + $contact->email = trim($record['email']); } if (isset($record['first_name'])) { $contact->first_name = trim($record['first_name']); diff --git a/app/Providers/AppServiceProvider.php b/app/Providers/AppServiceProvider.php index d9fc74798f69..73c65721ab13 100644 --- a/app/Providers/AppServiceProvider.php +++ b/app/Providers/AppServiceProvider.php @@ -37,9 +37,12 @@ class AppServiceProvider extends ServiceProvider { $str = '