K
K
Konstantin P2022-03-31 06:38:37
1C-Bitrix
Konstantin P, 2022-03-31 06:38:37

Bitrix prices for different user groups?

There is a part of the code in the template for displaying the price type, how can I change it so that for a group of users with ID8 there is a price type with ID4, and for all other users prices with ID3? Thanks in advance for your reply!

<td class="price-cell">
  <div class="cost prices clearfix">
    <?if( count( $arItem["OFFERS"] ) > 0 ){?>
      <?\Aspro\Functions\CAsproSku::showItemPrices($arParams, $arItem, $item_id, $min_price_id, array(), ($arParams["SHOW_DISCOUNT_PERCENT_NUMBER"] == "Y" ? "N" : "Y"));?>
    <?}else{?>
      <?
      if(isset($arItem['PRICE_MATRIX']) && $arItem['PRICE_MATRIX']) // USE_PRICE_COUNT
      {?>
        <?if($arItem['ITEM_PRICE_MODE'] == 'Q' && count($arItem['PRICE_MATRIX']['ROWS']) > 1):?>
          <?=CNext::showPriceRangeTop($arItem, $arParams, GetMessage("CATALOG_ECONOMY"));?>
        <?endif;?>
          <?=CNext::showPriceMatrix($arItem, $arParams, $strMeasure, $arAddToBasketData);?>
      <?
      }
      else
      {?>
        <?\Aspro\Functions\CAsproItem::showItemPrices($arParams, $arItem["PRICES"], $strMeasure, $min_price_id, ($arParams["SHOW_DISCOUNT_PERCENT_NUMBER"] == "Y" ? "N" : "Y"));?>
      <?}?>
    <?}?>
  </div>
  <div class="adaptive_button_buy">
    <!--noindex-->
      <?=$arAddToBasketData["HTML"]?>
    <!--/noindex-->
  </div>
</td>

Answer the question

In order to leave comments, you need to log in

2 answer(s)
A
Alexander, 2022-03-31
@kikher

Check if the user belongs to a group

// для любого пользователя
echo in_array($group_id, CUser::GetUserGroup($user_id));

// для текущего пользователя
echo in_array($group_id, $USER->GetUserGroupArray());

//Принадлежит ли пользователь, который состоит во многих группах заданным:
<?$arGroupAvalaible = array(1,9,12,13,14,15); // массив групп, которые в которых нужно проверить доступность пользователя
$arGroups = CUser::GetUserGroup($USER->GetID()); // массив групп, в которых состоит пользователь
$result_intersect = array_intersect($arGroupAvalaible, $arGroups);// далее проверяем, если пользователь вошёл хотя бы в одну из групп, то позволяем ему что-либо делать
if(!empty($result_intersect)):     print "мне разрешено находится на данной странице или просматривать данную часть страницы";endif;?>

T
tgarl, 2022-03-31
@tgarl

go to the price type settings
/bitrix/admin/cat_group_admin.php?lang=ru
and choose there what price for which user group, the
main thing is that the ID3 price is higher than ID4, since it is for everyone
If the price is for everyone, and it will be lower than others, then it will be displayed and used

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question