Студия креативных разработок DevArt.PRO.
Разработка сайтов и форумов под ключ!
Сильнейшая команда в России по vBulletin - читать подробнее...
 
 
 
 

 
 
Здесь скоро опять что то будет...
 
 
 
 
 
 
Loading

Вернуться   форум vBSupport.org > vBSupport.org > Гурушник > Кодер

Объявления
  • Изменения в правах
  • Каталог Фрилансеров
  • Добро пожаловать!
  • Premoderation
  • Новичкам!
  • For English speaking users
Ответ
 
Опции темы Опции просмотра
Старый 17.10.2009, 19:16   #1
Эксперт
 
Аватар для SMak044
Битовые поля в настройках

Вопрос в следующем.
Для настроек хака необходимо сделать список чекбоксов.
Создал файл bitfield_product.xml там создал записи следующего вида
<bitfield name="amtp_gramm_1">1</bitfield>
Все вроде нормально, и в настройках битфилды выводятся. Но вот как дать им человеческое имя?
Рядом с чекбоксом стоит amtp_gramm_1. Я сделал фразу с переменной amtp_gramm_1... Подсмотрел использование в записи битфилда
<bitfield name="amtp_gramm_1" phrase="amtp_gramm_f_1">1</bitfield>
переименовал переменную фразы в amtp_gramm_f_1.
Но все равно в настройках остается amtp_gramm_1

Где засада?
  Ответить с цитированием
Рекламка
Реклама на форуме
Старый 17.10.2009, 19:43   #2
kerk
k0t
 
Аватар для kerk
Цитата:
Сообщение от SMak044 Посмотреть сообщение
Где засада?
переменная - amtp_gramm_f_1
тип фразы - permissions
фраза - что_ты_напишешь
  Ответить с цитированием
Старый 17.10.2009, 20:11   #3
SMak044
Эксперт
 
Аватар для SMak044
Цитата:
Сообщение от kerk Посмотреть сообщение
переменная - amtp_gramm_f_1
тип фразы - permissions
фраза - что_ты_напишешь
Понял. Значит можно использовать просто конструкцию
<bitfield name="amtp_gramm_1">1</bitfield>
И amtp_gramm_1 сделать фразой с типом permissions.

А какой эффект будет от использования параметра phrase="amtp_gramm_f_1" в описании битового поля? Или это просто дополнительное отделение от самой переменной? Типа, что бы не путать.

Как все же лучше с точки зрения правильности и эксплуатации.
  Ответить с цитированием
Старый 17.10.2009, 20:29   #4
kerk
k0t
 
Аватар для kerk
Код:
<bitfield name="canviewfiles" group="krfmpermissions" phrase="kr_filesmanager_can_view_files">1</bitfield>
Код:
name="canviewfiles" => битовое поле
group="krfmpermissions" => группа пермишна
phrase="kr_filesmanager_can_view_files" => фраза
1 => значение поля
PHP код:
if(!($permissions['krfmpermissions'] & $vbulletin->bf_ugp['krfmpermissions']['canviewfiles']))
{
      
print_no_permission();

  Ответить с цитированием
Старый 18.10.2009, 17:43   #5
SMak044
Эксперт
 
Аватар для SMak044
Цитата:
Сообщение от kerk Посмотреть сообщение
group="krfmpermissions" => группа пермишна
Эта группа как то где то создается отдельно или достаточно просто обозначить ее в bitfield_product.xml?
Так же интересует могу ли я обратиться с проверкой к конкретному битовому полю или только к группе.
Например:
Код HTML:
  if($vbulletin->option['amtp_gramm_524288'] == 524288)
  {
    $optPartOfSpeech[] = 'МЕЖД';
    $optPartOfSpeech[] = 'PMY_RP_INTERJ';
  }
  Ответить с цитированием
Старый 18.10.2009, 18:20   #6
kerk
k0t
 
Аватар для kerk
Цитата:
Сообщение от SMak044 Посмотреть сообщение
Эта группа как то где то создается отдельно или достаточно просто обозначить ее в bitfield_product.xml?
естессно нужно добавить
создается (в инсталяторе продукта) дополнительное поле в таблице usergroup с именем этой группы
в него и будут записываться все битовые значения, которые укажешь в настройках групп

Код:
<?xml version="1.0" encoding="ISO-8859-1"?>
<bitfields product="kr_filesmanager">
    <bitfielddefs>
        <group name="ugp">
            <group name="krfmpermissions">

                <bitfield name="canviewfiles" group="krfmpermissions" phrase="kr_filesmanager_can_view_files">1</bitfield>

                <bitfield intperm="true" name="krfmmaxuploadtotal" group="krfmpermissions" phrase="kr_filesmanager_max_upload_total">1</bitfield>

            </group>
            <group name="krfmpermissions_modperm">
                <bitfield name="canmoderatefiles" group="krfmpermissions_modperm" phrase="kr_filesmanager_can_moderate_files" install="5,6,7">1</bitfield>
            </group>
        </group>
    
    <ignoregroups>
        <group name="krfmpermissions_modperm" ignoregroups="1,2,3,4" />
    </ignoregroups>

</bitfields>
легенда:
продукт
ugp - тип пермишна, есть ugp - узергруп, misc, nocache ......
группа_пермишна
фраза
целочисленное значение - например если это не битовое поле, а целое число и нужно указать не yes/no а прописать число, для таких полей в таблице usergroup добавляются свои поля
<игнорируемые_группы> не отображаются при установке прав, когда редактируешь группу, прописанную здесь, в основном для безопасности, что бы админ случайно не назначил админские/модерские права для группы, которой ну никак нельзя давать подобные права
1,2,3,4 - через зяпятую указать игноред групп
  Ответить с цитированием
Ответ

Закладки

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.



 
 

Текущее время: 15:21 25.05.2012. Часовой пояс GMT +4.


Powered by vBulletin® Version 3.8.2
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd. Перевод: zCarot