SuiteCRM-Core/public/legacy/Api/V8/Param/GetModulesParams.php
Clemente Raposo 5aa0daf046 Merge next into suite 8
Merge commit 'de4bf25cb3' into release/8.4.0-beta

# Conflicts:
#	public/legacy/data/SugarBean.php
#	public/legacy/include/Smarty/plugins/function.sugarvar.php
#	public/legacy/include/SugarDateTime.php
#	public/legacy/include/database/MysqliManager.php
#	public/legacy/modules/Alerts/metadata/listviewdefs.php
#	public/legacy/modules/SugarFeed/Dashlets/SugarFeedDashlet/SugarFeedDashlet.php
#	public/legacy/modules/Trackers/metadata/SearchFields.php
#	public/legacy/modules/Trackers/metadata/listviewdefs.php
#	public/legacy/modules/UpgradeWizard/SugarMerge/EditViewMerge.php
#	public/legacy/suitecrm_version.php
2023-07-21 15:22:52 +01:00

76 lines
1.6 KiB
PHP

<?php
namespace Api\V8\Param;
use Api\V8\Param\Options as ParamOption;
use Symfony\Component\OptionsResolver\OptionsResolver;
#[\AllowDynamicProperties]
class GetModulesParams extends BaseParam
{
/**
* @return string
*/
public function getModuleName()
{
return $this->parameters['moduleName'];
}
/**
* @return array|null
*/
public function getFields()
{
return isset($this->parameters['fields']) ? $this->parameters['fields'] : null;
}
/**
* @return PageParams
*/
public function getPage()
{
return isset($this->parameters['page'])
? $this->parameters['page']
: new PageParams($this->validatorFactory, $this->beanManager);
}
/**
* @return string
*/
public function getSort()
{
return isset($this->parameters['sort']) ? $this->parameters['sort'] : '';
}
/**
* @return string
*/
public function getFilter()
{
return isset($this->parameters['filter']) ? $this->parameters['filter'] : '';
}
/**
* @return bool
*/
public function getDeleted()
{
return strpos($this->getFilter(), ".deleted = '1'") !== false;
}
/**
* @inheritdoc
*/
protected function configureParameters(OptionsResolver $resolver)
{
$this->setOptions(
$resolver,
[
ParamOption\ModuleName::class,
ParamOption\Fields::class,
ParamOption\Page::class,
ParamOption\Sort::class,
ParamOption\Filter::class
]
);
}
}