diff --git a/app/controllers/admin/SettingsController.php b/app/controllers/admin/SettingsController.php index 2f67ecd6fc..00640e4630 100644 --- a/app/controllers/admin/SettingsController.php +++ b/app/controllers/admin/SettingsController.php @@ -38,7 +38,8 @@ class SettingsController extends AdminController { public function getEdit() { $settings = Setting::orderBy('created_at', 'DESC')->paginate(10); - return View::make('backend/settings/edit', compact('settings')); + $is_gd_installed = !!extension_loaded('gd'); + return View::make('backend/settings/edit', compact('settings', 'is_gd_installed')); } @@ -82,6 +83,7 @@ class SettingsController extends AdminController { $setting->id = '1'; $setting->site_name = e(Input::get('site_name')); $setting->per_page = e(Input::get('per_page')); + $setting->qr_code = e(Input::get('qr_code', '0')); // Was the asset updated? if($setting->save()) diff --git a/app/database/migrations/2014_01_28_031200_add_qr_code_to_settings_table.php b/app/database/migrations/2014_01_28_031200_add_qr_code_to_settings_table.php new file mode 100644 index 0000000000..f4541fb54a --- /dev/null +++ b/app/database/migrations/2014_01_28_031200_add_qr_code_to_settings_table.php @@ -0,0 +1,34 @@ +integer('qr_code')->nullable()->default(NULL); + + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::table('settings', function($table) + { + $table->dropColumn('qr_code'); + }); + } + +} \ No newline at end of file diff --git a/app/views/backend/settings/edit.blade.php b/app/views/backend/settings/edit.blade.php index fbdaeaa443..19383af7a5 100755 --- a/app/views/backend/settings/edit.blade.php +++ b/app/views/backend/settings/edit.blade.php @@ -46,6 +46,22 @@ +
+ +
+ @if ($is_gd_installed) + qr_code === '1' ? 'checked' : '' }} /> + @else + + PHP Image Processing and GD plugin is NOT installed. +
+ You must install php-gd to display QR codes, see install instructions. +
+ @endif + {{ $errors->first('qr_code', ':message') }} +
+
+ @endforeach diff --git a/app/views/backend/settings/index.blade.php b/app/views/backend/settings/index.blade.php index c95f9d02b9..2d285e7349 100755 --- a/app/views/backend/settings/index.blade.php +++ b/app/views/backend/settings/index.blade.php @@ -43,6 +43,14 @@ Settings :: Per Page {{ $setting->per_page }} + + Display QR Codes +@if ($setting->qr_code === '1') + Yes +@else + No +@endif + @endforeach diff --git a/composer.json b/composer.json index 652c89fddf..8591536603 100755 --- a/composer.json +++ b/composer.json @@ -6,7 +6,8 @@ "laravel/framework": "4.0.*", "cartalyst/sentry": "2.0.*", "barryvdh/laravel-debugbar": "dev-master", - "chumper/datatable": "dev-master" + "chumper/datatable": "dev-master", + "bacon/bacon-qr-code": "dev-master" }, "require-dev": { "phpunit/phpunit": "*" diff --git a/composer.lock b/composer.lock index 02ef8b1fd3..6ebc6ce872 100644 --- a/composer.lock +++ b/composer.lock @@ -3,8 +3,50 @@ "This file locks the dependencies of your project to a known state", "Read more about it at http://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file" ], - "hash": "2ff29b285767430e11356a6316d24a84", + "hash": "59df281fac2656a9009c1e5a84946add", "packages": [ + { + "name": "bacon/bacon-qr-code", + "version": "dev-master", + "source": { + "type": "git", + "url": "https://github.com/Bacon/BaconQrCode.git", + "reference": "0537ed27917f5ae26e5837ac4bfd837171d0b848" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Bacon/BaconQrCode/zipball/0537ed27917f5ae26e5837ac4bfd837171d0b848", + "reference": "0537ed27917f5ae26e5837ac4bfd837171d0b848", + "shasum": "" + }, + "require": { + "php": ">=5.3.3" + }, + "suggest": { + "ext-gd": "to generate QR code images" + }, + "type": "library", + "autoload": { + "psr-0": { + "BaconQrCode": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-2-Clause" + ], + "authors": [ + { + "name": "Ben Scholzen 'DASPRiD'", + "email": "mail@dasprids.de", + "homepage": "http://www.dasprids.de", + "role": "Developer" + } + ], + "description": "BaconQrCode is a QR code generator for PHP.", + "homepage": "https://github.com/Bacon/BaconQrCode", + "time": "2013-08-27 10:20:42" + }, { "name": "barryvdh/laravel-debugbar", "version": "dev-master", @@ -2660,7 +2702,8 @@ "minimum-stability": "dev", "stability-flags": { "barryvdh/laravel-debugbar": 20, - "chumper/datatable": 20 + "chumper/datatable": 20, + "bacon/bacon-qr-code": 20 }, "platform": [