[ SYSTEM ]: Linux wordpress 6.1.0-44-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.164-1 (2026-03-09) x86_64
[ SERVER ]: Apache/2.4.66 (Debian) | PHP: 8.2.30
[ USER ]: www-data | IP: 172.19.30.54
GEFORCE FILE MANAGER
/
var
/
www
/
html
/
wordpress
/
wp-content
/
plugins
/
elementor
/
app
/
modules
/
onboarding
/
data
/
endpoints
/
UPLOAD:
NAME
SIZE
QUICK PERMS
ACTIONS
📄 install-pro.php
1,945 B
SET
[ EDIT ]
|
[ DEL ]
📄 install-theme.php
2,535 B
SET
[ EDIT ]
|
[ DEL ]
📄 pro-install-screen.php
659 B
SET
[ EDIT ]
|
[ DEL ]
📄 user-choices.php
1,750 B
SET
[ EDIT ]
|
[ DEL ]
📄 user-progress.php
1,930 B
SET
[ EDIT ]
|
[ DEL ]
DELETE SELECTED
[ CLOSE ]
EDIT: user-progress.php
<?php namespace Elementor\App\Modules\Onboarding\Data\Endpoints; use Elementor\App\Modules\Onboarding\Module; use Elementor\App\Modules\Onboarding\Storage\Onboarding_Progress_Manager; use Elementor\App\Modules\Onboarding\Validation\User_Progress_Validator; use Elementor\Data\V2\Base\Endpoint as Endpoint_Base; use WP_REST_Server; if ( ! defined( 'ABSPATH' ) ) { exit; } class User_Progress extends Endpoint_Base { public function get_name(): string { return 'user-progress'; } public function get_format(): string { return 'onboarding'; } protected function register(): void { parent::register(); $this->register_items_route( WP_REST_Server::EDITABLE ); } public function get_items( $request ) { $permission = $this->check_permission(); if ( is_wp_error( $permission ) ) { return $permission; } $manager = Onboarding_Progress_Manager::instance(); $progress = $manager->get_progress(); return [ 'data' => $progress->to_array(), 'meta' => [ 'had_unexpected_exit' => $progress->had_unexpected_exit( Module::has_user_finished_onboarding() ), ], ]; } public function update_items( $request ) { $permission = $this->check_permission(); if ( is_wp_error( $permission ) ) { return $permission; } $params = $request->get_json_params(); $validator = new User_Progress_Validator(); $validated = $validator->validate( $params ?? [] ); if ( is_wp_error( $validated ) ) { return $validated; } $manager = Onboarding_Progress_Manager::instance(); $progress = $manager->update_progress( $validated ); return [ 'data' => 'success', 'progress' => $progress->to_array(), ]; } private function check_permission() { if ( ! current_user_can( 'manage_options' ) ) { return new \WP_Error( 'rest_forbidden', __( 'Sorry, you are not allowed to access onboarding data.', 'elementor' ), [ 'status' => 403 ] ); } return true; } }