Нам нужно создать скрытые «системные» подпапки в каждом IGFolder, который создает обычный пользователь. Портлет галереи изображений размещается в основном на макетах частного сообщества всех обычных пользователей. Портлеты и их конфигурация предварительно сгенерированы, поэтому обычные пользователи не могут их изменить (layout.user. [Public | private] .layouts.modifiable = false).Liferay 6.0.5 - скрыть IGFolders от владельца на частном/публичном макете своего частного сообщества
Почему мы хотим это сделать В этих системных папках мы будем хранить автоматически созданные версии размеров загруженных изображений. Это связано с тем, что мы также импортируем WebContent/JournalArticle, представляющие галереи изображений, которые предоставляют разные размеры самих изображений. В конце концов, мы хотим отображать как IGFolders, так и контент JournalArticle таким же образом без особого специального кода.
Что я попробовал уже
Я пытался сделать это с помощью разрешений (ресурсные-акции/imgallery.xml => владелец-умолчанию), но на своих страницах сообщества пользователь также CommunityAdmin, который дает ему права делать & видеть почти все, что угодно он хочет. (PermissionCheckerBagImpl.isCommunityAdminImpl)
Я думал о создании макетов, которые не принадлежат пользователю его/ частного сообщества, но тестирование этого на публичной странице другого сообщества, что пользователи принадлежит не работает , Я не могу получить систему , чтобы отображать IGFolders текущего пользователя вообще, вместо отображаются папки сообщества.
Использование другого пользователя и группу для вложенных папок не получилось, если идентификатор_группы не соответствует одному из родительской папки папка идентификатор родительского установлен в 0, поэтому они больше подпапок на всех (IGFolderLocalServiceImpl.getParentFolderId).
Что может работать и я, наверное, просто не получить права
изменения владельца галереи изображений портлета/макет
возился с разрешения в путь я не думал
добавление еще одного слоя групп/сообществ
положить системные папки где-то еще (что, конечно, приводит
к более кода для поддержания связи между ними и их
родительской папки)
Конечно я мог бы использовать expandos для флага системные папки, которые я должен делать в любом случае, - и скрыть их после извлечения в представлении, но тогда мне также придется возиться с подсчетом папки, чего я бы не хотел, поскольку я чувствую, что это не способ делать что-то.
Любые идеи приветствуются, пожалуйста, не стесняются разработать, я совершенно новой для Liferay
Я немного потерял то, что вы подразумеваете, сделав IGFolders похожими на контент JournalArticle и то, что вы пытаетесь сделать в целом. Не могли бы вы дать мне конкретную систему отсчета о том, чего вы действительно пытаетесь достичь? Разве размеры изображений уже не доступны на объектах изображения? Можете ли вы получить размер изображения, вызвав службу Liferay в шаблоне JournalArticle? – stackfish