Jump to content

Панель глав. агента


Recommended Posts

Инструкция:

1) Закинуть файлы по папкам с заменой.

 

2) В /system/inc/massaction.php над:

	//Перевод в группу пользователи 

Добавить:

//Перевод в главного агента
else if($mass_type == 25)
$db->query("UPDATE `".PREFIX."_users` SET user_group = '3' WHERE user_id = '".$user_id."'"); 

3) В этом же файле над:

//Информация о переведении в группу 

Добавить:

//Информация о переведении в группу
else if($mass_type == 25)
msgbox('Перевод в группу', 'Пользователь был переведен в группу  главной техподдержки', '?mod=users'); 

4) в /system/inc/users.php над:

	else if($row['user_real'] == 1) 

Добавить: 

		else if($row['user_group'] == 3)
		$color = 'color:black'; 

5) В этом же файле после:

<font color="green">Техподдержка</font> 

Добавить:

<font color="black">Главная Техподдержка</font> 

6) В этом же файле после:

 <option value="16">Перевести в «Техподдержка»</option> 

Добавить:

<option value="25">Перевести в «гл. Техподдержка»</option> 

7) В БД 

vii_support_answers 

создать поле со значениями  

agent_id int(11)

8)дать нужному пользователю группу 3 через phpMyAdmin

Готово!

 

 

Скачать: 

Панель главного агента.zip

  • Upvote 2
Link to comment
Share on other sites

А точно работает?)

сделал по твоей инструкции, только чуть-чуть заменил имена файлов.

в php по прежнему MODER_DIR

еще переделал маленько дизайн

Link to comment
Share on other sites

 

А точно работает?)

сделал по твоей инструкции, только чуть-чуть заменил имена файлов.

в php по прежнему MODER_DIR

еще переделал маленько дизайн

 

Хорошо. Главное что работает, ибо я не проверял тему, делал по памяти...

Link to comment
Share on other sites

 

 

А точно работает?)

сделал по твоей инструкции, только чуть-чуть заменил имена файлов.

в php по прежнему MODER_DIR

еще переделал маленько дизайн

 

Хорошо. Главное что работает, ибо я не проверял тему, делал по памяти...

 

мне кажется, что работает, потому что я пытался делать, но не так делал. 

Link to comment
Share on other sites

 

 

А точно работает?)

сделал по твоей инструкции, только чуть-чуть заменил имена файлов.

в php по прежнему MODER_DIR

еще переделал маленько дизайн

 

Хорошо. Главное что работает, ибо я не проверял тему, делал по памяти...

 

проверю завтра, отпишусь

Link to comment
Share on other sites

А зачем 2 раза штамповать по факту одно и тоже? просто ту тему бы дополнили...

Там по сути F.A.Q.-урок и он будет дальше наполняться по теме примера. Цель была что-бы пользователь сам прочёл, сам понял и сам сделал, а не скачал, залил и потом обратно задавал вопросы. Ну ничего, кто захочет - тот научиться...

Link to comment
Share on other sites

 

А зачем 2 раза штамповать по факту одно и тоже? просто ту тему бы дополнили...

Там по сути F.A.Q.-урок и он будет дальше наполняться по теме примера. Цель была что-бы пользователь сам прочёл, сам понял и сам сделал, а не скачал, залил и потом обратно задавал вопросы. Ну ничего, кто захочет - тот научиться...

 

и откуда у тебя такой словарный запас?

Link to comment
Share on other sites

 

 

А зачем 2 раза штамповать по факту одно и тоже? просто ту тему бы дополнили...

Там по сути F.A.Q.-урок и он будет дальше наполняться по теме примера. Цель была что-бы пользователь сам прочёл, сам понял и сам сделал, а не скачал, залил и потом обратно задавал вопросы. Ну ничего, кто захочет - тот научиться...

 

и откуда у тебя такой словарный запас?

 

Даже и сам не знаю. Это скорей как учиться печатать на клавиатуре, сначала ты всматриваешься в каждую клавишу, проверяешь каждое слово, а со временем ловишь себя на мысли что только стоит придумать слово в голове - как оно уже напечатано)

Link to comment
Share on other sites

 

 

 

А зачем 2 раза штамповать по факту одно и тоже? просто ту тему бы дополнили...

Там по сути F.A.Q.-урок и он будет дальше наполняться по теме примера. Цель была что-бы пользователь сам прочёл, сам понял и сам сделал, а не скачал, залил и потом обратно задавал вопросы. Ну ничего, кто захочет - тот научиться...

 

и откуда у тебя такой словарный запас?

 

Даже и сам не знаю. Это скорей как учиться печатать на клавиатуре, сначала ты всматриваешься в каждую клавишу, проверяешь каждое слово, а со временем ловишь себя на мысли что только стоит придумать слово в голове - как оно уже напечатано)

 

понятно

Link to comment
Share on other sites

ты архив скачал? закинь файлы по папкам с заменой.

Всё сделал , в боковом меню заменилась ссылка на май статс , когда вбиваю ссылку /support появляется то что на скринахtUY4BpZ.pngnhUR02r.png

Link to comment
Share on other sites

Задавали((

Хм... Не знаю, у меня всё прекрасно. 

 

Тогда попробуй удалить всё из файла support.php из папки /system/modules/

и вставь это:

<?php
/* 
	Appointment: Помощь
	File: support.php 
	Author: f0rt1 
	Engine: Vii Engine
	Copyright: NiceWeb Group (с) 2011
	e-mail: [email protected]
	URL: http://www.niceweb.in.ua/
	ICQ: 427-825-959
	Данный код защищен авторскими правами
*/
if(!defined('MOZG'))
	die('Hacking attempt!');

if($ajax == 'yes')
	NoAjaxQuery();

if($logged){
	$act = $_GET['act'];
	$user_id = $user_info['user_id'];
	$metatags['title'] = $lang['support_title'];

	if($_GET['page'] > 0) $page = intval($_GET['page']); else $page = 1;
	$gcount = 20;
	$limit_page = ($page-1)*$gcount;

	switch($act){
		
		//################### Страница создание нового вопроса  ###################//
		case "new":
			$mobile_speedbar = 'Новый вопрос';

			$tpl->load_template('support/new.tpl');
			$tpl->set('{uid}', $user_id);
			$tpl->compile('content');
		break;
		
		//################### Отправка нового вопроса  ###################//
		case "send":
			NoAjaxQuery();
			$title = ajax_utf8(textFilter($_POST['title']), false, true);
			$question = ajax_utf8(textFilter($_POST['question']));
			$limitTime = $server_time-3600;
			$rowLast = $db->super_query("SELECT COUNT(*) AS cnt FROM `".PREFIX."_support` WHERE сdate > '{$limitTime}'");
			if(!$rowLast['cnt'] AND isset($title) AND !empty($title) AND isset($question) AND !empty($question) AND $user_info['user_group'] != 4){
				$question = preg_replace('`(http(?:s)?://\w+[^\s\[\]\<]+)`i', '<!--link:$1--><a href="$1" target="_blank">$1</a><!--/link-->', $question);
				$db->query("INSERT INTO `".PREFIX."_support` SET title = '{$title}', question = '{$question}', suser_id = '{$user_id}', sfor_user_id = '{$user_id}', sdate = '{$server_time}', сdate = '{$server_time}'");
				$dbid = $db->insert_id();
				$row = $db->super_query("SELECT user_search_pref, user_photo FROM `".PREFIX."_users` WHERE user_id = '{$user_id}'");
				$tpl->load_template('support/show.tpl');
				$tpl->set('{title}', stripslashes($title));
				$tpl->set('{question}', stripslashes($question));
				$tpl->set('{qid}', $dbid);
				megaDate($server_time);
				$tpl->set('{status}', 'Вопрос ожидает обработки.');
				$tpl->set('{name}', $row['user_search_pref']);
				$tpl->set('{uid}', $user_id);
				if($row['user_photo'])
					$tpl->set('{ava}', '/uploads/users/'.$user_id.'/50_'.$row['user_photo']);
				else
					$tpl->set('{ava}', '{theme}/images/no_ava_50.png');
				$tpl->set('{answers}', '');
				$tpl->compile('content');
				AjaxTpl();
				echo 'r|x'.$dbid;
			} else
				echo 'limit';
			
			die();
		break;
		
		//################### Удаление вопроса  ###################//
		case "delet":
			NoAjaxQuery();
			$qid = intval($_POST['qid']);
			$row = $db->super_query("SELECT suser_id FROM `".PREFIX."_support` WHERE id = '{$qid}'");
			if($row['suser_id'] == $user_id OR $user_info['user_group'] == 4  OR $user_info['user_group'] ==1  OR $user_info['user_group'] ==3){
				$db->query("DELETE FROM `".PREFIX."_support` WHERE id = '{$qid}'");
				$db->query("DELETE FROM `".PREFIX."_support_answers` WHERE qid = '{$qid}'");
			}
			die();
		break;
		
		//################### Удаление Ответа  ###################//
		case "delet_answer":
			NoAjaxQuery();
			$id = intval($_POST['id']);
			$row = $db->super_query("SELECT auser_id FROM `".PREFIX."_support_answers` WHERE id = '{$id}'");
			if($row['auser_id'] == $user_id OR $user_info['user_group'] == 4  OR $user_info['user_group'] ==1  OR $user_info['user_group'] ==3)
				$db->query("DELETE FROM `".PREFIX."_support_answers` WHERE id = '{$id}'");

			die();
		break;
		
		//################### Закрытие вопроса  ###################//
		case "close":
			NoAjaxQuery();
			$qid = intval($_POST['qid']);
			if($user_info['user_group'] == 4  OR $user_info['user_group'] ==1  OR $user_info['user_group'] ==3){
				$row = $db->super_query("SELECT COUNT(*) AS cnt FROM `".PREFIX."_support` WHERE id = '{$qid}'");
				if($row['cnt'])
					$db->query("UPDATE `".PREFIX."_support` SET sfor_user_id = 0 WHERE id = '{$qid}'");
			}
			die();
		break;
		
		//################### Отправка ответа ###################//
		case "answer":
			NoAjaxQuery();
			$qid = intval($_POST['qid']);
			$answer = ajax_utf8(textFilter($_POST['answer']));
			$check = $db->super_query("SELECT suser_id FROM `".PREFIX."_support` WHERE id = '{$qid}'");
			if($check['suser_id'] == $user_id OR $user_info['user_group'] == 4  OR $user_info['user_group'] ==1  OR $user_info['user_group'] ==3 AND isset($answer) AND !empty($answer)){
				if($user_info['user_group'] == 4  OR $user_info['user_group'] ==1  OR $user_info['user_group'] ==3){
					$auser_id = 0;
					$db->query("UPDATE `".PREFIX."_users` SET user_support = user_support+1 WHERE user_id = '{$check['suser_id']}'");
				} else
					$auser_id = $user_id;
					
				$answer = preg_replace('`(http(?:s)?://\w+[^\s\[\]\<]+)`i', '<!--link:$1--><a href="$1" target="_blank">$1</a><!--/link-->', $answer);
				
				$db->query("INSERT INTO `".PREFIX."_support_answers` SET qid = '{$qid}', auser_id = '{$auser_id}', adate = '{$server_time}', agent_id='{$user_id}', answer = '{$answer}'");
				$db->query("UPDATE `".PREFIX."_support` SET sfor_user_id = '{$auser_id}', sdate = '{$server_time}' WHERE id = '{$qid}'");
				
				$row = $db->super_query("SELECT user_search_pref, user_photo FROM `".PREFIX."_users` WHERE user_id = '{$user_id}'");
				
				$tpl->load_template('support/answer.tpl');
				if(!$auser_id){
					$tpl->set('{name}', 'Агент поддержки #'.$user_id);
					$tpl->set('{ava}', '{theme}/images/support.png');
					$tpl->set_block("'\\[no-agent\\](.*?)\\[/no-agent\\]'si","");
				} else {
					$tpl->set('{name}', $row['user_search_pref']);
					if($row['user_photo'])
						$tpl->set('{ava}', '/uploads/users/'.$user_id.'/50_'.$row['user_photo']);
					else
						$tpl->set('{ava}', '{theme}/images/no_ava_50.png');
							
					$tpl->set('[no-agent]', '');
					$tpl->set('[/no-agent]', '');
				}
					
				if($auser_id == $user_id OR $user_info['user_group'] == 4  OR $user_info['user_group'] ==1  OR $user_info['user_group'] ==3){
					$tpl->set('[owner]', '');
					$tpl->set('[/owner]', '');
				} else
					$tpl->set_block("'\\[owner\\](.*?)\\[/owner\\]'si","");
					
				$tpl->set('{uid}', $user_id);
				$tpl->set('{answer}', stripslashes($answer));
				megaDate($server_time);
				$tpl->compile('content');
				AjaxTpl();
			}
			die();
		break;
		
		//################### Просмотр вопроса ###################//
		case "show":
			$qid = intval($_GET['qid']);

			if($user_info['user_group'] == 4  OR $user_info['user_group'] ==1  OR $user_info['user_group'] ==3)
				$sql_where = "";
			else
				$sql_where = "AND tb1.suser_id = '{$user_id}'";

			$row = $db->super_query("SELECT tb1.id, title, question, sdate, sfor_user_id, suser_id, tb2.user_search_pref, user_photo FROM `".PREFIX."_support` tb1, `".PREFIX."_users` tb2 WHERE tb1.id = '{$qid}' AND tb1.suser_id = tb2.user_id {$sql_where}");
			if($row){
				//Выводим ответы
				$sql_answer = $db->super_query("SELECT SQL_CALC_FOUND_ROWS id, adate, answer, auser_id, agent_id FROM `".PREFIX."_support_answers` WHERE qid = '{$qid}' ORDER by `adate` ASC LIMIT 0, 100", 1);
				
				$tpl->load_template('support/answer.tpl');
				foreach($sql_answer as $row_answer){
					if(!$row_answer['auser_id']){
						$tpl->set('{name}', 'Агент поддержки #'.$row_answer['agent_id']);
						$tpl->set('{ava}', '{theme}/images/support.png');
						$tpl->set_block("'\\[no-agent\\](.*?)\\[/no-agent\\]'si","");
					} else {
						$tpl->set('{name}', $row['user_search_pref']);
						if($row['user_photo'])
							$tpl->set('{ava}', '/uploads/users/'.$row['suser_id'].'/50_'.$row['user_photo']);
						else
							$tpl->set('{ava}', '{theme}/images/no_ava_50.png');
							
						$tpl->set('[no-agent]', '');
						$tpl->set('[/no-agent]', '');
					}
					
					if($row_answer['auser_id'] == $user_id OR $user_info['user_group'] == 4  OR $user_info['user_group'] ==1  OR $user_info['user_group'] ==3){
						$tpl->set('[owner]', '');
						$tpl->set('[/owner]', '');
					} else
						$tpl->set_block("'\\[owner\\](.*?)\\[/owner\\]'si","");
					
					$tpl->set('{id}', $row_answer['id']);
					$tpl->set('{uid}', $user_id);
					$tpl->set('{answer}', stripslashes($row_answer['answer']));
					megaDate($row_answer['adate']);
					$tpl->compile('answers');
				}
				
				$tpl->load_template('support/show.tpl');
				$tpl->set('{title}', stripslashes($row['title']));
				$tpl->set('{question}', stripslashes($row['question']));
				$tpl->set('{qid}', $qid);
				megaDate($row['sdate']);
				
				if($row['sfor_user_id'] == $row['suser_id'])
					$tpl->set('{status}', 'Вопрос ожидает обработки.');
				else
					$tpl->set('{status}', 'Есть ответ.');
				
				$tpl->set('{name}', $row['user_search_pref']);
				
				if($user_info['user_group'] == 4  OR $user_info['user_group'] ==1  OR $user_info['user_group'] ==3)
					$tpl->set('{uid}', $row['suser_id']);
				else
					$tpl->set('{uid}', $user_id);
				
				if($row['user_photo'])
					$tpl->set('{ava}', '/uploads/users/'.$row['suser_id'].'/50_'.$row['user_photo']);
				else
					$tpl->set('{ava}', '{theme}/images/no_ava_50.png');
				
				$tpl->set('{answers}', $tpl->result['answers']);
				$tpl->compile('content');
			} else {
				$speedbar = $lang['error'];
				msgbox('', $lang['support_no_quest'], 'info');
			}
		break;
			
			//################### Просмотр всех вопросов ###################//
			default:
				if($user_info['user_support'] AND $user_info['user_group'] != 4)
					$db->query("UPDATE `".PREFIX."_users` SET user_support = 0 WHERE user_id = '{$user_id}'");
				
				if($user_info['user_group'] == 4  OR $user_info['user_group'] ==1  OR $user_info['user_group'] ==3){
					$sql_where = "ORDER by `sfor_user_id` DESC";
					$sql_where_cnt = "";
				} else {
					$sql_where = "AND tb1.suser_id = '{$user_id}' ORDER by `sdate` DESC";
					$sql_where_cnt = "WHERE suser_id = '{$user_id}'";
				}
				
				$sql_ = $db->super_query("SELECT SQL_CALC_FOUND_ROWS tb1.id, title, suser_id, sfor_user_id, sdate, tb2.user_photo, user_search_pref FROM `".PREFIX."_support` tb1, `".PREFIX."_users` tb2 WHERE tb1.suser_id = tb2.user_id {$sql_where} LIMIT {$limit_page}, {$gcount}", 1);
				
				if($sql_)
					$count = $db->super_query("SELECT COUNT(*) AS cnt FROM `".PREFIX."_support` {$sql_where_cnt}");
					
				$tpl->load_template('support/head.tpl');
				if($sql_)
					if($user_info['user_group'] == 4  OR $user_info['user_group'] ==1  OR $user_info['user_group'] ==3)
						$tpl->set('{cnt}', $count['cnt'].' '.gram_record($count['cnt'], 'questions'));
					else
						$tpl->set('{cnt}', 'Вы задали '.$count['cnt'].' '.gram_record($count['cnt'], 'questions'));
				else
					$tpl->set('{cnt}', '');

				$tpl->compile('info');
				
				if($sql_){
					$tpl->load_template('support/question.tpl');
					foreach($sql_ as $row){
						$tpl->set('{title}', stripslashes($row['title']));
						megaDate($row['sdate']);
						if($row['sfor_user_id'] == $row['suser_id'] OR $user_info['user_group'] == 4  OR $user_info['user_group'] ==1  OR $user_info['user_group'] ==3){
							if($row['sfor_user_id'] == $row['suser_id'])
								$tpl->set('{status}', 'Вопрос ожидает обработки.');
							else
								$tpl->set('{status}', 'Есть ответ.');
							$tpl->set('{name}', $row['user_search_pref']);
							$tpl->set('{answer}', '');
							if($row['user_photo'])
								$tpl->set('{ava}', '/uploads/users/'.$row['suser_id'].'/50_'.$row['user_photo']);
							else
								$tpl->set('{ava}', '{theme}/images/no_ava_50.png');
						} else {
							$tpl->set('{name}', 'Агент поддержки');
							$tpl->set('{status}', 'Есть ответ.');
							$tpl->set('{ava}', '{theme}/images/support.png');
							$tpl->set('{answer}', 'ответил');
						}
						$tpl->set('{qid}', $row['id']);
						$tpl->compile('content');
					}
					navigation($gcount, $count['cnt'], '/support?page=');
				} else
					if($user_info['user_group'] == 4  OR $user_info['user_group'] ==1  OR $user_info['user_group'] ==3)
						msgbox('', $lang['support_no_quest3'], 'info_2');
					else
						msgbox('', $lang['support_no_quest2'], 'info_2');
	}
	$tpl->clear();
	$db->free();
} else {
	$user_speedbar = $lang['no_infooo'];
	msgbox('', $lang['not_logged'], 'info');
}
?>
Link to comment
Share on other sites

 

Хм... Не знаю, у меня всё прекрасно. 

 

Тогда попробуй удалить всё из файла support.php из папки /system/modules/

и вставь это:

<?php
/* 
	Appointment: Помощь
	File: support.php 
	Author: f0rt1 
	Engine: Vii Engine
	Copyright: NiceWeb Group (с) 2011
	e-mail: [email protected]
	URL: http://www.niceweb.in.ua/
	ICQ: 427-825-959
	Данный код защищен авторскими правами
*/
if(!defined('MOZG'))
	die('Hacking attempt!');

if($ajax == 'yes')
	NoAjaxQuery();

if($logged){
	$act = $_GET['act'];
	$user_id = $user_info['user_id'];
	$metatags['title'] = $lang['support_title'];

	if($_GET['page'] > 0) $page = intval($_GET['page']); else $page = 1;
	$gcount = 20;
	$limit_page = ($page-1)*$gcount;

	switch($act){
		
		//################### Страница создание нового вопроса  ###################//
		case "new":
			$mobile_speedbar = 'Новый вопрос';

			$tpl->load_template('support/new.tpl');
			$tpl->set('{uid}', $user_id);
			$tpl->compile('content');
		break;
		
		//################### Отправка нового вопроса  ###################//
		case "send":
			NoAjaxQuery();
			$title = ajax_utf8(textFilter($_POST['title']), false, true);
			$question = ajax_utf8(textFilter($_POST['question']));
			$limitTime = $server_time-3600;
			$rowLast = $db->super_query("SELECT COUNT(*) AS cnt FROM `".PREFIX."_support` WHERE сdate > '{$limitTime}'");
			if(!$rowLast['cnt'] AND isset($title) AND !empty($title) AND isset($question) AND !empty($question) AND $user_info['user_group'] != 4){
				$question = preg_replace('`(http(?:s)?://\w+[^\s\[\]\<]+)`i', '<!--link:$1--><a href="$1" target="_blank">$1</a><!--/link-->', $question);
				$db->query("INSERT INTO `".PREFIX."_support` SET title = '{$title}', question = '{$question}', suser_id = '{$user_id}', sfor_user_id = '{$user_id}', sdate = '{$server_time}', сdate = '{$server_time}'");
				$dbid = $db->insert_id();
				$row = $db->super_query("SELECT user_search_pref, user_photo FROM `".PREFIX."_users` WHERE user_id = '{$user_id}'");
				$tpl->load_template('support/show.tpl');
				$tpl->set('{title}', stripslashes($title));
				$tpl->set('{question}', stripslashes($question));
				$tpl->set('{qid}', $dbid);
				megaDate($server_time);
				$tpl->set('{status}', 'Вопрос ожидает обработки.');
				$tpl->set('{name}', $row['user_search_pref']);
				$tpl->set('{uid}', $user_id);
				if($row['user_photo'])
					$tpl->set('{ava}', '/uploads/users/'.$user_id.'/50_'.$row['user_photo']);
				else
					$tpl->set('{ava}', '{theme}/images/no_ava_50.png');
				$tpl->set('{answers}', '');
				$tpl->compile('content');
				AjaxTpl();
				echo 'r|x'.$dbid;
			} else
				echo 'limit';
			
			die();
		break;
		
		//################### Удаление вопроса  ###################//
		case "delet":
			NoAjaxQuery();
			$qid = intval($_POST['qid']);
			$row = $db->super_query("SELECT suser_id FROM `".PREFIX."_support` WHERE id = '{$qid}'");
			if($row['suser_id'] == $user_id OR $user_info['user_group'] == 4  OR $user_info['user_group'] ==1  OR $user_info['user_group'] ==3){
				$db->query("DELETE FROM `".PREFIX."_support` WHERE id = '{$qid}'");
				$db->query("DELETE FROM `".PREFIX."_support_answers` WHERE qid = '{$qid}'");
			}
			die();
		break;
		
		//################### Удаление Ответа  ###################//
		case "delet_answer":
			NoAjaxQuery();
			$id = intval($_POST['id']);
			$row = $db->super_query("SELECT auser_id FROM `".PREFIX."_support_answers` WHERE id = '{$id}'");
			if($row['auser_id'] == $user_id OR $user_info['user_group'] == 4  OR $user_info['user_group'] ==1  OR $user_info['user_group'] ==3)
				$db->query("DELETE FROM `".PREFIX."_support_answers` WHERE id = '{$id}'");

			die();
		break;
		
		//################### Закрытие вопроса  ###################//
		case "close":
			NoAjaxQuery();
			$qid = intval($_POST['qid']);
			if($user_info['user_group'] == 4  OR $user_info['user_group'] ==1  OR $user_info['user_group'] ==3){
				$row = $db->super_query("SELECT COUNT(*) AS cnt FROM `".PREFIX."_support` WHERE id = '{$qid}'");
				if($row['cnt'])
					$db->query("UPDATE `".PREFIX."_support` SET sfor_user_id = 0 WHERE id = '{$qid}'");
			}
			die();
		break;
		
		//################### Отправка ответа ###################//
		case "answer":
			NoAjaxQuery();
			$qid = intval($_POST['qid']);
			$answer = ajax_utf8(textFilter($_POST['answer']));
			$check = $db->super_query("SELECT suser_id FROM `".PREFIX."_support` WHERE id = '{$qid}'");
			if($check['suser_id'] == $user_id OR $user_info['user_group'] == 4  OR $user_info['user_group'] ==1  OR $user_info['user_group'] ==3 AND isset($answer) AND !empty($answer)){
				if($user_info['user_group'] == 4  OR $user_info['user_group'] ==1  OR $user_info['user_group'] ==3){
					$auser_id = 0;
					$db->query("UPDATE `".PREFIX."_users` SET user_support = user_support+1 WHERE user_id = '{$check['suser_id']}'");
				} else
					$auser_id = $user_id;
					
				$answer = preg_replace('`(http(?:s)?://\w+[^\s\[\]\<]+)`i', '<!--link:$1--><a href="$1" target="_blank">$1</a><!--/link-->', $answer);
				
				$db->query("INSERT INTO `".PREFIX."_support_answers` SET qid = '{$qid}', auser_id = '{$auser_id}', adate = '{$server_time}', agent_id='{$user_id}', answer = '{$answer}'");
				$db->query("UPDATE `".PREFIX."_support` SET sfor_user_id = '{$auser_id}', sdate = '{$server_time}' WHERE id = '{$qid}'");
				
				$row = $db->super_query("SELECT user_search_pref, user_photo FROM `".PREFIX."_users` WHERE user_id = '{$user_id}'");
				
				$tpl->load_template('support/answer.tpl');
				if(!$auser_id){
					$tpl->set('{name}', 'Агент поддержки #'.$user_id);
					$tpl->set('{ava}', '{theme}/images/support.png');
					$tpl->set_block("'\\[no-agent\\](.*?)\\[/no-agent\\]'si","");
				} else {
					$tpl->set('{name}', $row['user_search_pref']);
					if($row['user_photo'])
						$tpl->set('{ava}', '/uploads/users/'.$user_id.'/50_'.$row['user_photo']);
					else
						$tpl->set('{ava}', '{theme}/images/no_ava_50.png');
							
					$tpl->set('[no-agent]', '');
					$tpl->set('[/no-agent]', '');
				}
					
				if($auser_id == $user_id OR $user_info['user_group'] == 4  OR $user_info['user_group'] ==1  OR $user_info['user_group'] ==3){
					$tpl->set('[owner]', '');
					$tpl->set('[/owner]', '');
				} else
					$tpl->set_block("'\\[owner\\](.*?)\\[/owner\\]'si","");
					
				$tpl->set('{uid}', $user_id);
				$tpl->set('{answer}', stripslashes($answer));
				megaDate($server_time);
				$tpl->compile('content');
				AjaxTpl();
			}
			die();
		break;
		
		//################### Просмотр вопроса ###################//
		case "show":
			$qid = intval($_GET['qid']);

			if($user_info['user_group'] == 4  OR $user_info['user_group'] ==1  OR $user_info['user_group'] ==3)
				$sql_where = "";
			else
				$sql_where = "AND tb1.suser_id = '{$user_id}'";

			$row = $db->super_query("SELECT tb1.id, title, question, sdate, sfor_user_id, suser_id, tb2.user_search_pref, user_photo FROM `".PREFIX."_support` tb1, `".PREFIX."_users` tb2 WHERE tb1.id = '{$qid}' AND tb1.suser_id = tb2.user_id {$sql_where}");
			if($row){
				//Выводим ответы
				$sql_answer = $db->super_query("SELECT SQL_CALC_FOUND_ROWS id, adate, answer, auser_id, agent_id FROM `".PREFIX."_support_answers` WHERE qid = '{$qid}' ORDER by `adate` ASC LIMIT 0, 100", 1);
				
				$tpl->load_template('support/answer.tpl');
				foreach($sql_answer as $row_answer){
					if(!$row_answer['auser_id']){
						$tpl->set('{name}', 'Агент поддержки #'.$row_answer['agent_id']);
						$tpl->set('{ava}', '{theme}/images/support.png');
						$tpl->set_block("'\\[no-agent\\](.*?)\\[/no-agent\\]'si","");
					} else {
						$tpl->set('{name}', $row['user_search_pref']);
						if($row['user_photo'])
							$tpl->set('{ava}', '/uploads/users/'.$row['suser_id'].'/50_'.$row['user_photo']);
						else
							$tpl->set('{ava}', '{theme}/images/no_ava_50.png');
							
						$tpl->set('[no-agent]', '');
						$tpl->set('[/no-agent]', '');
					}
					
					if($row_answer['auser_id'] == $user_id OR $user_info['user_group'] == 4  OR $user_info['user_group'] ==1  OR $user_info['user_group'] ==3){
						$tpl->set('[owner]', '');
						$tpl->set('[/owner]', '');
					} else
						$tpl->set_block("'\\[owner\\](.*?)\\[/owner\\]'si","");
					
					$tpl->set('{id}', $row_answer['id']);
					$tpl->set('{uid}', $user_id);
					$tpl->set('{answer}', stripslashes($row_answer['answer']));
					megaDate($row_answer['adate']);
					$tpl->compile('answers');
				}
				
				$tpl->load_template('support/show.tpl');
				$tpl->set('{title}', stripslashes($row['title']));
				$tpl->set('{question}', stripslashes($row['question']));
				$tpl->set('{qid}', $qid);
				megaDate($row['sdate']);
				
				if($row['sfor_user_id'] == $row['suser_id'])
					$tpl->set('{status}', 'Вопрос ожидает обработки.');
				else
					$tpl->set('{status}', 'Есть ответ.');
				
				$tpl->set('{name}', $row['user_search_pref']);
				
				if($user_info['user_group'] == 4  OR $user_info['user_group'] ==1  OR $user_info['user_group'] ==3)
					$tpl->set('{uid}', $row['suser_id']);
				else
					$tpl->set('{uid}', $user_id);
				
				if($row['user_photo'])
					$tpl->set('{ava}', '/uploads/users/'.$row['suser_id'].'/50_'.$row['user_photo']);
				else
					$tpl->set('{ava}', '{theme}/images/no_ava_50.png');
				
				$tpl->set('{answers}', $tpl->result['answers']);
				$tpl->compile('content');
			} else {
				$speedbar = $lang['error'];
				msgbox('', $lang['support_no_quest'], 'info');
			}
		break;
			
			//################### Просмотр всех вопросов ###################//
			default:
				if($user_info['user_support'] AND $user_info['user_group'] != 4)
					$db->query("UPDATE `".PREFIX."_users` SET user_support = 0 WHERE user_id = '{$user_id}'");
				
				if($user_info['user_group'] == 4  OR $user_info['user_group'] ==1  OR $user_info['user_group'] ==3){
					$sql_where = "ORDER by `sfor_user_id` DESC";
					$sql_where_cnt = "";
				} else {
					$sql_where = "AND tb1.suser_id = '{$user_id}' ORDER by `sdate` DESC";
					$sql_where_cnt = "WHERE suser_id = '{$user_id}'";
				}
				
				$sql_ = $db->super_query("SELECT SQL_CALC_FOUND_ROWS tb1.id, title, suser_id, sfor_user_id, sdate, tb2.user_photo, user_search_pref FROM `".PREFIX."_support` tb1, `".PREFIX."_users` tb2 WHERE tb1.suser_id = tb2.user_id {$sql_where} LIMIT {$limit_page}, {$gcount}", 1);
				
				if($sql_)
					$count = $db->super_query("SELECT COUNT(*) AS cnt FROM `".PREFIX."_support` {$sql_where_cnt}");
					
				$tpl->load_template('support/head.tpl');
				if($sql_)
					if($user_info['user_group'] == 4  OR $user_info['user_group'] ==1  OR $user_info['user_group'] ==3)
						$tpl->set('{cnt}', $count['cnt'].' '.gram_record($count['cnt'], 'questions'));
					else
						$tpl->set('{cnt}', 'Вы задали '.$count['cnt'].' '.gram_record($count['cnt'], 'questions'));
				else
					$tpl->set('{cnt}', '');

				$tpl->compile('info');
				
				if($sql_){
					$tpl->load_template('support/question.tpl');
					foreach($sql_ as $row){
						$tpl->set('{title}', stripslashes($row['title']));
						megaDate($row['sdate']);
						if($row['sfor_user_id'] == $row['suser_id'] OR $user_info['user_group'] == 4  OR $user_info['user_group'] ==1  OR $user_info['user_group'] ==3){
							if($row['sfor_user_id'] == $row['suser_id'])
								$tpl->set('{status}', 'Вопрос ожидает обработки.');
							else
								$tpl->set('{status}', 'Есть ответ.');
							$tpl->set('{name}', $row['user_search_pref']);
							$tpl->set('{answer}', '');
							if($row['user_photo'])
								$tpl->set('{ava}', '/uploads/users/'.$row['suser_id'].'/50_'.$row['user_photo']);
							else
								$tpl->set('{ava}', '{theme}/images/no_ava_50.png');
						} else {
							$tpl->set('{name}', 'Агент поддержки');
							$tpl->set('{status}', 'Есть ответ.');
							$tpl->set('{ava}', '{theme}/images/support.png');
							$tpl->set('{answer}', 'ответил');
						}
						$tpl->set('{qid}', $row['id']);
						$tpl->compile('content');
					}
					navigation($gcount, $count['cnt'], '/support?page=');
				} else
					if($user_info['user_group'] == 4  OR $user_info['user_group'] ==1  OR $user_info['user_group'] ==3)
						msgbox('', $lang['support_no_quest3'], 'info_2');
					else
						msgbox('', $lang['support_no_quest2'], 'info_2');
	}
	$tpl->clear();
	$db->free();
} else {
	$user_speedbar = $lang['no_infooo'];
	msgbox('', $lang['not_logged'], 'info');
}
?>

 

Стало получше , теперь я вижу вопросы от пользователей , но не вижу статуса : есть ответ , ожидает ответа . И когда нажимаю на сам вопрос появляется этот текст "Unknown column 'agent_id' in 'field list' Ошибка сервера, попробуйте обновить страницу позже."

Link to comment
Share on other sites

  • 2 weeks later...

Стало получше , теперь я вижу вопросы от пользователей , но не вижу статуса : есть ответ , ожидает ответа . И когда нажимаю на сам вопрос появляется этот текст "Unknown column 'agent_id' in 'field list' Ошибка сервера, попробуйте обновить страницу позже."

Мой косяк. 

В базе найди  vii_support_answers и создай значение agent_id int(11)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

×
×
  • Create New...