diff --git a/application/Espo/Classes/Select/User/BoolFilters/OnlyMe.php b/application/Espo/Classes/Select/User/BoolFilters/OnlyMe.php new file mode 100644 index 0000000000..db1202c02f --- /dev/null +++ b/application/Espo/Classes/Select/User/BoolFilters/OnlyMe.php @@ -0,0 +1,47 @@ +. + * + * The interactive user interfaces in modified source and object code versions + * of this program must display Appropriate Legal Notices, as required under + * Section 5 of the GNU Affero General Public License version 3. + * + * In accordance with Section 7(b) of the GNU Affero General Public License version 3, + * these Appropriate Legal Notices must retain the display of the "EspoCRM" word. + ************************************************************************/ + +namespace Espo\Classes\Select\User\BoolFilters; + +use Espo\Core\Select\Bool\Filter; +use Espo\Entities\User; +use Espo\ORM\Query\Part\Where\OrGroupBuilder; +use Espo\ORM\Query\SelectBuilder as QueryBuilder; + +class OnlyMe implements Filter +{ + public function __construct( + private User $user + ) {} + + public function apply(QueryBuilder $queryBuilder, OrGroupBuilder $orGroupBuilder): void + { + $queryBuilder->where(['id' => $this->user->getId()]); + } +} diff --git a/application/Espo/Resources/i18n/en_US/User.json b/application/Espo/Resources/i18n/en_US/User.json index 19d983558e..87112d58fa 100644 --- a/application/Espo/Resources/i18n/en_US/User.json +++ b/application/Espo/Resources/i18n/en_US/User.json @@ -159,7 +159,8 @@ } }, "boolFilters": { - "onlyMyTeam": "Only My Team" + "onlyMyTeam": "Only My Team", + "onlyMe": "OnlyMe" }, "presetFilters": { "active": "Active", diff --git a/application/Espo/Resources/metadata/selectDefs/User.json b/application/Espo/Resources/metadata/selectDefs/User.json index 3cc262c7ef..d05f997095 100644 --- a/application/Espo/Resources/metadata/selectDefs/User.json +++ b/application/Espo/Resources/metadata/selectDefs/User.json @@ -17,7 +17,8 @@ "internal": "Espo\\Classes\\Select\\User\\PrimaryFilters\\Internal" }, "boolFilterClassNameMap": { - "onlyMyTeam": "Espo\\Classes\\Select\\User\\BoolFilters\\OnlyMyTeam" + "onlyMyTeam": "Espo\\Classes\\Select\\User\\BoolFilters\\OnlyMyTeam", + "onlyMe": "Espo\\Classes\\Select\\User\\BoolFilters\\OnlyMe" }, "orderItemConverterClassNameMap": { "userNameOwnFirst": "Espo\\Classes\\Select\\User\\OrderItemConverters\\UserNameOwnFirst"