issue103, ensure showPhotoIndex() returns to the right page
[phpfspot.git] / rpc.php
diff --git a/rpc.php b/rpc.php
index 1f8698e408d6e4b0cc1fd9468aac7171cf07f91c..4bb297331abbad7bff7d38a9e2c66704f8788743 100644 (file)
--- a/rpc.php
+++ b/rpc.php
@@ -43,10 +43,15 @@ 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']);
@@ -62,14 +67,14 @@ class PHPFSPOT_RPC {
             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;
 
@@ -82,8 +87,8 @@ class PHPFSPOT_RPC {
             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;
 
@@ -102,7 +107,7 @@ class PHPFSPOT_RPC {
             break;
 
          case 'search':
-            $fspot->startSearch($_GET['for']);
+            print $fspot->startSearch($_GET['for']);
             break;
 
          case 'update_sort_order':