/**
* 新增
* @param form
* @return
*/
function add(form){
if(!_textRequired(getElement('userId'),"登入帳號") ){ return false;}
if(!checkMinLength(getElement('userId'),4,"登入帳號")) { return false;}
if(!checkMaxLength(getElement('userId'),12,"登入帳號")){ return false;}
if(!_textRequired(form.password,"密碼") ){ return false;}
if(!_textRequired(form.password1,"確認密碼") ){ return false;}
if(form.password.value != form.password1.value){
alert('確認密碼不符合'); return false;
}
if(!_textRequired(form.userName,"使用者名稱")){return false;}
//if(!numberRequired(form.interval,"密碼變更間隔")){return false;}
//if(form.expiredDate.value != "" && !dateValidate(form.expiredDate.value)){return false;}
//if(!numberRequired(form.loginLockNum,"限制登入錯誤次數")){return false;}
// 檢查用戶資料設定
if (!checkUserExtData()) {
return false;
}
setUserMapping();
return confirm("確定新增");
}
/**
* 更新
* @param form
* @return
*/
function upd(form){
if(!_textRequired(form.userName,"使用者名稱")){return false;}
//if(!numberRequired(form.interval,"密碼變更間隔")){return false;}
//if(form.expiredDate.value != "" && !dateValidate(form.expiredDate.value)){return false;}
//if(!numberRequired(form.loginLockNum,"限制登入錯誤次數")){return false;}
// 檢查用戶資料設定
if (!checkUserExtData()) {
return false;
}
setUserMapping();
changeUserStatusList();
return updateConfirm();
}
/**
* 刪除
* @param form
* @param userId
* @return
*/
function del(form,userId){
form.userId.value = userId;
return deleteConfirm();
}
/**
* 到更新頁
* @param form
* @param userId
* @return
*/
function edit(form,userId){
form.userId.value = userId;
}
/**
* 授權頁
* @param form
* @param userId
* @return
*/
function grant(form,userId){
form.userId.value = userId;
}
function updGrant(form){
//alert($.getTreeSelected());
form.userChosenMenus.value = $.getTreeSelected();
return true;
}
function chgPassword(form){
if(!_textRequired(form.userId,"使用者代碼") ){ return false;}
if(!_textRequired(form.oldPassword,"舊使用者密碼") ){ return false;}
if(!_textRequired(form.password,"新密碼") ){ return false;}
if(!_textRequired(form.password1,"確認密碼") ){ return false;}
if(!checkMinLength(form.password,6,"新密碼")){ return false; }
if(!checkMinLength(form.password1,6,"確認密碼")){ return false; }
if(form.password.value != form.password1.value){
alert('確認密碼不符合'); return false;
}else if(form.oldPassword.value == form.password.value){
alert('新密碼與舊密碼應不同!'); return false;
}
return updateConfirm();
}
function mailPassword(form){
if(!_textRequired(form.userId,"使用者代碼") ){ return false;}
if(!_textRequired(form.email,"電子信箱") ){ return false;}
return true;
}
function resetPassword(userId, email) {
if (email.value == '') {
alert('必須先輸入使用者的Email!');
return false;
}
if (confirm('確定重置使用者'+userId.value+"的密碼?")) {
var data={'user.userId':userId.value, 'user.email':email.value};
$.post('User_resetPassword', data,
function(result) {
if (result['success']) {
alert('使用者'+userId.value+'密碼重置成功,新密碼已寄送至'+result['data']);
} else {
alert(result['msg']);
}
}, 'json');
}
}
function unlockPassword(userId) {
if (confirm("確定解除使用者" + userId.value + "密碼鎖定?")) {
var data = {
'user.userId' : userId.value
};
$.post('User_unlockPassword', data, function(result) {
alert(result['msg']);
if (result['success']) {
$('#pwdState').hide();
$('#userStatusList').val('U');
$('#user\\.status').val('U');
}
}, 'json');
}
}
/**
* 明細頁
*
* @param form
* @param userId
* @return
*/
function view(actionUrl){
$.blockUI();
$.ajax(
{
type: "POST",
url: actionUrl,
data: null,
dataType: "html",
success: function(divDetail) {
$.unblockUI();
$('#DialogMove').html(divDetail);
$('#nyroModalDialog').click();
//ScreenConvert();
//ShowDialog(divDetail,760,500);
},
error: function(req, status, error) {
$.unblockUI();
}
});
}
/**
* 檢核userId
* @return
*/
function checkUserId(field,actionUrl) {
if(!_textRequired(field,"登入帳號") ){ return false;}
if(!checkMinLength(field,4,"登入帳號")) { return false;}
if(!checkMaxLength(field,12,"登入帳號")){ return false;}
var data = {'user.userId':field.value};
$.post(actionUrl, data,
function(result) {
alert(result['msg']);
}, 'json');
return false;
}
/**
* 檢核extUserId
* @return
*/
function checkExtUserId(field,actionUrl) {
if(!_textRequired(field,"用戶姓名") ){ return false;}
if(!checkMinLength(field,1,"用戶姓名")) { return false;}
if(!checkMaxLength(field,50,"用戶姓名")){ return false;}
var data = {'userExtData.userId': field.value};
$.post(actionUrl, data,
function(result) {
alert(result['msg']);
}, 'json');
return false;
}
/**
* 檢查核取刪除的
* @return
*/
function checkdelAll(form) {
if (hasSelectCheckBox(form) == false) {
alert('請先勾選使用者帳號!');
return false;
}
return confirm('確定刪除勾選的帳號?');
}
function inactiveUser(form) {
if (hasSelectCheckBox(form) == false) {
alert('請先勾選使用者帳號!');
return false;
}
return confirm('確定停用勾選的帳號?');
}
/**
* 全部選取
*/
function checkAll(chkall,field){
if (field != undefined){
if (field.length == undefined) {
field.checked = chkall.checked;
} else {
for (var i = 0; i < field.length; i++) {
field[i].checked = chkall.checked;
}
}
}
}
/**
* @param form
* @param element
* @return
*/
function removeIp(){
var tb1 = document.getElementById('tb1');
var rows = tb1.rows;
var index = 0;
for(var i = 0 ; i < rows.length; i++){
if(rows[i].id == "ip"){
index = i;
}
}
if(index != 0)
tb1.deleteRow(index);
}
function addRow(n){
var Tr = document.getElementById("tb1").insertRow(n);
Tr.id = "ip";
var Td0 = Tr.insertCell(0);
Td0.className = "TableTdLabel";
Td0.innerHTML = "IP";
var Td1 = Tr.insertCell(1);
Td1.className = "TableTdInput";
Td1.innerHTML = "";
}
/**
*
* @return
*/
function addIp(){
var tb1 = document.getElementById('tb1');
addRow(tb1.getElementsByTagName("tr").length-2);
}
var userMappingIndex = 1;
function addUserMpping(app, user, password) {
var appId = $('#'+app+' :selected').val();
var appName = $('#'+app+' :selected').text();
var userId = $('#'+user).val();
var passwordId = $('#'+password).val();
if (appId == '' || userId == '') {
alert('請選擇應用系統並輸入對應的帳號!');
return;
}
if (!$('#' + password).is(":hidden ") && passwordId == '') {
alert('請輸入對應的密碼!');
return;
}
var check = true;
$('#userMappingDiv span').each(function(){
if ($(this).text() == appId + ',' + userId) {
alert('此對應帳號已存在!');
check = false;
return;
}
});
if (check == false) {
return false;
}
var newId = 'userMapping_'+userMappingIndex;
var tpl = $('#userMappingTpl').outerHTML();
//var tpl = $('#userMappingTpl').parent().html();
tpl = tpl.replace('$APP_ID', appName).replace('$ACCOUNT', userId).replace('$PASSWORD', passwordId).replace('$INDEX', userMappingIndex);
var e = $(tpl).attr('id', newId);
//$('#userMappingTable').append();
$(e.outerHTML()).appendTo('#userMappingTable');
$('#'+newId).show();
$('#userMappingDiv').append(''+appId + ','+userId+','+passwordId+'');
userMappingIndex ++;
}
function removeUserMapping(index) {
$('#userMapping_'+index).remove();
$('#userMappingSpan_'+index).remove();
}
function setUserMapping() {
var userMapping='';
$('#userMappingDiv span').each(function(){
userMapping += $(this).text()+';';
});
$('#userMapping').val(userMapping);
}
function setDefaultEmail() {
if ($('#userId').val() != '' && $('#userEmail').val() == '') {
$('#userEmail').val($('#userId').val() + "@webmail.customs.gov.tw");
}
}
function changeMappingAp() {
$.post('User_mappingAccountTree!mappingAccountTree',{'user.userId': $('#userId').val(), 'mappingAp': $('#mappingAp option:selected').val()},
function(result) {
$('#mappingAccount').val(result.accountValue);
if ('true'==result.accountDisabled) {
$('#mappingAccount').attr('disabled', 'disabled').css("background-color","#C0C0C0");
} else {
$('#mappingAccount').removeAttr('disabled').css("background-color","white");
}
if ('true'==result.passwordDisabled) {
$('#mappingPassword').val('');
$('#mappingPasswordTitle').hide();
} else {
$('#mappingPasswordTitle').show();
}
}, 'json');
}
// 憑證註冊
function addCert(){
var bindata = 'RegistryMainCert';
//使用者輸入的密碼
var certPassword = $('#certPassword').attr('value');
if(certPassword == null || certPassword ==''){
alert("請輸入密碼");
return false;
}
//確認卡別
var certInfo = getPGKISignCertInfo();
var cardType_card = certInfo.cardType;
var cardHolderRank = certInfo.cardHolderRank;
//使用者選的憑證類別
var certType = $('#addForm_certType option:selected').attr('value');
if(!(certType.indexOf(cardType_card) > -1)){
alert(cardType_card);
alert("憑證種類不符合");
return false;
}
if((!(certType == 'MOICA')) && cardHolderRank != 'primary' && (!(certType == 'MOEACA_AuthSubCert'))){
alert("請輸入主憑證");
return false;
}
if(certInfo.errorCode != 0){
//有問題_讀卡作業失敗
alert("errorCode = " + certInfo.errorCode + " & description = " + certInfo.description);
return false;
}
//certType == 'MOICA' 自然人憑證
if(certType == 'MOEACA' || certType == 'GCA' || certType == 'XCA' || certType == 'MOICA' || certType == 'MOEACA_AuthSubCert'){
if (certType == 'MOEACA_AuthSubCert' && cardHolderRank == 'primary') {
alert("憑證登入錯誤. 錯誤代碼:E4520");
return false;
}
var result = signDataByGPKI(bindata,certPassword,"","","tw","true");
var signature = result.signature;
var attributeCert = result.attributeCert;
var description = result.description;
var errorCode = result.errorCode;
if(errorCode != 0){
//憑證簽章作失敗
alert("errorCode = " + errorCode + " & description = " + description);
if(errorCode == 9039){
alert("憑證簽章作業失敗");
}
return false;
}
}else{
alert("此類憑證尚未提供服務");
}
if(signature == null || signature == ''){
alter("");
return false;
}
$('#signature').attr('value',signature);
$('#attributeCert').attr('value',attributeCert);
setUserMapping();
return true;
}
/**
* 憑證刪除
*
* @returns {Boolean}
*/
function deleteCert(){
var isDel = confirm("確定刪除?");
if (isDel) {
var cert = $('#cert').attr('value');
$('#certContent').attr('value',cert);
setUserMapping();
return true;
}
return false;
}
/**
* 檢查出生年月日
*
* @returns {Boolean}
*/
function checkBirthDate() {
// var birthDate = $('#addForm_userExtData_birthDate').val();
// if (birthDate.length === 0) {
// alert('請填寫出生年月日。');
// return true;
// }
return false;
}
/**
* 檢查公司名稱
*
* @returns {Boolean}
*/
/**
* 檢查公司名稱
*
* @returns {Boolean}
*/
/**
* 檢查用戶姓名
*
* @returns {Boolean}
*/
/**
* 檢查用戶帳號
*
* @returns {Boolean}
*/
/**
* 檢查船公司代碼
*
* @returns {Boolean}
*/
/**
* 轉換帳號狀態
*/
function changeUserStatusList() {
if (('D' === $('#user\\.status').val()) || ('D' === $('#userStatusList').val())) {
$('#user\\.status').val($('#userStatusList').val());
}
}
/**
* 檢查用戶資料設定
*/
function checkUserExtData() {
//if ('true' === $('#setUserExtData').val()) {
/*
} else {
$('.setUserExtData input:hidden').val('');
$('.setUserExtData input:text').val('');
$(".setUserExtData select option").each(function () {
if ($(this).val() === '') {
$(this).attr('selected', 'selected');
}
});
$('.setUserExtData :radio[checked]')[0].checked = false;
}*/
return true;
}