RooKee, Я так понял, что автор темы взял за основу компонент FAQ и пишет свой.
Кажется до меня дошло. Проконтролируйте меня пожалуйста.
1. В файле model.php добавляю в конец:
public function isUserHappyAuthor($happy_id, $happy_user_id){ $inUser = cmsUser::getInstance(); $is_my_happy = ($happy_user_id == $inUser->id) ? true : false; return ($is_my_happy) ? true : false; }
в участке кода
///////////////////////////////////// READ QUESTION //////////////////////////////////////////////////////////////////////////////// if ($do=='read'){
$smarty->assign('is_user', $inUser->id); $smarty->assign('myhappy', $model->isUserHappyAuthor($quest['id'], $quest['user_id']));
///////////////////////////////////// DELETE QUEST //////////////////////////////////////////////////////////////////////////////// if ($do=='delquest'){
$sql = "SELECT con.id, con.user_id, con.quest, con.category_id
FROM cms_happy_quests con
WHERE con.id = '$quest_id' LIMIT 1";
и далее изменяю условия при удалении
if ($inCore->$user_id || $myhappy){
if ($inCore->$user_id || $myhappy){ $inPage->setTitle($_LANG['DEL_QUES']); $inPage->addPathway($_LANG['DEL_QUES']); $inPage->backButton(false); $confirm['title'] = $_LANG['DELETE_QUES']; $confirm['text'] = $_LANG['YOU_REALY_DELETE_QUES'].':<br> "<a href="/happy/quest'.$quest['id'].'.html">'.$quest['quest'].'</a>"<br><br>'; $confirm['action'] = $_SERVER['REQUEST_URI']; $confirm['yes_button']['type'] = 'submit'; $confirm['yes_button']['name'] = 'confirm'; $smarty = $inCore->initSmarty('components', 'action_confirm.tpl'); $smarty->assign('confirm', $confirm); $smarty->display('action_confirm.tpl'); } else { $inCore->redirectBack(); } } if ( $inCore->inRequest('confirm') ){ if ($inCore->$user_id || $myhappy){ $model->deleteQuest($quest_id); } $inCore->redirect('/happy'); } }
3. В tpl файле условие
{if ($myhappy && $is_user) || $is_admin}<a href="/happy/delquest{$quest.id}.html"> [удалить]</a>{/if}