privatemsg

notifications и несколько send methods

6 марта 2012 в 12:59

Всем добрый день,

у меня возник вопрос. Поставил модули notifications, messaging, sms framework, privatemsg. Теперь можно подписываться на новые материалы и получать смс или приватные сообщения (в зависимости от того, какой стоит send method). А вот как бы так сделать, чтобы можно было получить и смс и приватные сообщения одновременно?

0 Thanks

Оповещение о новом сообщении privatemsg в Заголовке страницы

25 ноября 2011 в 4:55

У кого стоит Privatemsg + pmgrowl предлагаю дополнить фунцией оповещения о новом сообщении по типу вКонтакта, одноклассников и т.п. Т.е. "миганием" строки в заголовке браузера. Не будучи специалистом, сделал сам, поковырявшись в интернете...

Итак, для начала определим, есть ли у нас необходимая библиотека на сайте. Откроем код страницы своего сайта, и ищем по поиску слово "titlealert". Если есть, то нам еще проще будет (у меня было)... Если нет, то качаем отсюда: http://heyman.info/2010/sep/30/jquery-title-alert/ этот плагин, и добавляем из него файл jquery.titlealert.js в папку модуля pmgrowl, а в файл pmgrowl.module добавляем строку
drupal_add_js(drupal_get_path('module', 'pmgrowl') .'/jquery.titlealert.js', 'module'); где-нибудь в 18 строке.

Теперь осталось добавить кое-что в файл pmgrowl.js после строки
Drupal.pmGrowl.alreadyGrowled.push(entry['mid']);

А добавляем вот что:

$.titleAlert("***New message!***", {
    requireBlur:true,
    stopOnFocus:true,
    interval:400
});

Надпись можно и на русском написать, но позаботьтесь о том, чтобы файл был сохранен в соответствующей кодировке (у меня utf-8)

0 Thanks

Проблема с отображением BUEditor в Privatemsg

13 августа 2011 в 21:01

У меня не отображается BUEditor (7.x-1.2) при написании личных сообщений (модуль Privatemsg 7.x-1.2). Это нормально? Как сделать, чтобы отображался?

0 Thanks

Подправить модуль PRIVATEMSG и PMGROWL

8 июля 2011 в 20:35

Нужно внести изменения в модуль [module=privatemsg]. Что нужно сделать:

Когда нажимаем на ссылку http://mysite.kz/messages должен быть такой вид оформления - а-ля facebook

Где круглишок - пометить прочитанным, а крестик - удалить сообщение. Удаление должно быть при помощи аякса - т.е. нажал и удалилось.

А при нажатии на новое сообщение должно всплывать окно

Скрепка - прикрепить файл (Этот функционал есть в privatemsg модуле)

А также автозаполнение (Также есть в функционале модуля privatemsg) но нужно вывести content_profile field_photo - т.е. с изображением пользователя (Через content profile работают профили на моем сайте и в качестве аватара использовал imagefield).

После отправки сообщения попадаем на диалог между пользователями (В privatemsg уже все заложено это)

Итог: удаление, редактирование и отправка сообщений на AJAX должна быть.


$budget '250$';
print 
'Оплата за работу: '.$budget;
?>
0 Thanks

Уведомления о личных сообщениях

2 июля 2011 в 8:59

Для оперативного извещения пользователей о новых личных сообщениях использую pmgrowl, но он мне очень не нравится, куча косяков.
Подскажите плз, есть ли альтернативы?

Главное, что должен уметь делать модуль - уведомлять пользователя о новых личных сообщениях (privatemsg) без перезагрузки страницы.

0 Thanks

Темизация Privatemsg (отдельно входящие и исходящие)

3 мая 2011 в 21:19

Нужно сделать 2 отдельные страницы - Входящие и Исходящие и затемизировать. Прочитал документацию, прошелся по модулю, понял, что темизируется форма (через template.php), а вот как отделить входящие от исходящих. Есть несколько мыслей по поводу: сделать в своем модуле свои запросы к базе через хитрую функцию privatemsg или в template.php строки, в которых юзер автор (для входящих), убирать и не показывать. Как-то по-индусски получается... Кто сталкивался, подскажите правильный путь пожалуйста.
Заранее спасибо.

0 Thanks

Автоочистка личных сообщений старше чем... с помощью крон. Помогите запустить.

11 февраля 2011 в 14:55

на drupal.org нашел способ автоочистки личных сообщений старше чем... с помощью крон.

Перевод:
Нужно следующий скрипт заставить исполнятся при запуске крона. Он использует функцию в модуле PM, которая устанавливает поле pm_index.deleted для сообщения на "1", определяя его статус как "удаленное". Если этот статус установлен, сообщение в дальнейшем будет удалено функцией "Flush deleted messages" (Очистить удаленные сообщения) согласно установкам модуля PM при запуске крона.

<?php
$sql 
'SELECT mid FROM {pm_message} WHERE timestamp < %d';

// Messages older than $timestamp are deleted, example, 90 days ago.
$timestamp time() - (90 86400); 

$result db_query($sql$timestamp);

// Fetch over all found messages and mark them as deleted
while ($row db_fetch_object($result)) {
  
privatemsg_message_change_delete($row->midTRUE);
}
?>

Если старых сообений очень много, может возникнуть необходимость ограничить количество обрабатываемых сообщений, по крайней мере первые несколько запусков крона. В таком случае следует использовать функцию "db_query_range" вместо "db_query". Например:

<?php
$result 
db_query_range($sql$timestamp0500); // limit to 500 per run
?>

Вопрос к знатокам - как запустить этот скрипт? Как я понимаю, надо создать простенький модуль, назовем его напр. pmcleaner. В общем алгоритм описан - создаем описание в pmcleaner.info по правилам друпала и сам скрипт помещаем в файл pmcleaner.module.

0 Thanks

Privatemsg+pmgrowl

6 сентября 2010 в 7:22

Недавно поставил на сайт такую связку, и остался доволен. Одна проблема: почему-то на всплывашке нет ника отправителя... есть ссылки, тема и даже сам текст, но почему нет автора? Приходится по смыслу написанного догадываться - кто это мог написать...
Не подскажете - что можно подкрутить?

0 Thanks

Проблема со сниппетом для Privatemsg

20 августа 2010 в 23:03

Всем привет.
Есть сниппет для модуля privatemsg, использующий вызов privatemsg_unread_count для отображения и подсчета новых приватных сообщений.

<?php
      $count 
privatemsg_unread_count();
      if (
$count == 0) {
       print 
t'<span class="no_new_prvtmsg">Новых <a href="/messages" class="no_new_prvtmsg-link" >сообщений</a> нет</span>' );
      }
      if (
$count == 1) {
          print 
'<span class="new_prvtmsg">';
        print 
l'У Вас ' . (int)privatemsg_unread_count() .' новое сообщение' "messages",  array('title' => 'View Inbox'));
        print 
'</span>';
      }
      if (
$count >> 1) {
        print 
'<span class="new_prvtmsg">';
        print 
l'У Вас ' . (int)privatemsg_unread_count() .' новых сообщения' "messages",  array('title' => 'View Inbox'));
          print 
'</span>';
      }
    
?>

Все работает отлично, за исключением одного момента.
Строчку "Новых сообщений нет" он возвращает для всех ролей , включая анонимусов.
Как добавить проверку на регистрацию пользователя и незарегистрированным не показывать эту строчку?

Также еще вопрос, как правильно прописать этот сниппет в template.php как функцию и вызывать ее в темплейт page.tpl.php одной строчкой типа
<?php print my_prvtmsg_counter(); ?>

Спасибо.

0 Thanks

Уведомления в privatemsg

12 августа 2010 в 11:36

Люди добрые, подскажите, как сделать так, чтобы при новом сообщении вылазило какое-нибудь кричащее сообщение... или хотябы, чтобы пункт меню Сообщения (1 новое) Мигал и краснел? Пробовал это сделать в файле перевода - не получилось почему-то, ничего не поменялось :(

0 Thanks

Ограничить использование PrivateMsg

2 августа 2010 в 13:44

Скажем, разрешить пользоваться личкой только пользователям, имеющим не менее 5 нод и/или 10 комментов, и/или зарегистрировавшимся на сайте не менее недели назад.
Как такое можно сделать?
В стандартных настройках модуля ничего похожего не нашел...
Вроде как у PrivateMsg есть свое API, кто-нибудь с ним разбирался?

0 Thanks

Модуль рассылки сообщений от админа к пользователям!

4 июня 2010 в 21:57

Нужен модуль, который позволял бы администратору отправлять сообщения пользователям: одному пользователю, определенной группе (группа формируется динамически по определенному критерию) или всем пользователям.
Модуль privatemsg близок к требуемумо, но там нет возможности отправлять сообщения по граппум.
Что можете посоветовать?

0 Thanks

Темизация модуля PrivateMsg

5 мая 2010 в 22:20

Нужно убрать одну вкладку (Все сообщения) в сообщениях,в других вкладках (Входящие и Отправленные) переставить местами колонки. Как это сделать?

0 Thanks

сообщения Privatemsg в блоке

18 апреля 2010 в 15:26

Как можно изменить вывод сообщения "У вас 1 непрочитаное сообщение" которое выводится стандартно в вверху ноды чтобы оно появлялось например в блоке региона header?

0 Thanks

privatemsg 3.0 + drupal 5.7 + темизация модуля

12 февраля 2010 в 16:21

беру какую-нибудь функцию и копирую в template.php, типа:

function v2_privatemsg_cur_folder_form($folders, $current_folder) {
  global $user;

  foreach ($folders as $folder) {
    $options[$folder['fid']] = $folder['name'];
  }

  $form['header'] = array(
    '#type' => 'fieldset',
    '#prefix' => '<div class="container-inline">',
    '#suffix' => '</div>',
  );
  $form['header']['folder_select'] = array(
    '#type' => 'select',
    '#title' => t('Current folder'),
    '#options' => $options,
    '#default_value' => $current_folder,
    '#attributes' => array('class' => 'pm-add-folder-select'),
  );
  $form['header']['go_folder'] = array(
    '#type' => 'submit',
    '#value' => t('Go'),
    '#attributes' => array('class' => 'js-hide'),
  );
  $actor = $current_folder == 1 ? 'author' : 'recipient';
  $result = db_query("SELECT DISTINCT type FROM {privatemsg} WHERE folder = %d AND {$actor}_del = 0 AND {$actor} = %d", $current_folder, $user->uid);
  $types = array(
    '_all' => t('All'),
    '_read' => t('Read'),
    '_unread' => t('Unread'),
    '_none' => t('None'),
    '_invert' => t('Invert'),
    '_privatemsg_delimiter' => '----------------',
    'all types' => t('All types'),
  );
  $filter_types = array('all types' => t('All types'));
  while ($t = db_fetch_object($result)) {
    $type = check_plain($t->type);
    $types[$type] = $type;
    $filter_types[$type] = $type;
  }
  $form['header']['type'] = array(
    '#type' => 'select',
    '#title' => t('Select'),
    '#options' => $types,

0 Thanks

Private messages: ссылка из письма + пользователь не залогинился = "Страница не найдена"

18 декабря 2009 в 17:03

Успешно использую модуль Privatemsg. Одна проблема: когда пользователь получает уведомление о ЛС на e-mail, открывает ссылку на сообщение (http://www.rosnasledie.ru/messages/view/11), если он предварительно не залогинился, то его выкидывает на страницу 404 "Страница не найдена". У меня она, оказывается, даже без колонок (блок "логин" в колонке). Но не в этом дело. Колонки можно сделать.

0 Thanks

Релиз модуля личных сообщений

24 ноября 2009 в 11:39

Вчера было объявлено в issue готов релиз модуля Privatemsg. В анонсе содержится просьба скачать текущую 6-dev версию и протестировать перед релизом, а так же есть неделя на правку багов и добавления файлов переводов.
Думаю, что многие им уже пользуются, так что давай-те поработаем над правильным переводом, который будет включен в релиз.

0 Thanks

[РЕШЕНО] Проблема с апгрейдом privatemsg

18 октября 2009 в 15:24

Здравствуйте, очень нужна ваша помощь.

Обновил сайт с 5 на 6ую версию друпала, но модуль privatemsg обновить корректно так и не удалось. Пробовал обновлять с последней версии под пятёрку, это privatemsg 3.0 на последнюю dev для шестёрки, на RC2 где было заявлено об апгрейде, на RC4 - везде возникали ошибки и переписки пользователей не переносились в новую версию.

Обновить до конца, без ошибок, удалось лишь на пропатченную версию которую мне дали в иссуях на друпал.орг, но после апгрейда у пользователей пропали все переписки, а их важно сохранить. Причем в новой таблице pm_messages они есть.

Для начала хочу спросить:
Сталкивались ли вы с апгрейдом этого модуля?
С какой на какую версию обновляли?
Сохранялись ли переписки пользователей?
На вскидку, сколько было приватных сообщений всего? У меня их чуть больше 67 000, таблица с ними весит 58 метров.

Позже допишу сюда ошибки которые возникали при обновлении, может быть сможете помочь...

0 Thanks

как изменять вывод разных страниц модуля Privatemsg

27 августа 2009 в 7:40

каким образом можно менять отображения разных страниц модуля Privatemsg? Например присок принятых сообщений от других пользователей сайта у меня должен выглядить так -




где документация по модулю Privatemsg?

0 Thanks

privatemsg, определение количества новых сообщений[РЕШЕНО]

4 июля 2009 в 19:19

нужно сделать новую менюшку с пунктом "Мои сообщения" с ссылкой на сообщения, чтобы оно работало так же хорошо как и в меню Navigation: при появлении новых сообщений, пункт меню становился таким: "Мои сообщения(1)", "Мои сообщения(count)"

0 Thanks