Esempio n. 1
0
function evc_vkapi($params)
{
    $params['args'] = apply_filters('evc_vkapi_' . $params['method_str'], $params['args']);
    $args = array('body' => $params['args'], 'sslverify' => false);
    $data = wp_remote_post(EVC_API_URL . $params['method'], $args);
    //evc_add_log('evc_vk_get_users: VK Error. ' . print_r($params,1));
    if (is_wp_error($data)) {
        evc_add_log($params['method_str'] . ': WP ERROR. ' . $data->get_error_code() . ' ' . $data->get_error_message());
        return false;
    }
    if (isset($data['response']) && isset($data['response']['code']) && $data['response']['code'] != 200) {
        evc_add_log($params['method_str'] . ': RESPONSE ERROR. ' . $data['response']['code'] . ' ' . $data['response']['message']);
        return false;
    }
    $resp = json_decode($data['body'], true);
    if (isset($resp['error'])) {
        if (isset($resp['error']['error_code'])) {
            evc_add_log($params['method_str'] . ': VK Error. ' . $resp['error']['error_code'] . ' ' . $resp['error']['error_msg']);
        } else {
            evc_add_log($params['method_str'] . ': VK Error. ' . $resp['error']);
        }
        return false;
    }
    //evc_bridge_add_log(print_r($resp['response'],1));
    evc_add_log($params['method_str'] . ': VK API ');
    return $resp['response'];
}
function evc_comments_get_comments($args = array())
{
    $options = evc_get_all_options(array('evc_vk_api_widgets', 'evc_comments'));
    $default = array('order' => 'date', 'fields' => 'photo_100,photo_max_orig,screen_name,replies', 'v' => '5.10', 'lang' => 'ru');
    if (isset($page_id)) {
        $default['page_id'] = $page_id;
    }
    $args = wp_parse_args($args, $default);
    $args = apply_filters('evc_comments_get_comments_args', $args);
    $query = http_build_query($args);
    //print__r($args); //
    //exit();
    $data = wp_remote_get(EVC_API_URL . 'widgets.getComments?' . $query, array('sslverify' => false));
    //evc_add_log('evc_comments_get_comments:' . print_r($data, 1));
    if (is_wp_error($data)) {
        evc_add_log('evc_comments_get_comments: WP ERROR. ' . $data->get_error_code() . ' ' . $data->get_error_message());
        return false;
    }
    if (isset($data['response']) && isset($data['response']['code']) && $data['response']['code'] != 200) {
        evc_add_log('evc_wall_post: RESPONSE ERROR. ' . $data['response']['code'] . ' ' . $data['response']['message']);
        return false;
    }
    $resp = json_decode($data['body'], true);
    if (isset($resp['error'])) {
        if (isset($resp['error']['error_code'])) {
            evc_add_log('evc_comments_get_comments: VK Error. ' . $resp['error']['error_code'] . ' ' . $resp['error']['error_msg']);
        } else {
            evc_add_log('evc_comments_get_comments: VK Error. ' . $resp['error']);
        }
        return false;
    }
    //print__r($resp); //
    return $resp['response'];
}
Esempio n. 3
0
function evc_api_post($args)
{
    $params = array('body' => $args, 'user-agent' => 'EVCAPI/' . evc_version() . '; ' . site_url(), 'host' => get_bloginfo('url'));
    $data = wp_remote_post(EVC_API, $params, array('sslverify' => false));
    if (is_wp_error($data)) {
        evc_add_log('EVC API ' . $args['method'] . ': WP ERROR. ' . $data->get_error_code() . ' ' . $data->get_error_message());
        return false;
    }
    $resp = json_decode($data['body'], true);
    if (isset($resp['error'])) {
        if (isset($resp['error']['error_code'])) {
            evc_add_log('EVC API ' . $args['method'] . ': Error. ' . $resp['error']['error_code'] . ' ' . $resp['error']['error_msg']);
        }
        return false;
    }
    if (isset($resp['response']) && !empty($resp['response'])) {
        return $resp['response'];
    } else {
        return false;
    }
}
Esempio n. 4
0
function evc_upload_photo($id, $post)
{
    //$options = get_option('evc_options');
    $options = evc_get_all_options(array('evc_vk_api_autopost', 'evc_autopost'));
    if (!$options['upload_photo_count']) {
        return false;
    }
    if ($options['upload_photo_count'] > 5) {
        $options['upload_photo_count'] = 5;
    }
    // Find first 5 attached images
    $post_images = get_children(array('post_parent' => $post->ID, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'orderby' => 'menu_order id', 'order' => 'ASC', 'numberposts' => $options['upload_photo_count']));
    $post_images = apply_filters('evc_autopost_upload_photo', $post_images, $post);
    // if no attached photo
    if (!$post_images || empty($post_images)) {
        return false;
    }
    if ($post_images) {
        $i = 1;
        foreach ($post_images as $image) {
            $att_id = is_object($image) ? $image->ID : $image;
            $images['file' . $i] = '@' . get_attached_file($att_id);
            //$images['photo'.$i] = '@' . get_attached_file($att_id );
            //$images['photo'] = '@' . get_attached_file($att_id );
            $i++;
        }
    }
    $params = array('access_token' => $options['access_token'], 'gid' => $options['page_id']);
    // Get Wall Upload Server
    $query = http_build_query($params);
    $data = wp_remote_get(EVC_API_URL . 'photos.getWallUploadServer?' . $query, array('sslverify' => false));
    if (is_wp_error($data)) {
        evc_add_log('photos.getWallUploadServer: WP ERROR. ' . $data->get_error_code() . ' ' . $data->get_error_message());
        return $data->get_error_message();
    }
    $resp = json_decode($data['body'], true);
    //evc_add_log('photos.getWallUploadServer: $resp. ' . print_r($resp, 1)); //
    if (isset($resp['error'])) {
        if (isset($resp['error']['error_code'])) {
            evc_add_log('photos.getWallUploadServer: VK Error. ' . $resp['error']['error_code'] . ' ' . $resp['error']['error_msg']);
        } else {
            evc_add_log('photos.getWallUploadServer: VK Error. ' . $resp['error']);
        }
        return false;
    }
    if (!$resp['response']['upload_url']) {
        return false;
    }
    // Upload photo to server
    $curl = new Wp_Http_Curl();
    $data = $curl->request($resp['response']['upload_url'], array('body' => $images, 'method' => 'POST'));
    if (is_wp_error($data)) {
        evc_add_log('Upload Photos: WP ERROR. ' . $data->get_error_code() . ' ' . $data->get_error_message());
        return $data->get_error_message();
    }
    $resp = json_decode($data['body'], true);
    //evc_add_log('Upload Photos: $resp. ' . print_r($resp, 1)); //
    if (isset($resp['error'])) {
        if (isset($resp['error']['error_code'])) {
            evc_add_log('Upload Photos: VK Error. ' . $resp['error']['error_code'] . ' ' . $resp['error']['error_msg']);
        } else {
            evc_add_log('Upload Photos: VK Error. ' . $resp['error']);
        }
        return false;
    }
    if (!$resp['photo']) {
        return false;
    }
    // Save Wall Photo
    $params = array();
    $params = array('access_token' => $options['access_token'], 'gid' => $options['page_id'], 'server' => $resp['server'], 'photo' => $resp['photo'], 'hash' => $resp['hash']);
    $query = http_build_query($params);
    $data = wp_remote_get(EVC_API_URL . 'photos.saveWallPhoto?' . $query, array('sslverify' => false));
    if (is_wp_error($data)) {
        evc_add_log('photos.saveWallPhoto: WP ERROR. ' . $data->get_error_code() . ' ' . $data->get_error_message());
        return $data->get_error_message();
    }
    $resp = json_decode($data['body'], true);
    if (isset($resp['error'])) {
        if (isset($resp['error']['error_code'])) {
            evc_add_log('photos.saveWallPhoto: VK Error. ' . $resp['error']['error_code'] . ' ' . $resp['error']['error_msg']);
        } else {
            evc_add_log('photos.saveWallPhoto: VK Error. ' . $resp['error']);
        }
        return false;
    }
    if (!$resp['response']) {
        return false;
    }
    //print__r($resp);
    foreach ($resp['response'] as $r) {
        $attachments[] = $r['id'];
    }
    return array('i' => $attachments);
}