commite1263155b1Merge:886f2a0de014eab3abAuthor: snipe <snipe@snipe.net> Date: Mon Jan 9 11:10:19 2023 -0800 Merge pull request #12323 from snipe/translations/updated_strings Updated language strings commit014eab3abcAuthor: snipe <snipe@snipe.net> Date: Mon Jan 9 11:09:26 2023 -0800 Updated language strings Signed-off-by: snipe <snipe@snipe.net> commit886f2a0decMerge:19e703980e05764ac3Author: snipe <snipe@snipe.net> Date: Thu Jan 5 18:44:44 2023 -0800 Merge pull request #12317 from snipe/fixes/shorten_url_display_on_view Truncate URL with ellipsis if too long commite05764ac34Author: snipe <snipe@snipe.net> Date: Thu Jan 5 18:42:26 2023 -0800 Truncate URL with ellipsis if too long Signed-off-by: snipe <snipe@snipe.net> commit19e703980dMerge:bd3f730cb6e42bce40Author: snipe <snipe@snipe.net> Date: Thu Jan 5 18:07:30 2023 -0800 Merge pull request #12316 from snipe/features/chunk_data_in_sync_script Chunk sync script commit6e42bce409Author: snipe <snipe@snipe.net> Date: Thu Jan 5 18:04:06 2023 -0800 Removed $start variable from calback Signed-off-by: snipe <snipe@snipe.net> commit1a3c947b14Author: snipe <snipe@snipe.net> Date: Thu Jan 5 17:57:52 2023 -0800 Chunk sync script Signed-off-by: snipe <snipe@snipe.net> commitbd3f730cb2Merge:ace73acba381f89c5aAuthor: snipe <snipe@snipe.net> Date: Thu Jan 5 14:11:24 2023 -0800 Merge pull request #12315 from snipe/features/added_default_values_to_model_api Features/added default values to model api commit381f89c5a8Author: snipe <snipe@snipe.net> Date: Thu Jan 5 13:15:30 2023 -0800 Added format to array Signed-off-by: snipe <snipe@snipe.net> commitdb43628bdcAuthor: snipe <snipe@snipe.net> Date: Thu Jan 5 13:12:54 2023 -0800 Added default field info to models API response Signed-off-by: snipe <snipe@snipe.net> commitace73acba1Merge:5898e384f301c4fda6Author: snipe <snipe@snipe.net> Date: Thu Jan 5 09:59:35 2023 -0800 Merge pull request #12263 from Godmartinz/gh12211_label_padding_adjustment Fixed: page-break and padding at the end of document for labels commit301c4fda6eAuthor: Godfrey M <godmartinz@gmail.com> Date: Thu Jan 5 09:55:25 2023 -0800 fixes conflicts commit5898e384f8Merge:c575798b59c63f426dAuthor: snipe <snipe@snipe.net> Date: Wed Jan 4 15:13:36 2023 -0800 Merge pull request #12308 from snipe/fixes/missing_translation_string Fixed missing translation string commit9c63f426d9Author: snipe <snipe@snipe.net> Date: Wed Jan 4 14:09:14 2023 -0800 Added missing translation string Signed-off-by: snipe <snipe@snipe.net> commitc575798b56Merge:b36e818367123e7327Author: snipe <snipe@snipe.net> Date: Wed Jan 4 14:01:03 2023 -0800 Merge pull request #12307 from snipe/fixes/update_less_and_css_loader Updated less-loader and css-loader libraries commit7123e7327fAuthor: snipe <snipe@snipe.net> Date: Wed Jan 4 14:00:04 2023 -0800 Updated less-loader and css-loader libraries Signed-off-by: snipe <snipe@snipe.net> commitb36e81836fMerge:818db58a7b77d5801fAuthor: snipe <snipe@snipe.net> Date: Wed Jan 4 13:57:14 2023 -0800 Merge pull request #12306 from snipe/fixes/weird_sentence_in_translations Fixed incomplete sentence in translation file for audit interval commitb77d5801faAuthor: snipe <snipe@snipe.net> Date: Wed Jan 4 13:56:16 2023 -0800 English is hard, apparently Signed-off-by: snipe <snipe@snipe.net> commit818db58a7bMerge:baf14c43ec4f900e9aAuthor: snipe <snipe@snipe.net> Date: Wed Jan 4 13:22:03 2023 -0800 Merge pull request #12305 from uberbrady/fix_license_seat_reporting Fixed: Change license_seat changing method to properly 'true up' license seats commitc4f900e9afAuthor: Brady Wetherington <bwetherington@grokability.com> Date: Wed Jan 4 13:02:53 2023 -0800 Change license_seat changing method to properly 'true up' license seats commitbaf14c43eeMerge:d187174f0fa439a192Author: snipe <snipe@snipe.net> Date: Tue Jan 3 14:50:25 2023 -0800 Merge pull request #12298 from snipe/fixes/db_seeder_company_id Fixed db seeder when company id is not present commitfa439a1928Author: snipe <snipe@snipe.net> Date: Tue Jan 3 14:45:23 2023 -0800 Check that the array key exists before trying to seed it Signed-off-by: snipe <snipe@snipe.net> commitd187174f00Merge:6d3c5e06592ae27129Author: snipe <snipe@snipe.net> Date: Thu Dec 22 11:29:12 2022 -0800 Merge pull request #12090 from Godmartinz/deparmtnet_name_validator Added: validation for department names at Company locations commit6d3c5e0659Merge:685cc86d7e791e6592Author: snipe <snipe@snipe.net> Date: Wed Dec 21 19:04:11 2022 -0800 Merge pull request #12264 from Godmartinz/gh12253_display_notes_accessories Added: notes to the accessories tab for user detail view commit685cc86d71Author: snipe <snipe@snipe.net> Date: Tue Dec 20 17:24:01 2022 -0800 Sets the `ldap_default_group` field to nullable and default null Signed-off-by: snipe <snipe@snipe.net> commitfb10a6f218Merge:128c21a903a9b8a499Author: snipe <snipe@snipe.net> Date: Tue Dec 20 17:05:18 2022 -0800 Merge pull request #12268 from inietov/fixes/people_count Fixed: Dashboard user count scoping when full company support is enabled commit3a9b8a4993Author: Ivan Nieto Vivanco <inietov@gmail.com> Date: Tue Dec 20 18:39:17 2022 -0600 Calculate the proper amount of people in the dashboard if Full Company Support is enabled commit128c21a905Merge:88291cadc75a757d6fAuthor: snipe <snipe@snipe.net> Date: Tue Dec 20 15:09:30 2022 -0800 Merge pull request #12266 from uberbrady/fix-select-all-bug Fixed: There was a bug with BS tables' select-all which showed an incorrect list of elements commit75a757d6f5Author: Brady Wetherington <bwetherington@grokability.com> Date: Tue Dec 20 14:57:58 2022 -0800 There was a bug with select-all where some bits didn't quite work commite791e6592aAuthor: Godfrey M <godmartinz@gmail.com> Date: Tue Dec 20 10:37:19 2022 -0800 adds notes to the accessories tab under users commit38575e93e8Author: Godfrey M <godmartinz@gmail.com> Date: Tue Dec 20 09:45:41 2022 -0800 fixes the rules for adding page-break and padding at the end of document commit88291cadc1Merge:399c7590c94afe2bc6Author: snipe <snipe@snipe.net> Date: Mon Dec 19 12:41:32 2022 -0800 Merge pull request #12254 from akemidx/documentating_something Commenting on a scope in Models/Company.php commit94afe2bc6aAuthor: akemidx <kojotek.dx@gmail.com> Date: Mon Dec 19 14:48:43 2022 -0500 edits & typo fixes commit399c7590cdMerge:d0c5ba70feb67d1b06Author: snipe <snipe@snipe.net> Date: Thu Dec 15 14:19:41 2022 -0800 Merge pull request #12209 from snipe/fixes/error_downloading_unaccepted_assets Fixed 500 when downloading the Unaccepted Assets report [sc-19555] commitd0c5ba70f6Merge:29c2ff56ed9a21cce0Author: snipe <snipe@snipe.net> Date: Thu Dec 15 12:42:29 2022 -0800 Merge pull request #12242 from inietov/features/add_purchase_cost_column Added `purchase_cost` to user's default view [sc-19680] commit133d6ffa50Author: akemidx <kojotek.dx@gmail.com> Date: Thu Dec 15 15:18:24 2022 -0500 Commenting on a scope in Models/Company.php commitd9a21cce00Author: Ivan Nieto Vivanco <inietov@gmail.com> Date: Thu Dec 15 14:12:05 2022 -0600 Add other items' purchase_cost columns to the same permission commit29c2ff56ecMerge:3e7975b2c1fe0bfe17Author: snipe <snipe@snipe.net> Date: Thu Dec 15 11:26:49 2022 -0800 Merge pull request #12188 from snipe/fixes/decrease_logging_for_saml_when_not_enabled Removed extra logging case that was very noisy commit3e7975b2c3Merge:227fef76ed870bc3b0Author: snipe <snipe@snipe.net> Date: Thu Dec 15 11:25:53 2022 -0800 Merge pull request #12250 from akemidx/grey_out_pw_reset_button Fixed: Grey out pw reset button for consistency commitd870bc3b02Author: akemidx <kojotek.dx@gmail.com> Date: Thu Dec 15 14:19:51 2022 -0500 nested if loop commit227fef76eeMerge:418ddcfac9d44720ffAuthor: snipe <snipe@snipe.net> Date: Thu Dec 15 11:06:53 2022 -0800 Merge pull request #11736 from Godmartinz/gh6508_ldap_default_group Adds a permission group selection for directory sync commit9d44720ffdAuthor: Godfrey M <godmartinz@gmail.com> Date: Thu Dec 15 11:02:34 2022 -0800 reverted changes to composer.lock commit9f3f0a25edAuthor: Godfrey M <godmartinz@gmail.com> Date: Thu Dec 15 10:53:45 2022 -0800 reverted changes to composer.lock commit2e228ccb0bAuthor: Godfrey M <godmartinz@gmail.com> Date: Thu Dec 15 10:45:42 2022 -0800 redid a few things. should be good now :) commit3ee413f379Author: Godfrey M <godmartinz@gmail.com> Date: Thu Dec 15 09:20:30 2022 -0800 removes livewire stuff commitb142f8e012Author: Ivan Nieto Vivanco <inietov@gmail.com> Date: Wed Dec 14 23:00:35 2022 -0600 Add the permission to show purchase cost column to non-admin sessions commit418ddcfac3Merge:c342668f01a908e361Author: snipe <snipe@snipe.net> Date: Wed Dec 14 17:46:53 2022 -0800 Merge pull request #9876 from Toreg87/fixes/locations-deletable Fixed #9875: Make locations deletable for non Superuser-Accounts with FullMultipleCompanySupport commitc342668f0fAuthor: snipe <snipe@snipe.net> Date: Wed Dec 14 17:25:39 2022 -0800 Update @scoo73r as a contributor commit2f6a26ec7dAuthor: snipe <snipe@snipe.net> Date: Wed Dec 14 17:25:25 2022 -0800 Add @scoo73r as a contributor commitf635278010Merge:d13a237008043b8678Author: snipe <snipe@snipe.net> Date: Wed Dec 14 16:42:41 2022 -0800 Merge pull request #12251 from snipe/security/upgrade_font_awesome Upgraded font awesome to 6.2.1 commit8043b86786Author: snipe <snipe@snipe.net> Date: Wed Dec 14 16:41:56 2022 -0800 Upgraded font awesome to 6.2.1 Signed-off-by: snipe <snipe@snipe.net> commitd13a237000Merge:fabefa61bd0d0058e7Author: snipe <snipe@snipe.net> Date: Wed Dec 14 12:13:18 2022 -0800 Merge pull request #12205 from Godmartinz/sc19675_add_remote_to_importer Adds remote field to the user importer commitb114ffd2c3Author: akemidx <kojotek.dx@gmail.com> Date: Wed Dec 14 14:48:59 2022 -0500 Grey out button pw reset button for consistency When user has no email in their profile, the box is greyed out for consistency accross all buttons on the user profile commitfabefa61b0Merge:389ec3a3cf3e57d7dcAuthor: snipe <snipe@snipe.net> Date: Tue Dec 13 14:00:48 2022 -0800 Merge pull request #12243 from akemidx/new_grey_out_when_no_assets Created method in users.php for adding up all assigned to user and pr… commitf3e57d7dc0Author: akemidx <kojotek.dx@gmail.com> Date: Tue Dec 13 16:00:59 2022 -0500 fixing PR commit389ec3a3cbMerge:c432fb9d76a72c344bAuthor: snipe <snipe@snipe.net> Date: Tue Dec 13 12:57:50 2022 -0800 Merge pull request #12247 from Godmartinz/gh12225_serial_added_to_components adds serial to components tab of assets commit6a72c344b7Author: Godfrey M <godmartinz@gmail.com> Date: Tue Dec 13 12:32:30 2022 -0800 removed the cuddlers commit4442b446b9Author: Godfrey M <godmartinz@gmail.com> Date: Tue Dec 13 10:30:37 2022 -0800 adds serial to components tab of assets commitc432fb9d70Merge:9e8fff6e5fa872b09aAuthor: snipe <snipe@snipe.net> Date: Tue Dec 13 10:28:17 2022 -0800 Merge pull request #12181 from Godmartinz/gh12163_asset_age Adds asset age to asset index and asset view pages commit07ae91b00fAuthor: akemi <akemi@ShibaPro.local> Date: Wed Dec 7 17:46:18 2022 -0500 Created method in users.php for adding up all assigned to user and providing an integer value. this then used to grey out buttons on user view if user has nothing assigned. commit450ad3dcecAuthor: Ivan Nieto Vivanco <inietov@gmail.com> Date: Mon Dec 12 14:17:08 2022 -0600 Added the column purchase_cost to user's default view commitfa872b09a9Author: Godfrey M <godmartinz@gmail.com> Date: Mon Dec 12 10:38:31 2022 -0800 fixes a typo, the world is great again commiteb67d1b064Author: Ivan Nieto Vivanco <inietov@gmail.com> Date: Tue Dec 6 18:00:16 2022 -0600 Filter items from the report if null returned commitd0d0058e79Author: Godfrey M <godmartinz@gmail.com> Date: Tue Dec 6 11:19:28 2022 -0800 removed unwanted changes commitbbd04f8876Author: Godfrey M <godmartinz@gmail.com> Date: Tue Dec 6 11:13:24 2022 -0800 adds the rest of the fields for Remote commit36901d271bAuthor: Godfrey M <godmartinz@gmail.com> Date: Mon Dec 5 16:28:19 2022 -0800 adds csvmatch for remote. Im a bit lost though lol commit3206929ee4Author: Godfrey M <godmartinz@gmail.com> Date: Tue Nov 29 09:51:42 2022 -0800 adds AgeFormatter, not working yet commit1fe0bfe17eAuthor: snipe <snipe@snipe.net> Date: Mon Nov 28 19:27:42 2022 -0800 Removed extra logging case that was very noisy Signed-off-by: snipe <snipe@snipe.net> commit8d861cfd82Author: Godfrey M <godmartinz@gmail.com> Date: Mon Nov 28 10:59:18 2022 -0800 adds age to the asset table commit078e7281cdAuthor: Godfrey M <godmartinz@gmail.com> Date: Mon Nov 28 10:45:58 2022 -0800 adds asset age to asset view commit92ae271292Author: Godfrey M <godmartinz@gmail.com> Date: Wed Nov 9 13:11:33 2022 -0800 adds validation for department names at Company locations commitf2d4a61e3cAuthor: Godfrey M <godmartinz@gmail.com> Date: Tue Oct 18 15:31:37 2022 -0700 removes dead space commit3f25a1bf61Author: Godfrey M <godmartinz@gmail.com> Date: Tue Oct 18 15:25:38 2022 -0700 removes dead code commitf9ac447dd1Merge:9b448227fb7bcfacccAuthor: Godfrey M <godmartinz@gmail.com> Date: Tue Oct 18 15:18:09 2022 -0700 adds default group to LDAP commit9b448227f7Author: Godfrey M <godmartinz@gmail.com> Date: Tue Sep 13 11:40:10 2022 -0700 tinkering to no avail commit28bc97f29fAuthor: Godfrey M <godmartinz@gmail.com> Date: Mon Sep 12 11:40:16 2022 -0700 one line away from this being over with commit193b31e427Author: Godfrey M <godmartinz@gmail.com> Date: Wed Aug 31 12:58:33 2022 -0700 select options working, testing sync then done commit70ac8af9c4Author: Godfrey M <godmartinz@gmail.com> Date: Wed Aug 31 09:53:20 2022 -0700 . commit0c362e8b57Author: Godfrey M <godmartinz@gmail.com> Date: Mon Aug 29 12:09:56 2022 -0700 gets the groups selector to appear but options are blank commitfc6fefdb4eAuthor: Godfrey M <godmartinz@gmail.com> Date: Thu Aug 25 15:19:38 2022 -0700 adds migration, variables, checkbox,working on groups commit1a908e361eAuthor: Tobias Regnery <tobias.regnery@gmail.com> Date: Thu Jul 29 10:33:34 2021 +0200 Make locations deletable for non Superuser-Accounts with FullMultipleCompanySupport locations->isDeletable() checks via gate::allows if a locations is deletable. This calls SnipePermissionsPolicy->before() and checks for !Company::isCurrentUserHasAccess($item). This returns false because locations don't have a company_id. Check for this and return true if the item don't have a company_id. Signed-off-by: snipe <snipe@snipe.net>
89 lines
2.5 KiB
PHP
89 lines
2.5 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Requests;
|
|
|
|
use App\Models\Import;
|
|
use Illuminate\Foundation\Http\FormRequest;
|
|
use Illuminate\Support\Facades\Auth;
|
|
|
|
class ItemImportRequest extends FormRequest
|
|
{
|
|
/**
|
|
* Determine if the user is authorized to make this request.
|
|
*
|
|
* @return bool
|
|
*/
|
|
public function authorize()
|
|
{
|
|
return true;
|
|
}
|
|
|
|
/**
|
|
* Get the validation rules that apply to the request.
|
|
*
|
|
* @return array
|
|
*/
|
|
public function rules()
|
|
{
|
|
return [
|
|
'import-type' => 'required',
|
|
];
|
|
}
|
|
|
|
public function import(Import $import)
|
|
{
|
|
ini_set('max_execution_time', env('IMPORT_TIME_LIMIT', 600)); //600 seconds = 10 minutes
|
|
ini_set('memory_limit', env('IMPORT_MEMORY_LIMIT', '500M'));
|
|
|
|
$filename = config('app.private_uploads').'/imports/'.$import->file_path;
|
|
$import->import_type = $this->input('import-type');
|
|
$class = title_case($import->import_type);
|
|
$classString = "App\\Importer\\{$class}Importer";
|
|
$importer = new $classString($filename);
|
|
$import->field_map = request('column-mappings');
|
|
$import->save();
|
|
$fieldMappings = [];
|
|
|
|
if ($import->field_map) {
|
|
foreach ($import->field_map as $field => $fieldValue) {
|
|
$errorMessage = null;
|
|
|
|
if (is_null($fieldValue)) {
|
|
$errorMessage = trans('validation.import_field_empty', ['fieldname' => $field]);
|
|
$this->errorCallback($import, $field, $errorMessage);
|
|
|
|
return $this->errors;
|
|
}
|
|
}
|
|
// We submit as csv field: column, but the importer is happier if we flip it here.
|
|
$fieldMappings = array_change_key_case(array_flip($import->field_map), CASE_LOWER);
|
|
}
|
|
$importer->setCallbacks([$this, 'log'], [$this, 'progress'], [$this, 'errorCallback'])
|
|
->setUserId(Auth::id())
|
|
->setUpdating($this->get('import-update'))
|
|
->setShouldNotify($this->get('send-welcome'))
|
|
->setUsernameFormat('firstname.lastname')
|
|
->setFieldMappings($fieldMappings);
|
|
$importer->import();
|
|
|
|
return $this->errors;
|
|
}
|
|
|
|
public function log($string)
|
|
{
|
|
\Log::Info($string);
|
|
}
|
|
|
|
public function progress($count)
|
|
{
|
|
// Open for future
|
|
}
|
|
|
|
public function errorCallback($item, $field, $errorString)
|
|
{
|
|
$this->errors[$item->name][$field] = $errorString;
|
|
}
|
|
|
|
private $errors;
|
|
}
|