Next Generation CMS :: Форум поддержки

Заинтересовала наша система? Тогда этот форум для Вас!

Вы не зашли.

#1 2009-02-04 21:02:59

dutub
Участник
Зарегистрирован: 2009-02-04
Сообщений: 3
Рейтинг :   

Всплывающее окно

1) Можно ли сделать так, чтобы при добавлении комментария, щелкнув на значок смайлика, появлялись все остальные во всплывающем окне ( просто смайликов много)
2) Какой переменной в комментариях можно вывести колличество оставленных комментариев пользователем?
З.Ы. Сорри за ошибки... сплю ... neutral

Изменено dutub (2009-02-04 21:09:12)

Не в сети

#2 2009-02-05 03:43:00

vitaly
Администратор
Откуда Россия
Зарегистрирован: 2008-10-08
Сообщений: 2,823
Рейтинг :   118 

Re: Всплывающее окно

1. Можно. Кладёшь значок, вешаешь на событие onclick свой обработчик который включает/выключает отображение div'а в котором будут все смайлы.

2. Такой переменной нет, надо править двиг. Но править всего в 2х местах:
* engine/includes/comments.show.php, строки:

	if ($config['use_avatars']) {
		$sql = "select c.*, u.avatar from ".prefix."_comments c left join ".uprefix."_users u on c.author_id = u.id where c.post=".db_squote($newsID).($commID?(" and c.id=".db_squote($commID)):'')." order by c.id".($config['reverse_comments']?' desc':'');
	} else {
		$sql = "select c.* from ".prefix."_comments c WHERE c.post=".db_squote($newsID).($comment_id?(" and c.id=".db_squote($comment_id)):'')." order by c.id".($config['reverse_comments']?' desc':'');
	}

заменить на:

	if ($config['use_avatars']) {
		$sql = "select c.*, u.avatar, u.com from ".prefix."_comments c left join ".uprefix."_users u on c.author_id = u.id where c.post=".db_squote($newsID).($commID?(" and c.id=".db_squote($commID)):'')." order by c.id".($config['reverse_comments']?' desc':'');
	} else {
		$sql = "select c.* from ".prefix."_comments c WHERE c.post=".db_squote($newsID).($comment_id?(" and c.id=".db_squote($comment_id)):'')." order by c.id".($config['reverse_comments']?' desc':'');
	}

* после строк:

	foreach ($mysql->select($sql) as $row) {
		$comnum++;
		$tvars['vars']['id']		=	$row['postdate'];

добавляешь:

		$tvars['vars']['ucom']		=	$row['com'];

и у тебя в шаблоне comments.show.tpl появится переменная {ucom}


p.s. Эта переменная будет работать только при включенных аватарках.
Если их выключить - вместо кол-ва комментов будет выводиться пустота.

p.p.s. Не проверял, но 90% должно работать smile

Не в сети

#3 2009-02-05 07:14:57

dutub
Участник
Зарегистрирован: 2009-02-04
Сообщений: 3
Рейтинг :   

Re: Всплывающее окно

1. Можно по подробнее?(
2. Работает, спасибо.
3. Вопрос - как я понял комментарии редактировать нельзя?

Изменено dutub (2009-02-05 07:18:32)

Не в сети

#4 2009-02-05 11:48:25

vitaly
Администратор
Откуда Россия
Зарегистрирован: 2008-10-08
Сообщений: 2,823
Рейтинг :   118 

Re: Всплывающее окно

Делаешь что-то вроде:

1.

<a href="#" onclick="document.getElementById('smileDIV').style.display = (document.getElementById('smileDIV').style.display == 'block')?'none':'block'; return false;">Show/hide smilies</a>

<div id="smileDIV"> тут смайлы которые будут скрываться</div>

2. Отлично
3. Админы могут. Пользователи - нет.

Не в сети

#5 2009-02-05 12:46:57

dutub
Участник
Зарегистрирован: 2009-02-04
Сообщений: 3
Рейтинг :   

Re: Всплывающее окно

Спасибо большое за помощь, но:
1. Работает также, как и в первоначальном виде, т.е просто по нажатию кнопки показываются смайлы, а мне нужно всплывающее окно. Или я что-то не так делаю?!

Не в сети

#6 2009-02-10 20:09:34

bestxp
Участник
Откуда Россия
Зарегистрирован: 2008-10-13
Сообщений: 133
Рейтинг :   
Сайт

Re: Всплывающее окно

css дива опиши где оно будет и каким образом будет показываться, что туть не понятно?


senior php and js developer

Не в сети

Подвал раздела

Работает на FluxBB