1
0

BxBaseModFilesModule.php 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. <?php defined('BX_DOL') or die('hack attempt');
  2. /**
  3. * Copyright (c) UNA, Inc - https://una.io
  4. * MIT License - https://opensource.org/licenses/MIT
  5. *
  6. * @defgroup BaseFile Base classes for files modules
  7. * @ingroup UnaModules
  8. *
  9. * @{
  10. */
  11. class BxBaseModFilesModule extends BxBaseModTextModule
  12. {
  13. public function __construct(&$oConfig)
  14. {
  15. parent::__construct($oConfig);
  16. }
  17. public function serviceGetFile ($iContentId, $aParams = [])
  18. {
  19. $CNF = &$this->_oConfig->CNF;
  20. $aContentInfo = $this->_oDb->getContentInfoById($iContentId);
  21. if(empty($aContentInfo) || !is_array($aContentInfo))
  22. return false;
  23. $sStorage = '';
  24. if(!empty($aParams['storage']))
  25. $sStorage = $aParams['storage'];
  26. else if(!empty($CNF['OBJECT_STORAGE']))
  27. $sStorage = $CNF['OBJECT_STORAGE'];
  28. else
  29. return false;
  30. $oStorage = BxDolStorage::getObjectInstance($sStorage);
  31. if(!$oStorage)
  32. return false;
  33. $sFieldFileId = '';
  34. if(!empty($aParams['field']))
  35. $sFieldFileId = $aParams['field'];
  36. else if(!empty($CNF['FIELD_FILE_ID']))
  37. $sFieldFileId = $CNF['FIELD_FILE_ID'];
  38. else
  39. return false;
  40. return $oStorage->getFile($aContentInfo[$sFieldFileId]);
  41. }
  42. }
  43. /** @} */