Пропустить

[alpha] AutoBirthdays(AutoTopic) addon

Здесь авторы постили бета-версии своих модификаций для phpBB 2.0.x. Внимание! Не устанавливайте бета-версии модов на работающие форумы!

Сообщение rxu » 08.03.2007 5:28

severnet
А на английском какая картина?

Добавлено спустя 2 минуты 9 секунд:

А Вы удалили блоки кода в соответствии с инструкцией к моду в board_config_body.tpl? ;)
Изображение
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
 
Сообщения: 7366
Зарегистрирован: 12.05.2006 18:16
Откуда: Красноярск
Благодарил (а): 2 раз.
Поблагодарили: 270 раз.

Сообщение severnet » 08.03.2007 15:12

rxu писал(а):Вы удалили блоки кода в соответствии с инструкцией к моду в board_config_body.tpl

Конечно удалил! :D

Добавлено спустя 1 час 57 минут 28 секунд:

Отстой, аддон не оптимизирован для Birthday Mod by Niels. :?
VVVas писал(а):Romy писал(а):
у меня Birthday от Niels. А Birthdays Mod by TerraFrost немогу найти
Вообще то "или" и


Добавлено спустя 1 минуту 40 секунд:

rxu писал(а):А на английском какая картина?

Тоже самое.
Аватара пользователя
severnet
phpBB 2.0.15
 
Сообщения: 495
Зарегистрирован: 23.11.2004 18:00
Откуда: Санкт-Петербург
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение rxu » 08.03.2007 18:56

Попробую посмотреть, что можно сделать для мода от Niels, но позже.
Изображение
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
 
Сообщения: 7366
Зарегистрирован: 12.05.2006 18:16
Откуда: Красноярск
Благодарил (а): 2 раз.
Поблагодарили: 270 раз.

Сообщение severnet » 08.03.2007 21:17

rxu писал(а):Попробую посмотреть

Ок, бум ждать.

VVVas, "или" говорите...? :lol:
Аватара пользователя
severnet
phpBB 2.0.15
 
Сообщения: 495
Зарегистрирован: 23.11.2004 18:00
Откуда: Санкт-Петербург
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение severnet » 11.03.2007 2:16

Кроме того, мод вообще не работает. Сёня у одной девочки день варенья и авто-поздравлялки в итоге не получилось.
Аватара пользователя
severnet
phpBB 2.0.15
 
Сообщения: 495
Зарегистрирован: 23.11.2004 18:00
Откуда: Санкт-Петербург
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение rxu » 11.03.2007 10:18

severnet писал(а):Кроме того, мод вообще не работает.

Тут надо добавлять нечто вроде "у меня не работает", т.к. у меня, например, работает :D

Добавлено спустя 3 часа 32 минуты 50 секунд:

Не работает у Вас потому, что формат хранения дней рождений в модах от TerraFrost и от Niels отличаются. Подождите решения ещё некоторое время.

Добавлено спустя 1 час 39 минут 49 секунд:

Сам не имею возможности протестировать, поэтому придётся вам. Вложения пока не цепляются при склейке, поэтому выкладываю так.
#
#-----[ OPEN ]------------------------------------------
#
index.php
#
#-----[ FIND ]------------------------------------------
#
// [+] AutoBirthdays  
  if ( $board_config['bday_autobirthday'] )
  {
        // Хехе. Финт ушами: выбираем всех юзеров во всех часовых поясах, чтобы
        // точно поздравить тогда, когда у того чела наступит этот день. (-12/+13 Hours)
	$sql = "SELECT user_id, username, user_birthday, user_timezone, user_gender
			FROM " . USERS_TABLE . "
			WHERE user_birthday >= " . gmdate('md0000',time() - 43200) . "
			AND user_birthday <= " . gmdate('md9999',time() + 46800);

	if ( !($result = $db->sql_query($sql)) )
	{
		message_die(GENERAL_ERROR, 'Could not query members birthday information', '', __LINE__, __FILE__, $sql);
	}
	while ( $row = $db->sql_fetchrow($result) )
	{
              // Проверяем - наступило ли уже у того чела ДР. или нет.
              // Если в его часовом поясе оно еще не наступило, то зачем поздравлять? :)
              if ( $row['user_birthday'] >= gmdate('md0000',time() + (3600 * $row['user_timezone'])) &&
                   $row['user_birthday'] <= gmdate('md9999',time() + (3600 * $row['user_timezone'])) )
              {
                   include($phpbb_root_path . 'includes/functions_autobirthday.php');
                   if ( !is_congratulated($row['user_id']) )
                   {
                      // Сначала помечаем юзера как поздравленного чтобы случайно
                      // не поздравили дважды, если несколько юзеров на index'e.
                      // Надеюсь, успею :)
                      make_congratulated($row['user_id']);
                      
                      // А вот теперь подготавливаем и постим поздравление
                      create_grats_topic($row);
                   }
              }
	}

	$db->sql_freeresult($result);
 }
// [-] AutoBirthdays
#
#-----[ REPLACE WITH ]------------------------------------------
#
// [+] AutoBirthdays  
  if ( $board_config['bday_autobirthday'] )
  {
	if( isset($board_config['birthday_required']) )
	{
		$sql_where = ' (user_birthday * 86400 + 1) >= ' . (time() - 43200) . ' AND (user_birthday * 86400 + 1) <= ' . (time() + 46800);
	}
	else
	{
		$sql_where = ' user_birthday >= ' . gmdate('md0000',time() - 43200) . '
				AND user_birthday <= ' . gmdate('md9999',time() + 46800);
	}
	
        // Хехе. Финт ушами: выбираем всех юзеров во всех часовых поясах, чтобы
        // точно поздравить тогда, когда у того чела наступит этот день. (-12/+13 Hours)
	$sql = "SELECT user_id, username, user_birthday, user_timezone, user_gender
			FROM " . USERS_TABLE . " WHERE " . $sql_where;

	if ( !($result = $db->sql_query($sql)) )
	{
		message_die(GENERAL_ERROR, 'Could not query members birthday information', '', __LINE__, __FILE__, $sql);
	}
	while ( $row = $db->sql_fetchrow($result) )
	{
		if(isset($board_config['birthday_required']))
		{
			$row['user_birthday'] = gmdate('mdY', $row['user_birthday'] * 86400 + 1);
		}
              // Проверяем - наступило ли уже у того чела ДР. или нет.
              // Если в его часовом поясе оно еще не наступило, то зачем поздравлять? :)
              if ( $row['user_birthday'] >= gmdate('md0000',time() + (3600 * $row['user_timezone'])) &&
                   $row['user_birthday'] <= gmdate('md9999',time() + (3600 * $row['user_timezone'])) )
              {
                   include($phpbb_root_path . 'includes/functions_autobirthday.php');
                   if ( !is_congratulated($row['user_id']) )
                   {
                      // Сначала помечаем юзера как поздравленного чтобы случайно
                      // не поздравили дважды, если несколько юзеров на index'e.
                      // Надеюсь, успею :)
                      make_congratulated($row['user_id']);
                      
                      // А вот теперь подготавливаем и постим поздравление
                      create_grats_topic($row);
                   }
              }
	}

	$db->sql_freeresult($result);
 }
// [-] AutoBirthdays
Изображение
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
 
Сообщения: 7366
Зарегистрирован: 12.05.2006 18:16
Откуда: Красноярск
Благодарил (а): 2 раз.
Поблагодарили: 270 раз.

Сообщение severnet » 12.03.2007 22:22

rxu, ничё не происходит. :D
Аватара пользователя
severnet
phpBB 2.0.15
 
Сообщения: 495
Зарегистрирован: 23.11.2004 18:00
Откуда: Санкт-Петербург
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение severnet » 13.03.2007 15:03

Пока лучше снесу мод, но идея автопоздравлялки интересная. :wink:
Аватара пользователя
severnet
phpBB 2.0.15
 
Сообщения: 495
Зарегистрирован: 23.11.2004 18:00
Откуда: Санкт-Петербург
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение DK7 » 16.10.2007 12:29

такой вопрос.
установил но проскакивает ошибка
Fatal error: Cannot redeclare is_congratulated() (previously declared in E:\hshome\alexey\fintov.net\forum\includes\functions_autobirthday.php:23) in E:\hshome\alexey\fintov.net\forum\includes\functions_autobirthday.php on line 23


соответсвенно вот нужный кусок functions_autobirthday.php
function is_congratulated ($user_id)   < ---- это как раз и есть 23 строка
{
         global $db;

         $sql = "SELECT grats_time
                     FROM " . AUTOBIRTHDAY_GRATS_TABLE . "
                   WHERE user_id = $user_id";

         if(!$result = $db->sql_query($sql))

что можете посоветовать?
Аватара пользователя
DK7
Модератор
Модератор
 
Сообщения: 939
Зарегистрирован: 17.07.2006 15:52
Откуда: Кишинёв
Благодарил (а): 6 раз.
Поблагодарили: 11 раз.

Сообщение Поручик » 16.10.2007 14:05

Где-то присутствует лишний вызов includes\functions_autobirthday.php
Профессионал - тот же дилетант, только знающий, где ошибётся.
Генератор db_update.php для phpBB2 с некоторыми удобствами. Многие моды я беру или ищу здесь, здесь, тут
Все консультации только на форуме, приваты и стук в аську по таким вопросам игнорируются!
FAQ-phpBB3 | Ошибки новичков, или как не поссориться с модератором | Правила конференции

наш форум http://forum.aeroion.ru/cat1.html
Аватара пользователя
Поручик
Former team member
 
Сообщения: 3988
Зарегистрирован: 12.05.2005 17:25
Откуда: Оренбург (Южный Урал)
Благодарил (а): 26 раз.
Поблагодарили: 50 раз.

Сообщение DK7 » 16.10.2007 14:28

Поручик
установку перепроверил- все нормально. она там такая простая что в ней и ошибится сложно. Где же копать?
Аватара пользователя
DK7
Модератор
Модератор
 
Сообщения: 939
Зарегистрирован: 17.07.2006 15:52
Откуда: Кишинёв
Благодарил (а): 6 раз.
Поблагодарили: 11 раз.

Сообщение Поручик » 16.10.2007 15:00

Значит, где-то еще есть функция is_congratulated.
Юзайте поиск по файлам.

Добавлено спустя 2 минуты 2 секунды:

Стоп. Вот ошибка. Файл вызывается в цикле.
Значит заменяем в index.php

                   include($phpbb_root_path . 'includes/functions_autobirthday.php');

на
                   include_once($phpbb_root_path . 'includes/functions_autobirthday.php');


Добавлено спустя 4 минуты 16 секунд:

Это говорит о том, что в данный день несколько именников.
Да, и еще рекомендую в файле includes\functions_autobirthday.php заменить

include('functions_post.php');

на
include_once('functions_post.php');
Профессионал - тот же дилетант, только знающий, где ошибётся.
Генератор db_update.php для phpBB2 с некоторыми удобствами. Многие моды я беру или ищу здесь, здесь, тут
Все консультации только на форуме, приваты и стук в аську по таким вопросам игнорируются!
FAQ-phpBB3 | Ошибки новичков, или как не поссориться с модератором | Правила конференции

наш форум http://forum.aeroion.ru/cat1.html
Аватара пользователя
Поручик
Former team member
 
Сообщения: 3988
Зарегистрирован: 12.05.2005 17:25
Откуда: Оренбург (Южный Урал)
Благодарил (а): 26 раз.
Поблагодарили: 50 раз.

Сообщение DK7 » 16.10.2007 16:06

огромное спасибо. работает как часы.
Аватара пользователя
DK7
Модератор
Модератор
 
Сообщения: 939
Зарегистрирован: 17.07.2006 15:52
Откуда: Кишинёв
Благодарил (а): 6 раз.
Поблагодарили: 11 раз.

Пред.

Вернуться в Бета-версии модов для phpBB 2.0.x

 

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0

Бессрочный конкурс phpBB-ориентированных материалов
FastVPS — надёжный и доступный хостинг для phpBB
Место для вашей рекламы