meriksk/fotkomotko-php-sdk

There is no license information available for the latest version (0.1) of this package.

Fotkomotko PHP SDK

0.1 2014-08-26 16:41 UTC

This package is auto-updated.

Last update: 2024-03-27 01:12:36 UTC


README

Fotkomotko Client is a SDK library that allows to fetch data from Fotkomotko Services.

Basic Usage

Use new \Fotkomotko\Api($options) to create and initialize an API client. Option base_url is required. The minimal you'll need to have is:

<?php
// require the Fotkomotko autoloader
require_once '/path/to/FotkomotkoClient/src/autoload.php';
// alternatively, use composer

$options = array(
	'base_url' => 'http://url-to-fotkomotko/api',
	'username' => 'your_username',
	'password' => 'your_password',
);
$api = new \Fotkomotko\Api($options);

With Composer:

Add the "meriksk/fotkomotko-php-sdk": "@stable" into the require section of your composer.json. Run composer install. The example will look like

require_once __DIR__ . '/vendor/autoload.php';

$options = [
	'base_url' => 'http://url-to-fotkomotko/api',
	'username' => 'your_username',
	'password' => 'your_password',
];

$api = new \Fotkomotko\Api($options);

Endpoints

Albums

// Get a single album (find by Id)
$response = $api->getAlbum(1);

	if ($response->success) {
		echo '<p>Album: <strong>' . $response->data['title'] . '</strong></p>';
	} else {
		echo '<p>Error: <strong>' . $response->code . ': ' . $response->message . '</strong></p>';
	}

// Get a single album (find by album title)
$response = $api->getAlbum('album-title');

	if ($response->success) {
		echo '<p>Album: <strong>' . $response->data['title'] . '</strong></p>';
	} else {
		echo '<p>Error: <strong>' . $response->code . ': ' . $response->message . '</strong></p>';
	}

// Get list of albums
$response = $api
	->visibility(\Fotkomotko\Api::VISIBILITY_PUBLIC)
	->continents(\Fotkomotko\Api::EUROPE)
	->years(2014)
	->sort('-date')
	->getAlbums(array(
		'tags' => 'europe'
	));

	if ($response->success) {
		foreach($response->data['items'] as $album { ... }
	} else {
		echo '<p>Error: <strong>' . $response->code . ': ' . $response->message . '</strong></p>';
	}

Photos

// Get single photo
$response = $api->getPhoto(1);

	if ($response->success) {
		echo '<p>Photo: <strong>' . $response->data['title'] . '</strong></p>';
	} else {
		echo '<p>Error: <strong>' . $response->code . ': ' . $response->message . '</strong></p>';
	}

// Get list of photos from a single album
$response = $api->albums(1)->getAlbums($params);

	if ($response->success) {
		foreach($response->data['items'] as $photo { ... }
	} else {
		echo '<p>Error: <strong>' . $response->code . ': ' . $response->message . '</strong></p>';
	}

Collections

// Get single collection
$response = $api->getCollection(1);

	if ($response->success) {
		echo '<p>Collection: <strong>' . $response->data['title'] . '</strong></p>';
	} else {
		echo '<p>Error: <strong>' . $response->code . ': ' . $response->message . '</strong></p>';
	}

// Get list of collection
$response = $api->getCollections(array(
	'albums' => true,
	'coverPhoto' => true,
));

	if ($response->success) {
		foreach($response->data['items'] as $collection { ... }
	} else {
		echo '<p>Error: <strong>' . $response->code . ': ' . $response->message . '</strong></p>';
	}