X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

Открыть тему
Тема закрыта
> Virtuemart цена, нужен знающий чел.
Psyholord
Psyholord
Topic Starter сообщение 31.1.2011, 19:49; Ответить: Psyholord
Сообщение #1


Короче в вирте есть такая фича как ограничить видимость цен для определенной группы, я создал 3 группы и хочу чтоб 2 группы видели товар и цены а 1 не видела.
В вирте по умолчанию можно поставить чтоб видела ток 1 группа цены а остальные нет, то есть как на остальных вкладках CTRL не дает выбрать несколько.
Полез я в код нашел фаил /administrator/components/com_virtuemart/virtuemart.cfg.php
Там нашел вкладку define('VM_PRICE_ACCESS_LEVEL', 'Group3'); до этого как раз я выставил чтоб видела цены 3я группа.
Решил добавить типа define('VM_PRICE_ACCESS_LEVEL', 'Group3,Group2'); на что он мне снял ограничение для всех.
Пошел дальше и за место
define('VM_PRICE_ACCESS_LEVEL', 'Group3');
написал
global $VM_PRICE_ACCESS_LEVEL_ONE;
$VM_PRICE_ACCESS_LEVEL_ONE=array("Group3"=>1,"Group2"=>1);

function fuck_this_group($var){
    global $VM_PRICE_ACCESS_LEVEL_ONE;
    return array_key_exists($var,$VM_PRICE_ACCESS_LEVEL_ONE);
}

if(fuck_this_group($_SESSION['__default']['user']->usertype)){
    echo '<p>User good';
}else{
    echo '<p>User bad';
}


при заходе юзером 1 группы он мне пишет User bad , но блин цены все равно не ограничивает, кто знает где собака зарыта и может я не там ищу?
Для 2 и 3 соответственно пишет User good.

Сообщение отредактировал Psyholord - 31.1.2011, 19:50


--------------------
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
kRicha
kRicha
сообщение 31.1.2011, 20:46; Ответить: kRicha
Сообщение #2


а там radio или checkbox?


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Psyholord
Psyholord
Topic Starter сообщение 31.1.2011, 21:15; Ответить: Psyholord
Сообщение #3


(kRicha @ 31.1.2011, 19:46) *
а там radio или checkbox?

checkbox


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
kRicha
kRicha
сообщение 31.1.2011, 21:21; Ответить: kRicha
Сообщение #4


(Psyholord @ 31.1.2011, 19:15) *
checkbox

а поковырять код этого файла и снять ограничение не?


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Psyholord
Psyholord
Topic Starter сообщение 1.2.2011, 2:58; Ответить: Psyholord
Сообщение #5


А чекбокс стоит только на включение функции вывода цены для определенной группы, а там список и в списке выбирается только одна группа.
Если выбрать группу запись идет в фаил /administrator/components/com_virtuemart/virtuemart.cfg.php
и записывает выбор как define('VM_PRICE_ACCESS_LEVEL', 'Group3');
остальное читайте выше.
Тут нужен знающий чел!!

нашел записи такого типа также

function doAuthentication( $shopper_group ) {

        global $my, $acl, $user;
        $db = new ps_DB;
        $auth = !empty( $_SESSION['auth']) ? $_SESSION['auth'] : array();
        
        if( class_exists('jfactory')) {
            $vmUser = JFactory::getUser();
        } else {
            $vmUser =& $my;
        }
        if( VM_PRICE_ACCESS_LEVEL != '' ) {
            // Get the usertype property when not present
            if( empty( $vmUser->usertype ) ) {
                if( empty( $vmUser->id )) {
                    $gid = 29;
                }
                else {
                    $gid = $vmUser->gid;
                }
                $fieldname = vmIsJoomla( '1.5' ) ? 'id' : 'group_id';
                $db->query( 'SELECT `name` FROM `#__core_acl_aro_groups` WHERE `'.$fieldname.'` ='.$gid );
                $db->next_record();
                $vmUser->usertype = $db->f( 'name' );
            }
            
            $this->prepareACL();
            
            // Is the user allowed to see the prices?
            // this code will change when Joomla has a good ACL implementation
            if( is_callable( array( $user, 'authorize'))) {            
                $auth['show_prices']  = $user->authorize( 'virtuemart', 'prices' );    
            }
            else {
                $auth['show_prices']  = $acl->acl_check( 'virtuemart', 'prices', 'users', strtolower($vmUser->usertype), null, null );
            }
        }
        else {
            $auth['show_prices'] = 1;
        }

$auth['show_prices'] - отвечает за вывод цены.
usertype- обозначения принадлежности пользователя к группе

и вот этот код
function writeconfig(&$d) {
        global $my, $db, $vmLogger, $VM_LANG, $mosConfig_live_site;

        $group_id = intval( $d['conf_VM_PRICE_ACCESS_LEVEL'] );
// TODO: (J! 1.5) Is there a better way to handle this difference between Joomla versions?
        if( vmIsJoomla(1.5) ) {
            $db->query( 'SELECT name FROM #__core_acl_aro_groups WHERE id=\''.$group_id.'\'' );
        } else {
            $db->query( 'SELECT name FROM #__core_acl_aro_groups WHERE group_id=\''.$group_id.'\'' );
        }
        $db->next_record();
        $d['conf_VM_PRICE_ACCESS_LEVEL'] = $db->f('name');

        if (!is_writable(ADMINPATH ."virtuemart.cfg.php")) {
            $vmLogger->err( $VM_LANG->_('VM_CONFIGURATION_CHANGE_FAILURE',false).' ('. ADMINPATH ."virtuemart.cfg.php)" );
            return false;
        }


Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.


Сообщение отредактировал Psyholord - 1.2.2011, 3:12


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) PROXY-STORE.COM — ipV4 прокси от 42р В МЕСЯЦ с ротацией и без! Лучшая цена на рынке. 200+ стран
21 proxystore 5344 19.4.2024, 12:02
автор: proxystore
Открытая тема (нет новых ответов) Нужен кодер, чтобы пофиксить ошибку Wordpress после переноса сайта
0 Alex-777 928 7.4.2024, 18:05
автор: Alex-777
Открытая тема (нет новых ответов) Нужен исполнитель на постоянную основу для набора небольших текстов
20 Думающий 9328 2.4.2024, 18:05
автор: Думающий
Открытая тема (нет новых ответов) Нужен сайт с автонаполнением по XML
1 REGNET 1245 7.3.2024, 15:08
автор: REGNET
Открытая тема (нет новых ответов) Нужен райтер на постоянку
13 Kiloan_Frost 3423 6.3.2024, 22:24
автор: vitaliraduga


 



RSS Текстовая версия Сейчас: 24.4.2024, 6:50
Дизайн