Forum. MyNuke.ru

Forum. MyNuke.ru (http://forum.mynuke.ru/index.php)
-   Настройка и Изменение (http://forum.mynuke.ru/forumdisplay.php?f=11)
-   -   Правим BBtoNuke (http://forum.mynuke.ru/showthread.php?t=602)

Soniks 23.09.2005 04:42

Правим BBtoNuke
 
При детальном рассмотрении BBtoNuke видно, что часть функций не работают или же работают, но не правильно, в отличие от phpbb. Поэтому, здесь (по мере нахождения) буду выкладывать фиксы для полнофункциональной работы форума.

Все кто заметил не рабочую функцию форума - постим здесь! Информируйте чётка: что, когда и при каких условиях!

Начну с административной панели:

1. На главной странице админки форума, в "Статистике Форума" неотображается размер директории с аваторами, устраним и доработаем :smile: .

Открываем modules/Forums/admin/index.php
Находим:
PHP код:
 if ($avatar_dir = @opendir($phpbb_root_path $board_config['avatar_path']))
        {
                while( 
$file = @readdir($avatar_dir) )
                {
                        if( 
$file != "." && $file != ".." )
                        {
                                
$avatar_dir_size += @filesize($phpbb_root_path $board_config['avatar_path'] . "/" $file);
                        }
                }
                @
closedir($avatar_dir); 

Заменяем на:
PHP код:
 if (is_dir("../../../".$board_config['avatar_path']))
        {
 
function 
avatar_size($avatar_dir){
$dir = @opendir($avatar_dir);
                while(
$file = @readdir($dir))
                {
                        if( 
$file != "." && $file != ".." )
                        {
                         if(
is_dir($avatar_dir ."/"$file)){
                                
$avatar_dir_size += avatar_size($avatar_dir ."/"$file);
                         }
                            
$avatar_dir_size += @filesize($avatar_dir ."/"$file);
                        }
                }
    @
closedir($dir);
    return 
$avatar_dir_size;
}
$avatar_dir_size=avatar_size("../../../".$board_config['avatar_path']); 

BriaN 23.09.2005 11:27

я уже тебе один раз говорил, но запостю и здесь. В настройках форума есть два поля "формат даты"
и "часовой пояс", в этих полях должно ставится стандартное время всем зарегистрировавшимся на форуме, но данную функцию не выполняет (было бы не плохо ещё написать Sql запрос, что бы изменить уже у всех зарегистрированных, до исправления, если оно будет).
вторая недоработка, что у тех, кто обновляет не руками, а заменами файлов, есть в конфигурации невидимое поле, там по идее должно выставляется показывать код при регистрации или нет, но так как регистрация проходит через сайт, там это меню просто болтается как выключатель :).

BriaN 25.09.2005 00:36

Нашел ещё ну не совсем глюк, скорее недоработку, в админке форума есть "Кто сейчас на форуме" ну там ник, когда пришел и т.п. и есть его IP. Нажимая на IP перекидает на http://www.geektools.com/cgi-bin/proxy.cgi?query=$reg_ip&targetnic=auto ($reg_ip - IP юзверя) но там уже немного изменился способ проверки. В общем:

Откройте modules/Forums/admin/index.php

Найдите:
PHP код:
 http://www.geektools.com/cgi-bin/proxy.cgi?query=$reg_ip&targetnic=auto 


Замените на:
PHP код:
 http://www.nwtools.com/default.asp?prog=xwhois&host=$reg_ip 


Найдите:
PHP код:
 http://www.geektools.com/cgi-bin/proxy.cgi?query=$guest_ip&targetnic=auto 


Замените на:
PHP код:
 http://www.nwtools.com/default.asp?prog=xwhois&host=$guest_ip 


В общем, то это не такое уж большое исправление, но если кого-то задалбливает данная неудобность, то обязательно к исправлению.

Soniks 26.10.2005 03:22

Цитата: Сообщение от BriaN
я уже тебе один раз говорил, но запостю и здесь. В настройках форума есть два поля "формат даты"
и "часовой пояс", в этих полях должно ставится стандартное время всем зарегистрировавшимся на форуме, но данную функцию не выполняет (было бы не плохо ещё написать Sql запрос, что бы изменить уже у всех зарегистрированных, до исправления, если оно будет).

Правим:
открываем modules/Forums/admin/admin_board.php
Находим:
PHP код:
 if( isset($HTTP_POST_VARS['submit']) )
  {
   
$sql "UPDATE " CONFIG_TABLE " SET
    config_value = '" 
str_replace("\'""''"$new[$config_name]) . "'
    WHERE config_name = '
$config_name'";
   if( !
$db->sql_query($sql) )
   {
    
message_die(GENERAL_ERROR"Failed to update general configuration for $config_name"""__LINE____FILE__$sql);
   }
  }
 } 

Ниже добавляем:
PHP код:
 if(isset($HTTP_POST_VARS['board_timezone']) and isset($HTTP_POST_VARS['submit'])){
  
$sql "ALTER TABLE " USERS_TABLE " CHANGE user_timezone user_timezone DECIMAL( 5, 2 ) DEFAULT '"$HTTP_POST_VARS['board_timezone'] . "' NOT NULL ";
  if( !
$db->sql_query($sql) )
  {
   
message_die(GENERAL_ERROR"Failed to update TimeZone"""__LINE____FILE__$sql);
  }
 } 

Сохраняем!
Выполняем следующий sql-запрос:
Код:
ALTER TABLE `nuke_users` CHANGE `user_timezone` `user_timezone` DECIMAL( 5, 2 ) NOT NULL

не забываем поменять префикс на свой
В конфиге форума выставляем нужную Временную зону, сохраняем настройки.

Что бы изменить уже у зарегистрированных пользователей временную зону выполняем следующий sql-запрос:
Код:
UPDATE nuke_users SET user_timezone = '4' WHERE user_timezone='10'

замените 4 - на нужную вам зону, возможен разделитель, т.е. 4.30
не забываем поменять префикс.


Часовой пояс GMT +4, время: 01:52.

Copyright © 2005 by Soniks