diff --git a/app/config/version.php b/app/config/version.php index 128b6c78d0..b84ac38904 100644 --- a/app/config/version.php +++ b/app/config/version.php @@ -1,5 +1,5 @@ 'v1.2.6-20', - 'hash_version' => 'v1.2.6-20-g3f9d9f2', + 'app_version' => 'v1.2.6-22', + 'hash_version' => 'v1.2.6-22-g4076b29', ); \ No newline at end of file diff --git a/app/controllers/admin/AssetsController.php b/app/controllers/admin/AssetsController.php index fd028a2b4a..50d90bcfc1 100755 --- a/app/controllers/admin/AssetsController.php +++ b/app/controllers/admin/AssetsController.php @@ -415,6 +415,7 @@ class AssetsController extends AdminController $assigned_to = e(Input::get('assigned_to')); + // Declare the rules for the form validation $rules = array( 'assigned_to' => 'required|min:1', @@ -443,6 +444,15 @@ class AssetsController extends AdminController // Was the asset updated? if($asset->save()) { $logaction = new Actionlog(); + + if (Input::has('checkout_at')) { + if (Input::get('checkout_at')!= date("Y-m-d")){ + $logaction->created_at = e(Input::get('checkout_at')).' 00:00:00'; + } + } + + + $logaction->asset_id = $asset->id; $logaction->checkedout_to = $asset->assigned_to; $logaction->asset_type = 'hardware'; @@ -524,6 +534,17 @@ class AssetsController extends AdminController // Was the asset updated? if($asset->save()) { + if (Input::has('checkin_at')) { + + if (!strtotime(Input::get('checkin_at'))) { + $logaction->created_at = date("Y-m-d h:i:s"); + } + + if (Input::get('checkin_at')!= date("Y-m-d")){ + $logaction->created_at = e(Input::get('checkin_at')).' 00:00:00'; + } + } + $logaction->asset_id = $asset->id; $logaction->location_id = NULL; $logaction->asset_type = 'hardware'; diff --git a/app/database/seeds/CategoriesSeeder.php b/app/database/seeds/CategoriesSeeder.php index 5d1e1ce054..8e44d94516 100755 --- a/app/database/seeds/CategoriesSeeder.php +++ b/app/database/seeds/CategoriesSeeder.php @@ -15,6 +15,7 @@ class CategoriesSeeder extends Seeder 'use_default_eula' => 0, 'require_acceptance' => 0, 'deleted_at' => NULL, + 'eula_text' => NULL, ); $date = new DateTime; @@ -26,6 +27,7 @@ class CategoriesSeeder extends Seeder 'use_default_eula' => 0, 'require_acceptance' => 0, 'deleted_at' => NULL, + 'eula_text' => NULL, ); $date = new DateTime; @@ -37,6 +39,7 @@ class CategoriesSeeder extends Seeder 'use_default_eula' => 0, 'require_acceptance' => 0, 'deleted_at' => NULL, + 'eula_text' => NULL, ); $date = new DateTime; @@ -48,6 +51,7 @@ class CategoriesSeeder extends Seeder 'use_default_eula' => 0, 'require_acceptance' => 0, 'deleted_at' => NULL, + 'eula_text' => NULL, ); $date = new DateTime; @@ -59,6 +63,7 @@ class CategoriesSeeder extends Seeder 'use_default_eula' => 0, 'require_acceptance' => 0, 'deleted_at' => NULL, + 'eula_text' => NULL, ); diff --git a/app/lang/en/admin/hardware/form.php b/app/lang/en/admin/hardware/form.php index d81ec9f721..337b49c571 100755 --- a/app/lang/en/admin/hardware/form.php +++ b/app/lang/en/admin/hardware/form.php @@ -6,6 +6,8 @@ return array( 'bulk_update_help' => 'This form allows you to update multiple assets at once. Only fill in the fields you need to change. Any fields left blank will remain unchanged. ', 'bulk_update_warn' => 'You are about to edit the properties of :asset_count assets.', 'checkedout_to' => 'Checked Out To', + 'checkout_date' => 'Checkout Date', + 'checkin_date' => 'Checkin Date', 'checkout_to' => 'Checkout to', 'cost' => 'Purchase Cost', 'create' => 'Create Asset', diff --git a/app/models/Actionlog.php b/app/models/Actionlog.php index a5a352f13f..3cc5892315 100755 --- a/app/models/Actionlog.php +++ b/app/models/Actionlog.php @@ -7,6 +7,7 @@ class Actionlog extends Eloquent protected $table = 'asset_logs'; public $timestamps = true; + protected $fillable = ['created_at']; public function assetlog() @@ -23,7 +24,7 @@ class Actionlog extends Eloquent { return $this->belongsTo('License','asset_id')->withTrashed(); } - + public function accessorylog() { return $this->belongsTo('Accessory','accessory_id')->withTrashed(); @@ -38,8 +39,8 @@ class Actionlog extends Eloquent { return $this->belongsTo('User','checkedout_to')->withTrashed(); } - - + + /** * Check if the file exists, and if it does, force a download diff --git a/app/models/Asset.php b/app/models/Asset.php index 9fa658ad3c..7d4b830afd 100755 --- a/app/models/Asset.php +++ b/app/models/Asset.php @@ -14,6 +14,8 @@ class Asset extends Depreciable 'note' => 'alpha_space', 'notes' => 'alpha_space', 'pysical' => 'integer', + 'checkout_date' => 'date|max:10|min:10', + 'checkin_date' => 'date|max:10|min:10', 'supplier_id' => 'integer', 'asset_tag' => 'required|alpha_space|min:3|max:255|unique:assets,asset_tag,{id}', //'serial' => 'required|alpha_dash|min:3|max:255|unique:assets,serial,{id}', @@ -29,7 +31,7 @@ class Asset extends Depreciable { return $this->model->depreciation; } - + /** * Get uploads for this asset */ @@ -131,9 +133,9 @@ class Asset extends Depreciable { return $this->belongsTo('Model','model_id')->withTrashed(); } - + public static function getExpiringWarrantee($days = 30) { - + return Asset::where('archived','=','0') ->whereNotNUll('warranty_months') ->whereNotNUll('purchase_date') @@ -203,26 +205,26 @@ class Asset extends Depreciable return false; } } - - public function requireAcceptance() { + + public function requireAcceptance() { return $this->model->category->require_acceptance; } - - public function getEula() { - + + public function getEula() { + $Parsedown = new Parsedown(); - + if ($this->model->category->eula_text) { return $Parsedown->text(e($this->model->category->eula_text)); } elseif (Setting::getSettings()->default_eula_text) { return $Parsedown->text(e(Setting::getSettings()->default_eula_text)); } else { return null; - } - + } + } - - + + /** ----------------------------------------------- diff --git a/app/views/backend/hardware/checkin.blade.php b/app/views/backend/hardware/checkin.blade.php index 34f1549357..36ba2e24c3 100755 --- a/app/views/backend/hardware/checkin.blade.php +++ b/app/views/backend/hardware/checkin.blade.php @@ -46,6 +46,17 @@ @endif + +
+ +
+ + + {{ $errors->first('checkin_at', '
:message') }} +
+
+ +
diff --git a/app/views/backend/hardware/checkout.blade.php b/app/views/backend/hardware/checkout.blade.php index 5788b0373a..6260da7f2e 100755 --- a/app/views/backend/hardware/checkout.blade.php +++ b/app/views/backend/hardware/checkout.blade.php @@ -65,6 +65,16 @@
+ +
+ +
+ + + {{ $errors->first('checkout_at', '
:message') }} +
+
+
@@ -73,7 +83,7 @@ {{ $errors->first('note', '
:message') }}
- + @if ($asset->requireAcceptance())
@@ -81,8 +91,8 @@
@endif - - + + @if ($asset->getEula())