|
|
Модератор форума: Yuri_G |
Сообщество uCoz Модули uCoz Дополнительные функции Приватные сообщения для мини-чата |
Приватные сообщения для мини-чата |
Собственно, думал об этом каждый пользователь системы uCoz. Кто-то нашел решение сторонними скриптами. Кто-то довольствуется тем, что есть. А кто-то хочет помочь системе коллективным решением... чтобы система стала еще привлекательнее, еще функциональнее.
Я застопорился на последнем шаге - условных операторах. Я в них не силен, поэтому, прошу у вас помощи. Возможно, я изначально выбрал ошибочный путь, вот каким путем я пошел: (ПЕРЕД ВАМИ НЕ РЕШЕНИЕ ЗАДАЧИ, А ПОПЫТКА РЕШЕНИЯ ЗАДАЧИ) Приватность начинается с функции "ответить пользователю", которая находится в шаблоне мини-чата "Форма добавления сообщений" и реализована на юКоз следующим манером: Code <a href="javascript:void('Apply to')" onclick="parent.window.document.getElementById('mchatMsgF').focus();parent.window.document.getElementById('mchatMsgF').value+='[i]$NAME$[/i]';return false;"><b>$NAME$</b></a> где: mchatMsgF - id текстового поля мини-чата для отправки сообщения (textarea). $NAME$ - имя в чате. И вот тут пришла мысль создать приватность при помощи условных операторов. Шаг 1 Тогда я активировал Дополнительное поле 1 (Панель управления > Мини-чат > Настройки модуля > галочка в левой клетке напротив доп.поля 1) и переназвал его "Приватное сообщение для пользователя" (там же, ниже в строке - "Переименование стандартного поля "Доп. поле 1""): Шаг 2. Дополнительное поле 1 в мини-чате обозначается не системным кодом $OTHER1$ а другим кодом - $CUSTOM1$. Также известен id доп. поля 1 - mchatC1F. Теперь вписываем в функцию id, а также убираем у кода $NAME$ i и /i с квадратными скобками с обоих сторон и получаем: Code <a href="javascript:void('Apply to')" onclick="parent.window.document.getElementById('mchatC1F').focus();parent.window.document.getElementById('mchatC1F').value+='$NAME$';return false;"><b>$NAME$</b></a> Сохраняем изменения. Мы добились того, что нажимая в мини-чате на любое имя (ник) этот самый ник будет вводиться не в текстовое поле (textarea, которое нельзя вызвать при помощи системного кода), а в новое дополнительное поле 1 у которого есть собственный системный код $CUSTOM1$. Шаг 3. Именно теперь мы сможем вставить системный код $CUSTOM1$ в условный оператор, который подгоним под свои нужды (условия), а именно: Показывать приватное сообщение только двум участникам: отправителю и получателю сообщения. ...И вот тут-то я застрял... Кто силен в условных операторах - помогите, плиз! Кто пошел другим путем - намекните... Прикрепления:
4585790.jpg
(21.5 Kb)
Верстаю сайты на uCoz от 500 ք (Блочная верстка на HTML5)
ВКонтакте: http://vk.com/vg_forex Мой Мир: http://my.mail.ru/mail/vg_forex Сообщение отредактировал Owner1919 - Пятница, 05 Окт 2012, 22:07:23
|
Не могу я смотреть на вашу опустевшую тему, попытаюсь принять участие. Согласно вашей логике, должно быть два значения, которые будут регулировать показ сообщения. Если должно быть два человека, которые могут просматривать эти сообщения, то должно быть два параметра, которые задают эти два значения.
Первый параметр - отправитель. Скорее всего здесь нужно применять какой-нибудь UID или перенести определённое значение с профиля. Скрипт переноса имеется... Второй параметр - получатель. Его ник я советую вписать во второе дополнительное поле, оно же $CUSTOM2$ Таким образом, у вас получится следующее: Code <?if($USERNAME$='$CUSTOM2$')?><?if(ваше имя=ваше имя)?>$CUSTOM1$<?endif?><?endif?> Имя отправителя можно выражать по-разному, но думаю, что принцип вы поняли. Очень жду вашего ответа, ваших идей... С Уважением, Безымянный |
| |||
| |||