Jump to content

Recommended Posts

Есть кто использует и шарит в приложении Automation Rules?

Что-то я не понял как вывести данные из Custom Data Fields

$data = $object->getRulesData( 'data_key' ); на какой объект ($object) ссылаться для вывода?

 

Link to post
Share on other sites
6 часов назад, ZIKURIK сказал:

Что-то я не понял как вывести данные из Custom Data Fields

объект зависит от того, где вам надо выводить поле. Например, это может быть $member, а может быть и $comment->author()

Link to post
Share on other sites
12 минут назад, alexis сказал:

объект зависит от того, где вам надо выводить поле. Например, это может быть $member, а может быть и $comment->author()

нужный объект задается при создании или я в любой шаблоне могу ссылаться на объект в нем?

Link to post
Share on other sites

Нужный объект закладывается вами, когда вы создаёте своё custom field. Вот, посмотрите:

image.png.193cdae268406fec69b838b35076347e.png

Для первого из них это будет member, для второго topic, для третьего event.

Вы можете сюда назвать, в каком шаблоне хотели бы выводить данные, чтоб конкретнее обсуждение вести.

Link to post
Share on other sites
В 12.04.2020 в 14:14, alexis сказал:

Вы можете сюда назвать, в каком шаблоне хотели бы выводить данные, чтоб конкретнее обсуждение вести.

в шаблоне отправки отзывов для записи нужно вывести

Link to post
Share on other sites
1 час назад, ZIKURIK сказал:

Dop Raiting Public

\IPS\cms\Records\Review6 Data / Int

Нигде в отзывах это поле не отображается

вам нужно убедиться, что права на просмотр этого поля поставлены всем.

и вы в курсе, что это подходит для работы только в шаблонах отзывов для Pages?

Link to post
Share on other sites
3 минуты назад, alexis сказал:

вам нужно убедиться, что права на просмотр этого поля поставлены всем.

и вы в курсе, что это подходит для работы только в шаблонах отзывов для Pages?

есть права, \IPS\cms\Records\Review6 Data / Int это не Pages разве?

Link to post
Share on other sites
24 минуты назад, ZIKURIK сказал:

IPS\cms\Records\Review6 Data / Int это не Pages разве?

Это поле для Pages и есть, поэтому выше пишу, что в шаблоны только приложения Pages его надо вставлять.

Link to post
Share on other sites
1 минуту назад, alexis сказал:

Это поле для Pages и есть, поэтому выше пишу, что в шаблоны только приложения Pages его надо вставлять.

так и в какой шаблон что вставить, чтобы отображалось? у меня указано Automatic в Display, но поле не отображается нигде 

Link to post
Share on other sites

К сожалению, не в курсе где там в Pages какой шаблон отвечает за отзывы, так как сам нигде не использую Pages.

2 часа назад, ZIKURIK сказал:

у меня указано Automatic в Display, но поле не отображается нигде

надо в ручную вставлять, даже не смотря на то, что стоит automatic. Нужно искать отвечающий за вывод отзывов шаблон.

Link to post
Share on other sites
В 14.04.2020 в 07:21, alexis сказал:

К сожалению, не в курсе где там в Pages какой шаблон отвечает за отзывы, так как сам нигде не использую Pages.

надо в ручную вставлять, даже не смотря на то, что стоит automatic. Нужно искать отвечающий за вывод отзывов шаблон.

Event: Member receives reputation points - так и не работает я так понял? Как тогда сделать событие: если пользователь получает репутацию, то +1 в custom data field

Link to post
Share on other sites
3 часа назад, ZIKURIK сказал:

Event: Member receives reputation points - так и не работает я так понял?

не работает ага

3 часа назад, ZIKURIK сказал:

Как тогда сделать событие: если пользователь получает репутацию, то +1 в custom data field

весьма непросто, так как event тот не работает.

Link to post
Share on other sites
В 18.04.2020 в 03:19, alexis сказал:

не работает ага

весьма непросто, так как event тот не работает.

У review есть data field (integer), значение которого задается "1" при создании Review. Но при Event: Новости Review has been deleted в condition нельзя сравнить этот data field вообще ни с чем, т.е. как будто он не определен для review. Это как так?

даже прямой код в condition возвращает FALSE, хотя поле определено и имеет значение

//<?php
if ($content->news_reviews == 1) {
return TRUE;
}else{ return FALSE; }

 

Link to post
Share on other sites
5 часов назад, ZIKURIK сказал:

Но при Event: Новости Review has been deleted

Это событие вообще срабатывает ли? Запускается? Потому что там наверное "мягкое удаление" активировано, и при удалении сначала удаляет не физически, а сюда? /modcp/deleted/

 

Link to post
Share on other sites
6 часов назад, ZIKURIK сказал:

У review есть data field (integer), значение которого задается "1" при создании Review. Но при Event: Новости Review has been deleted в condition нельзя сравнить этот data field вообще ни с чем, т.е. как будто он не определен для review. Это как так?

вы можете попробовать проверить работоспособность поля в другом событии, связанными с обзорами, но не с их удалением. В условиях - Compare Number.

Link to post
Share on other sites
4 часа назад, alexis сказал:

Это событие вообще срабатывает ли? Запускается? Потому что там наверное "мягкое удаление" активировано, и при удалении сначала удаляет не физически, а сюда? /modcp/deleted/

 

это я знаю и выключено, удаление происходит немедленно.

3 часа назад, alexis сказал:

вы можете попробовать проверить работоспособность поля в другом событии, связанными с обзорами, но не с их удалением. В условиях - Compare Number.

При создании обзора полю присваивается числовое значение, и число нормально добавляется в поле. А вот при удалении обзора если в условиях сравнить это же поле, то его как будто бы нету. В дебаге пишет что любые условия с этим полем возвращают FALSE как будто поля нет для обзора.

3 часа назад, alexis сказал:

В условиях - Compare Number.

это где?

Link to post
Share on other sites

Предполагаю что каким то волшебством поле со значением удаляется в момент удаления обзора и становится не доступно для сравнения.
Пришлось немного понаделать костылей, при помощи ява скрипта перед удалением обзора занести значение из этого поля в еще одно, закрепленное за пользователем (так сказать техническое невидимое), и уже его сравнивать в условии при удалении

Link to post
Share on other sites
3 часа назад, ZIKURIK сказал:

это где?

ну это condition to check: Number value

Этим ведь сравниваете?

1 час назад, ZIKURIK сказал:

Предполагаю что каким то волшебством поле со значением удаляется в момент удаления обзора и становится не доступно для сравнения

и вроде логично, так как из базы данных удаляется вся информация об обзоре. поэтому и предлагал выше проверять поле в другом событии.

Вообще же, вы можете проверять за наличие значений для полей обзоров в таблице базы данных, название начинается с rules_data_

1 час назад, ZIKURIK сказал:

при помощи ява скрипта перед удалением обзора занести значение из этого поля в еще одно, закрепленное за пользователем (так сказать техническое невидимое), и уже его сравнивать в условии при удалении

зачем java script, если те же rules позволяют в действии прописать занесение значения в несколько полей: одно для обзоров, второе для пользователя.

Link to post
Share on other sites
9 минут назад, alexis сказал:

ну это condition to check: Number value

Этим ведь сравниваете?

да

9 минут назад, alexis сказал:

и вроде логично, так как из базы данных удаляется вся информация об обзоре. поэтому и предлагал выше проверять поле в другом событии.

Вообще же, вы можете проверять за наличие значений для полей обзоров в таблице базы данных, название начинается с rules_data_

а из бд значения не удаляются во время удаления обзора? удаление происходит же до наступления сравнения в правилах, сравнивать уже будет нечего. Мне нужно проверять именно при удалении обзора.

12 минут назад, alexis сказал:

зачем java script, если те же rules позволяют в действии прописать занесение значения в несколько полей: одно для обзоров, второе для пользователя.

Пользователь может создавать множество обзоров. Придется к каждому ID созданному обзору присваивать значение задаваемое при создании самого обзора и размещать это в одном поле пользователя. мб массивом в виде id - value. Но потом придется писать код в событии, который достает из массива нужный ID и определяет по нему значение value. мутота. Мне легче явой на месте определить значение поля перед удалением, передать его в невидимую переменную, и уже эту переменную сравнивать в событии удаления обзора

3 минуты назад, ZIKURIK сказал:

Придется к каждому ID созданному обзору присваивать значение задаваемое при создании самого обзора и размещать это в одном поле пользователя. мб массивом в виде id - value. Но потом придется писать код в событии, который достает из массива нужный ID и определяет по нему значение value. мутота.

хотя и ID сравнить тоже нельзя будет, ведь обзора и его данных на момент сравнения уже не будет

Link to post
Share on other sites
2 часа назад, ZIKURIK сказал:

а из бд значения не удаляются во время удаления обзора?

так я ж пишу - проверьте посмотрите! >

"Вообще же, вы можете проверять за наличие значений для полей обзоров в таблице базы данных, название начинается с rules_data_"

 

 

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Ваша ссылка была автоматически строена.   Отображать как обычную ссылку

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...