Skip to content

Instantly share code, notes, and snippets.

@panoslyrakis
Created July 13, 2017 10:43
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save panoslyrakis/afadb553ed0ec370ef85d6aa1fcc03a5 to your computer and use it in GitHub Desktop.
Save panoslyrakis/afadb553ed0ec370ef85d6aa1fcc03a5 to your computer and use it in GitHub Desktop.
Redirect to checkout page after appointment made
<?php
//Requires App+ and MarketPress
add_action( 'wp_footer', function(){
global $post;
if( ! $post instanceof WP_Post || strpos( $post->post_content, '[app_' ) === false || ! function_exists('mp_store_page_url') ){
return;
}
$checkout_page = mp_store_page_url( 'checkout', false );
?>
<script type="text/javascript">
(function($){
var WPMUDEV_App_Post_Confirm = {
load: function(){
$( document ).ajaxComplete(function( event, xhr, settings ) {
var action = WPMUDEV_App_Post_Confirm.get_action( 'action', settings.data );
var response = JSON.parse(xhr.responseText);
if( action == 'post_confirmation' && typeof response.error === 'undefined' ){
document.location="<?php echo $checkout_page; ?>";
}
});
},
get_action: function(name, url){
if (!url){
return '';
}
name = name.replace(/[\[\]]/g, "\\$&");
//var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"),
var regex = new RegExp(name + "(=([^&#]*)|&|#|$)"),
results = regex.exec(url);
if (!results) return null;
if (!results[2]) return '';
return decodeURIComponent(results[2].replace(/\+/g, " "));
}
};
$( document ).ready(function(){
WPMUDEV_App_Post_Confirm.load();
});
})(jQuery);
</script>
<?php
}, 10 );
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment