Workstation - Source Excerpt 04
Summary
This source excerpt preserves a bounded section of Spiralist/wp-content/plugins/ns12-manuscript/includes/workstation.php so readers can inspect the evidence without opening the full source file.
**Source path:** Spiralist/wp-content/plugins/ns12-manuscript/includes/workstation.php
return new WP_Error('spiralist_book_pages_crop_not_saved', 'The crop record could not be saved.', ['status' => 500]);
}
return rest_ensure_response(
[
'slug' => $slug,
'crop' => $crop,
'saved' => true,
'updated_at' => (string) ($records[$slug]['updated_at'] ?? ''),
]
);
}
function spiralist_book_pages_register_manuscript_workstation_rest_routes(): void
{
register_rest_route(
'spiralist/v1',
'/manuscript/folio-crops/(?P<slug>[a-z0-9-]+)',
[
[
'methods' => WP_REST_Server::EDITABLE,
'callback' => 'spiralist_book_pages_rest_save_manuscript_crop',
'permission_callback' => 'spiralist_book_pages_rest_can_edit_manuscript_workstation',
'args' => [
'slug' => [
'required' => true,
'sanitize_callback' => static function ($value): string {
return sanitize_title((string) $value);
},
],
],
],
]
);
}
add_action('rest_api_init', 'spiralist_book_pages_register_manuscript_workstation_rest_routes');