Source of file InstagramFeed.php
Size: 2,258 Bytes - Last Modified: 2021-12-23T10:37:33+00:00
/var/www/docs.ssmods.com/process/src/code/InstagramFeed.php
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 | <?php /** * Created by PhpStorm. * User: davis * Date: 30/09/14 * Time: 03:32 */ class InstagramFeed_ControllerExtension extends Extension{ protected $configSettings = array(); static $owlCarouselInitJS = '(function($) { $(document).ready(function(){ $(".owl-carousel").owlCarousel(); });}(jQuery)); '; public function onAfterInit() { $config = Config::inst(); Requirements::css("instagramfeed/css/owl.carousel.css"); Requirements::javascript("instagramfeed/javascript/jquery/jquery-1.11.1.min.js"); Requirements::javascript("instagramfeed/javascript/owl-carousel/owl.carousel.js"); Requirements::customScript(self::$owlCarouselInitJS); $this->configSettings['ClientID'] = $config->get('InstagramFeed_ControllerExtension', 'ClientID');; $this->configSettings['DefaultHash'] = $config->get('InstagramFeed_ControllerExtension', 'DefaultHash');; } public function getInstagramFeedItems(){ if(array_key_exists('DefaultHash', $this->configSettings)){ $api_url = 'https://api.instagram.com/v1/tags/'.$this->configSettings['DefaultHash'].'/media/recent?client_id='.$this->configSettings['ClientID']; $ch = curl_init(); curl_setopt_array($ch, array( CURLOPT_URL => $api_url, CURLOPT_RETURNTRANSFER => 1, CURLOPT_SSL_VERIFYPEER => false )); $output = curl_exec($ch); $instagram_json = json_decode($output); $whitelist_fields = array('created_time', 'link', 'images', 'likes'); $row_array = array(); foreach($instagram_json->data as $items){ $coloumn_array = array(); foreach($items as $key => $value){ if(in_array($key, $whitelist_fields)){ if($key == 'images'){ $coloumn_array['LowResImage'] = $value->low_resolution->url; $coloumn_array['StandardResImage'] = $value->standard_resolution->url; $coloumn_array['Thumbnail'] = $value->thumbnail->url; } elseif($key == 'likes'){ $coloumn_array['Likes'] = $value->count; } else { $coloumn_array[$key] = $value; } } } array_push($row_array, ArrayData::create($coloumn_array)); } $instagram_feed_arraylist = ArrayList::create($row_array); return $instagram_feed_arraylist->renderWith('InstagramFeed'); } else { return null; } } } |