diff --git a/app/Http/Controllers/AccountController.php b/app/Http/Controllers/AccountController.php index 71e326a07009..840e8f5540ce 100644 --- a/app/Http/Controllers/AccountController.php +++ b/app/Http/Controllers/AccountController.php @@ -1,7 +1,6 @@ account; + if ($account->hasLogo()) { + $filename = $account->getLogoPath(); + $bytes = File::size($filename); + if ($bytes > MAX_LOGO_FILE_SIZE * 1000) { + $bytes /= 1000; + Session::flash('warning', trans('texts.logo_too_large', ['size' => round($bytes) . 'KB'])); + } + } + $data = [ 'account' => Account::with('users')->findOrFail(Auth::user()->account_id), 'countries' => Cache::get('countries'), @@ -842,7 +852,7 @@ class AccountController extends BaseController { $rules = array( 'name' => 'required', - 'logo' => 'sometimes|max:200|mimes:jpeg,gif,png', + 'logo' => 'sometimes|max:' . MAX_LOGO_FILE_SIZE . '|mimes:jpeg,gif,png', ); $validator = Validator::make(Input::all(), $rules); @@ -905,7 +915,7 @@ class AccountController extends BaseController } } - Event::fire(new UserSettingsChanged()); + event(new UserSettingsChanged()); Session::flash('message', trans('texts.updated_settings')); return Redirect::to('settings/' . ACCOUNT_COMPANY_DETAILS); @@ -940,7 +950,7 @@ class AccountController extends BaseController $user->save(); - Event::fire(new UserSettingsChanged()); + event(new UserSettingsChanged()); Session::flash('message', trans('texts.updated_settings')); return Redirect::to('settings/' . ACCOUNT_USER_DETAILS); } @@ -957,7 +967,7 @@ class AccountController extends BaseController $account->military_time = Input::get('military_time') ? true : false; $account->save(); - Event::fire(new UserSettingsChanged()); + event(new UserSettingsChanged()); Session::flash('message', trans('texts.updated_settings')); return Redirect::to('settings/' . ACCOUNT_LOCALIZATION); diff --git a/app/Http/routes.php b/app/Http/routes.php index 9d587db5b9df..d882bfc9e788 100644 --- a/app/Http/routes.php +++ b/app/Http/routes.php @@ -334,6 +334,7 @@ if (!defined('CONTACT_EMAIL')) { define('MAX_NUM_USERS', 20); define('MAX_SUBDOMAIN_LENGTH', 30); define('MAX_IFRAME_URL_LENGTH', 250); + define('MAX_LOGO_FILE_SIZE', 200); // KB define('DEFAULT_FONT_SIZE', 9); define('DEFAULT_SEND_RECURRING_HOUR', 8); diff --git a/resources/lang/en/texts.php b/resources/lang/en/texts.php index 0cd003ad4d01..eab4e221a4d7 100644 --- a/resources/lang/en/texts.php +++ b/resources/lang/en/texts.php @@ -918,4 +918,5 @@ return array( 'country' => 'Country', 'include' => 'Include', + 'logo_too_large' => 'Your logo is :size, for better performance we suggest uploading an image file less than 200KB', ); diff --git a/resources/views/accounts/details.blade.php b/resources/views/accounts/details.blade.php index 3d8a0d3f42c4..5023c132ed8d 100644 --- a/resources/views/accounts/details.blade.php +++ b/resources/views/accounts/details.blade.php @@ -22,7 +22,7 @@ ->addClass('warn-on-exit') ->autocomplete('on') ->rules([ - 'name' => 'required' + 'name' => 'required' ]) !!} {{ Former::populate($account) }} @@ -37,24 +37,29 @@