Joomla Platform  13.1
Documentation des API du framework Joomla Platform
 Tout Classes Espaces de nommage Fichiers Fonctions Variables Pages
Référence de la classe JGoogleDataPicasaAlbum
+ Graphe d'héritage de JGoogleDataPicasaAlbum:
+ Graphe de collaboration de JGoogleDataPicasaAlbum:

Liste de tous les membres

Fonctions membres publiques

 __construct (SimpleXMLElement $xml, JRegistry $options=null, JGoogleAuth $auth=null)
 delete ($match= '*')
 getLink ($type= 'edit')
 getTitle ()
 getSummary ()
 getLocation ()
 getAccess ()
 getTime ()
 setTitle ($title)
 setSummary ($summary)
 setLocation ($location)
 setAccess ($access)
 setTime ($time)
 save ($match= '*')
 refresh ()
 listPhotos ()
 upload ($file, $title= '', $summary= '')
- Fonctions membres publiques inherited from JGoogleData
 __construct (JRegistry $options=null, JGoogleAuth $auth=null)
 authenticate ()
 isAuthenticated ()
 getOption ($key)
 setOption ($key, $value)

Fonctions membres protégées

 getMIME ($file)
- Fonctions membres protégées inherited from JGoogleData
 listGetData ($url, $maxpages=1, $token=null)
 query ($url, $data=null, $headers=null, $method= 'get')

Attributs protégés

 $xml
- Attributs protégés inherited from JGoogleData
 $options
 $auth

Additional Inherited Members

- Fonctions membres protégées statiques inherited from JGoogleData
static safeXML ($data)

Description détaillée

Définition à la ligne 19 du fichier album.php.


Documentation des constructeurs et destructeur

JGoogleDataPicasaAlbum::__construct ( SimpleXMLElement  $xml,
JRegistry  $options = null,
JGoogleAuth  $auth = null 
)

Constructor.

Paramètres:
SimpleXMLElement$xmlXML from Google
JRegistry$optionsGoogle options object
JGoogleAuth$authGoogle data http client object
Depuis:
12.3

Définition à la ligne 36 du fichier album.php.

{
$this->xml = $xml;
parent::__construct($options, $auth);
if (isset($this->auth) && !$this->auth->getOption('scope'))
{
$this->auth->setOption('scope', 'https://picasaweb.google.com/data/');
}
}

Documentation des fonctions membres

JGoogleDataPicasaAlbum::delete (   $match = '*')

Method to delete a Picasa album

Paramètres:
mixed$matchCheck for most up to date album
Renvoie:
boolean Success or failure.
Depuis:
12.3
Exceptions:
UnexpectedValueException

Définition à la ligne 58 du fichier album.php.

{
if ($this->isAuthenticated())
{
$url = $this->getLink();
if ($match === true)
{
$match = $this->xml->xpath('./@gd:etag');
$match = $match[0];
}
try
{
$jdata = $this->query($url, null, array('GData-Version' => 2, 'If-Match' => $match), 'delete');
}
catch (Exception $e)
{
if (strpos($e->getMessage(), 'Error code 412 received requesting data: Mismatch: etags') === 0)
{
throw new RuntimeException("Etag match failed: `$match`.");
}
throw $e;
}
if ($jdata->body != '')
{
throw new UnexpectedValueException("Unexpected data received from Google: `{$jdata->body}`.");
}
$this->xml = null;
return true;
}
else
{
return false;
}
}
JGoogleDataPicasaAlbum::getAccess ( )

Method to get the access level of the album

Renvoie:
string Album access level
Depuis:
12.3

Définition à la ligne 163 du fichier album.php.

{
return (string) $this->xml->children('gphoto', true)->access;
}
JGoogleDataPicasaAlbum::getLink (   $type = 'edit')

Method to get the album link

Paramètres:
string$typeType of link to return
Renvoie:
string Link or false on failure
Depuis:
12.3

Définition à la ligne 106 du fichier album.php.

{
$links = $this->xml->link;
foreach ($links as $link)
{
if ($link->attributes()->rel == $type)
{
return (string) $link->attributes()->href;
}
}
return false;
}
JGoogleDataPicasaAlbum::getLocation ( )

Method to get the location of the album

Renvoie:
string Album location
Depuis:
12.3

Définition à la ligne 151 du fichier album.php.

{
return (string) $this->xml->children('gphoto', true)->location;
}
JGoogleDataPicasaAlbum::getMIME (   $file)
protected

Add photo

Paramètres:
string$fileFilename
Renvoie:
mixed Data from Google
Depuis:
12.3
Exceptions:
UnexpectedValueException

Définition à la ligne 430 du fichier album.php.

Références JFile\getExt().

{
switch (strtolower(JFile::getExt($file)))
{
case 'bmp':
case 'bm':
return 'image/bmp';
case 'gif':
return 'image/gif';
case 'jpg':
case 'jpeg':
case 'jpe':
case 'jif':
case 'jfif':
case 'jfi':
return 'image/jpeg';
case 'png':
return 'image/png';
case '3gp':
return 'video/3gpp';
case 'avi':
return 'video/avi';
case 'mov':
case 'moov':
case 'qt':
return 'video/quicktime';
case 'mp4':
case 'm4a':
case 'm4p':
case 'm4b':
case 'm4r':
case 'm4v':
return 'video/mp4';
case 'mpg':
case 'mpeg':
case 'mp1':
case 'mp2':
case 'mp3':
case 'm1v':
case 'm1a':
case 'm2a':
case 'mpa':
case 'mpv':
return 'video/mpeg';
case 'asf':
return 'video/x-ms-asf';
case 'wmv':
return 'video/x-ms-wmv';
default:
return false;
}
}

+ Voici le graphe d'appel pour cette fonction :

JGoogleDataPicasaAlbum::getSummary ( )

Method to get the summary of the album

Renvoie:
string Album summary
Depuis:
12.3

Définition à la ligne 139 du fichier album.php.

{
return (string) $this->xml->children()->summary;
}
JGoogleDataPicasaAlbum::getTime ( )

Method to get the time of the album

Renvoie:
double Album time
Depuis:
12.3

Définition à la ligne 175 du fichier album.php.

{
return (double) $this->xml->children('gphoto', true)->timestamp / 1000;
}
JGoogleDataPicasaAlbum::getTitle ( )

Method to get the title of the album

Renvoie:
string Album title
Depuis:
12.3

Définition à la ligne 127 du fichier album.php.

{
return (string) $this->xml->children()->title;
}
JGoogleDataPicasaAlbum::listPhotos ( )

Method to retrieve a list of Picasa Photos

Renvoie:
mixed Data from Google
Depuis:
12.3
Exceptions:
UnexpectedValueException

Définition à la ligne 337 du fichier album.php.

{
if ($this->isAuthenticated())
{
$url = $this->getLink('http://schemas.google.com/g/2005#feed');
$jdata = $this->query($url, null, array('GData-Version' => 2));
$xml = $this->safeXML($jdata->body);
if (isset($xml->children()->entry))
{
$items = array();
foreach ($xml->children()->entry as $item)
{
$items[] = new JGoogleDataPicasaPhoto($item, $this->options, $this->auth);
}
return $items;
}
else
{
throw new UnexpectedValueException("Unexpected data received from Google: `{$jdata->body}`.");
}
}
else
{
return false;
}
}
JGoogleDataPicasaAlbum::refresh ( )

Refresh Picasa Album

Renvoie:
mixed Data from Google
Depuis:
12.3
Exceptions:
UnexpectedValueException

Définition à la ligne 313 du fichier album.php.

{
if ($this->isAuthenticated())
{
$url = $this->getLink();
$jdata = $this->query($url, null, array('GData-Version' => 2));
$this->xml = $this->safeXML($jdata->body);
return $this;
}
else
{
return false;
}
}
JGoogleDataPicasaAlbum::save (   $match = '*')

Method to modify a Picasa Album

Paramètres:
string$matchOptional eTag matching parameter
Renvoie:
mixed Data from Google.
Depuis:
12.3

Définition à la ligne 269 du fichier album.php.

{
if ($this->isAuthenticated())
{
$url = $this->getLink();
if ($match === true)
{
$match = $this->xml->xpath('./@gd:etag');
$match = $match[0];
}
try
{
$headers = array('GData-Version' => 2, 'Content-type' => 'application/atom+xml', 'If-Match' => $match);
$jdata = $this->query($url, $this->xml->asXML(), $headers, 'put');
}
catch (Exception $e)
{
if (strpos($e->getMessage(), 'Error code 412 received requesting data: Mismatch: etags') === 0)
{
throw new RuntimeException("Etag match failed: `$match`.");
}
throw $e;
}
$this->xml = $this->safeXML($jdata->body);
return $this;
}
else
{
return false;
}
}
JGoogleDataPicasaAlbum::setAccess (   $access)

Method to set the access level of the album

Paramètres:
string$accessNew album access
Renvoie:
JGoogleDataPicasaAlbum The object for method chaining
Depuis:
12.3

Définition à la ligne 237 du fichier album.php.

{
$this->xml->children('gphoto', true)->access = $access;
return $this;
}
JGoogleDataPicasaAlbum::setLocation (   $location)

Method to set the location of the album

Paramètres:
string$locationNew album location
Renvoie:
JGoogleDataPicasaAlbum The object for method chaining
Depuis:
12.3

Définition à la ligne 221 du fichier album.php.

{
$this->xml->children('gphoto', true)->location = $location;
return $this;
}
JGoogleDataPicasaAlbum::setSummary (   $summary)

Method to set the summary of the album

Paramètres:
string$summaryNew album summary
Renvoie:
JGoogleDataPicasaAlbum The object for method chaining
Depuis:
12.3

Définition à la ligne 205 du fichier album.php.

{
$this->xml->children()->summary = $summary;
return $this;
}
JGoogleDataPicasaAlbum::setTime (   $time)

Method to set the time of the album

Paramètres:
int$timeNew album time
Renvoie:
JGoogleDataPicasaAlbum The object for method chaining
Depuis:
12.3

Définition à la ligne 253 du fichier album.php.

{
$this->xml->children('gphoto', true)->timestamp = $time * 1000;
return $this;
}
JGoogleDataPicasaAlbum::setTitle (   $title)

Method to set the title of the album

Paramètres:
string$titleNew album title
Renvoie:
JGoogleDataPicasaAlbum The object for method chaining
Depuis:
12.3

Définition à la ligne 189 du fichier album.php.

{
$this->xml->children()->title = $title;
return $this;
}
JGoogleDataPicasaAlbum::upload (   $file,
  $title = '',
  $summary = '' 
)

Add photo

Paramètres:
string$filePath of file to upload
string$titleTitle to give to file (defaults to filename)
string$summaryDescription of the file
Renvoie:
mixed Data from Google
Depuis:
12.3
Exceptions:
RuntimeException

Définition à la ligne 378 du fichier album.php.

Références JFile\getName(), jimport(), et JFile\read().

{
if ($this->isAuthenticated())
{
jimport('joomla.filesystem.file');
$title = $title != '' ? $title : JFile::getName($file);
if (!($type = $this->getMIME($file)))
{
throw new RuntimeException("Inappropriate file type.");
}
if (!($data = JFile::read($file)))
{
throw new RuntimeException("Cannot access file: `$file`");
}
$xml = new SimpleXMLElement('<entry></entry>');
$xml->addAttribute('xmlns', 'http://www.w3.org/2005/Atom');
$xml->addChild('title', $title);
$xml->addChild('summary', $summary);
$cat = $xml->addChild('category', '');
$cat->addAttribute('scheme', 'http://schemas.google.com/g/2005#kind');
$cat->addAttribute('term', 'http://schemas.google.com/photos/2007#photo');
$post = "Media multipart posting\n";
$post .= "--END_OF_PART\n";
$post .= "Content-Type: application/atom+xml\n\n";
$post .= $xml->asXML() . "\n";
$post .= "--END_OF_PART\n";
$post .= "Content-Type: {$type}\n\n";
$post .= $data;
$jdata = $this->query($this->getLink(), $post, array('GData-Version' => 2, 'Content-Type: multipart/related'), 'post');
return new JGoogleDataPicasaPhoto($this->safeXML($jdata->body), $this->options, $this->auth);
}
else
{
return false;
}
}

+ Voici le graphe d'appel pour cette fonction :


Documentation des données membres

JGoogleDataPicasaAlbum::$xml
protected

Définition à la ligne 25 du fichier album.php.


La documentation de cette classe a été générée à partir du fichier suivant :