1
0

BxBaseModGroupsMenuViewActionsAll.php 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  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 BaseGroups Base classes for groups modules
  7. * @ingroup UnaModules
  8. *
  9. * @{
  10. */
  11. /**
  12. * View entry all actions menu
  13. */
  14. class BxBaseModGroupsMenuViewActionsAll extends BxBaseModProfileMenuViewActionsAll
  15. {
  16. public function __construct($aObject, $oTemplate = false)
  17. {
  18. parent::__construct($aObject, $oTemplate);
  19. $CNF = &$this->_oModule->_oConfig->CNF;
  20. if(isset($CNF['OBJECT_CONNECTIONS']))
  21. $this->_aConnectionToFunctionCheck[$CNF['OBJECT_CONNECTIONS']] = [
  22. 'fans' => 'checkAllowedFans',
  23. 'add' => 'checkAllowedFanAdd',
  24. 'remove' => 'checkAllowedFanRemove'
  25. ];
  26. }
  27. protected function _isContentPublic($iContentId, $aPublicGroups = [])
  28. {
  29. return parent::_isContentPublic($iContentId, [BX_DOL_PG_ALL, BX_DOL_PG_MEMBERS, 'c']);
  30. }
  31. protected function _getMenuItemProfileFans($aItem, $aParams = [])
  32. {
  33. $CNF = &$this->_oModule->_oConfig->CNF;
  34. if(empty($CNF['OBJECT_CONNECTIONS']))
  35. return false;
  36. return $this->_getMenuItemConnection($aItem, array_merge($aParams, [
  37. 'object' => $CNF['OBJECT_CONNECTIONS']
  38. ]));
  39. }
  40. protected function _getMenuItemProfileFanAdd($aItem)
  41. {
  42. $CNF = &$this->_oModule->_oConfig->CNF;
  43. $mixedResult = $this->_getMenuItemByNameActions($aItem);
  44. if(!$mixedResult)
  45. return $mixedResult;
  46. if($this->_bIsApi && $CNF['OBJECT_CONNECTIONS'])
  47. return $this->_getMenuItemConnectionApi($CNF['OBJECT_CONNECTIONS'], 'add', $aItem);
  48. return $mixedResult;
  49. }
  50. protected function _getMenuItemProfileFanAddPaid($aItem)
  51. {
  52. return $this->_getMenuItemByNameActions($aItem);
  53. }
  54. protected function _getMenuItemProfileFanRemove($aItem)
  55. {
  56. $CNF = &$this->_oModule->_oConfig->CNF;
  57. $mixedResult = $this->_getMenuItemByNameActions($aItem);
  58. if(!$mixedResult)
  59. return $mixedResult;
  60. if($this->_bIsApi && $CNF['OBJECT_CONNECTIONS'])
  61. return $this->_getMenuItemConnectionApi($CNF['OBJECT_CONNECTIONS'], 'remove', $aItem);
  62. return $mixedResult;
  63. }
  64. }
  65. /** @} */