Compare commits

...

291 Commits

Author SHA1 Message Date
snipe a61e913824 Squashed commit of the following:
commit 95ae26eb2a
Author: snipe <snipe@snipe.net>
Date:   Sun Feb 8 16:21:33 2015 -0800

    Updated docs location

commit cfebe11755
Author: snipe <snipe@snipe.net>
Date:   Sun Feb 8 16:20:36 2015 -0800

    Updated docs for 4.2

commit d86b5aa613
Author: snipe <snipe@snipe.net>
Date:   Sun Feb 8 16:20:24 2015 -0800

    Bumped version
2015-02-08 16:22:12 -08:00
snipe c255de7fc0 Merge remote-tracking branch 'origin/develop' 2015-02-08 16:18:09 -08:00
snipe 42d5d8db80 Updated language files 2015-02-08 16:17:45 -08:00
snipe 91bf9763d2 Merge remote-tracking branch 'origin/develop' 2015-02-08 16:13:25 -08:00
snipe 9c66dd5431 Added gitignore 2015-02-08 16:13:10 -08:00
snipe 614396a15b Utilize query scopes for cleaner controllers 2015-02-08 16:02:35 -08:00
snipe cfe0472ea2 New language strings for file uploads 2015-02-06 22:18:57 -08:00
snipe d20b5136b8 Nicer display if no files have been uploaded 2015-02-06 22:02:52 -08:00
snipe 29f5b7c5e3 Fixed datetime 2015-02-06 21:54:44 -08:00
snipe 140bd137a4 Minor display fixes 2015-02-06 21:54:36 -08:00
snipe 3a9cb9ba7a Display uploaded files 2015-02-06 21:31:16 -08:00
snipe 6d0828bfe5 Delete file interface and routes 2015-02-06 20:42:40 -08:00
snipe 51a7752771 Moved cancel text to buttons language file 2015-02-06 18:52:09 -08:00
snipe a8681225f5 Added language for add button 2015-02-06 18:46:20 -08:00
snipe 26a59afa44 Basic upload display and form 2015-02-06 18:43:15 -08:00
snipe e22ce0d377 Changes added_on to created_at 2015-02-06 18:43:04 -08:00
snipe 2fbef7f561 Updated field name for asset log 2015-02-06 18:42:48 -08:00
snipe 2678611c79 Included doctrine for field renaming 2015-02-06 18:42:36 -08:00
snipe 416cd236d2 Updated to new fieldname 2015-02-06 18:42:24 -08:00
snipe 4936a5914f Folder for private uploads 2015-02-06 18:41:56 -08:00
snipe 36fce27297 Added uploads methods 2015-02-06 18:41:47 -08:00
snipe 4b2e45c5f2 Added uploads methods 2015-02-06 18:41:35 -08:00
snipe 11f46474ab New file upload language 2015-02-06 18:41:24 -08:00
snipe b0d52a4158 Updated field name 2015-02-06 18:41:16 -08:00
snipe 7b4845c255 Added soft delete to asset log 2015-02-06 18:40:58 -08:00
snipe 223ba349ea Minor change to comment for clarify 2015-02-06 16:57:15 -08:00
snipe feeef4b66c Fix for asset log incorrectly using soft deletes 2015-02-06 14:54:13 -08:00
snipe 42f8a35078 Additional translation files 2015-02-05 17:08:20 -08:00
snipe 0128505213 Overwriting Smfony YAML deps 2015-02-05 15:50:32 -08:00
snipe 06bee68cd2 Testing config for travis 2015-02-05 15:34:26 -08:00
snipe c255edaf61 More travis fixes 2015-02-05 15:30:51 -08:00
snipe 7f0e21d50c Changes to make travis build pass 2015-02-05 15:02:57 -08:00
snipe 1aeb4de0fa Possible fix for #491 - solving for giticide on package dep 2015-02-05 14:43:01 -08:00
snipe bff33cb7f5 removed old package dep 2015-02-05 14:10:25 -08:00
snipe 5695815360 Missed one --force 2015-02-04 16:22:45 -08:00
snipe e67ba8a743 Fix reporting error on depreciation 2015-02-04 16:13:11 -08:00
snipe 3669ab2ae8 Updated travis for forced migration in production 2015-02-04 16:07:41 -08:00
snipe e2ee954592 Updated composer and composer.lock for 4.2 2015-02-04 15:50:54 -08:00
snipe b4750f016d Added new 4.2 SoftDeletingTrait 2015-02-04 15:50:40 -08:00
snipe 7069d9c6b1 Added new cipher to config 2015-02-04 15:50:07 -08:00
snipe 8e0d774023 Added strict option in database config 2015-02-04 15:49:50 -08:00
snipe 394836821c Added catehory nav item in sidebar 2015-02-04 15:01:36 -08:00
snipe a1ac7f8676 Removed cruft 2015-02-04 15:01:08 -08:00
snipe cd338d2a70 Fixes #483 - line breaks in notes on view 2015-02-04 10:21:02 -08:00
snipe 4dc81ce65f Resolves #478 - redirects non-reporting users to view assets page 2015-02-04 09:31:01 -08:00
snipe f5efc368a5 Fixes #487 - maintained and purchase order in strict mode 2015-02-04 08:51:03 -08:00
snipe 1db806f8b2 Fixes #488 - longer user jobtitle 2015-02-04 07:59:45 -08:00
snipe b3af102d22 Fixed safe mode issue with license seeder 2015-02-04 07:49:28 -08:00
snipe 2b86f14e30 Possible fix for #484 - fullname issue 2015-02-01 14:33:58 -08:00
snipe 3f0e494276 Updated contributing info 2015-01-23 15:39:03 -08:00
snipe a4bac03692 Increment version number 2015-01-23 15:38:48 -08:00
snipe 950567e9d6 Fixes issue related to #471 - assigning to user ID 0 causes erro 2015-01-23 15:38:39 -08:00
snipe dede09e9c5 Merge remote-tracking branch 'origin/develop' 2015-01-22 15:41:36 -08:00
snipe 3787a3f4ba Fixed language strings for incrementing IDs 2015-01-22 15:34:19 -08:00
snipe 95141d49ba Fixes #432 - add model name to checkout 2015-01-22 15:20:16 -08:00
snipe d85e524680 Fixes #451 - allows spaces in state name 2015-01-22 14:29:53 -08:00
snipe 4a77dee79c Fixes #447 - added asset log entry on save 2015-01-22 14:16:09 -08:00
snipe 6fba41e026 Updated gitignore to ignore crowdin 2015-01-22 13:42:32 -08:00
snipe f39922f51f Merge remote-tracking branch 'origin/develop'
Conflicts:
	CONTRIBUTING.md
2015-01-22 13:31:19 -08:00
snipe 53085983f8 Added UK English language file 2015-01-22 13:24:01 -08:00
snipe 4a2ac03ace New Spanish strings 2015-01-22 13:23:29 -08:00
snipe 548de1a1a2 Fixes #468 - updated ordering on license checkout 2015-01-22 13:03:07 -08:00
snipe 82560b1098 Updated language files with new strings 2015-01-22 13:00:38 -08:00
snipe 3c141e8f50 Fixes #467 2015-01-22 12:56:13 -08:00
snipe 5e496672c6 Fixes #469 2015-01-22 12:54:22 -08:00
snipe 4887c53f25 Merge pull request #452 from gitter-badger/gitter-badge
Add a Gitter chat badge to README.md
2015-01-12 15:16:57 -08:00
The Gitter Badger 2b79a61d65 Added Gitter badge 2015-01-12 23:15:02 +00:00
snipe 5268c579e2 Update CONTRIBUTING.md 2015-01-08 17:34:23 -08:00
snipe 21448ea8e6 Update CONTRIBUTING.md 2015-01-08 17:33:49 -08:00
snipe 778a7bb18c Additional translations 2015-01-08 17:24:13 -08:00
snipe 685881cf27 Too many thanks (too many thanks) 2015-01-08 17:19:02 -08:00
snipe cf4b80bbd5 Updated contributing guidelines 2015-01-08 17:18:19 -08:00
snipe 5c98dae57d Merge branch 'develop' 2015-01-08 11:34:19 -08:00
snipe e434616db8 Merge pull request #436 from rashivkp/fix-435
fixed #435. using namespace with route groups to increase the readability
2015-01-04 21:50:07 -06:00
snipe 8a7b7418db Merge pull request #433 from thehereward/tidy-up-models
Tidy up models
2015-01-04 21:49:57 -06:00
Mohamed Rashid 533be7f942 fixed #435. using namespace with route groups to increase the readability 2015-01-05 01:24:16 +05:30
Hereward Mills 094ec50a68 TidyUp: Commonise the depreciate method of Asset and License. 2014-12-24 23:03:06 +00:00
Hereward Mills 98a29e460d TidyUp: Remove excess whitespace. 2014-12-24 22:34:16 +00:00
snipe 27fabfd110 Updated readme 2014-12-23 14:50:34 -05:00
snipe dce1d47228 Updated language files 2014-12-23 14:48:43 -05:00
snipe 9bbec53635 Added --no-dev to composer for CI 2014-12-23 14:19:46 -05:00
snipe 82232a34ee Merge pull request #415 from svpernova09/feature/software-maintenance-additions
Feature/software maintenance additions Working on #232
2014-12-23 14:11:20 -05:00
Svpernova09 3d1795e312 Add process handling of new maintained and termination_date fields to the licenses methods for creating and editing licenses. Also add array for getCreate and getEdit to easily display maintained options in drop down 2014-12-10 07:45:53 -06:00
Svpernova09 d858861d0f Add termination_date and maintained fields to the License edit form. Add field labels to language file. 2014-12-10 07:44:47 -06:00
Svpernova09 eec36cb13a Add migration to add maintained and termination_date fields to licenses table 2014-12-10 07:43:57 -06:00
snipe cee966e76e Merge pull request #408 from svpernova09/feature/add-asset-from-model-view
Feature/add asset from model view for #365
2014-12-03 15:25:56 -05:00
Svpernova09 dcf2b428da If we are passing along an id of a previously selected model, use that as the default selection. Otherwise we should fall back to Input::old() 2014-12-03 14:06:33 -06:00
Svpernova09 80d8432c35 Check the optional parameter and if there is a value, grab that model and pass along to the view. Refactored the view return to be easier to read and able to interject if our parameter was set. 2014-12-03 14:05:42 -06:00
Svpernova09 8ec5934af5 Add menu option in dropdown to create new hardware. Add optional parameter in create/hardware route to handle the parameter in the incoming link 2014-12-03 14:04:02 -06:00
snipe 31f77dcb4b Merge pull request #407 from svpernova09/bug/500-error-when-viewing-asset
Check if ->adminuser->id isset before trying to print the fullName so we...
2014-12-03 14:08:09 -05:00
Svpernova09 0663ccb99f Check if ->adminuser->id isset before trying to print the fullName so we can catch when a user that created an asset has been deleted. Fixes #349 2014-12-03 07:46:29 -06:00
snipe 19189f688f Merge pull request #405 from svpernova09/enhancement/make-notes-field-textarea
Enhancement/make notes field textarea
2014-12-02 11:21:36 -05:00
Svpernova09 7849320db0 Convert note fields to text areas for licenses views 2014-12-02 06:59:16 -06:00
Svpernova09 cc8ca54b3f Convert note fields to text areas for hardware views 2014-12-02 06:59:01 -06:00
Svpernova09 ecb4d0d948 Add jetbrains IDE's config folders to gitignore 2014-12-02 06:51:50 -06:00
snipe f20566f222 Merge pull request #393 from madd15/patch-1
Fix #388 - License not showing checked out in view
2014-11-23 19:36:28 -05:00
madd15 73dd339772 Fix #388 - License not showing checked out in view 2014-11-24 11:05:24 +10:30
snipe 5a6139fb64 Merge pull request #391 from bitdeli-chef/master
Add a Bitdeli Badge to README
2014-11-22 22:57:29 -05:00
Bitdeli Chef 0fb2728e3f Add a Bitdeli badge to README 2014-11-23 04:06:26 +00:00
snipe 5e6c4a250a Updated composer lock 2014-11-21 07:34:06 -05:00
snipe bf96aae9d9 Truncate license in report 2014-11-21 07:32:12 -05:00
snipe daefc86e58 Formattig fixes for #386 2014-11-21 06:10:30 -05:00
snipe 64c16a0bac Fixes #386 and #273 - altered column type to text 2014-11-21 05:47:49 -05:00
snipe 89a2b87e42 Fixes #367 - added model number to dropdown 2014-11-21 05:20:08 -05:00
snipe 1b41c974cf Fixes #348 - remove constraints on license keys 2014-11-20 18:43:33 -05:00
snipe d6a0249c60 Fixed #373 - added ability to auto-increment asset tags 2014-11-20 18:28:45 -05:00
snipe 6a6676b1e7 Merge pull request #383 from madd15/patch-1
Fix half #377 - Checkout users last_name, first_name
2014-11-20 17:19:44 -05:00
madd15 1024816313 Fix #377 - Checkout users last_name, first_name 2014-11-21 08:47:19 +10:30
snipe 6905d82fc4 Fixes #374 to keep the requirement to PHP 5.4 2014-11-20 16:38:50 -05:00
snipe 22746db8b7 Newest translations 2014-11-20 16:28:38 -05:00
snipe b826673d0d Added username field for #377 2014-11-20 16:17:48 -05:00
snipe 637009054c Fixed typo in english 2014-11-20 16:09:30 -05:00
snipe 5f5be6aa2a Removed line break 2014-11-20 16:09:21 -05:00
snipe a863cf1615 Merge pull request #364 from madd15/patch-1
Remove Double </label>
2014-11-13 18:30:40 -05:00
madd15 05d8ff0252 Remove Double </label> 2014-11-14 09:57:02 +10:30
snipe b73ae3147a Fixes #362, reduced asset name to 2 char min 2014-11-13 16:26:39 -05:00
snipe 81b2ce33c2 Polish, german and spanish translation strings 2014-11-12 21:13:46 -05:00
snipe 501e1749b3 Updated localization strings 2014-11-12 17:38:56 -05:00
snipe 53f279f55f Language string for "generate" 2014-11-12 17:34:22 -05:00
snipe f5fb2525de Merge branch 'develop' of github.com:snipe/snipe-it into develop 2014-11-12 17:32:58 -05:00
snipe 53951c8bbc Nicer custom reports form layout 2014-11-12 17:32:48 -05:00
snipe 00755eadf0 Merge pull request #359 from madd15/patch-1
Fix Lang for Reports
2014-11-12 17:17:07 -05:00
madd15 13b173409f Fix License form langs 2014-11-13 08:44:47 +10:30
madd15 7ddc6d497a Fix Report Langs 2014-11-13 08:43:42 +10:30
snipe 2829eeca7c New reports language files 2014-11-12 17:05:46 -05:00
snipe e39227633f Merge pull request #358 from madd15/feature-reports
Add error on empty options and Update to Lang for error and info
2014-11-12 17:01:31 -05:00
Madd15 89c7159c56 Fix array check for empty rows 2014-11-13 08:29:15 +10:30
snipe 6854453bc5 English is hard :( 2014-11-12 16:38:31 -05:00
snipe ce9c616843 Updated language strings 2014-11-12 16:33:11 -05:00
Madd15 40b0ced8da Update Lang for error and info 2014-11-13 08:02:39 +10:30
Madd15 57ec8aa3c2 Add error for no options selected 2014-11-13 08:02:25 +10:30
snipe 02feb69d5d Localization on user's view page, new strings 2014-11-12 16:22:30 -05:00
snipe fc2d472ed3 Fixed english language string 2014-11-12 15:52:08 -05:00
snipe b622d977d9 Merge pull request #355 from madd15/feature-reports
Added Customizable Asset Report
2014-11-12 01:35:44 -05:00
Madd15 6d2a073d04 Custom Asset Report 2014-11-12 16:05:59 +10:30
snipe 564cf90e58 Merge pull request #354 from madd15/feature-reports
Feature Extended Reports
2014-11-12 00:32:51 -05:00
Madd15 c60e40096a Replace static titles with lang 2014-11-12 13:38:31 +10:30
Madd15 74ae2fceea Fix class on th 2014-11-12 13:34:53 +10:30
Madd15 02605bdf69 Add Asset Report with Reduced Load Time 2014-11-12 12:03:33 +10:30
Madd15 432e348e56 Add Report Controller and License Report 2014-11-12 12:02:55 +10:30
snipe d91a7c7aa8 Merge pull request #351 from diwanicki/patch-1
Update view.blade.php
2014-11-07 16:57:39 -05:00
diwanicki f2ae05786b Update view.blade.php
closing parens was missing from Depreciation, EOL was not configured for translations
2014-11-07 16:56:28 -05:00
snipe 3d3e2dc985 Merge pull request #346 from madd15/feature-supplier-image
Add image to supplier
2014-11-06 22:24:37 -05:00
madd15 3c3617d641 Add image to supplier 2014-11-07 13:46:14 +10:30
snipe b518162c50 Merge pull request #345 from madd15/patch-1
Fix #342
2014-11-06 16:23:50 -05:00
madd15 b2d5dc9ec5 Fix #342 2014-11-07 07:52:44 +10:30
snipe cff24309a1 Possibly fixes #343 2014-11-06 15:21:54 -05:00
snipe b25c94e429 Purchase cost is not required 2014-11-06 15:21:32 -05:00
snipe 53a47743e8 Language string udpates 2014-11-05 23:06:06 -05:00
snipe 8a10386737 Merge pull request #338 from madd15/patch-license-lang
Lang changes for new licenses functions
2014-11-05 22:49:00 -05:00
madd15 7e95d36245 Lang changes for new licenses functions 2014-11-06 14:15:09 +10:30
snipe f90327ee9c Merge pull request #337 from madd15/patch-1
Update to v1.1
2014-11-05 22:21:10 -05:00
madd15 3b5670965c Update to v1.1 2014-11-06 13:50:13 +10:30
snipe 8699a90093 Fixed changelog 2014-11-05 22:05:32 -05:00
snipe 562e5cd700 Changelog generator 2014-11-05 22:03:01 -05:00
snipe 3f7486e1a9 Updated changelog 2014-11-05 22:02:51 -05:00
snipe 0eb6183711 New strings for translation 2014-11-05 21:16:26 -05:00
snipe cdf5ecc084 Merge pull request #336 from madd15/feature-updated-setting-view
Update Settings to contain PHP & Laravel versions
2014-11-05 21:03:27 -05:00
madd15 0eda46da0c Move side column back to top on the right 2014-11-06 11:23:07 +10:30
madd15 1047c5c8bb Update Settings to contain PHP & Laravel versions 2014-11-06 11:12:15 +10:30
snipe 5f6f3de25e Merge pull request #335 from madd15/feature-new-license-fields
Add Fields to Licenses and Update Supplier for Licenses
2014-11-05 18:26:57 -05:00
madd15 7833d10006 Add Fields to Licenses and Update Supplier for Licenses 2014-11-06 09:32:50 +10:30
snipe 122b3d89d9 Added assetlog to other status types 2014-11-05 16:11:07 -05:00
snipe 14801eca79 Merge branch 'develop' of github.com:snipe/snipe-it into develop 2014-11-05 16:10:11 -05:00
snipe 4a4b974f41 Merge pull request #333 from madd15/patch-1
Add assetlog to Deployed Loading
2014-11-05 16:09:55 -05:00
snipe ab7b828e33 Romanian translations 2014-11-05 16:08:54 -05:00
snipe b0e87d967a Arr! Pirate translations 2014-11-05 16:08:19 -05:00
snipe a0001fe1ed Arabic translations 2014-11-05 16:08:08 -05:00
madd15 ac5fa1641e Add assetlog to Deployed Loading 2014-11-06 07:35:49 +10:30
snipe 7c16dd8c92 Eager loading on other status types 2014-11-05 15:57:10 -05:00
snipe 294b02127b Don't show asset name field if there is none 2014-11-05 15:16:38 -05:00
snipe e04cc806d9 Fixes #327 2014-11-05 15:16:22 -05:00
snipe 2bee522a7c Included defaultLoc to assets view 2014-11-04 19:23:11 -05:00
snipe 5441dd41f0 Eager loading on assets listing 2014-11-04 18:58:16 -05:00
snipe 7858252fca More brazilian portuguese translations 2014-11-04 18:33:35 -05:00
snipe 6c6d31f15a A few more hungarian translations 2014-11-04 18:32:38 -05:00
snipe 6b2d3efe3e Fixes #237 - reporting-only group 2014-11-04 18:21:10 -05:00
snipe 1078dbf5c5 Fixes #324 2014-11-03 02:39:11 -05:00
snipe 300c262739 Merge pull request #320 from diwanicki/asset-view-edit-new-org
Adjustments to Asset Edit and Asset View layouts
2014-11-03 00:40:44 -05:00
snipe 25a7b05de6 Merge pull request #323 from madd15/patch-1
Fix if no asset selected sql error
2014-11-03 00:22:00 -05:00
madd15 70d7748229 Remove asterisk from asset 2014-11-03 15:48:51 +10:30
madd15 6315db7fd8 Allow checkout to user without asset 2014-11-03 15:35:04 +10:30
snipe 343798d241 Merge pull request #322 from madd15/fix-js-delete-asset
Delegate to table, add button to on()
2014-11-02 20:10:05 -05:00
snipe 5050862979 Merge pull request #321 from madd15/patch-5
Fix #318 - Missing end div causing layout issues
2014-11-02 17:34:36 -05:00
madd15 90baf2eeba Delegate to table, add button to on() 2014-11-03 08:58:19 +10:30
madd15 0022389463 Fix dropdown menu position 2014-11-03 08:24:53 +10:30
madd15 04123b3fe8 Missing end div causing layout issues 2014-11-03 08:12:34 +10:30
snipe 491de30374 Finnish translation via jarnok 2014-11-02 13:41:12 -05:00
snipe 0d402f52c8 Localization 2014-11-02 13:34:08 -05:00
diwanicki 55cd7c0f81 move br in notes div, almost there 2014-11-02 13:27:32 -05:00
diwanicki 63656762b0 changed style for notes, brd in div 2014-11-02 13:26:09 -05:00
diwanicki 87a9399b6b maybe a break? 2014-11-02 13:18:58 -05:00
diwanicki ed5ff9a01b trying hard space 2014-11-02 13:14:56 -05:00
diwanicki 68bf40a7ea typo2 2014-11-02 13:10:01 -05:00
diwanicki 0cf24bdde1 typo 2014-11-02 13:08:44 -05:00
diwanicki 05502cf29d trying serial in col-md12 2014-11-02 13:03:06 -05:00
diwanicki 1305ea9597 move in div? 2014-11-02 11:27:56 -05:00
diwanicki 94e1fcb01b maybe breaks? 2014-11-02 11:24:28 -05:00
diwanicki 9c01ab334f playing with paragraph tags 2014-11-02 11:22:05 -05:00
diwanicki b685ea666c em, small, and paragraphs 2014-11-02 11:17:34 -05:00
diwanicki ee35948980 fix div issues 2014-11-02 11:09:29 -05:00
diwanicki 569714315c Revert c122cc2..f094551
This rolls back to commit c122cc2647.
2014-11-02 10:54:52 -05:00
diwanicki f09455117b . 2014-11-02 10:51:45 -05:00
diwanicki af70559754 . 2014-11-02 10:50:35 -05:00
diwanicki 07e6d49dce . 2014-11-02 10:49:22 -05:00
diwanicki 86597bb863 more 2014-11-02 10:46:57 -05:00
diwanicki 6d057846a1 again 2014-11-02 10:45:33 -05:00
diwanicki ba9f8c61f1 more 2014-11-02 10:41:52 -05:00
diwanicki d3266dd4e8 still more 2014-11-02 10:40:10 -05:00
diwanicki 9143ac461f and more 2014-11-02 10:37:32 -05:00
diwanicki 7199d6fd22 more adjustments 2014-11-02 10:29:24 -05:00
diwanicki 2b21b26950 more layout adjustments 2014-11-02 10:24:34 -05:00
diwanicki c122cc2647 layout adjustments
layout adjustment to Notes field, hide Notes from asset creation log
display
2014-11-02 10:06:23 -05:00
diwanicki ced8610833 cleanup, reorder, restore Asset view and edit
reordered fields on Asset Add/Edit form to flow more logically.
reordered fields on Asset View to flow more logically. Restored serial
number to Asset View. Added Asset specific notes field to Asset View
(they are in the log as part of the initial asset creation, but need to
be more prominent, especially if the device has a lot of history.
adjusted wording in EN lang template for clarity.
2014-11-02 08:48:42 -05:00
snipe af63d34412 Updated language strings 2014-11-01 19:06:44 -04:00
snipe 9e85dcb9fc Fixes #315 - add EOL as display option in settings (run migrations) 2014-11-01 18:38:24 -04:00
snipe 687c629953 Bootstrap HTML cleanup 2014-11-01 17:45:28 -04:00
snipe 13b3e2c4d4 HTML cleanup 2014-11-01 17:42:15 -04:00
snipe 4d8e663bd1 Replaced hard-coded month string for languag support 2014-11-01 17:27:07 -04:00
snipe 3e11ea70da Reverting to old page title 2014-11-01 17:24:57 -04:00
snipe 86b7b6946f Fixes #316 - added model name back to view 2014-11-01 17:14:36 -04:00
snipe 3184c3e03b Updated language files 2014-10-30 07:51:11 -04:00
snipe 55eb4325bc Merge pull request #309 from madd15/patch-2
Allow checkout to user or asset
2014-10-29 23:15:18 -04:00
snipe d4ef8a75b8 Merge pull request #310 from madd15/patch-3
Change file name to str_random(25) & prevent upsizing
2014-10-29 23:14:56 -04:00
madd15 cf4804a994 Added constraint to image to prevent upsizing 2014-10-30 10:34:52 +10:30
madd15 22590e2a43 Change file name to str_random(25) 2014-10-30 09:52:20 +10:30
madd15 d9f86df05f Uncomment User section 2014-10-30 09:34:55 +10:30
madd15 636eb29421 Change rule back to asset_id required_without 2014-10-30 09:33:31 +10:30
snipe 5dea4c7691 Merge pull request #308 from madd15/patch-1
Fix Gravatar email lang and < conflict
2014-10-29 18:56:26 -04:00
madd15 672e2e5fd4 Add gravatar_email 2014-10-30 09:06:13 +10:30
madd15 42ad3da3d3 Moved part of gravatar label to new line
<small> was conflicting with @lang
2014-10-30 09:04:47 +10:30
snipe bb3aa99b9c Added CrowdIn badge 2014-10-29 18:33:13 -04:00
snipe 676155eacb Added translation link to footer 2014-10-29 17:50:21 -04:00
snipe 54071d1837 Updated readme for translation info 2014-10-29 17:49:55 -04:00
snipe 5abc4467df New placeholder language files for translations 2014-10-29 17:38:24 -04:00
snipe ffe095d64b Updates to language files 2014-10-29 17:38:07 -04:00
snipe ce566509ce Merge pull request #306 from madd15/patch-1
Allow spaces in category name
2014-10-29 14:27:48 -04:00
madd15 84cb51b4c3 Allow spaces in category name 2014-10-29 21:59:51 +10:30
snipe 9b0d930a21 Updated requirements in main README 2014-10-29 05:56:05 -04:00
snipe 1680d45163 Updated composer lock 2014-10-29 05:38:03 -04:00
snipe 5e1f61ea2a Ignore new uploads subdirectories 2014-10-29 05:37:48 -04:00
snipe 75d0136d7f Merge pull request #304 from madd15/feature-avatars
Feature local avatars and model images
2014-10-29 05:08:49 -04:00
madd15 30428cb858 Vars for lang - Image 2014-10-29 17:34:47 +10:30
madd15 26ab53c02c Added Location and Website 2014-10-29 17:33:10 +10:30
madd15 d8815b5ef5 Change to Vars for labels 2014-10-29 17:32:19 +10:30
madd15 e8737b156a Add image and avatar lang vars 2014-10-29 17:19:27 +10:30
madd15 f200e81334 Remove circle effect from image 2014-10-29 15:58:39 +10:30
madd15 03f3294873 Add images to models
Appropriate changes to views and controllers
includes migration and folder
2014-10-29 15:54:55 +10:30
madd15 da70d5042c uploads\avatars folder 2014-10-29 14:43:27 +10:30
madd15 239370058c changed to avatar 2014-10-29 14:28:24 +10:30
madd15 0b4c1b8d83 Feature Avatars
Appropriate changes to views and controllers
User Avatar Migration
Add intervention/image
2014-10-29 14:18:54 +10:30
snipe 736c9a1ad7 Merge pull request #302 from madd15/patch-2
Change Locations to sort by name asc
2014-10-28 02:05:05 -04:00
madd15 fb46a04d78 Change Locations to sort by name asc 2014-10-28 16:01:11 +10:30
snipe e9e332e19e Merge pull request #300 from madd15/patch-2
Change paginate to get for Index
2014-10-27 15:19:33 -04:00
madd15 16420dafa9 Change paginate to get for Index
Fixes #261 - Pagination appears to work correctly after this change
2014-10-27 12:14:55 +10:30
rob 22f81912e4 Fixes #299 2014-10-24 17:08:50 -04:00
snipe e61f93deb8 Merge pull request #297 from madd15/patch-4
Changed rtd_location_id for edit to match create
2014-10-24 16:38:18 -04:00
snipe 8d2b09a647 Merge pull request #298 from madd15/patch-1
Changed to == on $setting->qr_code
2014-10-24 12:11:36 -04:00
madd15 b11a0cb436 Changed to == on $setting->qr_code 2014-10-25 00:27:25 +10:30
madd15 dd923984ef Changed rtd_location_id for edit to match create
Forgot to change postEdit
2014-10-24 15:17:07 +10:30
snipe d36c73550b Merge pull request #296 from madd15/patch-4
Change rtd_location_id to allow no location set
2014-10-24 00:24:05 -04:00
madd15 bbfc87dddf Change rtd_location_id to allow no location set 2014-10-24 14:50:27 +10:30
snipe 90497bb6a4 Updated spanish translations 2014-10-23 23:37:15 -04:00
snipe 35ce00f6ab Merge remote-tracking branch 'origin/master' into develop 2014-10-23 23:22:51 -04:00
snipe 3cbd8c9b5d Added CrowdIn link 2014-10-23 23:22:35 -04:00
snipe 599520dff6 Squashed commit of the following:
commit 309772e67d
Author: snipe <snipe@snipe.net>
Date:   Thu Oct 23 22:43:06 2014 -0400

    Fixed operator for setting bool display

commit 139a0a2e2a
Merge: 88459b7 14a9500
Author: snipe <snipe@snipe.net>
Date:   Thu Oct 23 22:39:55 2014 -0400

    Merge branch 'develop' of github.com:snipe/snipe-it into develop

commit 88459b755f
Merge: 05fb2a4 e17de3d
Author: snipe <snipe@snipe.net>
Date:   Thu Oct 23 22:39:22 2014 -0400

    Merge branch 'madd15-patch-2' into develop

commit e17de3d34f
Merge: 062d16b a6cd7c0
Author: snipe <snipe@snipe.net>
Date:   Thu Oct 23 22:38:11 2014 -0400

    Merge branch 'patch-2' of github.com:madd15/snipe-it into madd15-patch-2

commit a6cd7c0bab
Author: madd15 <joshdeakin@adam.com.au>
Date:   Fri Oct 24 13:07:57 2014 +1030

    Changed to only one date for checkout date

commit 062d16b2c0
Merge: 05fb2a4 7f44d6d
Author: snipe <snipe@snipe.net>
Date:   Thu Oct 23 22:22:55 2014 -0400

    Merge branch 'patch-2' of github.com:madd15/snipe-it into madd15-patch-2

commit 7f44d6dd47
Author: madd15 <joshdeakin@adam.com.au>
Date:   Fri Oct 24 12:48:04 2014 +1030

    Add display_checkout_date to settings table

commit 9125def119
Author: madd15 <joshdeakin@adam.com.au>
Date:   Fri Oct 24 12:41:25 2014 +1030

    Add checkout_date

commit 024972e239
Author: madd15 <joshdeakin@adam.com.au>
Date:   Fri Oct 24 12:35:42 2014 +1030

    Add Checkout Date column

commit b0e1ef6024
Author: madd15 <joshdeakin@adam.com.au>
Date:   Fri Oct 24 12:32:44 2014 +1030

    Add Display Checkout Date

commit d74bddb51f
Author: madd15 <joshdeakin@adam.com.au>
Date:   Fri Oct 24 12:32:06 2014 +1030

    Add display_checkout_date

commit 189523a943
Author: madd15 <joshdeakin@adam.com.au>
Date:   Fri Oct 24 12:30:51 2014 +1030

    Add Display Checkout Date Setting

commit 98b96d372d
Author: madd15 <joshdeakin@adam.com.au>
Date:   Fri Oct 24 12:29:58 2014 +1030

    Add Display Checkout Date Setting

commit 14a9500c6f
Merge: 7bea50f 0e9e659
Author: snipe <snipe@snipe.net>
Date:   Thu Oct 23 20:12:45 2014 -0400

    Merge pull request #293 from madd15/patch-5

    Update Country, Change to Form::, Change state to max 32

commit 0e9e659dc4
Author: madd15 <joshdeakin@adam.com.au>
Date:   Fri Oct 24 10:40:14 2014 +1030

    Alter State to varchar(32) in Suppliers Table

commit 7bea50feca
Merge: 05fb2a4 fafd03f
Author: snipe <snipe@snipe.net>
Date:   Thu Oct 23 20:08:31 2014 -0400

    Merge pull request #294 from madd15/patch-4

    Added DB Prefix to Migrations

commit 8f582f29e2
Author: madd15 <joshdeakin@adam.com.au>
Date:   Fri Oct 24 10:17:19 2014 +1030

    Change state to max 32

commit cbf23fc455
Author: madd15 <joshdeakin@adam.com.au>
Date:   Fri Oct 24 10:16:08 2014 +1030

    Update Country, Change to Form::

commit fafd03f00f
Author: madd15 <joshdeakin@adam.com.au>
Date:   Thu Oct 23 11:47:46 2014 +1030

    Added DB Prefix to Migrations

    Added DB::getTablePrefix(); to migrations to fix #284

    not sure if there is another way to achieve this

commit 05fb2a434c
Merge: 255b618 e43a945
Author: snipe <snipe@snipe.net>
Date:   Sun Oct 19 18:47:12 2014 -0400

    Merge pull request #283 from madd15/patch-3

    Update table.action to table.actions

commit e43a94586b
Author: madd15 <joshdeakin@adam.com.au>
Date:   Mon Oct 20 08:46:27 2014 +1030

    Update table.action to table.action

commit 0d12428140
Author: madd15 <joshdeakin@adam.com.au>
Date:   Fri Oct 17 15:39:58 2014 +1030

    Reordered, Changed title and added per_page

    Reordered, Changed title and added per_page

commit 692c861594
Author: madd15 <joshdeakin@adam.com.au>
Date:   Fri Oct 17 15:36:31 2014 +1030

    Updated static text to Lang vars

    Updated static text to Lang vars

commit c68d76870e
Author: madd15 <joshdeakin@adam.com.au>
Date:   Fri Oct 17 15:35:56 2014 +1030

    Change all form to use Form:: & update Lang

    Updated <input> to Form::
    Update static text to Lang Vars
2014-10-23 22:46:20 -04:00
snipe 309772e67d Fixed operator for setting bool display 2014-10-23 22:43:06 -04:00
snipe 139a0a2e2a Merge branch 'develop' of github.com:snipe/snipe-it into develop 2014-10-23 22:39:55 -04:00
snipe 88459b755f Merge branch 'madd15-patch-2' into develop 2014-10-23 22:39:22 -04:00
snipe e17de3d34f Merge branch 'patch-2' of github.com:madd15/snipe-it into madd15-patch-2 2014-10-23 22:38:11 -04:00
madd15 a6cd7c0bab Changed to only one date for checkout date 2014-10-24 13:07:57 +10:30
snipe 062d16b2c0 Merge branch 'patch-2' of github.com:madd15/snipe-it into madd15-patch-2 2014-10-23 22:22:55 -04:00
madd15 7f44d6dd47 Add display_checkout_date to settings table 2014-10-24 12:48:04 +10:30
madd15 9125def119 Add checkout_date 2014-10-24 12:41:25 +10:30
madd15 024972e239 Add Checkout Date column 2014-10-24 12:35:42 +10:30
madd15 b0e1ef6024 Add Display Checkout Date 2014-10-24 12:32:44 +10:30
madd15 d74bddb51f Add display_checkout_date 2014-10-24 12:32:06 +10:30
madd15 189523a943 Add Display Checkout Date Setting 2014-10-24 12:30:51 +10:30
madd15 98b96d372d Add Display Checkout Date Setting 2014-10-24 12:29:58 +10:30
snipe 14a9500c6f Merge pull request #293 from madd15/patch-5
Update Country, Change to Form::, Change state to max 32
2014-10-23 20:12:45 -04:00
madd15 0e9e659dc4 Alter State to varchar(32) in Suppliers Table 2014-10-24 10:40:14 +10:30
snipe 7bea50feca Merge pull request #294 from madd15/patch-4
Added DB Prefix to Migrations
2014-10-23 20:08:31 -04:00
madd15 8f582f29e2 Change state to max 32 2014-10-24 10:17:19 +10:30
madd15 cbf23fc455 Update Country, Change to Form:: 2014-10-24 10:16:08 +10:30
madd15 fafd03f00f Added DB Prefix to Migrations
Added DB::getTablePrefix(); to migrations to fix #284

not sure if there is another way to achieve this
2014-10-23 11:47:46 +10:30
snipe 05fb2a434c Merge pull request #283 from madd15/patch-3
Update table.action to table.actions
2014-10-19 18:47:12 -04:00
madd15 e43a94586b Update table.action to table.action 2014-10-20 08:46:27 +10:30
madd15 0d12428140 Reordered, Changed title and added per_page
Reordered, Changed title and added per_page
2014-10-17 15:39:58 +10:30
madd15 692c861594 Updated static text to Lang vars
Updated static text to Lang vars
2014-10-17 15:36:31 +10:30
madd15 c68d76870e Change all form to use Form:: & update Lang
Updated <input> to Form::
Update static text to Lang Vars
2014-10-17 15:35:56 +10:30
snipe 255b618559 Updated for 1.0 release 2014-10-16 18:40:31 -04:00
1598 changed files with 38856 additions and 1682 deletions
+5 -1
View File
@@ -10,7 +10,11 @@ composer.phar
/app/config/*/database.php
/app/config/*/app.php
public/packages/*
public/uploads/models/*
public/uploads/avatars/*
/app/storage/views/*
/app/storage/logs/*
/app/storage/debugbar/
/bin/
/bin/
.idea
crowdin.yaml
+14 -8
View File
@@ -1,3 +1,7 @@
addons:
hosts:
- AlisonMBP
# see http://about.travis-ci.org/docs/user/languages/php/ for more hints
language: php
@@ -15,14 +19,16 @@ env:
before_script:
- if [[ "$DB" == "mysql" ]]; then mysql -e "create database IF NOT EXISTS snipeit_laravel;" -utravis; fi
- curl -s http://getcomposer.org/installer | php
- cp app/config/production/database.example.php app/config/database.php
- cp app/config/production/mail.example.php app/config/mail.php
- composer install --prefer-source --no-interaction --dev
- php artisan key:generate
- php artisan migrate:install
- php artisan migrate --package cartalyst/sentry
- php artisan migrate
- php artisan db:seed
- cp app/config/testing/app.example.php app/config/testing/app.php
- cp app/config/testing/database.example.php app/config/testing/database.php
- cp app/config/testing/mail.example.php app/config/testing/mail.php
- composer self-update
- composer install --prefer-source --no-interaction
- php artisan key:generate --env=testing
- php artisan migrate:install --env=testing --no-interaction -vvv
- php artisan migrate --package cartalyst/sentry --env=testing --no-interaction -vvv
- php artisan migrate --env=testing --no-interaction -vvv
- php artisan db:seed --env=testing --no-interaction -vvv
# omitting "script:" will default to phpunit
# use the $DB env variable to determine the phpunit.xml to use
+112 -13
View File
@@ -1,10 +1,46 @@
### v0.3.11-alpha - Released Jul 19, 2014 07:16:53
### v1.1 - Released Nov 06, 2014 02:16:26
* <a href="http://github.com/snipe/snipe-it/commit/fafd03f00f49cb9ffe81d50aa9ca3d1f1fa1d043">view</a> &bull; Added DB Prefix to Migrations
* <a href="http://github.com/snipe/snipe-it/commit/309772e67d62989f1f60141a4a10d724a44c6baa">view</a> &bull; Fixed operator for setting bool display
* <a href="http://github.com/snipe/snipe-it/commit/22f81912e416cfe1227a08b5d8b6323e32e1ef36">view</a> &bull; Fixes #299
* <a href="http://github.com/snipe/snipe-it/commit/86b7b6946f1e1bd404127e228c615e4abe0b20fb">view</a> &bull; Fixes #316 - added model name back to view
* <a href="http://github.com/snipe/snipe-it/commit/9e85dcb9fcb4cc932ecddd23caa6b51e83110543">view</a> &bull; Fixes #315 - add EOL as display option in settings (run migrations)
* <a href="http://github.com/snipe/snipe-it/commit/ee35948980c22f9256241c02d7febd90275f6229">view</a> &bull; fix div issues
* <a href="http://github.com/snipe/snipe-it/commit/0022389463e251e73402450cfbc280cb05633bd1">view</a> &bull; Fix dropdown menu position
* <a href="http://github.com/snipe/snipe-it/commit/343798d241172707145ef365445062db9bb6b99a">view</a> &bull; Merge pull request #322 from madd15/fix-js-delete-asset
* <a href="http://github.com/snipe/snipe-it/commit/1078dbf5c5f6a5bec1a2ef864cebfcc7883d31e6">view</a> &bull; Fixes #324
* <a href="http://github.com/snipe/snipe-it/commit/6b2d3efe3e76429c9c2f5de78f04c4f7e2748a3d">view</a> &bull; Fixes #237 - reporting-only group
* <a href="http://github.com/snipe/snipe-it/commit/e04cc806d9209b54a1833172ebb66ab55b5f0c06">view</a> &bull; Fixes #327
### v1.0 - Released Oct 16, 2014 09:46:47
* <a href="http://github.com/snipe/snipe-it/commit/a4b220d6c31c97f6504023f0b52527825a4cd897">view</a> &bull; Fixed #191 - allow admins to assign a user during asset creation
* <a href="http://github.com/snipe/snipe-it/commit/dc1033025a0bc1b2d657e06c89058c3ab95f2c59">view</a> &bull; Fixed #151 - more complete translations
* <a href="http://github.com/snipe/snipe-it/commit/56d619b218794b43d8c6b182c89c75f83af9dcd9">view</a> &bull; Fixed missing language string
* <a href="http://github.com/snipe/snipe-it/commit/69fca5d1eda0e5f26d2085f7eebc08fafd84a3ae">view</a> &bull; Fixed #58
* <a href="http://github.com/snipe/snipe-it/commit/8197e6174e9f12bcfddd94c6bf606ee36e6801bf">view</a> &bull; Fixes #200
* <a href="http://github.com/snipe/snipe-it/commit/cb8369e9de96aaf1cf9108e22f4038fa6486b881">view</a> &bull; Initial QA Patch to fix errors Add License Add Asset Show Deleted Users License Assign
* <a href="http://github.com/snipe/snipe-it/commit/62a3ed671bbd957075563933f49e8a5445042737">view</a> &bull; DB migration, layout and clone fixes
* <a href="http://github.com/snipe/snipe-it/commit/9ccc7d756f9361757eafc1dce9684ee9f5ecc1c3">view</a> &bull; A0.4.2: Added asset, license, user, model cloning and fixed some bugs.
* <a href="http://github.com/snipe/snipe-it/commit/652f1c746c4757dce9d33d7bd90a9357822c4656">view</a> &bull; Fixes Travis CI build
* <a href="http://github.com/snipe/snipe-it/commit/363d084bd623f778cd72ca7d385a4fb2f67ef474">view</a> &bull; Fixed DB name in travis CI
* <a href="http://github.com/snipe/snipe-it/commit/49c5607e1c8a82a3111123ad84b537644546ebb3">view</a> &bull; Fixes #222
* <a href="http://github.com/snipe/snipe-it/commit/96e40d72b9ac3f74b94b0e39b6f296f0f0b2a1f4">view</a> &bull; fix typo: artisand -> artisan
* <a href="http://github.com/snipe/snipe-it/commit/e978038cc044f60c2eca71b6319063009a57886f">view</a> &bull; Merge pull request #234 from burlito/typo-fix
* <a href="http://github.com/snipe/snipe-it/commit/a829fcf52f933d087c3776993b42311ec9a8988e">view</a> &bull; fix: Use the old asset tag when cloning
* <a href="http://github.com/snipe/snipe-it/commit/ee7d9bec7082dc2e60a4797dea84a0b7443c8090">view</a> &bull; Fixes #279 - QR checkbox not staying checked
* <a href="http://github.com/snipe/snipe-it/commit/bf1e07555160ede517d41f649d6b1d0911f89dd2">view</a> &bull; Fixes #87 - made datatables responsive
### v0.3.11-alpha - Released Jul 19, 2014 05:16:53
#### This is a pre-release
* <a href="http://github.com/snipe/snipe-it/commit/ac4c905c42d920d2cf8455d644f4c65332a81d0d">view</a> &bull; Fixed #140
* <a href="http://github.com/snipe/snipe-it/commit/4a13cded607415d749151cef495332c48c58cf86">view</a> &bull; Fixed path for Travis composer
* <a href="http://github.com/snipe/snipe-it/commit/ddf946ad5eb6dd8480eeaa709f82af75e0c61444">view</a> &bull; Tried to fix failing build caused by travis composer
### v0.3.10-alpha - Released Jul 17, 2014 07:54:10
### v0.3.10-alpha - Released Jul 17, 2014 05:54:10
#### This is a pre-release
* <a href="http://github.com/snipe/snipe-it/commit/89a8f3c277d2482b2cd04c4c5c582c9e507770f8">view</a> &bull; Fixes #183 - added employee number to users
* <a href="http://github.com/snipe/snipe-it/commit/a7b809cb91f49fb2c8eaecc67822fa155a0f20ce">view</a> &bull; Updated title/header for users, additional fixes for #151
@@ -21,14 +57,14 @@
* <a href="http://github.com/snipe/snipe-it/commit/e203fc516fadf6218f5ce87c070d0cdba9fca188">view</a> &bull; Fixes #194
### v0.3.9-alpha - Released Jul 03, 2014 04:08:38
### v0.3.9-alpha - Released Jul 03, 2014 02:08:38
#### This is a pre-release
* <a href="http://github.com/snipe/snipe-it/commit/2825bcb4310899e89ccbc73dfa8b59ade28018da">view</a> &bull; Fixed #179 - account page to show assets checked out to the logged in user
* <a href="http://github.com/snipe/snipe-it/commit/c782f29f5aae752a6246be9778d418df172dd4f6">view</a> &bull; Pulled account sub-nav into top menu to free up UI space. #changelog
* <a href="http://github.com/snipe/snipe-it/commit/fad2ec66fa9abe0b34baf16cce453a7e9fc9e4d4">view</a> &bull; More README fixes and refinement
### v0.3.8-alpha - Released Jun 27, 2014 11:28:22
### v0.3.8-alpha - Released Jun 27, 2014 09:28:22
#### This is a pre-release
* <a href="http://github.com/snipe/snipe-it/commit/3e7a9e45d1954531bbc3b73f2ed59dd16d59c657">view</a> &bull; Fixes PR #168 and #167
* <a href="http://github.com/snipe/snipe-it/commit/945cb3253f1349e30aafa4e7cb57bb507a2ea0cc">view</a> &bull; Fix #117
@@ -41,17 +77,17 @@
* <a href="http://github.com/snipe/snipe-it/commit/ec9eab81bfb3b35bfe7ad06008b26f19009e6638">view</a> &bull; Closes #177 - change log file added, needs refining
### v.0.3.5-alpha - Released Jun 20, 2014 04:23:09
### v.0.3.5-alpha - Released Jun 20, 2014 02:23:09
#### This is a pre-release
* <a href="http://github.com/snipe/snipe-it/commit/d1499deecdff3c7a4235ffdfad5adbddc1a5098f">view</a> &bull; Provisions for strict mode, fixed license deletion bug
### v.0.3.4-alpha - Released Jun 20, 2014 12:27:59
### v.0.3.4-alpha - Released Jun 19, 2014 10:27:59
#### This is a pre-release
* <a href="http://github.com/snipe/snipe-it/commit/08d05b481f6366ad48fcdce72a8df53755f5dee8">view</a> &bull; Fixes #158
### v.0.3.3-alpha - Released Jun 18, 2014 10:04:46
### v.0.3.3-alpha - Released Jun 18, 2014 08:04:46
#### This is a pre-release
* <a href="http://github.com/snipe/snipe-it/commit/3518ab9f55f7992d6d4f886389d67b062a02f2d8">view</a> &bull; Fixes #139
* <a href="http://github.com/snipe/snipe-it/commit/ad9b1fc446ab15157502fe7c52ddbda455e3ea8f">view</a> &bull; Fixes #139
@@ -63,12 +99,12 @@
* <a href="http://github.com/snipe/snipe-it/commit/610c405aa50118163ad5d26d43e4bf6c2456f624">view</a> &bull; More fixes for #151
### v.0.3.2-alpha - Released May 06, 2014 10:26:21
### v.0.3.2-alpha - Released May 06, 2014 08:26:21
#### This is a pre-release
* <a href="http://github.com/snipe/snipe-it/commit/f4c5da57d0397877d90aa398267e59fcffee7b47">view</a> &bull; Fixed auth error when user isn't logged in
### v.0.3.1-alpha - Released May 06, 2014 06:48:09
### v.0.3.1-alpha - Released May 06, 2014 04:48:09
#### This is a pre-release
* <a href="http://github.com/snipe/snipe-it/commit/efad5db082d1461ea26556fad2f1671a49dc1480">view</a> &bull; Fix for broken datatables in upgrading to v2.2
* <a href="http://github.com/snipe/snipe-it/commit/5690e9ce1f178486179ce6cdfb00ca417acd87dd">view</a> &bull; Fixed code indentation for Apache virtualhost example
@@ -76,7 +112,7 @@
* <a href="http://github.com/snipe/snipe-it/commit/06067fc19c0127fdcbb78541e7cdc8e77f5444ac">view</a> &bull; Fixed CSV rexport
### v0.3.0-alpha - Released Jan 29, 2014 02:28:31
### v0.3.0-alpha - Released Jan 29, 2014 01:28:31
#### This is a pre-release
* <a href="http://github.com/snipe/snipe-it/commit/d91d75abe4df19dd6cd54705ba9967295973ced0">view</a> &bull; Fixing JSON parse errors from #97
* <a href="http://github.com/snipe/snipe-it/commit/baab758377e117a86c3273dd1d6e03e66b02dc8b">view</a> &bull; Fixed language support
@@ -103,7 +139,7 @@
* <a href="http://github.com/snipe/snipe-it/commit/580590b4c0b4a2f76ef8edfe02de986267fc7395">view</a> &bull; Fixed === to == (PHP is loosely typed)
### v0.2.0-alpha - Released Nov 29, 2013 11:09:07
### v0.2.0-alpha - Released Nov 29, 2013 10:09:07
#### This is a pre-release
* <a href="http://github.com/snipe/snipe-it/commit/06cbd0723e415d81ea12aa48f2c37188741b2dbc">view</a> &bull; Fixes #93
* <a href="http://github.com/snipe/snipe-it/commit/e305099b45401c871f16fec23c200080830fcd5d">view</a> &bull; Fixed model view
@@ -113,7 +149,7 @@
* <a href="http://github.com/snipe/snipe-it/commit/11c657ffa4c3bdd01cd04b81d01980b2d795107c">view</a> &bull; Fixes #36
### v0.1.2-alpha - Released Nov 29, 2013 02:59:05
### v0.1.2-alpha - Released Nov 29, 2013 01:59:05
#### This is a pre-release
* <a href="http://github.com/snipe/snipe-it/commit/b1aa67ddb72158513f0a706996c8c1f5b3609aa5">view</a> &bull; Fixes #69
* <a href="http://github.com/snipe/snipe-it/commit/aa38d83ba6369215451d905e599492214e9f4b8b">view</a> &bull; Fixes #63 and #70
@@ -126,12 +162,75 @@
* <a href="http://github.com/snipe/snipe-it/commit/d9a37f38228d55bb6265efc626e3ab7919013362">view</a> &bull; Fixes #88
* <a href="http://github.com/snipe/snipe-it/commit/5858bfb99b2144fbc805ec62cc90e6aaaf019f77">view</a> &bull; Fixed language file paths caused by #88
* <a href="http://github.com/snipe/snipe-it/commit/9f7cbc8a4f01ddf2596e831f658c9a8c321b2f46">view</a> &bull; Another fix related to #88, also accounts for users with invalid location_ids
* <a href="http://github.com/snipe/snipe-it/commit/1b56c31a22afd39a875677714b9c07e96876b8df">view</a> &bull; Fixed relationship between users/locations because fuck you ORM
* <a href="http://github.com/snipe/snipe-it/commit/f0f07b578b2439a627e5e946df0849d88d8526cf">view</a> &bull; Fixing pivot for users
* <a href="http://github.com/snipe/snipe-it/commit/9fa826b2e77ce22d25a8b3094bc825802d25be85">view</a> &bull; Fixed assigned to id
* <a href="http://github.com/snipe/snipe-it/commit/839d01a3af08d780be4152bc02b33bff1a7d7f20">view</a> &bull; Fixed relationship method because fuck you ORM
### v0.1.1-alpha - Released Nov 27, 2013 12:11:00
### v0.1.1-alpha - Released Nov 26, 2013 11:11:00
#### This is a pre-release
* <a href="http://github.com/snipe/snipe-it/commit/1527b88fd671a20c879c9b2061ae95f3b386ba27">view</a> &bull; Fixes #61
* <a href="http://github.com/snipe/snipe-it/commit/4c0af1eae1031c2630f6e29cc73f8a9dfac1081c">view</a> &bull; Fixed typo causing failure with mysql strict
* <a href="http://github.com/snipe/snipe-it/commit/0e3bcfecd05a39bfea6fc7ba11cb24d9d49e6d86">view</a> &bull; Should be final fixes for mysql strict mode
### Initial alpha - Released Nov 26, 2013 09:01:13
#### This is a pre-release
* <a href="http://github.com/snipe/snipe-it/commit/14972f894bb0e761e2d0170a2c93c9aac4edfca6">view</a> &bull; fixed typo
* <a href="http://github.com/snipe/snipe-it/commit/79da13dff767d57f6f4fbb12f195e25f409ee5ec">view</a> &bull; Fixed layout for category view
* <a href="http://github.com/snipe/snipe-it/commit/0e4e26206bdcc164e5df586368ed45edd45b9a74">view</a> &bull; fixed broken redirect route
* <a href="http://github.com/snipe/snipe-it/commit/9364c46c2df79c0de07dc5dbb724a3c44485b739">view</a> &bull; Fixed licensed link
* <a href="http://github.com/snipe/snipe-it/commit/4f0a1789db01f12ebc4bd47e7e0594bf67b64daf">view</a> &bull; Fixed license blades
* <a href="http://github.com/snipe/snipe-it/commit/27514f85c3ba9056c4609774a482a58605f4d8cf">view</a> &bull; Fixed typo in variable name
* <a href="http://github.com/snipe/snipe-it/commit/ffe786f659e3e8c5b91c27cd33cb77b6d24d3545">view</a> &bull; Fixed routes.
* <a href="http://github.com/snipe/snipe-it/commit/cf59ec8c67e142c0612fb7797448057b19af5cfa">view</a> &bull; Fixed pagination bug
* <a href="http://github.com/snipe/snipe-it/commit/76ac39115347dabac8ada21d981494a3edf7a29c">view</a> &bull; Fixed edit bug where new Category was invoked twice
* <a href="http://github.com/snipe/snipe-it/commit/940281dd4dd0a69b900a052c0bb84e24dde89666">view</a> &bull; Fixed bug on validation display
* <a href="http://github.com/snipe/snipe-it/commit/31d323fb71fcbe94f17f0a2b38183709e8c77151">view</a> &bull; Cosmetic fix on form
* <a href="http://github.com/snipe/snipe-it/commit/8f86ec9dae58cef27387b028f70c8116d649b425">view</a> &bull; Change depreciation to be by month; formatting fixes.
* <a href="http://github.com/snipe/snipe-it/commit/4da2bccbf78a0b630267c6ed75f3a1bd8100e20d">view</a> &bull; Merge pull request #27 from snipe/depreciation_fix
* <a href="http://github.com/snipe/snipe-it/commit/7bc7ffb72813cd176658d536bbdd6be0faa9a45c">view</a> &bull; Fixed some error reporting/required fields around checkout/checkin
* <a href="http://github.com/snipe/snipe-it/commit/48e180c6910d30732559b0cc077fce679344f56e">view</a> &bull; Fixed asset bug caused by unique validation in assets model
* <a href="http://github.com/snipe/snipe-it/commit/57107dceeee81e8618198da33af79fe66bde0d9e">view</a> &bull; Fixed checkin text
* <a href="http://github.com/snipe/snipe-it/commit/7b59f42fb03ee5017c11cf32abc8a23c3f5d2141">view</a> &bull; Fixed pagination bug, styled buttons
* <a href="http://github.com/snipe/snipe-it/commit/ffdb4b1aa8dde9942f7c3b110e9a68006779998b">view</a> &bull; Fixed wonky layout issue
* <a href="http://github.com/snipe/snipe-it/commit/3401fee672d796f4aca8dafced6917c7caf87866">view</a> &bull; Another table fix
* <a href="http://github.com/snipe/snipe-it/commit/ddfd69e5100b19bb05d6b76cb9fad3dbadad1921">view</a> &bull; More table fixes
* <a href="http://github.com/snipe/snipe-it/commit/5c43caf0579a26c1604fc81f5cbdf8f0d43c157d">view</a> &bull; More table fixes
* <a href="http://github.com/snipe/snipe-it/commit/44ba90f9f0a968999a743c35dd2bf153c2edbf1d">view</a> &bull; Fixed icon set to white in main nav
* <a href="http://github.com/snipe/snipe-it/commit/719c36d482cc67f1513351672eda057519f7f735">view</a> &bull; migration to fix a few fields in the log table
* <a href="http://github.com/snipe/snipe-it/commit/5b27a34f050646467a178ff780efc80036aadf1b">view</a> &bull; Fixed fieldname in userlog
* <a href="http://github.com/snipe/snipe-it/commit/76da83cbe1c4334380bb996a40cc374ab4ec12e9">view</a> &bull; Fixed links to edit/checkout
* <a href="http://github.com/snipe/snipe-it/commit/d6a718e99766829e700760c2266b62ad37cdb66b">view</a> &bull; Fixed bug in views for created_at date
* <a href="http://github.com/snipe/snipe-it/commit/0ee08e47e9f2b144084703142ae5eb099090476d">view</a> &bull; Fixed fatal error if admin who created the asset was deleted. (This should never happen, but...)
* <a href="http://github.com/snipe/snipe-it/commit/61cceb5f0b44e7f2a82ccca44be2bc42e8825156">view</a> &bull; Fixed open tag in CSS
* <a href="http://github.com/snipe/snipe-it/commit/c93469c465c0ce8a291d595ac8ccbafbfc68c71a">view</a> &bull; Fixed query for asset/license header boxes
* <a href="http://github.com/snipe/snipe-it/commit/d46556a83d5335913b8b7fe8558f416540290343">view</a> &bull; Fixed phone display if no value set
* <a href="http://github.com/snipe/snipe-it/commit/fc8c3c086ca70a513cd3fff39275fcf035cead5a">view</a> &bull; fixed #37
* <a href="http://github.com/snipe/snipe-it/commit/52020d09f034c9de78b798725c0f3700d0253beb">view</a> &bull; Fixed bomb when asset is unassigned
* <a href="http://github.com/snipe/snipe-it/commit/1b1efec858e8e0cfc5cfafc63bfb537e45191cd1">view</a> &bull; Fixed foreign key in assets
* <a href="http://github.com/snipe/snipe-it/commit/b7251d9992401c04a5da1771af0fcddad2754362">view</a> &bull; Fixed potential bug in blade
* <a href="http://github.com/snipe/snipe-it/commit/9249786a25bc166bf5341f59a11d644cf4f6425c">view</a> &bull; Fixed status display
* <a href="http://github.com/snipe/snipe-it/commit/c32d45e90142b41b567a350af6d399af67994a02">view</a> &bull; Fixed ID
* <a href="http://github.com/snipe/snipe-it/commit/2203789f4c5310599a94799bb3ead9ff9c1ce802">view</a> &bull; Fixes #41
* <a href="http://github.com/snipe/snipe-it/commit/03edbc008c671c868fced94a7761683309d9ab8b">view</a> &bull; Fixes #43
* <a href="http://github.com/snipe/snipe-it/commit/2b088a3fb2ea7711f66e4a887882b17f401ba4bc">view</a> &bull; Fixes #17
* <a href="http://github.com/snipe/snipe-it/commit/ad680a337e50638b4b9865e42e4ea7e453c4151b">view</a> &bull; Fixed column name spelling in DB
* <a href="http://github.com/snipe/snipe-it/commit/718236b2d4bedeaaad80cc601e3e91a3229e81fa">view</a> &bull; Fixed #9
* <a href="http://github.com/snipe/snipe-it/commit/3cc0ed87438b632679ce8b61a7ea0fae48999438">view</a> &bull; Fixed sorting weirdness
* <a href="http://github.com/snipe/snipe-it/commit/57d0f3643518190f0b4a6fe33ac6d83eda647119">view</a> &bull; Fixes #4
* <a href="http://github.com/snipe/snipe-it/commit/3ea0ad87c8733ce1bac0e9c10c2cdaf3254743d5">view</a> &bull; Fixes #22
* <a href="http://github.com/snipe/snipe-it/commit/e87e5b9cae19bfd06b815cf01be309d665409828">view</a> &bull; Fixes #46
* <a href="http://github.com/snipe/snipe-it/commit/7a5b133c5875959c5d7bebf16ea82bac7ceb3989">view</a> &bull; Fixed bug linking to assets when they should be pointing to licenses
* <a href="http://github.com/snipe/snipe-it/commit/e13578d97d6b1ef1990f171beda9b35868fda47c">view</a> &bull; Fixed error when no category is given
* <a href="http://github.com/snipe/snipe-it/commit/45c04b1cdebc0b19243a519d2580af921c82b47b">view</a> &bull; Fixed display bug
* <a href="http://github.com/snipe/snipe-it/commit/4d1dd1c446f76e5530d6fb7f932a77a8da2d0b73">view</a> &bull; Fixed #50 - MOAR VALIDATION!
* <a href="http://github.com/snipe/snipe-it/commit/12958553022d4b7b2184ebf837d4113b23f5cf27">view</a> &bull; Fixes #51
* <a href="http://github.com/snipe/snipe-it/commit/d0cbb9f3a7e4a1fc05ddcabd19e201434c14370b">view</a> &bull; Fixes #52
* <a href="http://github.com/snipe/snipe-it/commit/5bf38b1d02e743af22a51393f1e477100b1f76b7">view</a> &bull; Fixes #50
* <a href="http://github.com/snipe/snipe-it/commit/e6fc1956fc93132d04bf5ac4c0d108c1ae9eee0b">view</a> &bull; Fixes #55
* <a href="http://github.com/snipe/snipe-it/commit/ee3fb2785e719c938b6036f6ea74527c1217aba8">view</a> &bull; Fixed XSS on modal
* <a href="http://github.com/snipe/snipe-it/commit/dc5ad876863a1e17babce06adfb365f38c30ca59">view</a> &bull; Fixes #59
* <a href="http://github.com/snipe/snipe-it/commit/d7a8cac1dc6158983673688c2e48e9a48217b6f2">view</a> &bull; Fixed validation
* <a href="http://github.com/snipe/snipe-it/commit/196710dac807d48f6c73b02c2444a5b8d301b8a6">view</a> &bull; Fixed bug in error validation display
+6 -11
View File
@@ -8,18 +8,13 @@ If you don't have a feature in mind, but would like to contribute back to the pr
-----
[![Stories in Ready](https://badge.waffle.io/snipe/snipe-it.png?label=ready&title=Ready)](http://waffle.io/snipe/snipe-it)
The labels we use in GitHub Issues and Waffle.io indicate whether we've confirmed an issue as a bug, whether we're considering the issue as a potential feature, and whether it's ready for someone to work on it. We also provide labels such as "n00b", "intermediate" and "advanced" for the experience level we think it requires for contributors who want to help.
## Translations!
If you're not great at PHP and you still want to help, consider contributing some translation files (assuming, of course, that you are fluent in another language.)
To do so:
* fork the develop branch
* create a new branch on your new fork (something like `translations/french`)
* copy the `en` directory and name it according to the [two-letter ISO 639-1 code](http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes)
* translate the strings
* submit a pull request!
**If you've translated Snipe IT into another language already for your own usage, please consider contributing those translation files back to the project so that everyone can benefit.**
If you're not a coder but want to give back to the project and you're fluent in other languages, that's okay too. We use [CrowdIn](https://crowdin.com) to manage translations, and it makes it super-simple for you to add translations (or validate proposed translations) to the project without messing with code. __Check out [the Snipe-IT CrowdIn translation project here](https://crowdin.com/project/snipe-it/)__.
Thanks!
Executable → Regular
+23 -4
View File
@@ -1,20 +1,22 @@
[![Click here to lend your support to: Snipe IT - Free Open Source Asset Management System and make a donation at pledgie.com](https://pledgie.com/campaigns/22899.png?skin_name=chrome)](https://pledgie.com/campaigns/22899) [![Build Status](https://travis-ci.org/snipe/snipe-it.svg?branch=develop)](https://travis-ci.org/snipe/snipe-it) [![Stories in Ready](https://badge.waffle.io/snipe/snipe-it.png?label=ready&title=Ready)](http://waffle.io/snipe/snipe-it) [![ProjectStatus](http://stillmaintained.com/snipe/snipe-it.png)](http://stillmaintained.com/snipe/snipe-it)
[![Click here to lend your support to: Snipe IT - Free Open Source Asset Management System and make a donation at pledgie.com](https://pledgie.com/campaigns/22899.png?skin_name=chrome)](https://pledgie.com/campaigns/22899) [![Build Status](https://travis-ci.org/snipe/snipe-it.svg?branch=develop)](https://travis-ci.org/snipe/snipe-it) [![Stories in Ready](https://badge.waffle.io/snipe/snipe-it.png?label=ready&title=Ready)](http://waffle.io/snipe/snipe-it) [![ProjectStatus](http://stillmaintained.com/snipe/snipe-it.png)](http://stillmaintained.com/snipe/snipe-it) [![Crowdin](https://d322cqt584bo4o.cloudfront.net/snipe-it/localized.png)](https://crowdin.com/project/snipe-it)
## Snipe-IT - Asset Management For the Rest of Us
[![Gitter](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/snipe/snipe-it?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
This is a FOSS project for asset management in IT Operations. Knowing who has which laptop, when it was purchased in order to depreciate it correctly, handling software licenses, etc.
It is built on [Laravel 4.1](http://laravel.com) and uses the [Sentry 2](https://github.com/cartalyst/sentry) package.
It is built on [Laravel 4.2](http://laravel.com) and uses the [Sentry 2](https://github.com/cartalyst/sentry) package.
This project is being actively developed (at what seems like breakneck speed sometimes!) We're still in alpha release, so this is NOT recommended for production use yet, as many more things will likely change before v1.0-stable is ready - but we're [releasing quite frequently](https://github.com/snipe/snipe-it/releases). ([Check out the live demo here](http://snipeitapp.com/demo.php).)
This project is being actively developed and we're [releasing quite frequently](https://github.com/snipe/snipe-it/releases). ([Check out the live demo here](http://snipeitapp.com/demo.php).)
__This is web-based software__. This means there there is no executable file (aka no .exe files), and it must be run on a web server and accessed through a web browser. It runs on any Mac OSX, flavor of Linux, as well as Windows.
-----
### Documentation & Installation
__Installation and configuration documentation for this project has been moved to http://docs.snipeitapp.com.__ This provides a more easily navigated, organized view of the documentation, and is based off of the [documentation branch](https://github.com/snipe/snipe-it/tree/documentation) in this repo. Contributions and bugfixes to the documentation are always welcome!
__Installation and configuration documentation for this project has been moved to http://snipeitapp.com/documentation/.__
We'll be adding a long-overdue user's manual soon as well.
@@ -34,11 +36,24 @@ We use Waffle.io to help better communicate our roadmap with users. Our [project
To be notified of important news (such as new releases, security advisories, etc), [sign up for our list](http://eepurl.com/XyZKz). We'll never sell or give away your info, and we'll only email you when it's important.
### Translations!
If you're not a coder but want to give back to the project and you're fluent in other languages, consider helping out with the translations. We use [CrowdIn](https://crowdin.com) to manage translations, and it makes it super-simple for you to add translations to the project without messing with code. Check out [the Snipe-IT CrowdIn translation project here](https://crowdin.com/project/snipe-it/).
We currently have English, Chinese, Finnish, Malay, Romanian and Spanish completed, and are looking for lots more!
-----
## Requirements
- PHP 5.4 or later
- MCrypt PHP Extension
- Fileinfo Extension
And _one_ of the following image libraries (for QR codes, asset model image and user avatar image uploads).
- GD Library (>=2.0) … or …
- Imagick PHP extension (>=6.3.8)
-----
@@ -50,3 +65,7 @@ Whenever you pull down a new version from master or develop, when you grab the [
php artisan migrate
Forgetting to do this can mean your DB might end up out of sync with the new files you just pulled, or you may have some funky cached autoloader values. It's a good idea to get into the habit of running these every time you pull anything new down. If there are no database changes to migrate, it won't hurt anything to run migrations anyway.
[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/snipe/snipe-it/trend.png)](https://bitdeli.com/free "Bitdeli Badge")
+6 -3
View File
@@ -223,7 +223,8 @@ class AppCommand extends Command
'name' => 'Admin',
'permissions' => array(
'admin' => 1,
'users' => 1
'users' => 1,
'reports' => 1
)
));
@@ -242,7 +243,8 @@ class AppCommand extends Command
'name' => 'Reporting',
'permissions' => array(
'admin' => 0,
'users' => 1
'users' => 1,
'reports' => 1,
)
));
@@ -260,7 +262,8 @@ class AppCommand extends Command
'name' => 'Users',
'permissions' => array(
'admin' => 0,
'users' => 1
'users' => 1,
'reports' => 0,
)
));
+58 -39
View File
@@ -27,6 +27,23 @@ return array(
'locale' => 'en',
/*
|--------------------------------------------------------------------------
| Autoloaded Service Providers
|--------------------------------------------------------------------------
|
| This setting may be used to control the default cipher used by the Laravel
| encryption facilities.
|
| Note: In Laravel 4.2, the default cipher is MCRYPT_RIJNDAEL_128 (AES),
| which is considered to be the most secure cipher. Changing the cipher
| back to MCRYPT_RIJNDAEL_256 is required to decrypt cookies/values that
| were encrypted in Laravel <= 4.1
|
*/
'cipher' => MCRYPT_RIJNDAEL_256,
/*
|--------------------------------------------------------------------------
| Autoloaded Service Providers
@@ -99,45 +116,47 @@ return array(
'aliases' => array(
'App' => 'Illuminate\Support\Facades\App',
'Artisan' => 'Illuminate\Support\Facades\Artisan',
'Auth' => 'Illuminate\Support\Facades\Auth',
'Blade' => 'Illuminate\Support\Facades\Blade',
'Cache' => 'Illuminate\Support\Facades\Cache',
'ClassLoader' => 'Illuminate\Support\ClassLoader',
'Config' => 'Illuminate\Support\Facades\Config',
'Controller' => 'Illuminate\Routing\Controller',
'Cookie' => 'Illuminate\Support\Facades\Cookie',
'Crypt' => 'Illuminate\Support\Facades\Crypt',
'DB' => 'Illuminate\Support\Facades\DB',
'Datatable' => 'Chumper\Datatable\Facades\DatatableFacade',
'Eloquent' => 'Illuminate\Database\Eloquent\Model',
'Event' => 'Illuminate\Support\Facades\Event',
'File' => 'Illuminate\Support\Facades\File',
'Form' => 'Illuminate\Support\Facades\Form',
'Hash' => 'Illuminate\Support\Facades\Hash',
'HTML' => 'Illuminate\Support\Facades\HTML',
'Input' => 'Illuminate\Support\Facades\Input',
'Lang' => 'Illuminate\Support\Facades\Lang',
'Log' => 'Illuminate\Support\Facades\Log',
'Mail' => 'Illuminate\Support\Facades\Mail',
'Paginator' => 'Illuminate\Support\Facades\Paginator',
'Password' => 'Illuminate\Support\Facades\Password',
'Queue' => 'Illuminate\Support\Facades\Queue',
'Redirect' => 'Illuminate\Support\Facades\Redirect',
'Redis' => 'Illuminate\Support\Facades\Redis',
'Request' => 'Illuminate\Support\Facades\Request',
'Response' => 'Illuminate\Support\Facades\Response',
'Route' => 'Illuminate\Support\Facades\Route',
'Schema' => 'Illuminate\Support\Facades\Schema',
'Seeder' => 'Illuminate\Database\Seeder',
'Sentry' => 'Cartalyst\Sentry\Facades\Laravel\Sentry',
'Session' => 'Illuminate\Support\Facades\Session',
'SSH' => 'Illuminate\Support\Facades\SSH',
'Str' => 'Illuminate\Support\Str',
'URL' => 'Illuminate\Support\Facades\URL',
'Validator' => 'Illuminate\Support\Facades\Validator',
'View' => 'Illuminate\Support\Facades\View'
'App' => 'Illuminate\Support\Facades\App',
'Artisan' => 'Illuminate\Support\Facades\Artisan',
'Auth' => 'Illuminate\Support\Facades\Auth',
'Blade' => 'Illuminate\Support\Facades\Blade',
'Cache' => 'Illuminate\Support\Facades\Cache',
'ClassLoader' => 'Illuminate\Support\ClassLoader',
'Config' => 'Illuminate\Support\Facades\Config',
'Controller' => 'Illuminate\Routing\Controller',
'Cookie' => 'Illuminate\Support\Facades\Cookie',
'Crypt' => 'Illuminate\Support\Facades\Crypt',
'DB' => 'Illuminate\Support\Facades\DB',
'Datatable' => 'Chumper\Datatable\Facades\DatatableFacade',
'Eloquent' => 'Illuminate\Database\Eloquent\Model',
'Event' => 'Illuminate\Support\Facades\Event',
'File' => 'Illuminate\Support\Facades\File',
'Form' => 'Illuminate\Support\Facades\Form',
'Hash' => 'Illuminate\Support\Facades\Hash',
'HTML' => 'Illuminate\Support\Facades\HTML',
'Image' => 'Intervention\Image\ImageManagerStatic',
'Input' => 'Illuminate\Support\Facades\Input',
'Lang' => 'Illuminate\Support\Facades\Lang',
'Log' => 'Illuminate\Support\Facades\Log',
'Mail' => 'Illuminate\Support\Facades\Mail',
'Paginator' => 'Illuminate\Support\Facades\Paginator',
'Password' => 'Illuminate\Support\Facades\Password',
'Queue' => 'Illuminate\Support\Facades\Queue',
'Redirect' => 'Illuminate\Support\Facades\Redirect',
'Redis' => 'Illuminate\Support\Facades\Redis',
'Request' => 'Illuminate\Support\Facades\Request',
'Response' => 'Illuminate\Support\Facades\Response',
'Route' => 'Illuminate\Support\Facades\Route',
'Schema' => 'Illuminate\Support\Facades\Schema',
'Seeder' => 'Illuminate\Database\Seeder',
'Sentry' => 'Cartalyst\Sentry\Facades\Laravel\Sentry',
'Session' => 'Illuminate\Support\Facades\Session',
'SoftDeletingTrait' => 'Illuminate\Database\Eloquent\SoftDeletingTrait',
'SSH' => 'Illuminate\Support\Facades\SSH',
'Str' => 'Illuminate\Support\Str',
'URL' => 'Illuminate\Support\Facades\URL',
'Validator' => 'Illuminate\Support\Facades\Validator',
'View' => 'Illuminate\Support\Facades\View'
),
+1 -1
View File
@@ -37,7 +37,7 @@ return array(
| to a random, 32 character string, otherwise these encrypted strings
| will not be safe. Please do this before deploying an application!
|
| Run a php artisan key:generate --env=staging to create a random one
| Run a php artisan key:generate to create a random one
*/
'key' => 'Change_this_key_or_snipe_will_get_ya',
+1
View File
@@ -61,6 +61,7 @@ return array(
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
'strict' => false,
),
'pgsql' => array(
+8
View File
@@ -16,4 +16,12 @@ return array(
),
),
'Reporting' => array(
array(
'permission' => 'reports',
'label' => 'View Reports',
),
),
);
+13 -1
View File
@@ -26,7 +26,7 @@ return array(
|
*/
'default' => 'sqlite',
'default' => 'mysql',
/*
|--------------------------------------------------------------------------
@@ -50,6 +50,18 @@ return array(
'database' => ':memory:',
'prefix' => ''
),
'mysql' => array(
'driver' => 'mysql',
'host' => 'localhost',
'database' => 'snipeit_laravel',
'username' => 'travis',
'password' => '',
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
),
),
/*
+1 -1
View File
@@ -119,6 +119,6 @@ return array(
|
*/
'pretend' => false,
'pretend' => true,
);
+4 -1
View File
@@ -7,10 +7,13 @@ class AdminController extends AuthorizedController
*
* @return void
*/
public function __construct()
{
// These have been moved into the routes for more granular control
// Apply the admin auth filter
$this->beforeFilter('admin-auth');
//$this->beforeFilter('admin-auth', array('except' => $this->whitelist));
}
@@ -1,6 +1,7 @@
<?php namespace Controllers\Account;
use AuthorizedController;
use Image;
use Input;
use Redirect;
use Sentry;
@@ -62,6 +63,19 @@ class ProfileController extends AuthorizedController
$user->website = Input::get('website');
$user->location_id = Input::get('location_id');
$user->gravatar = Input::get('gravatar');
if (Input::file('avatar')) {
$image = Input::file('avatar');
$file_name = $user->first_name."-".$user->last_name.".".$image->getClientOriginalExtension();
$path = public_path('uploads/avatars/'.$file_name);
Image::make($image->getRealPath())->resize(84, 84)->save($path);
$user->avatar = $file_name;
}
if (Input::get('avatar_delete') == 1 && Input::file('avatar') == "") {
$user->avatar = NULL;
}
$user->save();
// Redirect to the settings page
+61 -91
View File
@@ -38,19 +38,21 @@ class AssetsController extends AdminController
{
// Grab all the assets
$assets = Asset::with('model','assigneduser','assetstatus','defaultLoc','assetlog')->Hardware();
// Filter results
if (Input::get('Pending')) {
$assets = Asset::orderBy('asset_tag', 'ASC')->whereNull('status_id','and')->where('assigned_to','=','0')->where('physical', '=', 1)->get();
$assets->Pending();
} elseif (Input::get('RTD')) {
$assets = Asset::orderBy('asset_tag', 'ASC')->where('status_id', '=', 0)->where('assigned_to','=','0')->where('physical', '=', 1)->get();
$assets->RTD();
} elseif (Input::get('Undeployable')) {
$assets = Asset::orderBy('asset_tag', 'ASC')->where('status_id', '>', 1)->where('physical', '=', 1)->get();
$assets->Undeployable();
} elseif (Input::get('Deployed')) {
$assets = Asset::orderBy('asset_tag', 'ASC')->where('status_id', '=', 0)->where('assigned_to','>','0')->where('physical', '=', 1)->get();
} else {
$assets = Asset::orderBy('asset_tag', 'ASC')->where('physical', '=', 1)->get();
$assets->Deployed();
}
$assets = $assets->orderBy('asset_tag', 'ASC')->get();
// Paginate the users
/**$assets = $assets->paginate(Setting::getSettings()->per_page)
->appends(array(
@@ -64,104 +66,51 @@ class AssetsController extends AdminController
return View::make('backend/hardware/index', compact('assets'));
}
public function getReports()
{
// Grab all the assets
$assets = Asset::orderBy('created_at', 'DESC')->get();
return View::make('backend/reports/index', compact('assets'));
}
public function exportReports()
{
// @todo - It may be worthwhile creating a separate controller for reporting
// Grab all the assets
$assets = Asset::orderBy('created_at', 'DESC')->get();
$rows = array();
// Create the header row
$header = array(
Lang::get('admin/hardware/table.asset_tag'),
Lang::get('admin/hardware/table.title'),
Lang::get('admin/hardware/table.serial'),
Lang::get('admin/hardware/table.checkoutto'),
Lang::get('admin/hardware/table.location'),
Lang::get('admin/hardware/table.purchase_date'),
Lang::get('admin/hardware/table.purchase_cost'),
Lang::get('admin/hardware/table.book_value'),
Lang::get('admin/hardware/table.diff')
);
$header = array_map('trim', $header);
$rows[] = implode($header, ',');
// Create a row per asset
foreach ($assets as $asset) {
$row = array();
$row[] = $asset->asset_tag;
$row[] = $asset->name;
$row[] = $asset->serial;
if ($asset->assigned_to > 0) {
$user = User::find($asset->assigned_to);
$row[] = $user->fullName();
} else {
$row[] = ''; // Empty string if unassigned
}
if (($asset->assigned_to > 0) && ($asset->assigneduser->location_id > 0)) {
$location = Location::find($asset->assigneduser->location_id);
if ($location->city) {
$row[] = '"'.$location->city . ', ' . $location->state.'"';
} elseif ($location->name) {
$row[] = $location->name;
} else {
$row[] = '';
}
} else {
$row[] = ''; // Empty string if location is not set
}
$depreciation = $asset->depreciate();
$row[] = $asset->purchase_date;
$row[] = '"'.number_format($asset->purchase_cost).'"';
$row[] = '"'.number_format($depreciation).'"';
$row[] = '"'.number_format($asset->purchase_cost - $depreciation).'"';
$rows[] = implode($row, ',');
}
// spit out a csv
$csv = implode($rows, "\n");
$response = Response::make($csv, 200);
$response->header('Content-Type', 'text/csv');
$response->header('Content-disposition', 'attachment;filename=report.csv');
return $response;
}
/**
* Asset create.
*
* @param null $model_id
*
* @return View
*/
public function getCreate()
public function getCreate($model_id = null)
{
// Grab the dropdown list of models
$model_list = array('' => '') + Model::orderBy('name', 'asc')->lists('name', 'id');
//$model_list = array('' => 'Select a Model') + Model::orderBy('name', 'asc')->lists('name'.' '. 'modelno', 'id');
$model_list = array('' => 'Select a Model') + DB::table('models')
->select(DB::raw('concat(name," / ",modelno) as name, id'))->orderBy('name', 'asc')
->orderBy('modelno', 'asc')
->lists('name', 'id');
$supplier_list = array('' => '') + Supplier::orderBy('name', 'asc')->lists('name', 'id');
$assigned_to = array('' => 'Select a User') + DB::table('users')->select(DB::raw('concat (first_name," ",last_name) as full_name, id'))->whereNull('deleted_at')->lists('full_name', 'id');
$location_list = array('' => '') + Location::lists('name', 'id');
$location_list = array('' => '') + Location::orderBy('name', 'asc')->lists('name', 'id');
// Grab the dropdown list of status
$statuslabel_list = array('' => Lang::get('general.pending')) + array('0' => Lang::get('general.ready_to_deploy')) + Statuslabel::orderBy('name', 'asc')->lists('name', 'id');
return View::make('backend/hardware/edit')->with('supplier_list',$supplier_list)->with('model_list',$model_list)->with('statuslabel_list',$statuslabel_list)->with('assigned_to',$assigned_to)->with('location_list',$location_list)->with('asset',new Asset);
$view = View::make('backend/hardware/edit');
$view->with('supplier_list',$supplier_list);
$view->with('model_list',$model_list);
$view->with('statuslabel_list',$statuslabel_list);
$view->with('assigned_to',$assigned_to);
$view->with('location_list',$location_list);
$view->with('asset',new Asset);
if (!is_null($model_id)) {
$selected_model = Model::find($model_id);
$view->with('selected_model',$selected_model);
}
return $view;
}
/**
* Asset create form processing.
*
@@ -208,7 +157,7 @@ class AssetsController extends AdminController
}
if (e(Input::get('assigned_to')) == '') {
$asset->assigned_to = 0;
$asset->assigned_to = NULL;
} else {
$asset->assigned_to = e(Input::get('assigned_to'));
}
@@ -225,6 +174,12 @@ class AssetsController extends AdminController
$asset->requestable = e(Input::get('requestable'));
}
if (e(Input::get('rtd_location_id')) == '') {
$asset->rtd_location_id = NULL;
} else {
$asset->rtd_location_id = e(Input::get('rtd_location_id'));
}
// Save the asset data
$asset->name = e(Input::get('name'));
$asset->serial = e(Input::get('serial'));
@@ -232,7 +187,6 @@ class AssetsController extends AdminController
$asset->order_number = e(Input::get('order_number'));
$asset->notes = e(Input::get('notes'));
$asset->asset_tag = e(Input::get('asset_tag'));
$asset->rtd_location_id = e(Input::get('rtd_location_id'));
$asset->user_id = Sentry::getId();
$asset->archived = '0';
@@ -241,6 +195,17 @@ class AssetsController extends AdminController
// Was the asset created?
if($asset->save()) {
if (Input::get('assigned_to')!='') {
$logaction = new Actionlog();
$logaction->asset_id = $asset->id;
$logaction->checkedout_to = $asset->assigned_to;
$logaction->asset_type = 'hardware';
$logaction->user_id = Sentry::getUser()->id;
$logaction->note = e(Input::get('note'));
$log = $logaction->logaction('checkout');
}
// Redirect to the asset listing page
return Redirect::to("hardware")->with('success', Lang::get('admin/hardware/message.create.success'));
}
@@ -270,7 +235,7 @@ class AssetsController extends AdminController
// Grab the dropdown list of models
$model_list = array('' => '') + Model::orderBy('name', 'asc')->lists('name', 'id');
$supplier_list = array('' => '') + Supplier::orderBy('name', 'asc')->lists('name', 'id');
$location_list = array('' => '') + Location::lists('name', 'id');
$location_list = array('' => '') + Location::orderBy('name', 'asc')->lists('name', 'id');
// Grab the dropdown list of status
$statuslabel_list = array('' => Lang::get('general.pending')) + array('0' => Lang::get('general.ready_to_deploy')) + Statuslabel::orderBy('name', 'asc')->lists('name', 'id');
@@ -341,6 +306,12 @@ class AssetsController extends AdminController
$asset->requestable = e(Input::get('requestable'));
}
if (e(Input::get('rtd_location_id')) == '') {
$asset->rtd_location_id = 0;
} else {
$asset->rtd_location_id = e(Input::get('rtd_location_id'));
}
// Update the asset data
$asset->name = e(Input::get('name'));
$asset->serial = e(Input::get('serial'));
@@ -349,7 +320,6 @@ class AssetsController extends AdminController
$asset->asset_tag = e(Input::get('asset_tag'));
$asset->notes = e(Input::get('notes'));
$asset->physical = '1';
$asset->rtd_location_id = e(Input::get('rtd_location_id'));
// Was the asset updated?
if($asset->save()) {
@@ -409,7 +379,7 @@ class AssetsController extends AdminController
}
// Get the dropdown of users and then pass it to the checkout view
$users_list = array('' => 'Select a User') + DB::table('users')->select(DB::raw('concat(first_name," ",last_name) as full_name, id'))->whereNull('deleted_at')->orderBy('last_name', 'asc')->orderBy('first_name', 'asc')->lists('full_name', 'id');
$users_list = array('' => 'Select a User') + DB::table('users')->select(DB::raw('concat(last_name,", ",first_name) as full_name, id'))->whereNull('deleted_at')->orderBy('last_name', 'asc')->orderBy('first_name', 'asc')->lists('full_name', 'id');
return View::make('backend/hardware/checkout', compact('asset'))->with('users_list',$users_list);
@@ -23,7 +23,7 @@ class CategoriesController extends AdminController
public function getIndex()
{
// Grab all the categories
$categories = Category::orderBy('created_at', 'DESC')->paginate(Setting::getSettings()->per_page);
$categories = Category::orderBy('created_at', 'DESC')->get();
// Show the page
return View::make('backend/categories/index', compact('categories'));
@@ -23,7 +23,7 @@ class DepreciationsController extends AdminController
public function getIndex()
{
// Grab all the depreciations
$depreciations = Depreciation::orderBy('created_at', 'DESC')->paginate(Setting::getSettings()->per_page);
$depreciations = Depreciation::orderBy('created_at', 'DESC')->get();
// Show the page
return View::make('backend/depreciations/index', compact('depreciations'));
+279 -73
View File
@@ -15,9 +15,10 @@ use Depreciation;
use Setting;
use Sentry;
use Str;
use Supplier;
use Validator;
use View;
use Response;
class LicensesController extends AdminController
{
@@ -33,7 +34,7 @@ class LicensesController extends AdminController
public function getIndex()
{
// Grab all the licenses
$licenses = License::orderBy('created_at', 'DESC')->paginate(Setting::getSettings()->per_page);
$licenses = License::orderBy('created_at', 'DESC')->get();
// Show the page
return View::make('backend/licenses/index', compact('licenses'));
@@ -49,10 +50,16 @@ class LicensesController extends AdminController
{
// Show the page
$license_options = array('0' => 'Top Level') + License::lists('name', 'id');
// Show the page
$depreciation_list = array('0' => Lang::get('admin/licenses/form.no_depreciation')) + Depreciation::lists('name', 'id');
return View::make('backend/licenses/edit')->with('license_options',$license_options)->with('depreciation_list',$depreciation_list)->with('license',new License);
$supplier_list = array('' => 'Select Supplier') + Supplier::orderBy('name', 'asc')->lists('name', 'id');
$maintained_list = array('' => 'Maintained', '1' => 'Yes', '0' => 'No');
return View::make('backend/licenses/edit')
->with('license_options',$license_options)
->with('depreciation_list',$depreciation_list)
->with('supplier_list',$supplier_list)
->with('maintained_list',$maintained_list)
->with('license',new License);
}
@@ -74,31 +81,55 @@ class LicensesController extends AdminController
// attempt validation
if ($license->validate($new)) {
if ( e(Input::get('purchase_cost')) == '') {
if ( e(Input::get('purchase_cost')) == '') {
$license->purchase_cost = NULL;
} else {
$license->purchase_cost = ParseFloat(e(Input::get('purchase_cost')));
//$license->purchase_cost = e(Input::get('purchase_cost'));
}
if ( e(Input::get('supplier_id')) == '') {
$license->supplier_id = NULL;
} else {
$license->supplier_id = e(Input::get('supplier_id'));
}
if ( e(Input::get('maintained')) == '') {
$license->maintained = 0;
} else {
$license->maintained = e(Input::get('maintained'));
}
if ( e(Input::get('purchase_order')) == '') {
$license->purchase_order = '';
} else {
$license->purchase_order = e(Input::get('purchase_order'));
}
// Save the license data
$license->name = e(Input::get('name'));
$license->serial = e(Input::get('serial'));
$license->license_email = e(Input::get('license_email'));
$license->license_name = e(Input::get('license_name'));
$license->notes = e(Input::get('notes'));
$license->order_number = e(Input::get('order_number'));
$license->seats = e(Input::get('seats'));
$license->purchase_date = e(Input::get('purchase_date'));
//$license->purchase_cost = e(Input::get('purchase_cost'));
$license->depreciation_id = e(Input::get('depreciation_id'));
//$license->asset_id = e(Input::get('asset_id'));
$license->user_id = Sentry::getId();
$license->name = e(Input::get('name'));
$license->serial = e(Input::get('serial'));
$license->license_email = e(Input::get('license_email'));
$license->license_name = e(Input::get('license_name'));
$license->notes = e(Input::get('notes'));
$license->order_number = e(Input::get('order_number'));
$license->seats = e(Input::get('seats'));
$license->purchase_date = e(Input::get('purchase_date'));
$license->purchase_order = e(Input::get('purchase_order'));
//$license->purchase_cost = e(Input::get('purchase_cost'));
$license->depreciation_id = e(Input::get('depreciation_id'));
$license->expiration_date = e(Input::get('expiration_date'));
//$license->asset_id = e(Input::get('asset_id'));
$license->user_id = Sentry::getId();
if (($license->purchase_date == "") || ($license->purchase_date == "0000-00-00")) {
$license->purchase_date = NULL;
}
if (($license->expiration_date == "") || ($license->expiration_date == "0000-00-00")) {
$license->expiration_date = NULL;
}
if (($license->purchase_cost == "") || ($license->purchase_cost == "0.00")) {
$license->purchase_cost = NULL;
}
@@ -109,10 +140,10 @@ class LicensesController extends AdminController
// Save the license seat data
for ($x=0; $x<$license->seats; $x++) {
$license_seat = new LicenseSeat();
$license_seat->license_id = $insertedId;
$license_seat->user_id = Sentry::getId();
$license_seat->assigned_to = 0;
$license_seat->notes = NULL;
$license_seat->license_id = $insertedId;
$license_seat->user_id = Sentry::getId();
$license_seat->assigned_to = 0;
$license_seat->notes = NULL;
$license_seat->save();
}
@@ -156,7 +187,13 @@ class LicensesController extends AdminController
// Show the page
$license_options = array('' => 'Top Level') + DB::table('assets')->where('id', '!=', $licenseId)->lists('name', 'id');
$depreciation_list = array('0' => Lang::get('admin/licenses/form.no_depreciation')) + Depreciation::lists('name', 'id');
return View::make('backend/licenses/edit', compact('license'))->with('license_options',$license_options)->with('depreciation_list',$depreciation_list);
$supplier_list = array('' => 'Select Supplier') + Supplier::orderBy('name', 'asc')->lists('name', 'id');
$maintained_list = array('' => 'Maintained', '1' => 'Yes', '0' => 'No');
return View::make('backend/licenses/edit', compact('license'))
->with('license_options',$license_options)
->with('depreciation_list',$depreciation_list)
->with('supplier_list',$supplier_list)
->with('maintained_list',$maintained_list);
}
@@ -184,14 +221,21 @@ class LicensesController extends AdminController
if ($license->validate($new)) {
// Update the license data
$license->name = e(Input::get('name'));
$license->serial = e(Input::get('serial'));
$license->license_email = e(Input::get('license_email'));
$license->license_name = e(Input::get('license_name'));
$license->notes = e(Input::get('notes'));
$license->order_number = e(Input::get('order_number'));
$license->depreciation_id = e(Input::get('depreciation_id'));
$license->name = e(Input::get('name'));
$license->serial = e(Input::get('serial'));
$license->license_email = e(Input::get('license_email'));
$license->license_name = e(Input::get('license_name'));
$license->notes = e(Input::get('notes'));
$license->order_number = e(Input::get('order_number'));
$license->depreciation_id = e(Input::get('depreciation_id'));
$license->purchase_order = e(Input::get('purchase_order'));
$license->maintained = e(Input::get('maintained'));
if ( e(Input::get('supplier_id')) == '') {
$license->supplier_id = NULL;
} else {
$license->supplier_id = e(Input::get('supplier_id'));
}
// Update the asset data
if ( e(Input::get('purchase_date')) == '') {
@@ -200,6 +244,19 @@ class LicensesController extends AdminController
$license->purchase_date = e(Input::get('purchase_date'));
}
if ( e(Input::get('expiration_date')) == '') {
$license->expiration_date = NULL;
} else {
$license->expiration_date = e(Input::get('expiration_date'));
}
// Update the asset data
if ( e(Input::get('termination_date')) == '') {
$license->termination_date = NULL;
} else {
$license->termination_date = e(Input::get('termination_date'));
}
if ( e(Input::get('purchase_cost')) == '') {
$license->purchase_cost = NULL;
} else {
@@ -207,6 +264,18 @@ class LicensesController extends AdminController
//$license->purchase_cost = e(Input::get('purchase_cost'));
}
if ( e(Input::get('maintained')) == '') {
$license->maintained = 0;
} else {
$license->maintained = e(Input::get('maintained'));
}
if ( e(Input::get('purchase_order')) == '') {
$license->purchase_order = '';
} else {
$license->purchase_order = e(Input::get('purchase_order'));
}
//Are we changing the total number of seats?
if( $license->seats != e(Input::get('seats'))) {
@@ -245,10 +314,10 @@ class LicensesController extends AdminController
for ($i=1; $i <= $difference; $i++) {
//Create a seat for this license
$license_seat = new LicenseSeat();
$license_seat->license_id = $license->id;
$license_seat->user_id = Sentry::getId();
$license_seat->assigned_to = 0;
$license_seat->notes = NULL;
$license_seat->license_id = $license->id;
$license_seat->user_id = Sentry::getId();
$license_seat->assigned_to = 0;
$license_seat->notes = NULL;
$license_seat->save();
}
@@ -260,7 +329,7 @@ class LicensesController extends AdminController
$logaction->note = abs($difference)." seats";
$log = $logaction->logaction('add seats');
}
$license->seats = e(Input::get('seats'));
$license->seats = e(Input::get('seats'));
}
// Was the asset created?
@@ -326,30 +395,32 @@ class LicensesController extends AdminController
}
// Get the dropdown of users and then pass it to the checkout view
$users_list = array('' => 'Select a User') + DB::table('users')->select(DB::raw('concat (first_name," ",last_name) as full_name, id'))->whereNull('deleted_at')->lists('full_name', 'id');
$users_list = array('' => 'Select a User') + DB::table('users')->select(DB::raw('concat(last_name,", ",first_name) as full_name, id'))->whereNull('deleted_at')->orderBy('last_name', 'asc')->orderBy('first_name', 'asc')->lists('full_name', 'id');
// Left join to get a list of assets and some other helpful info
$asset = DB::table('assets')
->leftJoin('users', 'users.id', '=', 'assets.assigned_to')
->select('assets.id', 'name', 'first_name', 'last_name','asset_tag',
DB::raw('concat (first_name," ",last_name) as full_name, assets.id as id'))
->whereNull('assets.deleted_at')
->get();
$asset_array = json_decode(json_encode($asset), true);
$asset_element[''] = 'Please select an asset';
// Left join to get a list of assets and some other helpful info
$asset = DB::table('assets')
->leftJoin('users', 'users.id', '=', 'assets.assigned_to')
->leftJoin('models', 'assets.model_id', '=', 'models.id')
->select('assets.id', 'assets.name', 'first_name', 'last_name','asset_tag',
DB::raw('concat (first_name," ",last_name) as full_name, assets.id as id, models.name as modelname'))
->whereNull('assets.deleted_at')
->get();
// Build a list out of the data results
for ($x=0; $x<count($asset_array); $x++) {
$asset_array = json_decode(json_encode($asset), true);
$asset_element[''] = 'Please select an asset';
if ($asset_array[$x]['full_name']!='') {
$full_name = ' ('.$asset_array[$x]['full_name'].')';
} else {
$full_name = ' (Unassigned)';
}
$asset_element[$asset_array[$x]['id']] = $asset_array[$x]['asset_tag'].' - '.$asset_array[$x]['name'].$full_name;
// Build a list out of the data results
for ($x=0; $x<count($asset_array); $x++) {
}
if ($asset_array[$x]['full_name']!='') {
$full_name = ' ('.$asset_array[$x]['full_name'].') '.$asset_array[$x]['modelname'];
} else {
$full_name = ' (Unassigned) '.$asset_array[$x]['modelname'];
}
$asset_element[$asset_array[$x]['id']] = $asset_array[$x]['asset_tag'].' - '.$asset_array[$x]['name'].$full_name;
}
return View::make('backend/licenses/checkout', compact('licenseseat'))->with('users_list',$users_list)->with('asset_list',$asset_element);
@@ -371,8 +442,7 @@ class LicensesController extends AdminController
$rules = array(
'note' => 'alpha_space',
// 'asset_id' => 'required_without:assigned_to:min:1',
'asset_id' => 'required',
'asset_id' => 'required_without:assigned_to',
);
// Create a new validator instance from our validation rules
@@ -384,25 +454,25 @@ class LicensesController extends AdminController
return Redirect::back()->withInput()->withErrors($validator);
}
if ($assigned_to!='') {
if ($assigned_to!='') {
// Check if the user exists
if (is_null($is_assigned_to = User::find($assigned_to))) {
// Redirect to the asset management page with error
return Redirect::to('admin/licenses')->with('error', Lang::get('admin/licenses/message.user_does_not_exist'));
}
if (is_null($is_assigned_to = User::find($assigned_to))) {
// Redirect to the asset management page with error
return Redirect::to('admin/licenses')->with('error', Lang::get('admin/licenses/message.user_does_not_exist'));
}
}
if ($asset_id!='') {
if (is_null($is_asset_id = Asset::find($asset_id))) {
// Redirect to the asset management page with error
return Redirect::to('admin/licenses')->with('error', Lang::get('admin/licenses/message.asset_does_not_exist'));
}
if (is_null($is_asset_id = Asset::find($asset_id))) {
// Redirect to the asset management page with error
return Redirect::to('admin/licenses')->with('error', Lang::get('admin/licenses/message.asset_does_not_exist'));
}
if (($is_asset_id->assigned_to!=$assigned_to) && ($assigned_to!='')) {
//echo 'asset assigned to: '.$is_asset_id->assigned_to.'<br>license assigned to: '.$assigned_to;
return Redirect::to('admin/licenses')->with('error', Lang::get('admin/licenses/message.owner_doesnt_match_asset'));
}
if (($is_asset_id->assigned_to!=$assigned_to) && ($assigned_to!='')) {
//echo 'asset assigned to: '.$is_asset_id->assigned_to.'<br>license assigned to: '.$assigned_to;
return Redirect::to('admin/licenses')->with('error', Lang::get('admin/licenses/message.owner_doesnt_match_asset'));
}
}
@@ -414,7 +484,11 @@ class LicensesController extends AdminController
return Redirect::to('admin/licenses')->with('error', Lang::get('admin/licenses/message.not_found'));
}
$licenseseat->asset_id = e(Input::get('asset_id'));
if ( e(Input::get('asset_id')) == '') {
$licenseseat->asset_id = NULL;
} else {
$licenseseat->asset_id = e(Input::get('asset_id'));
}
// Update the asset data
if ( e(Input::get('assigned_to')) == '') {
@@ -500,8 +574,8 @@ class LicensesController extends AdminController
$logaction->checkedout_to = $licenseseat->assigned_to;
// Update the asset data
$licenseseat->assigned_to = '0';
$licenseseat->asset_id = NULL;
$licenseseat->assigned_to = '0';
$licenseseat->asset_id = NULL;
// Was the asset updated?
if($licenseseat->save()) {
@@ -551,7 +625,7 @@ class LicensesController extends AdminController
// Show the page
$license_options = array('0' => 'Top Level') + License::lists('name', 'id');
$maintained_list = array('' => 'Maintained', '1' => 'Yes', '0' => 'No');
//clone the orig
$license = clone $license_to_clone;
$license->id = null;
@@ -559,7 +633,139 @@ class LicensesController extends AdminController
// Show the page
$depreciation_list = array('0' => Lang::get('admin/licenses/form.no_depreciation')) + Depreciation::lists('name', 'id');
return View::make('backend/licenses/edit')->with('license_options',$license_options)->with('depreciation_list',$depreciation_list)->with('license',$license);
$supplier_list = array('' => 'Select Supplier') + Supplier::orderBy('name', 'asc')->lists('name', 'id');
return View::make('backend/licenses/edit')->with('license_options',$license_options)->with('depreciation_list',$depreciation_list)->with('supplier_list',$supplier_list)->with('license',$license)->with('maintained_list',$maintained_list);
}
/**
* Upload the file to the server
*
* @param int $assetId
* @return View
**/
public function postUpload($licenseId = null)
{
$license = License::find($licenseId);
// the license is valid
$destinationPath = app_path().'/private_uploads';
if (isset($license->id)) {
if (Input::hasFile('licensefile')) {
foreach(Input::file('licensefile') as $file) {
$rules = array(
'licensefile' => 'required|mimes:png,gif,jpg,jpeg,doc,docx,pdf,txt|max:2000'
);
$validator = Validator::make(array('licensefile'=> $file), $rules);
if($validator->passes()){
$extension = $file->getClientOriginalExtension();
$filename = 'license-'.$license->id.'-'.str_random(8);
$filename .= '-'.Str::slug($file->getClientOriginalName()).'.'.$extension;
$upload_success = $file->move($destinationPath, $filename);
//Log the deletion of seats to the log
$logaction = new Actionlog();
$logaction->asset_id = $license->id;
$logaction->asset_type = 'software';
$logaction->user_id = Sentry::getUser()->id;
$logaction->note = e(Input::get('notes'));
$logaction->checkedout_to = NULL;
$logaction->created_at = date("Y-m-d h:i:s");
$logaction->filename = $filename;
$log = $logaction->logaction('uploaded');
} else {
return Redirect::back()->with('error', Lang::get('admin/licenses/message.upload.invalidfiles'));
}
}
if ($upload_success) {
return Redirect::back()->with('success', Lang::get('admin/licenses/message.upload.success'));
} else {
return Redirect::back()->with('success', Lang::get('admin/licenses/message.upload.error'));
}
} else {
return Redirect::back()->with('success', Lang::get('admin/licenses/message.upload.nofiles'));
}
} else {
// Prepare the error message
$error = Lang::get('admin/licenses/message.does_not_exist', compact('id'));
// Redirect to the licence management page
return Redirect::route('licenses')->with('error', $error);
}
}
/**
* Delete the associated file
*
* @param int $assetId
* @return View
**/
public function getDeleteFile($licenseId = null, $fileId = null)
{
$license = License::find($licenseId);
$destinationPath = app_path().'/private_uploads';
// the license is valid
if (isset($license->id)) {
$log = Actionlog::find($fileId);
$full_filename = $destinationPath.'/'.$log->filename;
if (file_exists($full_filename)) {
unlink($destinationPath.'/'.$log->filename);
}
$log->delete();
return Redirect::back()->with('success', Lang::get('admin/licenses/message.deletefile.success'));
} else {
// Prepare the error message
$error = Lang::get('admin/licenses/message.does_not_exist', compact('id'));
// Redirect to the licence management page
return Redirect::route('licenses')->with('error', $error);
}
}
/**
* Display/download the uploaded file
*
* @param int $assetId
* @return View
**/
public function displayFile($licenseId = null, $fileId = null)
{
$license = License::find($licenseId);
// the license is valid
if (isset($license->id)) {
$log = Actionlog::find($fileId);
$file = $log->get_src();
return Response::download($file);
} else {
// Prepare the error message
$error = Lang::get('admin/licenses/message.does_not_exist', compact('id'));
// Redirect to the licence management page
return Redirect::route('licenses')->with('error', $error);
}
}
}
@@ -23,7 +23,7 @@ class LocationsController extends AdminController
public function getIndex()
{
// Grab all the locations
$locations = Location::orderBy('created_at', 'DESC')->paginate(Setting::getSettings()->per_page);
$locations = Location::orderBy('created_at', 'DESC')->get();
// Show the page
return View::make('backend/locations/index', compact('locations'));
@@ -21,7 +21,7 @@ class ManufacturersController extends AdminController
public function getIndex()
{
// Grab all the manufacturers
$manufacturers = Manufacturer::orderBy('created_at', 'DESC')->paginate(Setting::getSettings()->per_page);
$manufacturers = Manufacturer::orderBy('created_at', 'DESC')->get();
// Show the page
return View::make('backend/manufacturers/index', compact('manufacturers'));
+27 -1
View File
@@ -1,6 +1,7 @@
<?php namespace Controllers\Admin;
use AdminController;
use Image;
use Input;
use Lang;
use Model;
@@ -24,7 +25,7 @@ class ModelsController extends AdminController
public function getIndex()
{
// Grab all the models
$models = Model::orderBy('created_at', 'DESC')->paginate(Setting::getSettings()->per_page);
$models = Model::orderBy('created_at', 'DESC')->get();
// Show the page
return View::make('backend/models/index', compact('models'));
@@ -88,6 +89,16 @@ class ModelsController extends AdminController
$model->user_id = Sentry::getId();
//$model->eol = e(Input::get('eol'));
if (Input::file('image')) {
$image = Input::file('image');
$file_name = str_random(25).".".$image->getClientOriginalExtension();
$path = public_path('uploads/models/'.$file_name);
Image::make($image->getRealPath())->resize(300, null, function ($constraint) {
$constraint->aspectRatio();
$constraint->upsize();
})->save($path);
$model->image = $file_name;
}
// Was it created?
if($model->save()) {
@@ -172,6 +183,21 @@ class ModelsController extends AdminController
$model->modelno = e(Input::get('modelno'));
$model->manufacturer_id = e(Input::get('manufacturer_id'));
$model->category_id = e(Input::get('category_id'));
if (Input::file('image')) {
$image = Input::file('image');
$file_name = str_random(25).".".$image->getClientOriginalExtension();
$path = public_path('uploads/models/'.$file_name);
Image::make($image->getRealPath())->resize(300, null, function ($constraint) {
$constraint->aspectRatio();
$constraint->upsize();
})->save($path);
$model->image = $file_name;
}
if (Input::get('image_delete') == 1 && Input::file('image') == "") {
$model->image = NULL;
}
// Was it created?
if($model->save()) {
+458
View File
@@ -0,0 +1,458 @@
<?php namespace Controllers\Admin;
use AdminController;
use Input;
use Lang;
use License;
use Asset;
use User;
use View;
use Location;
use Redirect;
use Response;
class ReportsController extends AdminController
{
/**
* Show Asset Report
*
* @return View
*/
public function getAssetsReport()
{
// Grab all the assets
$assets = Asset::with('model','assigneduser.userLoc','assetstatus','defaultLoc','assetlog','supplier','model.manufacturer')->orderBy('created_at', 'DESC')->get();
return View::make('backend/reports/asset', compact('assets'));
}
/**
* Export Asset Report as CSV
*
* @return file download
*/
public function exportAssetReport()
{
// Grab all the assets
$assets = Asset::orderBy('created_at', 'DESC')->get();
$rows = array();
// Create the header row
$header = array(
Lang::get('admin/hardware/table.asset_tag'),
Lang::get('admin/hardware/form.manufacturer'),
Lang::get('admin/hardware/form.model'),
Lang::get('general.model_no'),
Lang::get('general.name'),
Lang::get('admin/hardware/table.serial'),
Lang::get('admin/hardware/table.purchase_date'),
Lang::get('admin/hardware/table.purchase_cost'),
Lang::get('admin/hardware/form.order'),
Lang::get('admin/hardware/form.supplier'),
Lang::get('admin/hardware/table.checkoutto'),
Lang::get('admin/hardware/table.location'),
Lang::get('general.status')
);
$header = array_map('trim', $header);
$rows[] = implode($header, ',');
// Create a row per asset
foreach ($assets as $asset) {
$row = array();
$row[] = $asset->asset_tag;
if ($asset->model->manufacturer) {
$row[] = $asset->model->manufacturer->name;
} else {
$row[] = '';
}
$row[] = '"'.$asset->model->name.'"';
$row[] = '"'.$asset->model->modelno.'"';
$row[] = $asset->name;
$row[] = $asset->serial;
$row[] = $asset->purchase_date;
$row[] = '"'.number_format($asset->purchase_cost).'"';
if ($asset->order_number) {
$row[] = $asset->order_number;
} else {
$row[] = '';
}
if ($asset->supplier_id) {
$row[] = $asset->supplier->name;
} else {
$row[] = '';
}
if ($asset->assigned_to > 0) {
$user = User::find($asset->assigned_to);
$row[] = $user->fullName();
} else {
$row[] = ''; // Empty string if unassigned
}
if (($asset->assigned_to > 0) && ($asset->assigneduser->location_id > 0)) {
$location = Location::find($asset->assigneduser->location_id);
if ($location->name) {
$row[] = $location->name;
} else {
$row[] = '';
}
} elseif ($asset->rtd_location_id) {
$location = Location::find($asset->rtd_location_id);
if ($location->name) {
$row[] = $location->name;
} else {
$row[] = '';
}
} else {
$row[] = ''; // Empty string if location is not set
}
if (($asset->status_id == '0') && ($asset->assigned_to == '0')) {
$row[] = Lang::get('general.ready_to_deploy');
} elseif (($asset->status_id == '') && ($asset->assigned_to == '0')) {
$row[] = Lang::get('general.pending');
} elseif ($asset->assetstatus) {
$row[] = $asset->assetstatus->name;
} else {
$row[] = '';
}
$rows[] = implode($row, ',');
}
// spit out a csv
$csv = implode($rows, "\n");
$response = Response::make($csv, 200);
$response->header('Content-Type', 'text/csv');
$response->header('Content-disposition', 'attachment;filename=report.csv');
return $response;
}
/**
* Show Depreciation Report for Assets
*
* @return View
*/
public function getDeprecationReport()
{
// Grab all the assets
$assets = Asset::with('model','assigneduser','assetstatus','defaultLoc','assetlog')->orderBy('created_at', 'DESC')->get();
return View::make('backend/reports/depreciation', compact('assets'));
}
/**
* Export Depreciation Report as CSV
*
* @return file download
*/
public function exportDeprecationReport()
{
// @todo - It may be worthwhile creating a separate controller for reporting
// Grab all the assets
$assets = Asset::orderBy('created_at', 'DESC')->get();
$rows = array();
// Create the header row
$header = array(
Lang::get('admin/hardware/table.asset_tag'),
Lang::get('admin/hardware/table.title'),
Lang::get('admin/hardware/table.serial'),
Lang::get('admin/hardware/table.checkoutto'),
Lang::get('admin/hardware/table.location'),
Lang::get('admin/hardware/table.purchase_date'),
Lang::get('admin/hardware/table.purchase_cost'),
Lang::get('admin/hardware/table.book_value'),
Lang::get('admin/hardware/table.diff')
);
$header = array_map('trim', $header);
$rows[] = implode($header, ',');
// Create a row per asset
foreach ($assets as $asset) {
$row = array();
$row[] = $asset->asset_tag;
$row[] = $asset->name;
$row[] = $asset->serial;
if ($asset->assigned_to > 0) {
$user = User::find($asset->assigned_to);
$row[] = $user->fullName();
} else {
$row[] = ''; // Empty string if unassigned
}
if (($asset->assigned_to > 0) && ($asset->assigneduser->location_id > 0)) {
$location = Location::find($asset->assigneduser->location_id);
if ($location->city) {
$row[] = '"'.$location->city . ', ' . $location->state.'"';
} elseif ($location->name) {
$row[] = $location->name;
} else {
$row[] = '';
}
} else {
$row[] = ''; // Empty string if location is not set
}
$depreciation = $asset->depreciate();
$row[] = $asset->purchase_date;
$row[] = '"'.number_format($asset->purchase_cost).'"';
$row[] = '"'.number_format($depreciation).'"';
$row[] = '"'.number_format($asset->purchase_cost - $depreciation).'"';
$rows[] = implode($row, ',');
}
// spit out a csv
$csv = implode($rows, "\n");
$response = Response::make($csv, 200);
$response->header('Content-Type', 'text/csv');
$response->header('Content-disposition', 'attachment;filename=report.csv');
return $response;
}
/**
* Show Report for Licenses
*
* @return View
*/
public function getLicenseReport()
{
$licenses = License::orderBy('created_at', 'DESC')->get();
return View::make('backend/reports/licenses', compact('licenses'));
}
/**
* Export License Report as CSV
*
* @return file download
*/
public function exportLicenseReport()
{
$licenses = License::orderBy('created_at', 'DESC')->get();
$rows = array();
$header = array(
Lang::get('admin/licenses/table.title'),
Lang::get('admin/licenses/table.serial'),
Lang::get('admin/licenses/form.seats'),
Lang::get('admin/licenses/form.remaining_seats'),
Lang::get('admin/licenses/form.expiration'),
Lang::get('admin/licenses/form.date'),
Lang::get('admin/licenses/form.cost')
);
$header = array_map('trim', $header);
$rows[] = implode($header, ', ');
// Row per license
foreach ($licenses as $license) {
$row = array();
$row[] = $license->name;
$row[] = $license->serial;
$row[] = $license->seats;
$row[] = $license->remaincount();
$row[] = $license->expiration_date;
$row[] = $license->purchase_date;
$row[] = '"'.number_format($license->purchase_cost).'"';
$rows[] = implode($row, ',');
}
$csv = implode($rows, "\n");
$response = Response::make($csv, 200);
$response->header('Content-Type', 'text/csv');
$response->header('Content-disposition', 'attachment;filename=report.csv');
return $response;
}
public function getCustomReport()
{
return View::make('backend/reports/custom');
}
public function postCustom()
{
$assets = Asset::orderBy('created_at', 'DESC')->get();
$rows = array();
$header = array();
if (e(Input::get('asset_name')) == '1')
{
$header[] = 'Asset Name';
}
if (e(Input::get('asset_tag')) == '1')
{
$header[] = 'Asset Tag';
}
if (e(Input::get('manufacturer')) == '1')
{
$header[] = 'Manufacturer';
}
if (e(Input::get('model')) == '1')
{
$header[] = 'Model';
$header[] = 'Model Number';
}
if (e(Input::get('serial')) == '1')
{
$header[] = 'Serial';
}
if (e(Input::get('purchase_date')) == '1')
{
$header[] = 'Purchase Date';
}
if ((e(Input::get('purchase_cost')) == '1') && (e(Input::get('depreciation')) == '0'))
{
$header[] = 'Purchase Cost';
}
if (e(Input::get('order')) == '1')
{
$header[] = 'Order Number';
}
if (e(Input::get('supplier')) == '1')
{
$header[] = 'Supplier';
}
if (e(Input::get('location')) == '1')
{
$header[] = 'Location';
}
if (e(Input::get('assigned_to')) == '1')
{
$header[] = 'Assigned To';
}
if (e(Input::get('status')) == '1')
{
$header[] = 'Status';
}
if (e(Input::get('warranty')) == '1')
{
$header[] = 'Warranty';
$header[] = 'Warranty Expires';
}
if (e(Input::get('depreciation')) == '1')
{
$header[] = 'Purchase Cost';
$header[] = 'Value';
$header[] = 'Diff';
}
$header = array_map('trim', $header);
$rows[] = implode($header, ',');
foreach($assets as $asset) {
$row = array();
if (e(Input::get('asset_name')) == '1') {
$row[] = $asset->name;
}
if (e(Input::get('asset_tag')) == '1') {
$row[] = $asset->asset_tag;
}
if (e(Input::get('manufacturer')) == '1') {
if ($asset->model->manufacturer) {
$row[] = $asset->model->manufacturer->name;
} else {
$row[] = '';
}
}
if (e(Input::get('model')) == '1') {
$row[] = '"'.$asset->model->name.'"';
$row[] = '"'.$asset->model->modelno.'"';
}
if (e(Input::get('serial')) == '1') {
$row[] = $asset->serial;
}
if (e(Input::get('purchase_date')) == '1') {
$row[] = $asset->purchase_date;
}
if ((e(Input::get('purchase_cost')) == '1') && (e(Input::get('depreciation')) == '0')) {
$row[] = '"'.number_format($asset->purchase_cost).'"';
}
if (e(Input::get('order')) == '1') {
if ($asset->order_number) {
$row[] = $asset->order_number;
} else {
$row[] = '';
}
}
if (e(Input::get('supplier')) == '1') {
if ($asset->supplier_id) {
$row[] = $asset->supplier->name;
} else {
$row[] = '';
}
}
if (e(Input::get('location')) == '1') {
if (($asset->assigned_to > 0) && ($asset->assigneduser->location_id > 0)) {
$location = Location::find($asset->assigneduser->location_id);
if ($location->name) {
$row[] = $location->name;
} else {
$row[] = '';
}
} elseif ($asset->rtd_location_id) {
$location = Location::find($asset->rtd_location_id);
if ($location->name) {
$row[] = $location->name;
} else {
$row[] = '';
}
} else {
$row[] = ''; // Empty string if location is not set
}
}
if (e(Input::get('assigned_to')) == '1') {
if ($asset->assigned_to > 0) {
$user = User::find($asset->assigned_to);
$row[] = $user->fullName();
} else {
$row[] = ''; // Empty string if unassigned
}
}
if (e(Input::get('status')) == '1') {
if (($asset->status_id == '0') && ($asset->assigned_to == '0')) {
$row[] = Lang::get('general.ready_to_deploy');
} elseif (($asset->status_id == '') && ($asset->assigned_to == '0')) {
$row[] = Lang::get('general.pending');
} elseif ($asset->assetstatus) {
$row[] = $asset->assetstatus->name;
} else {
$row[] = '';
}
}
if (e(Input::get('warranty')) == '1') {
if ($asset->warranty_months) {
$row[] = $asset->warranty_months;
$row[] = $asset->warrantee_expires();
} else {
$row[] = '';
$row[] = '';
}
}
if (e(Input::get('depreciation')) == '1') {
$depreciation = $asset->depreciate();
$row[] = '"'.number_format($asset->purchase_cost).'"';
$row[] = '"'.number_format($depreciation).'"';
$row[] = '"'.number_format($asset->purchase_cost - $depreciation).'"';
}
$rows[] = implode($row, ',');
}
// spit out a csv
if (array_filter($rows)) {
$csv = implode($rows, "\n");
$response = Response::make($csv, 200);
$response->header('Content-Type', 'text/csv');
$response->header('Content-disposition', 'attachment;filename=report.csv');
return $response;
} else {
return Redirect::to("reports/custom")->with('error', Lang::get('admin/reports/message.error'));
}
}
}
@@ -82,9 +82,13 @@ class SettingsController extends AdminController
$setting->id = '1';
$setting->site_name = e(Input::get('site_name'));
$setting->display_asset_name = e(Input::get('display_asset_name', '0'));
$setting->display_checkout_date = e(Input::get('display_checkout_date', '0'));
$setting->per_page = e(Input::get('per_page'));
$setting->qr_code = e(Input::get('qr_code', '0'));
$setting->display_eol = e(Input::get('display_eol', '0'));
$setting->qr_text = e(Input::get('qr_text'));
$setting->auto_increment_prefix = e(Input::get('auto_increment_prefix'));
$setting->auto_increment_assets = e(Input::get('auto_increment_assets', '0'));
// Was the asset updated?
if($setting->save()) {
@@ -23,7 +23,7 @@ class StatuslabelsController extends AdminController
public function getIndex()
{
// Grab all the statuslabels
$statuslabels = Statuslabel::orderBy('created_at', 'DESC')->paginate(10);
$statuslabels = Statuslabel::orderBy('created_at', 'DESC')->get();
// Show the page
return View::make('backend/statuslabels/index', compact('statuslabels'));
+54 -28
View File
@@ -1,6 +1,7 @@
<?php namespace Controllers\Admin;
use AdminController;
use Image;
use Input;
use Lang;
use Supplier;
@@ -21,7 +22,7 @@ class SuppliersController extends AdminController
public function getIndex()
{
// Grab all the suppliers
$suppliers = Supplier::orderBy('created_at', 'DESC')->paginate(Setting::getSettings()->per_page);
$suppliers = Supplier::orderBy('created_at', 'DESC')->get();
// Show the page
return View::make('backend/suppliers/index', compact('suppliers'));
@@ -57,20 +58,31 @@ class SuppliersController extends AdminController
if ($supplier->validate($new)) {
// Save the location data
$supplier->name = e(Input::get('name'));
$supplier->address = e(Input::get('address'));
$supplier->address2 = e(Input::get('address2'));
$supplier->city = e(Input::get('city'));
$supplier->state = e(Input::get('state'));
$supplier->country = e(Input::get('country'));
$supplier->zip = e(Input::get('zip'));
$supplier->contact = e(Input::get('contact'));
$supplier->phone = e(Input::get('phone'));
$supplier->fax = e(Input::get('fax'));
$supplier->email = e(Input::get('email'));
$supplier->notes = e(Input::get('notes'));
$supplier->url = $supplier->addhttp(e(Input::get('url')));
$supplier->user_id = Sentry::getId();
$supplier->name = e(Input::get('name'));
$supplier->address = e(Input::get('address'));
$supplier->address2 = e(Input::get('address2'));
$supplier->city = e(Input::get('city'));
$supplier->state = e(Input::get('state'));
$supplier->country = e(Input::get('country'));
$supplier->zip = e(Input::get('zip'));
$supplier->contact = e(Input::get('contact'));
$supplier->phone = e(Input::get('phone'));
$supplier->fax = e(Input::get('fax'));
$supplier->email = e(Input::get('email'));
$supplier->notes = e(Input::get('notes'));
$supplier->url = $supplier->addhttp(e(Input::get('url')));
$supplier->user_id = Sentry::getId();
if (Input::file('image')) {
$image = Input::file('image');
$file_name = str_random(25).".".$image->getClientOriginalExtension();
$path = public_path('uploads/suppliers/'.$file_name);
Image::make($image->getRealPath())->resize(300, null, function ($constraint) {
$constraint->aspectRatio();
$constraint->upsize();
})->save($path);
$supplier->image = $file_name;
}
// Was it created?
if($supplier->save()) {
@@ -134,20 +146,34 @@ class SuppliersController extends AdminController
else {
// Save the data
$supplier->name = e(Input::get('name'));
$supplier->address = e(Input::get('address'));
$supplier->address2 = e(Input::get('address2'));
$supplier->city = e(Input::get('city'));
$supplier->state = e(Input::get('state'));
$supplier->country = e(Input::get('country'));
$supplier->zip = e(Input::get('zip'));
$supplier->contact = e(Input::get('contact'));
$supplier->phone = e(Input::get('phone'));
$supplier->fax = e(Input::get('fax'));
$supplier->email = e(Input::get('email'));
$supplier->url = $supplier->addhttp(e(Input::get('url')));
$supplier->notes = e(Input::get('notes'));
$supplier->name = e(Input::get('name'));
$supplier->address = e(Input::get('address'));
$supplier->address2 = e(Input::get('address2'));
$supplier->city = e(Input::get('city'));
$supplier->state = e(Input::get('state'));
$supplier->country = e(Input::get('country'));
$supplier->zip = e(Input::get('zip'));
$supplier->contact = e(Input::get('contact'));
$supplier->phone = e(Input::get('phone'));
$supplier->fax = e(Input::get('fax'));
$supplier->email = e(Input::get('email'));
$supplier->url = $supplier->addhttp(e(Input::get('url')));
$supplier->notes = e(Input::get('notes'));
if (Input::file('image')) {
$image = Input::file('image');
$file_name = str_random(25).".".$image->getClientOriginalExtension();
$path = public_path('uploads/suppliers/'.$file_name);
Image::make($image->getRealPath())->resize(300, null, function ($constraint) {
$constraint->aspectRatio();
$constraint->upsize();
})->save($path);
$supplier->image = $file_name;
}
if (Input::get('image_delete') == 1 && Input::file('image') == "") {
$supplier->image = NULL;
}
// Was it created?
if($supplier->save()) {
@@ -9,12 +9,13 @@ class SetNullvaluesForUser extends Migration
*
* @return void
*/
public function up()
{
//
DB::statement('ALTER TABLE users MODIFY phone varchar(20) null');
DB::statement('ALTER TABLE users MODIFY jobtitle varchar(50) null');
$prefix = DB::getTablePrefix();
DB::statement('ALTER TABLE '.$prefix.'users MODIFY phone varchar(20) null');
DB::statement('ALTER TABLE '.$prefix.'users MODIFY jobtitle varchar(50) null');
}
@@ -11,7 +11,7 @@ class EditAddedOnAssetLogsTable extends Migration
*/
public function up()
{
DB::statement('ALTER TABLE asset_logs MODIFY added_on timestamp null');
DB::statement('ALTER TABLE ' . DB::getTablePrefix() . 'asset_logs MODIFY added_on timestamp null');
}
@@ -11,8 +11,9 @@ class EditLocationIdAssetLogsTable extends Migration
*/
public function up()
{
DB::statement('ALTER TABLE asset_logs MODIFY location_id int(11) null');
DB::statement('ALTER TABLE asset_logs MODIFY added_on timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP');
$prefix=DB::getTablePrefix();
DB::statement('ALTER TABLE '.$prefix.'asset_logs MODIFY location_id int(11) null');
DB::statement('ALTER TABLE '.$prefix.'asset_logs MODIFY added_on timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP');
}
@@ -11,7 +11,7 @@ class AlterWarrantyColumnOnAssets extends Migration
*/
public function up()
{
DB::statement('ALTER TABLE assets CHANGE warrantee_months warranty_months int (3)');
DB::statement('ALTER TABLE ' . DB::getTablePrefix() . 'assets CHANGE warrantee_months warranty_months int (3)');
}
/**
@@ -11,11 +11,11 @@ class AddNullableToLicensesTable extends Migration
*/
public function up()
{
//
DB::statement('ALTER TABLE licenses MODIFY order_number varchar(50) null');
DB::statement('ALTER TABLE licenses MODIFY notes varchar(255) null');
DB::statement('ALTER TABLE licenses MODIFY license_name varchar(100) null');
DB::statement('ALTER TABLE licenses MODIFY license_email varchar(120) null');
$prefix = DB::getTablePrefix();
DB::statement('ALTER TABLE ' . $prefix . 'licenses MODIFY order_number varchar(50) null');
DB::statement('ALTER TABLE ' . $prefix . 'licenses MODIFY notes varchar(255) null');
DB::statement('ALTER TABLE ' . $prefix . 'licenses MODIFY license_name varchar(100) null');
DB::statement('ALTER TABLE ' . $prefix . 'licenses MODIFY license_email varchar(120) null');
}
/**
@@ -13,7 +13,7 @@ class AlterDefaultLicenseDepreciationId extends Migration
public function up()
{
//
DB::statement('ALTER TABLE licenses MODIFY column depreciation_id tinyint(1) NOT NULL DEFAULT "0"');
DB::statement('ALTER TABLE '.DB::getTablePrefix().'licenses MODIFY column depreciation_id tinyint(1) NOT NULL DEFAULT "0"');
}
@@ -13,7 +13,7 @@ class AlterDefaultValuesLicenses extends Migration
public function up()
{
//
DB::statement('ALTER TABLE license_seats MODIFY column notes text NULL');
DB::statement('ALTER TABLE ' . DB::getTablePrefix() . 'license_seats MODIFY column notes text NULL');
}
/**
@@ -13,7 +13,7 @@ class MakeAssetLogCheckedoutToNullable extends Migration
public function up()
{
//
DB::statement('ALTER TABLE asset_logs MODIFY column checkedout_to int(11) NULL');
DB::statement('ALTER TABLE ' . DB::getTablePrefix() . 'asset_logs MODIFY column checkedout_to int(11) NULL');
}
/**
@@ -13,7 +13,7 @@ class MakeAssetLogPurchasedateToNullable extends Migration
public function up()
{
//
DB::statement('ALTER TABLE licenses MODIFY column purchase_date date NULL');
DB::statement('ALTER TABLE ' . DB::getTablePrefix() . 'licenses MODIFY column purchase_date date NULL');
}
/**
@@ -13,7 +13,7 @@ class MakeAssetIdInLogsNullable extends Migration {
public function up()
{
//
DB::statement('ALTER TABLE asset_logs MODIFY column asset_id int NULL');
DB::statement('ALTER TABLE ' . DB::getTablePrefix() . 'asset_logs MODIFY column asset_id int NULL');
}
/**
@@ -12,21 +12,22 @@ class Alpha042Release extends Migration {
*/
public function up()
{
$prefix = DB::getTablePrefix();
Schema::table('assets', function(Blueprint $table)
{
//
});
DB::statement('UPDATE assets SET status_id="0" where status_id is null');
DB::statement('UPDATE assets SET purchase_cost=0 where purchase_cost is null');
DB::statement('UPDATE models SET eol=0 where eol is null');
DB::statement('UPDATE users SET location_id=0 where location_id is null');
DB::statement('UPDATE assets SET asset_tag=" " WHERE asset_tag is null');
DB::statement('UPDATE locations SET state=" " where state is null');
DB::statement('UPDATE models SET manufacturer_id="0" where manufacturer_id is null');
DB::statement('UPDATE models SET category_id="0" where category_id is null');
DB::statement('UPDATE '.$prefix.'assets SET status_id="0" where status_id is null');
DB::statement('UPDATE '.$prefix.'assets SET purchase_cost=0 where purchase_cost is null');
DB::statement('UPDATE '.$prefix.'models SET eol=0 where eol is null');
DB::statement('UPDATE '.$prefix.'users SET location_id=0 where location_id is null');
DB::statement('UPDATE '.$prefix.'assets SET asset_tag=" " WHERE asset_tag is null');
DB::statement('UPDATE '.$prefix.'locations SET state=" " where state is null');
DB::statement('UPDATE '.$prefix.'models SET manufacturer_id="0" where manufacturer_id is null');
DB::statement('UPDATE '.$prefix.'models SET category_id="0" where category_id is null');
DB::statement('ALTER TABLE assets '
DB::statement('ALTER TABLE '.$prefix.'assets '
. 'MODIFY COLUMN name VARCHAR(255) NULL , '
. 'MODIFY COLUMN asset_tag VARCHAR(255) NOT NULL , '
. 'MODIFY COLUMN purchase_cost DECIMAL(13,4) NOT NULL DEFAULT "0" , '
@@ -36,26 +37,26 @@ class Alpha042Release extends Migration {
. 'MODIFY COLUMN archived TINYINT(1) NOT NULL DEFAULT "0" , '
. 'MODIFY COLUMN depreciate TINYINT(1) NOT NULL DEFAULT "0"');
DB::statement('ALTER TABLE licenses '
DB::statement('ALTER TABLE '.$prefix.'licenses '
. 'MODIFY COLUMN purchase_cost DECIMAL(13,4) NULL , '
. 'MODIFY COLUMN depreciate TINYINT(1) NULL DEFAULT "0"');
DB::statement('ALTER TABLE license_seats '
DB::statement('ALTER TABLE '.$prefix.'license_seats '
. 'MODIFY COLUMN assigned_to INT(11) NULL ');
DB::statement('ALTER TABLE locations '
DB::statement('ALTER TABLE '.$prefix.'locations '
. 'MODIFY COLUMN state VARCHAR(255) NOT NULL ,'
. 'MODIFY COLUMN address2 VARCHAR(255) NULL ,'
. 'MODIFY COLUMN zip VARCHAR(10) NULL ');
DB::statement('ALTER TABLE models '
DB::statement('ALTER TABLE '.$prefix.'models '
. 'MODIFY COLUMN modelno VARCHAR(255) NULL , '
. 'MODIFY COLUMN manufacturer_id INT(11) NOT NULL , '
. 'MODIFY COLUMN category_id INT(11) NOT NULL , '
. 'MODIFY COLUMN depreciation_id INT(11) NOT NULL DEFAULT "0" , '
. 'MODIFY COLUMN eol INT(11) NULL DEFAULT "0"');
DB::statement('ALTER TABLE users '
DB::statement('ALTER TABLE '.$prefix.'users '
. 'MODIFY COLUMN first_name VARCHAR(255) NOT NULL , '
. 'MODIFY COLUMN last_name VARCHAR(255) NOT NULL , '
. 'MODIFY COLUMN location_id INT(11) NOT NULL');
@@ -13,7 +13,7 @@ class MakeLocationIdNullable extends Migration {
public function up()
{
//
DB::statement('ALTER TABLE users MODIFY column location_id int NULL');
DB::statement('ALTER TABLE ' . DB::getTablePrefix() . 'users MODIFY column location_id int NULL');
}
/**
@@ -0,0 +1,28 @@
<?php
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class AlterSupplierStateTo32 extends Migration {
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
DB::statement('ALTER TABLE ' . DB::getTablePrefix() . 'suppliers MODIFY column state varchar(32) null');
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
DB::statement('ALTER TABLE ' . DB::getTablePrefix() . 'suppliers MODIFY column state varchar(2) null');
}
}
@@ -0,0 +1,33 @@
<?php
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class AddDisplayCheckoutDate extends Migration {
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::table('settings', function ($table) {
$table->integer('display_checkout_date')->nullable()->default(NULL);
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::table('settings', function ($table) {
$table->dropColumn('display_checkout_date');
});
}
}
@@ -0,0 +1,37 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
class AddAvatarFieldToUsersTable extends Migration {
/**
* Make changes to the table.
*
* @return void
*/
public function up()
{
Schema::table('users', function(Blueprint $table) {
$table->string('avatar')->nullable();
});
}
/**
* Revert the changes to the table.
*
* @return void
*/
public function down()
{
Schema::table('users', function(Blueprint $table) {
$table->dropColumn('avatar');
});
}
}
@@ -0,0 +1,37 @@
<?php
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class AddImageFieldToModelsTable extends Migration {
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::table('models', function(Blueprint $table) {
$table->string('image')->nullable();
});
}
/**
* Revert the changes to the table.
*
* @return void
*/
public function down()
{
Schema::table('models', function(Blueprint $table) {
$table->dropColumn('image');
});
}
}
@@ -0,0 +1,33 @@
<?php
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class AddEolDisplayToSettings extends Migration {
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::table('settings', function ($table) {
$table->integer('display_eol')->nullable()->default(NULL);
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::table('settings', function ($table) {
$table->dropColumn('display_eol');
});
}
}
@@ -0,0 +1,37 @@
<?php
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class UpdateGroupFieldForReporting extends Migration {
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
//
$prefix = DB::getTablePrefix();
Schema::table('groups', function(Blueprint $table)
{
//
});
DB::statement('UPDATE '.$prefix.'groups SET permissions="{\"admin\":1,\"users\":1,\"reports\":1}" where id=1');
DB::statement('UPDATE '.$prefix.'groups SET permissions="{\"users\":1,\"reports\":1}" where id=2');
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
//
}
}
@@ -0,0 +1,36 @@
<?php
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class AddFieldsToLicenses extends Migration {
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::table('licenses', function ($table) {
$table->integer('supplier_id')->nullable()->default(NULL);
$table->date('expiration_date')->nullable();
$table->string('purchase_order');
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::table('licenses', function ($table) {
$table->dropColumn('supplier_id');
$table->dropColumn('expiration_date');
$table->dropColumn('purchase_order');
});
}
}
@@ -0,0 +1,37 @@
<?php
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class AddImageToSupplier extends Migration {
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::table('suppliers', function(Blueprint $table) {
$table->string('image')->nullable();
});
}
/**
* Revert the changes to the table.
*
* @return void
*/
public function down()
{
Schema::table('suppliers', function(Blueprint $table) {
$table->dropColumn('image');
});
}
}
@@ -0,0 +1,39 @@
<?php
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class AddUsernameToUser extends Migration {
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
//
Schema::table('users', function(Blueprint $table) {
$table->string('username')->nullable()->default(NULL);
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
//
Schema::table('users', function(Blueprint $table) {
$table->dropColumn('username');
});
}
}
@@ -0,0 +1,38 @@
<?php
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class AddAutoToSettings extends Migration {
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
//
Schema::table('settings', function(Blueprint $table) {
$table->integer('auto_increment_assets')->default(0);
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
//
Schema::table('settings', function(Blueprint $table) {
$table->dropColumn('auto_increment_assets');
});
}
}
@@ -0,0 +1,38 @@
<?php
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class AddPrefixToSettings extends Migration {
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
//
Schema::table('settings', function(Blueprint $table) {
$table->string('auto_increment_prefix')->default(0);
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
//
Schema::table('settings', function(Blueprint $table) {
$table->dropColumn('auto_increment_prefix');
});
}
}
@@ -0,0 +1,32 @@
<?php
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class ChangeLicenceType extends Migration {
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
//
$prefix = DB::getTablePrefix();
DB::statement('ALTER TABLE '.$prefix.'licenses MODIFY COLUMN serial TEXT');
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
//
$prefix = DB::getTablePrefix();
DB::statement('ALTER TABLE '.$prefix.'licenses MODIFY COLUMN serial VARCHAR(255)');
}
}
@@ -0,0 +1,34 @@
<?php
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class AddFieldsMaintainedTermToLicenses extends Migration {
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::table('licenses', function ($table) {
$table->date('termination_date')->nullable();
$table->boolean('maintained');
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::table('licenses', function ($table) {
$table->dropColumn('termination_date');
$table->dropColumn('maintained');
});
}
}
@@ -0,0 +1,30 @@
<?php
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class IncreaseUserFieldLengths extends Migration {
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
//
DB::statement('ALTER TABLE ' . DB::getTablePrefix() . 'users MODIFY column jobtitle varchar(100) null');
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
//
DB::statement('ALTER TABLE ' . DB::getTablePrefix() . 'users MODIFY column jobtitle varchar(50) null');
}
}
@@ -0,0 +1,38 @@
<?php
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class AddSoftDeletedToLog extends Migration {
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
DB::statement('ALTER TABLE ' . DB::getTablePrefix() . 'asset_logs MODIFY column asset_type varchar(100) null');
DB::statement('ALTER TABLE ' . DB::getTablePrefix() . 'asset_logs MODIFY column added_on timestamp default "0000-00-00 00:00:00"');
Schema::table('asset_logs', function ($table) {
$table->renameColumn('added_on', 'created_at');
$table->timestamp('updated_at');
$table->softDeletes();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::table('asset_logs', function ($table) {
$table->renameColumn('created_at', 'added_on');
$table->dropColumn('updated_at');
$table->dropSoftDeletes();
});
}
}
+4 -4
View File
@@ -17,7 +17,7 @@ class ActionlogSeeder extends Seeder
'asset_id' => '1',
'checkedout_to' => '2',
'location_id' => '3',
'added_on' => $date->modify('-10 day'),
'created_at' => $date->modify('-10 day'),
'asset_type' => 'hardware',
'note' => NULL,
'filename' => NULL,
@@ -30,7 +30,7 @@ class ActionlogSeeder extends Seeder
'asset_id' => '1',
'checkedout_to' => '2',
'location_id' => NULL,
'added_on' => $date->modify('-10 day'),
'created_at' => $date->modify('-10 day'),
'asset_type' => 'hardware',
'note' => NULL,
'filename' => NULL,
@@ -43,7 +43,7 @@ class ActionlogSeeder extends Seeder
'asset_id' => '1',
'checkedout_to' => '1',
'location_id' => '3',
'added_on' => $date->modify('-10 day'),
'created_at' => $date->modify('-10 day'),
'asset_type' => 'software',
'note' => NULL,
'filename' => NULL,
@@ -56,7 +56,7 @@ class ActionlogSeeder extends Seeder
'asset_id' => '1',
'checkedout_to' => '2',
'location_id' => NULL,
'added_on' => $date->modify('-10 day'),
'created_at' => $date->modify('-10 day'),
'asset_type' => 'software',
'note' => NULL,
'filename' => NULL,
+4
View File
@@ -16,6 +16,8 @@ class LicensesSeeder extends Seeder
'serial' => 'ZOMG-WtF-BBQ-SRSLY',
'purchase_date' => '2013-10-02',
'purchase_cost' => '2435.99',
'purchase_order' => '1',
'maintained' => '0',
'order_number' => '987698576946',
'created_at' => $date->modify('-10 day'),
'updated_at' => $date->modify('-3 day'),
@@ -35,6 +37,8 @@ class LicensesSeeder extends Seeder
'serial' => '98049890394-340485934',
'purchase_date' => '2013-10-02',
'purchase_cost' => '2435.99',
'purchase_order' => '1',
'maintained' => '1',
'order_number' => '987698576946',
'created_at' => $date->modify('-10 day'),
'updated_at' => $date->modify('-3 day'),
+29 -1
View File
@@ -85,10 +85,38 @@ Route::filter('admin-auth', function () {
// Check if the user has access to the admin pages
if ( ! Sentry::getUser()->hasAccess('admin')) {
// Show the insufficient permissions page
return Redirect::route('profile');
return Redirect::route('view-assets');
}
});
/*
|--------------------------------------------------------------------------
| Reporting authentication filter.
|--------------------------------------------------------------------------
|
| This filter does the same as the 'auth' filter but it checks if the user
| has 'reports' privileges.
|
*/
Route::filter('reporting-auth', function () {
// Check if the user is logged in
if ( ! Sentry::check()) {
// Store the current uri in the session
Session::put('loginRedirect', Request::url());
// Redirect to the login page
return Redirect::route('signin');
}
// Check if the user has access to the admin pages
if ( ! Sentry::getUser()->hasAccess('reports')) {
// Show the insufficient permissions page
return Redirect::route('profile')->with("error","You do not have permission to view this page.");
}
});
/*
|--------------------------------------------------------------------------
+11
View File
@@ -0,0 +1,11 @@
<?php
return array(
'about_asset_categories' => 'crwdns634:0crwdne634:0',
'about_categories' => 'crwdns635:0crwdne635:0',
'asset_categories' => 'crwdns636:0crwdne636:0',
'category_name' => 'crwdns637:0crwdne637:0',
'create' => 'crwdns638:0crwdne638:0',
'update' => 'crwdns639:0crwdne639:0',
);
+24
View File
@@ -0,0 +1,24 @@
<?php
return array(
'does_not_exist' => 'crwdns625:0crwdne625:0',
'assoc_users' => 'crwdns626:0crwdne626:0',
'create' => array(
'error' => 'crwdns627:0crwdne627:0',
'success' => 'crwdns628:0crwdne628:0'
),
'update' => array(
'error' => 'crwdns629:0crwdne629:0',
'success' => 'crwdns630:0crwdne630:0'
),
'delete' => array(
'confirm' => 'crwdns631:0crwdne631:0',
'error' => 'crwdns632:0crwdne632:0',
'success' => 'crwdns633:0crwdne633:0'
)
);
+9
View File
@@ -0,0 +1,9 @@
<?php
return array(
'id' => 'crwdns622:0crwdne622:0',
'parent' => 'crwdns623:0crwdne623:0',
'title' => 'crwdns624:0crwdne624:0',
);
+12
View File
@@ -0,0 +1,12 @@
<?php
return array(
'about_asset_depreciations' => 'crwdns819:0crwdne819:0',
'about_depreciations' => 'crwdns820:0crwdne820:0',
'asset_depreciations' => 'crwdns821:0crwdne821:0',
'create_depreciation' => 'crwdns822:0crwdne822:0',
'depreciation_name' => 'crwdns823:0crwdne823:0',
'number_of_months' => 'crwdns824:0crwdne824:0',
'update_depreciation' => 'crwdns825:0crwdne825:0',
);
+25
View File
@@ -0,0 +1,25 @@
<?php
return array(
'does_not_exist' => 'crwdns810:0crwdne810:0',
'assoc_users' => 'crwdns811:0crwdne811:0',
'create' => array(
'error' => 'crwdns812:0crwdne812:0',
'success' => 'crwdns813:0crwdne813:0'
),
'update' => array(
'error' => 'crwdns814:0crwdne814:0',
'success' => 'crwdns815:0crwdne815:0'
),
'delete' => array(
'confirm' => 'crwdns816:0crwdne816:0',
'error' => 'crwdns817:0crwdne817:0',
'success' => 'crwdns818:0crwdne818:0'
)
);
+10
View File
@@ -0,0 +1,10 @@
<?php
return array(
'id' => 'crwdns806:0crwdne806:0',
'months' => 'crwdns807:0crwdne807:0',
'term' => 'crwdns808:0crwdne808:0',
'title' => 'crwdns809:0crwdne809:0',
);
+22
View File
@@ -0,0 +1,22 @@
<?php
return array(
'group_exists' => 'crwdns880:0crwdne880:0',
'group_not_found' => 'crwdns881:0crwdne881:0',
'group_name_required' => 'crwdns882:0crwdne882:0',
'success' => array(
'create' => 'crwdns883:0crwdne883:0',
'update' => 'crwdns884:0crwdne884:0',
'delete' => 'crwdns885:0crwdne885:0',
),
'delete' => array(
'confirm' => 'crwdns886:0crwdne886:0',
'create' => 'crwdns887:0crwdne887:0',
'update' => 'crwdns888:0crwdne888:0',
'delete' => 'crwdns889:0crwdne889:0',
),
);
+9
View File
@@ -0,0 +1,9 @@
<?php
return array(
'id' => 'crwdns877:0crwdne877:0',
'name' => 'crwdns878:0crwdne878:0',
'users' => 'crwdns879:0crwdne879:0',
);
+13
View File
@@ -0,0 +1,13 @@
<?php
return array(
'group_management' => 'crwdns870:0crwdne870:0',
'create_group' => 'crwdns871:0crwdne871:0',
'edit_group' => 'crwdns872:0crwdne872:0',
'group_name' => 'crwdns873:0crwdne873:0',
'group_admin' => 'crwdns874:0crwdne874:0',
'allow' => 'crwdns875:0crwdne875:0',
'deny' => 'crwdns876:0crwdne876:0',
);
+34
View File
@@ -0,0 +1,34 @@
<?php
return array(
'checkedout_to' => 'crwdns695:0crwdne695:0',
'checkout_to' => 'crwdns696:0crwdne696:0',
'cost' => 'crwdns697:0crwdne697:0',
'create' => 'crwdns698:0crwdne698:0',
'date' => 'crwdns699:0crwdne699:0',
'depreciates_on' => 'crwdns700:0crwdne700:0',
'depreciation' => 'crwdns701:0crwdne701:0',
'default_location' => 'crwdns702:0crwdne702:0',
'eol_date' => 'crwdns703:0crwdne703:0',
'eol_rate' => 'crwdns704:0crwdne704:0',
'expires' => 'crwdns705:0crwdne705:0',
'fully_depreciated' => 'crwdns706:0crwdne706:0',
'help_checkout' => 'crwdns707:0crwdne707:0',
'manufacturer' => 'crwdns708:0crwdne708:0',
'model' => 'crwdns709:0crwdne709:0',
'months' => 'crwdns710:0crwdne710:0',
'name' => 'crwdns711:0crwdne711:0',
'notes' => 'crwdns712:0crwdne712:0',
'order' => 'crwdns713:0crwdne713:0',
'qr' => 'crwdns714:0crwdne714:0',
'requestable' => 'crwdns715:0crwdne715:0',
'serial' => 'crwdns716:0crwdne716:0',
'status' => 'crwdns717:0crwdne717:0',
'supplier' => 'crwdns718:0crwdne718:0',
'tag' => 'crwdns719:0crwdne719:0',
'update' => 'crwdns720:0crwdne720:0',
'warranty' => 'crwdns721:0crwdne721:0',
'years' => 'crwdns722:0crwdne722:0',
)
;
+11
View File
@@ -0,0 +1,11 @@
<?php
return array(
'asset' => 'crwdns755:0crwdne755:0',
'checkin' => 'crwdns756:0crwdne756:0',
'checkout' => 'crwdns757:0crwdne757:0',
'clone' => 'crwdns758:0crwdne758:0',
'edit' => 'crwdns759:0crwdne759:0',
'pending' => 'crwdns760:0crwdne760:0',
'view' => 'crwdns761:0crwdne761:0',
);
+37
View File
@@ -0,0 +1,37 @@
<?php
return array(
'undeployable' => 'crwdns739:0crwdne739:0',
'does_not_exist' => 'crwdns740:0crwdne740:0',
'assoc_users' => 'crwdns741:0crwdne741:0',
'create' => array(
'error' => 'crwdns742:0crwdne742:0',
'success' => 'crwdns743:0crwdne743:0'
),
'update' => array(
'error' => 'crwdns744:0crwdne744:0',
'success' => 'crwdns745:0crwdne745:0'
),
'delete' => array(
'confirm' => 'crwdns746:0crwdne746:0',
'error' => 'crwdns747:0crwdne747:0',
'success' => 'crwdns748:0crwdne748:0'
),
'checkout' => array(
'error' => 'crwdns749:0crwdne749:0',
'success' => 'crwdns750:0crwdne750:0',
'user_does_not_exist' => 'crwdns751:0crwdne751:0'
),
'checkin' => array(
'error' => 'crwdns752:0crwdne752:0',
'success' => 'crwdns753:0crwdne753:0',
'user_does_not_exist' => 'crwdns754:0crwdne754:0'
)
);
+22
View File
@@ -0,0 +1,22 @@
<?php
return array(
'asset_tag' => 'crwdns723:0crwdne723:0',
'asset_model' => 'crwdns724:0crwdne724:0',
'book_value' => 'crwdns725:0crwdne725:0',
'change' => 'crwdns726:0crwdne726:0',
'checkout_date' => 'crwdns727:0crwdne727:0',
'checkoutto' => 'crwdns728:0crwdne728:0',
'diff' => 'crwdns729:0crwdne729:0',
'dl_csv' => 'crwdns730:0crwdne730:0',
'eol' => 'crwdns731:0crwdne731:0',
'id' => 'crwdns732:0crwdne732:0',
'location' => 'crwdns733:0crwdne733:0',
'purchase_cost' => 'crwdns734:0crwdne734:0',
'purchase_date' => 'crwdns735:0crwdne735:0',
'serial' => 'crwdns736:0crwdne736:0',
'status' => 'crwdns737:0crwdne737:0',
'title' => 'crwdns738:0crwdne738:0',
);
+24
View File
@@ -0,0 +1,24 @@
<?php
return array(
'asset' => 'crwdns904:0crwdne904:0',
'checkin' => 'crwdns905:0crwdne905:0',
'checkin' => 'crwdns905:0crwdne905:0',
'cost' => 'crwdns907:0crwdne907:0',
'cost' => 'crwdns907:0crwdne907:0',
'create' => 'crwdns909:0crwdne909:0',
'date' => 'crwdns910:0crwdne910:0',
'date' => 'crwdns910:0crwdne910:0',
'depreciation' => 'crwdns912:0crwdne912:0',
'name' => 'crwdns913:0crwdne913:0',
'no_depreciation' => 'crwdns914:0crwdne914:0',
'notes' => 'crwdns915:0crwdne915:0',
'order' => 'crwdns916:0crwdne916:0',
'seats' => 'crwdns917:0crwdne917:0',
'serial' => 'crwdns918:0crwdne918:0',
'to_email' => 'crwdns919:0crwdne919:0',
'to_name' => 'crwdns920:0crwdne920:0',
'update' => 'crwdns921:0crwdne921:0',
'checkout_help' => 'crwdns922:0crwdne922:0'
);
+19
View File
@@ -0,0 +1,19 @@
<?php
return array(
'checkin' => 'crwdns950:0crwdne950:0',
'checkout_history' => 'crwdns951:0crwdne951:0',
'checkout' => 'crwdns952:0crwdne952:0',
'edit' => 'crwdns953:0crwdne953:0',
'clone' => 'crwdns954:0crwdne954:0',
'history_for' => 'crwdns955:0crwdne955:0',
'in_out' => 'crwdns956:0crwdne956:0',
'info' => 'crwdns957:0crwdne957:0',
'license_seats' => 'crwdns958:0crwdne958:0',
'seat' => 'crwdns959:0crwdne959:0',
'seats' => 'crwdns960:0crwdne960:0',
'software_licenses' => 'crwdns961:0crwdne961:0',
'user' => 'crwdns962:0crwdne962:0',
'view' => 'crwdns963:0crwdne963:0',
);
+38
View File
@@ -0,0 +1,38 @@
<?php
return array(
'does_not_exist' => 'crwdns934:0crwdne934:0',
'user_does_not_exist' => 'crwdns935:0crwdne935:0',
'asset_does_not_exist' => 'crwdns936:0crwdne936:0',
'owner_doesnt_match_asset' => 'crwdns937:0crwdne937:0',
'assoc_users' => 'crwdns938:0crwdne938:0',
'create' => array(
'error' => 'crwdns939:0crwdne939:0',
'success' => 'crwdns940:0crwdne940:0'
),
'update' => array(
'error' => 'crwdns941:0crwdne941:0',
'success' => 'crwdns942:0crwdne942:0'
),
'delete' => array(
'confirm' => 'crwdns943:0crwdne943:0',
'error' => 'crwdns944:0crwdne944:0',
'success' => 'crwdns945:0crwdne945:0'
),
'checkout' => array(
'error' => 'crwdns946:0crwdne946:0',
'success' => 'crwdns947:0crwdne947:0'
),
'checkin' => array(
'error' => 'crwdns948:0crwdne948:0',
'success' => 'crwdns949:0crwdne949:0'
),
);
+17
View File
@@ -0,0 +1,17 @@
<?php
return array(
'assigned_to' => 'crwdns923:0crwdne923:0',
'checkout' => 'crwdns924:0crwdne924:0',
'id' => 'crwdns925:0crwdne925:0',
'license_email' => 'crwdns926:0crwdne926:0',
'license_name' => 'crwdns927:0crwdne927:0',
'purchase_date' => 'crwdns928:0crwdne928:0',
'purchased' => 'crwdns929:0crwdne929:0',
'seats' => 'crwdns930:0crwdne930:0',
'hardware' => 'crwdns931:0crwdne931:0',
'serial' => 'crwdns932:0crwdne932:0',
'title' => 'crwdns933:0crwdne933:0',
);
+25
View File
@@ -0,0 +1,25 @@
<?php
return array(
'does_not_exist' => 'crwdns650:0crwdne650:0',
'assoc_users' => 'crwdns651:0crwdne651:0',
'create' => array(
'error' => 'crwdns652:0crwdne652:0',
'success' => 'crwdns653:0crwdne653:0'
),
'update' => array(
'error' => 'crwdns654:0crwdne654:0',
'success' => 'crwdns655:0crwdne655:0'
),
'delete' => array(
'confirm' => 'crwdns656:0crwdne656:0',
'error' => 'crwdns657:0crwdne657:0',
'success' => 'crwdns658:0crwdne658:0'
)
);
+15
View File
@@ -0,0 +1,15 @@
<?php
return array(
'id' => 'crwdns640:0crwdne640:0',
'city' => 'crwdns641:0crwdne641:0',
'state' => 'crwdns642:0crwdne642:0',
'country' => 'crwdns643:0crwdne643:0',
'create' => 'crwdns644:0crwdne644:0',
'update' => 'crwdns645:0crwdne645:0',
'name' => 'crwdns646:0crwdne646:0',
'address' => 'crwdns647:0crwdne647:0',
'zip' => 'crwdns648:0crwdne648:0',
'locations' => 'crwdns649:0crwdne649:0',
);
+24
View File
@@ -0,0 +1,24 @@
<?php
return array(
'does_not_exist' => 'crwdns895:0crwdne895:0',
'assoc_users' => 'crwdns896:0crwdne896:0',
'create' => array(
'error' => 'crwdns897:0crwdne897:0',
'success' => 'crwdns898:0crwdne898:0'
),
'update' => array(
'error' => 'crwdns899:0crwdne899:0',
'success' => 'crwdns900:0crwdne900:0'
),
'delete' => array(
'confirm' => 'crwdns901:0crwdne901:0',
'error' => 'crwdns902:0crwdne902:0',
'success' => 'crwdns903:0crwdne903:0'
)
);
+11
View File
@@ -0,0 +1,11 @@
<?php
return array(
'asset_manufacturers' => 'crwdns890:0crwdne890:0',
'create' => 'crwdns891:0crwdne891:0',
'id' => 'crwdns892:0crwdne892:0',
'name' => 'crwdns893:0crwdne893:0',
'update' => 'crwdns894:0crwdne894:0',
);
+25
View File
@@ -0,0 +1,25 @@
<?php
return array(
'does_not_exist' => 'crwdns671:0crwdne671:0',
'assoc_users' => 'crwdns672:0crwdne672:0',
'create' => array(
'error' => 'crwdns673:0crwdne673:0',
'success' => 'crwdns674:0crwdne674:0'
),
'update' => array(
'error' => 'crwdns675:0crwdne675:0',
'success' => 'crwdns676:0crwdne676:0'
),
'delete' => array(
'confirm' => 'crwdns677:0crwdne677:0',
'error' => 'crwdns678:0crwdne678:0',
'success' => 'crwdns679:0crwdne679:0'
)
);
+17
View File
@@ -0,0 +1,17 @@
<?php
return array(
'create' => 'crwdns659:0crwdne659:0',
'created_at' => 'crwdns660:0crwdne660:0',
'eol' => 'crwdns661:0crwdne661:0',
'modelnumber' => 'crwdns662:0crwdne662:0',
'name' => 'crwdns663:0crwdne663:0',
'numassets' => 'crwdns664:0crwdne664:0',
'title' => 'crwdns665:0crwdne665:0',
'update' => 'crwdns666:0crwdne666:0',
'view' => 'crwdns667:0crwdne667:0',
'update' => 'crwdns666:0crwdne666:0',
'clone' => 'crwdns669:0crwdne669:0',
'edit' => 'crwdns670:0crwdne670:0',
);
+18
View File
@@ -0,0 +1,18 @@
<?php
return array(
'display_asset_name' => 'crwdns828:0crwdne828:0',
'display_checkout_date' => 'crwdns829:0crwdne829:0',
'display_qr' => 'crwdns830:0crwdne830:0',
'info' => 'crwdns831:0crwdne831:0',
'per_page' => 'crwdns832:0crwdne832:0',
'php_gd_info' => 'crwdns833:0crwdne833:0',
'php_gd_warning' => 'crwdns834:0crwdne834:0',
'qr_help' => 'crwdns835:0crwdne835:0',
'qr_text' => 'crwdns836:0crwdne836:0',
'setting' => 'crwdns837:0crwdne837:0',
'settings' => 'crwdns838:0crwdne838:0',
'site_name' => 'crwdns839:0crwdne839:0',
'update' => 'crwdns840:0crwdne840:0',
'value' => 'crwdns841:0crwdne841:0',
);
+11
View File
@@ -0,0 +1,11 @@
<?php
return array(
'update' => array(
'error' => 'crwdns826:0crwdne826:0',
'success' => 'crwdns827:0crwdne827:0'
),
);
+25
View File
@@ -0,0 +1,25 @@
<?php
return array(
'does_not_exist' => 'crwdns686:0crwdne686:0',
'assoc_users' => 'crwdns687:0crwdne687:0',
'create' => array(
'error' => 'crwdns688:0crwdne688:0',
'success' => 'crwdns689:0crwdne689:0'
),
'update' => array(
'error' => 'crwdns690:0crwdne690:0',
'success' => 'crwdns691:0crwdne691:0'
),
'delete' => array(
'confirm' => 'crwdns692:0crwdne692:0',
'error' => 'crwdns693:0crwdne693:0',
'success' => 'crwdns694:0crwdne694:0'
)
);
+10
View File
@@ -0,0 +1,10 @@
<?php
return array(
'name' => 'crwdns680:0crwdne680:0',
'title' => 'crwdns681:0crwdne681:0',
'update' => 'crwdns682:0crwdne682:0',
'create' => 'crwdns683:0crwdne683:0',
'about' => 'crwdns684:0crwdne684:0',
'info' => 'crwdns685:0crwdne685:0',
);
+24
View File
@@ -0,0 +1,24 @@
<?php
return array(
'does_not_exist' => 'crwdns861:0crwdne861:0',
'assoc_users' => 'crwdns862:0crwdne862:0',
'create' => array(
'error' => 'crwdns863:0crwdne863:0',
'success' => 'crwdns864:0crwdne864:0'
),
'update' => array(
'error' => 'crwdns865:0crwdne865:0',
'success' => 'crwdns866:0crwdne866:0'
),
'delete' => array(
'confirm' => 'crwdns867:0crwdne867:0',
'error' => 'crwdns868:0crwdne868:0',
'success' => 'crwdns869:0crwdne869:0'
)
);
+24
View File
@@ -0,0 +1,24 @@
<?php
return array(
'address' => 'crwdns842:0crwdne842:0',
'assets' => 'crwdns843:0crwdne843:0',
'city' => 'crwdns844:0crwdne844:0',
'contact' => 'crwdns845:0crwdne845:0',
'country' => 'crwdns846:0crwdne846:0',
'create' => 'crwdns847:0crwdne847:0',
'email' => 'crwdns848:0crwdne848:0',
'fax' => 'crwdns849:0crwdne849:0',
'id' => 'crwdns850:0crwdne850:0',
'name' => 'crwdns851:0crwdne851:0',
'notes' => 'crwdns852:0crwdne852:0',
'phone' => 'crwdns853:0crwdne853:0',
'state' => 'crwdns854:0crwdne854:0',
'suppliers' => 'crwdns855:0crwdne855:0',
'update' => 'crwdns856:0crwdne856:0',
'url' => 'crwdns857:0crwdne857:0',
'view' => 'crwdns858:0crwdne858:0',
'view_assets_for' => 'crwdns859:0crwdne859:0',
'zip' => 'crwdns860:0crwdne860:0',
);
+8
View File
@@ -0,0 +1,8 @@
<?php
return array(
'edit' => 'crwdns804:0crwdne804:0',
'clone' => 'crwdns805:0crwdne805:0',
);
+29
View File
@@ -0,0 +1,29 @@
<?php
return array(
'user_exists' => 'crwdns787:0crwdne787:0',
'user_not_found' => 'crwdns788:0crwdne788:0',
'user_login_required' => 'crwdns789:0crwdne789:0',
'user_password_required' => 'crwdns790:0crwdne790:0',
'insufficient_permissions' => 'crwdns791:0crwdne791:0',
'success' => array(
'create' => 'crwdns792:0crwdne792:0',
'update' => 'crwdns793:0crwdne793:0',
'delete' => 'crwdns794:0crwdne794:0',
'ban' => 'crwdns795:0crwdne795:0',
'unban' => 'crwdns796:0crwdne796:0',
'suspend' => 'crwdns797:0crwdne797:0',
'unsuspend' => 'crwdns798:0crwdne798:0',
'restored' => 'crwdns799:0crwdne799:0'
),
'error' => array(
'create' => 'crwdns800:0crwdne800:0',
'update' => 'crwdns801:0crwdne801:0',
'delete' => 'crwdns802:0crwdne802:0',
'unsuspend' => 'crwdns803:0crwdne803:0'
),
);
+30
View File
@@ -0,0 +1,30 @@
<?php
return array(
'activated' => 'crwdns762:0crwdne762:0',
'allow' => 'crwdns763:0crwdne763:0',
'checkedout' => 'crwdns764:0crwdne764:0',
'created_at' => 'crwdns765:0crwdne765:0',
'createuser' => 'crwdns766:0crwdne766:0',
'deny' => 'crwdns767:0crwdne767:0',
'email' => 'crwdns768:0crwdne768:0',
'employee_num' => 'crwdns769:0crwdne769:0',
'first_name' => 'crwdns770:0crwdne770:0',
'groupnotes' => 'crwdns771:0crwdne771:0',
'id' => 'crwdns772:0crwdne772:0',
'inherit' => 'crwdns773:0crwdne773:0',
'job' => 'crwdns774:0crwdne774:0',
'last_login' => 'crwdns775:0crwdne775:0',
'last_name' => 'crwdns776:0crwdne776:0',
'location' => 'crwdns777:0crwdne777:0',
'manager' => 'crwdns778:0crwdne778:0',
'name' => 'crwdns779:0crwdne779:0',
'password_confirm' => 'crwdns780:0crwdne780:0',
'password' => 'crwdns781:0crwdne781:0',
'phone' => 'crwdns782:0crwdne782:0',
'title' => 'crwdns783:0crwdne783:0',
'updateuser' => 'crwdns784:0crwdne784:0',
'cloneuser' => 'crwdns785:0crwdne785:0',
'viewusers' => 'crwdns786:0crwdne786:0',
);
+36
View File
@@ -0,0 +1,36 @@
<?php
return array(
'account_already_exists' => 'crwdns1102:0crwdne1102:0',
'account_not_found' => 'crwdns1103:0crwdne1103:0',
'account_not_activated' => 'crwdns1104:0crwdne1104:0',
'account_suspended' => 'crwdns1105:0crwdne1105:0',
'account_banned' => 'crwdns1106:0crwdne1106:0',
'signin' => array(
'error' => 'crwdns1107:0crwdne1107:0',
'success' => 'crwdns1108:0crwdne1108:0',
),
'signup' => array(
'error' => 'crwdns1109:0crwdne1109:0',
'success' => 'crwdns1110:0crwdne1110:0',
),
'forgot-password' => array(
'error' => 'crwdns1111:0crwdne1111:0',
'success' => 'crwdns1112:0crwdne1112:0',
),
'forgot-password-confirm' => array(
'error' => 'crwdns1113:0crwdne1113:0',
'success' => 'crwdns1114:0crwdne1114:0',
),
'activate' => array(
'error' => 'crwdns1115:0crwdne1115:0',
'success' => 'crwdns1116:0crwdne1116:0',
),
);
+11
View File
@@ -0,0 +1,11 @@
<?php
return array(
'edit' => 'crwdns964:0crwdne964:0',
'delete' => 'crwdns965:0crwdne965:0',
'restore' => 'crwdns966:0crwdne966:0',
'actions' => 'crwdns967:0crwdne967:0',
'submit' => 'crwdns968:0crwdne968:0',
);
+89
View File
@@ -0,0 +1,89 @@
<?php
return array(
'address' => 'crwdns1019:0crwdne1019:0',
'admin' => 'crwdns1020:0crwdne1020:0',
'all_assets' => 'crwdns1021:0crwdne1021:0',
'all' => 'crwdns1022:0crwdne1022:0',
'asset_models' => 'crwdns1023:0crwdne1023:0',
'asset' => 'crwdns1024:0crwdne1024:0',
'asset_tag' => 'crwdns1025:0crwdne1025:0',
'assets_available' => 'crwdns1026:0crwdne1026:0',
'assets' => 'crwdns1027:0crwdne1027:0',
'avatar_delete' => 'crwdns1028:0crwdne1028:0',
'avatar_upload' => 'crwdns1029:0crwdne1029:0',
'back' => 'crwdns1030:0crwdne1030:0',
'cancel' => 'crwdns1031:0crwdne1031:0',
'categories' => 'crwdns1032:0crwdne1032:0',
'category' => 'crwdns1033:0crwdne1033:0',
'changeemail' => 'crwdns1034:0crwdne1034:0',
'changepassword' => 'crwdns1035:0crwdne1035:0',
'checkin' => 'crwdns1036:0crwdne1036:0',
'checkout' => 'crwdns1037:0crwdne1037:0',
'city' => 'crwdns1038:0crwdne1038:0',
'country' => 'crwdns1039:0crwdne1039:0',
'create' => 'crwdns1040:0crwdne1040:0',
'created_asset' => 'crwdns1041:0crwdne1041:0',
'created_at' => 'crwdns1042:0crwdne1042:0',
'currency' => 'crwdns1043:0crwdne1043:0',
'current' => 'crwdns1044:0crwdne1044:0',
'date' => 'crwdns1045:0crwdne1045:0',
'delete' => 'crwdns1046:0crwdne1046:0',
'deleted' => 'crwdns1047:0crwdne1047:0',
'deployed' => 'crwdns1048:0crwdne1048:0',
'depreciation_report' => 'crwdns1049:0crwdne1049:0',
'depreciation' => 'crwdns1050:0crwdne1050:0',
'editprofile' => 'crwdns1051:0crwdne1051:0',
'eol' => 'crwdns1052:0crwdne1052:0',
'first_name' => 'crwdns1053:0crwdne1053:0',
'groups' => 'crwdns1054:0crwdne1054:0',
'history_for' => 'crwdns1055:0crwdne1055:0',
'id' => 'crwdns1056:0crwdne1056:0',
'image_delete' => 'crwdns1057:0crwdne1057:0',
'image_upload' => 'crwdns1058:0crwdne1058:0',
'last_name' => 'crwdns1059:0crwdne1059:0',
'license' => 'crwdns1060:0crwdne1060:0',
'licenses_available' => 'crwdns1061:0crwdne1061:0',
'licenses' => 'crwdns1062:0crwdne1062:0',
'list_all' => 'crwdns1063:0crwdne1063:0',
'location' => 'crwdns1064:0crwdne1064:0',
'locations' => 'crwdns1065:0crwdne1065:0',
'logout' => 'crwdns1066:0crwdne1066:0',
'manufacturer' => 'crwdns1067:0crwdne1067:0',
'manufacturers' => 'crwdns1068:0crwdne1068:0',
'model_no' => 'crwdns1069:0crwdne1069:0',
'months' => 'crwdns1070:0crwdne1070:0',
'moreinfo' => 'crwdns1071:0crwdne1071:0',
'name' => 'crwdns1072:0crwdne1072:0',
'no_depreciation' => 'crwdns1073:0crwdne1073:0',
'no_results' => 'crwdns1074:0crwdne1074:0',
'no' => 'crwdns1075:0crwdne1075:0',
'notes' => 'crwdns1076:0crwdne1076:0',
'pending' => 'crwdns1077:0crwdne1077:0',
'people' => 'crwdns1078:0crwdne1078:0',
'per_page' => 'crwdns1079:0crwdne1079:0',
'profile' => 'crwdns1080:0crwdne1080:0',
'ready_to_deploy' => 'crwdns1081:0crwdne1081:0',
'reports' => 'crwdns1082:0crwdne1082:0',
'save' => 'crwdns1083:0crwdne1083:0',
'settings' => 'crwdns1084:0crwdne1084:0',
'sign_in' => 'crwdns1085:0crwdne1085:0',
'site_name' => 'crwdns1086:0crwdne1086:0',
'state' => 'crwdns1087:0crwdne1087:0',
'status_labels' => 'crwdns1088:0crwdne1088:0',
'status' => 'crwdns1089:0crwdne1089:0',
'suppliers' => 'crwdns1090:0crwdne1090:0',
'total_assets' => 'crwdns1091:0crwdne1091:0',
'total_licenses' => 'crwdns1092:0crwdne1092:0',
'undeployable' => 'crwdns1093:0crwdne1093:0',
'unknown_admin' => 'crwdns1094:0crwdne1094:0',
'user' => 'crwdns1095:0crwdne1095:0',
'viewassets' => 'crwdns1096:0crwdne1096:0',
'website' => 'crwdns1097:0crwdne1097:0',
'welcome' => 'crwdns1098:0crwdne1098:0',
'years' => 'crwdns1099:0crwdne1099:0',
'yes' => 'crwdns1100:0crwdne1100:0',
'zip' => 'crwdns1101:0crwdne1101:0',
);
+20
View File
@@ -0,0 +1,20 @@
<?php
return array(
/*
|--------------------------------------------------------------------------
| Pagination Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used by the paginator library to build
| the simple pagination links. You are free to change them to anything
| you want to customize your views to better match your application.
|
*/
'previous' => 'crwdns1017:0crwdne1017:0',
'next' => 'crwdns1018:0crwdne1018:0',
);
+24
View File
@@ -0,0 +1,24 @@
<?php
return array(
/*
|--------------------------------------------------------------------------
| Password Reminder Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are the default lines which match reasons
| that are given by the password broker for a password update attempt
| has failed, such as for an invalid token or invalid new password.
|
*/
"password" => "crwdns969:0crwdne969:0",
"user" => "crwdns970:0crwdne970:0",
"token" => "crwdns971:0crwdne971:0",
"sent" => "crwdns972:0crwdne972:0",
);
+7
View File
@@ -0,0 +1,7 @@
<?php
return array(
'actions' => 'crwdns1016:0crwdne1016:0'
);
+95
View File
@@ -0,0 +1,95 @@
<?php
return array(
/*
|--------------------------------------------------------------------------
| Validation Language Lines
|--------------------------------------------------------------------------
|
| The following language lines contain the default error messages used by
| the validator class. Some of these rules have multiple versions such
| such as the size rules. Feel free to tweak each of these messages.
|
*/
"accepted" => "crwdns973:0crwdne973:0",
"active_url" => "crwdns974:0crwdne974:0",
"after" => "crwdns975:0crwdne975:0",
"alpha" => "crwdns976:0crwdne976:0",
"alpha_dash" => "crwdns977:0crwdne977:0",
"alpha_num" => "crwdns978:0crwdne978:0",
"before" => "crwdns979:0crwdne979:0",
"between" => array(
"numeric" => "crwdns980:0crwdne980:0",
"file" => "crwdns981:0crwdne981:0",
"string" => "crwdns982:0crwdne982:0",
),
"confirmed" => "crwdns983:0crwdne983:0",
"date" => "crwdns984:0crwdne984:0",
"date_format" => "crwdns985:0crwdne985:0",
"different" => "crwdns986:0crwdne986:0",
"digits" => "crwdns987:0crwdne987:0",
"digits_between" => "crwdns988:0crwdne988:0",
"email" => "crwdns989:0crwdne989:0",
"exists" => "crwdns990:0crwdne990:0",
"image" => "crwdns991:0crwdne991:0",
"in" => "crwdns992:0crwdne992:0",
"integer" => "crwdns993:0crwdne993:0",
"ip" => "crwdns994:0crwdne994:0",
"max" => array(
"numeric" => "crwdns995:0crwdne995:0",
"file" => "crwdns996:0crwdne996:0",
"string" => "crwdns997:0crwdne997:0",
),
"mimes" => "crwdns998:0crwdne998:0",
"min" => array(
"numeric" => "crwdns999:0crwdne999:0",
"file" => "crwdns1000:0crwdne1000:0",
"string" => "crwdns1001:0crwdne1001:0",
),
"not_in" => "crwdns1002:0crwdne1002:0",
"numeric" => "crwdns1003:0crwdne1003:0",
"regex" => "crwdns1004:0crwdne1004:0",
"required" => "crwdns1005:0crwdne1005:0",
"required_if" => "crwdns1006:0crwdne1006:0",
"required_with" => "crwdns1007:0crwdne1007:0",
"required_without" => "crwdns1008:0crwdne1008:0",
"same" => "crwdns1009:0crwdne1009:0",
"size" => array(
"numeric" => "crwdns1010:0crwdne1010:0",
"file" => "crwdns1011:0crwdne1011:0",
"string" => "crwdns1012:0crwdne1012:0",
),
"unique" => "crwdns1013:0crwdne1013:0",
"url" => "crwdns1014:0crwdne1014:0",
/*
|--------------------------------------------------------------------------
| Custom Validation Language Lines
|--------------------------------------------------------------------------
|
| Here you may specify custom validation messages for attributes using the
| convention "attribute.rule" to name the lines. This makes it quick to
| specify a specific custom language line for a given attribute rule.
|
*/
'custom' => array(),
'alpha_space' => "crwdns1015:0crwdne1015:0",
/*
|--------------------------------------------------------------------------
| Custom Validation Attributes
|--------------------------------------------------------------------------
|
| The following language lines are used to swap attribute place-holders
| with something more reader friendly such as E-Mail Address instead
| of "email". This simply helps us make messages a little cleaner.
|
*/
'attributes' => array(),
);
+11
View File
@@ -0,0 +1,11 @@
<?php
return array(
'about_asset_categories' => 'About Asset Categories',
'about_categories' => 'Asset categories help you organize your assets. Some example categories might be &quot;Desktops&quot;, &quot;Laptops&quot;, &quot;Mobile Phones&quot;, &quot;Tablets&quot;, and so on, but you can use asset categories any way that makes sense for you. ',
'asset_categories' => 'Asset Categories',
'category_name' => 'Category Name',
'create' => 'Create Category',
'update' => 'Update Category',
);
+24
View File
@@ -0,0 +1,24 @@
<?php
return array(
'does_not_exist' => 'Category does not exist.',
'assoc_users' => 'This category is currently associated with at least one model and cannot be deleted. Please update your models to no longer reference this category and try again. ',
'create' => array(
'error' => 'Category was not created, please try again.',
'success' => 'Category created successfully.'
),
'update' => array(
'error' => 'Category was not updated, please try again',
'success' => 'Category updated successfully.'
),
'delete' => array(
'confirm' => 'Are you sure you wish to delete this category?',
'error' => 'There was an issue deleting the category. Please try again.',
'success' => 'The category was deleted successfully.'
)
);
+9
View File
@@ -0,0 +1,9 @@
<?php
return array(
'id' => 'ID',
'parent' => 'Parent',
'title' => 'Asset Category Name',
);
+12
View File
@@ -0,0 +1,12 @@
<?php
return array(
'about_asset_depreciations' => 'About Asset Depreciations',
'about_depreciations' => 'You can set up asset depreciations to depreciate assets based on straight-line depreciation.',
'asset_depreciations' => 'Asset Depreciations',
'create_depreciation' => 'Create Depreciation',
'depreciation_name' => 'Depreciation Name',
'number_of_months' => 'Number of Months',
'update_depreciation' => 'Update Depreciation',
);
+25
View File
@@ -0,0 +1,25 @@
<?php
return array(
'does_not_exist' => 'Depreciation class does not exist.',
'assoc_users' => 'This depreciation is currently associated with one or more models and cannot be deleted. Please delete the models, and then try deleting again. ',
'create' => array(
'error' => 'Depreciation class was not created, please try again. :(',
'success' => 'Depreciation class created successfully. :)'
),
'update' => array(
'error' => 'Depreciation class was not updated, please try again',
'success' => 'Depreciation class updated successfully.'
),
'delete' => array(
'confirm' => 'Are you sure you wish to delete this depreciation class?',
'error' => 'There was an issue deleting the depreciation class. Please try again.',
'success' => 'The depreciation class was deleted successfully.'
)
);
+10
View File
@@ -0,0 +1,10 @@
<?php
return array(
'id' => 'ID',
'months' => 'Months',
'term' => 'Term',
'title' => 'Name ',
);

Some files were not shown because too many files have changed in this diff Show More