BxDolStudioFormsFields.php 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  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. protected $sModule = '';
  14. protected $sObject = '';
  15. protected $sDisplay = '';
  16. public function __construct ($aOptions, $oTemplate = false) {
  17. parent::__construct ($aOptions, $oTemplate);
  18. $this->oDb = new BxDolStudioFormsQuery();
  19. $sModule = bx_get('module');
  20. if(!empty($sModule)) {
  21. $this->sModule = bx_process_input($sModule);
  22. $this->_aQueryAppend['module'] = $this->sModule;
  23. }
  24. $sObject = bx_get('object');
  25. if(!empty($sObject)) {
  26. $this->sObject = bx_process_input($sObject);
  27. $this->_aQueryAppend['object'] = $this->sObject;
  28. }
  29. $sDisplay = bx_get('display');
  30. if(!empty($sDisplay)) {
  31. $this->sDisplay = bx_process_input($sDisplay);
  32. $this->_aQueryAppend['display'] = $this->sDisplay;
  33. }
  34. }
  35. protected function _getDataSql($sFilter, $sOrderField, $sOrderDir, $iStart, $iPerPage) {
  36. if(empty($this->sObject) || empty($this->sDisplay))
  37. return array();
  38. $this->oDb->checkInputsInDisplays($this->sObject, $this->sDisplay);
  39. $this->_aOptions['source'] = $this->oDb->prepare($this->_aOptions['source'], $this->sObject, $this->sDisplay);
  40. return parent::_getDataSql($sFilter, $sOrderField, $sOrderDir, $iStart, $iPerPage);
  41. }
  42. }
  43. /** @} */