9use \Bitrix\Main\Engine\Response;
10use \Bitrix\Main\UI\PageNavigation;
16 return static::getList(
17 Avatar\Model\ItemTable::query()
20 Avatar\
Mask\Owner\System::class,
21 Avatar\
Mask\Owner\RestApp::class
32 return static::getList(
33 Avatar\Model\ItemTable::query()
35 '=OWNER_TYPE' => Avatar\
Mask\Owner\User::class,
36 '=OWNER_ID' => $currentUser->getId()
46 return static::getList(
47 Avatar\Model\ItemTable::query()
49 '=SHARED_FOR.USER_ACCESS.USER_ID' => $currentUser->getId(),
50 '=OWNER_TYPE' => Avatar\
Mask\Owner\User::class,
51 '!=OWNER_ID' => $currentUser->getId()
54 ->addOrder(
'SHARED_FOR.ID',
'DESC')
63 return static::getList(
64 Avatar\Model\ItemTable::query()
65 ->setSelect([
'ID',
'FILE_ID',
'TITLE',
'DESCRIPTION',
'SORT'])
66 ->setOrder([
'RECENTLY_USED_BY.ID' =>
'DESC',
'ID' =>
'DESC'])
68 '=RECENTLY_USED_BY.USER_ID' => $currentUser->getId()
70 ->addOrder(
'RECENTLY_USED_BY.ID',
'DESC')
87 ->setSelect([
'ID',
'GROUP_ID',
'FILE_ID',
'TITLE',
'DESCRIPTION',
'SORT'])
88 ->setOrder([
'GROUP_ID' =>
'ASC',
'SORT' =>
'ASC',
'ID' =>
'DESC'])
92 ->setLimit($pageNavigation->
getLimit())
99 if ($file = \CFile::GetFileArray(
$res[
'FILE_ID']))
101 $groupId = (int) (
$res[
'GROUP_ID'] ?? 0);
104 $result[$groupId] = [
'items' => []];
106 $result[$groupId][
'items'][] = [
108 'title' =>
$res[
'TITLE'],
109 'description' =>
$res[
'DESCRIPTION'],
110 'src' => $file[
'SRC'],
119 $groupIds = array_keys(
$result);
120 if (array_sum($groupIds) > 0)
155 [
'item' => $item] =
$result->getData();
157 [
'accessCode' =>
Main\
UI\
EntitySelector\Converter::convertFromFinderCodes($item->getAccessCode())]
170 $result->addError(
new Main\
Error(
"Mask with id {$id} is not found.",
'Not found.'));
172 elseif (!$item->isEditableBy($consumer))
174 $result->addError(
new Main\
Error(
"Mask with id {$id} is not editable.",
'Access denied.'));
178 $result->setData([
'item' => $item]);
186 $file = ($file[
'changed'] ===
'Y' ? $this->
getRequest()->getFile(
'file') :
null);
193 [
'item' => $item] =
$result->getData();
197 'ACCESS_CODE' => $destCodesList
198 ] + (!empty($file) ? [
199 'FILE' => $file] : [])
206 new Avatar\
Mask\Owner\User($currentUser->getId()),
210 'ACCESS_CODE' => $destCodesList
220 $responsePage = static::getList(
221 Avatar\Model\ItemTable::query()
229 if (($groupedItems = $responsePage->getItems())
230 && ($itemsFromOneGroup = reset($groupedItems))
231 && isset($itemsFromOneGroup[
'items'])
232 && ($itemData = reset($itemsFromOneGroup[
'items']))
238 [
'item' => $item] =
$result->getData();
256 [
'item' => $item] =
$result->getData();
271 $pageNav->setPageSize($recentlyUsedListSize);
274 'recentlyUsedItems' => static::getRecentlyUsedListAction($pageNav, $currentUser)->getItems(),
275 'systemItems' => static::getSystemListAction($pageNavigation, $currentUser)->getItems(),
276 'myOwnItems' => static::getUserListAction($pageNavigation, $currentUser)->getItems(),
277 'sharedItems' => static::getSharedListAction($pageNavigation, $currentUser)->getItems(),
282 $currentUser->getId()
284 'importUrl' =>
Rest\
Marketplace\Url::getConfigurationImportManifestUrl(
299 $consumer->useRecentlyMaskId($id);
static createSuccess($data=null)
static createDenied(ErrorCollection $errorCollection=null, $data=null)
static createError(ErrorCollection $errorCollection=null, $data=null)
static includeModule($moduleName)
static getList(array $parameters=array())
static convertFromFinderCodes(array $codesList=[])
static convertToFinderCodes(array $entitiesList=[])
getMaskInitialInfoAction($recentlyUsedListSize, PageNavigation $pageNavigation, Main\Engine\CurrentUser $currentUser)
getUserListAction(PageNavigation $pageNavigation, Main\Engine\CurrentUser $currentUser)
getRecentlyUsedListAction(PageNavigation $pageNavigation, Main\Engine\CurrentUser $currentUser)
cleanUpAction(Main\Engine\CurrentUser $currentUser)
saveAction($id, $title, $accessCode, $file, Main\Engine\CurrentUser $currentUser)
getList(Main\ORM\Query\Query $query, PageNavigation $pageNavigation, Main\Engine\CurrentUser $currentUser)
deleteAction(int $id, Main\Engine\CurrentUser $currentUser)
checkEditability(int $id, Main\Engine\CurrentUser $currentUser)
getSystemListAction(PageNavigation $pageNavigation, Main\Engine\CurrentUser $currentUser)
useRecentlyAction(int $id, Main\Engine\CurrentUser $currentUser)
getMaskAccessCodeAction(int $id, Main\Engine\CurrentUser $currentUser)
getSharedListAction(PageNavigation $pageNavigation, Main\Engine\CurrentUser $currentUser)
static create(Owner\DefaultOwner $owner, array $file, ?array $descriptionParams=[])
static createFromId(int $userId)
if( $daysToExpire >=0 &&$daysToExpire< 60 elseif)( $daysToExpire< 0)
</p ></td >< td valign=top style='border-top:none;border-left:none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;padding:0cm 2.0pt 0cm 2.0pt;height:9.0pt'>< p class=Normal align=center style='margin:0cm;margin-bottom:.0001pt;text-align:center;line-height:normal'>< a name=ТекстовоеПоле54 ></a ><?=($taxRate > count( $arTaxList) > 0) ? $taxRate."%"