Уважаемые пользователи!
C 7 ноября 2020 года phpBB Group прекратила выпуск обновлений и завершила дальнейшее развитие phpBB версии 3.2.
С 1 августа 2024 года phpBB Group прекращает поддержку phpBB 3.2 на официальном сайте.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.2 до 31 декабря 2024 года.
С учетом этого, настоятельно рекомендуется обновить конференции до версии 3.3.

Auto Group 1.2.2em

Ответы на вопросы, связанные с модами для phpBB 2.0.x, кроме относящихся к форуму Для авторов (phpBB 2.0.x).
AEC

Auto Group 1.2.2em

Сообщение AEC »

=============================================

Пара слов об Auto Group.. от Siava

Код: Выделить всё

############################################################## 
## MOD Title:          Auto group 
## MOD Author:         Niels < ncr@db9.dk > (Niels Chr. Rшd) http://mods.db9.dk 
## MOD Description:    This mod will make it posible to add member
##                     to a user group, depending on there post count 
## MOD Version:        1.2.2
## Compatibility:      2.0.5->2.0.6
## 
## Installation Level: Intermediate
## Installation Time:  10 Minutes (1mn by EasyMOD of Nuttzy)
## Files To Edit:      8
##      groupcp.php
##      modcp.php
##      admin/admin_groups.php
##      include/functions_post.php
##      include/usercp_register.php
##      language/lang_english/lang_admin.php
##      language/lang_english/lang_main.php
##      templates/subSilver/admin/group_edit_body.tpl
##
## Included Files:     2
##      auto_group_db_update.php
##      tool/sync_postcount.php
Скачать:
С сайта автора
С phpbbhacks

C phpbbGuru

Drupal refresh

Локализация:
ЗДЕСЬ

Этот мод позволяет автоматизировать добавление новых посетителей в группы в зависимости от числа их сообщений.
С помощью этого мода можно задать необходимое число сообщений для автоматического вступления посетителя в группу. Также возможно всегда изменить это число на другое и при этом, автоматически отсеять или добавить посетителей в группу (обновив группу согласно новым требованиям).

Практическое применение этот мод может найти в следующих случаях (приведу пример как у меня):

- Если используется мод вложений файлов, то можно задать порог сообщений, которых необходимо набрать посетителю, чтобы он имел возможность закачивать/скачивать файлы на форум или с форума.
- Также можно управлять квотами закачки.
- Аналогичным образом, давать доступ для создания или просмотра личных галерей в фотоальбоме от Smartor, в Music Online Mod и в моде дневников от Hyperion.
- С помощью этого мода можно управлять доступом к конкретному разделу форума с помощью прав доступа группам.
- И многое другое. Всё зависит от вашей фантазии и возможностей форума и его модов :lol: :mrgreen:

Таким образом, новички на форуме имеют минимум возможностей.
Да и зачем им сразу давать эти возможности? Пусть сначала сами их "заработают" ответами в форуме :mrgreen:

Воть 8)


:!: :!: :arrow: Решение проблемы с использованием MySQL 5.x.x

Код: Выделить всё

SQL Error : 1054 Unknown column 'g.group_id' in 'on clause'
http://phpbbguru.net/community/viewtopi ... 349#102349


=============================================




поставил себе мод Auto Group

столкнулся с тем, что если я хочу добавить юзера до того как он написал определённое число сообщений (к примеру 50), то он хотя и добавляется в группу, но когда пишет очередное сообщение (к примеру 31-е) этот мод автоматически выбрасывает его из группы. помогите модернизировать этот мод. а также интересует, возможно ли было бы сделать и наоборот – когда я не хочу определённых юзеров включать в группу, даже когда они уже написали эти 50 сообщений? типа чёрного списка для автогруппы.
спасибо.
Xpert
phpBB Guru
phpBB Guru
Сообщения: 5484
Зарегистрирован: 20 лет 8 месяцев
Поблагодарили: 2 раза

Сообщение Xpert »

AEC
Да, возможно отключать действие мода для отдельных пользователей. Соответствующий addon находится на официальном сайте автора (возможно понадобится регистрация).

То что пользователя выкидывает из группы - следствие настроек, поработай с соответствующими флажками.
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
AEC

Сообщение AEC »

Xpert писал(а):AEC
Да, возможно отключать действие мода для отдельных пользователей. Соответствующий addon находится на официальном сайте автора (возможно понадобится регистрация).
Xpert эта ссылка доступна только для "особенных". регистрация не помогает.
что там написано-то?
Xpert
phpBB Guru
phpBB Guru
Сообщения: 5484
Зарегистрирован: 20 лет 8 месяцев
Поблагодарили: 2 раза

Сообщение Xpert »

Странно. Вот текст:
hi ...
here is a nice addon for your really cool auto group mod (big thx for it!)
now, you have the possibility to deactivate auto groups for single users

Код: Выделить всё

# 
#-----[ ADD SQL ]--------------------------------------------- 
# 

ALTER TABLE phpbb_users ADD user_allow_ag TINYINT(1) DEFAULT '1' NOT NULL; 

# 
#-----[ OPEN ]------------------------------------------------ 
#  

language/{your_language}/lang_admin.php 

# 
#-----[ FIND ]------------------------------------------------ 
# 
$lang['Group_count_delete'] = 'Delete/Update old users';

# 
#-----[ ADD AFTER ]------------------------------------------- 
# 

$lang['User_allow_ag'] = "Activate Auto Group"; 

# 
#-----[ OPEN ]------------------------------------------------ 
#  

admin/admin_users.php 

# 
#-----[ FIND ]------------------------------------------------ 
# 

$user_allowsig = ( !empty($HTTP_POST_VARS['user_allowsig']) ) ? intval( $HTTP_POST_VARS['user_allowsig'] ) : 0; 

# 
#-----[ ADD AFTER ]------------------------------------------- 
# 

$user_allow_ag = ( !empty($HTTP_POST_VARS['user_allow_ag']) ) ? intval( $HTTP_POST_VARS['user_allow_ag'] ) : 0; 

# 
#-----[ FIND ]------------------------------------------------ 
# 

$user_allowsig = $this_userdata['user_allowsig']; 

# 
#-----[ ADD AFTER ]------------------------------------------- 
# 

$user_allow_ag = $this_userdata['user_allow_ag']; 

# 
#-----[ FIND ]------------------------------------------------ 
# 

$s_hidden_fields .= '<input type="hidden" name="user_allowavatar" value="' . $user_allowavatar . '" />'; 

# 
#-----[ ADD AFTER ]------------------------------------------- 
# 

$s_hidden_fields .= '<input type="hidden" name="user_allow_ag" value="' . $user_allow_ag . '" />'; 

# 
#-----[ FIND ]------------------------------------------------ 
# 

'ALLOW_AVATAR_YES' => ($user_allowavatar) ? 'checked="checked"' : '', 
'ALLOW_AVATAR_NO' => (!$user_allowavatar) ? 'checked="checked"' : '', 

# 
#-----[ ADD AFTER ]------------------------------------------- 
# 

'ALLOW_AG_YES' => ($user_allow_ag) ? 'checked="checked"' : '', 
'ALLOW_AG_NO' => (!$user_allow_ag) ? 'checked="checked"' : '', 

# 
#-----[ FIND ]------------------------------------------------ 
# 

$sql = "UPDATE " . USERS_TABLE . " 

#-----[ FIND IN NEXT LINE ]----------------------------------- 

, user_allowavatar = $user_allowavatar 

# 
#-----[ ADD AFTER ]------------------------------------------- 
# 

, user_allow_ag = $user_allow_ag 

# 
#-----[ FIND ]------------------------------------------------ 
# 

'L_ALLOW_AVATAR' => $lang['User_allowavatar'], 

# 
#-----[ ADD AFTER ]------------------------------------------- 
# 

'L_ALLOW_AG' => $lang['User_allow_ag'], 

# 
#-----[ OPEN ]------------------------------------------------ 
# 

includes/functions_post.php 

# 
#-----[ FIND ]------------------------------------------------ 
# 

	$sql = "SELECT ug.user_id, g.group_id as g_id, g.group_name , u.user_posts, g.group_count FROM " . GROUPS_TABLE . " g, ".USERS_TABLE." u
		LEFT JOIN ". USER_GROUP_TABLE." ug ON g.group_id=ug.group_id AND ug.user_id=$user_id
		WHERE u.user_id=$user_id
		AND g.group_single_user=0 
		AND g.group_count_enable=1
		AND g.group_moderator<>$user_id"; 

#-----[ FIND IN THIS BLOCK ]---------------------------------- 

AND g.group_count_enable=1 

# 
#-----[ ADD AFTER ]------------------------------------------- 
# 

AND u.user_allow_ag = 1 

# 
#-----[ OPEN ]------------------------------------------------ 
#  

/templates/{your_template}/admin/user_edit_body.tpl 

# 
#-----[ FIND ]------------------------------------------------ 
# 

   <tr> 
     <td class="row1"><span class="gen">{L_ALLOW_AVATAR}</span></td> 
     <td class="row2"> 
      <input type="radio" name="user_allowavatar" value="1" {ALLOW_AVATAR_YES} /> 
      <span class="gen">{L_YES}</span>&nbsp;&nbsp; 
      <input type="radio" name="user_allowavatar" value="0" {ALLOW_AVATAR_NO} /> 
      <span class="gen">{L_NO}</span></td> 
   </tr> 

# 
#-----[ ADD AFTER ]------------------------------------------- 
# 

   <tr> 
     <td class="row1"><span class="gen">{L_ALLOW_AG}</span></td> 
     <td class="row2"> 
      <input type="radio" name="user_allow_ag" value="1" {ALLOW_AG_YES} /> 
      <span class="gen">{L_YES}</span>&nbsp;&nbsp; 
      <input type="radio" name="user_allow_ag" value="0" {ALLOW_AG_NO} /> 
      <span class="gen">{L_NO}</span></td> 
   </tr> 

# 
#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------ 
the only one different is that the check is now in the functions_post.php ...
and it works and works and works *g*

EDIT: Niels
To have this add-on to be compatible with lates how-to, you also need to modify the groupcp.php

Код: Выделить всё

[FIND]
$is_autogroup_enable = ($row['group_count'] <= $userdata['user_posts'] && $row['group_count_max'] > $userdata['user_posts'] ) ? true : false;

[REPLACE WITH]
$is_autogroup_enable = ($row['group_count'] <= $userdata['user_posts'] && $row['group_count_max'] > $userdata['user_posts'] && $userdata['user_allow_ag']) ? true : false;
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
AEC

Сообщение AEC »

Xpert, попытался применить код который ты процитировал, но я не нашёл вот эту строку:

Код: Выделить всё

$user_allowsig = ( !empty($HTTP_POST_VARS['user_allowsig']) ) ? intval( $HTTP_POST_VARS['user_allowsig'] ) : 0;
даже просто переменную 'user_allowsig' :(
Xpert
phpBB Guru
phpBB Guru
Сообщения: 5484
Зарегистрирован: 20 лет 8 месяцев
Поблагодарили: 2 раза

Сообщение Xpert »

AEC
Тогда пойдем немного другим путем, попробуй вместо ....

Код: Выделить всё

 
#-----[ FIND ]------------------------------------------------ 
# 

$user_allowsig = ( !empty($HTTP_POST_VARS['user_allowsig']) ) ? intval( $HTTP_POST_VARS['user_allowsig'] ) : 0; 

# 
#-----[ ADD AFTER ]------------------------------------------- 
# 

$user_allow_ag = ( !empty($HTTP_POST_VARS['user_allow_ag']) ) ? intval( $HTTP_POST_VARS['user_allow_ag'] ) : 0; 

# 
#-----[ FIND ]------------------------------------------------ 
# 

$user_allowsig = $this_userdata['user_allowsig']; 

# 
#-----[ ADD AFTER ]------------------------------------------- 
# 

$user_allow_ag = $this_userdata['user_allow_ag'];
... выполнить такие инструкции ....

Код: Выделить всё

#
#-----[ FIND ]------------------------------------------------ 
# 

$user_allowavatar = ( !empty($HTTP_POST_VARS['user_allowavatar']) ) ? intval( $HTTP_POST_VARS['user_allowavatar'] ) : 0;

# 
#-----[ ADD AFTER ]------------------------------------------- 
# 

$user_allow_ag = ( !empty($HTTP_POST_VARS['user_allow_ag']) ) ? intval( $HTTP_POST_VARS['user_allow_ag'] ) : 0; 

# 
#-----[ FIND ]------------------------------------------------ 
# 

$user_allowavatar = $this_userdata['user_allowavatar']; 

# 
#-----[ ADD AFTER ]------------------------------------------- 
# 

$user_allow_ag = $this_userdata['user_allow_ag'];
Все остальное вроде совпадает. :roll:
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
AEC

Сообщение AEC »

Xpert, спасибо тебе огромное!!! работает :D
Аватара пользователя
OtherDima
phpBB 2.0.1
Сообщения: 294
Зарегистрирован: 19 лет 9 месяцев
Откуда: Санкт-Петербург
Благодарил (а): 1 раз

Сообщение OtherDima »

нужна консультация по работе этого МОД'a
установил...
группу создаю - указываю минимум 0 максимум 0
галочки у автодобавление и перечекить старых пользователей

пишет добавлено 0 в группе 0

:(

еще к моду прилагался файл sync_postcount.php
при запуске пишет - users updated: in total 73 users updated
всегда
Аватара пользователя
Siava
Поддержка
Поддержка
Сообщения: 5358
Зарегистрирован: 19 лет 10 месяцев
Откуда: Питер
Благодарил (а): 192 раза
Поблагодарили: 828 раз

Сообщение Siava »

OtherDima
А в чём смысл указывать минимум 0 и максимум 0?
Еще одно нарушение правил и будете забанены. © Mr. Anderson
Ты очистил кеш? © Sheer
https://siava.ru (phpbb 2.0.x 3.5.x)
Аватара пользователя
OtherDima
phpBB 2.0.1
Сообщения: 294
Зарегистрирован: 19 лет 9 месяцев
Откуда: Санкт-Петербург
Благодарил (а): 1 раз

Сообщение OtherDima »

Siava писал(а):А в чём смысл указывать минимум 0 и максимум 0?
указал
необходимое 100
максимальное 9999999
автодобавление
пеерсмотреть текущих пользователей

все равно 0 пользователей добавлено
Аватара пользователя
VVVas
Former team member
Сообщения: 4463
Зарегистрирован: 20 лет
Поблагодарили: 1 раз

Сообщение VVVas »

OtherDima
А галочку добавить сейчас, что бы он добавил? Автодобавление/автоудаление - это при изменение счетчика у пользователя, т.е. допустим он отпостил или вы убили его пост, счетчик изменился, тогда пользователь если подпадает под условие включиться/исключиться из группы. А если вам нужно пересмотреть членство в группе, допустим посты пересчитали, то ставите эти две галочки (или одну, как захотите). Не уж то поставить их и посмотреть что будет не захотелось?
я люблю daft punk | новый sugoi.ru
Аватара пользователя
Siava
Поддержка
Поддержка
Сообщения: 5358
Зарегистрирован: 19 лет 10 месяцев
Откуда: Питер
Благодарил (а): 192 раза
Поблагодарили: 828 раз

Сообщение Siava »

Короче, ставьте все 3 галочки =)

(использую перевод Xpert'a)
Автоматическое добавление пользователей при добавлении сообщений - это для будущего, когда кто-то наберёт 100 сообщений, он попадёт в группу.
Добавить новых пользователей в группу - это для настоящего, будут добавлены все, у кого более 100 постов и не состоят в группе.
Пересмотреть членство в группе для имеющихся пользователей - будут удалены из группы те, у кого постов стало менее 100 и оставлены те, у кого более 100.
Еще одно нарушение правил и будете забанены. © Mr. Anderson
Ты очистил кеш? © Sheer
https://siava.ru (phpbb 2.0.x 3.5.x)
Аватара пользователя
OtherDima
phpBB 2.0.1
Сообщения: 294
Зарегистрирован: 19 лет 9 месяцев
Откуда: Санкт-Петербург
Благодарил (а): 1 раз

Сообщение OtherDima »

VVVas
шаманство какое то :shock:
короче оно добавило распределило узеров по группам
но юзера которые есть в группе модераторы - теперь есть и группе
которая отвечает за нахождение в ней по кол-ву сообщений
:))
бага

короче разобрался

VVVas пасиба

Добавлено спустя 4 минуты 27 секунд:
Siava писал(а):Короче, ставьте все 3 галочки =)
мдя, эт точно
перевод от Xpert'a убивает все вопросы на корню...
:)
еще к моду прилагался файл sync_postcount.php
при запуске пишет - users updated: in total 73 users updated
всегда
так а что с этим файлом,
зачем оно?
Аватара пользователя
VVVas
Former team member
Сообщения: 4463
Зарегистрирован: 20 лет
Поблагодарили: 1 раз

Сообщение VVVas »

OtherDima писал(а):зачем оно?
Что бы счетчик у пользователя показывал реальное количество постов. Запускать изредка как профилактика. Хотя я поставил себе отдельный мод чтобы из одного раздела посты не прибавлялись при пересчете.
я люблю daft punk | новый sugoi.ru
Аватара пользователя
OtherDima
phpBB 2.0.1
Сообщения: 294
Зарегистрирован: 19 лет 9 месяцев
Откуда: Санкт-Петербург
Благодарил (а): 1 раз

Сообщение OtherDima »

VVVas писал(а):Что бы счетчик у пользователя показывал реальное количество постов. Запускать изредка как профилактика. Хотя я поставил себе отдельный мод чтобы из одного раздела посты не прибавлялись при пересчете.
понял
вопросов нет
все фунциклирует как часы...
всем спасибо

Вернуться в «Поддержка модов для phpBB 2.0.x»