function evc_meta_box_buttons($custom) { $options = evc_get_all_options(array('evc_widget_buttons')); if (isset($custom['evc_buttons_insert_mode'])) { $mode = $custom['evc_buttons_insert_mode'][0]; } else { $mode = $options['evc_buttons_insert_mode']; } echo '<p>'; echo '<b>Кнопки "Поделиться"</b>'; echo '<br/><input type="radio" value="auto" id="evc-buttons-auto" name="evc_buttons_insert_mode"' . checked($mode, 'auto', false) . ' > <label class="selectit" for="evc-buttons-auto">Включить</label>'; echo '<br/><input type="radio" value="manual" id="evc-buttons-manual" name="evc_buttons_insert_mode"' . checked($mode, 'manual', false) . ' > <label class="selectit" for="evc-buttons-manual">Отключить</label>'; echo '<br/>Вы можете включить или отключить кнопки "Поделиться" для данной страницы.'; echo '</p>'; }
function evc_poll_vk_polls_get_by_id($params = array()) { $options = evc_get_all_options(array('evc_vk_api_autopost')); if (!isset($options['access_token']) || empty($options['access_token'])) { return false; } $default = array('access_token' => $options['access_token'], 'v' => '5.21'); $params = wp_parse_args($params, $default); $params = apply_filters('evc_poll_vk_polls_get_by_id', $params); //print__r($params); //return false; $query = http_build_query($params); // VK API REQUEST $data = wp_remote_post(EVC_API_URL . 'polls.getById?' . $query, array('sslverify' => false)); if (is_wp_error($data)) { evc_add_log('evc_poll_vk_polls_get_by_id: 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_poll_vk_polls_get_by_id: VK Error. ' . $resp['error']['error_code'] . ' ' . $resp['error']['error_msg']); } else { evc_add_log('evc_poll_vk_polls_get_by_id: VK Error. ' . $resp['error']); } return false; } evc_add_log('evc_poll_vk_polls_get_by_id: 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']; }
function evc_meta_box_comments_widget($custom) { $options = evc_get_all_options(array('evc_comments')); if (isset($custom['comment_widget_insert'])) { $evc_comments = $custom['comment_widget_insert'][0]; } else { $evc_comments = $options['comment_widget_insert']; } echo '<p>'; echo '<b>Виджет комментариев ВКонтакте</b>'; echo '<br/><input type="radio" value="auto" id="evc-comments-auto" name="comment_widget_insert"' . checked($evc_comments, 'auto', false) . ' > <label class="selectit" for="evc-comments-auto">Включить</label>'; echo '<br/><input type="radio" value="manual" id="evc-comments-manual" name="comment_widget_insert"' . checked($evc_comments, 'manual', false) . ' > <label class="selectit" for="evc-comments-manual">Отключить</label>'; echo '<br/>Вы можете включить или отключить виджет комментариев ВКонтакте для данной страницы.'; echo '</p>'; }
function evc_share_vk_login_url($redirect_url = false, $echo = false) { //$options = get_option('evc_options'); $options = evc_get_all_options(array('evc_vk_api_widgets')); if (!$redirect_url) { $redirect_url = remove_query_arg(array('code', 'redirect_uri', 'settings-updated', 'loggedout', 'error', 'access_denied', 'error_reason', 'error_description', 'reauth'), $_SERVER['REQUEST_URI']); //$redirect_url = get_bloginfo('wpurl') . $redirect_url; $redirect_url = site_url($redirect_url); } $params = array('client_id' => trim($options['site_app_id']), 'redirect_uri' => $redirect_url, 'display' => 'popup', 'response_type' => 'code', 'scope' => apply_filters('evc_share_vk_login_url_scope', 'video,friends,offline')); $query = http_build_query($params); $out = EVC_AUTHORIZATION_URL . '?' . $query; if ($echo) { echo $out; } else { return $out; } }
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); }