(function($){
"use strict";
var addonAjaxForm={
init: function(){
this.ajaxLogin();
this.ajaxLostPassword();
this.ajaxRegistration();
this.ajaxChangePassword();
this.ajaxChangeUserInfo();
this.ajaxWishlist();
this.ajaxLoadPackage();
this.ajaxApplyPackage();
this.popup();
},
ajaxLogin: function(){
$('form#ajax-login-form').on('submit', function(e){
var form=$(this);
var form_name='form#ajax-login-form';
$(form_name).addClass('ajax-preload');
$.ajax({
type: 'POST',
dataType: 'json',
url: form_ajax_object.ajaxurl,
data: {
'action': 'ajaxlogin',
'username': $(form_name + ' #username').val(),
'password': $(form_name + ' #password').val(),
'security': form_ajax_object.security_nonce
},
success: function(data){
$('.form-status', form).show().html(data.message);
if(data.logged_in==true){
document.location.href=form_ajax_object.redirecturl;
}
$(form_name).removeClass('ajax-preload');
},
error: function(data){
$(form).removeClass('ajax-preload');
}});
e.preventDefault();
});
},
ajaxLostPassword: function(){
$('form#lost-password-form').on('submit', function(e){
var form=$(this);
var form_name='form#lost-password-form';
$(form_name).addClass('ajax-preload');
$.ajax({
type: 'POST',
dataType: 'json',
url: form_ajax_object.ajaxurl,
data: {
'action': 'tolips_lost_password',
'user_login': $('#forget_pwd_user_login').val(),
'security': form_ajax_object.security_nonce
},
success: function(data){
$('.form-status', form).show().html(data.message);
$(form_name).removeClass('ajax-preload');
},
error: function(data){
$(form).removeClass('ajax-preload');
}});
e.preventDefault();
return false;
});
},
ajaxChangePassword: function(){
$('form#change_password').on('submit', function(e){
var form=$(this);
$(form).addClass('ajax-preload');
$.ajax({
type: 'POST',
dataType: 'json',
url: form_ajax_object.ajaxurl,
data: {
'action': 'tolips_change_password',
'old_password': $('#old_password').val(),
'new_password': $('#new_password').val(),
're_password': $('#re_password').val(),
'security': form_ajax_object.security_nonce
},
success: function(data){
$('.form-status', form).show().html(data.message);
$(form).removeClass('ajax-preload');
},
error: function(data){
$(form).removeClass('ajax-preload');
}});
e.preventDefault();
$(form).removeClass('ajax-preload');
return false;
});
if($('#forgot_password').length){
}},
ajaxRegistration: function(){
$('form#ajax-register-user').on('submit', function(e){
var form=$(this);
var form_name='form#ajax-register-user';
$(form).addClass('ajax-preload');
var user_name=$('#register-username').val();
var user_email=$('#register-useremail').val();
var user_password=$('#register-userpassword').val();
var re_user_password=$('#register-re-pwd').val();
$.ajax({
type: 'POST',
dataType: 'json',
url: form_ajax_object.ajaxurl,
data: {
'action': "register_user_frontend",
'user_name': user_name,
'user_email': user_email,
'user_password': user_password,
're_user_password': re_user_password,
'security': form_ajax_object.security_nonce
},
success: function(data){
$(form).removeClass('ajax-preload');
$('.form-status', form).show().html(data.message);
},
error: function(data){
$(form).removeClass('ajax-preload');
}});
e.preventDefault();
});
},
ajaxChangeUserInfo: function(){
$('form.lt-change-profile-form').on('submit', function(e){
e.preventDefault();
var form=$(this);
$(form).addClass('loading');
$.ajax({
type:'POST',
dataType: 'json',
url: form_ajax_object.ajaxurl,
data: {
'action': "tolips_change_user_info",
'form_data': form.serialize(),
'security': form_ajax_object.security_nonce
},
}).done(function(data){
$('.form-status', form).show().html(data.message);
});
});
},
ajaxWishlist: function(){
$(document).delegate('.ajax-wishlist-link.wishlist-add', 'click', function(e){
$(this).addClass('ajax-preload');
var link=$(this);
var post_id=$(this).data('post_id');
$.ajax({
type: 'POST',
dataType: 'json',
url: form_ajax_object.ajaxurl,
data: {
'action': "tolips_wishlist",
'post_id': post_id,
'mode':'add',
'security': form_ajax_object.security_nonce
},
success: function(data){
link.removeClass('ajax-preload');
link.removeClass('wishlist-add');
link.addClass('wishlist-remove');
if(!data.logged_in){
$('#form-ajax-login-popup').modal('show');
}
console.log(data.add_wishlist);
if(data.add_wishlist=='added'){
link.addClass('wishlist-added');
}},
error: function(data){
console.log('error');
}});
e.preventDefault();
});
$(document).delegate('.ajax-wishlist-link.wishlist-remove', 'click', function(e){
$(this).addClass('ajax-preload');
var link=$(this);
var post_id=$(this).data('post_id');
$.ajax({
type: 'POST',
dataType: 'json',
url: form_ajax_object.ajaxurl,
data: {
'action': "tolips_wishlist",
'post_id': post_id,
'mode':'remove',
'security': form_ajax_object.security_nonce
},
success: function(data){
link.removeClass('ajax-preload');
link.addClass('wishlist-add');
link.removeClass('wishlist-remove');
if(!data.logged_in){
$('#form-ajax-login-popup').modal('show');
}
console.log(data.remove_wishlist);
if(data.remove_wishlist=='removed'){
link.removeClass('wishlist-added');
}},
error: function(data){
console.log('error');
}});
e.preventDefault();
});
},
ajaxLoadPackage: function(){
$('.load-lt-package').on('click', function(e){
$('#popup-ajax-package .ajax-package-form-content').html('');
var listing_id=$(this).data('id');
$.ajax({
type: 'POST',
dataType: 'json',
url: form_ajax_object.ajaxurl,
data: {
'action':'load_lt_package',
'listing_id':listing_id,
'security':form_ajax_object.security_nonce
},
success: function(data){
$('#popup-ajax-package .ajax-package-form-content').html(data.html);
}});
e.preventDefault();
});
},
ajaxApplyPackage: function(){
$('.ajax-package-form-content').delegate('.btn-apply-package', 'click', function(e){
var listing_id=$(this).parents('.ajax-package-form-content').find('#listing-id-val').val();
var package_id=$(this).parents('.ajax-package-form-content').find('input[name=lt_package_choose]:checked').val();
var button=$(this);
$.ajax({
type: 'POST',
dataType: 'json',
url: form_ajax_object.ajaxurl,
data: {
'action':'lt_apply_package',
'listing_id':listing_id,
'package_id':package_id,
'security':form_ajax_object.security_nonce
},
success: function(data){
$(button).parents('.ajax-package-form-content').find('.notice-text').html(data.notice);
if(data._status=='success'){
location.reload();
}}
});
e.preventDefault();
});
},
popup: function(){
$('a.lost-popup').on('click', function(){
$('#form-ajax-login-popup').modal('hide');
});
$('a.registration-popup').on('click', function(){
$('#form-ajax-login-popup').modal('hide');
$('#form-ajax-lost-password-popup').modal('hide');
});
$('a.login-popup').on('click', function(){
$('#form-ajax-registration-popup').modal('hide');
$('#form-ajax-lost-password-popup').modal('hide');
});
$('.modal').on("hidden.bs.modal", function (e){
if($('.modal:visible').length){
$('body').addClass('modal-open');
}});
}}
$(document).ready(function(){
addonAjaxForm.init();
})
})(jQuery);