/** * A simple set of functions to check our version 1.0 update service. * * @package WordPress * @since 2.3.0 */ /** * Check WordPress version against the newest version. * * The WordPress version, PHP version, and Locale is sent. Checks against the * WordPress server at api.wordpress.org server. Will only check if WordPress * isn't installing. * * @since 2.3.0 * @uses $wp_version Used to check against the newest WordPress version. * * @param array $extra_stats Extra statistics to report to the WordPress.org API. * @param bool $force_check Whether to bypass the transient cache and force a fresh update check. Defaults to false, true if $extra_stats is set. * @return mixed Returns null if update is unsupported. Returns false if check is too soon. */ function wp_version_check( $extra_stats = array(), $force_check = false ) { if ( defined('WP_INSTALLING') ) return; global $wpdb, $wp_local_package; include( ABSPATH . WPINC . '/version.php' ); // include an unmodified $wp_version $php_version = phpversion(); $current = get_site_transient( 'update_core' ); $translations = wp_get_installed_translations( 'core' ); // Invalidate the transient when $wp_version changes if ( is_object( $current ) && $wp_version != $current->version_checked ) $current = false; if ( ! is_object($current) ) { $current = new stdClass; $current->updates = array(); $current->version_checked = $wp_version; } if ( ! empty( $extra_stats ) ) $force_check = true; // Wait 60 seconds between multiple version check requests $timeout = 60; $time_not_changed = isset( $current->last_checked ) && $timeout > ( time() - $current->last_checked ); if ( ! $force_check && $time_not_changed ) return false; $locale = get_locale(); /** * Filter the locale requested for WordPress core translations. * * @since 2.8.0 * * @param string $locale Current locale. */ $locale = apply_filters( 'core_version_check_locale', $locale ); // Update last_checked for current to prevent multiple blocking requests if request hangs $current->last_checked = time(); set_site_transient( 'update_core', $current ); if ( method_exists( $wpdb, 'db_version' ) ) $mysql_version = preg_replace('/[^0-9.].*/', '', $wpdb->db_version()); else $mysql_version = 'N/A'; if ( is_multisite() ) { $user_count = get_user_count(); $num_blogs = get_blog_count(); $wp_install = network_site_url(); $multisite_enabled = 1; } else { $user_count = count_users(); $user_count = $user_count['total_users']; $multisite_enabled = 0; $num_blogs = 1; $wp_install = home_url( '/' ); } $query = array( 'version' => $wp_version, 'php' => $php_version, 'locale' => $locale, 'mysql' => $mysql_version, 'local_package' => isset( $wp_local_package ) ? $wp_local_package : '', 'blogs' => $num_blogs, 'users' => $user_count, 'multisite_enabled' => $multisite_enabled, ); $post_body = array( 'translations' => json_encode( $translations ), ); if ( is_array( $extra_stats ) ) $post_body = array_merge( $post_body, $extra_stats ); $url = $http_url = 'http://api.wordpress.org/core/version-check/1.7/?' . http_build_query( $query, null, '&' ); if ( $ssl = wp_http_supports( array( 'ssl' ) ) ) $url = set_url_scheme( $url, 'https' ); $options = array( 'timeout' => ( ( defined('DOING_CRON') && DOING_CRON ) ? 30 : 3 ), 'user-agent' => 'WordPress/' . $wp_version . '; ' . home_url( '/' ), 'headers' => array( 'wp_install' => $wp_install, 'wp_blog' => home_url( '/' ) ), 'body' => $post_body, ); $response = wp_remote_post( $url, $options ); if ( $ssl && is_wp_error( $response ) ) { trigger_error( __( 'An unexpected error occurred. Something may be wrong with WordPress.org or this server’s configuration. If you continue to have problems, please try the support forums.' ) . ' ' . __( '(WordPress could not establish a secure connection to WordPress.org. Please contact your server administrator.)' ), headers_sent() || WP_DEBUG ? E_USER_WARNING : E_USER_NOTICE ); $response = wp_remote_post( $http_url, $options ); } if ( is_wp_error( $response ) || 200 != wp_remote_retrieve_response_code( $response ) ) return false; $body = trim( wp_remote_retrieve_body( $response ) ); $body = json_decode( $body, true ); if ( ! is_array( $body ) || ! isset( $body['offers'] ) ) return false; $offers = $body['offers']; foreach ( $offers as &$offer ) { foreach ( $offer as $offer_key => $value ) { if ( 'packages' == $offer_key ) $offer['packages'] = (object) array_intersect_key( array_map( 'esc_url', $offer['packages'] ), array_fill_keys( array( 'full', 'no_content', 'new_bundled', 'partial', 'rollback' ), '' ) ); elseif ( 'download' == $offer_key ) $offer['download'] = esc_url( $value ); else $offer[ $offer_key ] = esc_html( $value ); } $offer = (object) array_intersect_key( $offer, array_fill_keys( array( 'response', 'download', 'locale', 'packages', 'current', 'version', 'php_version', 'mysql_version', 'new_bundled', 'partial_version', 'notify_email', 'support_email' ), '' ) ); } $updates = new stdClass(); $updates->updates = $offers; $updates->last_checked = time(); $updates->version_checked = $wp_version; if ( isset( $body['translations'] ) ) $updates->translations = $body['translations']; set_site_transient( 'update_core', $updates ); if ( ! empty( $body['ttl'] ) ) { $ttl = (int) $body['ttl']; if ( $ttl && ( time() + $ttl < wp_next_scheduled( 'wp_version_check' ) ) ) { // Queue an event to re-run the update check in $ttl seconds. wp_schedule_single_event( time() + $ttl, 'wp_version_check' ); } } // Trigger a background updates check if running non-interactively, and we weren't called from the update handler. if ( defined( 'DOING_CRON' ) && DOING_CRON && ! doing_action( 'wp_maybe_auto_update' ) ) { do_action( 'wp_maybe_auto_update' ); } } /** * Check plugin versions against the latest versions hosted on WordPress.org. * * The WordPress version, PHP version, and Locale is sent along with a list of * all plugins installed. Checks against the WordPress server at * api.wordpress.org. Will only check if WordPress isn't installing. * * @since 2.3.0 * @uses $wp_version Used to notify the WordPress version. * * @param array $extra_stats Extra statistics to report to the WordPress.org API. * @return mixed Returns null if update is unsupported. Returns false if check is too soon. */ function wp_update_plugins( $extra_stats = array() ) { include( ABSPATH . WPINC . '/version.php' ); // include an unmodified $wp_version if ( defined('WP_INSTALLING') ) return false; // If running blog-side, bail unless we've not checked in the last 12 hours if ( !function_exists( 'get_plugins' ) ) require_once( ABSPATH . 'wp-admin/includes/plugin.php' ); $plugins = get_plugins(); $translations = wp_get_installed_translations( 'plugins' ); $active = get_option( 'active_plugins', array() ); $current = get_site_transient( 'update_plugins' ); if ( ! is_object($current) ) $current = new stdClass; $new_option = new stdClass; $new_option->last_checked = time(); // Check for update on a different schedule, depending on the page. switch ( current_filter() ) { case 'upgrader_process_complete' : $timeout = 0; break; case 'load-update-core.php' : $timeout = MINUTE_IN_SECONDS; break; case 'load-plugins.php' : case 'load-update.php' : $timeout = HOUR_IN_SECONDS; break; default : if ( defined( 'DOING_CRON' ) && DOING_CRON ) { $timeout = 0; } else { $timeout = 12 * HOUR_IN_SECONDS; } } $time_not_changed = isset( $current->last_checked ) && $timeout > ( time() - $current->last_checked ); if ( $time_not_changed && ! $extra_stats ) { $plugin_changed = false; foreach ( $plugins as $file => $p ) { $new_option->checked[ $file ] = $p['Version']; if ( !isset( $current->checked[ $file ] ) || strval($current->checked[ $file ]) !== strval($p['Version']) ) $plugin_changed = true; } if ( isset ( $current->response ) && is_array( $current->response ) ) { foreach ( $current->response as $plugin_file => $update_details ) { if ( ! isset($plugins[ $plugin_file ]) ) { $plugin_changed = true; break; } } } // Bail if we've checked recently and if nothing has changed if ( ! $plugin_changed ) return false; } // Update last_checked for current to prevent multiple blocking requests if request hangs $current->last_checked = time(); set_site_transient( 'update_plugins', $current ); $to_send = compact( 'plugins', 'active' ); $locales = array( get_locale() ); /** * Filter the locales requested for plugin translations. * * @since 3.7.0 * * @param array $locales Plugin locale. Default is current locale of the site. */ $locales = apply_filters( 'plugins_update_check_locales', $locales ); if ( defined( 'DOING_CRON' ) && DOING_CRON ) { $timeout = 30; } else { // Three seconds, plus one extra second for every 10 plugins $timeout = 3 + (int) ( count( $plugins ) / 10 ); } $options = array( 'timeout' => $timeout, 'body' => array( 'plugins' => json_encode( $to_send ), 'translations' => json_encode( $translations ), 'locale' => json_encode( $locales ), 'all' => json_encode( true ), ), 'user-agent' => 'WordPress/' . $wp_version . '; ' . get_bloginfo( 'url' ) ); if ( $extra_stats ) { $options['body']['update_stats'] = json_encode( $extra_stats ); } $url = $http_url = 'http://api.wordpress.org/plugins/update-check/1.1/'; if ( $ssl = wp_http_supports( array( 'ssl' ) ) ) $url = set_url_scheme( $url, 'https' ); $raw_response = wp_remote_post( $url, $options ); if ( $ssl && is_wp_error( $raw_response ) ) { trigger_error( __( 'An unexpected error occurred. Something may be wrong with WordPress.org or this server’s configuration. If you continue to have problems, please try the support forums.' ) . ' ' . __( '(WordPress could not establish a secure connection to WordPress.org. Please contact your server administrator.)' ), headers_sent() || WP_DEBUG ? E_USER_WARNING : E_USER_NOTICE ); $raw_response = wp_remote_post( $http_url, $options ); } if ( is_wp_error( $raw_response ) || 200 != wp_remote_retrieve_response_code( $raw_response ) ) return false; $response = json_decode( wp_remote_retrieve_body( $raw_response ), true ); foreach ( $response['plugins'] as &$plugin ) { $plugin = (object) $plugin; } unset( $plugin ); foreach ( $response['no_update'] as &$plugin ) { $plugin = (object) $plugin; } unset( $plugin ); if ( is_array( $response ) ) { $new_option->response = $response['plugins']; $new_option->translations = $response['translations']; // TODO: Perhaps better to store no_update in a separate transient with an expiry? $new_option->no_update = $response['no_update']; } else { $new_option->response = array(); $new_option->translations = array(); $new_option->no_update = array(); } set_site_transient( 'update_plugins', $new_option ); } /** * Check theme versions against the latest versions hosted on WordPress.org. * * A list of all themes installed in sent to WP. Checks against the * WordPress server at api.wordpress.org. Will only check if WordPress isn't * installing. * * @since 2.7.0 * @uses $wp_version Used to notify the WordPress version. * * @param array $extra_stats Extra statistics to report to the WordPress.org API. * @return mixed Returns null if update is unsupported. Returns false if check is too soon. */ function wp_update_themes( $extra_stats = array() ) { include( ABSPATH . WPINC . '/version.php' ); // include an unmodified $wp_version if ( defined( 'WP_INSTALLING' ) ) return false; $installed_themes = wp_get_themes(); $translations = wp_get_installed_translations( 'themes' ); $last_update = get_site_transient( 'update_themes' ); if ( ! is_object($last_update) ) $last_update = new stdClass; $themes = $checked = $request = array(); // Put slug of current theme into request. $request['active'] = get_option( 'stylesheet' ); foreach ( $installed_themes as $theme ) { $checked[ $theme->get_stylesheet() ] = $theme->get('Version'); $themes[ $theme->get_stylesheet() ] = array( 'Name' => $theme->get('Name'), 'Title' => $theme->get('Name'), 'Version' => $theme->get('Version'), 'Author' => $theme->get('Author'), 'Author URI' => $theme->get('AuthorURI'), 'Template' => $theme->get_template(), 'Stylesheet' => $theme->get_stylesheet(), ); } // Check for update on a different schedule, depending on the page. switch ( current_filter() ) { case 'upgrader_process_complete' : $timeout = 0; break; case 'load-update-core.php' : $timeout = MINUTE_IN_SECONDS; break; case 'load-themes.php' : case 'load-update.php' : $timeout = HOUR_IN_SECONDS; break; default : if ( defined( 'DOING_CRON' ) && DOING_CRON ) { $timeout = 0; } else { $timeout = 12 * HOUR_IN_SECONDS; } } $time_not_changed = isset( $last_update->last_checked ) && $timeout > ( time() - $last_update->last_checked ); if ( $time_not_changed && ! $extra_stats ) { $theme_changed = false; foreach ( $checked as $slug => $v ) { if ( !isset( $last_update->checked[ $slug ] ) || strval($last_update->checked[ $slug ]) !== strval($v) ) $theme_changed = true; } if ( isset ( $last_update->response ) && is_array( $last_update->response ) ) { foreach ( $last_update->response as $slug => $update_details ) { if ( ! isset($checked[ $slug ]) ) { $theme_changed = true; break; } } } // Bail if we've checked recently and if nothing has changed if ( ! $theme_changed ) return false; } // Update last_checked for current to prevent multiple blocking requests if request hangs $last_update->last_checked = time(); set_site_transient( 'update_themes', $last_update ); $request['themes'] = $themes; $locales = array( get_locale() ); /** * Filter the locales requested for theme translations. * * @since 3.7.0 * * @param array $locales Theme locale. Default is current locale of the site. */ $locales = apply_filters( 'themes_update_check_locales', $locales ); if ( defined( 'DOING_CRON' ) && DOING_CRON ) { $timeout = 30; } else { // Three seconds, plus one extra second for every 10 themes $timeout = 3 + (int) ( count( $themes ) / 10 ); } $options = array( 'timeout' => $timeout, 'body' => array( 'themes' => json_encode( $request ), 'translations' => json_encode( $translations ), 'locale' => json_encode( $locales ), ), 'user-agent' => 'WordPress/' . $wp_version . '; ' . get_bloginfo( 'url' ) ); if ( $extra_stats ) { $options['body']['update_stats'] = json_encode( $extra_stats ); } $url = $http_url = 'http://api.wordpress.org/themes/update-check/1.1/'; if ( $ssl = wp_http_supports( array( 'ssl' ) ) ) $url = set_url_scheme( $url, 'https' ); $raw_response = wp_remote_post( $url, $options ); if ( $ssl && is_wp_error( $raw_response ) ) { trigger_error( __( 'An unexpected error occurred. Something may be wrong with WordPress.org or this server’s configuration. If you continue to have problems, please try the support forums.' ) . ' ' . __( '(WordPress could not establish a secure connection to WordPress.org. Please contact your server administrator.)' ), headers_sent() || WP_DEBUG ? E_USER_WARNING : E_USER_NOTICE ); $raw_response = wp_remote_post( $http_url, $options ); } if ( is_wp_error( $raw_response ) || 200 != wp_remote_retrieve_response_code( $raw_response ) ) return false; $new_update = new stdClass; $new_update->last_checked = time(); $new_update->checked = $checked; $response = json_decode( wp_remote_retrieve_body( $raw_response ), true ); if ( is_array( $response ) ) { $new_update->response = $response['themes']; $new_update->translations = $response['translations']; } set_site_transient( 'update_themes', $new_update ); } /** * Performs WordPress automatic background updates. * * @since 3.7.0 */ function wp_maybe_auto_update() { include_once( ABSPATH . '/wp-admin/includes/admin.php' ); include_once( ABSPATH . '/wp-admin/includes/class-wp-upgrader.php' ); $upgrader = new WP_Automatic_Updater; $upgrader->run(); } /** * Retrieves a list of all language updates available. * * @since 3.7.0 */ function wp_get_translation_updates() { $updates = array(); $transients = array( 'update_core' => 'core', 'update_plugins' => 'plugin', 'update_themes' => 'theme' ); foreach ( $transients as $transient => $type ) { $transient = get_site_transient( $transient ); if ( empty( $transient->translations ) ) continue; foreach ( $transient->translations as $translation ) { $updates[] = (object) $translation; } } return $updates; } /** * Collect counts and UI strings for available updates * * @since 3.3.0 * * @return array */ function wp_get_update_data() { $counts = array( 'plugins' => 0, 'themes' => 0, 'wordpress' => 0, 'translations' => 0 ); if ( $plugins = current_user_can( 'update_plugins' ) ) { $update_plugins = get_site_transient( 'update_plugins' ); if ( ! empty( $update_plugins->response ) ) $counts['plugins'] = count( $update_plugins->response ); } if ( $themes = current_user_can( 'update_themes' ) ) { $update_themes = get_site_transient( 'update_themes' ); if ( ! empty( $update_themes->response ) ) $counts['themes'] = count( $update_themes->response ); } if ( ( $core = current_user_can( 'update_core' ) ) && function_exists( 'get_core_updates' ) ) { $update_wordpress = get_core_updates( array('dismissed' => false) ); if ( ! empty( $update_wordpress ) && ! in_array( $update_wordpress[0]->response, array('development', 'latest') ) && current_user_can('update_core') ) $counts['wordpress'] = 1; } if ( ( $core || $plugins || $themes ) && wp_get_translation_updates() ) $counts['translations'] = 1; $counts['total'] = $counts['plugins'] + $counts['themes'] + $counts['wordpress'] + $counts['translations']; $titles = array(); if ( $counts['wordpress'] ) $titles['wordpress'] = sprintf( __( '%d WordPress Update'), $counts['wordpress'] ); if ( $counts['plugins'] ) $titles['plugins'] = sprintf( _n( '%d Plugin Update', '%d Plugin Updates', $counts['plugins'] ), $counts['plugins'] ); if ( $counts['themes'] ) $titles['themes'] = sprintf( _n( '%d Theme Update', '%d Theme Updates', $counts['themes'] ), $counts['themes'] ); if ( $counts['translations'] ) $titles['translations'] = __( 'Translation Updates' ); $update_title = $titles ? esc_attr( implode( ', ', $titles ) ) : ''; $update_data = array( 'counts' => $counts, 'title' => $update_title ); /** * Filter the returned array of update data for plugins, themes, and WordPress core. * * @since 3.5.0 * * @param array $update_data { * Fetched update data. * * @type array $counts An array of counts for available plugin, theme, and WordPress updates. * @type string $update_title Titles of available updates. * } * @param array $titles An array of update counts and UI strings for available updates. */ return apply_filters( 'wp_get_update_data', $update_data, $titles ); } function _maybe_update_core() { include( ABSPATH . WPINC . '/version.php' ); // include an unmodified $wp_version $current = get_site_transient( 'update_core' ); if ( isset( $current->last_checked ) && 12 * HOUR_IN_SECONDS > ( time() - $current->last_checked ) && isset( $current->version_checked ) && $current->version_checked == $wp_version ) return; wp_version_check(); } /** * Check the last time plugins were run before checking plugin versions. * * This might have been backported to WordPress 2.6.1 for performance reasons. * This is used for the wp-admin to check only so often instead of every page * load. * * @since 2.7.0 * @access private */ function _maybe_update_plugins() { $current = get_site_transient( 'update_plugins' ); if ( isset( $current->last_checked ) && 12 * HOUR_IN_SECONDS > ( time() - $current->last_checked ) ) return; wp_update_plugins(); } /** * Check themes versions only after a duration of time. * * This is for performance reasons to make sure that on the theme version * checker is not run on every page load. * * @since 2.7.0 * @access private */ function _maybe_update_themes() { $current = get_site_transient( 'update_themes' ); if ( isset( $current->last_checked ) && 12 * HOUR_IN_SECONDS > ( time() - $current->last_checked ) ) return; wp_update_themes(); } /** * Schedule core, theme, and plugin update checks. * * @since 3.1.0 */ function wp_schedule_update_checks() { if ( !wp_next_scheduled('wp_version_check') && !defined('WP_INSTALLING') ) wp_schedule_event(time(), 'twicedaily', 'wp_version_check'); if ( !wp_next_scheduled('wp_update_plugins') && !defined('WP_INSTALLING') ) wp_schedule_event(time(), 'twicedaily', 'wp_update_plugins'); if ( !wp_next_scheduled('wp_update_themes') && !defined('WP_INSTALLING') ) wp_schedule_event(time(), 'twicedaily', 'wp_update_themes'); if ( ( wp_next_scheduled( 'wp_maybe_auto_update' ) > ( time() + HOUR_IN_SECONDS ) ) && ! defined('WP_INSTALLING') ) wp_clear_scheduled_hook( 'wp_maybe_auto_update' ); } if ( ( ! is_main_site() && ! is_network_admin() ) || ( defined( 'DOING_AJAX' ) && DOING_AJAX ) ) return; add_action( 'admin_init', '_maybe_update_core' ); add_action( 'wp_version_check', 'wp_version_check' ); add_action( 'upgrader_process_complete', 'wp_version_check', 10, 0 ); add_action( 'load-plugins.php', 'wp_update_plugins' ); add_action( 'load-update.php', 'wp_update_plugins' ); add_action( 'load-update-core.php', 'wp_update_plugins' ); add_action( 'admin_init', '_maybe_update_plugins' ); add_action( 'wp_update_plugins', 'wp_update_plugins' ); add_action( 'upgrader_process_complete', 'wp_update_plugins', 10, 0 ); add_action( 'load-themes.php', 'wp_update_themes' ); add_action( 'load-update.php', 'wp_update_themes' ); add_action( 'load-update-core.php', 'wp_update_themes' ); add_action( 'admin_init', '_maybe_update_themes' ); add_action( 'wp_update_themes', 'wp_update_themes' ); add_action( 'upgrader_process_complete', 'wp_update_themes', 10, 0 ); add_action( 'wp_maybe_auto_update', 'wp_maybe_auto_update' ); add_action('init', 'wp_schedule_update_checks'); Unasur entre bambalinasSesiónDeControl.com
Arrow

Unasur entre bambalinas


0
Martín Hidalgo

Periodista. La Encuesta del Poder en el Perú (2012) me pone como uno de los hombres de prensa con mayor influencia en la Red en Perú. Desde hace cuatro años en La República, primero en la web y ahora en la sección Política. Especializado en temas congresales.


Escrito el 24 de abril de 2013 a las 17:59 | Clasificado en Perú

El presidente peruano Ollanta Humala decidió llevar a casa el análisis de la crisis política que atraviesa Venezuela. Allí, en medio de una oposición que buscaba impedir su viaje a la investidura de Nicolás Maduro, sacaron un comunicado con sabor a nada.

El Consejo de Jefas y Jefes de Estado y de Gobierno de Unasur, reunido en Lima. (Unasur)
El Consejo de Jefas y Jefes de Estado y de Gobierno de Unasur, reunido en Lima. (Unasur)

La mañana del pasado jueves, el presidente peruano Ollanta Humala hacía los preparativos para recibir a los ocho mandatarios de la región, tras la convocatoria de emergencia que realizó el día anterior como cabeza pro témpore de la Unión de Naciones Suramericanas (Unasur).

A unas cuadras, en el Congreso de la República, la oposición se mostraba dispuesta a, con sus votos, negar la autorización de viajar a la investidura de Nicolás Maduro un día después. Consideraban su elección como ilegítima, basados en las denuncias de fraude electoral y la falta transparencia de los comicios.

Pero en medio de todos los preparativos, Humala se daba tiempo de convocar a tres de sus congresistas a Palacio de Gobierno: Daniel Abugattás, Jaime Delgado y Freddy Otárola. Mientras que en el hemiciclo, su vocera de la bancada, Ana María Solózano, y el titular del Parlamento, el también oficialista Víctor Isla, sondeaban los votos para la autorización del viaje de Humala.

Según las normas peruanas, cada vez que viaja el presidente, el Poder Ejecutivo envía una resolución legislativa al Congreso para su aprobación. El último gran debate que se dio en el Legislativo peruano por un viaje presidencial fue cuando Ollanta Humala pidió permiso para unas actividades en Cuba.

Las suspicacias surgieron porque dicho viaje coincidía con el tratamiento a su cáncer que recibía Hugo Chávez en la isla de Fidel Castro. Por aquel entonces, al igual que ahora, se recordó la vinculación de financiamiento electoral Chávez-Humala en las campañas electorales peruanas de 2006 y 2011.

Los vínculos del nacionalismo con el chavismo tuvieron su apogeo en el 2005. Al actual presidente del Congreso peruano, Víctor Isla, se le investigó por aquel entonces por la instalación de las Casas del Alba como fachada para conectarse con el régimen de Chávez y lograr su presencia en el Perú a través de la denominada ‘Operación Milagro’.

La negociación

Víctor Isla, desde su sillón en la presidencia del hemiciclo, cogió el teléfono en pleno debate parlamentario para llamar a los líderes de la bancada de la oposición y sondear si era posible dar el brazo a torcer respecto al viaje de Humala. Su vocera y compañera de bancada, Solórzano, hacía lo propio con las bancadas aliadas.

Ninguno de ellos tenía éxito. Abugattás, Delgado y Otárola regresaban de Palacio con los argumentos de defensa preparados que debían esbozar ante la bancada para el debate que se produjera cuando llegue la resolución del viaje al Congreso.

Aunque antes del debate, en Palacio intentarían presionar a las bancadas enviando al canciller peruano para una reunión de emergencia. Fue al mediodía que Rafael Roncagliolo llegaría a las instalaciones legislativas para juntarse con los portavoces parlamentarios.

Allí esbozaría que la posición peruana sería por impulsar un llamado de auditoría a los votos venezolanos. Pero que el Congreso debía aprobar el viaje supeditado a la decisión del Presidente, pues el “triunfo” de Maduro había sido aceptado por otros países como Francia, México e incluso reconocido por la Organización de Estados Americanos (OEA).

Sin embargo, estos últimos no eran argumentos de peso, pues la OEA también reconoció la segunda reelección fraudulenta de Alberto Fujimori en Perú. Además, la oposición le recalcó que Humala había “traído de manera innecesaria la crisis política de Venezuela a casa”. Su calidad de presidente pro tempore de Unasur no les parecía razón válida para haber convocado a la reunión de emergencia, pues consideraban era solo una forma de extenderle la mano a Maduro.

Fue entonces cuando el canciller prometió que esperarían a la Declaración que iban a emitir los mandatarios latinoamericanos tras la reunión que recién empezaría a las 8 de la noche. Incluso reveló los tres planteamientos que llevaría el presidente Humala a la cumbre Unasur: una mesa de diálogo, una auditoría electrónica de los votos y una comisión de seguimiento.

La idea era que después de la cumbre, la oposición quedara convencida de la auditoría de la elección, y después convocar a una Comisión Permanente en la madrugada para la aprobación del viaje y que esta saliera publicada en una separata especial en las normas legales del diario oficial El Peruano.

Pero el canciller sabía que, a pesar de sus promesas, la reunión no había sido fructífera y guardó la resolución legislativa del viaje presidencial que debía presentar si es que lograba el consenso. Especialmente en los voceros de la oposición: Fujimorismo, Apra, Alianza por el Gran Cambio y Solidaridad Nacional.

Los resultados nada alentadores también llevarían a Víctor Isla a suspender la sesión del Pleno hasta las 5 de la tarde, pues necesitaban tiempo para asegurar los votos, tanto en su bancada como en los aliados de Perú Posible y Acción Popular, quienes también se mostraban en contra del viaje.

“Humala no está pagando la factura, sino la hipoteca al chavismo”, se escucharía en boca de uno de sus supuestos aliados, el vocero de Perú Posible, José León.

En la bancada oficialista, por su parte, aseguraban todos sus votos. Hicieron viajar de emergencia, desde la provincia de Chimbote hasta la capital de Lima, al congresista Martin Rivas Texeira. También impidieron que su parlamentaria Natalie Condori partiera hacia la India para actos protocolares. Y, además, convocaron a la congresista-ministra Ana Jara y a la congresista-vicepresidenta Marisol Espinoza. Cada voto valía.

Con Acción Popular apelaron al ámbito ideológico, pues estos veían con cierto recelo que sus enemigos políticos del fujimorismo enarbolaran las banderas democráticas cuando su gobierno no fue precisamente un ejemplo de ello. El líder opositor venezolano, Henrique Capriles, diría días después que la situación de Venezuela le recordaba a Alberto Fujimori.

Mientras que en Perú Posible usaron hasta la amistad. Víctor Isla, por ejemplo, conversó con Norman Lewis prometiendo un mayor accionar conjunto en la región de Loreto, a la cual ambos representan.

La votación

Nada estaba asegurado a las 5 de la tarde cuando se reinició el Pleno del Congreso. Salvo por el tuit del ex mandatario peruano y líder de Perú Posible, Alejandro Toledo, quien aseguraba que debían autorizar el viaje de Humala, pues este después tendría que asumir las consecuencias de su decisión.

La resolución legislativa llegaría al Congreso recién al promediar las 7 de la noche, una hora antes de iniciar la cumbre de Unasur en Palacio de Gobierno. “La intención era aguantarla un poco más y ejercer así presión sobre el Parlamento”, aseguraron fuentes del oficialismo a Sesión de Control. Pero ninguno de ellos contaba con que el documento se filtraría a un medio televisivo, por lo que se vieron obligados a adelantar el debate.

Tras más de dos horas de debate, la votación para el viaje de Humala salió airosa con 53 votos a favor, 36 en contra y 2 abstenciones. Los nacionalistas habían ganado asegurando los votos de sus aliados, pero en gran parte también por las ausencias de la oposición.

De Acción Popular, 7 (de 10) parlamentarios votaron a su favor y dos se abstuvieron. Mientras que en Perú Posible, 5 (de 15) legisladores votaron a su favor y otros dos prefirieron abandonar la votación ante las discrepancias con el viaje. Uno de estos últimos, Daniel Mora, reveló que su líder, Alejandro Toledo, los llamó por teléfono para instarlos a que votaran a favor del polémico viaje.

Los apenas 36 votos de la oposición se dividieron en 25 (de 36) del fujimorismo, 1 (de 6) del Apra, 7 (de 12) de Alianza por el Gran Cambio, y 3 (de 8) de Solidaridad Nacional.

Sin contar con el hecho de que el solidario Heriberto Benitez decidió traicionar la postura de su bancada y votar a favor del viaje, el bloque opositor perdió 24 votos en ausencias, que sumados a los 36 presentes hubieran alcanzado 60 votos. Es decir, su postura se habría impuesto y Humala no habría podido viajar a la investidura de Maduro.

Una derrota fácil teniendo en cuenta que opositores como Luciana León estaban en la capital de representación y otros como Renzo Reggiardo prefirieron, en lugar de votar, estar en una entrevista en un set de televisión.

La cumbre

Una vez superado la batalla política en el Congreso, las miradas se trasladarían a Palacio de Gobierno, donde los ocho representantes de la Unasur se reunían para definir la postura que tomarían frente a la situación que vive Venezuela.

Allí también se formarían bandos. Mientras que Juan Manuel Santos (Colombia), y Sebastián Piñera (Chile) mostraban la necesidad de aceptar una auditoría sobre los resultados electorales en Venezuela, sus homólogos Cristina Fernández (Argentina) y Evo Morales (Bolivia) esbozaban una defensa cerrada del triunfo del sucesor de Hugo Chávez.

Nicolás Maduro también tendría su espacio para expresar su particular punto de vista, respecto a su propio triunfo. Pero la balanza la inclinaría Dilma Rousseff, la jefa de Estado de Brasil, quien junto a Santos, logró que Maduro aceptara el nuevo conteo de un porcentaje de los votos.

Aunque Maduro también tendría una carta bajo la manga, mandando a que el Consejo Nacional Electoral (CNE) de su país anunciara la auditoría antes de conocerse la decisión de la Unasur. No quería que la declaración de sus homólogos se viera como una exhortación.

El resto tan solo fue redacción. La mencionada declaración sería leída a la 1 de la madrugada por Humala y constaría de cinco puntos, donde se reconocería el triunfo de Maduro y se pediría la auditoría.

Maduro partiría así con una gran sonrisa de Lima para su toma de mando. Poco le importarían las críticas que arreciaron en los días siguientes, pues los ‘pajaritos’ de Unasur cantaron a su favor. Al menos por ahora. Muchos auguran que su caída es solo cuestión de tiempo.

Comparte tu punto de vista

XHTML: Puedes usar estas etiquetas: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>