X-Git-Url: https://git.nubati.net/cgi-bin/gitweb.cgi?p=phpfspot.git;a=blobdiff_plain;f=rpc.php;h=e4fecf8121048c1726bff6b8a409e67f1e5b6d04;hp=1f016336b4102a7f10ebad60d0acc6632665f5fa;hb=7703bb616f1966c47a230f5027b4f718769857d6;hpb=5bc350814a9426a89e8ab06728badad9430d4015 diff --git a/rpc.php b/rpc.php index 1f01633..e4fecf8 100644 --- a/rpc.php +++ b/rpc.php @@ -2,8 +2,9 @@ /* ************************************************************************* * - * Copyright (c) by Andreas Unterkircher, unki@netshadow.at - * All rights reserved + * phpfspot, presents your F-Spot photo collection in Web browsers. + * + * Copyright (c) by Andreas Unterkircher * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -43,46 +44,56 @@ class PHPFSPOT_RPC { /* if no action is specified, no need to further process this * function here. */ - if(!isset($_GET['action'])) + if(!isset($_GET['action']) && !isset($_POST['action'])) return; - switch($_GET['action']) { + if(isset($_GET['action'])) + $action = $_GET['action']; + if(isset($_POST['action'])) + $action = $_POST['action']; + + switch($action) { case 'showphoto': if(isset($_GET['id']) && is_numeric($_GET['id'])) { $fspot->showPhoto($_GET['id']); } break; + case 'getxmltaglist': + print $fspot->get_xml_tag_list(); + break; + case 'show_available_tags': - $fspot->getAvailableTags(); + print $fspot->getAvailableTags(); break; case 'show_selected_tags': - $fspot->getSelectedTags(); + print $fspot->getSelectedTags(); break; case 'addtag': - if(isset($_GET['id']) && is_numeric($_GET['id'])) { - $fspot->addTag($_GET['id']); + if(isset($_POST['id']) && is_numeric($_POST['id'])) { + print $fspot->addTag($_POST['id']); } break; case 'deltag': - if(isset($_GET['id']) && is_numeric($_GET['id'])) { - $fspot->delTag($_GET['id']); + if(isset($_POST['id']) && is_numeric($_POST['id'])) { + print $fspot->delTag($_POST['id']); } break; case 'reset': $fspot->resetTagSearch(); + $fspot->resetNameSearch(); $fspot->resetTags(); $fspot->resetDateSearch(); $fspot->resetPhotoView(); break; case 'tagcondition': - if(isset($_GET['mode']) && in_array($_GET['mode'], Array('or', 'and'))) { - $fspot->setTagCondition($_GET['mode']); + if(isset($_POST['mode']) && in_array($_POST['mode'], Array('or', 'and'))) { + print $fspot->setTagCondition($_POST['mode']); } break; @@ -93,6 +104,9 @@ class PHPFSPOT_RPC { else { unset($_SESSION['begin_with']); } + if(isset($_GET['last_photo']) && is_numeric($_GET['last_photo'])) + $_SESSION['last_photo'] = $_GET['last_photo']; + $fspot->showPhotoIndex(); break; @@ -101,14 +115,7 @@ class PHPFSPOT_RPC { break; case 'search': - $fspot->startSearch($_GET['for'], $_GET['from'], $_GET['to']); - - if((isset($_GET['from']) && $fspot->isValidDate($_GET['from'])) && - (isset($_GET['to']) && $fspot->isValidDate($_GET['to']))) { - } - else { - $fspot->startSearch($_GET['for']); - } + print $fspot->startSearch(); break; case 'update_sort_order':