$w3tc_url, 'email' => get_bloginfo( 'admin_email' ), 'first_name' => $u->first_name, 'last_name' => $u->last_name, 'form_hash' => $w3tc_support_form_hash, 'field_name' => $w3tc_support_field_name, 'field_value' => $w3tc_support_field_value, 'postprocess' => rawurlencode( rawurlencode( Util_Ui::admin_url( // The _wpnonce minted here is forwarded by options() into the w3tc_support_send_details action URL. Util_Nonce::admin_nonce_url( 'admin.php', 'w3tc_support_send_details' ) . '&page=w3tc_support&done=1' ) ) ), ) ); } /** * Displays the options page for W3TC support. * * This method renders the appropriate content based on the request parameters. * If a "done" parameter is detected, it processes the request and displays * the post-process content. Otherwise, it loads the main support page content. * * @return void */ public function options() { if ( ! empty( Util_Request::get_string( 'done' ) ) ) { $postprocess_url = 'admin.php?page=w3tc_support&w3tc_support_send_details' . '&_wpnonce=' . rawurlencode( Util_Request::get_string( '_wpnonce' ) ); foreach ( $_GET as $w3tc_p => $v ) { // phpcs:ignore WordPress.Security.NonceVerification.Recommended if ( 'page' !== $w3tc_p && '_wpnonce' !== $w3tc_p && 'done' !== $w3tc_p ) { $postprocess_url .= '&' . rawurlencode( $w3tc_p ) . '=' . rawurlencode( Util_Request::get_string( $w3tc_p ) ); } } // terms accepted as a part of form. Licensing_Core::terms_accept(); include W3TC_DIR . '/Support_Page_View_DoneContent.php'; } else { include W3TC_DIR . '/Support_Page_View_PageContent.php'; } } }