Adding a new custom page

Список разделов phpBBex in English General

Описание: General discussion about phpBBex.
Модератор: Поддержка

Сообщение #1 Sylver Cheetah 53 » 03.01.2017, 20:19

Hi!

I want to add a new page with a chat. I modified faq.php and faq_body.html but something went worng and the chat now is repeted. Here is the link to the chat: http://onanisti.ro/chat.php
Here is my chat.php file:
Код: Выделить всё
<?php
/**
*
* @package phpBB3
* @version $Id$
* @copyright (c) 2005 phpBB Group
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*
*/

/**
* @ignore
*/
define('IN_PHPBB', true);
$phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);

// Start session management
$user->session_begin();
$auth->acl($user->data);
$user->setup();

$mode = request_var('mode', '');

// Load the appropriate faq file
switch ($mode)
{
   case 'bbcode':
      $l_title = $user->lang['BBCODE_GUIDE'];
      $user->add_lang('bbcode', false, true);
   break;

   default:
      $l_title = $user->lang['FAQ_EXPLAIN'];
      $user->add_lang('faq', false, true);
   break;
}

// Pull the array data from the lang pack
$switch_column = $found_switch = false;
$help_blocks = array();
foreach ($user->help as $help_ary)
{
   if ($help_ary[0] == '--')
   {
      if ($help_ary[1] == '--')
      {
         $switch_column = true;
         $found_switch = true;
         continue;
      }

      $template->assign_block_vars('faq_block', array(
         'BLOCK_TITLE'      => $help_ary[1],
         'SWITCH_COLUMN'      => $switch_column,
      ));

      if ($switch_column)
      {
         $switch_column = false;
      }
      continue;
   }

   $template->assign_block_vars('faq_block.faq_row', array(
      'FAQ_QUESTION'      => $help_ary[0],
      'FAQ_ANSWER'      => $help_ary[1])
   );
}

// Lets build a page ...
$template->assign_vars(array(
   'L_FAQ_TITLE'            => $l_title,
   'L_BACK_TO_TOP'            => $user->lang['BACK_TO_TOP'],

   'SWITCH_COLUMN_MANUALLY'   => (!$found_switch) ? true : false,
));

page_header($l_title, false);

$template->set_filenames(array(
   'body' => 'chat_body.html')
);
make_jumpbox(append_sid("{$phpbb_root_path}viewforum.$phpEx"));

page_footer();

?>
And here is chat_body.html:
Код: Выделить всё
<!-- INCLUDE overall_header.html -->

<h2>CHAT-UL LABAGIILOR</h2>

<div class="clear"></div>

<!-- BEGIN faq_block -->
   <div class="panel <!-- IF faq_block.S_ROW_COUNT is odd -->bg1<!-- ELSE -->bg2<!-- ENDIF -->">
      <div class="inner"><span class="corners-top"><span></span></span>

      <div class="content">
         <h2>CHAT</h2>
         <!-- BEGIN faq_row -->
            <dl class="faq">
               <dt id="f{faq_block.S_ROW_COUNT}r{faq_block.faq_row.S_ROW_COUNT}">
      <embed wmode="transparent" src="http://www.xatech.com/web_gear/chat/chat.swf" quality="high" width="100%" height="500" name="chat" FlashVars="id=63876441&rl=Romanian" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://xat.com/update_flash.shtml" /></dd>
               <dd><a href="#faqlinks" class="top2">{L_BACK_TO_TOP}</a></dd>
            </dl>
            <!-- IF not faq_block.faq_row.S_LAST_ROW --><hr class="dashed" /><!-- ENDIF -->
         <!-- END faq_row -->
      </div>

      <span class="corners-bottom"><span></span></span></div>
   </div>
<!-- END faq_block -->

<!-- INCLUDE jumpbox.html -->
<!-- INCLUDE overall_footer.html -->
Sylver Cheetah 53
Автор темы
Аватара
Откуда: Milky Way
Репутация: 0
С нами: 7 лет 10 месяцев

Сообщение #2 Sumanai » 03.01.2017, 20:34

Sylver Cheetah 53:I modified faq.php and faq_body.html
But why?
The code of these pages specially designed for cyclic output data, hence the duplication.
Just note that you are using the phpBB, and here is the support forum of his fork- phpBBex. For phpBB support you better turn on official support forum phpBB Limited.
Sumanai M
Аватара
Репутация: 1677
С нами: 11 лет 9 месяцев

Сообщение #3 Alexell » 05.01.2017, 01:25

Sylver Cheetah 53, I also made a custom page based on FAQ.

oferta.php:
Код: Выделить всё
<?php
define('IN_PHPBB', true);
$phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);

// Start session management
$user->session_begin();
$auth->acl($user->data);
$user->setup();

// Lets build a page ...
$template->assign_vars(array(
   'L_FAQ_TITLE'            => $l_title,
   'L_BACK_TO_TOP'            => $user->lang['BACK_TO_TOP'],

   'SWITCH_COLUMN_MANUALLY'   => (!$found_switch) ? true : false,
   'S_IN_FAQ'               => true,
));

page_header($l_title);

$template->set_filenames(array(
   'body' => 'oferta_body.html')
);

page_footer();

oferta_body.html:
Код: Выделить всё
<!-- INCLUDE overall_header.html -->

<h2 class="faq-title">Публичный договор-оферта по продаже программного обеспечения</h2>

   <div class="postbody">

      <div class="content">
... MY TEXT ...
      </div>
   </div>

<!-- INCLUDE overall_footer.html -->

Compare my and your files. You need to remove all display FAQ references.

Добавлено спустя 5 минут 34 секунды:
chat_body.html:
Please delete the entire section from <!-- BEGIN faq_row --> to <!-- END faq_row --> and your code was placed in the <div class="content">...</div>, like mine.
Alexell M
Аватара
Откуда: Москва, Россия.
Репутация: 13
С нами: 11 лет 3 месяца


Вернуться в General