Compare commits

...

98 Commits

Author SHA1 Message Date
snipe b354ca817d Bumped version 2017-09-25 22:10:06 -07:00
snipe 4b9bfc178d One more try on #4001 2017-09-25 22:05:57 -07:00
snipe abc2f7e789 Bumped build number 2017-09-25 21:57:16 -07:00
snipe 29cc9a0815 Tweaks to upgrade script 2017-09-25 21:50:41 -07:00
snipe f2ee7dcabb Fixes #4001 - license checkout not working 2017-09-25 21:40:43 -07:00
snipe 26203801f6 Fixes #4009 - zip not populating on locations listing page 2017-09-25 20:45:05 -07:00
snipe fbe9539130 Proto upgrade script 2017-09-25 20:30:18 -07:00
snipe 43ec959385 Add @richardhofman6 as a contributor 2017-09-25 16:58:47 -07:00
snipe 9b6276f281 Bumped version 2017-09-25 16:04:23 -07:00
snipe 0715791229 Include oauth keys in backup 2017-09-25 15:45:33 -07:00
snipe 0a0661bf41 Additional fixes for #3995 in atypical blades 2017-09-25 15:41:02 -07:00
snipe 6ee939d29b Allegedly fixes #3995 - subdirectory issues with JS/CSS 2017-09-25 15:39:18 -07:00
snipe c3afbc0e53 Run backups before purging and importing 2017-09-25 15:00:23 -07:00
snipe 38326314ca Merge branch 'develop' 2017-09-25 11:53:33 -07:00
snipe 865950e766 Fixes #4000 - user_id blank 2017-09-25 11:53:10 -07:00
snipe d49b67d033 Fix for assigned user location
Was breaking requestable page
2017-09-25 11:26:04 -07:00
snipe 6b63808e34 Fix for asset location null on user 2017-09-25 11:25:15 -07:00
snipe 34dfcb5add Merge branch 'develop' 2017-09-22 17:23:38 -07:00
snipe 30019a144a Disable login note editing on demo 2017-09-22 17:23:22 -07:00
snipe 3e222b674a Merge branch 'develop'
# Conflicts:
#	resources/views/hardware/view.blade.php
2017-09-22 17:04:43 -07:00
snipe e316444c63 Show suppliers link - force cache break? 2017-09-22 17:03:57 -07:00
snipe b29d7beb3a Merge branch 'develop'
# Conflicts:
#	.gitignore
#	Dockerfile
#	README.md
#	app/Http/Controllers/AccessoriesController.php
#	app/Http/Controllers/AssetMaintenancesController.php
#	app/Http/Controllers/AssetsController.php
#	app/Http/Controllers/ConsumablesController.php
#	app/Http/Controllers/GroupsController.php
#	app/Http/Controllers/LicensesController.php
#	app/Http/Controllers/ReportsController.php
#	app/Http/Controllers/UsersController.php
#	app/Http/routes.php
#	app/Models/Depreciation.php
#	app/Models/Location.php
#	config/version.php
#	resources/views/account/view-assets.blade.php
#	resources/views/hardware/edit.blade.php
#	resources/views/hardware/view.blade.php
#	resources/views/partials/modals.blade.php
#	resources/views/reports/custom.blade.php
#	snipeit.sh
2017-09-22 16:12:18 -07:00
snipe f0a49fefd7 Bumped version 2017-09-22 15:50:24 -07:00
snipe 998c4a5fe5 Make model number nullable 2017-09-22 04:43:28 -07:00
snipe 626a6408d0 Additional Danish and Polish translations 2017-09-18 19:12:37 -07:00
snipe 126a5671fe Set timeout for LDAP server 2017-09-18 19:11:38 -07:00
snipe aff104fa5d Bumped version for beta 2017-09-18 18:10:43 -07:00
Daniel Meltzer a5764351f7 Migrate weird assigned_type issues, Issue #3972 (#3973)
For a while, prior to 987536930, we did not null assigned_type on
checkin.  This migration manually nulls all assigned_type fields if
assigned_to is unset.  Add a test to AssetTest for this as well...kind
of.  We need to extract an Asset::checkin() method for 4.1 that mirrors
Asset::checkOut() to really test this.

This also fixes a separate (but related) issue.  The Asset importer did
not set assigned_type when importing and creating users.  In this
instance, we assume that if assigned_to is set and assigned_type is not,
then the item was checked out to a user and update the DB accordingly.
Also add a check in ImporterTest for this issue.
2017-09-18 16:40:13 -07:00
snipe 348becbbec Production assets generated 2017-09-18 13:01:54 -07:00
Daniel Meltzer 922d6937ae Custom field import repair (#3968)
* There is no notes field on accessories.  Fixes Importer Test.

* Fix notification test.  We should see a checkout not allowed exception when trying to check out to a location if the asset requires acceptance.

* Fix Custom field import.

Add a test for custom field import, and fix a few issues related to
importing custom fields.  This will restore v3 functionality.

* Add UI support for mapping custom fields.

This still requires the field mappings to be created/assigned in
advance, but will fetch all custom field names and allow them to be
selected when setting up custom field mappings.

This commit also updates laravel-mix to v1.4.3 and other node
dependencies to fix some build issues.

* Fix some requestable asset page/assetloc issues.  I'd love to know why laravel expections relationships to be in lower case... but thats a question for another day.
2017-09-18 12:29:08 -07:00
snipe c53dae4b72 Possible fix for #3919 - allow later versions of mcrypted base64 keys 2017-09-14 16:43:41 -07:00
snipe 17ad7f7800 Merge branch 'master' of github.com:snipe/snipe-it 2017-09-14 14:14:45 -07:00
snipe 6232a077b5 Fix more enum fuckery 2017-09-14 14:06:53 -07:00
snipe e7d72beb88 Also check for $snipeSettings in the first place
Since the preflight also uses this basic blade
2017-09-12 13:08:43 -07:00
snipe 01e3f4a4db Use site name if provided in the settings table for basic template 2017-09-12 13:01:51 -07:00
snipe 1b76880b0e Add @imanghafoori1 as a contributor 2017-09-12 12:30:21 -07:00
Iman ed4ea7f1f4 No new feature,No bug fix, Only refactoring (#3949)
* No change in logic !

Just exchanging the if and else code blocks and negating condition.

* remove unneeded else{} block

* Re-indented the code
2017-09-12 12:28:42 -07:00
snipe 81e358a01d Small maintenance fixes 2017-09-08 17:49:01 -07:00
snipe 6c283de60a Check for status_id key - related to #3928
TODO: Fix for model number
2017-09-08 17:24:28 -07:00
snipe 4e7a6c0ccf Fixes #3928 - adds correct key generation and passport install 2017-09-08 17:23:19 -07:00
snipe eba145503b Bumped version 2017-09-06 19:02:05 -07:00
snipe ae8c9d6afc Updated translations 2017-09-06 18:05:32 -07:00
snipe faeca4139d Added new languages, commented out ones with 0% translated 2017-09-06 17:51:11 -07:00
snipe 47909b93f7 Fixed deleted users/restore users view 2017-09-06 17:11:43 -07:00
snipe 472658b2fe Fixes #3924 - missing/donked language string 2017-09-06 17:11:23 -07:00
snipe 42a03a0436 Merge branch 'develop' of github.com:snipe/snipe-it into develop 2017-09-06 16:25:07 -07:00
Daniel Meltzer ae0573b3da Fix asset create (#3929)
* Fix accidental commit of ImporterTest.

* Move the name() method to the presenter

This fixes some weird collisions between laravels voodoo and our
presenter voodoo that confused php.  It's also probably a cleaner place
to put it.  Should fix #3927

* Add missing parenthesis

* Add heading to tables on locations/view page.
2017-09-06 16:24:43 -07:00
snipe 34f816097e Fixed missing quotation mark 2017-09-06 15:43:07 -07:00
KeenRivals fd515654ff Fix broken user's manual link (#3902)
snipe-it-manual.readme.io goes to a 404 page
2017-08-29 13:50:57 -07:00
Robin Temme 5347b19910 Update Maintained Badge (#3877)
The maintenance badge was outdated and displayed "no!". As I guess this was not it's intended purpose, I changed it to the new path, and it now displays "yes".
2017-08-23 12:05:29 -07:00
snipe 29f1cf2b48 Increase depreciation max 2017-07-19 19:41:21 -07:00
Sorvani f56862c684 change CentOS 7 to pull from git (#3734)
The package setup for CentOS 7 already installs git so use it for the install. This makes later updates easier for the end users. They can simply use git pull like the instructions say for updating.
2017-07-11 20:28:31 -07:00
snipe 1052be670d Increase size of state field 2017-06-15 21:04:10 -07:00
Daniel Nemanic 30a9704625 Update UsersController.php (#3640)
If a user is disabled in your Active Directory, it should be deactivated in the licensing too.

The standard state is now deactivated for synced accounts.
Maybe we can change this throw a Setting for a standard state.

The codes comes from this site:
http://www.netvision.com/ad_useraccountcontrol.php
2017-06-12 15:29:55 -07:00
Lee Thoong Ching 9a9b6ae228 Update snipeit.sh (#3620)
To support Oracle Linux ( equivalent to redhat which check os version and type )
2017-06-01 20:54:23 -07:00
morph027 7c8dc9fe2d docker: use ubuntu:xenial with php7.0 (#3616)
Nice, thanks! I'll patch this over to develop as well.
2017-06-01 20:50:09 -07:00
snipe b81dd18576 Fixed delete_at 2017-05-19 03:00:19 -07:00
snipe dac4b58892 Show warning on deleted items 2017-05-19 02:58:55 -07:00
snipe 71fd430f8e Fixes issue with older, deleted asset tags caching QR codes 2017-05-19 02:51:35 -07:00
snipe 5265821bcc Bumped version 2017-05-18 22:24:03 -07:00
snipe cb494a74ca Merge branch 'master' of github.com:snipe/snipe-it 2017-05-18 22:20:57 -07:00
snipe c526ffbf68 Bumped version 2017-05-18 22:20:52 -07:00
snipe 6f5fe83a91 Fixed missing language string in asset display 2017-05-18 22:20:43 -07:00
Nate Felton 5a3816c907 Fixing a regression for RHEL 6 with snipe/snipe-it#2993 (#3572) 2017-05-12 17:19:41 -07:00
snipe c8796cf045 Only prompt for checkin if there is an assigned user 2017-05-10 03:37:30 -07:00
snipe f4095c6dd0 Bumped version 2017-05-09 15:32:34 -07:00
snipe ee2c67a65f Added missing logging back in 2017-05-09 15:30:45 -07:00
snipe 5614578710 Don’t make the item clickable if it’s been deleted 2017-05-09 15:30:19 -07:00
snipe 08ef78356d Update Crowdin configuration file 2017-04-06 20:59:25 -07:00
Manasses Ferreira 47ac59abef We noted that the barcode folder was not being created. (what is done now in the entrypoint.sh) At the same time, a wrong directory was being created. (which explains the deleted line in Dockerfile) (#3456) 2017-03-31 13:48:50 -07:00
snipe 265a896211 Bumped version 2017-02-22 22:38:33 -08:00
snipe f7e4fca70d Add model_number to accessory search 2017-02-22 22:34:56 -08:00
snipe bb4c443cd9 Added notes to custom report 2017-02-03 02:20:56 -08:00
snipe 7b1d2ee050 Fixed typo 2017-01-17 11:57:24 -08:00
snipe b3f70a046f Don’t require superadmin for checkin and delete user 2017-01-17 09:19:14 -08:00
morph027 734e87f85f Installer fine tuning (#2993)
* used shellcheck to lint snipeit.sh

* do not depend on lsb-release command

* add lsb codename

* really use perms()

* more fixes

* quiet apt

* silent logging using log()

* start mysql if not running

* added curl to ubuntu

* added logfile to log function

* update apt index after adding mariadb repo

* fixed typo

* review fixes
2017-01-10 23:07:06 -08:00
snipe f371c5fd62 Merge branch 'master' of github.com:snipe/snipe-it 2017-01-10 19:02:18 -08:00
snipe 4b3edbd2f5 Fixed #3130 - model ID not being saved weith model info on modal for create asset 2017-01-10 19:02:13 -08:00
Byron Wolfman 1f3106b9da Use debian base container and clean up apt-get (#3011)
* Use debian base container and clean up apt-get

Attempt to slim down the docker image by replacing ubuntu:trusty with debian:jessie and clean up after apt-get invocation. Building against the 3.6.0 commit shows a healthy reduction of 44MB, or 9%, compared to the ubuntu-based image.

* Use debian:jessie-slim for an even smaller image

If we're using a debian base image for sizing reasons, we may as well go the full distance and use debian-slim.
2017-01-10 16:22:06 -08:00
snipe 9fd3a9a82d Removed logging 2017-01-06 03:12:49 -08:00
snipe a6e6991a2d Removed second number_format 2017-01-06 03:11:27 -08:00
snipe 93ba0717d8 Removed number_format 2017-01-06 03:02:38 -08:00
snipe a8839e0ef4 Fixes #3104, #2914 and #2918 - auto-increment incorrectly generating next ID 2017-01-06 02:52:10 -08:00
snipe 3e4152c966 Bumped version 2017-01-06 00:04:26 -08:00
snipe 1bf34d73f5 Use correct authorize rule in middleware for user delete 2017-01-06 00:02:46 -08:00
snipe d1e360d64d Fix logic to use gate instead of asking if superuser 2017-01-06 00:02:19 -08:00
snipe 3b5b19848c Added oauth keys to gitignore 2017-01-06 00:01:55 -08:00
snipe 93ba90e837 Merge remote-tracking branch 'origin/develop' 2016-12-12 19:24:00 -08:00
snipe fc70d79a17 Merge remote-tracking branch 'origin/develop' 2016-12-12 19:07:07 -08:00
snipe 65016a2383 Merge remote-tracking branch 'origin/develop' 2016-12-05 16:12:41 -08:00
snipe dbcb2ccb46 Merge remote-tracking branch 'origin/develop' 2016-12-05 15:09:49 -08:00
snipe 2afcfcc87c Set DB_SSL to false for config 2016-12-03 17:32:44 -08:00
snipe 1afef9416a Merge remote-tracking branch 'origin/develop'
# Conflicts:
#	config/version.php
2016-12-03 17:15:02 -08:00
snipe 4049143ebf Bumped version 2016-12-01 06:11:03 -08:00
snipe 4df53bdf8d Merge remote-tracking branch 'origin/develop'
# Conflicts:
#	config/version.php
#	resources/views/account/view-assets.blade.php
2016-12-01 06:10:50 -08:00
snipe d49a1ea304 More graceful error message if log doesn’t exist 2016-12-01 06:05:14 -08:00
snipe 521f4facd5 Bumped version 2016-12-01 05:56:24 -08:00
snipe b4653dfc15 Ignore npm log 2016-12-01 05:55:29 -08:00
386 changed files with 5710 additions and 3194 deletions
+18
View File
@@ -728,6 +728,24 @@
"contributions": [
"code"
]
},
{
"login": "imanghafoori1",
"name": "Iman",
"avatar_url": "https://avatars0.githubusercontent.com/u/6961695?v=4",
"profile": "https://github.com/imanghafoori1",
"contributions": [
"code"
]
},
{
"login": "richardhofman6",
"name": "Richard Hofman",
"avatar_url": "https://avatars1.githubusercontent.com/u/6551003?v=4",
"profile": "https://github.com/richardhofman6",
"contributions": [
"code"
]
}
]
}
+2 -2
View File
@@ -1,5 +1,5 @@
[![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+for+dev&title=Ready+for+development)](http://waffle.io/snipe/snipe-it) [![Maintenance](https://img.shields.io/maintenance/yes/2017.svg)]() [![Crowdin](https://d322cqt584bo4o.cloudfront.net/snipe-it/localized.png)](https://crowdin.com/project/snipe-it) [![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) [![Docker Pulls](https://img.shields.io/docker/pulls/snipe/snipe-it.svg)](https://hub.docker.com/r/snipe/snipe-it/) [![Twitter Follow](https://img.shields.io/twitter/follow/snipeyhead.svg?style=social)](https://twitter.com/snipeyhead) [![Zenhub](https://raw.githubusercontent.com/ZenHubIO/support/master/zenhub-badge.png)](https://zenhub.io) [![Codacy Badge](https://api.codacy.com/project/badge/Grade/553ce52037fc43ea99149785afcfe641)](https://www.codacy.com/app/snipe/snipe-it?utm_source=github.com&utm_medium=referral&utm_content=snipe/snipe-it&utm_campaign=Badge_Grade)
[![All Contributors](https://img.shields.io/badge/all_contributors-78-orange.svg?style=flat-square)](#contributors)
[![All Contributors](https://img.shields.io/badge/all_contributors-80-orange.svg?style=flat-square)](#contributors)
## Snipe-IT - Open Source Asset Management System
@@ -67,7 +67,7 @@ Thanks goes to all of these wonderful people ([emoji key](https://github.com/ken
| [<img src="https://avatars0.githubusercontent.com/u/8341172?v=3" width="110px;"/><br /><sub>Jay Richards</sub>](http://www.cordeos.com)<br />[💻](https://github.com/snipe/snipe-it/commits?author=technogenus "Code") | [<img src="https://avatars2.githubusercontent.com/u/7295127?v=3" width="110px;"/><br /><sub>Alexander Innes</sub>](https://necurity.co.uk)<br />[💻](https://github.com/snipe/snipe-it/commits?author=leostat "Code") | [<img src="https://avatars2.githubusercontent.com/u/334485?v=3" width="110px;"/><br /><sub>Danny Garcia</sub>](https://buzzedword.codes)<br />[💻](https://github.com/snipe/snipe-it/commits?author=buzzedword "Code") | [<img src="https://avatars2.githubusercontent.com/u/366855?v=3" width="110px;"/><br /><sub>archpoint</sub>](https://github.com/archpoint)<br />[💻](https://github.com/snipe/snipe-it/commits?author=archpoint "Code") | [<img src="https://avatars1.githubusercontent.com/u/67991?v=3" width="110px;"/><br /><sub>Jake McGraw</sub>](http://www.jakemcgraw.com)<br />[💻](https://github.com/snipe/snipe-it/commits?author=jakemcgraw "Code") | [<img src="https://avatars1.githubusercontent.com/u/1714374?v=3" width="110px;"/><br /><sub>FleischKarussel</sub>](https://github.com/FleischKarussel)<br />[📖](https://github.com/snipe/snipe-it/commits?author=FleischKarussel "Documentation") | [<img src="https://avatars3.githubusercontent.com/u/319644?v=3" width="110px;"/><br /><sub>Dylan Yi</sub>](https://github.com/feeva)<br />[💻](https://github.com/snipe/snipe-it/commits?author=feeva "Code") |
| [<img src="https://avatars2.githubusercontent.com/u/857740?v=3" width="110px;"/><br /><sub>Gil Rutkowski</sub>](http://FlashingCursor.com)<br />[💻](https://github.com/snipe/snipe-it/commits?author=flashingcursor "Code") | [<img src="https://avatars3.githubusercontent.com/u/129360?v=3" width="110px;"/><br /><sub>Desmond Morris</sub>](http://www.desmondmorris.com)<br />[💻](https://github.com/snipe/snipe-it/commits?author=desmondmorris "Code") | [<img src="https://avatars2.githubusercontent.com/u/52936?v=3" width="110px;"/><br /><sub>Nick Peelman</sub>](http://peelman.us)<br />[💻](https://github.com/snipe/snipe-it/commits?author=peelman "Code") | [<img src="https://avatars0.githubusercontent.com/u/53161?v=3" width="110px;"/><br /><sub>Abraham Vegh</sub>](https://abrahamvegh.com)<br />[💻](https://github.com/snipe/snipe-it/commits?author=abrahamvegh "Code") | [<img src="https://avatars0.githubusercontent.com/u/2818680?v=3" width="110px;"/><br /><sub>Mohamed Rashid</sub>](https://github.com/rashivkp)<br />[📖](https://github.com/snipe/snipe-it/commits?author=rashivkp "Documentation") | [<img src="https://avatars3.githubusercontent.com/u/1509456?v=3" width="110px;"/><br /><sub>Kasey</sub>](http://hinchk.github.io)<br />[💻](https://github.com/snipe/snipe-it/commits?author=HinchK "Code") | [<img src="https://avatars2.githubusercontent.com/u/10522541?v=3" width="110px;"/><br /><sub>Brett</sub>](https://github.com/BrettFagerlund)<br />[⚠️](https://github.com/snipe/snipe-it/commits?author=BrettFagerlund "Tests") |
| [<img src="https://avatars2.githubusercontent.com/u/16108587?v=3" width="110px;"/><br /><sub>Jason Spriggs</sub>](http://jasonspriggs.com)<br />[💻](https://github.com/snipe/snipe-it/commits?author=jasonspriggs "Code") | [<img src="https://avatars2.githubusercontent.com/u/1134568?v=3" width="110px;"/><br /><sub>Nate Felton</sub>](http://n8felton.wordpress.com)<br />[💻](https://github.com/snipe/snipe-it/commits?author=n8felton "Code") | [<img src="https://avatars2.githubusercontent.com/u/14036694?v=3" width="110px;"/><br /><sub>Manasses Ferreira</sub>](http://homepages.dcc.ufmg.br/~manassesferreira)<br />[💻](https://github.com/snipe/snipe-it/commits?author=manassesferreira "Code") | [<img src="https://avatars0.githubusercontent.com/u/15913949?v=3" width="110px;"/><br /><sub>Steve</sub>](https://github.com/steveelwood)<br />[⚠️](https://github.com/snipe/snipe-it/commits?author=steveelwood "Tests") | [<img src="https://avatars1.githubusercontent.com/u/3361683?v=3" width="110px;"/><br /><sub>matc</sub>](http://twitter.com/matc)<br />[⚠️](https://github.com/snipe/snipe-it/commits?author=matc "Tests") | [<img src="https://avatars3.githubusercontent.com/u/7405702?v=3" width="110px;"/><br /><sub>Cole R. Davis</sub>](http://www.davisracingteam.com)<br />[⚠️](https://github.com/snipe/snipe-it/commits?author=VanillaNinjaD "Tests") | [<img src="https://avatars2.githubusercontent.com/u/10167681?v=3" width="110px;"/><br /><sub>gibsonjoshua55</sub>](https://github.com/gibsonjoshua55)<br />[💻](https://github.com/snipe/snipe-it/commits?author=gibsonjoshua55 "Code") |
| [<img src="https://avatars2.githubusercontent.com/u/2809241?v=4" width="110px;"/><br /><sub>Robin Temme</sub>](https://github.com/zwerch)<br />[💻](https://github.com/snipe/snipe-it/commits?author=zwerch "Code") |
| [<img src="https://avatars2.githubusercontent.com/u/2809241?v=4" width="110px;"/><br /><sub>Robin Temme</sub>](https://github.com/zwerch)<br />[💻](https://github.com/snipe/snipe-it/commits?author=zwerch "Code") | [<img src="https://avatars0.githubusercontent.com/u/6961695?v=4" width="110px;"/><br /><sub>Iman</sub>](https://github.com/imanghafoori1)<br />[💻](https://github.com/snipe/snipe-it/commits?author=imanghafoori1 "Code") | [<img src="https://avatars1.githubusercontent.com/u/6551003?v=4" width="110px;"/><br /><sub>Richard Hofman</sub>](https://github.com/richardhofman6)<br />[💻](https://github.com/snipe/snipe-it/commits?author=richardhofman6 "Code") |
<!-- ALL-CONTRIBUTORS-LIST:END -->
This project follows the [all-contributors](https://github.com/kentcdodds/all-contributors) specification. Contributions of any kind welcome!
+16 -3
View File
@@ -47,6 +47,7 @@ class RecryptFromMcrypt extends Command
// Check and see if they have a legacy app key listed in their .env
// If not, we can try to use the current APP_KEY if looks like it's old
$legacy_key = env('LEGACY_APP_KEY');
$key_parts = explode(':', $legacy_key);
$errors = array();
if (!$legacy_key) {
@@ -54,11 +55,23 @@ class RecryptFromMcrypt extends Command
return false;
}
// Check that the app key is 32 characters
// Do some basic legacy app key length checks
if (strlen($legacy_key) == 32) {
$this->comment('INFO: Your LEGACY_APP_KEY is 32 characters. Okay to continue.');
$legacy_length_check = true;
} elseif (array_key_exists('1', $key_parts) && (strlen($key_parts[1])==44)) {
$legacy_length_check = true;
} else {
$this->error('ERROR: Your LEGACY_APP_KEY is not the correct length (32 characters). Please locate your old APP_KEY and use that as your LEGACY_APP_KEY in your .env file to continue.');
$legacy_length_check = false;
}
// Check that the app key is 32 characters
if ($legacy_length_check === true) {
$this->comment('INFO: Your LEGACY_APP_KEY looks correct. Okay to continue.');
} else {
$this->error('ERROR: Your LEGACY_APP_KEY is not the correct length (32 characters or base64 followed by 44 characters for later versions). Please locate your old APP_KEY and use that as your LEGACY_APP_KEY in your .env file to continue.');
return false;
}
@@ -2,9 +2,11 @@
namespace App\Http\Controllers\Api;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use App\Http\Transformers\CustomFieldsTransformer;
use App\Models\CustomField;
use App\Models\CustomFieldset;
use Illuminate\Http\Request;
class CustomFieldsController extends Controller
{
@@ -16,6 +18,15 @@ class CustomFieldsController extends Controller
* @since [v3.0]
* @return Array
*/
public function index()
{
$this->authorize('index', CustomFields::class);
$fields = CustomField::get();
$total = count($fields);
return (new CustomFieldsTransformer)->transformCustomFields($fields, $total);
}
public function postReorder(Request $request, $id)
{
$fieldset = CustomFieldset::find($id);
@@ -13,6 +13,7 @@ use Illuminate\Support\Facades\Input;
use Illuminate\Support\Facades\Session;
use League\Csv\Reader;
use Symfony\Component\HttpFoundation\File\Exception\FileException;
use Artisan;
class ImportController extends Controller
{
@@ -94,6 +95,8 @@ class ImportController extends Controller
public function process(ItemImportRequest $request, $import_id)
{
$this->authorize('create', Asset::class);
// Run a backup immediately before processing
Artisan::call('backup:run');
$errors = $request->import(Import::find($import_id));
$redirectTo = "hardware.index";
switch ($request->get('import-type')) {
@@ -52,6 +52,12 @@ class UsersController extends Controller
$users = $users->TextSearch($request->input('search'));
}
if (($request->has('deleted')) && ($request->input('deleted')=='true')) {
$users = $users->GetDeleted();
}
if ($request->has('company_id')) {
$users = $users->where('company_id', '=', $request->input('company_id'));
}
@@ -82,7 +82,7 @@ class AssetModelsController extends Controller
$model->manufacturer_id = $request->input('manufacturer_id');
$model->category_id = $request->input('category_id');
$model->notes = $request->input('notes');
$model->user_id = Auth::guard('api')->user();
$model->user_id = Auth::id();
$model->requestable = Input::has('requestable');
if ($request->input('custom_fieldset')!='') {
+9 -2
View File
@@ -380,7 +380,7 @@ class AssetsController extends Controller
if ($asset->save()) {
// Redirect to the new asset page
\Session::flash('success', trans('admin/hardware/message.update.success'));
return response()->json(['redirect_url' => route("hardware.show", $assetId)]);
return response()->json(['redirect_url' => route("view/hardware", $assetId)]);
}
\Input::flash();
\Session::flash('errors', $asset->getErrors());
@@ -412,6 +412,13 @@ class AssetsController extends Controller
$asset->delete();
$logaction = new Actionlog();
$logaction->item_type = Asset::class;
$logaction->item_id = $asset->id;
$logaction->created_at = date("Y-m-d H:i:s");
$logaction->user_id = Auth::user()->id;
$log = $logaction->logaction('deleted');
// Redirect to the asset management page
return redirect()->route('hardware.index')->with('success', trans('admin/hardware/message.delete.success'));
}
@@ -643,7 +650,7 @@ class AssetsController extends Controller
if ($settings->qr_code == '1') {
$asset = Asset::find($assetId);
$size = Helper::barcodeDimensions($settings->barcode_type);
$qr_file = public_path().'/uploads/barcodes/qr-'.str_slug($asset->asset_tag).'.png';
$qr_file = public_path().'/uploads/barcodes/qr-'.str_slug($asset->asset_tag).'-'.str_slug($asset->id).'.png';
if (isset($asset->id,$asset->asset_tag)) {
+5 -2
View File
@@ -306,8 +306,8 @@ class LicensesController extends Controller
return redirect()->route('licenses.index')->with('error', trans('admin/licenses/message.asset_does_not_exist'));
}
if (($target->assigned_to!='') && (($target->assigned_to!=$assigned_to)) && ($target!='')) {
return redirect()->route('licenses.index')->with('error', trans('admin/licenses/message.owner_doesnt_match_asset'));
if (($request->has('assigned_to')) && ($request->has('asset_id'))) {
return redirect()->back()->withInput()->with('error', trans('admin/licenses/message.select_asset_or_person'));
}
}
@@ -440,7 +440,10 @@ class LicensesController extends Controller
*/
public function show($licenseId = null)
{
$license = License::find($licenseId);
$license = $license->load('assignedusers', 'licenseSeats.user', 'licenseSeats.asset');
if (isset($license->id)) {
$license = $license->load('assignedusers', 'licenseSeats.user', 'licenseSeats.asset');
$this->authorize('view', $license);
+3 -3
View File
@@ -463,7 +463,7 @@ class ReportsController extends Controller
}
if (e(Input::get('notes')) == '1') {
$header[] = 'Notes';
$header[] = trans('general.notes');
}
@@ -604,9 +604,9 @@ class ReportsController extends Controller
if (e(Input::get('notes')) == '1') {
if ($asset->notes) {
$row[] = '"' .$asset->notes. '"';
$row[] = '"' .$asset->notes . '"';
} else {
$row[] = ''; // Empty string if unassigned
$row[] = '';
}
}
+6 -1
View File
@@ -338,7 +338,10 @@ class SettingsController extends Controller
$setting->email_format = $request->input('email_format');
$setting->username_format = $request->input('username_format');
$setting->require_accept_signature = $request->input('require_accept_signature');
$setting->login_note = $request->input('login_note');
if (config('app.lock_passwords')) {
$setting->login_note = $request->input('login_note');
}
$setting->default_eula_text = $request->input('default_eula_text');
$setting->thumbnail_max_h = $request->input('thumbnail_max_h');
@@ -992,6 +995,8 @@ class SettingsController extends Controller
{
if (!config('app.lock_passwords')) {
if (Input::get('confirm_purge')=='DELETE') {
// Run a backup immediately before processing
Artisan::call('backup:run');
Artisan::call('snipeit:purge', ['--force'=>'true','--no-interaction'=>true]);
$output = Artisan::output();
return view('settings/purge')
+4 -8
View File
@@ -370,14 +370,15 @@ class UsersController extends Controller
// Authorize takes care of many of our logic checks now.
$this->authorize('delete', User::class);
if ($user->assets()->count() > 0) {
// Check if we are not trying to delete ourselves
if ($user->id === Auth::user()->id) {
// Redirect to the user management page
return redirect()->route('users.index')->with('error', 'This user still has ' . $user->assets()->count() . ' assets associated with them.');
}
if ($user->licenses()->count() > 0) {
// Redirect to the user management page
return redirect()->route('users.index')->with('error', 'This user still has ' . $user->licenses()->count() . ' licenses associated with them.');
return redirect()->route('users.index')->with('error', 'This user still has ' . $user->assets()->count() . ' assets associated with them.');
}
if ($user->accessories()->count() > 0) {
@@ -532,10 +533,7 @@ class UsersController extends Controller
if (($key = array_search(Auth::user()->id, $user_raw_array)) !== false) {
unset($user_raw_array[$key]);
}
if (!Auth::user()->isSuperUser()) {
return redirect()->route('users.index')->with('error', trans('admin/users/message.insufficient_permissions'));
}
if (!config('app.lock_passwords')) {
@@ -836,7 +834,6 @@ class UsersController extends Controller
'permissions' => '{"user":1}',
'notes' => 'Imported user'
);
//dd($newuser);
DB::table('users')->insert($newuser);
@@ -928,7 +925,6 @@ class UsersController extends Controller
$user = User::find($userId);
$destinationPath = config('app.private_uploads').'/users';
// the license is valid
if (isset($user->id)) {
$this->authorize('update', $user);
$log = Actionlog::find($fileId);
@@ -25,7 +25,7 @@ class CustomFieldsTransformer
'name' => e($field->name),
'db_column_name' => e($field->db_column_name()),
'format' => e($field->format),
'required' => $field->pivot->required,
'required' => $field->pivot ? $field->pivot->required : false,
'created_at' => Helper::getFormattedDateObject($field->created_at, 'datetime'),
'updated_at' => Helper::getFormattedDateObject($field->updated_at, 'datetime'),
];
@@ -33,8 +33,9 @@ class LicensesTransformer
'depreciation' => ($license->depreciation) ? ['id' => (int) $license->depreciation->id,'name'=> e($license->depreciation->name)] : null,
'notes' => e($license->notes),
'expiration_date' => Helper::getFormattedDateObject($license->expiration_date, 'date'),
'total_seats' => (int) $license->total_seats,
'remaining_qty' => $license->remaincount(),
'total_seats' => (int) $license->seats,
'next_seat' => ($license->freeSeat()) ? (int) $license->freeSeat()->id : null,
'remaining_qty' => (int) $license->remaincount(),
'min_qty' => $license->remaincount(),
'license_name' => e($license->license_name),
'license_email' => e($license->license_email),
@@ -36,9 +36,11 @@ class LocationsTransformer
'address' => e($location->address),
'city' => e($location->city),
'state' => e($location->state),
'country' => e($location->country),
'zip' => e($location->zip),
'assets_checkedout' => $location->assets()->count(),
'assets_default' => $location->assignedassets()->count(),
'country' => e($location->country),
'created_at' => Helper::getFormattedDateObject($location->created_at, 'datetime'),
'updated_at' => Helper::getFormattedDateObject($location->updated_at, 'datetime'),
'parent' => ($location->parent) ? [
+4 -3
View File
@@ -56,9 +56,10 @@ class UsersTransformer
];
$permissions_array['available_actions'] = [
'update' => Gate::allows('update', User::class) ? true : false,
'delete' => Gate::allows('delete', User::class) ? true : false,
'clone' => Gate::allows('create', User::class) ? true : false,
'update' => (Gate::allows('update', User::class) && ($user->deleted_at=='')) ? true : false,
'delete' => (Gate::allows('delete', User::class) && ($user->deleted_at=='')) ? true : false,
'clone' => (Gate::allows('create', User::class) && ($user->deleted_at=='')) ,
'restore' => (Gate::allows('create', User::class) && ($user->deleted_at!='')) ? true : false,
];
$array += $permissions_array;
+3 -1
View File
@@ -63,7 +63,9 @@ class AssetImporter extends ItemImporter
$this->item['image'] = $this->findCsvMatch($row, "image");
$this->item['warranty_months'] = intval($this->findCsvMatch($row, "warranty"));
$this->item['model_id'] = $this->createOrFetchAssetModel($row);
if (!$this->item['status_id'] && !$editingAsset) {
// If no status ID is found
if (!array_key_exists('status_id', $this->item) && !$editingAsset) {
$this->log("No status field found, defaulting to first status.");
$this->item['status_id'] = $this->defaultStatusLabelId;
}
+9 -3
View File
@@ -109,7 +109,15 @@ abstract class Importer
{
$headerRow = $this->csv->fetchOne();
$results = $this->normalizeInputArray($this->csv->fetchAssoc());
$this->customFields = CustomField::All(['name']);
// Stolen From https://adamwathan.me/2016/07/14/customizing-keys-when-mapping-collections/
// This 'inverts' the fields such that we have a collection of fields indexed by name.
$cFs = CustomField::All();
$this->customFields = $cFs->reduce(function ($nameLookup, $field) {
$nameLookup[$field['name']] = $field;
return $nameLookup;
});
DB::transaction(function () use (&$results) {
Model::unguard();
$resultsCount = sizeof($results);
@@ -161,8 +169,6 @@ abstract class Importer
*/
public function lookupCustomKey($key)
{
// dd($this->fieldMap);
if (array_key_exists($key, $this->fieldMap)) {
$this->log("Found a match in our custom map: {$key} is " . $this->fieldMap[$key]);
return $this->fieldMap[$key];
+2
View File
@@ -10,6 +10,7 @@ use App\Models\Location;
use App\Models\Manufacturer;
use App\Models\Statuslabel;
use App\Models\Supplier;
use App\Models\User;
class ItemImporter extends Importer
{
@@ -68,6 +69,7 @@ class ItemImporter extends Importer
if(get_class($this) !== UserImporter::class) {
if ($this->item["user"] = $this->createOrFetchUser($row)) {
$this->item['assigned_to'] = $this->item['user']->id;
$this->item['assigned_type'] = User::class;
}
}
}
-1
View File
@@ -61,7 +61,6 @@ class Accessory extends SnipeModel
'purchase_date',
'model_number',
'manufacturer_id',
'notes',
'qty',
'requestable'
];
+7 -4
View File
@@ -79,6 +79,7 @@ class Asset extends Depreciable
protected $fillable = [
'asset_tag',
'assigned_to',
'assigned_type',
'company_id',
'image',
'model_id',
@@ -253,18 +254,20 @@ class Asset extends Depreciable
public function assetLoc()
{
if (!empty($this->assignedType())) {
// dd($this->assignedType());
if ($this->assignedType() == self::ASSET) {
return $this->assignedTo->assetloc(); // Recurse until we have a final location
return $this->assignedto->assetloc(); // Recurse until we have a final location
}
if ($this->assignedType() == self::LOCATION) {
return $this->assignedTo();
}
if ($this->assignedType() == self::USER) {
if (!$this->assignedTo) {
return $this->defaultLoc();
}
return $this->assignedTo->userLoc();
}
if (!$this->assignedTo) {
return $this->defaultLoc();
}
}
return $this->defaultLoc();
}
+1 -1
View File
@@ -26,7 +26,7 @@ class AssetModel extends SnipeModel
// Declare the rules for the model validation
protected $rules = array(
'name' => 'required|min:1|max:255',
'model_number' => 'min:1|max:255',
'model_number' => 'max:255|nullable',
'category_id' => 'required|integer|exists:categories,id',
'manufacturer_id' => 'required|integer|exists:manufacturers,id',
'eol' => 'integer:min:0|max:240|nullable',
+1
View File
@@ -48,6 +48,7 @@ class Ldap extends Model
// Needed for AD
ldap_set_option($connection, LDAP_OPT_REFERRALS, 0);
ldap_set_option($connection, LDAP_OPT_PROTOCOL_VERSION, $ldap_version);
ldap_set_option($connection, LDAP_OPT_NETWORK_TIMEOUT, 20);
if ($ldap_use_tls=='1') {
ldap_start_tls($connection);
+5 -2
View File
@@ -332,14 +332,17 @@ class License extends Depreciable
return $this->belongsTo('\App\Models\Supplier', 'supplier_id');
}
/*
* Get the next available free seat - used by
* the API to populate next_seat
*/
public function freeSeat()
{
$seat = LicenseSeat::where('license_id', '=', $this->id)
return $this->licenseseats()
->whereNull('deleted_at')
->whereNull('assigned_to')
->whereNull('asset_id')
->first();
return $seat->id;
}
public static function getExpiringLicenses($days = 60)
+7 -4
View File
@@ -43,20 +43,23 @@ trait Loggable
$log->target_type = get_class($target);
$log->target_id = $target->id;
$class = get_class($target);
if ($class == Location::class) {
$target_class = get_class($target);
// Figure out what the target is
if ($target_class == Location::class) {
// We can checkout to a location
$log->location_id = $target->id;
} else if ($class== Asset::class) {
} elseif ($target_class== Asset::class) {
$log->location_id = $target->rtd_location_id;
} else {
$log->location_id = $target->location_id;
}
$log->note = $note;
$log->logaction('checkout');
$params = [
'item' => $this,
'item' => $log->item,
'target' => $target,
'admin' => $log->user,
'note' => $note,
-4
View File
@@ -82,8 +82,4 @@ class SnipeModel extends Model
{
return $this->name;
}
public function name() {
return $this->name;
}
}
+1 -1
View File
@@ -94,7 +94,7 @@ class CheckoutNotification extends Notification
'item_tag' => $item->asset_tag,
'note' => $this->params['note'],
'item_serial' => $item->serial,
'require_acceptance' => $item->requireAcceptance(),
'require_acceptance' => method_exists($item, 'requireAcceptance') ? $item->requireAcceptance() : '',
'log_id' => $this->params['log_id'],
];
return (new MailMessage)
+10
View File
@@ -146,6 +146,16 @@ class LicensePresenter extends Presenter
return (string)link_to_route('licenses.show', $this->name, $this->id);
}
/**
* Link to this licenses Name
* @return string
*/
public function fullName()
{
return 'poop';
}
/**
* Link to this licenses serial
* @return string
+5
View File
@@ -65,6 +65,11 @@ abstract class Presenter
return '';
}
public function name()
{
return $this->model->name;
}
public function __get($property)
{
if (method_exists($this, $property)) {
+1 -1
View File
File diff suppressed because one or more lines are too long
+1 -1
View File
File diff suppressed because one or more lines are too long
+2
View File
@@ -22,6 +22,8 @@ return [
base_path('public/uploads'),
base_path('config'),
base_path('storage/private_uploads'),
base_path('storage/oauth-private.key'),
base_path('storage/oauth-public.key'),
],
/*
+4 -4
View File
@@ -1,7 +1,7 @@
<?php
return array (
'app_version' => 'v4',
'build_version' => 'beta4',
'hash_version' => '24',
'full_hash' => 'v4-beta4-24-g10f3221',
'app_version' => 'v4.0.2',
'build_version' => '7',
'hash_version' => 'g4b9bfc1',
'full_hash' => 'v4.0.2-7-g4b9bfc1',
);
@@ -0,0 +1,17 @@
<?php
$factory->define(App\Models\CustomField::class, function (Faker\Generator $faker) {
return [
'name' => $faker->catchPhrase,
'format' => 'IP',
'element' => 'text',
];
});
$factory->define(App\Models\CustomFieldset::class, function (Faker\Generator $faker) {
return [
'name' => $faker->catchPhrase,
'user_id' => Auth::id()
];
});
-8
View File
@@ -97,14 +97,6 @@ $factory->define(App\Models\Consumable::class, function (Faker\Generator $faker)
];
});
$factory->define(App\Models\CustomField::class, function (Faker\Generator $faker) {
return [
'name' => $faker->catchPhrase,
'format' => 'IP',
'element' => 'text',
];
});
$factory->define(App\Models\Department::class, function (Faker\Generator $faker) {
return [
'name' => $faker->catchPhrase,
@@ -12,10 +12,13 @@ class AddSoftDeletedToLog extends Migration {
*/
public function up()
{
Schema::table('asset_logs', function ($table) {
$table->string('asset_type',100)->nullable()->change();
});
$platform = Schema::getConnection()->getDoctrineSchemaManager()->getDatabasePlatform();
$platform->registerDoctrineTypeMapping('enum', 'string');
Schema::table('asset_logs', function ($table) {
$table->string('asset_type',100)->nullable()->change();
});
// 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"');
@@ -0,0 +1,36 @@
<?php
use App\Models\Asset;
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class FixAssignedTypeNotBeingNulled extends Migration
{
/**
* Run the migrations.
* There was a point in the v4 beta process where assigned_type was not nulled on checkin
* This manually nulls all assets where there is an assigned_type but not an assigned_to.
* @return void
*/
public function up()
{
// There was a point in the v4 beta process where assigned_type was not nulled on checkin
// This manually nulls all assets where there is an assigned_type but not an assigned_to.
Asset::whereNotNull('assigned_type')->whereNull('assigned_to')->update(['assigned_type' => null]);
// Additionally, the importer did not set assigned_type when importing.
// In the case where we have an assigned_to but not an assigned_type, set the assigned_type to User.
Asset::whereNotNull('assigned_to')->whereNull('assigned_type')->update(['assigned_type' => 'App\Models\User']);
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
//
}
}
+7 -5
View File
@@ -10,14 +10,14 @@
"production": "cross-env NODE_ENV=production node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js "
},
"devDependencies": {
"axios": "^0.15.3",
"axios": "^0.16.2",
"babel-preset-latest": "^6.24.1",
"cross-env": "^3.2.4",
"cross-env": "^5.0.5",
"jquery": "^3.1.1",
"laravel-mix": "0.12.1",
"laravel-mix": "1.4.3",
"lodash": "^4.17.4",
"vue": "2.3.3",
"vue-template-compiler": "2.3.3"
"vue": "2.4.4",
"vue-template-compiler": "2.4.4"
},
"dependencies": {
"blueimp-file-upload": "^9.18.0",
@@ -32,6 +32,8 @@
"jquery-ui": "^1.12.1",
"jquery-ui-bundle": "^1.12.1",
"jquery.iframe-transport": "^1.0.0",
"less": "^2.7.2",
"less-loader": "^4.0.5",
"papaparse": "^4.3.3",
"select2": "^4.0.3",
"tether": "^1.4.0",
+23 -23
View File
File diff suppressed because one or more lines are too long
@@ -130,12 +130,14 @@ tr {
{id: 'jobtitle', text: 'Job Title' },
{id: 'phone_number', text: 'Phone Number' },
],
customFields: [],
},
columnMappings: this.file.field_map || {},
activeColumn: null,
}
},
created() {
this.fetchCustomFields();
window.eventHub.$on('showDetails', this.toggleExtendedDisplay)
this.populateSelect2ActiveItems();
},
@@ -143,7 +145,7 @@ tr {
columns() {
switch(this.options.importType) {
case 'asset':
return this.columnOptions.general.concat(this.columnOptions.assets);
return this.columnOptions.general.concat(this.columnOptions.assets).concat(this.columnOptions.customFields);
case 'license':
return this.columnOptions.general.concat(this.columnOptions.licenses);
case 'user':
@@ -153,6 +155,18 @@ tr {
}
},
methods: {
fetchCustomFields() {
this.$http.get('/api/v1/fields')
.then( ({data}) => {
data = data.rows;
data.forEach((item) => {
this.columnOptions.customFields.push({
'id': item.db_column_name,
'text': item.name,
})
})
});
},
postSave() {
this.statusText = "Processing...";
this.$http.post('/api/v1/imports/process/'+this.file.id, {
@@ -208,4 +222,4 @@ tr {
select2: require('../select2.vue')
}
}
</script>
</script>
@@ -12,8 +12,8 @@
'success' => 'Asset Maintenance created successfully.'
],
'edit' => [
'error' => 'Asset Maintenance was not created, please try again.',
'success' => 'Asset Maintenance created successfully.'
'error' => 'Asset Maintenance was not edited, please try again.',
'success' => 'Asset Maintenance edited successfully.'
],
'asset_maintenance_incomplete' => 'Not Completed Yet',
'warranty' => 'Warranty',
+1 -1
View File
@@ -7,7 +7,7 @@ return array(
'asset' => 'Asset',
'bulk_checkout' => 'Checkout Assets to User',
'checkin' => 'Checkin Asset',
'checkout' => 'Checkout Asset to User',
'checkout' => 'Checkout Asset',
'clone' => 'Clone Asset',
'deployable' => 'Deployable',
'deleted' => 'This asset has been deleted. <a href="/hardware/:asset_id/restore">Click here to restore it</a>.',
@@ -24,6 +24,12 @@ return array(
'success' => 'Asset restored successfully.'
),
'audit' => array(
'error' => 'Asset audit was unsuccessful. Please try again.',
'success' => 'Asset audit successfully logged.'
),
'deletefile' => array(
'error' => 'File not deleted. Please try again.',
'success' => 'File successfully deleted.',
@@ -10,6 +10,10 @@ return array(
'alert_interval' => 'Expiring Alerts Threshold (in days)',
'alert_inv_threshold' => 'Inventory Alert Threshold',
'asset_ids' => 'Asset IDs',
'audit_interval' => 'Audit Interval',
'audit_interval_help' => 'If you are required to regularly physically audit your assets, enter the interval in months.',
'audit_warning_days' => 'Audit Warning Threshold',
'audit_warning_days_help' => 'How many days in advance should we warn you when assets are due for auditing?',
'auto_increment_assets' => 'Generate auto-incrementing asset IDs',
'auto_increment_prefix' => 'Prefix (optional)',
'auto_incrementing_help' => 'Enable auto-incrementing asset IDs first to set this',
@@ -13,6 +13,7 @@ return array(
'filetype_info' => 'Allowed filetypes are png, gif, jpg, jpeg, doc, docx, pdf, txt, zip, and rar.',
'history_user' => 'History for :name',
'info' => 'Info',
'restore_user' => 'Click here to restore them.',
'last_login' => 'Last Login',
'ldap_config_text' => 'LDAP configuration settings can be found Admin > Settings. The (optional) selected location will be set for all imported users.',
'software_user' => 'Software Checked out to :name',
+8
View File
@@ -18,11 +18,15 @@
'asset_report' => 'Asset Report',
'asset_tag' => 'Asset Tag',
'assets_available' => 'assets available',
'audit' => 'Audit',
'audit_report' => 'Audit Log',
'assets' => 'Assets',
'avatar_delete' => 'Delete Avatar',
'avatar_upload' => 'Upload Avatar',
'back' => 'Back',
'bad_data' => 'Nothing found. Maybe bad data?',
'bulkaudit' => 'Bulk Audit',
'bulkaudit_status' => 'Audit Status',
'bulk_checkout' => 'Bulk Checkout',
'cancel' => 'Cancel',
'categories' => 'Categories',
@@ -52,6 +56,8 @@
'current' => 'Current',
'custom_report' => 'Custom Asset Report',
'dashboard' => 'Dashboard',
'days' => 'days',
'days_to_next_audit' => 'Days to Next Audit',
'date' => 'Date',
'debug_warning' => 'Warning!',
'debug_warning_text' => 'This application is running in production mode with debugging enabled. This can expose sensitive data if your application is accessible to the outside world. Disable debug mode by setting the <code>APP_DEBUG</code> value in your <code>.env</code> file to <code>false</code>.',
@@ -117,6 +123,8 @@
'moreinfo' => 'More Info',
'name' => 'Name',
'next' => 'Next',
'next_audit_date' => 'Next Audit Date',
'last_audit' => 'Last Audit',
'new' => 'new!',
'no_depreciation' => 'No Depreciation',
'no_results' => 'No Results.',
+94 -59
View File
@@ -13,62 +13,91 @@ return array(
|
*/
"accepted" => "The :attribute must be accepted.",
"active_url" => "The :attribute is not a valid URL.",
"after" => "The :attribute must be a date after :date.",
"alpha" => "The :attribute may only contain letters.",
"alpha_dash" => "The :attribute may only contain letters, numbers, and dashes.",
"alpha_num" => "The :attribute may only contain letters and numbers.",
"before" => "The :attribute must be a date before :date.",
"between" => array(
"numeric" => "The :attribute must be between :min - :max.",
"file" => "The :attribute must be between :min - :max kilobytes.",
"string" => "The :attribute must be between :min - :max characters.",
),
"boolean" => "The :attribute must be true or false.",
"confirmed" => "The :attribute confirmation does not match.",
"date" => "The :attribute is not a valid date.",
"date_format" => "The :attribute does not match the format :format.",
"different" => "The :attribute and :other must be different.",
"digits" => "The :attribute must be :digits digits.",
"digits_between" => "The :attribute must be between :min and :max digits.",
"email" => "The :attribute format is invalid.",
"exists" => "The selected :attribute is invalid.",
"email_array" => "One or more email addresses is invalid.",
"hashed_pass" => "Your current password is incorrect",
'dumbpwd' => 'That password is too common.',
"image" => "The :attribute must be an image.",
"in" => "The selected :attribute is invalid.",
"integer" => "The :attribute must be an integer.",
"ip" => "The :attribute must be a valid IP address.",
"max" => array(
"numeric" => "The :attribute may not be greater than :max.",
"file" => "The :attribute may not be greater than :max kilobytes.",
"string" => "The :attribute may not be greater than :max characters.",
),
"mimes" => "The :attribute must be a file of type: :values.",
"min" => array(
"numeric" => "The :attribute must be at least :min.",
"file" => "The :attribute must be at least :min kilobytes.",
"string" => "The :attribute must be at least :min characters.",
),
"not_in" => "The selected :attribute is invalid.",
"numeric" => "The :attribute must be a number.",
"regex" => "The :attribute format is invalid.",
"required" => "The :attribute field is required.",
"required_if" => "The :attribute field is required when :other is :value.",
"required_with" => "The :attribute field is required when :values is present.",
"required_without" => "The :attribute field is required when :values is not present.",
"same" => "The :attribute and :other must match.",
"size" => array(
"numeric" => "The :attribute must be :size.",
"file" => "The :attribute must be :size kilobytes.",
"string" => "The :attribute must be :size characters.",
),
"unique" => "The :attribute has already been taken.",
"url" => "The :attribute format is invalid.",
"statuslabel_type" => "You must select a valid status label type",
"unique_undeleted" => "The :attribute must be unique.",
'accepted' => 'The :attribute must be accepted.',
'active_url' => 'The :attribute is not a valid URL.',
'after' => 'The :attribute must be a date after :date.',
'after_or_equal' => 'The :attribute must be a date after or equal to :date.',
'alpha' => 'The :attribute may only contain letters.',
'alpha_dash' => 'The :attribute may only contain letters, numbers, and dashes.',
'alpha_num' => 'The :attribute may only contain letters and numbers.',
'array' => 'The :attribute must be an array.',
'before' => 'The :attribute must be a date before :date.',
'before_or_equal' => 'The :attribute must be a date before or equal to :date.',
'between' => [
'numeric' => 'The :attribute must be between :min and :max.',
'file' => 'The :attribute must be between :min and :max kilobytes.',
'string' => 'The :attribute must be between :min and :max characters.',
'array' => 'The :attribute must have between :min and :max items.',
],
'boolean' => 'The :attribute field must be true or false.',
'confirmed' => 'The :attribute confirmation does not match.',
'date' => 'The :attribute is not a valid date.',
'date_format' => 'The :attribute does not match the format :format.',
'different' => 'The :attribute and :other must be different.',
'digits' => 'The :attribute must be :digits digits.',
'digits_between' => 'The :attribute must be between :min and :max digits.',
'dimensions' => 'The :attribute has invalid image dimensions.',
'distinct' => 'The :attribute field has a duplicate value.',
'email' => 'The :attribute must be a valid email address.',
'exists' => 'The selected :attribute is invalid.',
'file' => 'The :attribute must be a file.',
'filled' => 'The :attribute field must have a value.',
'image' => 'The :attribute must be an image.',
'in' => 'The selected :attribute is invalid.',
'in_array' => 'The :attribute field does not exist in :other.',
'integer' => 'The :attribute must be an integer.',
'ip' => 'The :attribute must be a valid IP address.',
'ipv4' => 'The :attribute must be a valid IPv4 address.',
'ipv6' => 'The :attribute must be a valid IPv6 address.',
'json' => 'The :attribute must be a valid JSON string.',
'max' => [
'numeric' => 'The :attribute may not be greater than :max.',
'file' => 'The :attribute may not be greater than :max kilobytes.',
'string' => 'The :attribute may not be greater than :max characters.',
'array' => 'The :attribute may not have more than :max items.',
],
'mimes' => 'The :attribute must be a file of type: :values.',
'mimetypes' => 'The :attribute must be a file of type: :values.',
'min' => [
'numeric' => 'The :attribute must be at least :min.',
'file' => 'The :attribute must be at least :min kilobytes.',
'string' => 'The :attribute must be at least :min characters.',
'array' => 'The :attribute must have at least :min items.',
],
'not_in' => 'The selected :attribute is invalid.',
'numeric' => 'The :attribute must be a number.',
'present' => 'The :attribute field must be present.',
'regex' => 'The :attribute format is invalid.',
'required' => 'The :attribute field is required.',
'required_if' => 'The :attribute field is required when :other is :value.',
'required_unless' => 'The :attribute field is required unless :other is in :values.',
'required_with' => 'The :attribute field is required when :values is present.',
'required_with_all' => 'The :attribute field is required when :values is present.',
'required_without' => 'The :attribute field is required when :values is not present.',
'required_without_all' => 'The :attribute field is required when none of :values are present.',
'same' => 'The :attribute and :other must match.',
'size' => [
'numeric' => 'The :attribute must be :size.',
'file' => 'The :attribute must be :size kilobytes.',
'string' => 'The :attribute must be :size characters.',
'array' => 'The :attribute must contain :size items.',
],
'string' => 'The :attribute must be a string.',
'timezone' => 'The :attribute must be a valid zone.',
'unique' => 'The :attribute has already been taken.',
'uploaded' => 'The :attribute failed to upload.',
'url' => 'The :attribute format is invalid.',
/*
|--------------------------------------------------------------------------
| 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.
|
*/
/*
@@ -82,8 +111,14 @@ return array(
|
*/
'custom' => array(),
'alpha_space' => "The :attribute field contains a character that is not allowed.",
'custom' => [
'alpha_space' => "The :attribute field contains a character that is not allowed.",
"email_array" => "One or more email addresses is invalid.",
"hashed_pass" => "Your current password is incorrect",
'dumbpwd' => 'That password is too common.',
"statuslabel_type" => "You must select a valid status label type",
"unique_undeleted" => "The :attribute must be unique.",
],
/*
|--------------------------------------------------------------------------
@@ -96,6 +131,6 @@ return array(
|
*/
'attributes' => array(),
'attributes' => [],
);
@@ -12,8 +12,8 @@
'success' => 'تم إنشاء سند صيانة الأصل بنجاح.'
],
'edit' => [
'error' => 'Asset Maintenance was not created, please try again.',
'success' => 'Asset Maintenance created successfully.'
'error' => 'Asset Maintenance was not edited, please try again.',
'success' => 'Asset Maintenance edited successfully.'
],
'asset_maintenance_incomplete' => 'لم يكتمل بعد',
'warranty' => 'الضمان',
@@ -28,7 +28,7 @@ return array(
'fieldset' => array(
'does_not_exist' => 'Fieldset does not exist',
'does_not_exist' => 'مجموعة الحقول غير موجودة',
'create' => array(
'error' => 'لم يتم إنشاء مجموعة-الحقول، الرجاء المحاولة مرة اخرى.',
@@ -2,20 +2,20 @@
return array(
'does_not_exist' => 'Department does not exist.',
'assoc_users' => 'This department is currently associated with at least one user and cannot be deleted. Please update your users to no longer reference this department and try again. ',
'does_not_exist' => 'القسم الاداري غير موجود.',
'assoc_users' => 'هذا القسم الإداري مرتبط حاليا مع مستخدم واحد على الأقل ولا يمكن حذفه. الرجاء تحديث تفاصيل المستخدمين حيث لا تحتوي هذا القسم وحاول مرة أخرى. ',
'create' => array(
'error' => 'Department was not created, please try again.',
'success' => 'Department created successfully.'
'error' => 'لم يتم إنشاء القسم الإداري، الرجاء المحاولة مرة أخرى.',
'success' => 'تم انشاء القسم الاداري بنجاح.'
),
'update' => array(
'error' => 'Department was not updated, please try again',
'success' => 'Department updated successfully.'
'error' => 'لم يتم تحديث القسم الإداري، الرجاء المحاولة مرة أخرى',
'success' => 'تم تحديث القسم الاداري بنجاح.'
),
'delete' => array(
'confirm' => 'Are you sure you wish to delete this department?',
'error' => 'There was an issue deleting the department. Please try again.',
'success' => 'The department was deleted successfully.'
'confirm' => 'هل أنت متأكد من رغبتك في حذف هذا القسم؟',
'error' => 'حدثت مشكلة اثناء عملية حذف القسم الاداري. الرجاء المحاولة مرة اُخرى.',
'success' => 'تم حذف القسم الاداري بنجاح.'
)
);
@@ -2,10 +2,10 @@
return array(
'id' => 'ID',
'name' => 'Department Name',
'manager' => 'Manager',
'location' => 'Location',
'create' => 'Create Department',
'update' => 'Update Department',
'id' => 'رقم التعريف',
'name' => 'اسم القسم الإداري',
'manager' => 'المدير',
'location' => 'الموقع',
'create' => 'إنشاء قسم اداري',
'update' => 'تحديث قسم اداري',
);
+3 -3
View File
@@ -2,9 +2,9 @@
return array(
'bulk_delete' => 'تاكيد إجراء حذف متعدد للاُصول',
'bulk_delete_help' => 'Review the assets for bulk deletion below. Once deleted, these assets can be restored, but they will no longer be associated with any users they are currently assigned to.',
'bulk_delete_warn' => 'You are about to delete :asset_count assets.',
'bulk_update' => 'Bulk Update Assets',
'bulk_delete_help' => 'الرجاء مراجعة الأصول المعينة للحذف بالجملة أدناه. بمجرد الحذف، يمكن استعادة هذه الأصول، لكنها لن تكون مقترنة مع أي من المستخدمين اللذين تم تعيين الاصول لهم من قبل.',
'bulk_delete_warn' => 'أنت على وشك حذف اصول asset_count: .',
'bulk_update' => 'تحديث الاصول بالجملة',
'bulk_update_help' => 'This form allows you to update multiple assets at once. Only fill in the fields you need to change. Any fields left blank will remain unchanged. ',
'bulk_update_warn' => 'You are about to edit the properties of :asset_count assets.',
'checkedout_to' => 'Checked Out To',
+1 -1
View File
@@ -7,7 +7,7 @@ return array(
'asset' => 'أصل',
'bulk_checkout' => 'Checkout Assets to User',
'checkin' => 'Checkin Asset',
'checkout' => 'Checkout Asset to User',
'checkout' => 'Checkout Asset',
'clone' => 'استنساخ الأصل',
'deployable' => 'قابل للنشر',
'deleted' => 'This asset has been deleted. <a href="/hardware/:asset_id/restore">Click here to restore it</a>.',
@@ -24,6 +24,12 @@ return array(
'success' => 'Asset restored successfully.'
),
'audit' => array(
'error' => 'Asset audit was unsuccessful. Please try again.',
'success' => 'Asset audit successfully logged.'
),
'deletefile' => array(
'error' => 'لم يتم حذف الملف. الرجاء المحاولة مرة اخرى.',
'success' => 'تم حذف الملف بنجاح.',
@@ -10,6 +10,10 @@ return array(
'alert_interval' => 'Expiring Alerts Threshold (in days)',
'alert_inv_threshold' => 'Inventory Alert Threshold',
'asset_ids' => 'Asset IDs',
'audit_interval' => 'Audit Interval',
'audit_interval_help' => 'If you are required to regularly physically audit your assets, enter the interval in months.',
'audit_warning_days' => 'Audit Warning Threshold',
'audit_warning_days_help' => 'How many days in advance should we warn you when assets are due for auditing?',
'auto_increment_assets' => 'Generate auto-incrementing asset IDs',
'auto_increment_prefix' => 'البادئة (اختياري)',
'auto_incrementing_help' => 'Enable auto-incrementing asset IDs first to set this',
@@ -13,6 +13,7 @@ return array(
'filetype_info' => 'انواع صيغ الملفات المسوح بها هي png, gif, jpg, jpeg, doc, docx, pdf, txt, zip, and rar.',
'history_user' => 'الأرشيف الخاص بـ :name',
'info' => 'Info',
'restore_user' => 'Click here to restore them.',
'last_login' => 'آخر دخول للمستخدم',
'ldap_config_text' => 'LDAP configuration settings can be found Admin > Settings. The (optional) selected location will be set for all imported users.',
'software_user' => 'البرامج المسجلة لـ :name',
+8
View File
@@ -18,11 +18,15 @@
'asset_report' => 'Asset Report',
'asset_tag' => 'وسم الأصول',
'assets_available' => 'الأصول المتاحة',
'audit' => 'Audit',
'audit_report' => 'Audit Log',
'assets' => 'الأصول',
'avatar_delete' => 'حذف الصورة الرمزية',
'avatar_upload' => 'رفع صورة رمزية',
'back' => 'الرجوع للخلف',
'bad_data' => 'Nothing found. Maybe bad data?',
'bulkaudit' => 'Bulk Audit',
'bulkaudit_status' => 'Audit Status',
'bulk_checkout' => 'Bulk Checkout',
'cancel' => 'إلغاء',
'categories' => 'التصنيفات',
@@ -52,6 +56,8 @@
'current' => 'الحالي',
'custom_report' => 'Custom Asset Report',
'dashboard' => 'Dashboard',
'days' => 'days',
'days_to_next_audit' => 'Days to Next Audit',
'date' => 'التاريخ',
'debug_warning' => 'Warning!',
'debug_warning_text' => 'This application is running in production mode with debugging enabled. This can expose sensitive data if your application is accessible to the outside world. Disable debug mode by setting the <code>APP_DEBUG</code> value in your <code>.env</code> file to <code>false</code>.',
@@ -117,6 +123,8 @@
'moreinfo' => 'المزيد من المعلومات',
'name' => 'الإسم',
'next' => 'Next',
'next_audit_date' => 'Next Audit Date',
'last_audit' => 'Last Audit',
'new' => 'new!',
'no_depreciation' => 'لا يوجد إستهلاك',
'no_results' => 'لا يوجد نتائج.',
+94 -59
View File
@@ -13,62 +13,91 @@ return array(
|
*/
"accepted" => ":attribute يجب ان يكون مقبولا.",
"active_url" => ":attribute موقع غير صحيح.",
"after" => ":attribute يجب ان يكون تاريخ قبل :date.",
"alpha" => "The :attribute may only contain letters.",
"alpha_dash" => "The :attribute may only contain letters, numbers, and dashes.",
"alpha_num" => "The :attribute may only contain letters and numbers.",
"before" => ":attribute يجب ان يكون تاريخ قبل :date.",
"between" => array(
"numeric" => ":attribute يجب ان يكون بين :min - :max.",
"file" => "The :attribute must be between :min - :max kilobytes.",
"string" => "The :attribute must be between :min - :max characters.",
),
"boolean" => "The :attribute must be true or false.",
"confirmed" => "The :attribute confirmation does not match.",
"date" => ":attribute تاريخ غير صحيح.",
"date_format" => "The :attribute does not match the format :format.",
"different" => "The :attribute and :other must be different.",
"digits" => "The :attribute must be :digits digits.",
"digits_between" => "The :attribute must be between :min and :max digits.",
"email" => "The :attribute format is invalid.",
"exists" => "The selected :attribute is invalid.",
"email_array" => "One or more email addresses is invalid.",
"hashed_pass" => "Your current password is incorrect",
'dumbpwd' => 'That password is too common.',
"image" => "The :attribute must be an image.",
"in" => "The selected :attribute is invalid.",
"integer" => "The :attribute must be an integer.",
"ip" => "The :attribute must be a valid IP address.",
"max" => array(
"numeric" => "The :attribute may not be greater than :max.",
"file" => "The :attribute may not be greater than :max kilobytes.",
"string" => "The :attribute may not be greater than :max characters.",
),
"mimes" => "The :attribute must be a file of type: :values.",
"min" => array(
"numeric" => "The :attribute must be at least :min.",
"file" => "The :attribute must be at least :min kilobytes.",
"string" => "The :attribute must be at least :min characters.",
),
"not_in" => "The selected :attribute is invalid.",
"numeric" => "The :attribute must be a number.",
"regex" => "The :attribute format is invalid.",
"required" => "The :attribute field is required.",
"required_if" => "The :attribute field is required when :other is :value.",
"required_with" => "The :attribute field is required when :values is present.",
"required_without" => "The :attribute field is required when :values is not present.",
"same" => "The :attribute and :other must match.",
"size" => array(
"numeric" => "The :attribute must be :size.",
"file" => "The :attribute must be :size kilobytes.",
"string" => "The :attribute must be :size characters.",
),
"unique" => "The :attribute has already been taken.",
"url" => "The :attribute format is invalid.",
"statuslabel_type" => "You must select a valid status label type",
"unique_undeleted" => "The :attribute must be unique.",
'accepted' => ':attribute يجب ان يكون مقبولا.',
'active_url' => ':attribute موقع غير صحيح.',
'after' => ':attribute يجب ان يكون تاريخ قبل :date.',
'after_or_equal' => 'The :attribute must be a date after or equal to :date.',
'alpha' => 'The :attribute may only contain letters.',
'alpha_dash' => 'The :attribute may only contain letters, numbers, and dashes.',
'alpha_num' => 'The :attribute may only contain letters and numbers.',
'array' => 'The :attribute must be an array.',
'before' => ':attribute يجب ان يكون تاريخ قبل :date.',
'before_or_equal' => 'The :attribute must be a date before or equal to :date.',
'between' => [
'numeric' => ':attribute يجب ان يكون بين :min - :max.',
'file' => 'The :attribute must be between :min and :max kilobytes.',
'string' => 'The :attribute must be between :min and :max characters.',
'array' => 'The :attribute must have between :min and :max items.',
],
'boolean' => 'The :attribute field must be true or false.',
'confirmed' => 'The :attribute confirmation does not match.',
'date' => ':attribute تاريخ غير صحيح.',
'date_format' => 'The :attribute does not match the format :format.',
'different' => 'The :attribute and :other must be different.',
'digits' => 'The :attribute must be :digits digits.',
'digits_between' => 'The :attribute must be between :min and :max digits.',
'dimensions' => 'The :attribute has invalid image dimensions.',
'distinct' => 'The :attribute field has a duplicate value.',
'email' => 'The :attribute must be a valid email address.',
'exists' => 'The selected :attribute is invalid.',
'file' => 'The :attribute must be a file.',
'filled' => 'The :attribute field must have a value.',
'image' => 'The :attribute must be an image.',
'in' => 'The selected :attribute is invalid.',
'in_array' => 'The :attribute field does not exist in :other.',
'integer' => 'The :attribute must be an integer.',
'ip' => 'The :attribute must be a valid IP address.',
'ipv4' => 'The :attribute must be a valid IPv4 address.',
'ipv6' => 'The :attribute must be a valid IPv6 address.',
'json' => 'The :attribute must be a valid JSON string.',
'max' => [
'numeric' => 'The :attribute may not be greater than :max.',
'file' => 'The :attribute may not be greater than :max kilobytes.',
'string' => 'The :attribute may not be greater than :max characters.',
'array' => 'The :attribute may not have more than :max items.',
],
'mimes' => 'The :attribute must be a file of type: :values.',
'mimetypes' => 'The :attribute must be a file of type: :values.',
'min' => [
'numeric' => 'The :attribute must be at least :min.',
'file' => 'The :attribute must be at least :min kilobytes.',
'string' => 'The :attribute must be at least :min characters.',
'array' => 'The :attribute must have at least :min items.',
],
'not_in' => 'The selected :attribute is invalid.',
'numeric' => 'The :attribute must be a number.',
'present' => 'The :attribute field must be present.',
'regex' => 'The :attribute format is invalid.',
'required' => 'The :attribute field is required.',
'required_if' => 'The :attribute field is required when :other is :value.',
'required_unless' => 'The :attribute field is required unless :other is in :values.',
'required_with' => 'The :attribute field is required when :values is present.',
'required_with_all' => 'The :attribute field is required when :values is present.',
'required_without' => 'The :attribute field is required when :values is not present.',
'required_without_all' => 'The :attribute field is required when none of :values are present.',
'same' => 'The :attribute and :other must match.',
'size' => [
'numeric' => 'The :attribute must be :size.',
'file' => 'The :attribute must be :size kilobytes.',
'string' => 'The :attribute must be :size characters.',
'array' => 'The :attribute must contain :size items.',
],
'string' => 'The :attribute must be a string.',
'timezone' => 'The :attribute must be a valid zone.',
'unique' => 'The :attribute has already been taken.',
'uploaded' => 'The :attribute failed to upload.',
'url' => 'The :attribute format is invalid.',
/*
|--------------------------------------------------------------------------
| 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.
|
*/
/*
@@ -82,8 +111,14 @@ return array(
|
*/
'custom' => array(),
'alpha_space' => "The :attribute field contains a character that is not allowed.",
'custom' => [
'alpha_space' => "The :attribute field contains a character that is not allowed.",
"email_array" => "One or more email addresses is invalid.",
"hashed_pass" => "Your current password is incorrect",
'dumbpwd' => 'That password is too common.',
"statuslabel_type" => "You must select a valid status label type",
"unique_undeleted" => "The :attribute must be unique.",
],
/*
|--------------------------------------------------------------------------
@@ -96,6 +131,6 @@ return array(
|
*/
'attributes' => array(),
'attributes' => [],
);
@@ -12,8 +12,8 @@
'success' => 'Поддръжката на актив създадена успешно.'
],
'edit' => [
'error' => 'Asset Maintenance was not created, please try again.',
'success' => 'Asset Maintenance created successfully.'
'error' => 'Asset Maintenance was not edited, please try again.',
'success' => 'Asset Maintenance edited successfully.'
],
'asset_maintenance_incomplete' => 'Все още неприключила',
'warranty' => 'Гаранция',
@@ -2,10 +2,10 @@
return array(
'id' => 'ID',
'id' => 'ИД№',
'name' => 'Department Name',
'manager' => 'Manager',
'location' => 'Location',
'manager' => 'Ръководител',
'location' => 'Местоположение',
'create' => 'Create Department',
'update' => 'Update Department',
);
+1 -1
View File
@@ -7,7 +7,7 @@ return array(
'asset' => 'Актив',
'bulk_checkout' => 'Отписване на активи към потребител',
'checkin' => 'Връщане на актив',
'checkout' => 'Изписване на актив към потребител',
'checkout' => 'Checkout Asset',
'clone' => 'Копиране на актив',
'deployable' => 'Може да бъде предоставен',
'deleted' => 'Активът беше изтрит. <a href="/hardware/:asset_id/restore">Възстановяване</a>.',
@@ -23,6 +23,12 @@ return array(
'success' => 'Активът възстановен успешно.'
),
'audit' => array(
'error' => 'Asset audit was unsuccessful. Please try again.',
'success' => 'Asset audit successfully logged.'
),
'deletefile' => array(
'error' => 'Файлът не беше изтрит. Моля опитайте отново.',
'success' => 'Файлът изтрит успешно.',
+2 -2
View File
@@ -29,8 +29,8 @@ return array(
),
'bulkedit' => array(
'error' => 'No fields were changed, so nothing was updated.',
'success' => 'Models updated.'
'error' => 'Няма полета, който да са се променили, така че нищо не е осъвременено.',
'success' => 'Моделите са осъвременени.'
),
);
@@ -10,6 +10,10 @@ return array(
'alert_interval' => 'Изтичаш праг на известия (в дни)',
'alert_inv_threshold' => 'Праг на известия за запаси',
'asset_ids' => 'ID на активи',
'audit_interval' => 'Audit Interval',
'audit_interval_help' => 'If you are required to regularly physically audit your assets, enter the interval in months.',
'audit_warning_days' => 'Audit Warning Threshold',
'audit_warning_days_help' => 'How many days in advance should we warn you when assets are due for auditing?',
'auto_increment_assets' => 'Автоматично генериране на инвентарни номера на активите',
'auto_increment_prefix' => 'Префикс (незадължително)',
'auto_incrementing_help' => 'Първо включете автоматично генериране на инвентарни номера, за да включите тази опция.',
@@ -13,6 +13,7 @@ return array(
'filetype_info' => 'Позволените типове файлове са png, gif, jpg, jpeg, doc, docx, pdf, txt, zip, и rar.',
'history_user' => 'История за :name',
'info' => 'Информация',
'restore_user' => 'Click here to restore them.',
'last_login' => 'Последен достъп до системата',
'ldap_config_text' => 'LDAP конфигурационните настройки могат да бъдат намерени в Admin > Settings. Избраното (по изобр) местоположение ще бъде настроено за всички въведени потребители.',
'software_user' => 'Софтуерни продукти, изписани на :name',
+1 -1
View File
@@ -19,7 +19,7 @@ return array(
'location' => 'Местоположение',
'lock_passwords' => 'Настройките за вход не могат да бъдат променяни в текущата инсталация.',
'manager' => 'Ръководител',
'managed_locations' => 'Managed Locations',
'managed_locations' => 'Управлявани места',
'name' => 'Име',
'notes' => 'Бележки',
'password_confirm' => 'Потвърждение на паролата',
+9 -1
View File
@@ -18,11 +18,15 @@
'asset_report' => 'Справка за активите',
'asset_tag' => 'Инвентарен номер',
'assets_available' => 'налични активи',
'audit' => 'Audit',
'audit_report' => 'Audit Log',
'assets' => 'Активи',
'avatar_delete' => 'Изтриване на аватар',
'avatar_upload' => 'Качване на аватар',
'back' => 'Назад',
'bad_data' => 'Няма резултати.',
'bulkaudit' => 'Bulk Audit',
'bulkaudit_status' => 'Audit Status',
'bulk_checkout' => 'Общо отписване',
'cancel' => 'Отказ',
'categories' => 'Категории',
@@ -52,6 +56,8 @@
'current' => 'Текущи',
'custom_report' => 'Потребителски справки за активи',
'dashboard' => 'Табло',
'days' => 'days',
'days_to_next_audit' => 'Days to Next Audit',
'date' => 'Дата',
'debug_warning' => 'Предупреждение!',
'debug_warning_text' => 'Това приложение се изпълнява в режим на производство с разрешено отстраняване на грешки. Това може да изложи чувствителни данни, ако приложението ви е достъпно за външния свят. Забранете режим отстраняване на грешки чрез задаване на стойността <code>APP_DEBUF</code> <code>.env</code> във файла <code>false</code>.',
@@ -117,6 +123,8 @@
'moreinfo' => 'Повече информация',
'name' => 'Име',
'next' => 'Следващ',
'next_audit_date' => 'Next Audit Date',
'last_audit' => 'Last Audit',
'new' => 'new!',
'no_depreciation' => 'Без амортизация',
'no_results' => 'Няма резултат.',
@@ -152,7 +160,7 @@
'select_model' => 'Избор на модел',
'select_supplier' => 'Избор на доставчик',
'select_user' => 'Избор на потребител',
'select_date' => 'Select Date (YYYY-MM-DD)',
'select_date' => 'Изберете дата (ГГГГ-ММ-ДД)',
'select_statuslabel' => 'Избор на статус',
'select_company' => 'Изберете компания',
'select_asset' => 'Изберете актив',
+94 -59
View File
@@ -13,62 +13,91 @@ return array(
|
*/
"accepted" => ":attribute трябва да бъде потвърден.",
"active_url" => ":attribute не е валиден URL адрес.",
"after" => ":attribute трябва да бъде дата след :date.",
"alpha" => ":attribute може да съдържа единствено букви.",
"alpha_dash" => ":attribute може да съдържа единствено букви, числа и тире.",
"alpha_num" => ":attribute може да съдържа единствено букви и числа.",
"before" => ":attribute трябва да бъде дата преди :date.",
"between" => array(
"numeric" => ":attribute трябва да бъде между :min и :max.",
"file" => ":attribute трябва да бъде с големина между :min и :max KB.",
"string" => ":attribute трябва да бъде с дължина между :min и :max символа.",
),
"boolean" => ":attribute трябва да е верен или грешен.",
"confirmed" => ":attribute потвърждение не съвпада.",
"date" => ":attribute не е валидна дата.",
"date_format" => ":attribute не съвпада с формата :format.",
"different" => ":attribute и :other трябва да се различават.",
"digits" => ":attribute трябва да бъде с дължина :digits цифри.",
"digits_between" => ":attribute трябва да бъде с дължина между :min и :max цифри.",
"email" => ":attribute е с невалиден формат.",
"exists" => "Избраният :attribute е невалиден.",
"email_array" => "Един или повече email адреси е невалиден.",
"hashed_pass" => "Your current password is incorrect",
'dumbpwd' => 'That password is too common.',
"image" => ":attribute трябва да бъде изображение.",
"in" => "Избраният :attribute е невалиден.",
"integer" => ":attribute трябва да бъде целочислен.",
"ip" => ":attribute трябва да бъде валиден IP адрес.",
"max" => array(
"numeric" => ":attribute не може да бъде по-дълъг от :max.",
"file" => ":attribute не може да бъде по-голям от :max KB.",
"string" => ":attribute не може да бъде по-дълъг от :max символа.",
),
"mimes" => ":attribute трябва да бъде файл с един от следните типове: :values.",
"min" => array(
"numeric" => ":attribute трябва да бъде минимум :min.",
"file" => ":attribute трябва да бъде с големина минимум :min KB.",
"string" => ":attribute трябва да бъде минимум :min символа.",
),
"not_in" => "Избраният :attribute е невалиден.",
"numeric" => ":attribute трябва да бъде число.",
"regex" => "Форматът на :attribute е невалиден.",
"required" => "Полето :attribute е задължително.",
"required_if" => "Полето :attribute е задължително, когато :other е :value.",
"required_with" => ":attribute е задължителен, когато са избрани :values.",
"required_without" => ":attribute е задължителен, когато не са избрани :values.",
"same" => ":attribute и :other трябва да съвпадат.",
"size" => array(
"numeric" => ":attribute трябва да бъде с дължина :size.",
"file" => ":attribute трябва да бъде с големина :size KB.",
"string" => ":attribute трябва да бъде с дължина :size символа.",
),
"unique" => ":attribute вече е вписан.",
"url" => "Форматът на :attribute е невалиден.",
"statuslabel_type" => "Трябва да изберете валиден тип етикет за статус",
"unique_undeleted" => ":attribute трябва да е единствен по рода си.",
'accepted' => ':attribute трябва да бъде потвърден.',
'active_url' => ':attribute не е валиден URL адрес.',
'after' => ':attribute трябва да бъде дата след :date.',
'after_or_equal' => 'The :attribute must be a date after or equal to :date.',
'alpha' => ':attribute може да съдържа единствено букви.',
'alpha_dash' => ':attribute може да съдържа единствено букви, числа и тире.',
'alpha_num' => ':attribute може да съдържа единствено букви и числа.',
'array' => 'The :attribute must be an array.',
'before' => ':attribute трябва да бъде дата преди :date.',
'before_or_equal' => 'The :attribute must be a date before or equal to :date.',
'between' => [
'numeric' => ':attribute трябва да бъде между :min и :max.',
'file' => ':attribute трябва да бъде с големина между :min и :max KB.',
'string' => ':attribute трябва да бъде с дължина между :min и :max символа.',
'array' => 'The :attribute must have between :min and :max items.',
],
'boolean' => ':attribute трябва да е верен или грешен.',
'confirmed' => ':attribute потвърждение не съвпада.',
'date' => ':attribute не е валидна дата.',
'date_format' => ':attribute не съвпада с формата :format.',
'different' => ':attribute и :other трябва да се различават.',
'digits' => ':attribute трябва да бъде с дължина :digits цифри.',
'digits_between' => ':attribute трябва да бъде с дължина между :min и :max цифри.',
'dimensions' => 'The :attribute has invalid image dimensions.',
'distinct' => 'The :attribute field has a duplicate value.',
'email' => ':attribute е с невалиден формат.',
'exists' => 'Избраният :attribute е невалиден.',
'file' => 'The :attribute must be a file.',
'filled' => 'The :attribute field must have a value.',
'image' => ':attribute трябва да бъде изображение.',
'in' => 'Избраният :attribute е невалиден.',
'in_array' => 'The :attribute field does not exist in :other.',
'integer' => ':attribute трябва да бъде целочислен.',
'ip' => ':attribute трябва да бъде валиден IP адрес.',
'ipv4' => 'The :attribute must be a valid IPv4 address.',
'ipv6' => 'The :attribute must be a valid IPv6 address.',
'json' => 'The :attribute must be a valid JSON string.',
'max' => [
'numeric' => ':attribute не може да бъде по-дълъг от :max.',
'file' => ':attribute не може да бъде по-голям от :max KB.',
'string' => ':attribute не може да бъде по-дълъг от :max символа.',
'array' => 'The :attribute may not have more than :max items.',
],
'mimes' => ':attribute трябва да бъде файл с един от следните типове: :values.',
'mimetypes' => 'The :attribute must be a file of type: :values.',
'min' => [
'numeric' => ':attribute трябва да бъде минимум :min.',
'file' => ':attribute трябва да бъде с големина минимум :min KB.',
'string' => ':attribute трябва да бъде минимум :min символа.',
'array' => 'The :attribute must have at least :min items.',
],
'not_in' => 'Избраният :attribute е невалиден.',
'numeric' => ':attribute трябва да бъде число.',
'present' => 'The :attribute field must be present.',
'regex' => 'Форматът на :attribute е невалиден.',
'required' => 'Полето :attribute е задължително.',
'required_if' => 'Полето :attribute е задължително, когато :other е :value.',
'required_unless' => 'The :attribute field is required unless :other is in :values.',
'required_with' => ':attribute е задължителен, когато са избрани :values.',
'required_with_all' => 'The :attribute field is required when :values is present.',
'required_without' => ':attribute е задължителен, когато не са избрани :values.',
'required_without_all' => 'The :attribute field is required when none of :values are present.',
'same' => ':attribute и :other трябва да съвпадат.',
'size' => [
'numeric' => ':attribute трябва да бъде с дължина :size.',
'file' => ':attribute трябва да бъде с големина :size KB.',
'string' => ':attribute трябва да бъде с дължина :size символа.',
'array' => 'The :attribute must contain :size items.',
],
'string' => 'The :attribute must be a string.',
'timezone' => 'The :attribute must be a valid zone.',
'unique' => ':attribute вече е вписан.',
'uploaded' => 'The :attribute failed to upload.',
'url' => 'Форматът на :attribute е невалиден.',
/*
|--------------------------------------------------------------------------
| 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.
|
*/
/*
@@ -82,8 +111,14 @@ return array(
|
*/
'custom' => array(),
'alpha_space' => ":attribute съдържа символи, които са забранени.",
'custom' => [
'alpha_space' => "The :attribute field contains a character that is not allowed.",
"email_array" => "One or more email addresses is invalid.",
"hashed_pass" => "Your current password is incorrect",
'dumbpwd' => 'That password is too common.',
"statuslabel_type" => "You must select a valid status label type",
"unique_undeleted" => "The :attribute must be unique.",
],
/*
|--------------------------------------------------------------------------
@@ -96,6 +131,6 @@ return array(
|
*/
'attributes' => array(),
'attributes' => [],
);
@@ -12,8 +12,8 @@
'success' => 'Údržba zařízení byla v pořádku vytvořena.'
],
'edit' => [
'error' => 'Asset Maintenance was not created, please try again.',
'success' => 'Asset Maintenance created successfully.'
'error' => 'Asset Maintenance was not edited, please try again.',
'success' => 'Asset Maintenance edited successfully.'
],
'asset_maintenance_incomplete' => 'Prozatím nedokončeno',
'warranty' => 'Záruka',
+1 -1
View File
@@ -7,7 +7,7 @@ return array(
'asset' => 'Majetek',
'bulk_checkout' => 'Předat majetek uživateli',
'checkin' => 'Převzít majetek',
'checkout' => 'Předat majetek uživateli',
'checkout' => 'Checkout Asset',
'clone' => 'Klonovat majetek',
'deployable' => 'Připraveno k nasazení',
'deleted' => 'Toto zařízení bylo odstraněno. <a href="/hardware/:asset_id/restore">Klepněte zde pro jeho obnovení</a>.',
@@ -24,6 +24,12 @@ return array(
'success' => 'Majetek byl v pořádku obnoven.'
),
'audit' => array(
'error' => 'Asset audit was unsuccessful. Please try again.',
'success' => 'Asset audit successfully logged.'
),
'deletefile' => array(
'error' => 'Soubor se nesmazal, prosím zkuste to znovu.',
'success' => 'Soubor byl úspěšně smazán.',
@@ -10,6 +10,10 @@ return array(
'alert_interval' => 'Mez upozornění na vypršení (ve dnech)',
'alert_inv_threshold' => 'Mez upozornění skladu',
'asset_ids' => 'ID majetku',
'audit_interval' => 'Audit Interval',
'audit_interval_help' => 'If you are required to regularly physically audit your assets, enter the interval in months.',
'audit_warning_days' => 'Audit Warning Threshold',
'audit_warning_days_help' => 'How many days in advance should we warn you when assets are due for auditing?',
'auto_increment_assets' => 'Vygenerovat zvyšující se ID majetku',
'auto_increment_prefix' => 'Předpona (volitnelná)',
'auto_incrementing_help' => 'Nastavte nejdříve automaticky se zvyšující ID majetku pro nastavení tohoto',
@@ -13,6 +13,7 @@ return array(
'filetype_info' => 'Povolené přílohy: png, gif, jpg, jpeg, doc, docx, pdf, txt, zip, and rar.',
'history_user' => 'Historie:',
'info' => 'Informace',
'restore_user' => 'Click here to restore them.',
'last_login' => 'Poslední přihlášení',
'ldap_config_text' => 'Nastavení konfigurace LDAP lze nalézt v menu Správce> Nastavení. Vybrané (volitelně) místo bude nastaven pro všechny importované uživatele.',
'software_user' => 'Software vydaný pro :name',
+8
View File
@@ -18,11 +18,15 @@
'asset_report' => 'Report majetku',
'asset_tag' => 'Označení majetku',
'assets_available' => 'dostupných zařízení',
'audit' => 'Audit',
'audit_report' => 'Audit Log',
'assets' => 'Zařízení',
'avatar_delete' => 'Smazat avatara',
'avatar_upload' => 'Nahrát avatara',
'back' => 'Zpět',
'bad_data' => 'Nic nebylo nalezeno. Možná zadáváte špatná data?',
'bulkaudit' => 'Bulk Audit',
'bulkaudit_status' => 'Audit Status',
'bulk_checkout' => 'Hromadný výdej',
'cancel' => 'Storno',
'categories' => 'Kategorie',
@@ -52,6 +56,8 @@
'current' => 'Aktuální',
'custom_report' => 'Vlastní report majetku',
'dashboard' => 'Nástěnka',
'days' => 'days',
'days_to_next_audit' => 'Days to Next Audit',
'date' => 'Datum',
'debug_warning' => 'Varování!',
'debug_warning_text' => 'Tato aplikace běží ve výrobním režimu s povoleným laděním. To znamená že citlivá data mohou být přístupná vnějšímu světu. Deaktivujte režim ladění nastavením hodnoty <code>APP_DEBUG</code> v souboru <code>.env</code> na <code>false</code>.',
@@ -117,6 +123,8 @@
'moreinfo' => 'Další informace',
'name' => 'Název',
'next' => 'Další',
'next_audit_date' => 'Next Audit Date',
'last_audit' => 'Last Audit',
'new' => 'nový!',
'no_depreciation' => 'Žádná amortizace',
'no_results' => 'Žádné výsledky.',
+94 -59
View File
@@ -13,62 +13,91 @@ return array(
|
*/
"accepted" => "Je potřeba potvrdit :attribute.",
"active_url" => ":attribute není platnou URL.",
"after" => ":attribute nemůže být dříve než :date.",
"alpha" => ":attribute může obsahovat pouze písmena.",
"alpha_dash" => ":attribute může obsahovat pouze písmena, čísla, a pomlčky.",
"alpha_num" => ":attribute může obsahovat pouze písmena čísla.",
"before" => ":attribute nemůže být později než :date.",
"between" => array(
"numeric" => ":attribute musí být mezi :min - :max.",
"file" => ":attribute musí být mezi :min - :max kilobajtů.",
"string" => ":attribute smí obsahovat pouze :min - :max znaků.",
),
"boolean" => ":attribute musí být true nebo false.",
"confirmed" => "Potvrzení :attribute se neshoduje.",
"date" => ":attribute není platným datem.",
"date_format" => "Atribut :attribute nesouhlasí s formátem :format.",
"different" => ":attribute a :other se musí lišit.",
"digits" => ":attribute musí být :digits číslo.",
"digits_between" => ":attribute musí být mezi hodnotami :min a :max.",
"email" => "Formát :attribute je neplatný.",
"exists" => "Zvolený :attribute je neplatný.",
"email_array" => "Jedna nebo více e-mailových adres je neplatná.",
"hashed_pass" => "Your current password is incorrect",
'dumbpwd' => 'That password is too common.',
"image" => ":attribute musí být obrázek.",
"in" => "Zvolený :attribute je neplatný.",
"integer" => ":attribute musí být celočíselný.",
"ip" => ":attribute musí být platná IP adresa.",
"max" => array(
"numeric" => ":attribute nesmí být větší než :max.",
"file" => ":attribute nesmí být větší než :max kilobajtů.",
"string" => ":attribute nesmí být větší než :max znaků.",
),
"mimes" => ":attribute musí být soubor typu: :values.",
"min" => array(
"numeric" => ":attribute musí být minimálne :min.",
"file" => ":attribute musí být minimálně :min kilobajtů.",
"string" => ":attribute musí mít minimálně :min znaků.",
),
"not_in" => "Zvolený :attribute je neplatný.",
"numeric" => ":attribute musí být číslo.",
"regex" => "Formát :attribute je neplatný.",
"required" => "Pole :attribute je požadováno.",
"required_if" => "Položka :attribute je vyžadována, když :other je :value.",
"required_with" => "Hodnota :attribute je vyžadována, když je přítomno :values.",
"required_without" => "Hodnota :attribute je vyžadována, když není přítomno :values.",
"same" => ":attribute a :other se musí shodovat.",
"size" => array(
"numeric" => ":attribute musí být :size.",
"file" => ":attribute musí být :size kilobajtů.",
"string" => ":attribute musí mít :size znaků.",
),
"unique" => ":attribute byl již vybrán.",
"url" => "Formát :attribute je neplatný.",
"statuslabel_type" => "Musíte vybrat platný status typu štítku",
"unique_undeleted" => ":attribute musí být jedinečný.",
'accepted' => 'Je potřeba potvrdit :attribute.',
'active_url' => ':attribute není platnou URL.',
'after' => ':attribute nemůže být dříve než :date.',
'after_or_equal' => 'The :attribute must be a date after or equal to :date.',
'alpha' => ':attribute může obsahovat pouze písmena.',
'alpha_dash' => ':attribute může obsahovat pouze písmena, čísla, a pomlčky.',
'alpha_num' => ':attribute může obsahovat pouze písmena čísla.',
'array' => 'The :attribute must be an array.',
'before' => ':attribute nemůže být později než :date.',
'before_or_equal' => 'The :attribute must be a date before or equal to :date.',
'between' => [
'numeric' => ':attribute musí být mezi :min - :max.',
'file' => ':attribute musí být mezi :min - :max kilobajtů.',
'string' => ':attribute smí obsahovat pouze :min - :max znaků.',
'array' => 'The :attribute must have between :min and :max items.',
],
'boolean' => ':attribute musí být true nebo false.',
'confirmed' => 'Potvrzení :attribute se neshoduje.',
'date' => ':attribute není platným datem.',
'date_format' => 'Atribut :attribute nesouhlasí s formátem :format.',
'different' => ':attribute a :other se musí lišit.',
'digits' => ':attribute musí být :digits číslo.',
'digits_between' => ':attribute musí být mezi hodnotami :min a :max.',
'dimensions' => 'The :attribute has invalid image dimensions.',
'distinct' => 'The :attribute field has a duplicate value.',
'email' => 'Formát :attribute je neplatný.',
'exists' => 'Zvolený :attribute je neplatný.',
'file' => 'The :attribute must be a file.',
'filled' => 'The :attribute field must have a value.',
'image' => ':attribute musí být obrázek.',
'in' => 'Zvolený :attribute je neplatný.',
'in_array' => 'The :attribute field does not exist in :other.',
'integer' => ':attribute musí být celočíselný.',
'ip' => ':attribute musí být platná IP adresa.',
'ipv4' => 'The :attribute must be a valid IPv4 address.',
'ipv6' => 'The :attribute must be a valid IPv6 address.',
'json' => 'The :attribute must be a valid JSON string.',
'max' => [
'numeric' => ':attribute nesmí být větší než :max.',
'file' => ':attribute nesmí být větší než :max kilobajtů.',
'string' => ':attribute nesmí být větší než :max znaků.',
'array' => 'The :attribute may not have more than :max items.',
],
'mimes' => ':attribute musí být soubor typu: :values.',
'mimetypes' => 'The :attribute must be a file of type: :values.',
'min' => [
'numeric' => ':attribute musí být minimálne :min.',
'file' => ':attribute musí být minimálně :min kilobajtů.',
'string' => ':attribute musí mít minimálně :min znaků.',
'array' => 'The :attribute must have at least :min items.',
],
'not_in' => 'Zvolený :attribute je neplatný.',
'numeric' => ':attribute musí být číslo.',
'present' => 'The :attribute field must be present.',
'regex' => 'Formát :attribute je neplatný.',
'required' => 'Pole :attribute je požadováno.',
'required_if' => 'Položka :attribute je vyžadována, když :other je :value.',
'required_unless' => 'The :attribute field is required unless :other is in :values.',
'required_with' => 'Hodnota :attribute je vyžadována, když je přítomno :values.',
'required_with_all' => 'The :attribute field is required when :values is present.',
'required_without' => 'Hodnota :attribute je vyžadována, když není přítomno :values.',
'required_without_all' => 'The :attribute field is required when none of :values are present.',
'same' => ':attribute a :other se musí shodovat.',
'size' => [
'numeric' => ':attribute musí být :size.',
'file' => ':attribute musí být :size kilobajtů.',
'string' => ':attribute musí mít :size znaků.',
'array' => 'The :attribute must contain :size items.',
],
'string' => 'The :attribute must be a string.',
'timezone' => 'The :attribute must be a valid zone.',
'unique' => ':attribute byl již vybrán.',
'uploaded' => 'The :attribute failed to upload.',
'url' => 'Formát :attribute je neplatný.',
/*
|--------------------------------------------------------------------------
| 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.
|
*/
/*
@@ -82,8 +111,14 @@ return array(
|
*/
'custom' => array(),
'alpha_space' => "Pole :attribute obsahuje nepovolené znaky.",
'custom' => [
'alpha_space' => "The :attribute field contains a character that is not allowed.",
"email_array" => "One or more email addresses is invalid.",
"hashed_pass" => "Your current password is incorrect",
'dumbpwd' => 'That password is too common.',
"statuslabel_type" => "You must select a valid status label type",
"unique_undeleted" => "The :attribute must be unique.",
],
/*
|--------------------------------------------------------------------------
@@ -96,6 +131,6 @@ return array(
|
*/
'attributes' => array(),
'attributes' => [],
);
@@ -1,14 +1,14 @@
<?php
return [
'asset_maintenance_type' => 'Maintenance Type',
'title' => 'Title',
'start_date' => 'Started',
'completion_date' => 'Completed',
'cost' => 'Cost',
'is_warranty' => 'Warranty Improvement',
'asset_maintenance_time' => 'Days',
'notes' => 'Notes',
'update' => 'Update',
'create' => 'Create'
'asset_maintenance_type' => 'Vedligeholdelsestype',
'title' => 'Titel',
'start_date' => 'Start dato',
'completion_date' => 'Gennemført',
'cost' => 'Omkostninger',
'is_warranty' => 'Garantiforbedring',
'asset_maintenance_time' => 'Dage',
'notes' => 'Noter',
'update' => 'Opdatering',
'create' => 'Opret'
];
@@ -1,11 +1,11 @@
<?php
return [
'asset_maintenances' => 'Asset Maintenances',
'edit' => 'Edit Asset Maintenance',
'delete' => 'Delete Asset Maintenance',
'view' => 'View Asset Maintenance Details',
'repair' => 'Repair',
'maintenance' => 'Maintenance',
'upgrade' => 'Upgrade'
'asset_maintenances' => 'Aktiv vedligeholdelse',
'edit' => 'Redigere aktiv vedligeholdelse',
'delete' => 'Slette aktiv vedligeholdelse',
'view' => 'Se aktiv vedligeholdelse detaljer',
'repair' => 'Repar',
'maintenance' => 'Vedligeholdelse',
'upgrade' => 'Opgradér'
];
@@ -12,8 +12,8 @@
'success' => 'Aktivets vedligeholdelse blev oprettet med succes.'
],
'edit' => [
'error' => 'Asset Maintenance was not created, please try again.',
'success' => 'Asset Maintenance created successfully.'
'error' => 'Asset Maintenance was not edited, please try again.',
'success' => 'Asset Maintenance edited successfully.'
],
'asset_maintenance_incomplete' => 'Ikke afsluttet endnu',
'warranty' => 'Garanti',
@@ -3,6 +3,6 @@
return [
'title' => 'Asset Maintenance',
'asset_name' => 'Asset Name',
'is_warranty' => 'Warranty',
'dl_csv' => 'Download CSV'
'is_warranty' => 'Garanti',
'dl_csv' => 'Hent CSV'
];
@@ -1,6 +1,6 @@
<?php
return [
'about_companies_title' => 'About Companies',
'about_companies_text' => 'Companies can be used as a simple identifier field, or can be used to limit visibility of assets, users, etc if full company support is enabled in your Admin settings.',
'select_company' => 'Select Company',
'about_companies_title' => 'Om virksomheder',
'about_companies_text' => 'Virksomheder kan bruges som en simpel id-felt, eller kan bruges til at begrænse synligheden af aktiver, brugere, osv. hvis fuld selskab understøttelse er aktiveret i din Admin indstillinger.',
'select_company' => 'Vælg firma',
];
@@ -1,18 +1,18 @@
<?php
return array(
'does_not_exist' => 'Company does not exist.',
'assoc_users' => 'This company is currently associated with at least one model and cannot be deleted. Please update your models to no longer reference this company and try again. ',
'does_not_exist' => 'Virksomheden eksisterer ikke.',
'assoc_users' => 'Denne virksomhed er knyttet til mindst én model og kan ikke slettes. Opdater venligst dine modeller for at ikke længere henvise til dette selskab, og prøv igen. ',
'create' => array(
'error' => 'Company was not created, please try again.',
'success' => 'Company created successfully.'
'error' => 'Virksomheden blev ikke oprettet, prøve igen.',
'success' => 'Virksomhed oprettet.'
),
'update' => array(
'error' => 'Company was not updated, please try again',
'success' => 'Company updated successfully.'
'error' => 'Virksomheden blev ikke opdateret, prøv igen',
'success' => 'Virksomheden blev opdateret.'
),
'delete' => array(
'confirm' => 'Are you sure you wish to delete this company?',
'error' => 'There was an issue deleting the company. Please try again.',
'success' => 'The Company was deleted successfully.'
'confirm' => 'Er du sikker på du vil slette denne virksomhed?',
'error' => 'Der opstod et problem under sletning af virksomheden. Prøv igen.',
'success' => 'Virksomheden blev slettet.'
)
);
+5 -5
View File
@@ -1,9 +1,9 @@
<?php
return array(
'companies' => 'Companies',
'create' => 'Create Company',
'title' => 'Company',
'update' => 'Update Company',
'name' => 'Company Name',
'companies' => 'Virksomheder',
'create' => 'Oprette virksomhed',
'title' => 'Virksomheden',
'update' => 'Opdater virksomhed',
'name' => 'Virksomhedens navn',
'id' => 'ID',
);
@@ -1,30 +1,30 @@
<?php
return array(
'custom_fields' => 'Custom Fields',
'field' => 'Field',
'about_fieldsets_title' => 'About Fieldsets',
'custom_fields' => 'Brugerdefinerede felter',
'field' => 'Felt',
'about_fieldsets_title' => 'Om Feltsæt',
'about_fieldsets_text' => 'Fieldsets allow you to create groups of custom fields that are frequently re-used used for specific asset model types.',
'custom_format' => 'Custom format...',
'encrypt_field' => 'Encrypt the value of this field in the database',
'encrypt_field_help' => 'WARNING: Encrypting a field makes it unsearchable.',
'encrypted' => 'Encrypted',
'fieldset' => 'Fieldset',
'qty_fields' => 'Qty Fields',
'fieldsets' => 'Fieldsets',
'fieldset_name' => 'Fieldset Name',
'field_name' => 'Field Name',
'field_values' => 'Field Values',
'custom_format' => 'Brugerdefineret format...',
'encrypt_field' => 'Kryptere værdien af dette felt i databasen',
'encrypt_field_help' => 'Advarsel: Kryptere et felt gør det uransagelige.',
'encrypted' => 'Krypteret',
'fieldset' => 'Feltsæt',
'qty_fields' => 'Antal felter',
'fieldsets' => 'Feltsæt',
'fieldset_name' => 'Feltsættets navn',
'field_name' => 'Feltnavn',
'field_values' => 'Feltværdier',
'field_values_help' => 'Add selectable options, one per line. Blank lines other than the first line will be ignored.',
'field_element' => 'Form Element',
'field_element' => 'Form-elementet',
'field_element_short' => 'Element',
'field_format' => 'Format',
'field_custom_format' => 'Custom Format',
'required' => 'Required',
'field_custom_format' => 'Brugerdefineret Format',
'required' => 'Påkrævet',
'req' => 'Req.',
'used_by_models' => 'Used By Models',
'order' => 'Order',
'create_fieldset' => 'New Fieldset',
'create_field' => 'New Custom Field',
'value_encrypted' => 'The value of this field is encrypted in the database. Only admin users will be able to view the decrypted value',
'used_by_models' => 'Bruges af modeller',
'order' => 'Ordre',
'create_fieldset' => 'Nyt Feltsæt',
'create_field' => 'Nyt Brugerdefinerede Felt',
'value_encrypted' => 'Værdien af dette felt er krypteret i databasen. Kun admins vil være i stand til at se den krypteret værdi',
);
@@ -3,48 +3,48 @@
return array(
'field' => array(
'invalid' => 'That field does not exist.',
'already_added' => 'Field already added',
'invalid' => 'Dette felt findes ikke.',
'already_added' => 'Feltet allerede tilføjet',
'create' => array(
'error' => 'Field was not created, please try again.',
'success' => 'Field created successfully.',
'assoc_success' => 'Field successfully added to fieldset.'
'error' => 'Feltet blev ikke oprettet, prøve igen.',
'success' => 'Feltet oprettet.',
'assoc_success' => 'Felt tilføjet til feltsættet.'
),
'update' => array(
'error' => 'Field was not updated, please try again',
'success' => 'Field updated successfully.'
'error' => 'Feltet blev ikke opdateret, prøv igen',
'success' => 'Feltet opdateret.'
),
'delete' => array(
'confirm' => 'Are you sure you wish to delete this field?',
'error' => 'There was an issue deleting the field. Please try again.',
'success' => 'The field was deleted successfully.',
'in_use' => 'Field is still in use.',
'confirm' => 'Er du sikker på du ønsker at slette feltet?',
'error' => 'Der opstod et problem under sletning af feltet. Prøv venligst igen.',
'success' => 'Feltet blev slettet.',
'in_use' => 'Feltet er stadig i brug.',
)
),
'fieldset' => array(
'does_not_exist' => 'Fieldset does not exist',
'does_not_exist' => 'Feltsættet findes ikke',
'create' => array(
'error' => 'Fieldset was not created, please try again.',
'success' => 'Fieldset created successfully.'
'error' => 'Feltsættet blev ikke opdateret, prøv igen.',
'success' => 'Feltsættet oprettet.'
),
'update' => array(
'error' => 'Fieldset was not updated, please try again',
'success' => 'Fieldset updated successfully.'
'error' => 'Feltsættet blev ikke opdateret, prøv igen',
'success' => 'Feltsættet opdateret.'
),
'delete' => array(
'confirm' => 'Are you sure you wish to delete this fieldset?',
'error' => 'There was an issue deleting the fieldset. Please try again.',
'success' => 'The fieldset was deleted successfully.',
'in_use' => 'Fieldset is still in use.',
'confirm' => 'Er du sikker på du vil slette dette feltsæt?',
'error' => 'Der opstod et problem under sletning af feltsættet. Prøv venligst igen.',
'success' => 'Feltsættet blev slettet.',
'in_use' => 'Feltsættet er stadig i brug.',
)
),
@@ -2,20 +2,20 @@
return array(
'does_not_exist' => 'Department does not exist.',
'assoc_users' => 'This department is currently associated with at least one user and cannot be deleted. Please update your users to no longer reference this department and try again. ',
'does_not_exist' => 'Afdeling findes ikke.',
'assoc_users' => 'Denne afdeling er i øjeblikket knyttet til mindst én bruger og kan ikke slettes. Opdater venligst dine brugere for at ikke længere referere til denne afdeling, og prøv igen. ',
'create' => array(
'error' => 'Department was not created, please try again.',
'success' => 'Department created successfully.'
'error' => 'Afdelingen blev ikke oprettet, prøve igen.',
'success' => 'Afdeling oprettet.'
),
'update' => array(
'error' => 'Department was not updated, please try again',
'success' => 'Department updated successfully.'
'error' => 'Afdelingen blev ikke opdateret, prøv igen',
'success' => 'Afdeling opdateret.'
),
'delete' => array(
'confirm' => 'Are you sure you wish to delete this department?',
'error' => 'There was an issue deleting the department. Please try again.',
'success' => 'The department was deleted successfully.'
'confirm' => 'Er du sikker på du vil slette denne afdeling?',
'error' => 'Der var et problem sletningen af afdelingen. Prøv venligst igen.',
'success' => 'Afdelingen blev slettet.'
)
);
@@ -3,9 +3,9 @@
return array(
'id' => 'ID',
'name' => 'Department Name',
'name' => 'Afdelingsnavn',
'manager' => 'Manager',
'location' => 'Location',
'create' => 'Create Department',
'update' => 'Update Department',
'location' => 'Placering',
'create' => 'Oprette afdeling',
'update' => 'Opdater afdeling',
);
+4 -4
View File
@@ -1,11 +1,11 @@
<?php
return array(
'about_groups_title' => 'About Groups',
'about_groups' => 'Groups are used to generalize user permissions.',
'about_groups_title' => 'Om grupper',
'about_groups' => 'Grupper bruges til at generalisere brugertilladelser.',
'group_management' => 'Gruppehåndtering',
'create' => 'Create New Group',
'update' => 'Edit Group',
'create' => 'Opret Ny Gruppe',
'update' => 'Rediger Gruppe',
'group_name' => 'Gruppenavn',
'group_admin' => 'Gruppeadministrator',
'allow' => 'Tillad',
+1 -1
View File
@@ -7,7 +7,7 @@ return array(
'asset' => 'Asset',
'bulk_checkout' => 'Checkout Assets to User',
'checkin' => 'Checkin Asset',
'checkout' => 'Checkout Asset to User',
'checkout' => 'Checkout Asset',
'clone' => 'Clone Asset',
'deployable' => 'Deployable',
'deleted' => 'This asset has been deleted. <a href="/hardware/:asset_id/restore">Click here to restore it</a>.',
@@ -24,6 +24,12 @@ return array(
'success' => 'Asset restored successfully.'
),
'audit' => array(
'error' => 'Asset audit was unsuccessful. Please try again.',
'success' => 'Asset audit successfully logged.'
),
'deletefile' => array(
'error' => 'File not deleted. Please try again.',
'success' => 'File successfully deleted.',
+7 -7
View File
@@ -1,21 +1,21 @@
<?php
return array(
'about_licenses_title' => 'About Licenses',
'about_licenses_title' => 'Om licenser',
'about_licenses' => 'Licenses are used to track software. They have a specified number of seats that can be checked out to individuals',
'checkin' => 'Checkin License Seat',
'checkout_history' => 'Checkout History',
'checkout' => 'Checkout License Seat',
'edit' => 'Edit License',
'edit' => 'Redigere licens',
'filetype_info' => 'Allowed filetypes are png, gif, jpg, jpeg, doc, docx, pdf, txt, zip, and rar.',
'clone' => 'Clone License',
'clone' => 'Klon licens',
'history_for' => 'History for ',
'in_out' => 'In/Out',
'info' => 'License Info',
'info' => 'Licens Info',
'license_seats' => 'License Seats',
'seat' => 'Seat',
'seats' => 'Seats',
'software_licenses' => 'Software Licenses',
'user' => 'User',
'view' => 'View License',
'software_licenses' => 'Softwarelicenser',
'user' => 'Bruger',
'view' => 'Se licens',
);
@@ -10,6 +10,10 @@ return array(
'alert_interval' => 'Expiring Alerts Threshold (in days)',
'alert_inv_threshold' => 'Inventory Alert Threshold',
'asset_ids' => 'Asset IDs',
'audit_interval' => 'Audit Interval',
'audit_interval_help' => 'If you are required to regularly physically audit your assets, enter the interval in months.',
'audit_warning_days' => 'Audit Warning Threshold',
'audit_warning_days_help' => 'How many days in advance should we warn you when assets are due for auditing?',
'auto_increment_assets' => 'Generate auto-incrementing asset IDs',
'auto_increment_prefix' => 'Prefix (optional)',
'auto_incrementing_help' => 'Enable auto-incrementing asset IDs first to set this',
+11 -10
View File
@@ -3,22 +3,23 @@
return array(
'assets_user' => 'Assets assigned to :name',
'assets_user' => 'Aktiver tildelt :navn',
'bulk_update_warn' => 'You are about to edit the properties of :user_count users. Please note that you cannot change your own user attributes using this form, and must make edits to your own user individually.',
'bulk_update_help' => 'This form allows you to update multiple users at once. Only fill in the fields you need to change. Any fields left blank will remain unchanged.',
'current_assets' => 'Assets currently checked out to this user',
'clone' => 'Clone User',
'contact_user' => 'Contact :name',
'edit' => 'Edit User',
'filetype_info' => 'Allowed filetypes are png, gif, jpg, jpeg, doc, docx, pdf, txt, zip, and rar.',
'clone' => 'Klon bruger',
'contact_user' => 'Kontakt :navn',
'edit' => 'Redigér bruger',
'filetype_info' => 'Tilladte filtyper er png, gif, jpg, jpeg, doc, docx, pdf, txt, zip og rar.',
'history_user' => 'History for :name',
'info' => 'Info',
'last_login' => 'Last Login',
'info' => 'Information',
'restore_user' => 'Klik her for at gendanne dem.',
'last_login' => 'Sidste Login',
'ldap_config_text' => 'LDAP configuration settings can be found Admin > Settings. The (optional) selected location will be set for all imported users.',
'software_user' => 'Software Checked out to :name',
'view_user' => 'View User :name',
'usercsv' => 'CSV file',
'view_user' => 'Se bruger :navn',
'usercsv' => 'CSV-fil',
'two_factor_admin_optin_help' => 'Your current admin settings allow selective enforcement of two-factor authentication. ',
'two_factor_enrolled' => '2FA Device Enrolled ',
'two_factor_active' => '2FA Active ',
'two_factor_active' => '2FA aktiv ',
);
+26 -26
View File
@@ -2,37 +2,37 @@
return array(
'activated' => 'Aktiv',
'allow' => 'Allow',
'checkedout' => 'Assets',
'created_at' => 'Created',
'createuser' => 'Create User',
'deny' => 'Deny',
'allow' => 'Tillad',
'checkedout' => 'Aktiver',
'created_at' => 'Oprettet',
'createuser' => 'Opret bruger',
'deny' => 'Afvis',
'email' => 'Email',
'employee_num' => 'Employee No.',
'first_name' => 'First Name',
'employee_num' => 'Medarbejder nr.',
'first_name' => 'Fornavn',
'groupnotes' => 'Select a group to assign to the user, remember that a user takes on the permissions of the group they are assigned.',
'id' => 'Id',
'id' => 'ID',
'inherit' => 'Inherit',
'job' => 'Job Title',
'last_login' => 'Last Login',
'last_name' => 'Last Name',
'location' => 'Location',
'job' => 'Job Titel',
'last_login' => 'Sidste Login',
'last_name' => 'Efternavn',
'location' => 'Placering',
'lock_passwords' => 'Login details cannot be changed on this installation.',
'manager' => 'Manager',
'managed_locations' => 'Managed Locations',
'name' => 'Name',
'notes' => 'Notes',
'password_confirm' => 'Confirm Password',
'password' => 'Password',
'phone' => 'Phone',
'show_current' => 'Show Current Users',
'show_deleted' => 'Show Deleted Users',
'title' => 'Title',
'managed_locations' => 'Administrerede placeringer',
'name' => 'Navn',
'notes' => 'Noter',
'password_confirm' => 'Bekræft adgangskode',
'password' => 'Adgangskode',
'phone' => 'Telefon',
'show_current' => 'Vis nuværende brugere',
'show_deleted' => 'Vis slettede brugere',
'title' => 'Titel',
'to_restore_them' => 'to restore them.',
'updateuser' => 'Update User',
'username' => 'Username',
'user_deleted_text' => 'This user has been marked as deleted.',
'updateuser' => 'Opdatere bruger',
'username' => 'Brugernavn',
'user_deleted_text' => 'Denne bruger er blevet markeret som slettede.',
'username_note' => '(This is used for Active Directory binding only, not for login.)',
'cloneuser' => 'Clone User',
'viewusers' => 'View Users',
'cloneuser' => 'Klon bruger',
'viewusers' => 'Se brugere',
);
+6 -6
View File
@@ -1,12 +1,12 @@
<?php
return [
'send_password_link' => 'Send Password Reset Link',
'email_reset_password' => 'Email Password Reset',
'reset_password' => 'Reset Password',
'send_password_link' => 'Send Link til nulstilling af adgangskode',
'email_reset_password' => 'Nulstil adgangskode',
'reset_password' => 'Nulstil adgangskode',
'login' => 'Login',
'login_prompt' => 'Please Login',
'forgot_password' => 'I forgot my password',
'remember_me' => 'Remember Me',
'login_prompt' => 'Log venligst ind',
'forgot_password' => 'Jeg har glemt min adgangskode',
'remember_me' => 'Husk mig',
];
+8
View File
@@ -18,11 +18,15 @@
'asset_report' => 'Aktiv Rapport',
'asset_tag' => 'Aktiv Mærkat',
'assets_available' => 'aktiver tilgængelige',
'audit' => 'Audit',
'audit_report' => 'Audit Log',
'assets' => 'Aktiver',
'avatar_delete' => 'Slet avatar',
'avatar_upload' => 'Upload Avatar',
'back' => 'Tilbage',
'bad_data' => 'Intet fundet. Måske dårlig data?',
'bulkaudit' => 'Bulk Audit',
'bulkaudit_status' => 'Audit Status',
'bulk_checkout' => 'Masseudtjekning',
'cancel' => 'Annuller',
'categories' => 'Kategorier',
@@ -52,6 +56,8 @@
'current' => 'Aktuelle',
'custom_report' => 'Tilpasset Aktiv Rapport',
'dashboard' => 'Oversigtspanel',
'days' => 'days',
'days_to_next_audit' => 'Days to Next Audit',
'date' => 'Dato',
'debug_warning' => 'Warning!',
'debug_warning_text' => 'This application is running in production mode with debugging enabled. This can expose sensitive data if your application is accessible to the outside world. Disable debug mode by setting the <code>APP_DEBUG</code> value in your <code>.env</code> file to <code>false</code>.',
@@ -117,6 +123,8 @@
'moreinfo' => 'Mere Info',
'name' => 'Navn',
'next' => 'Næste',
'next_audit_date' => 'Next Audit Date',
'last_audit' => 'Last Audit',
'new' => 'ny!',
'no_depreciation' => 'Ingen Afskrivning',
'no_results' => 'Ingen Resultater.',
+13 -13
View File
@@ -54,21 +54,21 @@ return array(
'read_the_terms' => 'Please read the terms of use below.',
'read_the_terms_and_click' => 'Please read the terms of use below, and click on the link at the bottom to confirm that you read
and agree to the terms of use, and have received the asset.',
'requested' => 'Requested:',
'requested' => 'Anmodede om:',
'reset_link' => 'Your Password Reset Link',
'reset_password' => 'Click here to reset your password:',
'reset_password' => 'Klik her for at nulstille adgangskoden:',
'serial' => 'Serial:',
'supplier' => 'Supplier',
'tag' => 'Tag',
'test_email' => 'Test Email from Snipe-IT',
'test_mail_text' => 'This is a test from the Snipe-IT Asset Management System. If you got this, mail is working :)',
'supplier' => 'Leverandør',
'tag' => 'Mærkat',
'test_email' => 'Test E-mail fra Snipe-IT',
'test_mail_text' => 'Dette er en test fra Snipe-IT Asset Management System. Hvis du fik dette, virker mailen :)',
'the_following_item' => 'The following item has been checked in: ',
'There_are' => '{1} There is|[2,Inf] There are',
'to_reset' => 'To reset your :web password, complete this form:',
'There_are' => '{1} Der er| [2,Inf] Der er',
'to_reset' => 'Nulstille din :web-adgangskode, udfylde denne formular:',
'type' => 'Type',
'user' => 'User:',
'username' => 'Username:',
'welcome' => 'Welcome :name',
'welcome_to' => 'Welcome to :web!',
'your_credentials' => 'Your Snipe-IT credentials',
'user' => 'Bruger:',
'username' => 'Brugernavn:',
'welcome' => 'Velkommen :navn',
'welcome_to' => 'Velkommen til :web!',
'your_credentials' => 'Dine Snipe-IT Legitimationsoplysninger',
);
+94 -59
View File
@@ -13,62 +13,91 @@ return array(
|
*/
"accepted" => ":attribute skal være accepteret.",
"active_url" => ":attribute er ikke en gyldig URL.",
"after" => ":attribute skal være en dato efter :date.",
"alpha" => ":attribute må kun indeholde bogstaver.",
"alpha_dash" => ":attribute må kun indeholde bogstaver, tal eller bindestreger.",
"alpha_num" => ":attribute må kun indeholde bogstaver eller tal.",
"before" => ":attribute skal være en dato før :date.",
"between" => array(
"numeric" => ":attribute skal være imellem :min - :max.",
"file" => ":attribute skal være imellem :min - :max kilobytes.",
"string" => ":attribute skal være imellem :min - :max tegn.",
),
"boolean" => "The :attribute must be true or false.",
"confirmed" => "The :attribute confirmation does not match.",
"date" => ":attribute er ikke en gyldig dato.",
"date_format" => ":attribute svarer ikke til formatet :format.",
"different" => ":attribute og :other skal være forskellige.",
"digits" => ":attribute skal være :digits cifre.",
"digits_between" => ":attribute skal være imellem :min og :max cifre.",
"email" => ":attribute formatet er ugylidgt.",
"exists" => "Den valgte :attribute er ugyldig.",
"email_array" => "En eller flere email-adresser er ugyldige.",
"hashed_pass" => "Your current password is incorrect",
'dumbpwd' => 'That password is too common.',
"image" => ":attribute skal være et billede.",
"in" => "Det valgte :attribute er ugyldigt.",
"integer" => ":attribute skal være et heltal.",
"ip" => ":attribute skal være en gyldig IP adresse.",
"max" => array(
"numeric" => ":attribute må ikke overstige :max.",
"file" => ":attribute må ikke overstige :max. kilobytes.",
"string" => ":attribute må ikke overstige :max. tegn.",
),
"mimes" => ":attribute skal være en fil af typen: :values.",
"min" => array(
"numeric" => ":attribute skal mindst være :min.",
"file" => ":attribute skal mindst være :min kilobytes.",
"string" => ":attribute skal mindst være :min tegn.",
),
"not_in" => "Den valgte :attribute er ugyldig.",
"numeric" => ":attribute skal være et tal.",
"regex" => ":attribute formatet er ugyldigt.",
"required" => ":attribute feltet er krævet.",
"required_if" => ":attribute feltet er krævet når :other er :value.",
"required_with" => ":attribute er krævet når :values forekommer.",
"required_without" => ":attribute er krævet når :values ikke forekommer.",
"same" => ":attribute og :other skal være ens.",
"size" => array(
"numeric" => ":attribute skal være :size.",
"file" => ":attribute skal være :size kilobytes.",
"string" => ":attribute skal være :size tegn.",
),
"unique" => ":attribute er allerede taget.",
"url" => ":attribute formatet er ugyldigt.",
"statuslabel_type" => "Du skal vælge en gyldig statusmærke type",
"unique_undeleted" => ":attribute skal være unik.",
'accepted' => ':attribute skal være accepteret.',
'active_url' => ':attribute er ikke en gyldig URL.',
'after' => ':attribute skal være en dato efter :date.',
'after_or_equal' => 'The :attribute must be a date after or equal to :date.',
'alpha' => ':attribute må kun indeholde bogstaver.',
'alpha_dash' => ':attribute må kun indeholde bogstaver, tal eller bindestreger.',
'alpha_num' => ':attribute må kun indeholde bogstaver eller tal.',
'array' => 'The :attribute must be an array.',
'before' => ':attribute skal være en dato før :date.',
'before_or_equal' => 'The :attribute must be a date before or equal to :date.',
'between' => [
'numeric' => ':attribute skal være imellem :min - :max.',
'file' => ':attribute skal være imellem :min - :max kilobytes.',
'string' => ':attribute skal være imellem :min - :max tegn.',
'array' => 'The :attribute must have between :min and :max items.',
],
'boolean' => 'The :attribute field must be true or false.',
'confirmed' => 'The :attribute confirmation does not match.',
'date' => ':attribute er ikke en gyldig dato.',
'date_format' => ':attribute svarer ikke til formatet :format.',
'different' => ':attribute og :other skal være forskellige.',
'digits' => ':attribute skal være :digits cifre.',
'digits_between' => ':attribute skal være imellem :min og :max cifre.',
'dimensions' => 'The :attribute has invalid image dimensions.',
'distinct' => 'The :attribute field has a duplicate value.',
'email' => ':attribute formatet er ugylidgt.',
'exists' => 'Den valgte :attribute er ugyldig.',
'file' => 'The :attribute must be a file.',
'filled' => 'The :attribute field must have a value.',
'image' => ':attribute skal være et billede.',
'in' => 'Det valgte :attribute er ugyldigt.',
'in_array' => 'The :attribute field does not exist in :other.',
'integer' => ':attribute skal være et heltal.',
'ip' => ':attribute skal være en gyldig IP adresse.',
'ipv4' => 'The :attribute must be a valid IPv4 address.',
'ipv6' => 'The :attribute must be a valid IPv6 address.',
'json' => 'The :attribute must be a valid JSON string.',
'max' => [
'numeric' => ':attribute må ikke overstige :max.',
'file' => ':attribute må ikke overstige :max. kilobytes.',
'string' => ':attribute må ikke overstige :max. tegn.',
'array' => 'The :attribute may not have more than :max items.',
],
'mimes' => ':attribute skal være en fil af typen: :values.',
'mimetypes' => 'The :attribute must be a file of type: :values.',
'min' => [
'numeric' => ':attribute skal mindst være :min.',
'file' => ':attribute skal mindst være :min kilobytes.',
'string' => ':attribute skal mindst være :min tegn.',
'array' => 'The :attribute must have at least :min items.',
],
'not_in' => 'Den valgte :attribute er ugyldig.',
'numeric' => ':attribute skal være et tal.',
'present' => 'The :attribute field must be present.',
'regex' => ':attribute formatet er ugyldigt.',
'required' => ':attribute feltet er krævet.',
'required_if' => ':attribute feltet er krævet når :other er :value.',
'required_unless' => 'The :attribute field is required unless :other is in :values.',
'required_with' => ':attribute er krævet når :values forekommer.',
'required_with_all' => 'The :attribute field is required when :values is present.',
'required_without' => ':attribute er krævet når :values ikke forekommer.',
'required_without_all' => 'The :attribute field is required when none of :values are present.',
'same' => ':attribute og :other skal være ens.',
'size' => [
'numeric' => ':attribute skal være :size.',
'file' => ':attribute skal være :size kilobytes.',
'string' => ':attribute skal være :size tegn.',
'array' => 'The :attribute must contain :size items.',
],
'string' => 'The :attribute must be a string.',
'timezone' => 'The :attribute must be a valid zone.',
'unique' => ':attribute er allerede taget.',
'uploaded' => 'The :attribute failed to upload.',
'url' => ':attribute formatet er ugyldigt.',
/*
|--------------------------------------------------------------------------
| 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.
|
*/
/*
@@ -82,8 +111,14 @@ return array(
|
*/
'custom' => array(),
'alpha_space' => ":attribute feltet indeholder en karakter der ikke er tilladt.",
'custom' => [
'alpha_space' => "The :attribute field contains a character that is not allowed.",
"email_array" => "One or more email addresses is invalid.",
"hashed_pass" => "Your current password is incorrect",
'dumbpwd' => 'That password is too common.',
"statuslabel_type" => "You must select a valid status label type",
"unique_undeleted" => "The :attribute must be unique.",
],
/*
|--------------------------------------------------------------------------
@@ -96,6 +131,6 @@ return array(
|
*/
'attributes' => array(),
'attributes' => [],
);
@@ -12,8 +12,8 @@
'success' => 'Wartungsvertrag erfolgreich erstellt.'
],
'edit' => [
'error' => 'Asset Maintenance was not created, please try again.',
'success' => 'Asset Maintenance created successfully.'
'error' => 'Asset Maintenance was not edited, please try again.',
'success' => 'Asset Maintenance edited successfully.'
],
'asset_maintenance_incomplete' => 'Wartungsvertrag noch nicht komplett ausgefüllt',
'warranty' => 'Garantie',
@@ -28,7 +28,7 @@ return array(
'fieldset' => array(
'does_not_exist' => 'Fieldset does not exist',
'does_not_exist' => 'Feldsatz existiert nicht',
'create' => array(
'error' => 'Feldsatz wurde nicht erstellt. Bitte erneut versuchen.',
+1 -1
View File
@@ -7,7 +7,7 @@ return array(
'asset' => 'Asset',
'bulk_checkout' => 'Assets an Benutzer herausgeben',
'checkin' => 'Asset zurücknehmen',
'checkout' => 'Asset an Benutzer herausgeben',
'checkout' => 'Checkout Asset',
'clone' => 'Asset duplizieren',
'deployable' => 'Einsetzbar',
'deleted' => 'Dieses Asset wurde gelöscht. <a href="/hardware/:asset_id/restore">Zur Wiederherstellung hier klicken</a>.',

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