PATH:
home
/
lab2454c
/
elementalrock.com
/
wp-content
/
plugins
/
elementskit
/
widgets
/
behance-feed
<?php namespace Elementor; defined('ABSPATH') || exit; class ElementsKit_Widget_Behance_Feed_Handler extends \ElementsKit_Lite\Core\Handler_Widget { static function get_name() { return 'elementskit-behance-feed'; } static function get_title() { return esc_html__('Behance Feed', 'elementskit'); } static function get_icon() { return ' ekit-widget-icon eicon-button'; } static function get_categories() { return ['elementskit']; } static function get_dir() { return \ElementsKit::widget_dir() . 'behance-feed/'; } static function get_url() { return \ElementsKit::widget_url() . 'behance-feed/'; } public function wp_init() { new \ElementsKit\Widgets\Behance_Feed\Behance_Api(); } public static function get_behance_feed_user_info_key($user_name) { return '_trans_ekit_bf_user_' . $user_name; } public static function get_behance_feed_feed_key($user_name) { return '_trans_ekit_bf_feed_' . $user_name; } public static function get_the_feed($user_name) { $user_name = trim($user_name); $trans_key_usr = self::get_behance_feed_user_info_key($user_name); $trans_key_feed = self::get_behance_feed_feed_key($user_name); $trans_usr = get_transient($trans_key_usr); if(false !== $trans_usr) { $user_info = $trans_usr; $msg = 'user info fetched from cache'; } else { $msg = 'user info fetched from server and cached it'; $user_info = self::fetch_user_info_feed($user_name, $msg); } $trans_feed = get_transient($trans_key_feed); if(false !== $trans_feed) { $feed = $trans_feed; $msg2 = 'feed fetched from cache'; } else { $feed = self::fetch_all_feed($user_name, $msg); $msg2 = 'feed fetched from server and cached the call'; } $dt['user'] = empty($user_info->user) ? [] : $user_info->user; $dt['feed'] = $feed; return [ 'success' => true, 'data' => $dt, 'msg1' => $msg, 'msg2' => $msg2, ]; } public static function fetch_user_info_feed($user_name, &$msg) { $base = 'https://token.wpmet.com/feed/behance.php'; $args = '?action=get_bf_user&user_name=' . $user_name; $trans_key_usr = self::get_behance_feed_user_info_key($user_name); try { $request = wp_remote_get($base . $args); if(is_wp_error($request)) { $msg = 'API call failed ! - ' . $request->get_error_message(); return []; } $body = wp_remote_retrieve_body($request); $dt = json_decode($body); if(!empty($dt->result) && $dt->result == true) { $exp_time = 86400 * 2; //for two days set_transient($trans_key_usr, $dt->res, $exp_time); return $dt->res; } $msg = $dt->msg; return $dt; } catch(\Exception $ex) { $msg = 'Could not retrieve the access token - ' . $ex->getMessage(); } return []; } public static function fetch_all_feed($user_name, &$msg) { $base = 'https://token.wpmet.com/feed/behance.php'; $args = '?action=get_bf_feed&user_name=' . $user_name; $trans_key_feed = self::get_behance_feed_feed_key($user_name); try { $request = wp_remote_get($base . $args); if(is_wp_error($request)) { $msg = 'API call failed ! - ' . $request->get_error_message(); return []; } $body = wp_remote_retrieve_body($request); $dt = json_decode($body); if(!empty($dt->result) && $dt->result == true) { $exp_time = 86400 * 2; //for two days set_transient($trans_key_feed, $dt->res, $exp_time); return $dt->res; } $msg = $dt->msg; } catch(\Exception $ex) { $msg = 'Could not retrieve the access token - ' . $ex->getMessage(); } return []; } }
[+]
..
[-] behance-api.php
[edit]
[-] behance-feed.php
[edit]
[+]
assets
[-] .htaccess
[edit]
[-] behance-feed-handler.php
[edit]