Jetpack::jetpack_jitm_ajax_callback PHP Method

jetpack_jitm_ajax_callback() public method

The callback for the JITM ajax requests.
    function jetpack_jitm_ajax_callback()
    {
        // Check for nonce
        if (!isset($_REQUEST['jitmNonce']) || !wp_verify_nonce($_REQUEST['jitmNonce'], 'jetpack-jitm-nonce')) {
            wp_die('Module activation failed due to lack of appropriate permissions');
        }
        if (isset($_REQUEST['jitmActionToTake']) && 'activate' == $_REQUEST['jitmActionToTake']) {
            $module_slug = $_REQUEST['jitmModule'];
            Jetpack::log('activate', $module_slug);
            Jetpack::activate_module($module_slug, false, false);
            Jetpack::state('message', 'no_message');
            //A Jetpack module is being activated through a JITM, track it
            $this->stat('jitm', $module_slug . '-activated-' . JETPACK__VERSION);
            $this->do_stats('server_side');
            wp_send_json_success();
        }
        if (isset($_REQUEST['jitmActionToTake']) && 'dismiss' == $_REQUEST['jitmActionToTake']) {
            // get the hide_jitm options array
            $jetpack_hide_jitm = Jetpack_Options::get_option('hide_jitm');
            $module_slug = $_REQUEST['jitmModule'];
            if (!$jetpack_hide_jitm) {
                $jetpack_hide_jitm = array($module_slug => 'hide');
            } else {
                $jetpack_hide_jitm[$module_slug] = 'hide';
            }
            Jetpack_Options::update_option('hide_jitm', $jetpack_hide_jitm);
            //jitm is being dismissed forever, track it
            $this->stat('jitm', $module_slug . '-dismissed-' . JETPACK__VERSION);
            $this->do_stats('server_side');
            wp_send_json_success();
        }
        if (isset($_REQUEST['jitmActionToTake']) && 'launch' == $_REQUEST['jitmActionToTake']) {
            $module_slug = $_REQUEST['jitmModule'];
            // User went to WordPress.com, track this
            $this->stat('jitm', $module_slug . '-wordpress-tools-' . JETPACK__VERSION);
            $this->do_stats('server_side');
            wp_send_json_success();
        }
        if (isset($_REQUEST['jitmActionToTake']) && 'viewed' == $_REQUEST['jitmActionToTake']) {
            $track = $_REQUEST['jitmModule'];
            // User is viewing JITM, track it.
            $this->stat('jitm', $track . '-viewed-' . JETPACK__VERSION);
            $this->do_stats('server_side');
            wp_send_json_success();
        }
    }
Jetpack