Включение логина / регистрации пользователя перед отправкой гравитационной формы - PullRequest
0 голосов
/ 21 мая 2019

Мне нужно запросить у пользователя логин / регистрацию перед отправкой Gravity Form. Я применил шаги, упомянутые ниже:

  1. При нажатии кнопки отправки в Gravity Form отображается всплывающее окно, в котором отображаются вкладки «Вход» и «Регистрация».

  2. После успешного входа в систему / регистрации всплывающее окно закрывается и кнопка отправки гравитационной формы снова запускается. Но он не обрабатывается из-за e.preventDefault (), я думаю

        jQuery(document).ready(function($){
            var data = 'action=gp_check_user_status';
        		$.ajax({
        			url: gp_localize.adminurl,
        			type: 'GET',
        			data: data,
        			success: function(response) {
        				user_status = response;
        				console.log(user_status);
        			}
        		});
                
                //Gravity Form Submission
                $('#gform_submit_button_1').on('click',function(e) {
        	
        	if(user_status == false) {
        		console.log("under false");
        		//e.preventDefault();
        		$('.xoo-el-login-tgr').trigger('click');
        		return false;
        	}else{
        		console.log("under true");
        		$( '.xoo-el-login-tgr' ).unbind( "click" );
        		return true;
        	}
          	});
        
    //Login/Registration Process
    //Popup(xoo-el-login-tgr) is processed here
    
    var form_data = $form.serialize()+'&action=xoo_el_form_action';
        
        			$.ajax({
        				url: xoo_el_localize.adminurl,
        				type: 'POST',
        				data: form_data,
        				success: function(response){
        				
        					$button.removeClass('xoo-el-processing').html(old_btn_txt);
        
        					if(response.error == 1){ //has errors
        						show_notice(response.notice,'error', $form);
        					}
        					else{
        						if($button.hasClass('xoo-el-lostpw-btn')){
        							$button.parents('.xoo-el-action-form').hide();
        							$button.parents('.xoo-el-fields').append(response.notice);
        						}
        						else{
        							user_status = true;
        							//show_notice(response.notice,'success', $form);
        							//$('.xoo-el-inmodal').css('display','none');
        							$('html, body , .xoo-el-container').removeClass('xoo-el-popup-active');
        							$('html, body , .xoo-el-container').removeClass('xoo-el-popup-active');
        								$( '.xoo-el-login-tgr' ).unbind( "click" );
        								$('#gform_submit_button_1').trigger('click');
        
        							
        						}
        					}
        				}
        			})
    
    }
       });
...