Ivan Nieto Vivanco
1509c512a5
Add guard clauses around some License and LicenseSeat models functions
2023-09-06 11:54:11 -06:00
snipe
9da36833be
Removed unused method
...
Signed-off-by: snipe <snipe@snipe.net>
2023-04-18 02:43:44 -07:00
snipe
e84ba0c7a0
Revert back to old method name
...
Signed-off-by: snipe <snipe@snipe.net>
2023-04-18 02:06:32 -07:00
snipe
de78f8d41f
Renamed/refactorered licenses method
...
Signed-off-by: snipe <snipe@snipe.net>
2023-04-18 01:01:44 -07:00
snipe
74babfa081
Added maxlength="10"
...
Signed-off-by: snipe <snipe@snipe.net>
2023-04-12 08:26:36 -07:00
snipe
afd01869a5
Check for Carbon exception
...
Signed-off-by: snipe <snipe@snipe.net>
2023-04-11 23:35:41 -07:00
Ivan Nieto Vivanco
6bd72125bd
Deletes problematic cast
2023-02-23 22:31:41 -06:00
snipe
05f6d0bd5e
Merge pull request #11984 from nh314/Correct-assignedusers-relation
...
Correct assignedusers relation setting
2023-02-21 20:15:20 -08:00
snipe
3c4f254583
Enforce Y-m-d as date format for date fields
...
Signed-off-by: snipe <snipe@snipe.net>
2023-01-24 13:38:53 -08:00
Brady Wetherington
c4f900e9af
Change license_seat changing method to properly 'true up' license seats
2023-01-04 13:02:53 -08:00
Phan Nguyen
e457b2e98d
Correct assignedusers relation setting
2022-10-17 13:10:09 +07:00
snipe
9cf5f30c77
Set safeMode to true and use helper for all parsedown
...
Signed-off-by: snipe <snipe@snipe.net>
2022-08-29 11:26:47 -07:00
Godfrey M
2c1f368828
adds validation for all purchase costs variables
2022-05-10 16:26:06 -07:00
snipe
9aac1cbba4
Merge branch 'master' into rcs/merge_master_into_develop_for_rc_8
...
Signed-off-by: snipe <snipe@snipe.net>
# Conflicts:
# README.md
# app/Console/Commands/MoveUploadsToNewDisk.php
# app/Http/Controllers/ActionlogController.php
# app/Http/Controllers/Api/LicensesController.php
# app/Http/Controllers/Api/StatuslabelsController.php
# app/Http/Controllers/Assets/AssetCheckinController.php
# app/Http/Controllers/Licenses/LicensesController.php
# app/Http/Controllers/Users/BulkUsersController.php
# app/Http/Requests/AssetCheckoutRequest.php
# app/Importer/LicenseImporter.php
# app/Models/Actionlog.php
# app/Models/License.php
# app/Models/User.php
# app/Observers/AssetObserver.php
# composer.lock
# config/version.php
# database/factories/LicenseFactory.php
# database/migrations/2015_09_21_235926_create_custom_field_custom_fieldset.php
# database/migrations/2018_10_18_191228_add_kits_licenses_table.php
# database/migrations/2018_10_19_153910_add_kits_table.php
# database/migrations/2018_10_19_154013_add_kits_models_table.php
# database/migrations/2019_02_07_185953_add_kits_consumables_table.php
# database/migrations/2019_02_07_190030_add_kits_accessories_table.php
# package-lock.json
# package.json
# public/css/dist/all.css
# public/css/dist/bootstrap-table.css
# public/js/dist/bootstrap-table.js
# public/mix-manifest.json
# resources/lang/ar/general.php
# resources/lang/ar/passwords.php
# resources/lang/cs/general.php
# resources/lang/cs/passwords.php
# resources/lang/de/admin/custom_fields/general.php
# resources/lang/de/admin/settings/general.php
# resources/lang/de/admin/settings/message.php
# resources/lang/fr/admin/custom_fields/general.php
# resources/lang/fr/admin/hardware/general.php
# resources/lang/fr/admin/locations/table.php
# resources/lang/fr/admin/settings/message.php
# resources/lang/hu/admin/custom_fields/general.php
# resources/lang/hu/admin/settings/general.php
# resources/lang/hu/general.php
# resources/lang/it/admin/settings/general.php
# resources/lang/nl/admin/custom_fields/general.php
# resources/lang/nl/admin/settings/general.php
# resources/lang/nl/general.php
# resources/lang/pl/admin/custom_fields/general.php
# resources/lang/sv-SE/passwords.php
# resources/lang/tr/general.php
# resources/views/hardware/view.blade.php
# resources/views/partials/bootstrap-table.blade.php
# resources/views/reports/activity.blade.php
# resources/views/users/print.blade.php
2022-04-28 17:49:06 +01:00
snipe
1441cf9f4f
Ports #10494 to master
...
Signed-off-by: snipe <snipe@snipe.net>
2022-04-12 21:04:57 +01:00
snipe
5fded57ec6
Merge remote-tracking branch 'origin/master' into develop
...
Signed-off-by: snipe <snipe@snipe.net>
# Conflicts:
# README.md
# app/Console/Commands/LdapSync.php
# app/Http/Controllers/Api/AssetsController.php
# app/Http/Controllers/ProfileController.php
# app/Importer/ItemImporter.php
# app/Importer/UserImporter.php
# app/Models/Asset.php
# app/Models/License.php
# app/Providers/AppServiceProvider.php
# app/Services/LdapAd.php
# config/version.php
# public/js/build/app.js
# public/js/dist/all.js
# public/mix-manifest.json
# resources/lang/ar/button.php
# resources/lang/de/admin/companies/general.php
# resources/lang/de/admin/custom_fields/general.php
# resources/lang/de/admin/groups/titles.php
# resources/lang/de/admin/hardware/form.php
# resources/lang/de/admin/hardware/general.php
# resources/lang/de/admin/hardware/message.php
# resources/lang/de/admin/hardware/table.php
# resources/lang/de/admin/kits/general.php
# resources/lang/de/admin/locations/table.php
# resources/lang/de/admin/reports/general.php
# resources/lang/de/admin/settings/general.php
# resources/lang/de/admin/settings/message.php
# resources/lang/de/admin/users/general.php
# resources/lang/de/general.php
# resources/lang/de/mail.php
# resources/lang/en/admin/asset_maintenances/message.php
# resources/lang/en/admin/asset_maintenances/table.php
# resources/lang/en/admin/companies/general.php
# resources/lang/en/admin/companies/message.php
# resources/lang/en/admin/custom_fields/general.php
# resources/lang/en/admin/depreciations/general.php
# resources/lang/en/admin/groups/titles.php
# resources/lang/en/admin/hardware/form.php
# resources/lang/en/admin/hardware/general.php
# resources/lang/en/admin/hardware/table.php
# resources/lang/en/admin/kits/general.php
# resources/lang/en/admin/locations/table.php
# resources/lang/en/admin/reports/general.php
# resources/lang/en/admin/settings/general.php
# resources/lang/en/admin/settings/message.php
# resources/lang/en/admin/users/general.php
# resources/lang/en/button.php
# resources/lang/en/general.php
# resources/lang/en/help.php
# resources/lang/en/mail.php
# resources/lang/en/passwords.php
# resources/lang/hu/admin/hardware/general.php
# resources/lang/hu/admin/hardware/table.php
# resources/lang/hu/admin/locations/table.php
# resources/lang/is/admin/locations/table.php
# resources/lang/ko/admin/custom_fields/general.php
# resources/lang/ko/general.php
# resources/lang/nl/admin/hardware/general.php
# resources/lang/nl/admin/hardware/message.php
# resources/lang/nl/admin/hardware/table.php
# resources/lang/nl/admin/locations/table.php
# resources/lang/nl/admin/statuslabels/message.php
# resources/lang/nl/admin/users/general.php
# resources/lang/no/admin/companies/general.php
# resources/lang/no/admin/custom_fields/general.php
# resources/lang/no/admin/depreciations/general.php
# resources/lang/no/admin/depreciations/table.php
# resources/lang/no/admin/groups/titles.php
# resources/lang/no/admin/hardware/form.php
# resources/lang/no/admin/hardware/general.php
# resources/lang/no/admin/hardware/table.php
# resources/lang/no/admin/kits/general.php
# resources/lang/no/admin/locations/table.php
# resources/lang/no/admin/reports/general.php
# resources/lang/no/admin/settings/general.php
# resources/lang/no/admin/settings/message.php
# resources/lang/no/admin/statuslabels/message.php
# resources/lang/no/admin/users/general.php
# resources/lang/no/button.php
# resources/lang/no/general.php
# resources/lang/no/mail.php
# resources/lang/no/validation.php
# resources/lang/pl/admin/companies/general.php
# resources/lang/pl/admin/custom_fields/general.php
# resources/lang/pl/admin/depreciations/general.php
# resources/lang/pl/admin/depreciations/table.php
# resources/lang/pl/admin/groups/titles.php
# resources/lang/pl/admin/hardware/form.php
# resources/lang/pl/admin/hardware/general.php
# resources/lang/pl/admin/hardware/table.php
# resources/lang/pl/admin/kits/general.php
# resources/lang/pl/admin/locations/table.php
# resources/lang/pl/admin/reports/general.php
# resources/lang/pl/admin/settings/general.php
# resources/lang/pl/admin/settings/message.php
# resources/lang/pl/admin/users/general.php
# resources/lang/pl/button.php
# resources/lang/pl/general.php
# resources/lang/pt-PT/admin/companies/general.php
# resources/lang/pt-PT/admin/custom_fields/general.php
# resources/lang/pt-PT/admin/depreciations/general.php
# resources/lang/pt-PT/admin/depreciations/table.php
# resources/lang/pt-PT/admin/groups/titles.php
# resources/lang/pt-PT/admin/hardware/form.php
# resources/lang/pt-PT/admin/hardware/general.php
# resources/lang/pt-PT/general.php
# resources/lang/pt-PT/help.php
# resources/lang/pt-PT/validation.php
# resources/lang/ro/admin/companies/general.php
# resources/lang/ro/admin/custom_fields/general.php
# resources/lang/ro/admin/groups/titles.php
# resources/lang/ro/admin/hardware/form.php
# resources/lang/ro/admin/hardware/general.php
# resources/lang/ro/admin/hardware/message.php
# resources/lang/ro/admin/hardware/table.php
# resources/lang/ro/admin/locations/table.php
# resources/lang/ro/admin/settings/message.php
# resources/lang/ru/admin/companies/general.php
# resources/lang/ru/admin/custom_fields/general.php
# resources/lang/ru/admin/settings/general.php
# resources/lang/ru/button.php
# resources/lang/ru/general.php
# resources/lang/ru/validation.php
# resources/lang/sk/admin/settings/general.php
# resources/lang/sk/button.php
# resources/lang/sk/general.php
# resources/lang/tr/admin/hardware/form.php
# resources/lang/tr/admin/hardware/table.php
# resources/lang/tr/admin/kits/general.php
# resources/lang/tr/admin/locations/table.php
# resources/lang/tr/admin/reports/general.php
# resources/lang/tr/admin/settings/general.php
# resources/lang/tr/admin/settings/message.php
# resources/lang/tr/admin/statuslabels/message.php
# resources/lang/tr/admin/users/general.php
# resources/lang/tr/button.php
# resources/lang/tr/general.php
# resources/lang/zh-CN/admin/companies/general.php
# resources/lang/zh-CN/admin/custom_fields/general.php
# resources/lang/zh-CN/admin/depreciations/general.php
# resources/lang/zh-CN/admin/depreciations/table.php
# resources/lang/zh-CN/admin/groups/titles.php
# resources/lang/zh-CN/admin/hardware/form.php
# resources/lang/zh-CN/admin/hardware/general.php
# resources/lang/zh-CN/admin/hardware/message.php
# resources/lang/zh-CN/admin/hardware/table.php
# resources/lang/zh-CN/admin/kits/general.php
# resources/lang/zh-CN/admin/locations/table.php
# resources/lang/zh-CN/admin/reports/general.php
# resources/lang/zh-CN/admin/settings/general.php
# resources/lang/zh-CN/admin/settings/message.php
# resources/lang/zh-CN/admin/statuslabels/message.php
# resources/lang/zh-CN/admin/users/general.php
# resources/lang/zh-CN/button.php
# resources/lang/zh-CN/general.php
# resources/lang/zh-CN/mail.php
# resources/views/depreciations/edit.blade.php
2022-02-01 18:53:05 -08:00
Ivan Nieto Vivanco
a05795420a
Respect the default value of 60 days in expiring licenses
2022-01-18 14:34:14 -06:00
Ivan Nieto Vivanco
42d86bf57b
Adds default values if the expiring alerts threshold is null
2022-01-18 14:21:49 -06:00
Brad
6b6a83a525
Removing something stupid PHPStorm put in the use area
2022-01-10 14:21:19 -05:00
Brad
81084fa717
Fixed #7824
...
Previously there was a 999 max seats on Licenses as anything above that seemed to cause slowdowns and failure.
This commit allievates those pain points
- removed freeSeats as a hydrated Eloquent model on JSON requests for the licenses index
- removed 'licenseSeats.user', 'licenseSeats.asset' from the 'with' clause as it's not needed in the view (Datatabales takes care of that)
- removed the 999 max seats limit from the License Model,
- reworked how new license seats are created when increasing seats or creating licenses
- Added an index the license_seats table to help speed up lookups
2022-01-10 14:03:28 -05:00
Laravel Shift
b62d1f49e4
Shift cleanup
2021-06-10 20:19:27 +00:00
Laravel Shift
104b441e0d
Shift to class based factories
2021-06-10 20:17:44 +00:00
Laravel Shift
9f43ce97e9
Convert deprecated $dates
property to $casts
2021-06-10 20:17:18 +00:00
Laravel Shift
802dc9240d
Shift bindings
...
PHP 5.5.9+ adds the new static `class` property which provides the fully qualified class name. This is preferred over using class name strings as these references are checked by the parser.
2021-06-10 20:16:56 +00:00
Laravel Shift
934afa036f
Adopt Laravel coding style
...
Shift automatically applies the Laravel coding style - which uses the PSR-2 coding style as a base with some minor additions.
You may customize the adopted coding style by adding your own [PHP CS Fixer][1] `.php_cs` config file to your project root. Feel free to use [Shift's Laravel ruleset][2] to help you get started.
[1]: https://github.com/FriendsOfPHP/PHP-CS-Fixer
[2]: https://gist.github.com/laravel-shift/cab527923ed2a109dda047b97d53c200
2021-06-10 20:15:52 +00:00
snipe
0031fab0fe
Added termination date, depreciation in license column selection [ch14505] ( #9052 )
2021-01-27 01:34:32 -08:00
snipe
fa5134603f
Added type casting and a few more validation rules
...
Signed-off-by: snipe <snipe@snipe.net>
2020-04-22 06:37:40 -07:00
snipe
5290c47e2a
Merge branch 'develop' into v5-master-develop-integration
...
# Conflicts:
# .env.example
# .travis.yml
# Dockerfile
# README.md
# app/Console/Commands/LdapSync.php
# app/Console/Kernel.php
# app/Http/Controllers/AccessoriesController.php
# app/Http/Controllers/Api/AccessoriesController.php
# app/Http/Controllers/Api/AssetsController.php
# app/Http/Controllers/Api/LocationsController.php
# app/Http/Controllers/Api/SettingsController.php
# app/Http/Controllers/Api/UsersController.php
# app/Http/Controllers/AssetModelsController.php
# app/Http/Controllers/Assets/AssetFilesController.php
# app/Http/Controllers/Assets/AssetsController.php
# app/Http/Controllers/CategoriesController.php
# app/Http/Controllers/CompaniesController.php
# app/Http/Controllers/ComponentsController.php
# app/Http/Controllers/ConsumablesController.php
# app/Http/Controllers/DepartmentsController.php
# app/Http/Controllers/LicensesController.php
# app/Http/Controllers/LocationsController.php
# app/Http/Controllers/ManufacturersController.php
# app/Http/Controllers/ReportsController.php
# app/Http/Controllers/SettingsController.php
# app/Http/Controllers/SuppliersController.php
# app/Http/Controllers/UsersController.php
# app/Http/Middleware/EncryptCookies.php
# app/Http/Requests/AssetRequest.php
# app/Http/Transformers/AssetMaintenancesTransformer.php
# app/Importer/AssetImporter.php
# app/Models/AssetMaintenance.php
# app/Models/Location.php
# app/Models/User.php
# composer.json
# composer.lock
# config/backup.php
# config/database.php
# config/version.php
# public/mix-manifest.json
# resources/lang/en-ID/general.php
# resources/lang/vi/admin/settings/general.php
# resources/views/accessories/edit.blade.php
# resources/views/hardware/view.blade.php
# resources/views/layouts/default.blade.php
# tests/api/ApiCategoriesCest.php
2019-11-18 19:49:39 -08:00
snipe
0290257734
Limit license seats to 999 to prevent latency
2019-10-28 13:48:18 -07:00
Martin Meredith
e3e0d57f56
Minor code cleanup bits and bobs ( #6805 )
...
* Add IDE Helper files
* Cleanup imports
- Alphabetises imports
- Removes unused imports
* Add Platform requirements
* Move filling asset into block where asset exists
* Remove duplicate array keys
2019-03-13 20:12:03 -07:00
snipe
67d2953080
Fixed #6386 - licenses not searching on category name
2018-11-02 17:15:04 -07:00
snipe
192aa9eb71
Fixed #6386 - licenses not searching on category name
2018-11-02 17:14:08 -07:00
Till Deeke
775e46288e
Cleanup of model attributes
2018-08-06 14:46:10 +02:00
snipe
2c38036123
Improvement: Better documentation, small refactors ( #6017 )
...
* Better documentation, small refactors
* Small comment fixes
2018-08-01 00:06:41 -07:00
Till Deeke
b6e3715cd8
Fix: No Notifications for checking out Consumables ( #5898 )
...
* Adds a method to consumables to check if a notification should be sent
Adds the checkin_email method to Consumables, this gets checked in notifications when checking out the consumable.
Without the method, no notifications get sent for checking out consumables.
* Fixes the checkin_email method on the License model
This should allow the License to also send checkout/checkin notifications again.
2018-07-20 13:22:49 -07:00
Till Deeke
baa3be728d
Refactoring: A nicer and easier syntax for searching models ( #5841 )
...
* Adds the ability to search by dates
Adding extra „where“-conditions to the „TextSearch“ queries, allowing the users to search by dates
* Adds missing dates to $dates in models
* Removes duplicated „where“ conditions
* Adds the Searchable trait to models, defining the searchable attributes and relations
* Removes the old text search methods
* Adds back additional conditions to the search
These conditions could not be modeled in the „attributes“ or „relations“, so we include them here
* Removes unnecessary check for the deleted_at attribute
* Fixes typo in comments
* suppresses errors from Codacy
We can safely ignore the error codacy is throwing here, since this method is a standin/noop for models who need to implement more advanced searches
2018-07-16 14:13:07 -07:00
snipe
aab190423f
Partial fix for license+category tests
2018-05-16 18:35:11 -07:00
snipe
f48171dcab
Add category to licenses
2018-05-08 00:14:38 -07:00
snipe
7b8362b64c
Added license categories
2018-05-04 21:01:38 -07:00
Daniel Meltzer
9ee2c6be57
Api tests2 ( #5098 )
...
* Cleanup
* API tests for asset models and related cleanup/improvements
* Api license test. Tests incomplete because create/update/destroy are not implemented yet in the controller
* API Category tests.
* Manufacturers API Test.
* Implement License Create/Update/Delete Methods for API and enable test.
* Add missing gate for api. Fixes only superadmins being able to generate Personal Access Toekns
2018-02-25 12:10:02 -08:00
snipe
17405f5de1
Fixed #4413 - Next license seat not bering assigned correctly
2017-11-20 19:21:05 -08:00
snipe
012afe99e2
Set purchase date to date type
2017-11-09 13:27:58 -08:00
Kasey
ab9729c39a
fix to availCount() (licenseSeatRelation) ( #4378 )
...
`license_seats`.`user_id` represents an overall "owner" of the license
2017-11-03 09:51:15 -07:00
snipe
104cc2bf11
Make sure the seat hasn’t been deleted
2017-11-02 21:07:59 -07:00
snipe
27d795508d
Fixed n+1 query, changed checkout behavior to just ask for a license ID
...
We’re offloading the freeSeat() to the checkout page now
2017-11-02 19:16:09 -07:00
snipe
a7ad48a02a
Make fields nullable for licenses
2017-09-27 22:11:20 -07:00
snipe
f2ee7dcabb
Fixes #4001 - license checkout not working
2017-09-25 21:40:43 -07:00
snipe
56f88d2c22
Fixes #3836 - Adds supplier to licenses column
2017-08-10 14:38:04 -07:00
Daniel Meltzer
44683c784f
Importer: Add License Importer and refactor ( #3143 )
...
* Major code simplification of the importers.
Move towards using Model::fill and Model::update rather than reinventing
the wheel. This makes the updating/creating logic a lot clearer, and
allows for the deletion of a lot of code. Also allows for supporting of
more fields in the future really easily.
* Cleanup constructors and use setters instead.
* Set the LC_MONETARY locale, and use it to strip currency symbols in Helper::parseFloat()
* Move licenseseat creation/deletion logic into an event handler on the model rather than the controller.
* Move the logging of parsed values to array_smart_fetch rather than writing it out everywhere
* Move to storing dates as carbon rather than strings. Allows for the parsing of more arbitrary strings from the importer
* Add a license importer with support for checking out to users or assets.
* Make a directory for sample/mock import csvs and populate it
* Adjust how we store/retrieve dates to fix some issues the tests found.
2017-01-10 16:19:18 -08:00
snipe
51ceaedfaf
Small phpcbf cleanup
2016-12-29 14:02:18 -08:00