Schedul API dokumentacija
Zunanje aplikacije lahko v prireditvah dodajanjo dogodke, jih urejajo, spreminjajo število kart za prodajo in izpisujejo dogodke. API je dostopen iz Horde_Registry in preko RPC klicev.
Vsi primeri kode so napisani s pomočjo PEAR::XML_RPC2 knjižice.
*Povezava na api*:
require_once 'XML/RPC2/Client.php';
$options = array(
'prefix' => 'schedul.',
'debug' => true,
'encoding' => 'utf-8'
);
$client = XML_RPC2_Client::create('http://jure:jure@demo.avditorij.si/rpc.php', $options);
try {
$result = $client->perms();
var_dump($result);
} catch (XML_RPC2_FaultException $e) {
// The XMLRPC server returns a XMLRPC error
die('Exception #' . $result->getFaultCode() . ' : ' . $e->getFaultString());
} catch (Exception $e) {
// Other errors (HTTP or networking problems...)
die('Exception : ' . $e->getMessage());
}
Metode
| Metoda |
Opis |
Vhodni parametri |
Odgovor |
| perms |
Izpiše kategorije, ki so dostopne uporabniku. |
|
array s kategorija_id => naziv |
| listEvents |
Izpiše prireditve po določenem kriteriju. |
prazno ali kriterij |
array s spiskom prireditev |
| insertEvent |
Vstavi novo prireditev. |
array s podatki prireditve, večjezično |
id vpisanega dogodka, false ob neuspehu |
| updateEvent |
Popravi podatke prireditve. |
integer id prireditve za popravljat, array s podatki prireditve, večjezično |
true ob uspehu, false ob neuspehu |
| ticketSet |
Popravi število kart za prireditev. |
integer id prireditve, integer število kart, string nastavitev |
true ob uspehu, false ob neuspehu |
perms()
Vrne array s ključi, ki predstavljajo id-je kategorij (skupaj z imenom aplikacije), vrednosti so nazivi kategorij.
Primer:
array {
[title]=>
array {
[schedul:categories]=> Kategorije
[schedul:categories:375]=> Etnološkaka prireditev
[schedul:categories:376]=> Festival
[schedul:categories:377]=> Gledališče
[schedul:categories:378]=> Opera
[schedul:categories:379]=> Balet
[schedul:categories:380]=> Izobraževalna prireditev
[schedul:categories:381]=> Kino
[schedul:categories:382]=> Koncert
[schedul:categories:383]=> Literarni večer
[schedul:categories:384]=> Okrogla miza
}
listEvents(string)
Opcije:
| Opcija |
Opis |
| all |
vse prireditve |
| leto (npr. 2007) |
Prireditve določenega leta |
| inactive |
Neaktivne prireditve. |
| nextevents |
Bodoče prireditve |
| current_month |
Trenutni mesec |
| ticket_events |
Dogodki s vstopnicami |
Primer izpisa:
Array
(
[0] => Array
(
[id] => 300
[status] => 1
[contact] => vstopnice@avditorij.si
[category1] => 382
[category2] => 0
[ondate] => 2007-04-06 20:00:00
[online_reserved] => 1000
[short] => POMLAD V GLEDALIŠČU TARTINI PIRAN
PRIMAVERA AL TEATRO TARTINI
BUNGARO & TINKARA - Poker di Perle
[city] => Piran
[place] => Gledališče Tartini Piran
[description] => Glasbeno - gledali...
)
[1] => Array
(
[id] => 298
[status] => 1
[contact] => vstopnice@avditorij.si
[category1] => 394
[category2] => 0
[ondate] => 2007-04-04 19:00:00
[comments] => 0
[online_reserved] => 0
[short] => SOUPova sred(ic)a: barvanje pirhov in nastop Kull-Tura duo
[city] => Piran
[place] => Gledališče Tartini Piran
[longdesc] => 275
[description] => ...
)
...
)
insertEvent(array)
Oblika vhodnega arraya:
array('status' => 0 ali 1,
'category1' => integer id kategorije,
'online_reserved' => integer število kart,
'ticket_price' => float cena v eur,
'ticket_url' => string url za nakup vstopnic, na koncu avtomatično doda ID dogodka
'contact' => email,
'body' => array(
'sl_SI' => array('short' => string naziv prireditve,
'city' => string kraj,
'place' => string prizorišče,
'long' => string dolgi opis
)
)
);
Primer vhodnega arraya:
$info = array('status' => 1,
'category1' => 381,
'online_reserved' => 12,
'ticket_price' => 15.82,
'ticket_url' => 'http://obala.net/?do=buyticket&id='
'contact' => 'email@email.si',
'body' => array('sl_SI' => array('short' => 'Veliki koncert ob jubileju',
'city' => 'Koper',
'place' => 'Titov trg',
'long' => '<p>Nastopili bodo...</p>')));
Status 0 pomeni neaktivno prireditev, 1 je aktivna. Neaktivne prireditve se ne vidijo v spisku na strani, lahko jih pa urednik ureja.
Ob uspehu vrne ID prireditve v lokalni bazi.
updateEvent(integer,array);
updateEvent sprejme enako obliko arraya kot insert. Prvi parameter je lokalni id dogodka.
ticketSet(integer,integer,string);
Parametri:
- id dogodka
- število kart
- nastavitev
Možnosti nastavitve:
| Nastavitev |
Opis |
| subtract |
Odšteje število kart |
| add |
Doda število kart |
| set |
Nastavi število kart (privzeto dejanje) |