* Save progress
* Create a new action_log table to replace asset_log. Use Polymorphism to generalize class and targets. Port everything I can find to use it. Add a migration to port the asset_logs table to action_logs.
* Allow accepted_id to be nullable.
* Comment out the thread_id migration, because it b0rks on a new database with the move. I'm unsure if the thread_id does anything...It doesn't seem to be used
* Clean up all old methods from Actionlog model. Port everything to use new cleaner interface.
* Port the actionlog factory to fix travis.
* Adjust code to work on php5. Also fix lurking adminlog call.
* Remove weird code
* Port the pave command. Also fix dangling adminlog
* Add support for updating assets to the importer.
If an asset with a matching asset tag is found, and the --update flag is
passed to the importer, we edit the matching asset with any
asset-specific values, and persist to the database. Any missing/blank
values are skipped.
TODO: Add to web interface, add support in consumables/accessories
* Allow deleting of files on the import page.
* Extend web interface to allow updating of imported items.
This adds a modal dialog to the import process. Currently the dialog
allows the choice of update vs ignore, and choosing the item type to
import (Accessory, Asset, Consumable).
Also use Helper::ParseFloat() for purchase_cost processing. It exists,
and fixes issues on my end at least.
* Implement editing of consumables and accessories.
* Rename getProcessImportFile to postProcessImportFile to reflect how it's now used
* Fix copy-pasta error.
* Add manufacturer to licenses. Shows in table and edit. Need to improve manufacturer view to show lists beyond assets still.
* Remove extra closing tags, formatting
* Work on making the manufacturer view show more options. Need to figure out how to change the table dynamically.
* Cleanup formatting and fix a few weirdities in hardware/view.blade.php
* Standardize on two-space tabs in this file, as it seems the most
* common.
* Fix a few places where we call number_format without guaranteeing the
* item is a number and not a string.
* Show a "No Results" message on components page if there are no
* components.
* Show table of licenses on manufacturer view page.
This reworks the ManufacturersController::getDataView method to delegate
the view to a sub method (currently assets or licenses, but plan to
extend to consumables/accessories/components as well). We then put tabs
at the top of the view to show multiple tables. This just duplicates
the table layout from licenses/index.blade, but I wonder if theres a way
to centralize that code, maybe through partials, over time..
The only known missing part of manufacturers for licenses would be adding it
to the importer, but the license importer should probably migrate to
object importer before doing too much more...
* Add manufacturer to accessory.
* Add consumables to the manufacturer view page.
This does two main things:
1) The importer now imports as numbers, not parsed strings. This allows
is to format values on output instead of input, which is what was
happening in most places.
2) Add a Helper::parseCurrencyString method and port everything to use
this. This checks to see if the value is numeric or empty, and returns
the appropriate value in all cases. Should fix all known occurances of
number_format expections.
* Prevent multiple checkouts of the same asset.
This adds a new method to the Asset model, availableForCheckout.
Port getDataTable to use availableForCheckout instead of doing the
check manually.
Fixes Issue #2347
* Use availableForCheckout in categories controller. Also gate the checkin/checkout actions here.
* Use gate and availableForCheckout in manufactuers as well.