/**
*
*/
var regexDate = /(\d{4})-(\d{2})-(\d{2})/;
var regexTime = /(\d{2}):(\d{2}):(\d{2})/;
var regexNumber= /^[0-9]*$/;
var regexNumberWithoutZero= /^[1-9][0-9]*$/;
var regexNumberWithPlus= /^([+])+[0-9]*$/;
var regexNumberWithDot= /^\s*(?=.*[0-9])\d*(?:\.\d{1,8})?\s*$/;
var regexNumberWithPrefix= /^[0-9+#*]*$/;
var regexNumberwithHash=/^[0-9#]*$/;
var regexNumberWithCustom= /^[A-B0-9#]*$/;
var regexNumberDotWithColon= /^[0-9.:]*$/;
var regexAlphaNumeric= /^[a-zA-Z0-9_]*$/;
var regexAlphaNumericWithDot= /^[a-zA-Z0-9-]*$/;
var regexAlphaNumericWithSpace= /^[a-zA-Z0-9_ ]*$/;
var regexAlphaNumericWithHypen= /^[a-zA-Z0-9- ]*$/;
var regexForCountryName= /^[a-zA-Z0-9-,.()?/\& ]*$/;
var regexAlphaNumericWithSign= /^[a-zA-Z0-9+-=#* ]*$/;
var regexNumberWithNeg= /^[0-9-1]*$/;
var regexNumberWithNegWithoutZero= /^[1-9-]*$/;
var regexNumberWithNegComma = /^[0-9,-]*$/;
var regexNumberWithNegDot= /^-?(?:[0-9]+(?:\.[0-9]+)?|\.[0-9]+)$/;
var regexEmail="/^([a-zA-Z0-9_\.\-\+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/";
var regexNumberWithComma = /^[0-9,]*$/;
var regexNumberWithDotAndComma = /^[0-9.,]*$/;
var regexNumber1To100=/^[1-9][0-9]?$|^100$/;
var regexNumber1To255=/^(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5]))$/;
var strValidChars = "`~!@#$%^&*()_-=+{}[]><,./\?|0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
function validString(str){
for (var i = 0; i < str.length; i++){
if (strValidChars.indexOf(str.charAt(i)) == -1)
return false;
}
return true;
}
function isNumber(n) {
return !isNaN(parseFloat(n)) && isFinite(n);
}
function isNumberZero(n) {
return !isNaN(parseFloat(n)) && isFinite(n);
}
function isValidEmail(str){
var regex = /^([a-zA-Z0-9_\.\-\+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
return regex.test(str);
}
function validPulse(value) {
var strCheck = "/0123456789";
var pul = [];
for (var i = 0; i < value.length; i++) {
if (strCheck.indexOf(value.charAt(i)) == -1) return false;
}
var str = value.indexOf('/');
if (str == -1) return false;
else {
pul = value.split("/");
if (pul.length == 2) {
if (parseInt(pul[0]) < 3600 && !parseInt(pul[0]) == 0 && parseInt(pul[1]) < 3600 && !parseInt(pul[1]) == 0) return true;
else return false;
} else return false;
}
}
function validBillingcycleName(value){
if(String(value.charAt(0)).search(regexNumber)==-1 && String(value).search(regexAlphaNumeric) != -1 && String(value).length <=30 ){
return true;
}else{
return false;
}
}
function isReservedWord(value){
var substrings = ['user','subscriber','admin','distributor','reseller','subreseller','enterprise','agent','subgroup','callshop','company'];
if (substrings.some(v => value === v)) {
return true;
} else {
return false;
}
}
function numericOrAlphaNumericOnly(value) {
if(String(value).search(regexAlphaNumeric) != -1)
return true;
else
return false;
}
function validRange(value,from,to){
if(value >= from && value <=to){
return true;
}else{
return false;
}
}
function validation(formId,container){
if(container==null || container==undefined){
container=$(".msgcontainer");
}
var error=validForm(formId);
if(error!=null){
$(container).msgShow({type:'msgerror',msg:error});
return false;
}else{
return true;
}
}
function mvalid(formId){
var error=validForm(formId);
if(error!=null){
showmsg('',error);
return false;
}else{
return true;
}
}
function startsWithPlus(name){
return name.startsWith("+");
}
function validForm(formId){
var error=null;
try{
var reqFieldArr=new Array();
var ruleFieldArr=new Array();
$(formId+' *').filter("select.select2required").each(function(){
if($(this).val() == null ||$(this).val()=='' ){
reqFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
});
$(formId+' *').filter("input.required,select.required,textarea.required").each(function(){
if($(this).val() == null || $(this).val().trim()==''){
reqFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
});
$(formId+' *').filter("input.time").each(function(){
if( $(this).val().trim()!=''){
var objArr= regexTime.exec($(this).val());
if($(this).val().length!=8 || objArr==null || objArr.length!=4){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.date").each(function(){
if( $(this).val().trim()!=''){
var objArr= regexDate.exec($(this).val());
if($(this).val().length!=10 ||objArr==null || objArr.length!=4){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.numberOnly").each(function(){
if( $(this).val().trim()!=''){
if(String($(this).val()).search(regexNumber)==-1){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.numberWithPlus").each(function() {
if($(this).val().trim()!='') {
if(String($(this).val()).search(regexNumberWithPlus) == -1)
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
});
$(formId+' *').filter("input.numberWith1to100").each(function(){
if( $(this).val().trim()!=''){
if(String($(this).val()).search(regexNumber1To100)==-1){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.numberWith1to255").each(function(){
if( $(this).val().trim()!=''){
if(String($(this).val()).search(regexNumber1To255)==-1){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.numberWith1to28").each(function(){
if( $(this).val().trim()!=''){
if(!validRange($(this).val(),1,28)){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.numberWith1to13").each(function(){
if( $(this).val().trim()!=''){
if(!validRange($(this).val(),1,13)){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.numberWith1to14").each(function(){
if( $(this).val().trim()!=''){
if(!validRange($(this).val(),1,14)){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.numberWith1to7").each(function(){
if( $(this).val().trim()!=''){
if(!validRange($(this).val(),1,7)){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.numberWith1to9999").each(function(){
if( $(this).val().trim()!=''){
if(!validRange($(this).val(),1,9999)){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.numberWith0to9").each(function(){
if( $(this).val().trim()!=''){
if(!validRange($(this).val(),0,9)){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.alphaNumericWithSpace").each(function(){
if( $(this).val().trim()!=''){
if(String($(this).val()).search(regexAlphaNumericWithSpace)==-1){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
/* $(formId+' *').filter("input.alphaNumericWithSplChar").each(function(){
if( $(this).val()!=''){
if(!validString($(this).val())){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
*/
$(formId+' *').filter("input.alphaNumericWithHypen").each(function(){
if( $(this).val().trim()!=''){
if(String($(this).val()).search(regexAlphaNumericWithHypen)==-1){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.alphaNumericWithSign").each(function(){
if( $(this).val().trim()!=''){
if(String($(this).val()).search(regexAlphaNumericWithSign)==-1){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.regexNumberWithPlusHash").each(function(){
if( $(this).val().trim()!=''){
if(String($(this).val()).search(regexNumberWithPrefix)==-1){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.numberWithDotOnly").each(function(){
if( $(this).val().trim()!=''){
if(String($(this).val()).search(regexNumberWithDot)==-1){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.numberDotWithColonOnly").each(function(){
if( $(this).val().trim()!=''){
if(String($(this).val()).search(regexNumberDotWithColon)==-1){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.alphaNumericWithDot").each(function(){
if( $(this).val().trim()!=''){
if(String($(this).val()).search(regexNumberDotWithColon)==-1){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.alphaNumericOnly,textarea.alphaNumericOnly").each(function(){
if( $(this).val().trim()!=''){
if(!validString($(this).val())){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.notZero").each(function(){
if( $(this).val().trim()!=''){
if( $(this).val()=='0' || (String($(this).val()).search(regexNumber)!=-1 && eval($(this).val())==0)){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.custom").each(function(){
if( $(this).val().trim()!=''){
if(String($(this).val()).search($(this).attr("regex"))==-1){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.customwithNumeric").each(function(){
if($(this).val().trim()!=''){
if((String($(this).val()).search($(this).attr("regex"))==-1) && (String($(this).val()).search(regexNumberWithCustom)==-1)){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.numberWithNegative").each(function(){
if( $(this).val().trim()!=''){
if(String($(this).val()).search(regexNumberWithNeg)==-1){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.numberWithNegWithoutZero").each(function(){
if( $(this).val().trim()!=''){
if(String($(this).val()).search(regexNumberWithNegWithoutZero)==-1){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.nonZero").each(function(){
if($(this).val().trim() == '0'){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
});
$(formId+' *').filter("input.numberWithNegativeComma").each(function(){
if( $(this).val().trim()!=''){
if(String($(this).val()).search(regexNumberWithNegComma)==-1){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.numberWithComma").each(function(){
if( $(this).val().trim()!=''){
if(String($(this).val()).search(regexNumberWithNegComma)==-1){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.numberWithNegativeAndDot").each(function(){
if( $(this).val().trim()!=''){
if(String($(this).val()).search(regexNumberWithNegDot)==-1){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.numberWithDotAndComma").each(function(){
if( $(this).val().trim()!=''){
if(String($(this).val()).search(regexNumberWithDotAndComma)==-1){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.numberOnlyWithoutZero").each(function(){
if( $(this).val().trim()!=''){
if(String($(this).val()).search(regexNumberWithoutZero)==-1){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.validPulse").each(function(){
if( $(this).val().trim()!=''){
if(!validPulse($(this).val())){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.validBillingcycleName").each(function(){
if( $(this).val().trim()!=''){
if(!validBillingcycleName($(this).val())){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.nonReservedWord").each(function(){
if( $(this).val().trim()!=''){
if(isReservedWord($(this).val())){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.numericOrAlphaNumericOnly").each(function(){
if( $(this).val().trim()!=''){
if(!numericOrAlphaNumericOnly($(this).val())){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.email").each(function(){
if( $(this).val().trim()!=''){
var regex = /^([a-zA-Z0-9_\.\-\+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
if(!regex.test($(this).val())){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.multipleEmail").each(function(){
if( $(this).val().trim()!=''){
var regex = /^([a-zA-Z0-9_\.\-\+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
list_mail=$(this).val().split(',');
for(j = 0; j< list_mail.length; j++){
if(!regex.test(list_mail[j])){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
return;
}
}
}
});
$(formId+' *').filter("input.port").each(function(){
if( $(this).val().trim()!=''){
if(!isNumber($(this).val()) || eval($(this).val()) < 0 || eval($(this).val()) > 65353 ){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.ipAddress").each(function(){
if( $(this).val().trim()!=''){
var regex = /^(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5]))\.(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5]))\.(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5]))\.(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5]))$/;
var ipv6_regex = /^(?:(?:[a-fA-F\d]{1,4}:){7}(?:[a-fA-F\d]{1,4}|:)|(?:[a-fA-F\d]{1,4}:){6}(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|:[a-fA-F\d]{1,4}|:)|(?:[a-fA-F\d]{1,4}:){5}(?::(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,2}|:)|(?:[a-fA-F\d]{1,4}:){4}(?:(?::[a-fA-F\d]{1,4}){0,1}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,3}|:)|(?:[a-fA-F\d]{1,4}:){3}(?:(?::[a-fA-F\d]{1,4}){0,2}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,4}|:)|(?:[a-fA-F\d]{1,4}:){2}(?:(?::[a-fA-F\d]{1,4}){0,3}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,5}|:)|(?:[a-fA-F\d]{1,4}:){1}(?:(?::[a-fA-F\d]{1,4}){0,4}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,6}|:)|(?::(?:(?::[a-fA-F\d]{1,4}){0,5}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,7}|:)))(?:%[0-9a-zA-Z]{1,})?$/;
if(!ipv6_regex.test($(this).val())){
if(!regex.test($(this).val())){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
}
});
$(formId+' *').filter("input.ipAddressdomain").each(function(){
if( $(this).val().trim()!=''){
var regexIP = /^(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5]))\.(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5]))\.(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5]))\.(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5]))$/;
var regexDomain = /^[^.][a-zA-Z0-9-_.]*$/;
// var regexDomain = /^[a-zA-Z0-9_]*[^[a-zA-Z0-9-]*][^[a-zA-Z0-9_ ]*][^[a-zA-Z0-9- ]*]$/;
var ipv6_regex = /^(?:(?:[a-fA-F\d]{1,4}:){7}(?:[a-fA-F\d]{1,4}|:)|(?:[a-fA-F\d]{1,4}:){6}(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|:[a-fA-F\d]{1,4}|:)|(?:[a-fA-F\d]{1,4}:){5}(?::(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,2}|:)|(?:[a-fA-F\d]{1,4}:){4}(?:(?::[a-fA-F\d]{1,4}){0,1}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,3}|:)|(?:[a-fA-F\d]{1,4}:){3}(?:(?::[a-fA-F\d]{1,4}){0,2}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,4}|:)|(?:[a-fA-F\d]{1,4}:){2}(?:(?::[a-fA-F\d]{1,4}){0,3}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,5}|:)|(?:[a-fA-F\d]{1,4}:){1}(?:(?::[a-fA-F\d]{1,4}){0,4}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,6}|:)|(?::(?:(?::[a-fA-F\d]{1,4}){0,5}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,7}|:)))(?:%[0-9a-zA-Z]{1,})?$/;
var val=$(this).val();
if(!ipv6_regex.test($(this).val())){
executeIPV4Validation = false;
ipSplit = val.split('.');
for(k = 0; k< ipSplit.length; k++){
if(String(ipSplit[k]).search(regexNumber)==0){
executeIPV4Validation = true;
}
}
if(executeIPV4Validation) {
if(!regexIP.test($(this).val())){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}else if(!regexDomain.test($(this).val())){
// out.println("domain error");
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}else{
//console.log("ipv6 validation success");
}
}
});
$(formId+' *').filter("input.multiIpAddressDomain").each(function(){
if( $(this).val().trim()!=''){
var regexIP = /^(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5]))\.(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5]))\.(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5]))\.(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5]))$/;
var regexDomain = /^(?!\-)(?:[a-zA-Z\d\-]{0,62}[a-zA-Z\d]\.){1,126}(?!\d+)[a-zA-Z\d]{1,63}$/;
var ipv6_regex = /^(?:(?:[a-fA-F\d]{1,4}:){7}(?:[a-fA-F\d]{1,4}|:)|(?:[a-fA-F\d]{1,4}:){6}(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|:[a-fA-F\d]{1,4}|:)|(?:[a-fA-F\d]{1,4}:){5}(?::(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,2}|:)|(?:[a-fA-F\d]{1,4}:){4}(?:(?::[a-fA-F\d]{1,4}){0,1}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,3}|:)|(?:[a-fA-F\d]{1,4}:){3}(?:(?::[a-fA-F\d]{1,4}){0,2}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,4}|:)|(?:[a-fA-F\d]{1,4}:){2}(?:(?::[a-fA-F\d]{1,4}){0,3}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,5}|:)|(?:[a-fA-F\d]{1,4}:){1}(?:(?::[a-fA-F\d]{1,4}){0,4}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,6}|:)|(?::(?:(?::[a-fA-F\d]{1,4}){0,5}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,7}|:)))(?:%[0-9a-zA-Z]{1,})?$/;
list_ip = $(this).val().split(',');
for(j = 0; j< list_ip.length; j++){
if(!ipv6_regex.test(list_ip[j])){
//console.log(list_ip[j]+" ipv6 not resolved, Length:"+list_ip[j].length);
executeIPV4Validation = false;
ipSplit = list_ip[j].split('.');
for(k = 0; k< ipSplit.length; k++){
if(String(ipSplit[k]).search(regexNumber)==0){
executeIPV4Validation = true;
}
}
if(executeIPV4Validation) {
if(!regexIP.test(list_ip[j])){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
return;
}
}else if(!regexDomain.test(list_ip[j])){
// out.println("domain error");
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
return;
}
}else{
//console.log(list_ip[j]+" ipv6 resolved, Length:"+list_ip[j].length);
}
}
}
});
$(formId+' *').filter("input.multiIpAddress").each(function(){
if( $(this).val().trim()!=''){
var regex = /^(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5]))\.(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5]))\.(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5]))\.(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5]))$/;
var ipv6_regex = /^(?:(?:[a-fA-F\d]{1,4}:){7}(?:[a-fA-F\d]{1,4}|:)|(?:[a-fA-F\d]{1,4}:){6}(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|:[a-fA-F\d]{1,4}|:)|(?:[a-fA-F\d]{1,4}:){5}(?::(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,2}|:)|(?:[a-fA-F\d]{1,4}:){4}(?:(?::[a-fA-F\d]{1,4}){0,1}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,3}|:)|(?:[a-fA-F\d]{1,4}:){3}(?:(?::[a-fA-F\d]{1,4}){0,2}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,4}|:)|(?:[a-fA-F\d]{1,4}:){2}(?:(?::[a-fA-F\d]{1,4}){0,3}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,5}|:)|(?:[a-fA-F\d]{1,4}:){1}(?:(?::[a-fA-F\d]{1,4}){0,4}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,6}|:)|(?::(?:(?::[a-fA-F\d]{1,4}){0,5}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,7}|:)))(?:%[0-9a-zA-Z]{1,})?$/;
list_ip = $(this).val().split(',');
for(j = 0; j< list_ip.length; j++){
if(!ipv6_regex.test(list_ip[j])){
//console.log(list_ip[j]+" ipv6 not resolved, Length:"+list_ip[j].length);
if(!regex.test(list_ip[j])){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
return;
}
}else{
//console.log(list_ip[j]+" ipv6 resolved, Length:"+list_ip[j].length);
}
}
}
});
$(formId+' *').filter("input.numberOnlyDenied").each(function(){
if( $(this).val().trim()!=''){
if(String($(this).val()).search(regexNumber)==-1){
}else{
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.matchExp").each(function(){
if( $(this).val().trim()!=''){
var regex = /^IN\w[0-9]*$/;
var regex1 = /^[0-9]*$/;
var regexSIPTOSIP = "SIPTOSIP";
var regexIN = "IN";
if(!regex.test($(this).val()) && !regex1.test($(this).val()) && !(regexSIPTOSIP == $(this).val()) && !(regexIN == $(this).val())){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.matchExpDest").each(function(){
if( $(this).val().trim()!=''){
var regex = /^IN\w[0-9]*$/;
var regex1 = /^[0-9]*$/;
var regexIN = "IN";
if(!regex.test($(this).val()) && !regex1.test($(this).val()) && !(regexIN == $(this).val())){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
var splMsg=[];
$(formId+' *').filter("input.zeroDenied").each(function(){
if(isNumber($(this).val())){
if( eval($(this).val())==0){
splMsg.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text() +' should not be zero ');
}
}
});
$(formId+' *').filter("input.belowNegativeOneDenied").each(function(){
if(isNumber($(this).val())){
if( eval($(this).val())<-1){
splMsg.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text() +' should be greater than or equal to -1 ');
}
}
});
$(formId+' *').filter("input.simultaneousCall").each(function(){
if( $(this).val().trim()!=''){
if(!isNumber($(this).val()) || $(this).val() == "0" || ( eval($(this).val()) < -1 )){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.length10").each(function(){
if(isNumber($(this).val())){
if( eval($(this).val())==0){
splMsg.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text() +' should not be zero ');
}
}
});
$(formId+' *').filter("input.numberWith1to28orMinus1").each(function(){
if( $(this).val()!=''){
if($(this).val() != '-1' && !validRange($(this).val(),1,28)){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.numberWith1to13orMinus1").each(function(){
if( $(this).val()!=''){
if($(this).val() != '-1' && !validRange($(this).val(),1,13)){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').filter("input.numberWith1to7orMinus1").each(function(){
if($(this).val() != '-1' && $(this).val()!=''){
if(!validRange($(this).val(),1,7)){
ruleFieldArr.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text());
}
}
});
$(formId+' *').each(function(){
classvalue = $(this).attr('class');
elementvalue = $(this).val();
elementid = $(this).attr('id');
localresult = false;
if(classvalue != undefined && elementvalue != undefined){
classvalue.split(' ').map(function(clssName){
if(clssName.startsWith("customlengthchecking")){
localresult= false;
customlengthvalue = clssName.replace("customlengthchecking","");
orValues = customlengthvalue.split("or");
for(var indexval in orValues){
if((elementvalue.length == (orValues[indexval]))){
localresult = true;
break;
}
}
if(!localresult){
ruleFieldArr.push($(formId+' *').filter('[for='+elementid+']').text());
}
}else if(clssName.startsWith("customrangechecking")){
customlengthfromvalue = eval(clssName.split("to")[1].replace("mrangechecking",""));
customlengthtovalue = eval(clssName.split("to")[2]);
localresult = (!isNaN(elementvalue) && eval(elementvalue) >= customlengthfromvalue && eval(elementvalue) <= customlengthtovalue);
if(!localresult){
ruleFieldArr.push($(formId+' *').filter('[for='+elementid+']').text());
}
}else if(clssName.startsWith("customstartswithchecking")){
localresult= false;
customlengthvalue = clssName.replace("customstartswithchecking","");
orValues = customlengthvalue.split("or");
for(var indexval in orValues){
if((elementvalue.startsWith(orValues[indexval]))){
localresult = true;
break;
}
}
if(!localresult){
ruleFieldArr.push($(formId+' *').filter('[for='+elementid+']').text());
}
}
});
}
});
reqFieldArr = reqFieldArr.filter( function( item, index, inputArray ) {
return inputArray.indexOf(item) == index;
});
ruleFieldArr = ruleFieldArr.filter( function( item, index, inputArray ) {
return inputArray.indexOf(item) == index;
});
splMsg = splMsg.filter( function( item, index, inputArray ) {
return inputArray.indexOf(item) == index;
});
if(reqFieldArr.length>0 || ruleFieldArr.length >0 || splMsg.length >0){
var error="";
if(reqFieldArr.length>0){
error='['+reqFieldArr.join(', ')+"] is required \n";
}
if(ruleFieldArr.length>0){
if(error)
error+=", "+'['+ruleFieldArr.join(', ')+"] is invalid value or format";
else
error+='['+ruleFieldArr.join(', ')+"] is invalid value or format";
}
if((reqFieldArr.length>0 || ruleFieldArr.length >0 ) && splMsg.length >0)
error=error+" , "+splMsg.join(', ');
else
error=error+splMsg.join(', ');
return error;
}
$(formId+' *').filter("input.length10").each(function(){
if(isNumber($(this).val())){
if( eval($(this).val())==0){
splMsg.push($(formId+' *').filter('[for='+$(this).attr('id')+']').text() +' should not be zero ');
}
}
});
}catch(e){
console.log('Error '+e);
}
return error;
}
function isNumberWithComma(number){
var strCheck = ",0123456789";
for(var i = 0; i < number.length; i++) {
if(strCheck.indexOf(number.charAt(i)) == -1) {
return false;
}
}
return true;
}
var lang=[];
lang['Active']="Active";
lang['Inactive']="Inactive";
lang['Origination']="Origination";
lang['Termination']="Termination";
lang['Prepaid']="Prepaid";
lang['Postpaid']="Postpaid";
lang['private']="Private";
lang['public']="Public";
lang['User']="User";
lang['Reseller']="Reseller";
lang['GatewayClient']="Gateway Client";
lang['Not Applied']="Not Applied";
lang['Applied']="Applied";
lang['Yes']="Yes";
lang['BLOCKED']="BLOCKED";
lang['ALLOWED']="ALLOWED";
lang['day']="day";
lang['ALL']="ALL";
lang['Default']="Default";
lang['Recording']="Recording";
lang['Both']="Both";
lang['Safe Custody']="Safe Custody";
lang['Disconnected']="Disconnected";
lang['true']="Enable";
lang['false']="Disable";
lang['Processing']="Processing";
lang['Completed']="Completed";
lang['Cancelled']="Cancelled";
lang['Stopped']="Stopped";
lang['Resumed']="Resumed";
lang['Restarted']="Restarted";
lang['Unprocessed']="Unprocessed";
lang['Failed']="Failed";
lang['payment']="Payment";
lang['return']="Return";
lang['CLOSED']="CLOSED";
lang['Open']="OPEN";
lang['Bounced']="BOUNCED";
lang['Closed']="Closed";
lang['Weekly']="Weekly";
lang['Bi-Monthly']="Bi-Monthly";
lang['Monthly']="Monthly";
lang['WEEKLY']="WEEKLY";
lang['MONTHLYTWICE']="MONTHLYTWICE";
lang['MONTHLYONCE']="MONTHLYONCE";
lang['Administrators']="Administrators";
lang['Tech Support']="Tech Support";
lang['Customer Care']="Customer Care";
lang['Finance']="Finance";
lang['Management Information System']="Management Information system";
lang['Network Operation Centre']="Network Operation Centre";
lang['Agent']="Agent";
lang['Country']="Country";
lang['Day']="Day";
lang['Hour']="Hour";
lang['All']="All";
lang['CREDIT']="CREDIT";
lang['DEBIT']="DEBIT";
lang['Package.Pin']="PackagePin";
lang['Recharge']="Recharge";
lang['Top.Up']="TopUp";
lang['CASH']="CASH";
lang['All']="All";
lang['Specific']="Specific";
lang['Blocked']="Blocked";
lang['Allowed']="Allowed";
lang['CREDITCARD']="CreditCard";
lang['CASH']="Cash";
lang['CHEQUE']="Cheque";
lang['Channels']="Channels";
lang['E1']="E1";
lang['T1']="T1";
lang['startswith']="starts with";
lang['SafeCustody']="Safe Custody";
lang['Sunday']="Sunday";
lang['Monday']="Monday";
lang['Tuesday']="Tuesday";
lang['Wednesday']="Wednesday";
lang['Thursday']="Thursday";
lang['Friday']="Friday";
lang['Saturday']="Saturday";
lang['Gateway']="Gateway";
lang['prepaidrenewable']="prepaid";
lang['postpaid']="postpaid";
lang['Enable']="Enable";
lang['Disable']="Disable";
lang['Resellers are not allowed in administrator login']="Resellers are not allowed in administrator login"
lang['Admin is not allowed in reseller login']="Admin is not allowed in reseller login"
lang['PBX accounts are not allowed in administrator login']="PBX accounts are not allowed in administrator login"
lang['Admin is not allowed in PBX accounts login']="Admin is not allowed in PBX accounts login"
lang['Admin is not allowed in SIPTRUNK accounts login']="Admin is not allowed in SIPTRUNK accounts login"
lang['SIPTRUNK account is not allowed in PBX accounts login']="SIPTRUNK account is not allowed in PBX accounts login"
lang['PBX account is not allowed in SIPTRUNK accounts login']="PBX account is not allowed in SIPTRUNK accounts login"
lang['Reseller is not allowed in PBX accounts login']="Reseller is not allowed in PBX accounts login"
lang['Reseller is not allowed in SIPTRUNK accounts login']="Reseller is not allowed in SIPTRUNK accounts login"
lang['PBX accounts are not allowed in reseller login']="PBX accounts are not allowed in reseller login"
lang['SIPTRUNK accounts are not allowed in reseller login']="SIPTRUNK accounts are not allowed in reseller login"
lang['Invalid User']="Invalid User"
lang['New password sent to mail-id']="New password sent to mail-id"
lang['Failed to Parse Uploaded Sheet, Label Row Number may be Invalid']="Failed to Parse Uploaded Sheet, Label Row Number may be Invalid"
lang['session Expired']="session Expired"
lang['File Attachment Missing']="File Attachment Missing"
lang['Call Not allowed in Customer Rate Sheet']="Call Not allowed in Customer Rate Sheet"
lang['Not Available in Customer Rate Sheet']="Not Available in Customer Rate Sheet"
lang['Destination Blocked in Customer Rate Sheet']="Destination Blocked in Customer Rate Sheet"
lang['national']="National"
lang['international']="International"
lang['Bank Identification']="Bank Identification"
lang['Bank Header']="Bank Header"
lang['Bank Name']="Bank Name"
lang['Name of Account']="Name of Account"
lang['Account Number']="Account Number"
lang['Branch Name']="Branch Name"
lang['IFSC Code']="IFSC Code"
lang['SWIFT Code']="SWIFT Code"
lang['Address']="Address"
lang['Payment Details']="Payment Details"
lang['Account Holder']="Account Holder"
lang['IBAN']="IBAN"
lang['Subscriber']="Subscriber"
lang['Carrier']="Carrier"
var returnText;
function getText(engText){
returnText=lang[engText];
if(returnText!=undefined)
return returnText;
else
return engText;
}
lang['dtlang'] = {
"sProcessing": "Please wait...",
"sLengthMenu": "Show _MENU_ entries",
"sZeroRecords": "No entries available.",
"sInfo": "Showing _START_ to _END_ of _TOTAL_ records",
"sInfoEmpty": "Showing 0 to 0 of 0 records",
"sInfoFiltered": "(filtered from _MAX_ total records)",
"sInfoPostFix": "",
"sSearch": "Search",
"oPaginate": {
"sFirst": "First",
"sPrevious": "Previous",
"sNext": "Next",
"sLast": "Last"
}
};
lang['timepicker'] = {
"currentText": "Now",
"closeText": "Done",
"amNames": [
"AM",
"A"
],
"pmNames": [
"PM",
"P"
],
"timeFormat": "HH:mm",
"timeSuffix": "",
"timeOnlyTitle": "Choose Time",
"timeText":"Time",
"hourText":"Hour" ,
"minuteText": "Minute",
"secondText": "Second",
"millisecText": "Millisecond",
"microsecText": "Microsecond",
"timezoneText":"Time Zone" ,
"isRTL": "false"
};