feat(13-protection-packages): Pakiety ochronne SOFT/PREMIUM z panelu WP
- Panel admina (wp-admin > Rezerwacje > Pakiety ochronne) do zarzadzania nazwami, cenami za dobe, aktywnoscia i opisami pakietow SOFT i PREMIUM (zapis w wp_options carei_protection_packages) - REST endpoint GET /carei/v1/protection-packages zwracajacy aktywne pakiety - Radio cards SOFT/PREMIUM w modalu rezerwacji nad pozycjami "Pakiety ochronne" z API (osobne zrodlo danych, separator wizualny) - Radio z deselect (klik zaznaczonego odznacza), natywny input z accent-color - Pakiet NIE wysylany w priceItems Softra (powodowalo HTTP 400) - zamiast tego doklejany do comments booking i zapisywany w _carei_protection_package meta - Summary frontend dokorysowuje wiersz pakietu w tabeli cen i dolicza do total gross (grandGross = softraGross + protectionTotal) - Plan 13-01 oznaczony jako superseded (klient zmienil zrodlo danych) - Phase 13 Complete, Milestone v0.5 Complete Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -130,6 +130,13 @@ class Carei_REST_Proxy {
|
||||
'callback' => array( $this, 'get_agreements' ),
|
||||
'permission_callback' => '__return_true',
|
||||
) );
|
||||
|
||||
// GET /protection-packages
|
||||
register_rest_route( self::NAMESPACE, '/protection-packages', array(
|
||||
'methods' => 'GET',
|
||||
'callback' => array( $this, 'get_protection_packages' ),
|
||||
'permission_callback' => '__return_true',
|
||||
) );
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -298,4 +305,20 @@ class Carei_REST_Proxy {
|
||||
}
|
||||
return $this->respond( $api->get_agreements() );
|
||||
}
|
||||
|
||||
public function get_protection_packages( WP_REST_Request $request ) {
|
||||
$all = Carei_Admin_Panel::get_protection_packages();
|
||||
$out = array( 'soft' => null, 'premium' => null );
|
||||
foreach ( array( 'soft', 'premium' ) as $key ) {
|
||||
if ( isset( $all[ $key ] ) && ! empty( $all[ $key ]['active'] ) ) {
|
||||
$out[ $key ] = array(
|
||||
'key' => $key,
|
||||
'name' => $all[ $key ]['name'],
|
||||
'pricePerDay' => (float) $all[ $key ]['pricePerDay'],
|
||||
'description' => $all[ $key ]['description'],
|
||||
);
|
||||
}
|
||||
}
|
||||
return rest_ensure_response( $out );
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user