HEX
Server: Apache
System: Linux webd003.cluster128.gra.hosting.ovh.net 6.18.42-ovh-vps-grsec-zfs+ #1 SMP PREEMPT_DYNAMIC Wed Aug 5 15:59:48 CEST 2026 x86_64
User: slyfwmm (169339)
PHP: 8.1.34
Disabled: _dyuweyrj4,_dyuweyrj4r,dl
Upload Files
File: /home/slyfwmm/cortonavolley/wp-content/themes/subway/includes/widgets/flickr-qode-widget.php
<?php
if(!class_exists('SubwayQodeFlickrWidget')) {
	class SubwayQodeFlickrWidget extends WP_Widget {

		function __construct() {

			parent::__construct(
				'qode-flickr-widget',
				esc_html__('Subway Flickr Widget', 'subway'),
				array(
					'classname' => 'flickr',
					'description' => esc_html__('Subway Flickr Widget for user photo stream!', 'subway')
				), array('id_base' => 'qode-flickr-widget'));

		}

		function widget($args, $instance) {

			extract($args);

			$title = apply_filters('widget_title', $instance['title']);
			$user_name = $instance['user_name'];
			$number = $instance['number'];
			$under_text = $instance['under_text'];
			$img_widht = $instance['img_widht'];
			$img_height = $instance['img_height'];

			echo wp_kses_post($before_widget);

			if ($title != '') {

				echo wp_kses_post($before_title) . wp_kses_post($title) . wp_kses_post($after_title);


			}

			if ($user_name && $number) {

				$api_key = '04f2ebdf1f13890b64cb9c96d4108baf';


				$userid = wp_remote_get('http://api.flickr.com/services/rest/?method=flickr.people.findByUsername&api_key=' . $api_key . '&username=' . urlencode($user_name) . '&format=json');


				$userid = trim($userid['body'], 'jsonFlickrApi()');

				$userid = json_decode($userid);


				if ($userid->user->id != '') {

					$url_item = wp_remote_get('http://api.flickr.com/services/rest/?method=flickr.urls.getUserPhotos&api_key=' . $api_key . '&user_id=' . $userid->user->id . '&format=json');

					$url_item = trim($url_item['body'], 'jsonFlickrApi()');

					$url_item = json_decode($url_item);


					$photos = wp_remote_get('http://api.flickr.com/services/rest/?method=flickr.people.getPublicPhotos&api_key=' . $api_key . '&user_id=' . $userid->user->id . '&per_page=' . $number . '&format=json');

					$photos = trim($photos['body'], 'jsonFlickrApi()');

					$photos = json_decode($photos);

					?>

					<ul class='flickr_widget'>

						<?php foreach ($photos->photos->photo as $photo): $photo = (array)$photo; ?>

							<li class='flickr_single_photo'>

								<a href='<?php echo esc_url($url_item->user->url); ?><?php echo esc_attr($photo['id']); ?>'
								   target='_blank'
								   title="<?php echo esc_attr($photo['title']); ?>">

									<img
										src='<?php $url = "http://farm" . $photo['farm'] . ".static.flickr.com/" . $photo['server'] . "/" . $photo['id'] . "_" . $photo['secret'] . '_s' . ".jpg";
										echo esc_url($url); ?>' alt='<?php echo esc_attr($photo['title']); ?>'
										width="<?php echo esc_attr($img_widht); ?>"
										height="<?php echo esc_attr($img_height); ?>"/>

								</a>

							</li>

						<?php endforeach; ?>

					</ul>

					<?php

				} else {

					echo '<p>' . esc_html__('Invalid flickr username.', 'subway') . '</p>';

				}

			}

			if ($under_text != '') {

				echo '<div class="widget_description"><p>' . $instance['under_text'] . '</p></div>';
			}

			echo wp_kses_post($after_widget);

		}

		function form($instance) {

			$defaults = array('title' => 'Flickr Stream', 'user_name' => '', 'number' => 6, 'under_text' => '', 'img_widht' => 60, 'img_height' => 60);

			$instance = wp_parse_args((array)$instance, $defaults); ?>

			<p>

				<label
					for="<?php echo esc_attr($this->get_field_id('title')); ?>"><?php esc_html_e('Title:', 'subway'); ?></label>

				<input style="width: 216px;" id="<?php echo esc_attr($this->get_field_id('title')); ?>"
				       name="<?php echo esc_attr($this->get_field_name('title')); ?>"
				       value="<?php echo esc_attr($instance['title']); ?>"/>

			</p>

			<p>

				<label
					for="<?php echo esc_attr($this->get_field_id('user_name')); ?>"><?php esc_html_e('Username:', 'subway'); ?></label>

				<input style="width: 216px;" id="<?php echo esc_attr($this->get_field_id('user_name')); ?>"
				       name="<?php echo esc_attr($this->get_field_name('user_name')); ?>"
				       value="<?php echo esc_attr($instance['user_name']); ?>"/>

			</p>

			<p>

				<label
					for="<?php echo esc_attr($this->get_field_id('number')); ?>"><?php esc_html_e('Number of photos to show:', 'subway'); ?></label>

				<input style="width: 30px;" id="<?php echo esc_attr($this->get_field_id('number')); ?>"
				       name="<?php echo esc_attr($this->get_field_name('number')); ?>"
				       value="<?php echo esc_attr($instance['number']); ?>"/>

			</p>

			<p>

				<label
					for="<?php echo esc_attr($this->get_field_id('under_text')); ?>"><?php esc_html_e('Type text under widget(Optional):', 'subway'); ?></label>

				<textarea style="resize:none; width:216px; height:50px;"
				          id="<?php echo esc_attr($this->get_field_id('under_text')); ?>"
				          name="<?php echo esc_attr($this->get_field_name('under_text')); ?>"><?php echo esc_attr($instance['under_text']); ?></textarea>

			</p>

			<p>

				<label
					for="<?php echo esc_attr($this->get_field_id('img_widht')); ?>"><?php esc_html_e('Image width:', 'subway'); ?></label>

				<input style="width: 30px;" id="<?php echo esc_attr($this->get_field_id('img_widht')); ?>"
				       name="<?php echo esc_attr($this->get_field_name('img_widht')); ?>"
				       value="<?php echo esc_attr($instance['img_widht']); ?>"/>

			</p>

			<p>

				<label
					for="<?php echo esc_attr($this->get_field_id('img_height')); ?>"><?php esc_html_e('Image Height:', 'subway'); ?></label>

				<input style="width: 30px;" id="<?php echo esc_attr($this->get_field_id('img_height')); ?>"
				       name="<?php echo esc_attr($this->get_field_name('img_height')); ?>"
				       value="<?php echo esc_attr($instance['img_height']); ?>"/>

			</p>

			<?php

		}

		function update($new_instance, $old_instance) {

			$instance = $old_instance;

			$instance['title'] = strip_tags($new_instance['title']);
			$instance['user_name'] = $new_instance['user_name'];
			$instance['number'] = $new_instance['number'];
			$instance['under_text'] = $new_instance['under_text'];
			$instance['img_widht'] = $new_instance['img_widht'];
			$instance['img_height'] = $new_instance['img_height'];

			return $instance;

		}

	}
}