/home/vianto5/distritosatelite.mx/wp-content/plugins/litespeed-cache/src
Edit: /home/vianto5/distritosatelite.mx/wp-content/plugins/litespeed-cache/src/guest.cls.php (2263B)
sync_lists();
}
/**
* Sync Guest Mode IP and UA lists.
*
* Fetches the latest IP and UA lists from QUIC.cloud API and saves them locally.
*
* @since 7.7
* @return array{success: bool, message: string}
*/
public function sync_lists() {
self::debug( 'Starting Guest Mode lists sync' );
$cloud_dir = LITESPEED_STATIC_DIR . '/cloud';
$results = [
'ips' => false,
'uas' => false,
];
foreach ( [ 'ips', 'uas' ] as $type ) {
$url = $this->_cloud_server_wp . '/gm_' . $type;
$file = $cloud_dir . '/gm_' . $type . '.txt';
self::debug( 'Fetching: ' . $url );
$temp = File::download( $url, $file, 15 );
if ( is_wp_error( $temp ) ) {
self::debug( 'Fetch failed: ' . $temp->get_error_code() );
} elseif ( File::publish_temp_file( $temp, $file ) ) {
self::debug( 'Guest Mode ' . $type . ' synced' );
$results[ $type ] = true;
}
}
$success = $results['ips'] && $results['uas'];
$message = $success
? __( 'Guest Mode lists synced successfully.', 'litespeed-cache' )
: __( 'Failed to sync Guest Mode lists.', 'litespeed-cache' );
return [
'success' => $success,
'message' => $message,
];
}
/**
* Handle all request actions from main class.
*
* @since 7.7
* @return void
*/
public function handler() {
$type = Router::verify_type();
switch ( $type ) {
case self::TYPE_SYNC:
$result = $this->sync_lists();
if ( Router::is_ajax() ) {
wp_send_json( $result );
}
if ( $result['success'] ) {
Admin_Display::success( $result['message'] );
} else {
Admin_Display::error( $result['message'] );
}
break;
default:
break;
}
Admin::redirect();
}
}