function wpsolr_admin_action_form_temporary_index(&$response_object)
{
    // recaptcha response
    $g_recaptcha_response = isset($_POST['g-recaptcha-response']) ? $_POST['g-recaptcha-response'] : '';
    // A recaptcha response must be set
    if (empty($g_recaptcha_response)) {
        return;
    }
    $form_data = WpSolrExtensions::extract_form_data(true, array('managed_solr_service_id' => array('default_value' => '', 'can_be_empty' => false)));
    $managed_solr_server = new OptionManagedSolrServer($form_data['managed_solr_service_id']['value']);
    $response_object = $managed_solr_server->call_rest_create_solr_index($g_recaptcha_response);
    if (isset($response_object) && OptionManagedSolrServer::is_response_ok($response_object)) {
        $option_indexes_object = new OptionIndexes();
        $option_indexes_object->create_index($managed_solr_server->get_id(), OptionIndexes::STORED_INDEX_TYPE_MANAGED_TEMPORARY, OptionManagedSolrServer::get_response_result($response_object, 'urlCore'), 'Test index from ' . $managed_solr_server->get_label(), OptionManagedSolrServer::get_response_result($response_object, 'urlScheme'), OptionManagedSolrServer::get_response_result($response_object, 'urlDomain'), OptionManagedSolrServer::get_response_result($response_object, 'urlPort'), '/' . OptionManagedSolrServer::get_response_result($response_object, 'urlPath') . '/' . OptionManagedSolrServer::get_response_result($response_object, 'urlCore'), OptionManagedSolrServer::get_response_result($response_object, 'key'), OptionManagedSolrServer::get_response_result($response_object, 'secret'));
        // Redirect automatically to Solr options if it is the first solr index created
        if (count($option_indexes_object->get_indexes()) === 1) {
            $redirect_location = '?page=solr_settings&tab=solr_option';
            header("Location: {$redirect_location}", true, 302);
            // wp_redirect() is not found
            exit;
        }
    }
}
         */
        $is_submit_form_logout = isset($_POST['submit-form-logout']);
        if ($is_submit_form_logout) {
            // Clear the managed service token
            $managed_solr_server->set_service_option('token', '');
        }
        /*
         *  Form signin ?
         */
        $is_submit_form_signin = isset($_POST['submit-form-signin']);
        $form_data = WpSolrExtensions::extract_form_data($is_submit_form_signin, array('email' => array('default_value' => wp_get_current_user()->user_email, 'is_email' => true), 'password' => array('default_value' => '', 'can_be_empty' => false)));
        if ($is_submit_form_signin) {
            if (!$form_data['is_error']) {
                $result_object = $managed_solr_server->call_rest_signin($form_data['email']['value'], $form_data['password']['value']);
                if (OptionManagedSolrServer::is_response_ok($result_object)) {
                    $token = OptionManagedSolrServer::get_response_result($result_object, 'token');
                    $managed_solr_server->set_service_option('token', $token);
                }
            }
        }
        // Display a signin form
        if ('' != $managed_solr_server->get_service_option('token')) {
            WpSolrExtensions::require_with(WpSolrExtensions::get_option_template_file(WpSolrExtensions::OPTION_MANAGED_SOLR_SERVERS, 'template-my-accounts.php'), array('form_data' => $form_data, 'managed_solr_server' => $managed_solr_server, 'option_name' => $option_name));
        } else {
            WpSolrExtensions::require_with(WpSolrExtensions::get_option_template_file(WpSolrExtensions::OPTION_MANAGED_SOLR_SERVERS, 'template-signin-form.php'), array('form_data' => $form_data, 'managed_solr_server' => $managed_solr_server, 'option_name' => $option_name));
        }
        break;
}
?>

        if ($is_index_type_temporary) {
            // Check that the temporary index is still temporary on the server.
            $managed_solr_server = new OptionManagedSolrServer($option_object->get_index_managed_solr_service_id($index));
            $response_object = $managed_solr_server->call_rest_get_temporary_solr_index_status($index_indice);
            if (OptionManagedSolrServer::is_response_ok($response_object)) {
                $is_index_unknown_on_server = OptionManagedSolrServer::get_response_result($response_object, 'isUnknown');
                if ($is_index_unknown_on_server) {
                    // Change the solr index type to managed
                    $option_object->update_index_property($index_indice, OptionIndexes::INDEX_TYPE, OptionIndexes::STORED_INDEX_TYPE_UNMANAGED);
                    // Display message
                    $response_error = 'This temporary solr core has expired and was therefore deleted. You can remove it from your configuration';
                    // No more readonly therefore
                    $is_index_type_temporary = false;
                    $is_index_readonly = false;
                } else {
                    $is_index_type_temporary_on_server = OptionManagedSolrServer::get_response_result($response_object, 'isTemporary');
                    if (!$is_index_type_temporary_on_server) {
                        // Change the solr index type to managed
                        $option_object->update_index_property($index_indice, OptionIndexes::INDEX_TYPE, OptionIndexes::STORED_INDEX_TYPE_MANAGED);
                        // No more readonly therefore
                        $is_index_type_temporary = false;
                        $is_index_readonly = false;
                    }
                }
            } else {
                $response_error = isset($response_object) && !OptionManagedSolrServer::is_response_ok($response_object) ? OptionManagedSolrServer::get_response_error_message($response_object) : '';
            }
        }
    }
    ?>
 /**
  * Ajax call to activate a license
  */
 public static function ajax_activate_licence()
 {
     $subscription_number = isset($_POST['data']) && isset($_POST['data'][self::FIELD_LICENSE_SUBSCRIPTION_NUMBER]) ? $_POST['data'][self::FIELD_LICENSE_SUBSCRIPTION_NUMBER] : null;
     $license_package = isset($_POST['data']) && isset($_POST['data'][self::FIELD_LICENSE_PACKAGE]) ? $_POST['data'][self::FIELD_LICENSE_PACKAGE] : null;
     $license_matching_reference = isset($_POST['data']) && isset($_POST['data'][self::FIELD_LICENSE_MATCHING_REFERENCE]) ? $_POST['data'][self::FIELD_LICENSE_MATCHING_REFERENCE] : null;
     $managed_solr_server = new OptionManagedSolrServer();
     $response_object = $managed_solr_server->call_rest_activate_license(self::get_license_api_url(), $license_matching_reference, $subscription_number);
     if (isset($response_object) && OptionManagedSolrServer::is_response_ok($response_object)) {
         // Save the license type activation
         $licenses = self::get_option_data(self::OPTION_LICENSES, array());
         $licenses[$license_package] = array(self::FIELD_IS_ACTIVATED => true, self::FIELD_LICENSE_SUBSCRIPTION_NUMBER => $subscription_number, self::FIELD_LICENSE_ACTIVATION_UUID => OptionManagedSolrServer::get_response_result($response_object, 'uuid'));
         self::set_option_data(self::OPTION_LICENSES, $licenses);
     }
     // Return the whole object
     echo json_encode($response_object);
     die;
 }