api.php 4.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. <?php
  2. /**
  3. * @name api.php
  4. * @author Philipp Maurer
  5. * @author Tobias Reich
  6. * @copyright 2013 by Philipp Maurer, Tobias Reich
  7. */
  8. if(floatval(phpversion())<5.2) die("Please upgrade to PHP 5.2 or higher!");
  9. if((isset($_POST["function"])&&$_POST["function"]!="")||(isset($_GET["function"])&&$_GET["function"]!="")) {
  10. session_start();
  11. define("LYCHEE", true);
  12. include("array2json.php");
  13. include("config.php");
  14. include("functions.php");
  15. // Security
  16. if(isset($_POST["albumID"])&&($_POST["albumID"]==""||$_POST["albumID"]<0)) exit("Wrong parameter type for 'albumID'!");
  17. if(isset($_POST["photoID"])&&$_POST["photoID"]=="") exit("Wrong parameter type for 'photoID'!");
  18. if($_SESSION["login"]==true) {
  19. //Connect to DB
  20. $database = dbConnect();
  21. // Album Functions
  22. if($_POST["function"]=="getAlbums") echo array2json(getAlbums());
  23. if($_POST["function"]=="getSmartInfo") echo array2json(getSmartInfo());
  24. if($_POST["function"]=="addAlbum"&&isset($_POST["title"])) echo addAlbum($_POST["title"]);
  25. if($_POST["function"]=="getAlbumInfo"&&isset($_POST["albumID"])) echo array2json(getAlbumInfo($_POST["albumID"]));
  26. if($_POST["function"]=="setAlbumTitle"&&isset($_POST["albumID"])&&isset($_POST["title"])) echo setAlbumTitle($_POST["albumID"], $_POST["title"]);
  27. if($_POST["function"]=="deleteAlbum"&&isset($_POST["albumID"])&&isset($_POST["delAll"])) echo deleteAlbum($_POST["albumID"], $_POST["delAll"]);
  28. if($_GET["function"]=="getAlbumArchive"&&isset($_GET["albumID"])) getAlbumArchive($_GET["albumID"]);
  29. // Photo Functions
  30. if($_POST["function"]=="getPhotos"&&isset($_POST["albumID"])) echo array2json(getPhotos($_POST["albumID"]));
  31. if($_POST["function"]=="getPhotoInfo"&&isset($_POST["photoID"])) echo array2json(getPhotoInfo($_POST["photoID"]));
  32. if($_POST["function"]=="movePhoto"&&isset($_POST["photoID"])&&isset($_POST["albumID"])) echo movePhoto($_POST["photoID"], $_POST["albumID"]);
  33. if($_POST["function"]=="deletePhoto"&&isset($_POST["photoID"])) echo deletePhoto($_POST["photoID"]);
  34. if($_POST["function"]=="setPhotoTitle"&&isset($_POST["photoID"])&&isset($_POST["title"])) echo setPhotoTitle($_POST["photoID"], $_POST["title"]);
  35. if($_POST["function"]=="setPhotoStar"&&isset($_POST["photoID"])) echo setPhotoStar($_POST["photoID"]);
  36. if($_POST["function"]=="setPhotoPublic"&&isset($_POST["photoID"])&&isset($_POST["url"])) echo setPhotoPublic($_POST["photoID"], $_POST["url"]);
  37. if($_POST["function"]=="setPhotoDescription"&&isset($_POST["photoID"])&&isset($_POST["description"])) echo setPhotoDescription($_POST["photoID"], $_POST["description"]);
  38. if($_POST["function"]=="sharePhoto"&&isset($_POST["photoID"])&&isset($_POST["url"])) echo array2json(sharePhoto($_POST["photoID"], $_POST["url"]));
  39. if($_POST["function"]=="previousPhoto"&&isset($_POST["photoID"])&&isset($_POST["albumID"])) echo array2json(previousPhoto($_POST["photoID"], $_POST["albumID"]));
  40. if($_POST["function"]=="nextPhoto"&&isset($_POST["photoID"])&&isset($_POST["albumID"])) echo array2json(nextPhoto($_POST["photoID"], $_POST["albumID"]));
  41. // Upload Function
  42. if($_POST["function"]=="upload"&&isset($_FILES)&&isset($_POST["albumID"])) echo upload($_FILES, $_POST["albumID"]);
  43. // Search Function
  44. if($_POST["function"]=="search"&&isset($_POST["term"])) echo array2json(search($_POST["term"]));
  45. // Sync Function
  46. if($_POST["function"]=="syncFolder") echo syncFolder();
  47. // Session Functions
  48. if($_POST["function"]=="login") echo login($_POST['user'], $_POST['password']);
  49. if($_POST["function"]=="logout") logout();
  50. if($_POST["function"]=="loggedIn") echo true;
  51. } else {
  52. $database = dbConnect();
  53. // Photo Functions
  54. if($_POST["function"]=="getPhotoInfo"&&isset($_POST["photoID"])&&isPhotoPublic($_POST["photoID"])) echo array2json(getPhotoInfo($_POST["photoID"]));
  55. // Session Functions
  56. if($_POST["function"]=="login") echo login($_POST['user'], $_POST['password']);
  57. if($_POST["function"]=="loggedIn") echo false;
  58. }
  59. } else {
  60. header('HTTP/1.1 401 Unauthorized');
  61. die("Error: No permission!");
  62. }
  63. ?>