Предпросмотр для записей Links - Дизайн и модификация Invision Power Board

Перейти к содержимому

 

Правила раздела

Здесь обсуждаются вопросы по настройке и администрированию форумов IPB 3.x.
Пожалуйста, не оффтопьте, если зашли сюда случайно, и обратите внимание на соседние разделы.
Установка, настройка и обслуживание форумов IPB 2.x.
Оформление форумов, включая верстку скинов.
Размещение рекламы на форумах.
SEO оптимизация форума.
Техническая поддержка наших скинов и модов.

СвернутьПрикрепленные теги

Теги не найдены

Страница 1 из 1

Предпросмотр для записей Links

#1 Пользователь не на сайте   Haktar ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 1 153
  • Регистрация: 13-Июнь 09
  • Репутация: 23
  • IPB version:3.1.x
 

Отправлено 05 Ноябрь 2019 - 18:38

Помогите создать предпросмотр записей и комментариев перед отправкой, приложения Links.
0

#2 Пользователь не на сайте   newbie ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins.ru Team
  • Сообщений: 4 045
  • Регистрация: 26-Октябрь 11
  • Репутация: 1 588
  • IPB version:I have no IPB
 

Отправлено 06 Ноябрь 2019 - 07:59

В шаблоны commentForm и linkForm в самое начало добавляете
<if test="isset($this->request['preview'])">
<php>
$comment = IPSText::getTextClass( 'editor' )->processRawPost( 'Post' );
IPSText::getTextClass( 'bbcode' )->parse_html = 0;
IPSText::getTextClass( 'bbcode' )->parse_nl2br = 1;
IPSText::getTextClass( 'bbcode' )->parse_smilies = ( $this->settings[ 'l_emo_comments' ] == 1 ) ? 1 : 0;
IPSText::getTextClass( 'bbcode' )->parse_bbcode = 1;
IPSText::getTextClass( 'bbcode' )->parsing_section = 'links_comments';
$comment  = IPSText::getTextClass( 'bbcode' )->preDisplayParse( IPSText::getTextClass( 'bbcode' )->preDbParse( $comment ) );
</php>
	<if test="!$this->settings['disable_lightbox']">
		{parse template="include_lightbox" group="global" params=""}
	</if>
	<h2 class='maintitle'>Preview</h2>
	<div class='post_wrap'>
		<div class='row2' style='padding:8px'>
			<div class='post entry-content'>{$comment}</div>
		</div>
	</div>
	<br />
</if>

Только в linkForm
IPSText::getTextClass( 'bbcode' )->parsing_section = 'links_comments';
заменяете на
IPSText::getTextClass( 'bbcode' )->parsing_section	= 'links_ldesc';


В commentForm после
<input type='submit' name='submit' value='{$data[ 'button' ]}' class='input_submit' accesskey='s' />
добавляете
<input type="submit" name="preview" value="Preview" tabindex="0" class="input_submit alt" />

В linkForm после
<input type='submit' name='submit' value='{$link[ 'button' ]}' class='input_submit' accesskey='s' />
добавляете
<input type="submit" name="preview" value="Preview" tabindex="0" class="input_submit alt" />


В admin/applications_addon/other/links/modules_public/links/links.php после
$linkDesc = IPSText::getTextClass( 'bbcode' )->preDbParse( $linkDesc );
добавляете
		if (isset($this->request['preview']))
		{
			return $this->showLinkForm($type);
		}

3

#3 Пользователь не на сайте   Haktar ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 1 153
  • Регистрация: 13-Июнь 09
  • Репутация: 23
  • IPB version:3.1.x
 

Отправлено 06 Ноябрь 2019 - 14:20

newbie,
Большое спасибо, то что надо!

P.S. А можно что бы при внесении изменений в формы, при нажатии на кнопку предпросмотра, изменённые данные не только отображались в окне предпросмотра, а также и сохранялись в формах (как например в сообщениях на форуме).
0

#4 Пользователь не на сайте   Haktar ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 1 153
  • Регистрация: 13-Июнь 09
  • Репутация: 23
  • IPB version:3.1.x
 

Отправлено 06 Ноябрь 2019 - 15:27

Просмотреть сообщениеHaktar сказал(а):

P.S. А можно что бы при внесении изменений в формы, при нажатии на кнопку предпросмотра, изменённые данные не только отображались в окне предпросмотра, а также и сохранялись в формах (как например в сообщениях на форуме).

В форме комментариев сохраняется, а в форме записи - нет.
0

#5 Пользователь не на сайте   newbie ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins.ru Team
  • Сообщений: 4 045
  • Регистрация: 26-Октябрь 11
  • Репутация: 1 588
  • IPB version:I have no IPB
 

Отправлено 07 Ноябрь 2019 - 07:25

Выше
		/* Simply show the form */
		$this->output = $this->registry->output->getTemplate( 'links' )->linkForm( $this->links->getMessages(), $link, $cat );
Добавить
		if (isset($this->request['preview']))
		{
			$link[ 'editor' ] = IPSText::getTextClass( 'editor' )->showEditor( $this->request['Post'] ? IPSText::getTextClass( 'bbcode' )->preEditParse( $this->request['Post'] ) : '' , 'Post' );
			$link['link_title'] = trim($this->request[ 'link' ]);
			$link['link_url'] = trim($this->request[ 'href' ]);
		}

1

#6 Пользователь не на сайте   Haktar ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 1 153
  • Регистрация: 13-Июнь 09
  • Репутация: 23
  • IPB version:3.1.x
 

Отправлено 07 Ноябрь 2019 - 08:35

newbie,
Ещё раз спасибо за вашу неоценимую помощь!
0

#7 Пользователь не на сайте   Haktar ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 1 153
  • Регистрация: 13-Июнь 09
  • Репутация: 23
  • IPB version:3.1.x
 

Отправлено 07 Ноябрь 2019 - 10:36

newbie,
Кстати, на основе всего этого, сделал также предпросмотр и в записях Календаря. Всё отлично, вот только также не сохраняется в форме, а этот ваш код:
        if (isset($this->request['preview']))
        {
            $link[ 'editor' ] = IPSText::getTextClass( 'editor' )->showEditor( $this->request['Post'] ? IPSText::getTextClass( 'bbcode' )->preEditParse( $this->request['Post'] ) : '' , 'Post' );
            $link['link_title'] = trim($this->request[ 'link' ]);
            $link['link_url'] = trim($this->request[ 'href' ]);
        }

Не могу понять куда именно вставить в файле calendars.php
0

#8 Пользователь не на сайте   newbie ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins.ru Team
  • Сообщений: 4 045
  • Регистрация: 26-Октябрь 11
  • Репутация: 1 588
  • IPB version:I have no IPB
 

Отправлено 08 Ноябрь 2019 - 09:57

Просмотреть сообщениеHaktar сказал(а):

Не могу понять куда именно вставить в файле calendars.php

Там код должен быть совсем другим.
0

#9 Пользователь не на сайте   Haktar ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 1 153
  • Регистрация: 13-Июнь 09
  • Репутация: 23
  • IPB version:3.1.x
 

Отправлено 08 Ноябрь 2019 - 11:04

Просмотреть сообщениеnewbie сказал(а):

Там код должен быть совсем другим.

А какой не подскажете?
0

#10 Пользователь не на сайте   newbie ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins.ru Team
  • Сообщений: 4 045
  • Регистрация: 26-Октябрь 11
  • Репутация: 1 588
  • IPB version:I have no IPB
 

Отправлено 08 Ноябрь 2019 - 11:31

Вам для всех полей что ли нужно?
Там же их очень много.
0

#11 Пользователь не на сайте   Haktar ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 1 153
  • Регистрация: 13-Июнь 09
  • Репутация: 23
  • IPB version:3.1.x
 

Отправлено 08 Ноябрь 2019 - 11:38

Просмотреть сообщениеnewbie сказал(а):

Вам для всех полей что ли нужно?
Там же их очень много.

Нет. На основании данных что вы сделали для приложения Links, я сделал и для Календаря.

В шаблон calendarEventForm поместил в самый верх:
Spoiler

В самый низ:
<input type="submit" name="preview" value="Предпросмотр записи" tabindex="0" class="input_submit alt" style='font-size: 14px'/>


В файл calendars.php перед:
if( ! checkdate( $month, $day , $year ) )
        {
			$this->registry->output->showError( 'calendar_invalid_date', 10427 );
		}


Поместил:
		if (isset($this->request['preview']))
		{
		return $this->calendarEventForm($type);
		}


И знаете, всё заработало, предпросмотр появился. Однако при внесении изменений в форму, при нажатии на кнопку предпросмотра, изменённые данные не сохраняются в форме.
0

#12 Пользователь не на сайте   newbie ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins.ru Team
  • Сообщений: 4 045
  • Регистрация: 26-Октябрь 11
  • Репутация: 1 588
  • IPB version:I have no IPB
 

Отправлено 08 Ноябрь 2019 - 11:43

Я имею ввиду
Вложение  calendar.png (40,52К)
Количество загрузок: 3
Все нужны или только текст?
0

#13 Пользователь не на сайте   Haktar ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 1 153
  • Регистрация: 13-Июнь 09
  • Репутация: 23
  • IPB version:3.1.x
 

Отправлено 08 Ноябрь 2019 - 11:47

Просмотреть сообщениеnewbie сказал(а):

Я имею ввиду

А это не нужно. Я в Календаре не использую эти дату окончания и начала. Публикуется в основной календарь и для всех.
0

#14 Пользователь не на сайте   newbie ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins.ru Team
  • Сообщений: 4 045
  • Регистрация: 26-Октябрь 11
  • Репутация: 1 588
  • IPB version:I have no IPB
 

Отправлено 08 Ноябрь 2019 - 11:54

Добавьте выше
		/* Output */
		$this->output .= $this->registry->output->getTemplate( 'calendar' )->calendarEventForm(

		if (isset($this->request['preview']))
		{
			$event['event_title'] = IPSText::getTextClass( 'bbcode' )->stripBadWords( trim( $this->request['event_title'] ) );
			$event['event_content'] = $this->request['Post'] ? IPSText::getTextClass( 'bbcode' )->preEditParse( $this->request['Post'] ) : '';
		}

Если что-то еще нужно будет, пишите
1

#15 Пользователь не на сайте   Haktar ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 1 153
  • Регистрация: 13-Июнь 09
  • Репутация: 23
  • IPB version:3.1.x
 

Отправлено 08 Ноябрь 2019 - 12:36

Просмотреть сообщениеnewbie сказал(а):

Добавьте выше

Спасибо, то что надо!
0

Сообщить об этой теме:


Страница 1 из 1


Быстрый ответ

  

1 пользователей читают эту тему
0 зарегистрированных, 1 гостей, 0 скрытых


Контактная информация

Вопросы по работе сайта

+7 (917) 501-4765
C 10 до 20 в рабочие дни (время московское)

Техническая поддержка

Контактные данные специалистов

Дизайн форумов

IPB 3.x ¦ IPB 2.x

Бесплатные шаблоны

IPB 3.2 – 3.4 ¦ IPB 3.1 ¦ IPB 3.0 ¦ IPB 2.2 – 2.3 ¦ IPB 2.1 ¦ Клипарт
Лицензия на использование ¦ Ваша поддержка ¦ О проекте
Copyright © 2005-2019 IPBSkins.ru Team
При копировании материалов с сайта
прямая ссылка на источник обязательна