requestPostCreateDirectory.php 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. <?php
  2. require_once('request.php');
  3. require_once('../arav_up_inclu/base64codec.php');
  4. require_once('../arav_up_inclu/utils.php');
  5. class arkiwiRequestPostCreateDirectory extends arkiwiRequest
  6. {
  7. private $item64 = null;
  8. private $metadata = Array();
  9. private $path = null;
  10. public function __construct($request) {
  11. parent::__construct($request);
  12. $extra = $this->getRequestExtra();
  13. $this->item64 = $extra[0];
  14. $this->path = "/".decoder($extra[0]);
  15. }
  16. public function run() {
  17. if($this->request['method'] != 'POST') {
  18. $this->setBodyError(500, "arkiwiRequestPostCreateDirectory: POST method required.");
  19. return;
  20. }
  21. if (!startsWith($this->path,$_SESSION['authstate']['dir'])) {
  22. report(REPPRIO::FATAL, "No permission to create a new directory inside ".$this->path);
  23. $this->setBodyError(401, "No permission to create a new directory inside ".$this->path);
  24. return;
  25. }
  26. $input = file_get_contents('php://input');
  27. report(1, "AAAAA ".$input);
  28. $this->setCode(201);
  29. $this->setBodyJSON(true);
  30. }
  31. private function addKeyValue($k, $v) {
  32. $this->metadata[$k] = $v;
  33. }
  34. }