BxDolStudioFormsFields.php 1.7 KB

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