Picasa webalbums
Google bied onder de naam Picasa Webalbums iedereen één GB ruimte aan op hun webservers. Voor een kleine bijdrage van 20 dollar per jaar (in euro's praktisch niks) komt daar nog een 10 GB bij. Naast dat het lekker snel is blijft het grootste voordeel nog wel het gemak, op mijn Mac zit het geïntegreerd in iPhoto waardoor ik met één druk op de knop mijn fotoalbums het internet op kan slingeren. Google maakt automatisch mooie mappen aan, thumbnails, je kunt extra informatie toevoegen zoals bijv. de GPS locaties (mijn N95 8GB kan dat automatisch) en mensen kunnen (mocht je jouw foto's publiekelijk maken) reageren. Het enige wat je wellicht nog zou willen is die hele zooi op je website plaatsen, geen punt, er zijn gelukkig feeds beschikbaar :). De mogelijkheden zijn enorm, kijk bijvoorbeeld voor de gein eens hier en hier. Je kunt bijv. naast de 'albumnamen' ophalen er ook voor kiezen om voor iedere map zijn album omslag en album omschrijving te tonen en kan je GPS data op Google Maps tonen. Dat laatste ga ik maken als ik aankomende zomer naar de USA ga, her en der kan ik met mijn telefoon een afbeelding maken en uploaden naar Google. Het thuisfront krijgt dan op de kaart allemaal foto's te zien en waar ze gemaakt zijn :). Maargoed, iedereen kent mij, ik hou niet zo van ingewikkelde shit dus ik het het eenvoudig gelaten. Enjoy :). - Op en aanmerkingen, ideeën en bugs zijn welkom :). - Ik gebruik een eenvoudige uitbreiding op Sean Hubar CURL Libary, gemaakt door Mike Purvis zodat de CURL's worden opgeslagen in een $_SESSIE ivm snelheid. Je vindt hem hier, je mag hem ook weglaten maar dan zal je zelf een curl_init moeten toevoegen. *LET OP* Om het systeem werkend te maken zul je in de code van Mike Purvis de volgende variabele moeten aanpassen 'curl_setopt($ch, CURLOPT_HEADER, 1)' naar een 0.
<?php
require_once('inhoud/curl.php');
$gebruikersnaam = 'arjan.kapteijn';
$curl = new CURL();
$curl->enableCache();
echo '<a name="fotoalbum"><h1>Fotoalbum</h1></a>';
if(isset($_GET['album']) && !empty($_GET['album']))
{
$xml = $curl->get('http://picasaweb.google.com/data/feed/api/user/'.$gebruikersnaam.'/album/'.$_GET['album']);
if($xml != 'No album found.')
{
$xml = new SimpleXMLElement($xml);
echo '>> <a href="?pagina=fotoalbum#fotoalbum">Fotoalbum</a> >> <a href="?pagina=fotoalbum&album='.$_GET['album'].'#fotoalbum">'.$xml->title.'</a> (<a href="'.$xml->link[2]['href'].'" target="_blank">Presentatie</a>)<br>';
if(count($xml->entry) > 0)
{
echo '<hr><div style="text-align: center">';
if(isset($_GET['foto']) && !empty($_GET['foto']))
{
for ($i = 0; $i <= count($xml->entry)-1; $i++)
{
if($xml->entry[$i]->title == $_GET['foto'])
{
$tmp = $i;
}
}
if($tmp == 0)
{
echo '<< Vorige';
}else{
echo '<< <a href="?pagina=fotoalbum&album='.$_GET['album'].'&foto='.$xml->entry[$tmp-1]->title.'#fotoalbum">Vorige</a>';
}
echo ' Foto '.($tmp+1).' van '.count($xml->entry).' ';
if($tmp == count($xml->entry)-1)
{
echo 'Volgende >><br><br>';
}else{
echo '<a href="?pagina=fotoalbum&album='.$_GET['album'].'&foto='.$xml->entry[$tmp+1]->title.'#fotoalbum">Volgende</a> >><br><br>';
}
echo '<img src="'.$xml->entry[$tmp]->content['src'].'?imgmax=720" title="'.$xml->title.' - '.$xml->entry[$tmp]->title.'" alt="'.$xml->title.' - '.$xml->entry[$tmp]->title.'">';
}else{
foreach($xml->entry as $album)
{
echo '<a href="?pagina=fotoalbum&album='.$_GET['album'].'&foto='.$album->title.'#fotoalbum" class="thumbnail"><img src="'.$album->content['src'].'?imgmax=160" class="thumbnail" title="'.$album->title.'" alt="'.$album->title.'"></a>';
}
}
echo '</div>';
}else{
echo '<p>Sorry, er zijn op dit moment nog geen fotos aan dit album toegevoegd</p>';
}
}else{
echo '<p>Sorry, ik heb dit album niet kunnen vinden!</p>';
}
}else{
echo '<p>Welkom op mijn publieke fotoalbum. Ik maak gebruik gebruik van Google\'s Picasa Webalbums waardoor je mijn fotoalbums ook kunt vinden op <a href="http://picasaweb.google.com/'.$gebruikersnaam.'" target="_blank">deze</a> locatie.</p>';
$xml = $curl->get('http://picasaweb.google.com/data/feed/api/user/'.$gebruikersnaam);
$xml = new SimpleXMLElement($xml);
if(count($xml->entry) > 0)
{
foreach ($xml->entry as $album)
{
echo '<img src="afbeeldingen/folder.gif" style="vertical-align : middle; margin-right: 10px;">';
echo '<b><a href="?pagina=fotoalbum&album='.strtolower(str_replace(' ','',$album->title)).'#fotoalbum">'.$album->title.'</a></b>';
echo ' Laatst geupdate op '.strftime("%e %B %Y om %H:%M", strtotime($album->updated)).'<br>';
}
}else{
echo '<p>Sorry, er zijn op dit moment nog geen albums toegevoegd!</p>';
}
}
?>
Reacties
0