9e68497b63
Moved Traits into directory and modify the users to point to them
2025-10-21 16:45:58 +01:00
b7193a06fd
Normalize advanced search
2025-10-08 20:51:35 +01:00
384652b3df
add total cost to accessories
2025-09-16 10:10:49 -07:00
74b98083e2
Override the getEula() method at the SnipeModel level
2025-09-15 20:05:35 +01:00
b06c58fe7b
Switch to older style rules for consistency
...
Signed-off-by: snipe <snipe@snipe.net >
2025-09-03 15:06:27 +01:00
f5c8b3eb04
Fixed #17791 - increase size of purchase cost field
...
Signed-off-by: snipe <snipe@snipe.net >
2025-09-03 15:03:49 +01:00
7b5d90dd81
Moved model traits into proper directory
...
Signed-off-by: snipe <snipe@snipe.net >
2025-08-28 18:23:26 +01:00
95f867b267
Code formatting fixes
...
Signed-off-by: snipe <snipe@snipe.net >
2025-07-09 21:48:53 +01:00
cd989768d4
Added HasUploads trait and remove uploads method for models
...
Signed-off-by: snipe <snipe@snipe.net >
2025-06-27 19:32:22 +01:00
358b70e280
Handle category missing in Accessory
2025-06-10 10:36:59 -07:00
4e0bcac1a1
Furhter validation for scoped locations
...
There is a new validator introduced that checks on object update (assets, users, etc.) if the company matches the locations company.
In case of the creation of a new location it must be checked that the parent matches the own company.
On updating a location a check for every related object must be made to see if the company matches the location.
Signed-off-by: Tobias Regnery <tobias.regnery@gmail.com >
2025-01-24 11:12:11 +01:00
cae8aa7840
Added maxlengths to additional fields
...
Signed-off-by: snipe <snipe@snipe.net >
2024-10-01 14:02:54 +01:00
c93229179b
Added order by created_by to accessories
...
Signed-off-by: snipe <snipe@snipe.net >
2024-09-19 16:45:39 +01:00
1582d81e5b
Change user_id to created_by
...
Signed-off-by: snipe <snipe@snipe.net >
2024-09-17 22:16:41 +01:00
b18baf74d2
added options to checkout accessoires to locations and assets
...
Added #14979 : add checkout functionality to accessoires
2024-07-29 10:54:53 +02:00
19bd99d159
Updated count
...
Signed-off-by: snipe <snipe@snipe.net >
2024-07-18 17:33:24 +01:00
9858cc5baf
Removed debugging
...
Signed-off-by: snipe <snipe@snipe.net >
2024-07-18 04:43:30 +01:00
b5b60f22d5
Removed int
...
Signed-off-by: snipe <snipe@snipe.net >
2024-07-18 03:48:21 +01:00
f56006fb6b
More refactoring
...
Signed-off-by: snipe <snipe@snipe.net >
2024-07-18 01:46:53 +01:00
79a13e3618
Added numCheckedOut method
...
Signed-off-by: snipe <snipe@snipe.net >
2024-07-18 00:26:58 +01:00
695428cd44
Guard against unrelated category
2024-03-07 16:59:01 -08:00
2353c8199c
Set qty mutators
...
Signed-off-by: snipe <snipe@snipe.net >
2023-11-22 15:25:22 +00:00
96440834bd
Move the declinedCheckout function so it don/'t separate the class properties
2023-08-14 16:16:28 -06:00
4796598bb6
Add declinedCheckout method to Accessory model
2023-08-14 14:35:31 -06:00
ffdc0d76f7
Fixed accessories verifying that enough remain to be checked out
...
Signed-off-by: snipe <snipe@snipe.net >
2023-04-06 18:40:29 -07:00
de4f7bd274
Merge pull request #12408 from snipe/fixes/stricter_date_rectrictions_on_validation
...
Enforce Y-m-d as date format for date fields
2023-02-15 12:54:22 -08:00
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
dceb77d4d4
Refactored numRemaining, removed unnecessary numCheckout
...
Signed-off-by: snipe <snipe@snipe.net >
2023-01-21 14:40:20 -08:00
eb81c290dc
Accessory file upload
...
Signed-off-by: snipe <snipe@snipe.net >
2022-11-01 19:50:39 -07:00
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
728338bfa8
Merge pull request #10824 from inietov/fixes/accessories_consumables_negative_numbers_develop
...
Fixes Accessories total quantity shows a negative number for develop branch
2022-06-08 10:53:57 -07:00
2c1f368828
adds validation for all purchase costs variables
2022-05-10 16:26:06 -07:00
570dd09dcd
Add validation to Accessories and Consumables to not let the user update the number of items to less than they already have checked out
2022-03-15 17:52:19 -06:00
b876d0abb0
Merge remote-tracking branch 'origin/master' into develop
...
Signed-off-by: snipe <snipe@snipe.net >
# Conflicts:
# .env.example
# app/Http/Controllers/Auth/LoginController.php
# app/Http/Kernel.php
# app/Http/Transformers/ActionlogsTransformer.php
# app/Importer/AssetImporter.php
# app/Models/Accessory.php
# app/Models/Consumable.php
# app/Presenters/AccessoryPresenter.php
# app/Presenters/ComponentPresenter.php
# app/Presenters/ConsumablePresenter.php
# app/Providers/AuthServiceProvider.php
# composer.json
# composer.lock
# config/app.php
# config/cors.php
# config/version.php
# package-lock.json
# public/js/build/app.js
# public/js/build/app.js.LICENSE.txt
# public/js/dist/all.js
# public/mix-manifest.json
# resources/views/accessories/view.blade.php
# resources/views/consumables/view.blade.php
# resources/views/settings/saml.blade.php
# routes/api.php
2022-03-03 21:59:38 -08:00
ac8a7d0bc9
Made notes field fillable and searchable
...
Signed-off-by: snipe <snipe@snipe.net >
2022-03-03 20:29:48 -08:00
e27065fe16
Merge branch 'develop-v6-integration' into develop-v6-rc1
...
Signed-off-by: snipe <snipe@snipe.net >
# Conflicts:
# .all-contributorsrc
# README.md
# app/Console/Commands/ResetDemoSettings.php
# app/Helpers/Helper.php
# app/Http/Controllers/Api/AccessoriesController.php
# app/Http/Controllers/Api/AssetsController.php
# app/Http/Controllers/Api/CategoriesController.php
# app/Http/Controllers/Api/ComponentsController.php
# app/Http/Controllers/Api/ConsumablesController.php
# app/Http/Controllers/Api/LocationsController.php
# app/Http/Controllers/Api/StatuslabelsController.php
# app/Http/Controllers/Api/SuppliersController.php
# app/Http/Controllers/AssetMaintenancesController.php
# app/Http/Controllers/Auth/ForgotPasswordController.php
# app/Http/Controllers/DepreciationsController.php
# app/Http/Controllers/ReportsController.php
# app/Http/Controllers/SettingsController.php
# app/Http/Requests/ImageUploadRequest.php
# app/Http/Transformers/ActionlogsTransformer.php
# app/Http/Transformers/DepreciationsTransformer.php
# app/Listeners/CheckoutableListener.php
# app/Models/Accessory.php
# app/Models/Asset.php
# app/Models/Company.php
# app/Models/Ldap.php
# app/Models/User.php
# app/Presenters/AssetPresenter.php
# app/Presenters/CategoryPresenter.php
# composer.json
# composer.lock
# config/version.php
# database/factories/AssetModelFactory.php
# database/migrations/2020_10_22_233743_move_accessory_checkout_note_to_join_table.php
# database/seeds/AssetModelSeeder.php
# package-lock.json
# public/css/build/AdminLTE.css
# public/css/build/app.css
# public/css/build/overrides.css
# public/css/dist/all.css
# public/css/dist/bootstrap-table.css
# public/css/dist/skins/skin-black-dark.css
# public/css/dist/skins/skin-black-dark.min.css
# public/css/dist/skins/skin-black.css
# public/css/dist/skins/skin-black.min.css
# public/css/dist/skins/skin-blue-dark.css
# public/css/dist/skins/skin-blue-dark.min.css
# public/css/dist/skins/skin-blue.css
# public/css/dist/skins/skin-blue.min.css
# public/css/dist/skins/skin-contrast.css
# public/css/dist/skins/skin-contrast.min.css
# public/css/dist/skins/skin-green-dark.css
# public/css/dist/skins/skin-green-dark.min.css
# public/css/dist/skins/skin-green.css
# public/css/dist/skins/skin-green.min.css
# public/css/dist/skins/skin-orange-dark.css
# public/css/dist/skins/skin-orange-dark.min.css
# public/css/dist/skins/skin-orange.css
# public/css/dist/skins/skin-orange.min.css
# public/css/dist/skins/skin-purple-dark.css
# public/css/dist/skins/skin-purple-dark.min.css
# public/css/dist/skins/skin-purple.css
# public/css/dist/skins/skin-purple.min.css
# public/css/dist/skins/skin-red-dark.css
# public/css/dist/skins/skin-red-dark.min.css
# public/css/dist/skins/skin-red.css
# public/css/dist/skins/skin-red.min.css
# public/css/dist/skins/skin-yellow-dark.css
# public/css/dist/skins/skin-yellow-dark.min.css
# public/css/dist/skins/skin-yellow.css
# public/css/dist/skins/skin-yellow.min.css
# public/js/build/app.js
# public/js/build/vendor.js
# public/js/dist/all.js
# public/js/dist/bootstrap-table.js
# public/mix-manifest.json
# resources/assets/js/vue.js
# resources/lang/af/validation.php
# resources/lang/ar/admin/settings/general.php
# resources/lang/ar/validation.php
# resources/lang/bg/admin/settings/general.php
# resources/lang/bg/validation.php
# resources/lang/cs/admin/settings/general.php
# resources/lang/cs/validation.php
# resources/lang/cy/help.php
# resources/lang/cy/validation.php
# resources/lang/da/admin/settings/general.php
# resources/lang/da/validation.php
# resources/lang/de/admin/settings/general.php
# resources/lang/de/validation.php
# resources/lang/el/validation.php
# resources/lang/en-GB/admin/settings/general.php
# resources/lang/en-GB/validation.php
# resources/lang/en-ID/admin/hardware/table.php
# resources/lang/en-ID/admin/settings/general.php
# resources/lang/en-ID/validation.php
# resources/lang/es-CO/admin/settings/general.php
# resources/lang/es-CO/auth/message.php
# resources/lang/es-CO/button.php
# resources/lang/es-CO/help.php
# resources/lang/es-CO/validation.php
# resources/lang/es-ES/admin/settings/general.php
# resources/lang/es-ES/auth/message.php
# resources/lang/es-ES/button.php
# resources/lang/es-ES/help.php
# resources/lang/es-ES/validation.php
# resources/lang/es-MX/admin/settings/general.php
# resources/lang/es-MX/validation.php
# resources/lang/es-VE/admin/settings/general.php
# resources/lang/es-VE/auth/message.php
# resources/lang/es-VE/button.php
# resources/lang/es-VE/help.php
# resources/lang/es-VE/validation.php
# resources/lang/et/validation.php
# resources/lang/fa/validation.php
# resources/lang/fi/admin/settings/general.php
# resources/lang/fi/validation.php
# resources/lang/fil/validation.php
# resources/lang/fr/admin/settings/general.php
# resources/lang/fr/validation.php
# resources/lang/ga-IE/validation.php
# resources/lang/he/admin/settings/general.php
# resources/lang/he/general.php
# resources/lang/he/validation.php
# resources/lang/hr/validation.php
# resources/lang/hu/validation.php
# resources/lang/id/validation.php
# resources/lang/is/admin/categories/general.php
# resources/lang/is/admin/companies/message.php
# resources/lang/is/admin/companies/table.php
# resources/lang/is/admin/components/general.php
# resources/lang/is/admin/components/table.php
# resources/lang/is/admin/consumables/table.php
# resources/lang/is/admin/depreciations/general.php
# resources/lang/is/admin/depreciations/message.php
# resources/lang/is/admin/hardware/form.php
# resources/lang/is/admin/hardware/general.php
# resources/lang/is/admin/hardware/message.php
# resources/lang/is/admin/hardware/table.php
# resources/lang/is/admin/kits/general.php
# resources/lang/is/admin/licenses/form.php
# resources/lang/is/admin/licenses/general.php
# resources/lang/is/admin/locations/table.php
# resources/lang/is/admin/manufacturers/table.php
# resources/lang/is/admin/reports/message.php
# resources/lang/is/admin/settings/general.php
# resources/lang/is/admin/settings/message.php
# resources/lang/is/admin/statuslabels/message.php
# resources/lang/is/admin/suppliers/message.php
# resources/lang/is/admin/suppliers/table.php
# resources/lang/is/admin/users/table.php
# resources/lang/is/mail.php
# resources/lang/is/validation.php
# resources/lang/it/admin/settings/general.php
# resources/lang/it/validation.php
# resources/lang/iu/validation.php
# resources/lang/ja/mail.php
# resources/lang/ja/validation.php
# resources/lang/ko/validation.php
# resources/lang/lt/validation.php
# resources/lang/lv/validation.php
# resources/lang/mi/validation.php
# resources/lang/mk/validation.php
# resources/lang/ml-IN/validation.php
# resources/lang/mn/validation.php
# resources/lang/ms/validation.php
# resources/lang/nl/admin/settings/general.php
# resources/lang/nl/validation.php
# resources/lang/no/validation.php
# resources/lang/pl/admin/settings/general.php
# resources/lang/pl/validation.php
# resources/lang/pt-BR/admin/settings/general.php
# resources/lang/pt-BR/mail.php
# resources/lang/pt-BR/validation.php
# resources/lang/pt-PT/validation.php
# resources/lang/ro/validation.php
# resources/lang/ru/validation.php
# resources/lang/sl/validation.php
# resources/lang/sr-CS/admin/settings/general.php
# resources/lang/sr-CS/validation.php
# resources/lang/sv-SE/admin/settings/general.php
# resources/lang/sv-SE/auth/message.php
# resources/lang/sv-SE/button.php
# resources/lang/sv-SE/mail.php
# resources/lang/sv-SE/validation.php
# resources/lang/ta/validation.php
# resources/lang/th/validation.php
# resources/lang/tl/validation.php
# resources/lang/tr/mail.php
# resources/lang/tr/validation.php
# resources/lang/uk/admin/accessories/table.php
# resources/lang/uk/admin/asset_maintenances/message.php
# resources/lang/uk/admin/asset_maintenances/table.php
# resources/lang/uk/validation.php
# resources/lang/ur-PK/validation.php
# resources/lang/vi/admin/settings/general.php
# resources/lang/vi/validation.php
# resources/lang/zh-CN/admin/settings/general.php
# resources/lang/zh-CN/validation.php
# resources/lang/zh-HK/validation.php
# resources/lang/zh-TW/validation.php
# resources/lang/zu/validation.php
# resources/views/partials/bootstrap-table.blade.php
# resources/views/partials/forms/edit/company-select.blade.php
# routes/api.php
2021-09-21 23:46:50 -07:00
10ca7cffc3
Fixes for query scoping, ordering, and nicer readability
...
Signed-off-by: snipe <snipe@snipe.net >
2021-09-21 19:59:23 -07:00
ae2c77f97f
Allow to bulk update min_amt
2021-06-17 00:36:04 +03:00
b62d1f49e4
Shift cleanup
2021-06-10 20:19:27 +00:00
104b441e0d
Shift to class based factories
2021-06-10 20:17:44 +00:00
9f43ce97e9
Convert deprecated $dates property to $casts
2021-06-10 20:17:18 +00:00
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
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
88f03e6b55
Added last_checkout and notes from pivot for accessories
2020-10-23 00:44:26 -07:00
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
79367642b1
[WIP] Added #5957 - Flysystem support ( #6262 )
...
* Added AWS url to example env
* Upgrader - added check for new storage path and attempt to move
* Ignore symlink
* Updated paths for models
* Moved copy methods
* Added AWS_URL support
For some reasin, Flysystem was generating the wrong AWS url (with a region included)
* Switch to Flysystem for image uploads
* Nicer display of image preview
* Updated image preview on edit blades to use Flysystem
* Twiddled some more paths
* Working filesystems config
* Updated Asset Models and Departments to use Flysystem
* Janky workaround for differing S3/local urls/paths
* Try to smartly use S3 as public disk if S3 is configured
* Use public disk Storage options for public files
* Additional transformer edits for Flysystem
* Removed debugging
* Added missing use Storage directive
* Updated seeders to use Flysystem
* Default logo
* Set a default width
We can potentially override this in settings later
* Use Flysystem for logo upload
* Update downloadFile to use Flysystem
* Updated AssetFilesController to use Flysystem
* Updated acceptance signatures to use Flysystem
* Updated signature view to use Flysystem
This isn’t working 100% yet
* Use Flysystem facade for displaying asset image
* Set assets path
Should clean all these up when we’re done here
* Added Rackspace support for Flysystem
* Added Flysystem migrator console command
* Added use Storage directive for categories
* Added user avatars to Flysystem
* Added profile avatar to Flysystem
* Added the option to delete local files with the migrator
* Added a check to prevent people from trying to move from local to local
* Fixed the selectlists for Flysystem
* Fixed the getImageUrl method to reflect Flysystem
* Fixed AWS copy process
* Fixed models path
* More selectlist updates for Flysystem
* Updated example .envs with updated env variable names
* *sigh*
* Updated non-asset getImageUrl() methods to use Flysystem
* Removed S3 hardcoding
* Use Flysystem in email headers
* Fixed typo
* Removed camera support from asset file upload
We’ll find a way to add this in later (and add that support to all of the other image uploads as well)
* Fixed path for categories
* WIP - Switched to standard handleImages for asset upload.
This is currently broken as I refact the handleImages method. Because the assets store/create methods use their own Form Request, the handleImages method doesn’t exist in that Form Request so it wil error now.
* Fixed css URL error
* Updated Debugbar to latest version (#6265 )
v3.2 adds support for Laravel 5.7
* Fixed: Missing CSS file in basic.blade.php (#6264 )
* Fixed missing CSS file in basic.blade.php
* Added
* Changed stylesheet import for authorize.blade.php
* Updated composer lock
* Added AWS_BUCKET_ROOT as env variable
* Use nicer image preview for logo upload
* Removed AssetRequest form request
* Removed asset form request, moved custom field validation into model
* Added additional help text for logo upload
* Increased the size of the image resize - should make this a setting tho
* Few more formatting tweaks to logo section of branding blade preview
* Use Flysystem for asset/license file uploads
* Use Flysystem for removing images from models that have been deleted
* Enable backups to use Flysystem
This only handles part of the problem. This just makes it so we can ship files to S3 if we want, but does not account for how we backup files that are hosted on S3
* Use Flysystem to download license files
* Updated audits to use Flysystem
2018-09-29 21:33:52 -07:00
1bdf71b584
Handle side effects of accepting/declining
...
When declining an asset, it gets checked in.
2018-08-06 14:47:26 +02:00
775e46288e
Cleanup of model attributes
2018-08-06 14:46:10 +02:00
2c38036123
Improvement: Better documentation, small refactors ( #6017 )
...
* Better documentation, small refactors
* Small comment fixes
2018-08-01 00:06:41 -07:00
b1b5eeecba
Fixed #6013 - add accessory checkout notes to detail page
2018-07-31 16:00:38 -07:00