'count' => count( $results ),
'queue' => $results,
)
);
}
function ebp_quote_bridge_request_ids( WP_REST_Request $request ) {
$form_id = absint( $request->get_param( 'form_id' ) );
$submission_id = absint( $request->get_param( 'submission_id' ) );
if ( ! ebp_quote_bridge_is_supported_form( $form_id ) ) {
return new WP_Error( 'unsupported_form', 'Unsupported form ID.', array( 'status' => 400 ) );
}
if ( ! $submission_id ) {
return new WP_Error( 'invalid_submission', 'Invalid submission ID.', array( 'status' => 400 ) );
}
return array( $form_id, $submission_id );
}
function ebp_quote_bridge_claim( WP_REST_Request $request ) {
$ids = ebp_quote_bridge_request_ids( $request );
if ( is_wp_error( $ids ) ) { return $ids; }
list( $form_id, $submission_id ) = $ids;
if ( ebp_quote_bridge_get_export_record( $form_id, $submission_id ) ) {
return new WP_Error( 'already_exported', 'Submission is already exported.', array( 'status' => 409 ) );
}
$claim_name = ebp_quote_bridge_claim_option_name( $form_id, $submission_id );
$existing = ebp_quote_bridge_get_active_claim( $form_id, $submission_id );
if ( is_array( $existing ) ) {
return new WP_Error( 'already_claimed', 'Submission is already claimed by another bridge session.', array( 'status' => 409 ) );
}
$token = wp_generate_password( 40, false, false );
$user = wp_get_current_user();
$record = array(
'token' => $token,
'created' => time(),
'user_id' => get_current_user_id(),
'user' => $user ? $user->user_login : '',
);
if ( ! add_option( $claim_name, $record, '', false ) ) {
return new WP_Error( 'claim_conflict', 'Unable to claim submission because another request claimed it first.', array( 'status' => 409 ) );
}
return rest_ensure_response(
array(
'ok' => true,
'token' => $token,
'message' => 'Submission claimed.',
)
);
}
function ebp_quote_bridge_complete( WP_REST_Request $request ) {
$ids = ebp_quote_bridge_request_ids( $request );
if ( is_wp_error( $ids ) ) { return $ids; }
list( $form_id, $submission_id ) = $ids;
$token = (string) $request->get_param( 'token' );
$evo_quote = absint( $request->get_param( 'evo_quote' ) );
$evo_customer = sanitize_text_field( (string) $request->get_param( 'evo_customer' ) );
if ( $token === '' || ! $evo_quote || $evo_customer === '' ) {
return new WP_Error( 'invalid_complete', 'Token, EVO quote number, and EVO customer are required.', array( 'status' => 400 ) );
}
$claim_name = ebp_quote_bridge_claim_option_name( $form_id, $submission_id );
$claim = ebp_quote_bridge_get_active_claim( $form_id, $submission_id );
if ( ! is_array( $claim ) || ! isset( $claim['token'] ) || ! hash_equals( (string) $claim['token'], $token ) ) {
return new WP_Error( 'claim_mismatch', 'The claim token is missing, expired, or does not match.', array( 'status' => 409 ) );
}
$user = wp_get_current_user();
$record = array(
'evo_quote' => $evo_quote,
'evo_customer' => $evo_customer,
'exported_at' => current_time( 'mysql' ),
'exported_by' => $user ? $user->user_login : '',
);
update_option( ebp_quote_bridge_export_option_name( $form_id, $submission_id ), $record, false );
delete_option( $claim_name );
return rest_ensure_response(
array(
'ok' => true,
'message' => 'Submission marked exported.',
)
);
}
function ebp_quote_bridge_release( WP_REST_Request $request ) {
$ids = ebp_quote_bridge_request_ids( $request );
if ( is_wp_error( $ids ) ) { return $ids; }
list( $form_id, $submission_id ) = $ids;
$token = (string) $request->get_param( 'token' );
$claim_name = ebp_quote_bridge_claim_option_name( $form_id, $submission_id );
$claim = ebp_quote_bridge_get_active_claim( $form_id, $submission_id );
if ( ! is_array( $claim ) ) {
return rest_ensure_response( array( 'ok' => true, 'message' => 'No active claim remained.' ) );
}
if ( ! isset( $claim['token'] ) || ! hash_equals( (string) $claim['token'], $token ) ) {
return new WP_Error( 'claim_mismatch', 'The claim token does not match.', array( 'status' => 409 ) );
}
delete_option( $claim_name );
return rest_ensure_response( array( 'ok' => true, 'message' => 'Claim released.' ) );
}
• 4.25″ Commander slide, single stack Bobtail® frame.
• Snakeskin treatment on frontstrap and Bobtail® housing.
• Snakeskin rear cocking serrations.
• Single-side, tactical profile thumb safety.
• Ed Brown co-witness rear sight and Ameri-glo orange front sight (Glock type), Trijicon RMRcc sight 3.25 MOA.
• Custom options included: recessed slide stop with serrated pin, flush barrel with recessed crown, heavy slide chamfer.
• Includes: Ed Brown pistol bag, (2) Ed Brown Performance Magazines with base pad kits, lubricant, Owner’s manual, bushing wrench, grip screw wrench and cable lock.
slide provides a completed slide configuration for full-size 4.25-inch 9mm pistols. It is precision-machined from 17-4 stainless steel and built to the same standards as the slides used on Ed Brown Fueled® pistols.

Each slide is machined from stainless-steel bar stock to close tolerances. It is compatible with full-size M&P® 2.0
polymer and metal frames.
The slide is cut for Trijicon RMR® and SRO® optics and includes an Ed Brown optic cover plate.
Available finishes and assembled configurations are shown in the product options above. Select your preferred configuration to see current pricing and availability.
The post Ed Brown Fueled® Assembled M&P® 2.0™ Slides first appeared on Ed Brown Products.]]>Transfer the parts from your factory M&P® 2.0® (except sights), or purchase the Ed Brown M&P Rebuild kit, along with your choice of barrel, extractor, recoil spring assembly, and Glock-style sights. We also offer a machined and serrated slide backplate.
The post Ed Brown Fueled® M&P® 2.0® Slides first appeared on Ed Brown Products.]]>• 4.25″ Commander slide, single stack Bobtail® frame.
• Snakeskin on forestrap.
• American flag serrations on both sides of slide.
• Trijicon RMRcc sight 3.25 MOA with Ed Brown co-witness rear sight and Ameri-glo orange front sight (Glock type).
• Custom options included: FX slide cuts, recessed slide stop with serrated pin, flush barrel with recessed crown.
• 4.25″ Commander slide, single stack Bobtail® frame.
• Snakeskin on forestrap.
• American flag serrations on both sides of slide.
• Trijicon RMRcc sight 3.25 MOA with Ed Brown co-witness rear sight and Ameri-glo orange front sight (Glock type)
• Custom options included: FX slide cuts, recessed slide stop with serrated pin, flush barrel with recessed crown.
• Includes: Ed Brown pistol bag, (2) Ed Brown Performance Magazines with base pad kits, lubricant, Owner’s manual, bushing wrench, grip screw wrench and cable lock.
9mm. Compatible with polymer and metal.
The post Serrated Slide Backplate for M&P® first appeared on Ed Brown Products.]]>Use this round-trip shipping label when the work you need requires only the slide, rather than the complete firearm.
Do not use this option for a Gen III/Gen4 coated slide. The complete firearm is required for that work. If you are unsure whether your request qualifies for slide-only service, contact us before ordering the label.
The round-trip label includes shipping, insurance, and the delivery information needed to send the slide to Ed Brown and return it after the approved work is complete.
View all Factory Service programs or contact us if you need help choosing the correct return path.
The post Round Trip Shipping Label – Slide Only first appeared on Ed Brown Products.]]>