fix: restore truncated PHP class tails (M1 fixup)

Bash-mount read truncated several PHP files at the last few lines;
Adding the missing method/class closers and returning braces.

Agent-Session: phase2-admin-m1-engineer
This commit is contained in:
peptiderepo
2026-06-12 13:45:55 +07:00
parent 5997dae4eb
commit 1de0210505
5 changed files with 51 additions and 4 deletions

View File

@@ -347,4 +347,16 @@ class PRAutoBlogger_Admin_Page {
update_option( 'prautoblogger_image_provider', $provider );
return $candidate;
}
add_settings_error( 'prautoblogger_image_model', 'prautoblogger_image_model_unknown', sprintf( esc_html__( 'Image model "%s" is not in the registry. Keeping the previous selection.', 'prautoblogger' ), es
add_settings_error( 'prautoblogger_image_model', 'prautoblogger_image_model_unknown', sprintf( esc_html__( 'Image model "%s" is not in the registry. Keeping the previous selection.', 'prautoblogger' ), es
/** Validate model id against the registry and persist the derived provider. */
private function sanitize_image_model( string $value ): string {
$candidate = sanitize_text_field( $value );
$provider = PRAutoBlogger_Image_Model_Registry::provider_for( $candidate );
if ( '' !== $provider ) {
update_option( 'prautoblogger_image_provider', $provider );
return $candidate;
}
add_settings_error( 'prautoblogger_image_model', 'prautoblogger_image_model_unknown', sprintf( esc_html__( 'Image model "%s" is not in the registry. Keeping the previous selection.', 'prautoblogger' ), esc_html( $candidate ) ) );
return (string) get_option( 'prautoblogger_image_model', PRAUTOBLOGGER_DEFAULT_IMAGE_MODEL );
}
}

View File

@@ -290,4 +290,22 @@ class PRAutoBlogger_Settings_Fields_Extended {
),
array(
'id' => 'prautoblogger_image_compose_variants',
'label' => __( 'Composed Variant Set', 'prautoblogge
'label' => __( 'Composed Variant Set', 'prautoblogge
array(
'id' => 'prautoblogger_image_featured_mark_enabled',
'label' => __( 'Featured Image Corner Mark', 'prautoblogger' ),
'type' => 'toggle',
'section' => 'prautoblogger_images',
'default' => '1',
'description' => __( 'Overlay a small semi-transparent Peptide Repo mark in the bottom-right corner of featured images, so scraped or re-shared images carry attribution.', 'prautoblogger' ),
),
array(
'id' => 'prautoblogger_runware_model_catalog',
'label' => __( 'Runware Model Catalog', 'prautoblogger' ),
'type' => 'runware_catalog_sync',
'section' => 'prautoblogger_images',
'description' => __( 'Live model catalog sync status and on-demand refresh.', 'prautoblogger' ),
),
);
}
}

View File

@@ -361,4 +361,16 @@ class PRAutoBlogger {
public function on_collect_metrics(): void {
$this->executor->on_collect_metrics(); }
/** @see PRAutoBlogger_Execut
/** @see PRAutoBlogger_Execut
/** @see PRAutoBlogger_Executor::on_ajax_generate_now() */
public function on_ajax_generate_now(): void {
$this->executor->on_ajax_generate_now(); }
/** @see PRAutoBlogger_Ajax_Handlers::on_ajax_test_connection() */
public function on_ajax_test_connection(): void {
$this->ajax_handlers->on_ajax_test_connection(); }
/** @see PRAutoBlogger_Executor::get_model_registry() */
public function get_model_registry(): PRAutoBlogger_OpenRouter_Model_Registry {
return $this->executor->get_model_registry(); }
}

View File

@@ -142,3 +142,5 @@ class PRAutoBlogger_Cost_Reporter {
}
return ( $this->get_monthly_spend() / $budget ) * 100.0;
}
}

View File

@@ -291,4 +291,7 @@ class BoardDataProviderTest extends BaseTestCase {
$provider = new \PRAutoBlogger_Board_Data_Provider();
$snapshot = $provider->get_board_snapshot();
$this->assertFalse( $snapshot[
$this->assertFalse( $snapshot[
$this->assertFalse( $snapshot['has_active_runs'] );
}
}