You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
282 lines
10 KiB
282 lines
10 KiB
var register = (function($, window, jQuery) {
|
|
return {
|
|
"getStates" : function(country) {
|
|
$('#state').empty()
|
|
$('#state').append('<option value="">Veuillez sélectionner</option>');
|
|
$.ajax({
|
|
url : baseurl+"country/get-states?country="+country,
|
|
type : "GET",
|
|
success : function(result) {
|
|
$.each(result, function(key, state) {
|
|
if(state!== '')
|
|
$('#state').append('<option value="' + state + '">' + state + '</option>');
|
|
});
|
|
}
|
|
});
|
|
},
|
|
"isEmail": function(email) {
|
|
var regex = /^([a-zA-Z0-9_\.\-\+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
|
|
if(!regex.test(email)) {
|
|
return false;
|
|
}else{
|
|
return true;
|
|
}
|
|
},
|
|
"isPasswordMatched": function(password, confirm_password) {
|
|
if(password !== confirm_password) {
|
|
return false;
|
|
}
|
|
return true;
|
|
},
|
|
"validateTypeInputs": function(segment) {
|
|
if(segment !== 'regular') {
|
|
var errorFields=[];
|
|
$("form#form_registration_type input[required]").each(function(){
|
|
var attrib = $(this).attr('id');
|
|
if ($(this).val().trim() == ''){
|
|
$("#error_"+attrib).html('Ce champ est obligatoire.').show();
|
|
$(this).css({'border' : '1px solid red'})
|
|
errorFields.push(attrib);
|
|
}else{
|
|
$("#error_"+attrib).hide();
|
|
$(this).css({'border' : ''})
|
|
}
|
|
})
|
|
if(errorFields.length > 0) {
|
|
$("#"+errorFields[0]).focus();
|
|
return false;
|
|
}
|
|
if(segment === 'student') {
|
|
register.validateFile();
|
|
}
|
|
}
|
|
$("#form_registration_type").attr('action', baseurl+'registration/'+segment+'/details');
|
|
},
|
|
"validateFile": function() {
|
|
var file = $('#student_file').val();
|
|
$('#error_student_file').hide();
|
|
$('#student_file_label').html('Choose file');
|
|
$('#student_file').css({'border' : ''});
|
|
if (file) {
|
|
if (!file.match(/\.(?:jpg|jpeg|png)$/)) {
|
|
var errorMessage = 'Invalid file. Upload image[jpg, jpeg, png]';
|
|
$('#error_student_file').html(errorMessage).show();
|
|
setTimeout(function() {
|
|
$('#error_student_file').hide();
|
|
}, 3000);
|
|
$('#student_file').val('');
|
|
return false;
|
|
}
|
|
$('#student_file_label').html(file.split("\\").pop());
|
|
}
|
|
},
|
|
"populateDetails": function(details) {
|
|
if(details) {
|
|
$('#country').val(details.country);
|
|
$('#sponsorship').val(details.sponsorship);
|
|
$('#news_subscription').val(details.news_subscription);
|
|
$('#civil_status').val(details.civil_status?details.civil_status:details.civility);
|
|
}
|
|
},
|
|
"openNotificationModal": function() {
|
|
$.ajax({
|
|
url : baseurl+"payment//check-failure-payment",
|
|
type : "GET",
|
|
success : function(result) {
|
|
if(result.failure_message) {
|
|
$('#errorPayment').modal('show');
|
|
$('#payment_error_message').text(result.failure_message);
|
|
}
|
|
}
|
|
});
|
|
}
|
|
|
|
}
|
|
})(jQuery, this);
|
|
|
|
$(function(){
|
|
var isDisabled = false
|
|
$('#cheque_address').hide();
|
|
$('#submit_registration').css('cursor','no-drop');
|
|
$('#country').on('change', function() {
|
|
register.getStates(this.value);
|
|
});
|
|
|
|
if(typeof userDetails !== 'undefined') {
|
|
register.populateDetails(userDetails);
|
|
}
|
|
register.openNotificationModal();
|
|
|
|
$('#email_address').on('input',function() {
|
|
if(register.isEmail($(this).val().trim())) {
|
|
$('#error_email_address').hide();
|
|
$(this).css({'border' : ''});
|
|
} else {
|
|
$('#error_email_address').html('Invalid email').show();
|
|
$(this).css({'border' : '1px solid red'});
|
|
}
|
|
});
|
|
$('#email_address').blur(function() {
|
|
$.ajax({
|
|
url : baseurl+"check_email",
|
|
type : "POST",
|
|
data : {
|
|
email: $('#email_address').val().trim()
|
|
},
|
|
success : function(result) {
|
|
var isCheck = $('#terms').is(":checked")
|
|
if(result.mtype === 'error') {
|
|
$('#error_email_address').hide();
|
|
$('#email_address').css({'border' : ''});
|
|
isDisabled = false
|
|
if(isCheck) {
|
|
$('#submit_registration').css('cursor','pointer');
|
|
$("#submit_registration").removeAttr("disabled");
|
|
}
|
|
} else {
|
|
$('#error_email_address').html(result.message).show();
|
|
$('#email_address').css({'border' : '1px solid red'});
|
|
$('#submit_registration').css('cursor','no-drop');
|
|
$("#submit_registration").attr("disabled", true);
|
|
isDisabled = true
|
|
}
|
|
}
|
|
})
|
|
});
|
|
$('#sponsored_email').on('input', function(){
|
|
if(register.isEmail($(this).val().trim())) {
|
|
$('#error_sponsored_email').hide();
|
|
$(this).css({'border' : ''});
|
|
} else {
|
|
$('#error_sponsored_email').html('Invalid email').show();
|
|
$(this).css({'border' : '1px solid red'});
|
|
}
|
|
});
|
|
|
|
$("#submit_registration").click(function(e){
|
|
var errorFields = [];
|
|
$("form#registration_details input[required], form#registration_details select[required]").each(function(){
|
|
var attrib = $(this).attr('id');
|
|
if ($(this).val().trim() == ''){
|
|
$("#error_"+attrib).html('Ce champ est obligatoire.').show();
|
|
$(this).css({'border' : '1px solid red'})
|
|
errorFields.push(attrib);
|
|
}else{
|
|
$("#error_"+attrib).hide();
|
|
$(this).css({'border' : ''})
|
|
}
|
|
})
|
|
if(errorFields.length > 0) {
|
|
$("#"+errorFields[0]).focus();
|
|
return false;
|
|
}
|
|
$("#registration_details").attr('action', baseurl+'payment');
|
|
})
|
|
|
|
$("#postal_code").keyup(function(e) {
|
|
if (/\D/g.test($(this).val())) {
|
|
this.value = this.value.replace(/\D/g, '');
|
|
}
|
|
});
|
|
$("#phone_number").keyup(function(e) {
|
|
if (/\D/g.test($(this).val())) {
|
|
this.value = this.value.replace(/\D/g, '');
|
|
}
|
|
});
|
|
$('#civil_status').on('change', function(){
|
|
$('#error_civil_status').hide();
|
|
$('#civil_status').css({'border' : ''});
|
|
});
|
|
$('#postal_code').on('input', function(){
|
|
$('#error_postal_code').hide();
|
|
$('#postal_code').css({'border' : ''});
|
|
});
|
|
$('#address').on('input', function(){
|
|
$('#error_address').hide();
|
|
$('#address').css({'border' : ''});
|
|
});
|
|
$('#city').on('input', function(){
|
|
$('#error_city').hide();
|
|
$('#city').css({'border' : ''});
|
|
});
|
|
$('#country').on('input', function(){
|
|
$('#error_country').hide();
|
|
$('#country').css({'border' : ''});
|
|
});
|
|
$('#phone_number').on('input', function(){
|
|
$('#error_phone_number').hide();
|
|
$('#phone_number').css({'border' : ''});
|
|
});
|
|
$('#news_subscription').on('change', function(){
|
|
$('#error_news_subscription').hide();
|
|
$('#news_subscription').css({'border' : ''});
|
|
});
|
|
$('#sponsorship').on('change', function(){
|
|
$('#error_sponsorship').hide();
|
|
$('#sponsorship').css({'border' : ''});
|
|
});
|
|
$('#firstname').on('input', function(){
|
|
$('#error_firstname').hide();
|
|
$('#firstname').css({'border' : ''});
|
|
});
|
|
$('#lastname').on('input', function(){
|
|
$('#error_lastname').hide();
|
|
$('#lastname').css({'border' : ''});
|
|
});
|
|
$('#student_id').on('input', function(){
|
|
$('#error_student_id').hide();
|
|
$('#student_id').css({'border' : ''});
|
|
});
|
|
$('#sponsored_name').on('input', function(){
|
|
$('#error_sponsored_name').hide();
|
|
$('#sponsored_name').css({'border' : ''});
|
|
});
|
|
$('#shareholder_id').on('input', function(){
|
|
$('#error_shareholder_id').hide();
|
|
$('#shareholder_id').css({'border' : ''});
|
|
});
|
|
$('#password').on('input', function(){
|
|
$('#error_password').hide();
|
|
$('#password').css({'border' : ''});
|
|
var isMatched = register.isPasswordMatched($('#password').val().trim(), $('#confirm_password').val().trim())
|
|
if(isMatched) {
|
|
$('#error_confirm_password').hide();
|
|
$('#confirm_password').css({'border' : ''});
|
|
} else {
|
|
$("#error_confirm_password").html("Password didn't matched").show();
|
|
$("#confirm_password").css({'border' : '1px solid red'})
|
|
}
|
|
});
|
|
|
|
$('#confirm_password').on('input', function(){
|
|
var isMatched = register.isPasswordMatched($('#password').val().trim(), $('#confirm_password').val().trim())
|
|
if(isMatched) {
|
|
$('#error_confirm_password').hide();
|
|
$('#confirm_password').css({'border' : ''});
|
|
} else {
|
|
$("#error_confirm_password").html("Password didn't matched").show();
|
|
$("#confirm_password").css({'border' : '1px solid red'})
|
|
}
|
|
});
|
|
|
|
$('#student_file').on('change', function() {
|
|
register.validateFile();
|
|
});
|
|
$('#cheque').on('change', function(){
|
|
$('#cheque_address').show();
|
|
});
|
|
$('#card').on('change', function(){
|
|
$('#cheque_address').hide();
|
|
});
|
|
$('#terms').on('change', function(){
|
|
var isCheck = $('#terms').is(":checked")
|
|
if(isCheck && !isDisabled) {
|
|
$('#submit_registration').css('cursor','pointer');
|
|
$("#submit_registration").removeAttr("disabled");
|
|
}
|
|
else {
|
|
$('#submit_registration').css('cursor','no-drop');
|
|
$("#submit_registration").attr("disabled", true);
|
|
}
|
|
});
|
|
});
|