storage_uploader.php 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. <?php
  2. /**
  3. * Copyright (c) BoonEx Pty Limited - http://www.boonex.com/
  4. * CC-BY License - http://creativecommons.org/licenses/by/3.0/
  5. *
  6. * @defgroup TridentCore Trident Core
  7. * @{
  8. */
  9. require_once('./inc/header.inc.php');
  10. $sUploaderObject = bx_process_input(bx_get('uo'));
  11. $sStorageObject = bx_process_input(bx_get('so'));
  12. $sUniqId = bx_process_input(bx_get('uid'));
  13. $isMultiple = bx_get('m') ? true : false;
  14. $sFormat = bx_process_input(bx_get('f'));
  15. if ($sFormat != 'html' && $sFormat != 'json')
  16. $sFormat = 'html';
  17. $iContentId = bx_get('c');
  18. if (false === $iContentId || '' === $iContentId)
  19. $iContentId = false;
  20. else
  21. $iContentId = bx_process_input($iContentId, BX_DATA_INT);
  22. if (!$sUploaderObject || !$sStorageObject || !$sUniqId)
  23. exit;
  24. $isPrivate = (int)bx_get('p') ? 1 : 0;
  25. bx_import('BxDolUploader');
  26. $oUploader = BxDolUploader::getObjectInstance($sUploaderObject, $sStorageObject, $sUniqId);
  27. if (!$oUploader) {
  28. // no such uploader available
  29. exit;
  30. }
  31. $sAction = bx_process_input(bx_get('a'));
  32. switch ($sAction) {
  33. case 'show_uploader_form':
  34. header('Content-type: text/html; charset=utf-8');
  35. require_once(BX_DIRECTORY_PATH_INC . "design.inc.php");
  36. bx_import('BxDolLanguages');
  37. echo $oUploader->getUploaderForm($isMultiple, $iContentId, $isPrivate);
  38. break;
  39. case 'restore_ghosts':
  40. header('Content-type: text/html; charset=utf-8');
  41. $sImagesTranscoder = bx_process_input(bx_get('img_trans'));
  42. echo $oUploader->getGhosts(bx_get_logged_profile_id(), $sFormat, $sImagesTranscoder, $iContentId);
  43. break;
  44. case 'delete':
  45. header('Content-type: text/html; charset=utf-8');
  46. $iFileId = bx_process_input(bx_get('id'), BX_DATA_INT);
  47. echo $oUploader->deleteGhost($iFileId, bx_get_logged_profile_id());
  48. break;
  49. case 'upload':
  50. header('Content-type: text/html; charset=utf-8');
  51. bx_import('BxDolLanguages');
  52. $oUploader->handleUploads(bx_get_logged_profile_id(), isset($_FILES['f']) ? $_FILES['f'] : null, $isMultiple, $iContentId, $isPrivate);
  53. break;
  54. }
  55. /** @} */