znt/module/user/js/batchcreate.ui.js

118 lines
3.3 KiB
JavaScript
Raw Permalink Normal View History

window.renderRowData = function($row, index, row)
{
$row.find('[data-name="companyItem"]').find('.picker-box').on('inited', function(e, info)
{
let $compnayPicker = info[0];
if(index == 0)
{
let companyItems = info[0].options.items;
companyItems.pop();
$compnayPicker.render({items: companyItems});
}
else
{
$compnayPicker.$.setValue('ditto');
}
});
};
/**
* 根据用户类型切换控件的显示和隐藏
* Toggle the display of controls according to the user type.
*
* @param event event
* @access public
* @return void
*/
function batchChangeType(event)
{
const type = $(event.target).val();
const isInside = type == 'inside';
$('input[data-name="type"]').val(type);
$('[data-name="companyItem"]').toggleClass('hidden', isInside);
$('[data-name="dept"], [data-name="join"]').toggleClass('hidden', !isInside);
$('#userType').val(type);
}
/**
* 根据职位更改权限组
* Change the permission group according to the role.
*
* @param role $role
* @access public
* @return void
*/
function batchChangeRole(event)
{
const role = $(event.target).val();
const group = role && roleGroup[role] ? roleGroup[role] : '';
$(event.target).closest('tr').find('[name^="group"]').zui('picker').$.setValue(group);
}
/**
* 切换显示选择所属公司或添加公司的输入框
* Toggle display company picker or input when add or edit a user.
*
* @param event event
* @access public
* @return void
*/
function batchToggleNew(event)
{
const $currentRow = $(event.target).closest('tr');
const $company = $currentRow.find('div[data-name="company"]').closest('.picker-box').toggleClass('hidden');
const $newCompany = $currentRow.find('input[data-name="newCompany"]').toggleClass('hidden');
}
/**
* 切换显示密码强度
* Toggle display password strength.
*
* @param event event
* @access public
* @return void
*/
function batchTogglePasswordStrength(event)
{
const $target = $(event.target);
const password = $target.val();
const $strength = $target.closest('tr').find('.passwordStrength');
$strength.toggleClass('hidden', password == '');
$strength.html(password == '' ? '' : passwordStrengthList[computePasswordStrength(password)]);
}
/**
* 切换界面类型
* When the visions is changed.
*
* @param event event
* @access public
* @return void
*/
function batchChangeVision(event)
{
const $target = $(event.target);
const visions = $target.val();
const link = $.createLink('user', 'ajaxGetGroups', 'visions=' + visions);
$.getJSON(link, function(data)
{
let $currentRow = $(event.target).closest('tr');
let group = $currentRow.find('[name^="group"]').val();
let $group = $currentRow.find('[name^="group"]').zui('picker');
$group.render({items: data});
$group.$.setValue(group);
let $row = $currentRow.next('tr');
while($row.length)
{
if($row.find('[data-name="visions"]').attr('data-ditto') != 'on') break;
group = $row.find('[name^="group"]').val();
$group = $row.find('[name^="group"]').zui('picker');
$group.render({items: data});
$group.$.setValue(group);
$row = $row.next('tr');
}
});
}