Download: Imageflow Flickr 1.0 .rar [22 KB]

You're free to use this for both commercial or personal use as long as you link back to http://www.imageflow.nl
Imageflow with Flickr is released under a Creative Commons Attribution 3.0 License.
If you want to remove the link to this site you will have to pay 29 euro for every site.
Email cfconsultancy

NB. Highslide JS is licensed under a Creative Commons Attribution-NonCommercial 2.5 License. This means you need the author's permission to use Highslide JS on commercial websites. ChangeLog

Version 1.0 Flickr imageflow
This is not the official version of ImageFlow. It is a modified version by Ceasar Feijen from cfconsultancy to make it compatible for showing Flickr photoalbums

Grab yourself a copy of the official ImageFlow version at http://imageflow.finnrudolph.de. For more information about ImageFlow read the Documentation and check his Newsblog.

2008 cfconsultancy

ImageFlow 1.0 with Flickr and Highslide

Loading images
loading
$cacheLife) unlink($imagesdir.$file); } } //Check if Flickr is alive $youHeaders = get_headers($feedURL); if (preg_match('/^HTTP\/\d\.\d\s+(200)/', $youHeaders[0])) { if ( $cachexml ) { // Filename for the retrieved rss feed $cachefile = $imagesdir . $userid .'.xml'; // Check if exists if (file_exists($cachefile) AND (filemtime($cachefile) > time() - $cacheLife)) { //Read feed into SimpleXML object $sxml = simplexml_load_file($cachefile); } else { if(function_exists('curl_init')){ $chf = curl_init(); $timeout = 15; // set to zero for no timeout curl_setopt ($chf, CURLOPT_URL, $feedURL); curl_setopt ($chf, CURLOPT_RETURNTRANSFER, 1); curl_setopt ($chf, CURLOPT_CONNECTTIMEOUT, $timeout); $feedcontents = curl_exec($chf); curl_close($chf); } else { $feedcontents = file_get_contents($feedURL); } // Write to disk and save the filename file_put_contents($cachefile, $feedcontents); //Read cach feed into SimpleXML object $sxml = simplexml_load_file($cachefile); } } else { //Read feed into SimpleXML object $sxml = simplexml_load_file($feedURL); } // get nodes in media: namespace for media information $media = $sxml->entry->children('http://www.w3.org/2005/Atom'); if(@empty($media)){ $notube = "Sorry, no pictures found !"; } foreach ($sxml->entry as $entry) { // get nodes in media: namespace for media information $media = $entry->children('http://www.w3.org/2005/Atom'); // get video titles $titles = $media->title; $titles = str_replace(array(' ', '&', '', '', '', '`', '"', "'",), array('', ' ', '', '', '', '', ''), $titles); // get thumbnail $thumbnail = $media->content; //Get the urls out of the page preg_match_all("/src=\"(.*?)\"/", $thumbnail, $matches); foreach($matches[1] as $thumbnails) { $thumbnails; } //Links for bigger 500 size pictures $links = str_replace("_m", "", $thumbnails); //First let's first get the picture name's to see if it's already there $path = explode('/', $thumbnails); $filename = $path[count($path)-1]; $youname = $imagesdir.$filename; //If already there skip the download if (!file_exists($youname)) { //Get the biggest picture availible if(function_exists('curl_init')){ $ch = curl_init(); $timeout = 15; // set to zero for no timeout curl_setopt ($ch, CURLOPT_URL, $thumbnails); curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout); $contents = curl_exec($ch); curl_close($ch); } else { $contents = file_get_contents($thumbnails); } //Get the picture's name again $path = explode('/', $thumbnails); $filename = $path[count($path)-1]; //Put it in the cache dir and give it a file name $youname = $imagesdir.$filename; //Write the file to disk file_put_contents($youname, $contents); } //For more information about the php reflection and settings got to http://reflection.corephp.co.uk ?> &cache=1&procent=0.7" longdesc="" alt="" title="Click on the picture to expand"/>
In this example I retrieve the maximum 20 pictures from Flickr Webalbums from the user luisa_m_c_m_cruz's and the album Near the sea.
Imgeflow will start focussed on the retrieved 2th movie.

INSTALLATION
Unrar and upload to your server
Open index.php and change the settings to your needs
//Set the feed url(atom)
$feedURL = "http://api.flickr.com/services/feeds/photoset.gne?set=1550911&nsid=79873540@N00&lang=en-us&format=atom";
//Set the userid
$userid = "79873540@N00";
//Reflection bgcolor
$reflection = "#000000";
//Directory where the images will be stored and cached (needs to be chmod to 775 or 777)
$imagesdir = "./img/";
//Cache the xml feed too true or false
$cachexml = false;
//Empty cache after one hour 60*60, one day 24*60*60 or 7*24*60*60 one week)
$cacheLife = 7*24*60*60;

These are the javascript settings you can change
1. Imageflow
/* Sets the numbers of images on each side of the focussed one */
conf_focus = 4;
/* 0 = default, 1 = small to big picture Change this to see the effect */
sizeAlgo = 0; //
/* Glide to a picture on startup. For example 10 is the 11th picture
Use 0 for the starting picture */
glidetopicture = 0;
/* Autostart slideshow */
slideshowauto = true;
/* Show slideshow button */
slideshowbutton = true;
/* Slideshow time setting in seconds */
slideshowtime = 3000;
/* Output video, highslide, empty for normal link */
output = "highslide";


Also Check out my demo with Imageflow, highslide viewer and sound effects
Or my demo with Youtube, highslide and Jeroen wijering flash player 4.0


TIP. If the results are less then 6 movies, imageflow will loose the focus because in this example I have set the starting image on 6.
Solution is to set the glidetopicture to 0
glidetopicture = 0
If you want to use some javascript to handle the slideshow you can use the following functions
One picture forwards onclick="handle(-1);"
One picture backwards onclick="handle(1);"
Stop slideshow onclick="stopslideshow();"
Play slideshow onclick="slideshow(1);"

Changing the reflections.
For the reflection options check http://reflection.corephp.co.uk

2008 cfconsultancy