Jump to content
Дизайн и модификация Invision Community IPBSkinsBETA
Search In
  • More options...
Find results that contain...
Find results in...
Sign in to follow this  
Grandsire

Полноценный html код на странице правил

Recommended Posts

Как и что подправить надо, что бы на странице правил в любом форуме или категории можно было вставить полноценную html страничку с явой и тд..Рассмотрю коммерческое решение вопроса в личку.

Вот сюда надо вставлять:

post-16203-1269754401_thumb.png

Share this post


Link to post

Адсенс туда засовывается, код баннеров тоже.

Не понимаю, в чем проблема.

Share this post


Link to post

Попробуйте туда xhtml ставить с явой..))Любую менюху например с плагином..

Share this post


Link to post

Не пробовала, так как такой потребности нет.

Share this post


Link to post

Вариант с заменой редактора на textarea для ввода HTML кода вам подходит?

Share this post


Link to post
Вариант с заменой редактора на textarea для ввода HTML кода вам подходит?

Любые средства хороши, лишь бы решить поставленную задачу))

Зайти в админку,открыть правила в нужном форуме, вставить любой HTML код и получить результат))

Share this post


Link to post

Ну вот))) Обнадежили вроде как...)))И?.))

Share this post


Link to post

И был на меропрятии, а в пятницу учебный день. Ещё вопросы? :rolleyes: Выходные на это будут.

Share this post


Link to post

Заменяем редактор правил форума в АЦ на текстовое поле с возможностью ввода и сохранения HTML.

Открыть файл ./sources/action_admin/forums.php, найти:

		if ( $this->han_editor->method == 'rte' )
	{
		$forum['rules_text'] = $this->parser->pre_display_parse( $this->parser->pre_db_parse( $forum['rules_text'] ) );
		$forum['rules_text'] = $this->parser->convert_ipb_html_to_html( $forum['rules_text'] );
	}
	else
	{
		$this->parser->parse_html	= 1;
		$this->parser->parse_nl2br   = 1;
		$this->parser->parse_smilies = 0;
		$this->parser->parse_bbcode  = 1;

		$forum['rules_text'] = $this->parser->pre_edit_parse( $forum['rules_text'] );
	}

	$form_element = $this->han_editor->show_editor( $forum['rules_text'], 'body' );

и заменить на:

$form_element = $this->ipsclass->adskin->form_textarea( 'body', $this->ipsclass->txt_htmlspecialchars($forum['rules_text']) );

Чуть ниже, в функции do_rules() найти

		//-----------------------------------------
	// Load and config the std/rte editors
	//-----------------------------------------

	require_once( ROOT_PATH."sources/handlers/han_editor.php" );
	$this->han_editor		   = new han_editor();
	$this->han_editor->ipsclass =& $this->ipsclass;
	$this->han_editor->from_acp = 1;
	$this->han_editor->init();

	//-----------------------------------------
	// Load and config the post parser
	//-----------------------------------------

	require_once( ROOT_PATH."sources/handlers/han_parse_bbcode.php" );
	$this->parser					  =  new parse_bbcode();
	$this->parser->ipsclass			=& $this->ipsclass;
	$this->parser->allow_update_caches = 1;

	$this->parser->bypass_badwords = 1;

	$_POST[ 'body' ] = $this->han_editor->process_raw_post( 'body' );
	$this->parser->parse_smilies	= 0;
	$this->parser->parse_html	   = 1;
	$this->parser->parse_bbcode	 = 1;
	$_POST[ 'body' ]					= $this->parser->pre_display_parse( $this->parser->pre_db_parse( $_POST[ 'body' ] ) );

	$rules = array( 
					'rules_title'	=> $this->ipsclass->admin->make_safe($this->ipsclass->txt_stripslashes($_POST['title'])),
					'rules_text'	 => $this->ipsclass->admin->make_safe($_POST['body']),
					'show_rules'	 => $this->ipsclass->input['show_rules']
				  );

и заменить на

		$rules = array( 
					'rules_title'	=> $this->ipsclass->admin->make_safe($this->ipsclass->txt_stripslashes($_POST['title'])),
					'rules_text'	 => $this->ipsclass->txt_stripslashes($_POST['body']),
					'show_rules'	 => $this->ipsclass->input['show_rules']
				  );

 

P.S. Как же в IPS любят плодить функции с бесполезным смыслом... $this->ipsclass->admin->make_safe я как действие не воспринимаю...

 

Если что -- пишите в личку, могу посмотреть на месте.

Share this post


Link to post

:)

Огромное спасибо!! Единственный ресурс, где нашли решение и очень четко получилось.Респект!!

Теперь это поле можно очень хорошо использовать для различных целей.

 

post-16203-1270359872_thumb.png

 

Единственный нюанс-это очень маленькое окно для ввода кода в админке..Потом что-то искать и править в нем трудно)) Как размер его увеличить побольше-стока места свободного))

 

Вот результат, взял для проверки скрипт меню,стало на место-все работает))

 

post-16203-1270360156_thumb.png

Share this post


Link to post

При вызове $this->ipsclass->adskin->form_textarea:

$form_element = $this->ipsclass->adskin->form_textarea( 'body', $this->ipsclass->txt_htmlspecialchars($forum['rules_text']) );

можно указать размеры:

$form_element = $this->ipsclass->adskin->form_textarea( 'body', $this->ipsclass->txt_htmlspecialchars($forum['rules_text']), 100, 20 );

 

И учтите, что проверок никаких не производится, так что будьте внимательны к свои соадминам, если таковые имеются.

Share this post


Link to post

Вот-теперь нормальное окно) Спасибо еще раз!)

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...