snipe
368ac5b85d
First stab at handling the n+1 issue on licenses
2017-11-02 18:20:42 -07:00
snipe
f47075c180
Removed depreciation from Licenses transformer
2017-11-02 17:18:53 -07:00
snipe
85624205b4
Updated Lang::get to trans
2017-11-02 17:12:51 -07:00
snipe
c9c5ce6ee0
Return Deleted User if the user is invalid for some reason
2017-11-02 16:20:01 -07:00
snipe
950519be5d
Added a few more table aliases for ordering complex results
2017-11-02 13:47:37 -07:00
snipe
87affa40ed
Fixes filtering on status label
2017-11-02 13:01:09 -07:00
snipe
28a4293a0b
Fixed #4370 - user’s listing flashing then no results
2017-11-02 11:19:34 -07:00
snipe
f095f1807c
Eager load userloc
2017-11-02 11:06:15 -07:00
snipe
e08911ab8f
Removed nonce for now
...
There is a dependency in a package where we can’t edit the script tags to add the nonce
2017-11-02 10:57:05 -07:00
snipe
ca6dc5c2b5
Eager load user location
2017-11-02 10:56:36 -07:00
snipe
3695e118f4
Fixed erroneous call to assets.category in filter scope
2017-11-02 08:06:10 -07:00
snipe
f43692938b
Fixed slug call in asset models image
2017-11-02 08:02:51 -07:00
snipe
da56a253bc
Added checkout requests method
2017-11-02 04:21:57 -07:00
snipe
a844d5b018
Added pagination, nicer formatting for requested assets
2017-11-02 04:17:14 -07:00
snipe
ba9bb470eb
Added imageSrc presenter to assets
2017-11-02 04:15:24 -07:00
snipe
41452450b3
Added imageSrc presenter
2017-11-02 04:15:09 -07:00
snipe
4f008e118f
Fixed search string on suppliers selectlist
2017-11-01 21:55:17 -07:00
snipe
e11f9313f0
Fixed #4360 - better output if backup fails
2017-11-01 14:12:18 -07:00
snipe
d36e8cfbd2
Dashbpoard pie fixes
2017-11-01 13:27:59 -07:00
snipe
4cdcbc97ee
Fixed varname issue on old image delete for manufacturers
2017-11-01 13:10:56 -07:00
snipe
feb2f5b076
Fixed #4356 - removed reference to old assetloc
2017-10-31 18:20:03 -07:00
snipe
6186c324b5
Misc assetLoc error checks
2017-10-31 08:47:40 -07:00
snipe
37868cd70e
Added warranty and expiration to list view
2017-10-31 07:05:15 -07:00
snipe
32b2f77ad9
Fixed issue where we tried to call the audit log even if the asset wasn’t valid
2017-10-31 05:41:06 -07:00
snipe
472a5b9f69
Removed extra log on API asset create
2017-10-31 05:38:52 -07:00
snipe
121e158f39
Change method name from userloc to location
...
This needs to be changed in more places though
2017-10-31 05:22:57 -07:00
snipe
f4e7bfc28d
Null custom field if field exists but is empty
2017-10-31 05:22:21 -07:00
snipe
0089f73686
Moved trait to single line
2017-10-31 05:21:55 -07:00
snipe
0f4c05c5d0
Remove commented code
2017-10-31 05:02:46 -07:00
snipe
7f1b7be416
Rolling back prepending models to sort
2017-10-30 21:26:25 -07:00
snipe
02720f225c
Fixed sorting issue in asset models when ordering by manufacturer
2017-10-30 20:51:01 -07:00
snipe
546c3e50fa
Fixed updating the assigned assets location if user’s location changes
2017-10-30 19:33:52 -07:00
snipe
7f1b962e56
Improved use of de-normed locations fields
2017-10-30 19:21:35 -07:00
snipe
4eee7f8d97
Added address for users - fixes #4323
2017-10-30 18:57:00 -07:00
snipe
0fd0e3a8b4
Returns null for order number if it’s blank
2017-10-28 15:53:22 -07:00
snipe
9687a78981
Fixed a few inconsistencies in the API results (null vs empty string)
2017-10-28 15:17:36 -07:00
snipe
2244a4b3cf
Fix peresenter for assigned
2017-10-28 15:17:09 -07:00
snipe
39c68214e9
More ajax menu fixes
2017-10-28 11:17:52 -07:00
snipe
6a3716a06d
Added new ajax dropdown menus for components, consumables, etc editing/creating
2017-10-28 09:21:39 -07:00
snipe
2172e6cc25
Added suppliers ajax list
2017-10-28 08:37:47 -07:00
snipe
108ac79442
Added update to asset location id on checkout/checkin
2017-10-28 07:38:36 -07:00
snipe
bd48ae96c2
Update location on checkin if one is given
2017-10-28 07:28:35 -07:00
snipe
c37fa44f72
Use ther morphto assigned
2017-10-28 07:12:22 -07:00
snipe
daaf98783f
Fixes status display in listing
2017-10-28 07:11:06 -07:00
snipe
03f6211582
Make notes null if empty
2017-10-28 07:01:06 -07:00
snipe
4f1747023a
Seed with demo images
2017-10-28 05:46:43 -07:00
snipe
5278dac2b0
Eager loading assignedTo - I have no idea why this works
2017-10-28 03:50:02 -07:00
snipe
890012f6c4
Update references to assetloc to location
2017-10-28 02:58:38 -07:00
snipe
3991f79115
Use new location method for hardware view
2017-10-28 02:37:59 -07:00
snipe
3064b3f80e
Updated availableForCheckout() method to be clearer
2017-10-28 02:31:54 -07:00
snipe
df430a2263
Removed assignedTo eager load for now - it’s not working
2017-10-28 02:31:36 -07:00
snipe
277e49468b
Added deleted at to API
2017-10-28 02:31:13 -07:00
snipe
d76f858dcd
Try eager loading assignedTo
2017-10-28 01:50:58 -07:00
snipe
7a543fa6d5
Use new location method on asset API
2017-10-28 01:49:13 -07:00
snipe
ce5ccc31f0
Added location method, fixed assetLoc
2017-10-28 01:48:27 -07:00
snipe
2d758be0e1
Merge branch 'develop' of github.com:snipe/snipe-it into develop
2017-10-27 18:01:46 -07:00
snipe
f49ecbdb61
Code cleanup
2017-10-27 18:01:42 -07:00
Daniel Meltzer
3cea12565b
Add missing policies ( #4330 )
...
* Add Authorizable trait and interface to our user model so we have access to User::can/User::cant. We should take a look at where else our user model has diverged from Larvel since it was created...
* Policy cleanup/fixes.
This commit adds policies for the missing backend/"settings" areas. The
permissions were implemented a while back but the policies did not, so
authorizing actions was failing.
In addition, this condenses a lot of code in the policies into base
classes. Most of the files were identical except for table names, so we
move all of the checks into a base class and override the table name in
each policy.
* Use a better name and permission for the check in the default layout.
2017-10-27 18:01:11 -07:00
snipe
b1ac024725
Refined upload code
2017-10-27 17:40:10 -07:00
snipe
ec68bd7842
Small refactoring for code quality
2017-10-27 17:38:11 -07:00
snipe
a224904ade
Removed uncessary code
...
This is already handled in the env
2017-10-27 17:00:33 -07:00
snipe
cb3b294baa
Clesned up status label model for code quality
2017-10-26 22:54:07 -07:00
snipe
0788347990
Cleaned up status label method
2017-10-26 22:49:57 -07:00
snipe
7496a902bd
Removed unused getDataView controller method
...
This is all API based now
2017-10-26 22:39:41 -07:00
snipe
f2d04be8fe
Remove unused methods in Settings API controller (for now)
2017-10-26 22:35:01 -07:00
snipe
f2499fc7d2
Removed else condition on custom fields API for code quality
2017-10-26 22:33:40 -07:00
snipe
00d910ddbc
Added manufacturers and categories select lists
2017-10-26 22:09:08 -07:00
snipe
6bcb55a129
Slight tweak to model name presenter
2017-10-26 21:50:39 -07:00
snipe
a99e09e5e3
Removed extra with() calls, since we load those up via the select2 lists now
2017-10-26 21:50:27 -07:00
snipe
7d11cb0748
Added selectlist transformer for select2 API calls
2017-10-26 21:50:01 -07:00
snipe
bdb95e4e3d
Added companies ajax select2 endpoint
2017-10-26 16:37:41 -07:00
snipe
b71d0ab484
Fixed order number and warranty bug in importer
2017-10-26 16:13:35 -07:00
snipe
ea07517ad5
Added more ajax select2 boxes to checkouts, remove helper ->with() methods
2017-10-26 03:43:28 -07:00
snipe
82690e1fd7
Integrate ajax select2 menus in all asset checkouts
2017-10-26 02:28:17 -07:00
snipe
75b527ab59
Features/image uploads ( #4320 )
...
* Locations API support for image
* Added manufacturers API support for image
* Added manufacturers API support for image
* Added image support for locations add/update
* Added manufacturer image upload support to controller
* General image string
* Added blade support for image uploads/delete image
* Added $request support (from Input::)
* Added image support in API transformers
* Added image to Manufacturers presenter for data table
* Migration to create image fields
* Ignore the contents of the new image directories
* Create new image upload directories
* Created components/consumables uploads directory
* Fixed missing textSearch scope from companies
* Added ignore for companies uploads directory
* Added blade support for image upload
* Fixed path to upload directory on edit
* Added company image upport to transformers, controllers
* Added image support for categories
* Added support for images in Departments
* Added support for image in Consumables
* Added image support for components
2017-10-25 22:35:58 -07:00
snipe
b083541723
Fixed docblock copypasta
2017-10-25 20:23:59 -07:00
snipe
0d34cc704a
Added controller for state-saver for sidenav
2017-10-25 20:10:59 -07:00
snipe
e8847753f4
Fixed importer using previous row’s custom field
2017-10-25 18:16:28 -07:00
snipe
a305b1ea2d
Merge branch 'develop' of github.com:snipe/snipe-it into develop
2017-10-24 19:24:39 -07:00
snipe
17d58d9cc5
Added snazzy rich user selection menu
...
TODO:
- Abstract this out so it can be used by other select2 menus
- Write a select2 transformer to standardize output
2017-10-24 19:24:35 -07:00
snipe
e0fe383815
Removed debug message in SaveUserRequest
2017-10-24 19:18:53 -07:00
snipe
7140efc561
Use the transformers, Luke
2017-10-24 19:18:20 -07:00
snipe
99be54fd96
Fixed success message on saving new user
2017-10-24 19:17:30 -07:00
snipe
35da7906cc
Fix standardized exception formatter for correct payload
2017-10-24 17:57:49 -07:00
snipe
8a9960f830
Fixed missing break that would override password requirement
2017-10-24 16:56:46 -07:00
snipe
715da63581
Check that model name exists before trying to display it
...
I don’t know why this would ever trigger, but a user in Gitter complained earlier today, so… ¯\_(ツ)_/¯
2017-10-24 16:53:46 -07:00
Brady Wetherington
ad32bae62f
Fix to bad relation definition in Location. ( #4306 )
2017-10-24 16:52:45 -07:00
snipe
bbda0dc3b4
Always return an avatar, and set a fun default
2017-10-24 13:02:30 -07:00
snipe
dc805dd9b1
Added user avatars to listing
2017-10-24 09:51:07 -07:00
snipe
7d64ab3158
Fixes #4294 - pass correct group ID for group user listings
2017-10-24 04:39:47 -07:00
snipe
3799ab87ed
Fixed search query for default sorting
2017-10-23 20:10:37 -07:00
Nicolai Essig
3a302fe2d7
ref #2737 prevent assets with "rtd_location_id" null values to be removed on location sort ( #4283 )
2017-10-23 18:28:06 -07:00
snipe
fc644925ea
Fixes #4291 - adds phone to user listing
2017-10-23 14:21:51 -07:00
Brady Wetherington
8ac57d0121
Need to prefix status_id with assets.
for uniqueness ( #4279 )
2017-10-20 17:37:46 -07:00
Brady Wetherington
189574377a
Add 'where' clause to hasManyThrough relationship. ( #4276 )
2017-10-20 16:58:39 -07:00
snipe
22e13cd4d2
Allow sorting on asset counts, disable delete button if the user has items checked out to them
2017-10-19 17:15:21 -07:00
snipe
4215a3257b
Fixes #1044 - adds suppliers and image to accessories ( #4266 )
...
* Ignore accesories uploads
* API: Allow searching accessories by supplier id
* Adds suppliers and image upload to accessories
* Allow sorting by counts for suppliers
* Validate supplier image uploads
* Remove purchase_date from protected accessory array, it was converting it to datetime in datepicker
2017-10-19 16:25:24 -07:00
snipe
1f247ff541
Don’t let the user checkout an asset to itself
...
(We should consolidate that AssetCheckoutRequest for the API)
2017-10-19 15:51:55 -07:00
snipe
e185dc68af
Fixes #4240 - allows admins to use custom password reset URL
2017-10-19 12:22:27 -07:00
snipe
54000ff69f
Allows sorting by number of assets, etc in category
2017-10-19 11:48:09 -07:00
snipe
f6a38e848a
Allows sorting by whether or not the category requires acceptance
2017-10-19 11:44:42 -07:00
snipe
7e8d670f81
Disable delete buttons if there are assets, etc
2017-10-19 11:41:35 -07:00
snipe
a9753eb646
Include asset count in status labels overview
2017-10-19 10:48:15 -07:00
snipe
707c4db881
API: Check there are no assets associated before allowing delete
2017-10-19 10:39:08 -07:00
snipe
d1de34394e
Removed stupid count method
2017-10-19 10:37:30 -07:00
snipe
7153013fb0
Fake sending the test email if the app is in demo mode
2017-10-19 08:33:46 -07:00
snipe
2b826c3adc
Merge branch 'features/mail_test_button' into develop
2017-10-19 08:19:24 -07:00
snipe
cd193ce8bb
Fixes #4036 - adds test email button to general settings
2017-10-19 08:18:56 -07:00
snipe
cb50142ba3
Update @thakilla as a contributor
2017-10-19 06:16:03 -07:00
Nicolai Essig
4bc551db82
ref #4042 scale barcode with label size ( #4258 )
2017-10-19 06:08:01 -07:00
snipe
ae567c08db
Fixes incorrect language reference for consumables on checkout if consumable doesn’t exist
2017-10-19 03:44:01 -07:00
snipe
13586be6b0
Fixed load error if license is invalid
2017-10-19 03:37:27 -07:00
snipe
4d3d19ca2b
Fixes older route reference in consumables
2017-10-19 02:07:31 -07:00
snipe
c5893b4445
Fixes #4249 - display deployed location in listing
2017-10-19 01:30:40 -07:00
snipe
3b012f2827
Some advanced search query tweaks
2017-10-18 10:07:35 -07:00
snipe
5519e2d4ae
Fixes custom fields sorting on asset listings
...
I need a silkwood shower :(
2017-10-18 09:27:34 -07:00
snipe
a3139c6fc6
Fix accessories route for invalid accessory ID
2017-10-18 08:53:25 -07:00
snipe
c0e50be03e
Duh. Helps if you actually assign the array first.
2017-10-18 08:45:05 -07:00
snipe
447833c996
Only try to process model bulk editing if at least one model was selected
2017-10-18 08:15:54 -07:00
snipe
809e310565
Recrypt the LDAP password properly
...
Older installs should add a line to their .env:
`LEGACY_CIPHER=rijndael-256`
2017-10-18 08:15:23 -07:00
snipe
68f6385eba
Fixes 500 in bulk checkout if no asset is selected
2017-10-18 07:15:16 -07:00
snipe
9e39abcc32
Merge branch 'develop' of github.com:snipe/snipe-it into develop
2017-10-18 06:24:41 -07:00
snipe
5cd2857d5d
Use footer sumformatter for cost totals
2017-10-18 06:24:36 -07:00
snipe
d9135a8aac
Disallow deleting suppliers with associated assets, licenses or maintenances
2017-10-18 05:47:20 -07:00
Tõnis Ormisson
a4eeff01f0
FIXED upgrade Recrypt not working with changed cipher ( #4245 )
...
* FIX legacy cipher change
* FIX Recrypt Custom fields column names
* FIX ReCrypt Clean un-needed code
2017-10-18 05:43:54 -07:00
snipe
eedbe468ac
Fix licenses not saving supplier id on edit
2017-10-18 05:43:15 -07:00
snipe
ea63ced2bd
Fixes table alias bug in complex queries for Laravel
2017-10-18 01:21:08 -07:00
snipe
6bd49bfb72
Fixes #4191 - user search
2017-10-18 01:20:50 -07:00
snipe
c069829b33
Fixes #906 - groups view
2017-10-17 21:43:57 -07:00
snipe
aa7091d962
Fixes #4226 - adds log_max_files to app config and sample env
2017-10-17 20:04:07 -07:00
snipe
1d5fb52bfc
Fix for LDAP where location ou is not null but blank
2017-10-17 16:59:50 -07:00
snipe
dea42db18b
Reversed order of withTrashed for deleted asset QR codes
2017-10-17 16:21:50 -07:00
snipe
a1f5e11517
Fix for broken QR code on deleted assets
2017-10-17 16:01:53 -07:00
snipe
160fd1c86a
Added setting to let admin decide whether footer text should link back to site
2017-10-17 13:54:03 -07:00
snipe
b46cbac911
Fixes #4230 - adds model name and manufacturer to emails
2017-10-17 13:30:32 -07:00
snipe
e9c3d6bfb7
Full text search fixes - addresses laravel bug :(
2017-10-17 12:48:18 -07:00
snipe
e7fe91c9d4
Depreciation view
2017-10-17 11:20:05 -07:00
snipe
37df934e97
Fixes #4220 - allow nullable for completion date
2017-10-16 18:32:48 -07:00
snipe
6517a95d45
Check if there are any custom fields before trying to loop through them
2017-10-16 15:29:19 -07:00
snipe
4b84a0c916
Tidying some of the LDAP UDN logic
2017-10-16 15:29:06 -07:00
snipe
cbe008d52f
Fix assetLoc to assetloc because reasons?
2017-10-16 09:08:08 -07:00
snipe
45c2af80a3
More LDAP testing US refinements
2017-10-16 09:00:51 -07:00
snipe
1fbf3753bc
More small LDAP test improvements
2017-10-16 07:07:21 -07:00
snipe
bcf435f625
Try for better error reporting on LDAP fail
...
Sorry for all the commits on this - my local LDAP isn’t working and I can’t figure out why, so no easy way to test locally
2017-10-16 06:46:33 -07:00
snipe
b107280b7b
Slightly nicer UI for LDAP login test
2017-10-16 06:39:36 -07:00
snipe
f1a6926ad9
LDAP test login
2017-10-16 06:34:04 -07:00
snipe
ba7b9d8168
Removed stray foo
2017-10-16 05:54:33 -07:00
snipe
59a126c47c
Small tweaks to LDAP test
2017-10-16 05:52:18 -07:00
snipe
56cbc005ae
Fixes expected checkins name in console kernel
2017-10-16 05:01:15 -07:00
Daniel Meltzer
22e9246031
Fix more old routes. Should fix #4216 ( #4217 )
2017-10-15 23:32:40 -07:00
snipe
fa95f6d836
Another attempt for #4165
2017-10-11 15:36:47 -07:00
snipe
6d4574130f
Clearer indication of whether or not the user will be emailed a eula
2017-10-11 14:44:25 -07:00
snipe
485b6397d0
Possible (crummy temp) fix for #4165
2017-10-11 14:42:11 -07:00
snipe
93990327de
Hopefully fixes #4163
2017-10-11 14:18:08 -07:00
snipe
36cbffa183
Fixes bug where custom fields would not store new name in custom fields table on edit
2017-10-11 13:09:10 -07:00
snipe
b6a1e0d12f
Call migrate before passport install
2017-10-11 12:42:31 -07:00
snipe
f56eb16941
More specific order by clause for drilling down on order number
2017-10-11 12:29:08 -07:00
snipe
64e7ab3a12
Fixes #4182 - empty names for assets when checking out to asset
2017-10-11 01:31:37 -07:00
snipe
f64c02ce12
Fix for ambiguous query on models
2017-10-10 23:12:16 -07:00
snipe
bed7b29417
Fixes group search
2017-10-10 22:59:32 -07:00
Richard Hofman
adca7cb0c5
Fix LDAP location sync issue in #3993 ( #4181 )
...
* Ensure locations with the most specific OUs take precedence during user assignment.
* Save 'ldap_ou' Location attribute during creation.
2017-10-09 13:06:47 -07:00
snipe
e29d878d4f
Remove unused method arguments
2017-10-07 15:09:50 -07:00
snipe
d4e3ea1412
Derp
2017-10-07 15:07:31 -07:00
snipe
c5462c5f1f
Not sure why this isn’t working… commenting it out for now
2017-10-07 14:52:00 -07:00
snipe
8c406e8e55
Additional auth policies
2017-10-07 14:49:47 -07:00
snipe
6e33f36595
Set snipe-logo as default
2017-10-07 14:49:36 -07:00
snipe
9dc79f7165
Demo Settings reset artisan command
...
We’ll set this as a cron job to reset the language back to english
2017-10-07 07:43:57 -07:00
snipe
a69a939034
Small barcode tweaks
2017-10-07 07:15:28 -07:00
snipe
834c6ad8f9
Removed extra space
2017-10-07 06:56:47 -07:00
snipe
2ce48fbc7e
Use components transformer in API method
2017-10-07 06:56:39 -07:00
snipe
5d18937e94
Standardized component API output
2017-10-07 06:56:18 -07:00
snipe
b3186ba5ea
Removed old getDataTable methods
...
These are no longer used because of the API
2017-10-07 06:56:02 -07:00
snipe
a03207e5b4
Show license notes
2017-10-07 04:42:53 -07:00
snipe
e2f4685a55
Added notes back to list view
2017-10-07 03:36:50 -07:00
snipe
064a4ebe33
Ability to skip deleting/generating new users
...
This will behave unpredictably if there is not a user id 1
2017-10-07 00:02:37 -07:00
snipe
a84da88114
Demo seeder
2017-10-06 22:58:00 -07:00
snipe
282b3b5b0a
Remove catch-all “deployed” from pie chart
2017-10-06 18:41:10 -07:00
snipe
1dcff8d463
Remove eager loading on pie
...
This was causing memory issues for large asset sets
2017-10-06 18:15:01 -07:00
snipe
e461c25428
Apply model image fix to update method
2017-10-06 17:03:51 -07:00
snipe
554ea8bb95
Fixed asset model image validation
2017-10-06 16:56:43 -07:00
Richard Hofman
f2be409914
LDAP sync improvements and DB query fix. ( #4148 )
...
* Set 'ldap_ou' Location field to NULL when an empty string is submitted.
* Consolidate LDAP user import logic in LdapSync.php.
2017-10-06 16:15:14 -07:00
snipe
f580e20bc3
Fixed custom fields filter for advanced search
2017-10-05 23:09:02 -07:00
snipe
f6d8642799
Fix $search variable to $search_var for new filter
2017-10-05 00:35:37 -07:00
snipe
f66e222f3d
Fixes #4132 - associated accessory users
2017-10-03 21:03:00 -07:00
snipe
6dd4282f1f
Fixes #4130 - show deleted asset models
2017-10-03 17:53:08 -07:00
snipe
3f44987799
Small logo size tweaks
2017-10-03 14:15:03 -07:00
snipe
512632ce60
Make the export button contextual for requested status
2017-10-03 12:50:18 -07:00
snipe
54671af7f0
Small export assets fix
2017-10-03 11:49:41 -07:00
snipe
8e73cacf4e
Fixes custom report to include assigned to names, etc
2017-10-03 10:38:28 -07:00
snipe
c721fdd793
Merge branch 'develop' of github.com:snipe/snipe-it into develop
2017-10-03 08:46:25 -07:00
Daniel Meltzer
d119372ff0
Fix License Import. ( #4121 )
...
The license name is not unique, so keying by license alone was causing issues. Match using name + serial instead.
2017-10-03 08:46:06 -07:00
snipe
3a470ce789
Only report exceptions we want to see
2017-10-03 07:28:00 -07:00
snipe
3687cbfdb3
Added rollbar support
2017-10-02 20:27:45 -07:00
snipe
8a7abba427
Slash url
2017-10-02 17:21:18 -07:00
snipe
9df648b428
Fix Session path
2017-10-02 17:19:22 -07:00
snipe
ff38cdd09b
Comment out the nullable middleware until we have a chance to check all model validators
2017-10-02 16:36:43 -07:00
snipe
59225701b5
Redirect to previous after login
2017-10-02 16:00:42 -07:00
snipe
aab635154a
Default to turning CSP off until we can fix vue/CSP issues
2017-10-02 13:29:14 -07:00
snipe
e26d038589
Fixed license checkin form UI
2017-10-01 15:08:32 -07:00
snipe
afc8133acf
URL nullable validation isn’t working in Laravel 5.4?
2017-10-01 14:40:13 -07:00