You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

36 lines
1.1 KiB

  1. <?php
  2. define('DOCUMENT_ROOT', dirname(__FILE__));
  3. require_once(DOCUMENT_ROOT.'/bootstrap.php');
  4. $bootstrap = new Bootstrap();
  5. $booted = $bootstrap->boot();
  6. function bytesToSize1024($bytes, $precision = 2) {
  7. $unit = array('B','KB','MB');
  8. return @round($bytes / pow(1024, ($i = floor(log($bytes, 1024)))), $precision).' '.$unit[$i];
  9. }
  10. $sFileName = $_FILES['image_file']['name'];
  11. $sFileType = $_FILES['image_file']['type'];
  12. $sFileSize = bytesToSize1024($_FILES['image_file']['size'], 1);
  13. $user = new User();
  14. define('USER_PATH', DOCUMENT_ROOT . '/users/'.$user->getLogin().'/');
  15. $error = $_FILES['image_file']['error'];
  16. if ($error == UPLOAD_ERR_OK && $user->dirSize() < $user->sizelimit) {
  17. $tmp_name = $_FILES["image_file"]["tmp_name"];
  18. if(getimagesize($tmp_name) != 0) {
  19. $name = stringToUri($_FILES["image_file"]["name"]);
  20. move_uploaded_file($tmp_name, USER_PATH.$name);
  21. createThumbnailPicture(USER_PATH, $name);
  22. } else {
  23. unlink($tmp_name);
  24. echo '<div class="message error">'.t('Not a picture').'</div>';
  25. }
  26. } else {
  27. echo '<div class="message error">'.t('Folder size limit exceeded').'</div>';
  28. }