Как разрешить оценивать товар только купившим?

Есть интернет-магазин на MODx Revo. В качестве компонента магазина используется miniSHOP2, в качестве дополнения для рейтинга — goodStar
Как реализовать возможность изменения рейтинга товаров только купившим его?
Денис
05 августа 2019, 11:04
modx.pro
472
0

Комментарии: 2

Наумов Алексей
05 августа 2019, 11:19
0
1. Проверяем, что пользователь авторизован (ну или если покупают не авторизованные, то нужно думать, как связать их с заказами, куками может быть). Или в письме с успешной оплатой отправлять уникальную ссылку.
2. Проверяем, что пользователь покупал товар.
3. Показываем форму с рейтингом)
    ElenaLelo
    05 августа 2019, 13:36
    0
    Что то типо этого, у меня работает
    <?php
    $pdo = $modx->getService('pdoFetch');
    $user = $modx->user->get('id'); //получаем айди юзера
    $idresource = $modx->resource->get('id'); //получаем айди текущего документа
    if ($orders = $pdo->getCollection('msOrder', array('user_id' => $user))) { //получаем все заказы юзера
        foreach  ($orders as $order)
        {
          $orderproducts = $pdo->getCollection('msOrderProduct', array('order_id' => $order['id']), array('sortby' => 'id')); //получаем всю продукцию во всех заказах юзера
          foreach  ($orderproducts as $orderproduct)
            {
            if ($idresource == $orderproduct['product_id']) 
                {
            print_r('Вы покупали данный товар');
                }
            }
        }
    }
      Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
      2