Магазин
Правила Ответы на вопросы Конфиденциальность
Магазин
Правила Ответы на вопросы Конфиденциальность
  • Быстрые действия Ярлыки
    Общие действия
    Связаться с администрацией
    • Бот

       

Минимоды и хаки для phpBB3

  • Список форумов
  • Форумы по phpBB 3.0
  • Другие моды для phpBB 3.0
  • Минимоды и хаки для phpBB3

BB3AddFields - мод шаблонов дополнительных полей для форума phpBB3

Небольшие моды и хаки для форума phpBB3
Правила форума
При размещении мода/статьи взятой с другого форума/сайта обязательно необходимо указывать первоисточник сообщения.

63 сообщения
  • 1
  • 2
  • 3
  • 4
  • 5
  • Перейти на страницу:
  • 7
  • След.
Просмотры: 11283 • 
  • Аватара пользователя
    PPK Сообщение 13.09.2011
    Мод позволяет произвольно создавать дополнительные поля которые будут отображаться при создании новой темы на форуме (либо при редактировании старой), дополнительные поля определяются в одном из языковых файлов, назначать дополнительные поля на форум можно через адм. раздел, так-же можно копировать поля с форума на форум, имеется возможность создавать заголовок темы из значений дополнительных полей.

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

    Подробное описание и примеры: viewtopic.php?f=26&t=1083, Re: Вывод дополнительных полей в названии торрента. (Post by PPK #2186)
    BB3AddFields.zip
    Скачать архив, распаковать, заменить файлы форума файлами из директории /root/

    В phpmyadmin выполнить:

    если mysql версии 4.1.3 или выше

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

    ALTER TABLE `phpbb_forums` ADD `forum_addfields` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '';
    иначе

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

    ALTER TABLE `phpbb_forums` ADD `forum_addfields` varchar(255) binary NOT NULL DEFAULT '';
    /posting.php перед

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

    if (!$post_data)
    {
    	if (!($mode == 'post' || $mode == 'bump' || $mode == 'reply'))
    	{
    добавить

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

    $user->add_lang('mods/ppkbb3cker_addfields');
    $array_addfields=get_forum_addfields(@$post_data['forum_addfields']);
    после

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

    if ($submit || $preview || $refresh)
    {
    добавить

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

    	if($array_addfields && ($mode == 'post' || ($mode == 'edit' && $post_id == $post_data['topic_first_post_id'])))
    	{
    		include_once($phpbb_root_path.'tracker/include/posting_addfields_add1.'.$phpEx);
    		include_once($phpbb_root_path.'tracker/include/posting_addfields_add2.'.$phpEx);
    	}
    перед

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

    // Build custom bbcodes array
    display_custom_bbcodes();
    добавить

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

    if($array_addfields && ($mode == 'post' || ($mode == 'edit' && $post_id == $post_data['topic_first_post_id'])))
    {
    	include_once($phpbb_root_path.'tracker/include/posting_addfields_add2.'.$phpEx);
    }
    /includes/functions.php после

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

    // Common global functions
    добавить

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

    function get_forum_addfields($line)
    {
    	$lines=array();
    
    	if($line)
    	{
    		$lines=explode(' ', $line);
    		$lines=array_map('trim', $lines);
    	}
    
    	return $lines;
    }
    /includes/acp/acp_forums.php после

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

    						'forum_password_confirm'=> request_var('forum_password_confirm', '', true),
    						'forum_password_unset'	=> request_var('forum_password_unset', false),
    добавить

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

    						'forum_addfields'	=> request_var('forum_addfields', ''),
    перед

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

    						$forum_perm_from = request_var('forum_perm_from', 0);
    						$cache->destroy('sql', FORUMS_TABLE);
    добавить

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

    						$forum_addfields_from = request_var('forum_addfields_from', 0);
    
    						// Copy addfields?
    						if ($forum_addfields_from && !empty($forum_addfields_from) && $forum_addfields_from != $forum_data['forum_id'])
    						{
    
    							$sql = 'SELECT forum_addfields
    								FROM ' . FORUMS_TABLE . '
    								WHERE forum_id = ' . $forum_addfields_from;
    							$result = $db->sql_query($sql);
    
    							$cp_addfields=$db->sql_fetchrow($result);
    							$db->sql_freeresult($result);
    
    							$sql = 'UPDATE ' . FORUMS_TABLE . "
    								SET forum_addfields='{$cp_addfields['forum_addfields']}'
    								WHERE forum_id = " . $forum_data['forum_id'];
    							$result = $db->sql_query($sql);
    						}
    после

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

    							'forum_password'		=> '',
    							'forum_password_confirm'=> '',
    добавить

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

    							'forum_addfields' => '',
    перед

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

    				$template->assign_vars(array(
    					'S_EDIT_FORUM'		=> true,
    					'S_ERROR'			=> (sizeof($errors)) ? true : false,
    добавить

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

    				$user->add_lang('mods/ppkbb3cker_addfields');
    				$forum_addfields_help='';
    				foreach($user->lang['TRACKER_FORUM_ADDFIELDS'] as $k=>$v)
    				{
    					$forum_addfields_help.="<b>$v</b> - $k ";
    				}
    после

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

    					'S_ENABLE_QUICK_REPLY'		=> ($forum_data['forum_flags'] & FORUM_FLAG_QUICK_REPLY) ? true : false,
    					'S_CAN_COPY_PERMISSIONS'	=> ($action != 'edit' || empty($forum_id) || ($auth->acl_get('a_fauth') && $auth->acl_get('a_authusers') && $auth->acl_get('a_authgroups') && $auth->acl_get('a_mauth'))) ? true : false,
    добавить

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

    					'FORUM_ADDFIELDS_HELP'=>$forum_addfields_help,
    					'FORUM_ADDFIELDS_PLAIN'=> $forum_data['forum_addfields'],
    /language/ru/posting.php перед

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

    ));
    
    ?>
    добавить

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

    	'TRACKER_ADDFIELDS'	=> 'Дополнительные поля',
    	'TRACKER_ADDFIELDS_EXAMPLE'	=> 'Пример',
    /language/ru/acp/forums.php перед

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

    ));
    
    ?>
    добавить

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

    	'FORUM_ADDFIELDS'						=> 'Дополнительные поля для форума',
    	'FORUM_ADDFIELDS_EXPLAIN'						=> 'Отображаются при добавлении нового торрента, указываются через пробел, допустимые поля:',
    	'COPY_ADDFIELDS'=> 'Копировать дополнительные поля форума из',
    	'COPY_ADDFIELDS_EXPLAIN'=> 'Если вы выбрали копирование дополнительных полей, форуму будут присвоены те же дополнительные поля, что и выбранному здесь. Все ранее установленные дополнительные поля к этому форуму будут при этом заменены. Если форум не выбран, будут сохранены текущие дополнительные поля.',
    	'NO_ADDFIELDS'=> 'Не копировать дополнительные поля',
    /adm/styles/acp_forums.html перед

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

    	<!-- IF S_CAN_COPY_PERMISSIONS -->
    		<dl>
    добавить

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

    	<dl>
    		<dt><label for="forum_addfields">{L_FORUM_ADDFIELDS}:</label><br /><span>{L_FORUM_ADDFIELDS_EXPLAIN}<br />{FORUM_ADDFIELDS_HELP}</span></dt>
    		<dd><textarea id="forum_addfields" name="forum_addfields" rows="4" cols="30">{FORUM_ADDFIELDS_PLAIN}</textarea></dd>
    	</dl>
    	<dl>
    		<dt><label for="forum_addfields_from">{L_COPY_ADDFIELDS}:</label><br /><span>{L_COPY_ADDFIELDS_EXPLAIN}</span></dt>
    		<dd><select id="forum_addfields_from" name="forum_addfields_from"><option value="0">{L_NO_ADDFIELDS}</option>{S_FORUM_OPTIONS}</select></dd>
    	</dl>
    /styles/prosilver/template/posting_editor.html после

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

    				<!-- IF S_SHOW_POLL_BOX || S_POLL_DELETE --><li id="poll-panel-tab"><a href="#tabs" onclick="subPanels('poll-panel'); return false;"><span>{L_ADD_POLL}</span></a></li><!-- ENDIF -->
    добавить

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

    				<!-- IF FORUM_ADDFIELDS --><li id="addfields-panel-tab"><a href="#tabs" onclick="subPanels('addfields-panel'); return false;"><span>{L_TRACKER_ADDFIELDS}</span></a></li><!-- ENDIF -->
    /styles/prosilver/template/posting_buttons.html после

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

    var panels = new Array('options-panel', 'attach-panel', 'poll-panel'
    добавить

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

    <!-- IF FORUM_ADDFIELDS -->, 'addfields-panel'<!-- ENDIF -->
    /styles/prosilver/template/posting_layout.html перед

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

    <!-- IF S_SHOW_ATTACH_BOX --><!-- INCLUDE posting_attach_body.html --><!-- ENDIF -->
    добавить

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

    <!-- IF FORUM_ADDFIELDS -->
    <div class="panel bg3" id="addfields-panel">
    	<div class="inner"><span class="corners-top"><span></span></span>
    
    	<fieldset class="fields2">
    	<dl style="clear: left;">
    		<dt><b>{L_TRACKER_ADDFIELDS}</b>:</dt>
    		<dd>&nbsp;</dd>
    	</dl>
    		<!-- BEGIN addfields_option -->
    			<dl>
    				<dt><b>{addfields_option.ADDFIELDS_NAME}</b>:</dt>
    				<dd>{addfields_option.ADDFIELDS_VALUE}</dd>
    			</dl>
    		<!-- END addfields_option -->
    	</fieldset>
    
    	<span class="corners-bottom"><span></span></span></div>
    </div>
    <!-- ENDIF -->
    /styles/subsilver2/template/posting_body.html перед

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

    <tr>
    	<td class="cat" colspan="2" align="center">{S_HIDDEN_FIELDS}
    добавить

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

    <!-- IF FORUM_ADDFIELDS -->
    <tr>
    	<th colspan="2" class="row1"><span>{L_TRACKER_ADDFIELDS}</span></th>
    </tr>
    
    <tr>
    	<td class="row1"><b>{L_TRACKER_ADDFIELDS}</b>:</td>
    	<td class="row2">&nbsp;</td>
    </tr>
    <!-- BEGIN addfields_option -->
    	<tr>
    		<td class="row1"><b>{addfields_option.ADDFIELDS_NAME}</b>:</td>
    		<td class="row2">{addfields_option.ADDFIELDS_VALUE}</td>
    	</tr>
    <!-- END addfields_option -->
    <!-- ENDIF -->
    Результат, скриншоты, адм. раздел:


    создание новой темы


    предпросмотр сообщения:


    отображение сообщения:


    редактирование темы:


    --
    Для пользователей ppkBB3cker - НЕ нужно устанавливать данный мод в трекер, он уже там установлен.
    У вас нет необходимых прав для просмотра вложений в этом сообщении. Попробуйте зарегистрироваться или войти на форум.
PPK
  • ozim Сообщение 10.11.2011
    все сделал - полей нету..

    Добавлено спустя 57 минут 55 секунд:
    или этот мод только для трекера?... на обычном форуме не выходит.
ozim
  • Аватара пользователя
    zzipper Сообщение 10.11.2011
    ozim, а вы их создали?
zzipper
  • Аватара пользователя
    PPK Сообщение 10.11.2011
    ozim писал(а):или этот мод только для трекера?... на обычном форуме не выходит.
    нет, это мод для форума, неважно есть там трекер или нет.
PPK
  • ozim Сообщение 10.11.2011
    Создал поля в форуме, почистил кэш - нет полей..

    Добавлено спустя 13 минут 32 секунды:
    в третий раз переустановил мод - бесполезно..

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

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

    <div id="addfields-panel" class="panel bg3" [b]style="display: none;[/b]">
    с чего это оно?

    Добавлено спустя 6 минут 46 секунд:
    это в фаербаге такой вывод.
ozim
  • Аватара пользователя
    PPK Сообщение 10.11.2011
    переделанные файлы форума сюда или в ЛС.
PPK
  • ozim Сообщение 10.11.2011
    Я сделал финт ушами - перенес поля в другое место, в принципе мне там и удобнее - сразу после название темы. Файлы таки дать?

    Добавлено спустя 1 час 56 минут 16 секунд:
    А как можно сделать, чтобы после создания темы, ее название формировалось из названия + данные одного из полей? в мое случае, в одном поле пишется имя автора книги, хочется чтобы название было что то вроде : книга / автор
    Заранее спасибо!
ozim
  • Аватара пользователя
    zzipper Сообщение 11.11.2011
    ozim писал(а):название формировалось из названия
    вотафак? о_О
zzipper
  • Аватара пользователя
    PPK Сообщение 11.11.2011
    ozim писал(а):А как можно сделать, чтобы после создания темы, ее название формировалось из названия + данные одного из полей? в мое случае, в одном поле пишется имя автора книги, хочется чтобы название было что то вроде : книга / автор
    Заранее спасибо!
    пример тут Re: Вывод дополнительных полей в названии торрента. (Post by PPK #2186)
PPK
  • demon201984 Сообщение 28.12.2011
    А можно ли настроить поиск по дополнительным полям в режиме расширенного поиска? а также возможность поиска по дополнительным полям (возможность их использования как метки темы), т.е. перед заголовком темы вставляем дополнительное поле и используем ее для поиска (при клике переходим к поиску подобных тем с этой меткой)?
demon201984
63 сообщения
  • 1
  • 2
  • 3
  • 4
  • 5
  • Перейти на страницу:
  • 7
  • След.

Вернуться в «Минимоды и хаки для phpBB3»

Time: 0.000s | Queries: 0 | Peak Memory Usage: 0.00 МБ | GZIP: Unknown | SQL Explain
  • Список форумов
2018, made with by ThemeKita Создано на основе phpBB® Forum Software © phpBB Limited Русская поддержка phpBB (C) 2009-2026 @ PPK
  • Часовой пояс: UTC+04:00
Участники темы
Список форумов Участники темы
Перейти
Сайт ↳   Новости по сайту ↳   Новости обновлений ↳   Вопросы по сайту ↳   Non-russian speakers forum Форумы по phpBB 3.1-3.3 ↳   Расширения для phpBB 3.1-3.3 ↳   Бета-версии и расширения в разработке ↳   База расширений ↳   Поиск и запросы расширений ↳   Расширения для phpBB 3.1-3.3 для донаторов ↳   Условно-бесплатные расширения ↳   Платные расширения ↳   Расширения для подписчиков ↳   Запросы расширений, функционала и переводов для подписчиков ↳   Переводы расширений для phpBB3.1-3.3 ↳   Стили для phpBB 3.1-3.3 ↳   Вопросы по phpBB 3.1-3.3 Форумы по phpBB 3.0 ↳   Мод трекера ppkBB3cker ↳   Новости по трекеру и обновлениям ↳   Ошибки, проблемы, недочёты ↳   Предложения по новым функциям и возможностям ↳   Вопросы, ответы и примеры решений ↳   Моды и стили для трекера ↳   Готовые стили для трекера ↳   Запросы стилей для трекера ↳   Стили в разработке ↳   Готовые моды для трекера ↳   Запросы модов для трекера ↳   Моды в разработке ↳   Остальное ↳   Часто задаваемые вопросы ↳   Ваши трекеры ↳   Мод трекера xbtBB3cker ↳   Новости по трекеру и обновлениям ↳   Вопросы, ответы, ошибки и обсуждение ↳   Другие моды для phpBB 3.0 ↳   Минимоды и хаки для phpBB3 ↳   phpBB 3.0 ppkBB3cker Edition ↳   Платные услуги, моды, стили для phpBB 3.0 ↳   BB2Spoiler/BB3Spoiler ↳   BB3Topics ↳   BB3Sape ↳   BB3UserAgentInfo ↳   Вопросы по phpBB 3.0 ↳   Вне тематики форума