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

Smart Date Select MOD

Форум для авторов модов для phpBB 2.0.x.
quazi
phpBB 2.0.2
Сообщения: 306
Стаж: 19 лет 3 месяца

Smart Date Select MOD

Сообщение quazi »

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

##############################################################
## MOD Title: Smart date select
## MOD Author: quazi < nomail@nospam.com > ( I am ) http://some.where.there
## MOD Description: This modification is smart date select at phpBB forums and replaces not human friendly standard textbox for date format
## MOD Version: 1.0.0
##
## Installation Level: Easy
## Installation Time: 5 Minutes
## Files To Edit: (7) includes/functions_selects.php, includes/usercp_register.php, admin/admin_board.php, admin/admin_users.php, templates/subSilver/admin/board_config_body.tpl, templates/subSilver/admin/user_edit_body.tpl, templates/subSilver/profile_add_body.tpl
## Included Files: n/a
##############################################################
## For Security Purposes, Please Check: http://www.phpbb.com/mods/ for the
## latest version of this MOD. Downloading this MOD from other sites could cause malicious code
## to enter into your phpBB Forum.
##############################################################
## Author Notes:
##
##############################################################
## MOD History:
##
##   2005-07-06 - Version 1.0.1
##      - This release contains modifications of two new files in the admin directory and one common included file
##   2005-05-13 - Version 1.0.0
##      - Initial Release
##
##############################################################
## Before Adding This MOD To Your Forum, You Should Back Up All Files Related To This MOD
##############################################################

#
#-----[ OPEN ]------------------------------------------------
#
includes/functions_selects.php


#
#-----[ FIND ]------------------------------------------------
#
?>


#
#-----[ BEFORE, ADD ]-----------------------------------------
#
// +Smart Date Select MOD
function select_dateformat($dateformat, $name)
{
	$select_date_format = '<select name="' . $name . '">' . "\n";
	foreach (array("d F Y, H:i", "d F Y", "d M Y, H:i", "d M Y", "l, d F Y, H:i", "l, d F Y", "D, d F Y, H:i", "D, d F Y", "j/m/Y, H:i", "j/m/Y", "j.m.y, H:i", "j.m.y") as $k => $v) {
		$select_date_format .= '<option value="' . $v . '"' . ($v == $dateformat ? 'selected="selected"' : '') . '>';
		$select_date_format .= create_date($v, time(), $board_config['board_timezone'], false) . '</option>' . "\n";
	}
	$select_date_format .= '<select>';
	return $select_date_format;
}
// -Smart Date Select MOD


#
#-----[ OPEN ]-----------------------------------------
#
includes/usercp_register.php


#
#-----[ FIND ]--------------------------------------------
#
		'DATE_FORMAT' => $user_dateformat,


#
#-----[ REPLACE WITH ]-------------------------------------
#
		// +Smart Date Select MOD
		//'DATE_FORMAT' => $user_dateformat,
		'DATE_FORMAT' => select_dateformat($user_dateformat, 'dateformat'),
		// -Smart Date Select MOD


#
#-----[ FIND ]----------------------------------------------
#
		'L_DATE_FORMAT' => $lang['Date_format'],


#
#-----[ REPLACE WITH ]-------------------------------------
#
		// +Smart Date Select MOD
		//'L_DATE_FORMAT' => $lang['Date_format'],
		// -Smart Date Select MOD


#
#-----[ OPEN ]------------------------------------------------
#
admin/admin_board.php


#
#-----[ FIND ]--------------------------------------------
#
	"DEFAULT_DATEFORMAT" => $new['default_dateformat'],


#
#-----[ REPLACE WITH ]-------------------------------------
#
	// +Smart Date Select MOD
	//"DEFAULT_DATEFORMAT" => $new['default_dateformat'],
	"DEFAULT_DATEFORMAT" => select_dateformat($new['default_dateformat'], 'default_dateformat'),
	// -Smart Date Select MOD


#
#-----[ FIND ]-----------------------------------------------
#
	"L_DATE_FORMAT_EXPLAIN" => $lang['Date_format_explain'],


#
#-----[ REPLACE WITH ]-------------------------------------
#
	// +Smart Date Select MOD
	//"L_DATE_FORMAT_EXPLAIN" => $lang['Date_format_explain'],
	// -Smart Date Select MOD


#
#-----[ OPEN ]------------------------------------------------
#
admin/admin_users.php


#
#-----[ FIND ]--------------------------------------------
#
			'DATE_FORMAT' => $user_dateformat,


#
#-----[ REPLACE WITH ]-------------------------------------
#
			// +Smart Date Selectt MOD
			//'DATE_FORMAT' => $user_dateformat,
			'DATE_FORMAT' => select_dateformat($user_dateformat, 'dateformat'),
			// -Smart Date Selectt MOD


#
#-----[ FIND ]-----------------------------------------------
#
			'L_DATE_FORMAT_EXPLAIN' => $lang['Date_format_explain'],


#
#-----[ REPLACE WITH ]-------------------------------------
#
			// +Smart Date Select MOD
			'L_DATE_FORMAT_EXPLAIN' => $lang['Date_format_explain'],
			// -Smart Date Select MOD


#
#-----[ OPEN ]------------------------------------------
#
templates/subSilver/admin/board_config_body.tpl

#
#-----[ FIND ]--------------------------------------------
#
		<input class="post" type="text" name="default_dateformat" value="{DEFAULT_DATEFORMAT}" />


#
#-----[ REPLACE WITH ]-----------------------------------
#
		{DEFAULT_DATEFORMAT}


#-----[ OPEN ]---------------------------------------------
#
templates/subSilver/admin/user_edit_body.tpl

#
#-----[ FIND ]--------------------------------------------
#
		<input class="post" type="text" name="dateformat" value="{DATE_FORMAT}" maxlength="16" />

#
#-----[ REPLACE WITH ]-----------------------------------
#
		{DATE_FORMAT}


#
#-----[ OPEN ]---------------------------------------------
#
templates/subSilver/profile_add_body.tpl

#
#-----[ FIND ]--------------------------------------------
#
		<input type="text" name="dateformat" value="{DATE_FORMAT}" maxlength="14" class="post" />

#
#-----[ REPLACE WITH ]-----------------------------------
#
		{DATE_FORMAT}


#
#
#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------
#
# EoM
Добавлено спустя 6 минут 13 секунд:

мод для более удобного выбора формата времени
считаю, что рядовым пользователям нет необходимости учить синтаксис формата http://php.net/date (странные создатели phpBB форума - то они создают его таким, чтобы его могла установить даже домохозяйка, то вставляют чисто программистские фишки)

админу тоже нет необходимости разбираться в синтакисе формата вывода даты - визуальное представление нагляднее, даже если ты программист и понимаешь этот формат


ВАЖНОЕ ПРЕДУПРЕЖДЕНИЕ
я привел фрагменты из рабочего кода своего форума - прошу тщательно проверять локально перед заливкой на рабочий форум
Последний раз редактировалось quazi 10.08.2005 5:47, всего редактировалось 1 раз.
Xpert
phpBB Guru
phpBB Guru
Сообщения: 5484
Стаж: 20 лет 3 месяца
Поблагодарили: 2 раза

Сообщение Xpert »

А не хотите оформить как мод?
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
quazi
phpBB 2.0.2
Сообщения: 306
Стаж: 19 лет 3 месяца

Сообщение quazi »

с удовольствием :)
я так понимаю, необходимо использовать стандартный шаблон модов

к следующей неделе постараюсь сделать
у меня вопросы: вы тестировали? все работает? ошибок нет?
Аватара пользователя
Поручик
Former team member
Сообщения: 3942
Стаж: 19 лет 1 месяц
Откуда: Оренбург (Южный Урал)
Благодарил (а): 3 раза

Сообщение Поручик »

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

наш форум http://forum.aeroion.ru/cat1.html
Аватара пользователя
[R: R@m$e$ :U]
phpBB Maniac
Сообщения: 1464
Стаж: 19 лет 5 месяцев
Откуда: Novosibirsk,RU

Сообщение [R: R@m$e$ :U] »

Поручик
у многих модов есть аналоги... =) имхо этот лучше нежели те, что я видел до этого =)
Руководство пользователя | FAQ | Правила | Как устанавливать MOD'ы
ВОСПОЛЬЗУЙСЯ ПОИСКОМ, ТАМ ЕСТЬ БОЛЬШИНСТВО ОТВЕТОВ
ЕСЛИ НЕ ПОМОГЛО, ИСПОЛЬЗУЙ ШАБЛОН ЗАПРОСА, ПОМОГИ В РЕШЕНИИ ЗАДАЧИ
БЕСПЛАТНО ПОМОГУ ТОЛЬКО НА ФОРУМЕ!!! (ЛС НЕ В СЧЕТ)

Оставь благодарность, подтверди работоспособность совета.

ВСЕ ПРАВА НА МОДЫ ОТДАНЫ m157y
quazi
phpBB 2.0.2
Сообщения: 306
Стаж: 19 лет 3 месяца

Сообщение quazi »

[R: R@m$e$ :U], я так понимаю, что вы уже опробовали и косяков не обнаружили?

тогда постараюсь в течение недели оформить
Аватара пользователя
[R: R@m$e$ :U]
phpBB Maniac
Сообщения: 1464
Стаж: 19 лет 5 месяцев
Откуда: Novosibirsk,RU

Сообщение [R: R@m$e$ :U] »

quazi
да =) пока ни каких проблем =) хотя я не сильно тестил +)) на днях надеюсь более плотно его помучать =)
Руководство пользователя | FAQ | Правила | Как устанавливать MOD'ы
ВОСПОЛЬЗУЙСЯ ПОИСКОМ, ТАМ ЕСТЬ БОЛЬШИНСТВО ОТВЕТОВ
ЕСЛИ НЕ ПОМОГЛО, ИСПОЛЬЗУЙ ШАБЛОН ЗАПРОСА, ПОМОГИ В РЕШЕНИИ ЗАДАЧИ
БЕСПЛАТНО ПОМОГУ ТОЛЬКО НА ФОРУМЕ!!! (ЛС НЕ В СЧЕТ)

Оставь благодарность, подтверди работоспособность совета.

ВСЕ ПРАВА НА МОДЫ ОТДАНЫ m157y
quazi
phpBB 2.0.2
Сообщения: 306
Стаж: 19 лет 3 месяца

Сообщение quazi »

на офф.сайте видел ну оччень похожий мод.
но что радует, так только то, что моя реализация чуть-чуть попроще.
первый пост поравлен.
ранее не учитывалась админская часть, в которой тоже присутствует модификация профиля пользователя, но уже админом

сравнивайте - с первой реализацией http://www.phpbb.com/phpBB/catdb.php?mo ... id=1255784
Аватара пользователя
[R: R@m$e$ :U]
phpBB Maniac
Сообщения: 1464
Стаж: 19 лет 5 месяцев
Откуда: Novosibirsk,RU

Сообщение [R: R@m$e$ :U] »

все замечательно... да вот только в инструкции небольшая ошибочка... =)

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

# 
#-----[ OPEN ]----------------------------------------- 
# 
includes/usercp_register.php 


# 
#-----[ FIND ]-------------------------------------------- 
# 
      'DATE_FORMAT' => $user_dateformat, 


# 
#-----[ REPLACE WITH ]------------------------------------- 
# 
      // +Smart Date Select MOD 
      //'DATE_FORMAT' => $user_dateformat, 
      'DATE_FORMAT' => select_dateformat($user_dateformat, 'dateformat'), 
      // -Smart Date Select MOD 


# 
#-----[ FIND ]---------------------------------------------- 
# 
      'L_DATE_FORMAT' => $lang['Date_format'], 


# 
#-----[ REPLACE WITH ]------------------------------------- 
# 
      // +Smart Date Select MOD 
      //'L_DATE_FORMAT' => $lang['Date_format'], 
      // -Smart Date Select MOD
нас интересует последняя(вторая) процедура замены... надо не 'L_DATE_FORMATE', а 'L_DATE_FORMATE_EXPLAIN'
=) щас ставил и заметил такое =)

Добавлено спустя 5 минут:

епс... еще одна...

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

// +Smart Date Select MOD 
function select_dateformat($dateformat, $name) 
{ 
   $select_date_format = '<select name="' . $name . '">' . "\n"; 
   foreach (array("d F Y, H:i", "d F Y", "d M Y, H:i", "d M Y", "l, d F Y, H:i", "l, d F Y", "D, d F Y, H:i", "D, d F Y", "j/m/Y, H:i", "j/m/Y", "j.m.y, H:i", "j.m.y") as $k => $v) { 
      $select_date_format .= '<option value="' . $v . '"' . ($v == $dateformat ? 'selected="selected"' : '') . '>'; 
      $select_date_format .= create_date($v, time(), $board_config['board_timezone'], false) . '</option>' . "\n"; 
   } 
   $select_date_format .= '<select>'; 
   return $select_date_format; 
} 
// -Smart Date Select MOD
третья с конца строка...

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

   $select_date_format .= '<select>'; 
надо не <select>, а </select>...
Руководство пользователя | FAQ | Правила | Как устанавливать MOD'ы
ВОСПОЛЬЗУЙСЯ ПОИСКОМ, ТАМ ЕСТЬ БОЛЬШИНСТВО ОТВЕТОВ
ЕСЛИ НЕ ПОМОГЛО, ИСПОЛЬЗУЙ ШАБЛОН ЗАПРОСА, ПОМОГИ В РЕШЕНИИ ЗАДАЧИ
БЕСПЛАТНО ПОМОГУ ТОЛЬКО НА ФОРУМЕ!!! (ЛС НЕ В СЧЕТ)

Оставь благодарность, подтверди работоспособность совета.

ВСЕ ПРАВА НА МОДЫ ОТДАНЫ m157y
Аватара пользователя
KE$T
phpBB 1.0.0
Сообщения: 6
Стаж: 18 лет 4 месяца

Сообщение KE$T »

Оооо... отличный мод =) Спасибо ))

Вернуться в «Для авторов (phpBB 2.0.x)»