Вы не зашли.
Wolverine, после регистрации пользователя через Loginza без указания мейла (я раньше, кстати, просил сделать запрет на такую регистрацию - доработать Loginzу) мне пришлось его мейл ставить в профиль ручками из админки движка (чтобы через pm он получал уведомления), но он вообще pm-ом не виден (пользователя с таким именем не существует), хотя из седжест-строки пользователей выбирается. Правда, у него дурацкий логин - цифры с точкой посередине. В чем причина? (индексные табл. в админке pm обновлял - результат ноль).
P.S. Похоже, в PM не корректно обрабатываются логины вида 1234.56 (всем другим шлет, даже тем, у кого из-за Loginza мейла нет)
Изменено Neo (2011-09-27 04:10:48)
Не в сети
Не в сети
Отличный плагин, есть к нему предложение:
1. Прямо на страничке выпадающий список из базы данных юзеров + кнопка "отправить всем" => выбор юзера которому отправляем. Потому что нужно каждый раз заходить в админку чтобы найти юзера которому будет отправляться сообщение.
2. Встроить в страничку плагин "кто он-лайн", а если скриптик дописать на страничку чтобы высвечивать юзеров которые заходят и выходят вообще бомба будет, т.е. общение в реальном времени с мониторингом.
3. Убрать возможность отправлять сообщение себе и несуществующему юзеру т.к. при нажатии отправить вылазит ошибка:
Fatal error: Class 'pm' not found in /ДОМЕН/engine/plugins/pm/pm.php on line 331
Wolverine, такое реально припаять к имеющимся дровам или я глубоко заблуждаюсь ?
Изменено kolia (2011-09-27 17:04:29)
Чем дальше в лес - тем ближе вылез
Не в сети
Я вставил код, который чуть повыше на странице, в users.tpl. Кнопа появилась, но при нажатии пишет "Ошибка: Вызываемый метод недоступен для плагина 'pm'".
Это, видимо, я что-то не понял, да? Поясните, пожалуйста.
Не в сети
Если мзменить в админке размер темы сообщения, то на странице создания нового сообщения ничего не изменится, так как в шаблоне четко прописан размер для input.
write.tpl
<input type="text" class="pm" size="40" name="title" tabindex="2" maxlength="50" />
Не в сети
Я думаю что логично было бы выводить значение из админки - [какое-то количество знаков] или в самом плагине обрезать тему, потому что если поставить максимальную длину заголовка, потом попробовать ответить на это сообщение, плагин допишет "Re:" в начале, и заголовок перестанет подходить под параметры ограничения длины данного поля, а тему не изменить так как она <hidden>.
Я для себя сделал чтобы все сообщение выводилось во время action=reply и чтобы тему можно было изменить. Мне кажется логичным видеть на что отвечаешь
Не в сети
Не в сети
Нашел вариант, если не верно поправьте:
Сверху (у меня в write.tpl):
<script type="text/javascript">
function add_comment(){
// First - delete previous error message
var perr;
if (perr=document.getElementById('error_message')) {
perr.parentNode.removeChild(perr);
}
// Now let's call AJAX comments add
var form = document.getElementById('comment');
//cajax.whattodo = 'append';
cajax.onShow("");[not-logged]
cajax.setVar("name", form.name.value);
cajax.setVar("password", form.password.value);
cajax.setVar("mail", form.mail.value);[captcha]
cajax.setVar("vcode", form.vcode.value); [/captcha][/not-logged]
cajax.setVar("content", form.content.value);
cajax.setVar("newsid", form.newsid.value);
cajax.setVar("ajax", "1");
cajax.setVar("json", "1");
cajax.requestFile = "{post_url}"; //+Math.random();
cajax.method = 'POST';
//cajax.element = 'new_comments';
cajax.onComplete = function() {
if (cajax.responseStatus[0] == 200) {
try {
var resRX = eval('('+cajax.response+')');
var nc;
if (resRX['rev'] && document.getElementById('new_comments_rev')) {
nc = document.getElementById('new_comments_rev');
} else {
nc = document.getElementById('new_comments');
}
nc.innerHTML += resRX['data'];
if (resRX['status']) {
// Added successfully!
form.content.value = '';
}
} catch (err) {
alert('Error parsing JSON output. Result: '+cajax.response);
}
} else {
alert('TX.fail: HTTP code '+cajax.responseStatus[0]);
}
[captcha]
reload_captcha();[/captcha]
}
cajax.runAJAX();
}
</script>
<script type="text/javascript" src="{admin_url}/includes/js/libsuggest.js"></script>
<form name="dle-comments-form" id="dle-comments-form" method="post" action="{php_self}?action=send" name="form" [ajax]onsubmit="add_comment(); return false;"[/ajax]>
В нужном месте:
{quicktags}
<textarea onclick="setNewField(this.name, document.getElementById( 'dle-comments-form' ))" name="content" id="content" rows="5" cols="65" tabindex="1" maxlength="3000"></textarea>
в pm.php (# show reply form и # show write message form)заменить:
'quicktags' => BBCodes('pm_content')
на
'quicktags' => BBCodes('content')
Изменено kolia (2011-12-28 17:53:08)
Чем дальше в лес - тем ближе вылез
Не в сети
Не в сети
Все работает, можешь проверить webscreen.org.ua
java я взял из плагина comments не в оригинале, а тот который был в шаблоне, там в коде немножко лишнего есть, но я не знаю как вырезать нужное, но работает.
Чем дальше в лес - тем ближе вылез
Не в сети