$plugin) { if (!in_array($plugin['Name'], $views_plugins)) { unset($plugins[$key]); } } $options = $WP_Views->get_options(); $request = wp_remote_post(VIEWS_UPDATE_URL, array( 'timeout' => 15, 'body' => array( 'action' => 'update_information', 'subscription_email' => isset($options['subscription_email'])?$options['subscription_email']:false, 'subscription_key' => isset($options['subscription_key'])?$options['subscription_key']:false, 'plugins' => $plugins, 'lc' => get_option('WPLANG'), ))); // TODO we're not returning anything as WP_Error yet if ( is_wp_error($request) ) { $res = false; } else { $res = maybe_unserialize($request['body']); } if ($res !== false) { // check for VIEWS plugins foreach ($plugins as $key => $plugin) { if(!empty($res[$key])){ $value->response[$key] = $res[$key]; } else { if (isset($value->response[$key])) { unset($value->response[$key]); } } } } } return $value; } function get_views_plugin_page($state, $action, $args) { global $wpdb, $WP_Views; global $views_plugins; $options = $WP_Views->get_options(); $res = false; if (isset($args->slug) && $args->slug == "views_all" || @in_array(str_replace('_', ' ', $args->slug), $views_plugins)) { if (!isset($args->installed)) { $args->installed = ""; } $body_array = array('action' => $action, 'request' => serialize($args), 'slug' => $args->slug, 'installed' => $args->installed, 'subscription_email' => isset($options['subscription_email'])?$options['subscription_email']:false, 'subscription_key' => isset($options['subscription_key'])?$options['subscription_key']:false, 'lc' => get_option('WPLANG'), ); $request = wp_remote_post(VIEWS_UPDATE_URL, array( 'timeout' => 15, 'body' => $body_array) ); if ( is_wp_error($request) ) { $res = new WP_Error('plugins_api_failed', __('An Unexpected HTTP Error occurred during the API request.', 'wpv-views'), $request->get_error_message() ); } else { $res = maybe_unserialize($request['body']); if ( false === $res ) $res = new WP_Error('plugins_api_failed', __('An unknown error occurred.', 'sitepress'), $request['body']); } } return $res; } ?>