• DONATE to NULLED!
    Форуму и его команде можно помочь, мотивировать модераторов разделов.
    Помогите модератору этого раздела killoff лично.

Помощь Модуль faq

clubmen

Профессор
Регистрация
18 Янв 2010
Сообщения
222
Реакции
49
Есть модуль FAQ, проблема заключается в том что на dle 9.2 при выводе на сайте, не работают bb коды. То есть выводит вот так на странице с факом

Код:
[thumb=left]http://site.ru/uploads/posts/2012-03/1331206260_1.jpg[/thumb]

Не могу понять в чем дело, вожусь уже пол дня не получается сделать. Вот сам код мода

modules:

Код:
<?php
/*
=====================================================
myFAQ module, version 1.3, for DLE 8.2
-----------------------------------------------------
http://www.musichole.ru/
-----------------------------------------------------
Copyright (c) 2007-2010 DiGitaL, PAV
=====================================================
Данный код защищен авторскими правами
=====================================================
Файл: faq.php
-----------------------------------------------------
Назначение: вывод FAQ
=====================================================
*/

if (file_exists(ROOT_DIR.'/install.php')) { die("Внимание! Вы не удалили install.php файл который находится в корне сайта."); }

if(!defined('DATALIFEENGINE')) {
die("Hacking attempt!");
}

require_once(ENGINE_DIR.'/data/config.php');
require_once(ENGINE_DIR.'/classes/parse.class.php');

$parse = new ParseFilter();
$parse->safe_mode = true;

require_once(ENGINE_DIR.'/classes/mysql.php');


$showfaq = $db->query("SELECT * FROM " . PREFIX . "_faq");
$txtFAQ = "";
$static_descr = stripslashes( strip_tags( $static_result['descr'] ) );
while($row = $db->get_row($showfaq)) {
$txtFAQ .= "<a href=\"javascript:ShowOrHide('".$row['id']."');\"><b>Вопрос: ". $parse->BB_Parse($row['question'])."</b></a><br />" . "<div id=\"".$row['id']."\" style=\"display : none;\">Ответ: ". $parse->BB_Parse ( $parse->process($row['answer']))."</div><br /><hr style='height:1px; border:0px; border-top: 1px dashed #d8d8d8; display:block;'/>";
}

$tpl->load_template('faq.tpl');
$tpl->set('{static}', !empty($txtFAQ) ? $txtFAQ : "");
$tpl->set('{description}', 'F.A.Q. - Часто задаваемые вопросы.');
$tpl->set('{pages}', '');
$tpl->compile('content');
$tpl->clear();

?>

и админка

Код:
<?php
/*
=====================================================
myFAQ module, version 1.3, for DLE 8.2
-----------------------------------------------------
http://www.musichole.ru/
-----------------------------------------------------
Copyright (c) 2007-2010 DiGitaL, PAV
=====================================================
Данный код защищен авторскими правами
=====================================================
Файл: faq.php
-----------------------------------------------------
Назначение: Административная часть модуля FAQ
=====================================================
*/

if(!defined('DATALIFEENGINE')) {
die("Hacking attempt!");
}

if($member_id['user_group'] != 1){ msg("error", $lang['addnews_denied'], $lang['db_denied']); }
if (isset ($_REQUEST['id'])) $id = intval($_REQUEST['id']); else $id = "";

require_once(ENGINE_DIR.'/data/config.php');
require_once(ENGINE_DIR.'/classes/mysql.php');


//Функции для работы модуля
function opentable() {
echo <<<HTML
<div style="padding-top:5px;padding-bottom:2px;">
<table width="100%">
<tr>
<td width="4"><img src="engine/skins/images/tl_lo.gif" width="4" height="4" border="0"></td>
<td background="engine/skins/images/tl_oo.gif"><img src="engine/skins/images/tl_oo.gif" width="1" height="4" border="0"></td>
<td width="6"><img src="engine/skins/images/tl_ro.gif" width="6" height="4" border="0"></td>
</tr>
<tr>
<td background="engine/skins/images/tl_lb.gif"><img src="engine/skins/images/tl_lb.gif" width="4" height="1" border="0"></td>
<td style="padding:5px;" bgcolor="#FFFFFF">
HTML;
}

function closetable() {
echo <<<HTML
</td>
<td background="engine/skins/images/tl_rb.gif"><img src="engine/skins/images/tl_rb.gif" width="6" height="1" border="0"></td>
</tr>
<tr>
<td><img src="engine/skins/images/tl_lu.gif" width="4" height="6" border="0"></td>
<td background="engine/skins/images/tl_ub.gif"><img src="engine/skins/images/tl_ub.gif" width="1" height="6" border="0"></td>
<td><img src="engine/skins/images/tl_ru.gif" width="6" height="6" border="0"></td>
</tr>
</table>
</div>
HTML;
}

function tableheader($value) {
echo <<<HTML
<table width="100%">
<tr>
<td bgcolor="#EFEFEF" height="29" style="padding-left:10px;">
<div class="navigation">$value</div></td>
</tr>
</table>
<div class="unterline"></div>
HTML;
}
// Конец функций работы модуля

function faqmain() {
echoheader("FAQ", "Админпанель модуля FAQ");
}
function faqmenu() {
opentable();
tableheader('Настройка модуля');
echo<<<HTML
<form action="$PHP_SELF?mod=faq" method="post">
<table width="100%">
<tr>
<td width="50%"><div class="quick"><a href="$PHP_SELF?mod=faq"><img src="engine/skins/images/general.png" border="0" align="left"><h3>Главная</h3>Перейти на галвную страницу модуля в админпанели</a></div></td>
<td><div class="quick"><a href="$PHP_SELF?mod=faq&action=add_faq"><img src="engine/skins/images/spset.png" border="0" align="left"><h3>Добавить FAQ</h3>Открыть форму добавления нового вопроса и ответа на него</a></div></td>
</tr>
<tr>
<td><div class="quick"><a href="$PHP_SELF?mod=faq&action=list"><img src="engine/skins/images/comments.png" border="0" align="left"><h3>Управление FAQ</h3>Изменение, удаление существующих FAQ</a></div></td>
<td><div class="quick"><a href="$PHP_SELF?mod=faq&action=dev"><img src="engine/skins/images/pset.png" border="0" align="left"><h3>Разработчики</h3>Информация о создателях модуля</a></div></td>
</tr>

</table>
</form>
HTML;
closetable();
}

if ($_REQUEST['action'] == "list") {
$entries_showed = 0;
$entries = "";

require_once(ENGINE_DIR.'/classes/parse.class.php');

$parse = new ParseFilter();
$parse->safe_mode = true;

//Выводим список существующих FAQ
$result = $db->query("SELECT * FROM " . PREFIX . "_faq");
if($result) {
while ($row = $db->get_array($result)) {
if (strlen(trim($row['question'])) > 55) $question = substr (trim($row['question']), 0, 55)." ..."; else $question = trim($row['question']);
$entries .= "<tr><td class=\"list\" style=\"padding:4px;\">".$question;
$entries .= "<td class=\"list\" style=\"padding:4px;\">
<a href=\"$PHP_SELF?mod=faq&action=edit&id=".$row['id']."\">[редактировать]</a>&nbsp;
<a href=\"$PHP_SELF?mod=faq&action=delete_faq&id=".$row['id']."\">[удалить]</a>";
$entries .= "</td><td class=\"list\" style=\"padding:4px;\">
<input name=\"selected_faqs[]\" value=\"{$row['id']}\" type=\"checkbox\">";
$entries .= "</td></tr><tr><td background=\"engine/skins/images/mline.gif\" height\"1\" colspan=\"3\"></td></tr>";
$entries_showed++;
}
}

echo <<<JSCRIPT
<script language='JavaScript' type="text/javascript">
<!--
function ckeck_uncheck_all() {
var frm = document.editfaq;
for (var i=0;i<frm.elements.length;i++) {
var elmnt = frm.elements[i];
if (elmnt.type=='checkbox') {
if(frm.master_box.checked == true){ elmnt.checked=false; }
else{ elmnt.checked=true; }
}
}
if(frm.master_box.checked == true){ frm.master_box.checked = false; }
else{ frm.master_box.checked = true; }
}
-->
</script>
JSCRIPT;

faqmain();
faqmenu();
if($entries_showed == 0){
opentable();
tableheader($lang['faq_list']);
echo <<<HTML
<table width="100%">
<tr>
<td align="center" style="height:50px;">{$lang['edit_nofaq']}</td>
</tr>
</table>
HTML;
closetable();
echofooter();
} else {
echo <<<HTML
<form action="" method="post" name="editfaq">
HTML;
opentable();

tableheader($lang['news_list']);
echo <<<HTML
<table width="100%">
<tr>
<td>
<table width="100%">
<tr>
<td class="list" style="padding:4px;" align="center">{$lang['edit_title_faq']}</td>
<td class="list" width="180" style="padding:4px;" align="center">{$lang['edit_cl_faq']}</td>
<td class="list" width="10" style="padding:4px;" align="center"><input type="checkbox" name="master_box" title="{$lang['edit_selall']}" onclick="javascript:ckeck_uncheck_all()" /></td>
</tr>
<tr><td colspan="3"><div class="hr_line"></div></td></tr>
{$entries}
<tr><td colspan="3"><div class="hr_line"></div></td></tr>
</table>
HTML;
}

if($entries_showed != 0){
echo<<<HTML
<table width="100%">
<tr><td>{$npp_nav}</td>
<td colspan="5" align="right" valign="top"><div style="margin-bottom:5px; margin-top:5px;">
<select name="action">
<option value="">{$lang['edit_selact']}</option>
<option value="mass_delete">{$lang['edit_seldel']}</option>
</select>
<input type="hidden" name="mod" value="faq">
<input class="edit" type="submit" value="{$lang['b_start']}">
</table>
</form><td></tr>
HTML;
}

echo<<<HTML

</td>
</tr>
</table>
HTML;
closetable();
echofooter();
}

elseif ($_REQUEST['action'] == "add_faq") {
//Вводим данные из форм выше в БД

require_once(ENGINE_DIR.'/classes/parse.class.php');

$parse = new ParseFilter(Array(), Array(), 1, 1);
$parse->leech_mode = true;

$question = trim($db->safesql($parse->process($_POST['question'])));
$answer = trim($db->safesql($parse->process($_POST['answer'])));
$isaddf=false;
if (!empty($_POST['save_n'])) $save_n = $_POST['save_n'];
if(isset($save_n) && $question!="" && $answer!="") {
$row = $db->query("INSERT INTO " . PREFIX . "_faq (id, question, answer) VALUES (NULL, '".$question."', '".$answer."')");
msg("info", $lang['mass_head_add_faq'], $lang['mass_addok_faq'], "$PHP_SELF?mod=faq&action=list");
} else {
faqmain();
$isaddf=true;

$question = stripslashes($_POST['question']);
$answer = stripslashes($_POST['answer']);
include(ENGINE_DIR.'/inc/include/inserttag.php');
opentable();
tableheader('Добавление FAQ');
echo<<<HTML
<form action="" method="post">
<table width="100%">
<tr>
<td class="option" style="padding:4px;">

<table width="100%">
<tr>
<td class="option" style="padding:4px;">
<b> Вопрос: </b><br />
<span class="small"> Введите вопрос, будет отображаться в модуле </span>
<td align="middle" width="80%">

HTML;

echo "{$bb_code}<textarea rows=\"8\" style=\"width:98%; padding:0px; text-align:left;\" value=\"\" name=\"question\" id=\"short_story\" onclick=\"setFieldName(this.name)\">".$question."</textarea>";

echo<<<HTML
</td>
</tr>

<tr><td background="engine/skins/images/mline.gif" height="1" colspan="2"></td></tr>

<tr>
<td class="option" style="padding:4px;">
<b> Ответ </b><br />
<span class="small"> Ответ на поставленный выше вопрос </span>
<td align="middle" width="400">
HTML;

echo "<textarea rows=\"8\" style=\"width:98%; padding:0px; text-align:left;\" value=\"\" name=\"answer\" id=\"full_story\" onclick=\"setFieldName(this.name)\">".$answer."</textarea>";

if ($isaddf) {
echo<<<HTML
</td>
</tr>

<tr><td background="engine/skins/images/mline.gif" height="1" colspan="2"></td></tr>

<tr>
<td class="option" style="padding-bottom:10px; padding-top:10px; padding-left:4px;" colspan="2">
<font color="darkred">Заполните все поля!</font>
HTML;
}

echo<<<HTML
</td>
</tr>

<tr><td background="engine/skins/images/mline.gif" height="1" colspan="2"></td></tr>

<tr>
<td class="option" style="padding-bottom:10px; padding-top:10px; padding-left:10px; text-align:right;" colspan="2">
<input class="buttons" type="submit" name="save_n" value=" Сохранить " />
HTML;



echo<<<HTML

</td>
</tr>

</table>

</td>
</tr>

</table>
</form>
HTML;
closetable();
echofooter();
}
}

//Редактируем выбранный FAQ по ID
elseif($_REQUEST['action'] == "edit" AND $id) {
include(ENGINE_DIR.'/inc/include/inserttag.php');
faqmain();
faqmenu();
//Вводим данные из форм ниже в БД
require_once(ENGINE_DIR.'/classes/parse.class.php');

$parse = new ParseFilter(Array(), Array(), 1, 1);
$parse->leech_mode = true;

$question = trim($db->safesql($parse->process($_POST['question'])));
$answer = trim($db->safesql($parse->process($_POST['answer'])));
if (!empty($_POST['save_n'])) $save_n = $_POST['save_n'];
if(isset($save_n) && $question!="" && $answer!="") {
$row = $db->query("UPDATE " . PREFIX . "_faq SET question='".$question."', answer='".$answer."' WHERE id='$id'");
if ($row) $result="Вопрос был изменён!";
$db->free($row);
}
//КОНЕЦ Вводим данные из форм ниже в БД


//Начало запроса из БД выбранного ID FAQ
$row = $db->query("SELECT * FROM " . PREFIX . "_faq WHERE id='$id'");
if($row) {
$row1 = $db->get_array($row);

opentable();
tableheader('Редактирование FAQ');
echo<<<HTML
<form action="" method="post">
<table width="100%">
<tr>
<td class="option" style="padding:4px;">



<table width="100%">
<tr>
<td class="option" style="padding:4px;">
<b> Вопрос: </b><br />
<span class="small"> Введите вопрос, будет отображаться в модуле </span>
<td align="middle" width="80%">

HTML;

echo "{$bb_code}<textarea rows=\"8\" style=\"width:98%; padding:0px; text-align:left;\" value=\"\" name=\"question\" id=\"short_story\" onclick=\"setFieldName(this.name)\">".$row1['question']."</textarea>";

echo<<<HTML
</td>
</tr>

<tr><td background="engine/skins/images/mline.gif" height="1" colspan="2"></td></tr>

<tr>
<td class="option" style="padding:4px;">
<b> Ответ </b><br />
<span class="small"> Ответ на поставленный выше вопрос </span>
<td align="middle" width="400">
HTML;

echo "<textarea rows=\"8\" style=\"width:98%; padding:0px; text-align:left;\" value=\"\" name=\"answer\" id=\"full_story\" onclick=\"setFieldName(this.name)\">".$row1['answer']."</textarea>";

if (!empty($result)) {
echo<<<HTML
</td>
</tr>

<tr><td background="engine/skins/images/mline.gif" height="1" colspan="2"></td></tr>

<tr>
<td class="option" style="padding-bottom:10px; padding-top:10px; padding-left:4px;" colspan="2">
HTML;
echo "<font color=\"green\">".$result."</font>";
}


if( $config['allow_static_wysiwyg'] != "yes" ) $fix_br = "<input type=\"radio\" name=\"allow_br\" value=\"1\" checked=\"checked\" /> {$lang['static_br_html']}<br /><input type=\"radio\" name=\"allow_br\" value=\"0\" /> {$lang['static_br_html_1']}";
else $fix_br = "<input type=\"radio\" name=\"allow_br\" value=\"0\" /> {$lang['static_br_html_1']}";

if ($member_id['user_group'] == 1 ) $fix_br .= "<br /><input type=\"radio\" name=\"allow_br\" value=\"2\" /> {$lang['static_br_html_2']}";

echo<<<HTML
</td>
</tr>

<tr><td background="engine/skins/images/mline.gif" height="1" colspan="2"></td></tr>
<tr><td>{$lang['static_type']}</td><td>{$fix_br}</td></tr>
<tr><td colspan="2"><div class="hr_line"></div></td></tr>
<tr>
<td class="option" style="padding-bottom:10px; padding-top:10px; padding-left:10px;" colspan="2">
<input class="buttons" type="submit" name="save_n" value=" Сохранить " />
HTML;



echo<<<HTML

</td>
</tr>

</table>

</td>
</tr>

</table>
</form>
HTML;
// Конец запроса из БД выбранного ID FAQ
}
$db->free($row);
closetable();
echofooter();
}
//Конец редактирования FAQ

//Удаляем выбранный FAQ по ID
elseif($_REQUEST['action'] == "delete_faq" AND $id) {
faqmain();

echo <<<HTML
<form action="{$PHP_SELF}" method="post">
HTML;
opentable();
tableheader('F.A.Q.');
echo <<<HTML
<table width="100%">
<tr>
<td style="padding:2px;" height="100" align="center">{$lang['mass_confirm']}
HTML;

echo "(<b>".count($selected_faqs)."</b>) $lang[mass_confirm_1_faq]<br><br>
<input class=\"bbcodes\" type=\"submit\" value=\" $lang[mass_yes] \"> &nbsp; <input type=button class=bbcodes value=\" $lang[mass_no] \" onclick=\"javascript:document.location='$PHP_SELF?mod=faq&action=list'\">
<input type=\"hidden\" name=\"action\" value=\"do_delete_faq\">
<input type=\"hidden\" name=\"mod\" value=\"faq\">
<input type=\"hidden\" name=\"id\" value=\"$id\">";

echo <<<HTML
</tr>
</table>
HTML;
closetable();

echo "</form>";

echofooter();
}

elseif ($_REQUEST['action'] == "do_delete_faq"){
$db->query("DELETE FROM " . PREFIX . "_faq WHERE id='$id'") or die("Error:<b> ". mysql_error()." </b>in file <b>".__FILE__."</b> on line <b>".__LINE__);
msg("info", $lang['mass_head_del_faq'], $lang['mass_delok_faq'], "$PHP_SELF?mod=faq&action=list");
}
/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Подтвреждение удаления
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
elseif ($_REQUEST['action'] == "mass_delete"){
faqmain();

echo <<<HTML
<form action="{$PHP_SELF}" method="post">
<div style="padding-top:5px;padding-bottom:2px;">
HTML;
opentable();
tableheader('F.A.Q.');
echo <<<HTML
<table width="100%">
<tr>
<td style="padding:2px;" height="100" align="center">{$lang['mass_confirm']}
HTML;

echo "(<b>".count($selected_faqs)."</b>) $lang[mass_confirm_1_faq]<br><br>
<input class=\"bbcodes\" type=\"submit\" value=\" $lang[mass_yes] \"> &nbsp; <input type=button class=bbcodes value=\" $lang[mass_no] \" onclick=\"javascript:document.location='$PHP_SELF?mod=faq&action=list'\">
<input type=\"hidden\" name=\"action\" value=\"do_mass_delete\">
<input type=\"hidden\" name=\"mod\" value=\"faq\">";
foreach($selected_faqs as $faqid){
echo "<input type=hidden name=selected_faqs[] value=\"$faqid\">\n";
}

echo <<<HTML
</tr>
</table>
HTML;
closetable();
echo "</form>";

echofooter();
}
/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Удаление FAQ
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
elseif($_REQUEST['action'] == "do_mass_delete"){
if(!$selected_faqs){ msg("error", $lang['mass_error'], $lang['mass_denied_faq'], "$PHP_SELF?mod=faq&action=list"); }
$deleted_faqs=0;
foreach ($selected_faqs as $id) {
$id = intval($id);
$db->query("DELETE FROM " . PREFIX . "_faq WHERE id='$id'");
$deleted_faqs++;
}
if(count($selected_faqs) == $deleted_faqs){ msg("info", $lang['mass_head_del_faq'], $lang['mass_delok_faq'], "$PHP_SELF?mod=faq&action=list"); }
else{ msg("error", $lang['mass_notok_faq'], "$deleted_articles $lang[mass_i] ".count($selected_faqs)." $lang[mass_notok_1_faq]", "$PHP_SELF?mod=faq&action=list"); }
}
elseif ($_REQUEST['action'] == "dev") {
faqmain();
faqmenu();
opentable();
tableheader('F.A.Q.');
echo<<<HTML
<form action="" method="post">
<table width="100%">
<tr>
<td class="option" style="padding:4px;">
Модуль F.A.Q.<br>
Автор: DiGitaL<br>
Адаптация: eXtErNaL<br>
</td>
</tr>
</table>
</form>
HTML;
closetable();
echofooter();
} else {
faqmain();
faqmenu();
echofooter();
}


?>
 
и куда все это нужно вводить?
 
Назад
Сверху