From e1ada89dd1cd82a4a48fa22bea03cafb3e7dfc71 Mon Sep 17 00:00:00 2001 From: liumengyi Date: Sat, 15 Jul 2023 16:46:36 +0800 Subject: [PATCH] * Replace select to picker in user::edit. --- module/user/js/edit.ui.js | 36 +++++++----------------------------- module/user/ui/edit.html.php | 16 ++++++++-------- 2 files changed, 15 insertions(+), 37 deletions(-) diff --git a/module/user/js/edit.ui.js b/module/user/js/edit.ui.js index 5b827175c5..55a161b4fb 100644 --- a/module/user/js/edit.ui.js +++ b/module/user/js/edit.ui.js @@ -3,7 +3,6 @@ $(function() password1Encrypted = false; password2Encrypted = false; changeType(); - updateGroup(); }); /** @@ -62,42 +61,21 @@ function changeType(event) let type = $typeGroup.find('input[type="radio"]:checked').val(); if(type == 'inside') { - $('#company').closest('.form-group').addClass('hidden'); - $('#dept, #commiter').closest('.form-row').removeClass('hidden'); + $('[name="company"]').closest('.form-group').addClass('hidden'); + $('[name="dept"]').closest('.form-row').removeClass('hidden'); + $('#commiter').closest('.form-row').removeClass('hidden'); } else { - $('#company').closest('.form-group').removeClass('hidden'); - $('#dept, #commiter').closest('.form-row').addClass('hidden'); + $('[name="company"]').closest('.form-group').removeClass('hidden'); + $('[name="dept"]').closest('.form-row').addClass('hidden'); + $('#commiter').closest('.form-row').addClass('hidden'); } } -/** - * Update groups when visions change. - * - * @param event $event - * @access public - * @return void - */ -function updateGroup(event) -{ - let visions = ''; - let group = $('#group').val(); - let $visionGroup = event != undefined ? $(event.target).closest('.form-group') : $('input[name="visions"]').closest('.form-group'); - $.each($visionGroup.find('input[type="checkbox"]:checked'), function(index) - { - if(index > 0) visions += ','; - visions += $(this).val(); - }); - $.post($.createLink('user', 'ajaxGetGroup', "visions=" + visions + '&i=' + 0 + '&selected=' + group), function(data) - { - $('#group').replaceWith(data); - }); -} - function toggleNew(event) { - const $company = $('#company'); + const $company = $('[name="company"]').closest('.picker-box'); const $newCompany = $('#newCompany'); if($(event.target).prop('checked')) { diff --git a/module/user/ui/edit.html.php b/module/user/ui/edit.html.php index 78c73e215a..9236e36eee 100644 --- a/module/user/ui/edit.html.php +++ b/module/user/ui/edit.html.php @@ -50,6 +50,7 @@ formPanel ), set::formClass('border-0'), on::click('button[type="submit"]', 'computePassword'), + on::change('input[name^=visions]', 'changeVision'), formRow ( formGroup @@ -63,7 +64,7 @@ formPanel ( set::width('1/2'), set::label($lang->user->role), - set::control('select'), + set::control('picker'), set::name('role'), set::items($lang->user->roleList), set::value($user->role), @@ -75,7 +76,7 @@ formPanel ( set::width('1/2'), set::label($lang->user->dept), - set::control('select'), + set::control('picker'), set::name('dept'), set::items($depts), set::value($user->dept) @@ -95,9 +96,9 @@ formPanel ( set::width('1/2'), set::label($lang->user->group), - select + picker ( - set::name('group'), + set::name('group[]'), set::items($groups), set::value($userGroups), set::multiple(true), @@ -109,7 +110,7 @@ formPanel set::label($lang->user->company), inputGroup ( - select + picker ( set::name('company'), set::items($companies), @@ -142,7 +143,7 @@ formPanel set::label($lang->user->type), radioList ( - on::click('changeType'), + on::change('changeType'), set::inline(true), set::name('type'), set::items($lang->user->typeList), @@ -236,8 +237,7 @@ formPanel set::label($lang->user->visions), checkList ( - on::click('updateGroup'), - set::name('visions'), + set::name('visions[]'), set::items($visionList), set::value($user->visions), set::inline(true),