diff --git a/README.md b/README.md index 39446fd65b..07ae5aafdb 100755 --- a/README.md +++ b/README.md @@ -25,6 +25,8 @@ Please see the [requirements documentation](http://docs.snipeitapp.com/requireme To deploy on Ubuntu using Ansible and Vagrant, check out the [Snipe-IT Installation scripts](https://github.com/GR360RY/snipeit-ansible) created by [@GR360RY](https://github.com/GR360RY/). +To deploy on a fresh Ubuntu / CentOS install that will be dedicated to Snipe-It, run the "install.sh". Make sure to chmod +x install.sh and run as sudo on Ubuntu systems (or equivalent on CentOS.) + ----- ### Bug Reports & Feature Requests diff --git a/app/config/app.php b/app/config/app.php index 9d8d2780ce..c834ee8d11 100755 --- a/app/config/app.php +++ b/app/config/app.php @@ -101,7 +101,6 @@ return array( 'Barryvdh\Debugbar\ServiceProvider', 'Cartalyst\Sentry\SentryServiceProvider', 'Chumper\Datatable\DatatableServiceProvider', - 'Dinesh\Barcode\BarcodeServiceProvider', 'Maknz\Slack\SlackServiceProvider', 'Schickling\Backup\BackupServiceProvider', 'Chumper\Zipper\ZipperServiceProvider', @@ -177,8 +176,6 @@ return array( 'Validator' => 'Illuminate\Support\Facades\Validator', 'View' => 'Illuminate\Support\Facades\View', 'Reader' => 'League\Csv\Reader', - 'DNS1D' => 'Dinesh\Barcode\Facades\DNS1DFacade', - 'DNS2D' => 'Dinesh\Barcode\Facades\DNS2DFacade', 'Slack' => 'Maknz\Slack\Facades\Slack', 'Zipper' => 'Chumper\Zipper\Zipper', diff --git a/app/config/version.php b/app/config/version.php index 5def7774b6..0254380fb5 100644 --- a/app/config/version.php +++ b/app/config/version.php @@ -1,5 +1,5 @@ 'v2.0-92', - 'hash_version' => 'v2.0-92-g680b189', + 'app_version' => 'v2.0-95', + 'hash_version' => 'v2.0-95-ge05baf1', ); \ No newline at end of file diff --git a/app/controllers/admin/AssetsController.php b/app/controllers/admin/AssetsController.php index e3c06a8a3b..525f73aa82 100755 --- a/app/controllers/admin/AssetsController.php +++ b/app/controllers/admin/AssetsController.php @@ -22,8 +22,6 @@ use Response; use Config; use Location; use Log; -use DNS1D; -use DNS2D; use Mail; use Datatable; use TCPDF; @@ -469,8 +467,12 @@ class AssetsController extends AdminController return Redirect::to('hardware')->with('error', Lang::get('admin/hardware/message.not_found')); } + // Check for a valid user to checkout fa-random + // This will need to be tweaked for checkout to location if (!is_null($asset->assigned_to)) { $user = User::find($asset->assigned_to); + } else { + return Redirect::to('hardware')->with('error', Lang::get('admin/hardware/message.already_checked_in')); } // This is just used for the redirect @@ -507,7 +509,6 @@ class AssetsController extends AdminController if ($settings->slack_endpoint) { - $slack_settings = [ 'username' => $settings->botname, 'channel' => $settings->slack_channel, @@ -538,19 +539,19 @@ class AssetsController extends AdminController } - $data['log_id'] = $logaction->id; - $data['first_name'] = $user->first_name; - $data['item_name'] = $asset->showAssetName(); - $data['checkin_date'] = $logaction->created_at; - $data['item_tag'] = $asset->asset_tag; - $data['note'] = $logaction->note; + $data['log_id'] = $logaction->id; + $data['first_name'] = $user->first_name; + $data['item_name'] = $asset->showAssetName(); + $data['checkin_date'] = $logaction->created_at; + $data['item_tag'] = $asset->asset_tag; + $data['note'] = $logaction->note; - if ((($asset->checkin_email()=='1')) && (!Config::get('app.lock_passwords'))) { - Mail::send('emails.checkin-asset', $data, function ($m) use ($user) { - $m->to($user->email, $user->first_name . ' ' . $user->last_name); - $m->subject('Confirm Asset Checkin'); - }); - } + if ((($asset->checkin_email()=='1')) && ($user) && (!Config::get('app.lock_passwords'))) { + Mail::send('emails.checkin-asset', $data, function ($m) use ($user) { + $m->to($user->email, $user->first_name . ' ' . $user->last_name); + $m->subject('Confirm Asset Checkin'); + }); + } if ($backto=='user') { return Redirect::to("admin/users/".$return_to.'/view')->with('success', Lang::get('admin/hardware/message.checkin.success')); @@ -607,31 +608,15 @@ class AssetsController extends AdminController if ($settings->qr_code == '1') { $asset = Asset::find($assetId); + $size = barcodeDimensions($settings->barcode_type); if (isset($asset->id,$asset->asset_tag)) { - - if ($settings->barcode_type == 'C128'){ - $content = DNS1D::getBarcodePNG(route('view/hardware', $asset->id), $settings->barcode_type, - $this->barCodeDimensions['height'],$this->barCodeDimensions['width']); - } - else{ - $content = DNS2D::getBarcodePNG(route('view/hardware', $asset->id), $settings->barcode_type, - $this->qrCodeDimensions['height'],$this->qrCodeDimensions['width']); - } - $img = imagecreatefromstring(base64_decode($content)); - imagepng($img); - imagedestroy($img); - - $content_disposition = sprintf('attachment;filename=qr_code_%s.png', preg_replace('/\W/', '', $asset->asset_tag)); - $response = Response::make($content, 200); - $response->header('Content-Type', 'image/png'); - $response->header('Content-Disposition', $content_disposition); - return $response; + $barcode = new \Com\Tecnick\Barcode\Barcode(); + $barcode_obj = $barcode->getBarcodeObj($settings->barcode_type, route('view/hardware', $asset->id), $size['height'], $size['width'], 'black', array(-2, -2, -2, -2)); + return $barcode_obj->getPngData(); } } - $response = Response::make('', 404); - return $response; } /** diff --git a/app/helpers.php b/app/helpers.php index 2644675bcf..4c1fece3ed 100755 --- a/app/helpers.php +++ b/app/helpers.php @@ -85,3 +85,17 @@ function usersList() { $users_list = array('' => Lang::get('general.select_user')) + DB::table('users')->select(DB::raw('concat(last_name,", ",first_name," (",username,")") as full_name, id'))->whereNull('deleted_at')->orderBy('last_name', 'asc')->orderBy('first_name', 'asc')->lists('full_name', 'id'); return $users_list; } + +function barcodeDimensions ($barcode_type = 'QRCODE') { + if ($barcode_type == 'C128') { + $size['height'] = '-1'; + $size['width'] = '-10'; + } elseif ($barcode_type == 'PDF417') { + $size['height'] = '-3'; + $size['width'] = '-10'; + } else { + $size['height'] = '-3'; + $size['width'] = '-3'; + } + return $size; +} diff --git a/app/lang/en/admin/accessories/message.php b/app/lang/en/admin/accessories/message.php index 62f179c5a1..12462bf8d8 100755 --- a/app/lang/en/admin/accessories/message.php +++ b/app/lang/en/admin/accessories/message.php @@ -2,25 +2,25 @@ return array( - 'does_not_exist' => 'Category does not exist.', + 'does_not_exist' => 'Accessory does not exist.', 'assoc_users' => 'This accessory currently has :count items checked out to users. Please check in the accessories and and try again. ', 'create' => array( - 'error' => 'Category was not created, please try again.', - 'success' => 'Category created successfully.' + 'error' => 'Accessory was not created, please try again.', + 'success' => 'Accessory created successfully.' ), 'update' => array( - 'error' => 'Category was not updated, please try again', - 'success' => 'Category updated successfully.' + 'error' => 'Accessory was not updated, please try again', + 'success' => 'Accessory updated successfully.' ), 'delete' => array( - 'confirm' => 'Are you sure you wish to delete this category?', - 'error' => 'There was an issue deleting the category. Please try again.', - 'success' => 'The category was deleted successfully.' + 'confirm' => 'Are you sure you wish to delete this Accessory?', + 'error' => 'There was an issue deleting the Accessory. Please try again.', + 'success' => 'The Accessory was deleted successfully.' ), - + 'checkout' => array( 'error' => 'Accessory was not checked out, please try again', 'success' => 'Accessory checked out successfully.', diff --git a/app/lang/en/admin/hardware/message.php b/app/lang/en/admin/hardware/message.php index 03e9473cbf..c043d818d7 100755 --- a/app/lang/en/admin/hardware/message.php +++ b/app/lang/en/admin/hardware/message.php @@ -7,6 +7,7 @@ return array( 'does_not_exist' => 'Asset does not exist.', 'does_not_exist_or_not_requestable' => 'Nice try. That asset does not exist or is not requestable.', 'assoc_users' => 'This asset is currently checked out to a user and cannot be deleted. Please check the asset in first, and then try deleting again. ', + 'already_checked_in' => 'Could not checkin asset because it is not checked out to anyone.', 'create' => array( 'error' => 'Asset was not created, please try again. :(', diff --git a/app/macros.php b/app/macros.php index 5d0f08316f..da57c55330 100755 --- a/app/macros.php +++ b/app/macros.php @@ -342,3 +342,25 @@ Form::macro('currencies', function ($name = "currency", $selected = null, $class return $select; }); + + + +Form::macro('barcode_types', function ($name = "barcode_type", $selected = null, $class = null) { + + $barcode_types = array( + 'C128', + 'DATAMATRIX', + 'PDF417', + 'QRCODE', + ); + + $select = ''; + + return $select; + +}); diff --git a/app/views/backend/settings/edit.blade.php b/app/views/backend/settings/edit.blade.php index 623e2ecf27..fa522defba 100755 --- a/app/views/backend/settings/edit.blade.php +++ b/app/views/backend/settings/edit.blade.php @@ -205,7 +205,8 @@ padding: 0px 20px;
- {{ Form::barcode_types('barcode_type', Input::old('barcode_type', $setting->barcode_type), 'select2') }} + {{ Form::barcode_types('barcode_type', Input::old('barcode_type', $setting->barcode_type), 'select2') }} + {{ $errors->first('barcode_type', '
:message') }}
diff --git a/composer.json b/composer.json index 7af5444a05..49e1d84690 100755 --- a/composer.json +++ b/composer.json @@ -22,7 +22,6 @@ "cartalyst/sentry": "2.1.5", "barryvdh/laravel-debugbar": "1.x", "chumper/datatable": "2.3.*", - "dinesh/barcode": "4.0.*@dev", "intervention/image": "dev-master", "league/csv": "~7.0", "maknz/slack": "dev-master", @@ -31,9 +30,16 @@ "guzzlehttp/guzzle": "5.3.0", "aws/aws-sdk-php-laravel": "1.0.x-dev", "schickling/backup": "0.6.0", - "chumper/zipper": "0.5.x" + "chumper/zipper": "0.5.x", + "tecnick.com/tc-lib-barcode": "dev-master" }, + "repositories": [ + { + "type": "vcs", + "url": "git@github.com:tecnickcom/tc-lib-barcode.git" + } + ], "require-dev": { "phpunit/phpunit": "*", "codeception/codeception": "2.1.*", diff --git a/composer.lock b/composer.lock index a98a62cf46..ade2e7cfe1 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file", "This file is @generated automatically" ], - "hash": "a0833a69c94a4bc4addf288f4a6f7ca2", + "hash": "d6323e3014878347b05cd635356274fd", "packages": [ { "name": "aws/aws-sdk-php", @@ -12,12 +12,12 @@ "source": { "type": "git", "url": "https://github.com/aws/aws-sdk-php.git", - "reference": "f8c68d5de3e204320a2a47d0d786a8ee17b1a8ee" + "reference": "e01825efad025dbe6d88997e02bd32ec80814381" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/f8c68d5de3e204320a2a47d0d786a8ee17b1a8ee", - "reference": "f8c68d5de3e204320a2a47d0d786a8ee17b1a8ee", + "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/e01825efad025dbe6d88997e02bd32ec80814381", + "reference": "e01825efad025dbe6d88997e02bd32ec80814381", "shasum": "" }, "require": { @@ -67,7 +67,7 @@ "s3", "sdk" ], - "time": "2015-08-12 20:41:18" + "time": "2015-09-03 22:25:15" }, { "name": "aws/aws-sdk-php-laravel", @@ -454,70 +454,18 @@ "notification-url": "https://packagist.org/downloads/", "time": "2014-01-17 12:21:18" }, - { - "name": "dinesh/barcode", - "version": "4.0.x-dev", - "source": { - "type": "git", - "url": "https://github.com/dineshrabara/barcode.git", - "reference": "5655ece77d2d1c4438c8d940350d5d288717de27" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/dineshrabara/barcode/zipball/5655ece77d2d1c4438c8d940350d5d288717de27", - "reference": "5655ece77d2d1c4438c8d940350d5d288717de27", - "shasum": "" - }, - "require": { - "illuminate/support": "4.*|5.*", - "php": ">=5.3.0" - }, - "type": "library", - "autoload": { - "classmap": [ - "src/migrations" - ], - "psr-0": { - "Dinesh\\Barcode": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Dinesh Rabara", - "email": "dinesh.rabara@gmail.com" - } - ], - "description": "Barcode generator like Qr Code , PDF417,C39, C39+,C39E,C39E+,C93,S25,S25+,I25,I25+,C128,C128A,C128B,C128C,2-Digits UPC-Based Extention,5-Digits UPC-Based Extention,EAN 8,EAN 13,UPC-A,UPC-E,MSI (Variation of Plessey code) ", - "keywords": [ - "CODABAR", - "CODE 128", - "CODE 39", - "barcode", - "datamatrix", - "ean", - "laravel", - "pdf417", - "qr code", - "qrcode" - ], - "time": "2015-04-17 05:04:41" - }, { "name": "doctrine/annotations", "version": "dev-master", "source": { "type": "git", "url": "https://github.com/doctrine/annotations.git", - "reference": "f4a91702ca3cd2e568c3736aa031ed00c3752af4" + "reference": "f25c8aab83e0c3e976fd7d19875f198ccf2f7535" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/annotations/zipball/f4a91702ca3cd2e568c3736aa031ed00c3752af4", - "reference": "f4a91702ca3cd2e568c3736aa031ed00c3752af4", + "url": "https://api.github.com/repos/doctrine/annotations/zipball/f25c8aab83e0c3e976fd7d19875f198ccf2f7535", + "reference": "f25c8aab83e0c3e976fd7d19875f198ccf2f7535", "shasum": "" }, "require": { @@ -572,7 +520,7 @@ "docblock", "parser" ], - "time": "2015-06-17 12:21:22" + "time": "2015-08-31 12:32:49" }, { "name": "doctrine/cache", @@ -580,12 +528,12 @@ "source": { "type": "git", "url": "https://github.com/doctrine/cache.git", - "reference": "e7b77e5abe230a2cc1db5005fb86435da213ae3b" + "reference": "ac3bc1e14fcd429c823fb98b634be1e8e0142eb0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/cache/zipball/e7b77e5abe230a2cc1db5005fb86435da213ae3b", - "reference": "e7b77e5abe230a2cc1db5005fb86435da213ae3b", + "url": "https://api.github.com/repos/doctrine/cache/zipball/ac3bc1e14fcd429c823fb98b634be1e8e0142eb0", + "reference": "ac3bc1e14fcd429c823fb98b634be1e8e0142eb0", "shasum": "" }, "require": { @@ -642,7 +590,7 @@ "cache", "caching" ], - "time": "2015-06-29 15:03:18" + "time": "2015-09-10 14:00:46" }, { "name": "doctrine/collections", @@ -650,12 +598,12 @@ "source": { "type": "git", "url": "https://github.com/doctrine/collections.git", - "reference": "3661cd8bc5152598dbe6772e98b78d1fa8281a67" + "reference": "866e100a425b8b73d15393fd081c6bf067f05bf9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/collections/zipball/3661cd8bc5152598dbe6772e98b78d1fa8281a67", - "reference": "3661cd8bc5152598dbe6772e98b78d1fa8281a67", + "url": "https://api.github.com/repos/doctrine/collections/zipball/866e100a425b8b73d15393fd081c6bf067f05bf9", + "reference": "866e100a425b8b73d15393fd081c6bf067f05bf9", "shasum": "" }, "require": { @@ -708,7 +656,7 @@ "collections", "iterator" ], - "time": "2015-08-05 11:14:49" + "time": "2015-09-11 15:24:21" }, { "name": "doctrine/common", @@ -716,12 +664,12 @@ "source": { "type": "git", "url": "https://github.com/doctrine/common.git", - "reference": "ff72726b0876638fa7db2f28b0f26e3f1f6656ca" + "reference": "9b792f308aef6b267743047e2ec96ef99de450cd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/common/zipball/ff72726b0876638fa7db2f28b0f26e3f1f6656ca", - "reference": "ff72726b0876638fa7db2f28b0f26e3f1f6656ca", + "url": "https://api.github.com/repos/doctrine/common/zipball/9b792f308aef6b267743047e2ec96ef99de450cd", + "reference": "9b792f308aef6b267743047e2ec96ef99de450cd", "shasum": "" }, "require": { @@ -733,7 +681,7 @@ "php": ">=5.3.2" }, "require-dev": { - "phpunit/phpunit": "~3.7" + "phpunit/phpunit": "~4.7" }, "type": "library", "extra": { @@ -781,7 +729,7 @@ "persistence", "spl" ], - "time": "2015-05-13 13:35:24" + "time": "2015-09-03 13:52:00" }, { "name": "doctrine/dbal", @@ -855,12 +803,12 @@ "source": { "type": "git", "url": "https://github.com/doctrine/inflector.git", - "reference": "b0b2feffb47906a03b570777c07044c529d1d124" + "reference": "a081a0c2f14486254464f1a657595f5a6b3092f4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/inflector/zipball/b0b2feffb47906a03b570777c07044c529d1d124", - "reference": "b0b2feffb47906a03b570777c07044c529d1d124", + "url": "https://api.github.com/repos/doctrine/inflector/zipball/a081a0c2f14486254464f1a657595f5a6b3092f4", + "reference": "a081a0c2f14486254464f1a657595f5a6b3092f4", "shasum": "" }, "require": { @@ -914,7 +862,7 @@ "singularize", "string" ], - "time": "2015-07-07 15:32:45" + "time": "2015-09-02 15:55:05" }, { "name": "doctrine/lexer", @@ -1432,12 +1380,12 @@ "source": { "type": "git", "url": "https://github.com/Intervention/image.git", - "reference": "1124ff3c6298f0dcf9edf9156623904d7a5c3428" + "reference": "44c9a6bb292e50cf8a1e4b5030c7954c2709c089" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Intervention/image/zipball/1124ff3c6298f0dcf9edf9156623904d7a5c3428", - "reference": "1124ff3c6298f0dcf9edf9156623904d7a5c3428", + "url": "https://api.github.com/repos/Intervention/image/zipball/44c9a6bb292e50cf8a1e4b5030c7954c2709c089", + "reference": "44c9a6bb292e50cf8a1e4b5030c7954c2709c089", "shasum": "" }, "require": { @@ -1486,7 +1434,7 @@ "thumbnail", "watermark" ], - "time": "2015-08-16 15:31:59" + "time": "2015-08-30 15:37:50" }, { "name": "ircmaxell/password-compat", @@ -1857,16 +1805,16 @@ }, { "name": "monolog/monolog", - "version": "dev-master", + "version": "1.17.1", "source": { "type": "git", "url": "https://github.com/Seldaek/monolog.git", - "reference": "d58755629d665abe7955e87ecb0a7a17912670ad" + "reference": "0524c87587ab85bc4c2d6f5b41253ccb930a5422" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Seldaek/monolog/zipball/d58755629d665abe7955e87ecb0a7a17912670ad", - "reference": "d58755629d665abe7955e87ecb0a7a17912670ad", + "url": "https://api.github.com/repos/Seldaek/monolog/zipball/0524c87587ab85bc4c2d6f5b41253ccb930a5422", + "reference": "0524c87587ab85bc4c2d6f5b41253ccb930a5422", "shasum": "" }, "require": { @@ -1929,7 +1877,7 @@ "logging", "psr-3" ], - "time": "2015-08-17 16:40:30" + "time": "2015-08-31 09:17:37" }, { "name": "nesbot/carbon", @@ -2464,12 +2412,12 @@ "source": { "type": "git", "url": "https://github.com/swiftmailer/swiftmailer.git", - "reference": "caf94ee2473ba6503e411ce3bcbd33b080f1d903" + "reference": "6522539daf0a7bdada1cc2dccb7ec37dc0712136" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/swiftmailer/swiftmailer/zipball/caf94ee2473ba6503e411ce3bcbd33b080f1d903", - "reference": "caf94ee2473ba6503e411ce3bcbd33b080f1d903", + "url": "https://api.github.com/repos/swiftmailer/swiftmailer/zipball/6522539daf0a7bdada1cc2dccb7ec37dc0712136", + "reference": "6522539daf0a7bdada1cc2dccb7ec37dc0712136", "shasum": "" }, "require": { @@ -2509,7 +2457,7 @@ "mail", "mailer" ], - "time": "2015-07-15 23:24:06" + "time": "2015-09-04 05:47:20" }, { "name": "symfony/browser-kit", @@ -2572,12 +2520,12 @@ "source": { "type": "git", "url": "https://github.com/symfony/Config.git", - "reference": "3f495530550377a55c0cced5ddf8f58cfcd9ce5b" + "reference": "546b5c41f8e0c3b18e55e4450ec51444adf3e61e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Config/zipball/3f495530550377a55c0cced5ddf8f58cfcd9ce5b", - "reference": "3f495530550377a55c0cced5ddf8f58cfcd9ce5b", + "url": "https://api.github.com/repos/symfony/Config/zipball/546b5c41f8e0c3b18e55e4450ec51444adf3e61e", + "reference": "546b5c41f8e0c3b18e55e4450ec51444adf3e61e", "shasum": "" }, "require": { @@ -2614,7 +2562,7 @@ ], "description": "Symfony Config Component", "homepage": "https://symfony.com", - "time": "2015-08-03 08:27:53" + "time": "2015-09-08 06:37:45" }, { "name": "symfony/console", @@ -2840,12 +2788,12 @@ "source": { "type": "git", "url": "https://github.com/symfony/EventDispatcher.git", - "reference": "d7246885b7fe4cb5a2786bda34362d2f0e40b730" + "reference": "69b6037050614d129fee27e17951ec7968f6567e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/EventDispatcher/zipball/d7246885b7fe4cb5a2786bda34362d2f0e40b730", - "reference": "d7246885b7fe4cb5a2786bda34362d2f0e40b730", + "url": "https://api.github.com/repos/symfony/EventDispatcher/zipball/69b6037050614d129fee27e17951ec7968f6567e", + "reference": "69b6037050614d129fee27e17951ec7968f6567e", "shasum": "" }, "require": { @@ -2890,7 +2838,7 @@ ], "description": "Symfony EventDispatcher Component", "homepage": "https://symfony.com", - "time": "2015-06-24 15:32:32" + "time": "2015-09-09 18:05:45" }, { "name": "symfony/filesystem", @@ -2898,12 +2846,12 @@ "source": { "type": "git", "url": "https://github.com/symfony/Filesystem.git", - "reference": "9f70c5625a32b2f1e6fc37222f52b4e0eb437b0e" + "reference": "287fc0b1dcb11ff729eeefc20441c08eaf628f29" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Filesystem/zipball/9f70c5625a32b2f1e6fc37222f52b4e0eb437b0e", - "reference": "9f70c5625a32b2f1e6fc37222f52b4e0eb437b0e", + "url": "https://api.github.com/repos/symfony/Filesystem/zipball/287fc0b1dcb11ff729eeefc20441c08eaf628f29", + "reference": "287fc0b1dcb11ff729eeefc20441c08eaf628f29", "shasum": "" }, "require": { @@ -2939,7 +2887,7 @@ ], "description": "Symfony Filesystem Component", "homepage": "https://symfony.com", - "time": "2015-07-09 16:11:14" + "time": "2015-09-09 18:05:45" }, { "name": "symfony/finder", @@ -3299,12 +3247,12 @@ "source": { "type": "git", "url": "https://github.com/symfony/Stopwatch.git", - "reference": "cd5f0dc1d3d0e2c83461dad77e20a9186beb6146" + "reference": "028ea00079d4c230d95fadf8afdad49d463a7960" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Stopwatch/zipball/cd5f0dc1d3d0e2c83461dad77e20a9186beb6146", - "reference": "cd5f0dc1d3d0e2c83461dad77e20a9186beb6146", + "url": "https://api.github.com/repos/symfony/Stopwatch/zipball/028ea00079d4c230d95fadf8afdad49d463a7960", + "reference": "028ea00079d4c230d95fadf8afdad49d463a7960", "shasum": "" }, "require": { @@ -3340,7 +3288,7 @@ ], "description": "Symfony Stopwatch Component", "homepage": "https://symfony.com", - "time": "2015-07-01 18:24:26" + "time": "2015-08-24 07:18:02" }, { "name": "symfony/translation", @@ -3404,12 +3352,12 @@ "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "6a9dc89b55020a029073c53f342ee7bf1893d1e9" + "reference": "8687a19302293455f45940d7f6961aacec5aa573" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/6a9dc89b55020a029073c53f342ee7bf1893d1e9", - "reference": "6a9dc89b55020a029073c53f342ee7bf1893d1e9", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/8687a19302293455f45940d7f6961aacec5aa573", + "reference": "8687a19302293455f45940d7f6961aacec5aa573", "shasum": "" }, "require": { @@ -3455,7 +3403,7 @@ "debug", "dump" ], - "time": "2015-07-29 07:12:56" + "time": "2015-09-09 18:05:45" }, { "name": "symfony/yaml", @@ -3463,12 +3411,12 @@ "source": { "type": "git", "url": "https://github.com/symfony/Yaml.git", - "reference": "6eef1477f3c4451b6024fadb1254009be4602908" + "reference": "1a0bd40f71908db4c9d44d308e0008cc44fc5f2f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Yaml/zipball/6eef1477f3c4451b6024fadb1254009be4602908", - "reference": "6eef1477f3c4451b6024fadb1254009be4602908", + "url": "https://api.github.com/repos/symfony/Yaml/zipball/1a0bd40f71908db4c9d44d308e0008cc44fc5f2f", + "reference": "1a0bd40f71908db4c9d44d308e0008cc44fc5f2f", "shasum": "" }, "require": { @@ -3504,7 +3452,160 @@ ], "description": "Symfony Yaml Component", "homepage": "https://symfony.com", - "time": "2015-07-29 07:12:56" + "time": "2015-08-24 07:18:02" + }, + { + "name": "tecnick.com/tc-lib-barcode", + "version": "dev-master", + "source": { + "type": "git", + "url": "https://github.com/tecnickcom/tc-lib-barcode.git", + "reference": "9303a1ccf2b9fe4a804257d0b91e79a49b846c71" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/tecnickcom/tc-lib-barcode/zipball/9303a1ccf2b9fe4a804257d0b91e79a49b846c71", + "reference": "9303a1ccf2b9fe4a804257d0b91e79a49b846c71", + "shasum": "" + }, + "require": { + "php": ">=5.3.3", + "tecnick.com/tc-lib-color": "dev-master" + }, + "require-dev": { + "bartlett/php-compatinfo": "4.3.*", + "nikic/php-parser": "1.3.*", + "pdepend/pdepend": "2.1.*", + "phpdocumentor/phpdocumentor": "2.5.*", + "phploc/phploc": "2.1.*", + "phpmd/phpmd": "2.2.*", + "phpunit/phpunit": "4.7.*", + "sebastian/phpcpd": "2.0.*", + "squizlabs/php_codesniffer": "2.3.*" + }, + "type": "library", + "autoload": { + "psr-4": { + "Com\\Tecnick\\Barcode\\": "src" + } + }, + "license": [ + "GNU-LGPL v3" + ], + "authors": [ + { + "name": "Nicola Asuni", + "email": "info@tecnick.com", + "role": "lead" + } + ], + "description": "PHP library to generate linear and bidimensional barcodes", + "homepage": "http://www.tecnick.com", + "keywords": [ + "3 of 9", + "ANSI MH10.8M-1983", + "CBC", + "CODABAR", + "CODE 11", + "CODE 128 A B C", + "CODE 39", + "CODE 93", + "Datamatrix", + "EAN 13", + "EAN 8", + "ECC200", + "Intelligent Mail Barcode", + "Interleaved 2 of 5", + "KIX", + "Klant", + "MSI", + "Onecode", + "PDF417", + "PHARMACODE", + "PHARMACODE TWO-TRACKS", + "PLANET", + "POSTNET", + "QR-Code", + "RMS4CC", + "Royal Mail", + "Standard 2 of 5", + "UPC", + "UPC-A", + "UPC-E", + "USD-3", + "USPS-B-3200", + "USS-93", + "barcode", + "tc-lib-barcode" + ], + "support": { + "source": "https://github.com/tecnickcom/tc-lib-barcode/tree/1.4.2", + "issues": "https://github.com/tecnickcom/tc-lib-barcode/issues" + }, + "time": "2015-08-26 17:32:55" + }, + { + "name": "tecnick.com/tc-lib-color", + "version": "dev-master", + "source": { + "type": "git", + "url": "https://github.com/tecnickcom/tc-lib-color.git", + "reference": "c0ab403218e9eda7c3afc0abc6607b64debb5217" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/tecnickcom/tc-lib-color/zipball/c0ab403218e9eda7c3afc0abc6607b64debb5217", + "reference": "c0ab403218e9eda7c3afc0abc6607b64debb5217", + "shasum": "" + }, + "require": { + "php": ">=5.3.3" + }, + "require-dev": { + "bartlett/php-compatinfo": "4.3.*", + "nikic/php-parser": "1.3.*", + "pdepend/pdepend": "2.1.*", + "phpdocumentor/phpdocumentor": "2.5.*", + "phploc/phploc": "2.1.*", + "phpmd/phpmd": "2.2.*", + "phpunit/phpunit": "4.7.*", + "sebastian/phpcpd": "2.0.*", + "squizlabs/php_codesniffer": "2.3.*" + }, + "type": "library", + "autoload": { + "psr-4": { + "Com\\Tecnick\\Color\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "GNU-LGPL v3" + ], + "authors": [ + { + "name": "Nicola Asuni", + "email": "info@tecnick.com", + "role": "lead" + } + ], + "description": "PHP library to manipulate various color representations", + "homepage": "http://www.tecnick.com", + "keywords": [ + "cmyk", + "color", + "colors", + "colour", + "colours", + "hsl", + "hsla", + "javascript", + "rgb", + "rgba", + "tc-lib-color", + "web" + ], + "time": "2015-07-21 14:39:40" } ], "packages-dev": [ @@ -3514,19 +3615,19 @@ "source": { "type": "git", "url": "https://github.com/Codeception/Codeception.git", - "reference": "ae322de25ec5e02941b87e055bd0dce83f13ab7b" + "reference": "e7729becfc54e0c739ee4d7882294817ea34091d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Codeception/Codeception/zipball/0c12ecb7520158de93dd954b1458d2b10d500dbf", - "reference": "ae322de25ec5e02941b87e055bd0dce83f13ab7b", + "url": "https://api.github.com/repos/Codeception/Codeception/zipball/e7729becfc54e0c739ee4d7882294817ea34091d", + "reference": "e7729becfc54e0c739ee4d7882294817ea34091d", "shasum": "" }, "require": { "ext-json": "*", "ext-mbstring": "*", "facebook/webdriver": ">=1.0.1", - "guzzlehttp/guzzle": ">=4.1.4|<7.0", + "guzzlehttp/guzzle": ">=4.1.4 <7.0", "guzzlehttp/psr7": "~1.0", "php": ">=5.4.0", "phpunit/phpunit": "~4.8.0", @@ -3586,7 +3687,7 @@ "functional testing", "unit testing" ], - "time": "2015-08-15 20:32:59" + "time": "2015-09-11 14:44:07" }, { "name": "doctrine/instantiator", @@ -3904,16 +4005,16 @@ }, { "name": "phpunit/php-code-coverage", - "version": "dev-master", + "version": "2.2.x-dev", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "751653e81e3fcbddbe026f36e6e16fafd0a19f46" + "reference": "ab2283bf4a836d7f2ec5f33c15d6802d9f4cb512" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/751653e81e3fcbddbe026f36e6e16fafd0a19f46", - "reference": "751653e81e3fcbddbe026f36e6e16fafd0a19f46", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/ab2283bf4a836d7f2ec5f33c15d6802d9f4cb512", + "reference": "ab2283bf4a836d7f2ec5f33c15d6802d9f4cb512", "shasum": "" }, "require": { @@ -3962,7 +4063,7 @@ "testing", "xunit" ], - "time": "2015-08-17 07:51:01" + "time": "2015-09-01 12:25:27" }, { "name": "phpunit/php-file-iterator", @@ -4099,12 +4200,12 @@ "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-token-stream.git", - "reference": "3ab72c62e550370a6cd5dc873e1a04ab57562f5b" + "reference": "92d472f7ac0cd45b7f6d66cb807646432cf89f5d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/3ab72c62e550370a6cd5dc873e1a04ab57562f5b", - "reference": "3ab72c62e550370a6cd5dc873e1a04ab57562f5b", + "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/92d472f7ac0cd45b7f6d66cb807646432cf89f5d", + "reference": "92d472f7ac0cd45b7f6d66cb807646432cf89f5d", "shasum": "" }, "require": { @@ -4140,7 +4241,7 @@ "keywords": [ "tokenizer" ], - "time": "2015-08-16 08:51:00" + "time": "2015-08-18 15:47:59" }, { "name": "phpunit/phpunit", @@ -4148,12 +4249,12 @@ "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "55bf1d6092b0e13a1f26bd5eaffeef3d8ad85ea7" + "reference": "473776571bfcdcf416faca4d31f52c4e5740a9c2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/55bf1d6092b0e13a1f26bd5eaffeef3d8ad85ea7", - "reference": "55bf1d6092b0e13a1f26bd5eaffeef3d8ad85ea7", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/473776571bfcdcf416faca4d31f52c4e5740a9c2", + "reference": "473776571bfcdcf416faca4d31f52c4e5740a9c2", "shasum": "" }, "require": { @@ -4212,7 +4313,7 @@ "testing", "xunit" ], - "time": "2015-08-15 04:21:23" + "time": "2015-09-05 08:36:58" }, { "name": "phpunit/phpunit-mock-objects", @@ -4220,12 +4321,12 @@ "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git", - "reference": "dccd8011934fba6fb77c7182c74926ad58c9ecd1" + "reference": "5e2645ad49d196e020b85598d7c97e482725786a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/dccd8011934fba6fb77c7182c74926ad58c9ecd1", - "reference": "dccd8011934fba6fb77c7182c74926ad58c9ecd1", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/5e2645ad49d196e020b85598d7c97e482725786a", + "reference": "5e2645ad49d196e020b85598d7c97e482725786a", "shasum": "" }, "require": { @@ -4268,7 +4369,7 @@ "mock", "xunit" ], - "time": "2015-08-09 04:15:55" + "time": "2015-08-19 09:14:08" }, { "name": "sebastian/comparator", @@ -4646,11 +4747,11 @@ "aliases": [], "minimum-stability": "dev", "stability-flags": { - "dinesh/barcode": 20, "intervention/image": 20, "maknz/slack": 20, "erusev/parsedown": 20, - "aws/aws-sdk-php-laravel": 20 + "aws/aws-sdk-php-laravel": 20, + "tecnick.com/tc-lib-barcode": 20 }, "prefer-stable": false, "prefer-lowest": false, diff --git a/install.sh b/install.sh index c807f8a992..aa9c5e47a7 100755 --- a/install.sh +++ b/install.sh @@ -1,7 +1,7 @@ #!/bin/bash -e ###################################################### -# Snipe-It Install Script # +# Snipe-It Install Script # # Script created by Mike Tucker # # mtucker6784@gmail.com # # This script is just to help streamline the # @@ -20,8 +20,8 @@ si="Snipe-IT" hostname="$(hostname)" hosts=/etc/hosts distro="$(cat /proc/version)" -file=develop.zip -dir=/var/www/snipe-it-develop +file=master.zip +dir=/var/www/snipe-it-master ans=default case $distro in @@ -35,7 +35,7 @@ case $distro in ;; *) echo "Not sure of this OS. Exiting for safety." - exit + exit ;; esac @@ -54,20 +54,20 @@ read setpw case $setpw in [yY] | [yY][Ee][Ss] ) - mysqlrootpw="$(echo `< /dev/urandom tr -dc _A-Za-z-0-9 | head -c8`)" - mysqluserpw="$(echo `< /dev/urandom tr -dc _A-Za-z-0-9 | head -c8`)" - echo "I'm putting this into /root/mysqlpasswords ... PLEASE REMOVE that file after you have recorded the passwords somewhere safe!" - ans="yes" + mysqlrootpw="$(echo `< /dev/urandom tr -dc _A-Za-z-0-9 | head -c8`)" + mysqluserpw="$(echo `< /dev/urandom tr -dc _A-Za-z-0-9 | head -c8`)" + echo "I'm putting this into /root/mysqlpasswords ... PLEASE REMOVE that file after you have recorded the passwords somewhere safe!" + ans="yes" ;; [nN] | [n|N][O|o] ) - echo "Q. What do you want your root PW to be?" - read mysqlrootpw - echo "Q. What do you want your snipeit user PW to be?" - read mysqluserpw - ans="no" + echo "Q. What do you want your root PW to be?" + read mysqlrootpw + echo "Q. What do you want your snipeit user PW to be?" + read mysqluserpw + ans="no" ;; *) echo "Invalid answer. Please type y or n" - ;; + ;; esac done @@ -162,6 +162,7 @@ if [[ $distro == "u" ]]; then service apache2 restart else + #Make directories so we can create a new apache vhost sudo mkdir /etc/httpd/ sudo mkdir /etc/httpd/sites-available/ @@ -250,24 +251,6 @@ else service httpd restart fi -#Todo(?) To Mail or Not To Mail environment here. -#echo "Q. Do you want me to install sendmail and help you configure your mail environment?" -#echo "Please note that while I'll install sendmail, I'll still send you to a nano environment to edit the mail.php file at the end of this install." -#read setpw -#case $setpw in -# -# [yY] | [yY][Ee][Ss] ) -# apt-get install -y sendmail -# installmail=yes -# ;; -# -# [nN] | [n|N][O|o] ) -# echo "Ok, no problem." -# ;; -# *) echo "Invalid answer" -# ;; -#esac - echo ""; echo ""; echo "" echo "***I have no idea about your mail environment, so if you want email capability, open up the following***" echo "nano -w $dir/app/config/production/mail.php" @@ -281,25 +264,26 @@ echo "Q. Shall I delete the password files I created? (Remember to record the pa read setpw case $setpw in - [yY] | [yY][Ee][Ss] ) - rm $createstufffile - rm $passwordfile - echo "$createstufffile and $passwordfile files have been removed." - ans=yes - ;; + [yY] | [yY][Ee][Ss] ) + rm $createstufffile + rm $passwordfile + echo "$createstufffile and $passwordfile files have been removed." + ans=yes + ;; [nN] | [n|N][O|o] ) - echo "Ok, I won't remove the file. Please for the love of security, record the passwords and delete this file regardless." - echo "$si cannot be held responsible if this file is compromised!" - echo "From Snipe: I cannot encourage or even facilitate poor security practices, and still sleep the few, frantic hours I sleep at night." - ans=no - ;; + echo "Ok, I won't remove the file. Please for the love of security, record the passwords and delete this file regardless." + echo "$si cannot be held responsible if this file is compromised!" + echo "From Snipe: I cannot encourage or even facilitate poor security practices, and still sleep the few, frantic hours I sleep at night." + ans=no + ;; *) - echo "Please select a valid option" - ;; + echo "Please select a valid option" + ;; esac done +echo ""; echo "" +echo "***If you want mail capabilities, open $dir/app/config/production/mail.php and fill out the attributes***" echo ""; echo "" echo "***$si should now be installed. open up http://$fqdn in a web browser to verify.***" -#echo "***If you want mail capabilities, open $dir/app/config/production/mail.php and fill out the attributes***" sleep 1