api.php 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. <?php
  2. require_once('php/include.php');
  3. // TODO - Add API handling.
  4. $method = $_SERVER['REQUEST_METHOD'];
  5. $ret = Array();
  6. if(isset($_GET['type'])){
  7. if(isset($_GET['id'])){
  8. $id = $_GET['id'];
  9. switch($_GET['type']){
  10. case 'user':
  11. // TODO - handle user requests
  12. break;
  13. case 'group':
  14. // TODO - handle group requests
  15. break;
  16. case 'issue':
  17. // TODO - handle issue requests
  18. break;
  19. case 'scrum':
  20. // TODO - handle scrum requests
  21. break;
  22. case 'admin':
  23. // TODO - handle admin requests
  24. break;
  25. case 'template':
  26. $ret['template'] = file_get_contents('data/'.$id.'.template.html');
  27. $ret['context'] = json_decode(file_get_contents('data/'.$id.'.context.json'));
  28. retj($ret,$id);
  29. break;
  30. case 'action':
  31. switch($id){
  32. case 'login':
  33. if(isset($_GET['username'])&&isset($_GET['password'])){
  34. $key = login($_GET['username'],$_GET['password']);
  35. if($key){
  36. $ret['key'] = $key;
  37. }else{
  38. $ret['error'] = "Login failed. Username or Password didn't match.";
  39. }
  40. }else{
  41. $ret['error'] = "Please provide a valid username and password.";
  42. }
  43. retj($ret,$id);
  44. break;
  45. case 'register':
  46. if(isset($_GET['username'])&&isset($_GET['password'])&&isset($_GET['email'])){
  47. if(addUser($_GET['username'],$_GET['password'],$_GET['email'])){
  48. $ret['key'] = securityKey($_GET['username'],salt());
  49. setKey($ret['key']);
  50. }else{
  51. $ret['error'] = "Could not add user. ".$mysqli->error;
  52. }
  53. }else{
  54. $ret['error'] = "That username already exists!";
  55. }
  56. retj($ret,$id);
  57. break;
  58. default:
  59. die('invalid action');
  60. }
  61. break;
  62. default:
  63. die("invalid type");
  64. }
  65. }else{
  66. die("id missing");
  67. }
  68. }else{
  69. die("type missing");
  70. }
  71. ?>