BxBaseCmtsMenuManage.php 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  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 UnaBaseView UNA Base Representation Classes
  7. * @{
  8. */
  9. /**
  10. * Menu representation.
  11. * @see BxDolMenu
  12. */
  13. class BxBaseCmtsMenuManage extends BxTemplCmtsMenuActions
  14. {
  15. public function __construct ($aObject, $oTemplate)
  16. {
  17. parent::__construct ($aObject, $oTemplate);
  18. if(bx_get('cmt_system') !== false && bx_get('cmt_object_id') !== false && bx_get('cmt_id') !== false) {
  19. $oCmts = BxTemplCmts::getObjectInstance(bx_process_input(bx_get('cmt_system')), (int)bx_get('cmt_object_id'));
  20. if($oCmts)
  21. $this->setCmtsData($oCmts, (int)bx_get('cmt_id'));
  22. }
  23. $this->_bDynamicMode = true;
  24. $this->_bShowTitles = true;
  25. }
  26. public function initContentParams()
  27. {
  28. parent::initContentParams();
  29. $this->_aContentParams = array_merge($this->_aContentParams, [
  30. 'cmt_system' => $this->_oCmts->getSystemName(),
  31. 'cmt_object_id' => $this->_oCmts->getId(),
  32. 'cmt_id' => (int)$this->_aCmt['cmt_id']
  33. ]);
  34. }
  35. public function setContentParams($aParams)
  36. {
  37. if(!isset($aParams['cmt_system'], $aParams['cmt_object_id'], $aParams['cmt_id']))
  38. return false;
  39. $oCmts = BxTemplCmts::getObjectInstance($aParams['cmt_system'], (int)$aParams['cmt_object_id']);
  40. if(!$oCmts)
  41. return false;
  42. $this->setCmtsData($oCmts, (int)$aParams['cmt_id']);
  43. return parent::setContentParams($aParams);
  44. }
  45. public function setCmtsData($oCmts, $iCmtId, $aBp = [], $aDp = [])
  46. {
  47. parent::setCmtsData($oCmts, $iCmtId, $aBp, $aDp);
  48. $this->_aContentParams = array_merge($this->_aContentParams, [
  49. 'cmt_system' => $this->_oCmts->getSystemName(),
  50. 'cmt_object_id' => $this->_oCmts->getId(),
  51. 'cmt_id' => (int)$this->_aCmt['cmt_id']
  52. ]);
  53. }
  54. }
  55. /** @} */