movies Опубликовано 20 Августа 2008 Жалоба Поделиться Опубликовано 20 Августа 2008 Задачка Юзер Ю1 из таблички ibf_members относится к группе Г1. Группа имеет маску М1.M1 допускает в форумы Ф1, Ф2, Ф3 Юзер Ю2 из таблички ibf_members относится к группе Г2. Группа имеет маску М2.M2 допускает в форумы Ф1, Ф2, Ф3 Хочу открыть Ф4 и пускать туда юзеров только Ю1Хочу открыть Ф5 и пускать туда юзеров Ю1 и Ю2 Создаю маску М4. Разрешает доступ в Ф1, Ф2, Ф3, Ф4. Назначаю маску Ю1.Создаю маску М5. Разрешает доступ в Ф1, Ф2, Ф3, Ф5. Назначаю маску Ю1 и Ю2. Ю1 перестает видеть Ф4. Как быть? Делать М5 доступ в Ф1, Ф2, Ф3, Ф4, Ф5? Как-то нелогично здесь присутствие Ф4 Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 Song Опубликовано 21 Августа 2008 Жалоба Поделиться Опубликовано 21 Августа 2008 Создаю маску М4. Разрешает доступ в Ф1, Ф2, Ф3, Ф4. Назначаю маску Ю1.Создаю маску М5. Разрешает доступ в Ф1, Ф2, Ф3, Ф5. Назначаю маску Ю1 и Ю2.Может при назначении второй Ctrl не удерживаешь и выделение с 1-ой пропадает? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 movies Опубликовано 21 Августа 2008 Автор Жалоба Поделиться Опубликовано 21 Августа 2008 Не могу понять логики движка при назначении масок. Зачем брать минимально подмножество масок? Логичнее было бы если бы маски дополняли друг друг. маска М1 имеет доступ к Ф1 и Ф2; М2 имеет доступ к Ф2 и Ф3. Если юзеру назначить M1 и M2, он будет видеть только Ф2. Хотя логично, чтобы юзер видел Ф1, Ф2, Ф3. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 Song Опубликовано 22 Августа 2008 Жалоба Поделиться Опубликовано 22 Августа 2008 Не могу понять логики движка при назначении масок. Зачем брать минимально подмножество масок? Логичнее было бы если бы маски дополняли друг друг.Ага, согласен. Я уже давно себе переделал. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 FatCat Опубликовано 22 Августа 2008 Жалоба Поделиться Опубликовано 22 Августа 2008 Какую версию движка вы обсуждаете? Увечную 1.3.1?У меня 1.3 от Игорька М., там все нормально, доступы по маскам суммируются. Ничего не правил, с самого начала так было. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 Song Опубликовано 25 Августа 2008 Жалоба Поделиться Опубликовано 25 Августа 2008 Они замещаются на самом деле. Смотри код. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 movies Опубликовано 25 Августа 2008 Автор Жалоба Поделиться Опубликовано 25 Августа 2008 Ага, согласен. Я уже давно себе переделал.Надо это править?$result['g_perm_id'] = $result['org_perm_id'] ? $result['org_perm_id'] : $result['g_perm_id']; Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 Song Опубликовано 26 Августа 2008 Жалоба Поделиться Опубликовано 26 Августа 2008 и это тоже. Но это не главное. Главное вот:$ibforums->perm_id = ( $this->member['org_perm_id'] ) ? $this->member['org_perm_id'] : $this->member['g_perm_id']; Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 movies Опубликовано 9 Декабря 2008 Автор Жалоба Поделиться Опубликовано 9 Декабря 2008 Спасибо за помощь! Такая замена корректна? if ( $this->member['org_perm_id'] ) { $org_perm_id_array = explode( ",", $this->member['org_perm_id'] ); $g_perm_id_array = explode( ",", $this->member['g_perm_id'] ); $ibforums->perm_id_array = array_merge ($org_perm_id_array, $g_perm_id_array); } else { $ibforums->perm_id_array = explode( ",", $this->member['g_perm_id'] ); } P.S. Извиняюсь, что только сейчас отписываюсь в теме. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 Song Опубликовано 9 Декабря 2008 Жалоба Поделиться Опубликовано 9 Декабря 2008 вполне.Я когда-то делал так: // Song * add additional perms 16.03.2005 function concat_perms(&$main_perms, $additional_perms = "") { if ( $additional_perms ) { $main_perms = ( $main_perms ) ? $main_perms.",".$additional_perms : $additional_perms; } } И соответственно functions.php: // additional permissions based on private preferences of the member if ( $this->member['org_perm_id'] ) { $std->concat_perms($ibforums->perm_id, $this->member['org_perm_id']); } Topics.php: if ( $result['org_perm_id'] ) { $std->concat_perms($result['g_perm_id'], $result['org_perm_id']); if ( $forum_perms != "*" ) {ну и т.д. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Вопрос
movies
Задачка
Юзер Ю1 из таблички ibf_members относится к группе Г1. Группа имеет маску М1.
M1 допускает в форумы Ф1, Ф2, Ф3
Юзер Ю2 из таблички ibf_members относится к группе Г2. Группа имеет маску М2.
M2 допускает в форумы Ф1, Ф2, Ф3
Хочу открыть Ф4 и пускать туда юзеров только Ю1
Хочу открыть Ф5 и пускать туда юзеров Ю1 и Ю2
Создаю маску М4. Разрешает доступ в Ф1, Ф2, Ф3, Ф4. Назначаю маску Ю1.
Создаю маску М5. Разрешает доступ в Ф1, Ф2, Ф3, Ф5. Назначаю маску Ю1 и Ю2.
Ю1 перестает видеть Ф4. Как быть? Делать М5 доступ в Ф1, Ф2, Ф3, Ф4, Ф5? Как-то нелогично здесь присутствие Ф4
Ссылка на комментарий
Поделиться на других сайтах
9 ответов на этот вопрос
Рекомендуемые сообщения
Присоединиться к обсуждению
Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.