BxDolStudioFormsFields.php 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. <?php defined('BX_DOL') or die('hack attempt');
  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 DolphinStudio Dolphin Studio
  7. * @{
  8. */
  9. bx_import('BxTemplStudioGrid');
  10. bx_import('BxDolStudioTemplate');
  11. bx_import('BxDolStudioFormsQuery');
  12. class BxDolStudioFormsFields extends BxTemplStudioGrid
  13. {
  14. protected $sModule = '';
  15. protected $sObject = '';
  16. protected $sDisplay = '';
  17. public function __construct ($aOptions, $oTemplate = false)
  18. {
  19. parent::__construct ($aOptions, $oTemplate);
  20. $this->oDb = new BxDolStudioFormsQuery();
  21. $sModule = bx_get('module');
  22. if(!empty($sModule)) {
  23. $this->sModule = bx_process_input($sModule);
  24. $this->_aQueryAppend['module'] = $this->sModule;
  25. }
  26. $sObject = bx_get('object');
  27. if(!empty($sObject)) {
  28. $this->sObject = bx_process_input($sObject);
  29. $this->_aQueryAppend['object'] = $this->sObject;
  30. }
  31. $sDisplay = bx_get('display');
  32. if(!empty($sDisplay)) {
  33. $this->sDisplay = bx_process_input($sDisplay);
  34. $this->_aQueryAppend['display'] = $this->sDisplay;
  35. }
  36. }
  37. protected function _getDataSql($sFilter, $sOrderField, $sOrderDir, $iStart, $iPerPage)
  38. {
  39. if(empty($this->sObject) || empty($this->sDisplay))
  40. return array();
  41. $this->oDb->checkInputsInDisplays($this->sObject, $this->sDisplay);
  42. $this->_aOptions['source'] = $this->oDb->prepare($this->_aOptions['source'], $this->sObject, $this->sDisplay);
  43. return parent::_getDataSql($sFilter, $sOrderField, $sOrderDir, $iStart, $iPerPage);
  44. }
  45. }
  46. /** @} */