Уведомление о новом ЛС в виде конверта на jQuery.

Данный подфорум будет интересен веб-дизайнерам и администраторам форумов. Подфорум посвящен модификациям форума phpBB3. Здесь обсуждаются моды, расширения, хаки и скрипты для phpBB3 и phpBB 3.1.x.
Правила форума
Местная Конституция | FAQ - Часто задаваемые вопросы | Для новичков! | Реклама на форуме! | Публикация сообщений | Как вставить картинку или файл

Помните, поблагодарить автора за интересное сообщение, вы можете - нажав Изображение или повысить его репутацию - нажав Изображение в сообщении.
Прежде чем задать вопрос, воспользуйтесь поиском - возможно, что такая тема уже есть на форуме. За нарушение правил Ваш вопрос может быть удален без объяснения причин!
Аватара пользователя
elhouse
Автор темы
Russia
Председатель клуба
Председатель клуба
Генеральный директор
Генеральный директор

Уведомление о новом ЛС в виде конверта на jQuery.

Сообщение elhouse » 16 дек 2012, 21:39

По умолчанию сообщение о новом личном сообщение показывается в всплывающем окне и обычно эта функция в браузере заблокирована.
Можно конечно советовать всем пользователям разрешать в браузере показ всплывающих окон с вашего сайта, а можно пойти другим путём, сделать сообщение в модальном окне.

Нам потребуется небольшая правка скрипта, установленного в overall_header.html и CSS оформление модального окна в виде конверта на jQuery.

Открываем шаблон overall_header.html, ищем:

Код: Выделить всё

    <script type="text/javascript">
    // <![CDATA[
       var jump_page = '{LA_JUMP_PAGE}:';
       var on_page = '{ON_PAGE}';
       var per_page = '{PER_PAGE}';
       var base_url = '{A_BASE_URL}';
       var style_cookie = 'phpBBstyle';
       var style_cookie_settings = '{A_COOKIE_SETTINGS}';
       var onload_functions = new Array();
       var onunload_functions = new Array();

       <!-- IF S_USER_PM_POPUP -->
          if ({S_NEW_PM})
          {
             var url = '{UA_POPUP_PM}';
             window.open(url.replace(/&amp;/g, '&'), '_phpbbprivmsg', 'height=225,resizable=yes,scrollbars=yes, width=400');


Перед найденным ставим библиотеку jQuery:

Код: Выделить всё

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>


Если у вас уже установлена библиотека, то можно не ставить.

Две последних строки комментируем или удаляем:

Код: Выделить всё

             //var url = '{UA_POPUP_PM}';
             //window.open(url.replace(/&amp;/g, '&'), '_phpbbprivmsg', 'height=225,resizable=yes,scrollbars=yes, width=400');


Вместо них, или после них, ставим:

Код: Выделить всё

              $(document).ready(function() {
               $("body").append("<div id='form_popuppm'><div class='jq_popuppm'><p class='close_win'><a href='#' class='close' onClick='$(\"#form_popuppm\").hide()' title='{L_CLOSE_WINDOW}'>[x]</a></p><p class='new_message'>{L_NEW_MESSAGE}</p><p class='click_view'><a href='ucp.php?i=pm&folder=inbox' class='view' title='{L_GO}'>{L_GO}</a></p><cite>http://www.electric-house.ru</cite></div></div>");
             $("#form_popuppm").hide();
               $("#form_popuppm").show(1000);
              });


Открываем тему стиля common.css, в самый конец добавляем CSS нашего модального окна. Модальное окно в виде конверта:

Код: Выделить всё

    /* Popup PM */
    #form_popuppm {
       overflow: hidden;
       width: 530px;
       height: 446px;
       position: fixed;
       top: 0px;
       left: 0;
       -webkit-transition: all 1s ease-in-out .3s;
       -moz-transition: all 1s ease-in-out .3s;
       -o-transition: all 1s ease-in-out .3s;
       transition: all 1s ease-in-out .3s;
    }
       
    #form_popuppm:before {
       content:"";
       position: absolute;
       bottom: 128px;
       left: 0px;
       background: url("./images/popuppm-before.png"); /* Укажите путь до картинки */
       width: 530px;
       height: 316px;
    }
       
    #form_popuppm:after {
       content:"";
       position: absolute;
       bottom: 0px;
       left: 0;
       background:url("./images/popuppm-after.png"); /* Укажите путь до картинки */
       width: 530px;
       height: 260px;
    }

    #form_popuppm.hide:after, #form_popuppm.hide:before {
       display: none;
    }

    #form_popuppm:hover {
       height: 576px;
       top: -100px;
    }

    .jq_popuppm {
       background: url("./images/popuppm-letter_bg.png") repeat 0 0 #f7f2ec; /* Укажите путь до картинки */
       position: relative;
       top: 200px;
       overflow: hidden;
       height: 200px;
       width: 400px;
       margin: 0px auto;
       padding: 20px;
       border: 1px solid #fff;
       border-radius: 3px;
       -moz-border-radius: 3px; -webkit-border-radius: 3px;
       box-shadow: 0px 0px 3px #9d9d9d, inset 0px 0px 27px #fff;
       -moz-box-shadow: 0px 0px 3px #9d9d9d, inset 0px 0px 14px #fff;
       -webkit-box-shadow: 0px 0px 3px #9d9d9d, inset 0px 0px 27px #fff;
       -webkit-transition: all 1s ease-in-out .3s;
       -moz-transition: all 1s ease-in-out .3s;
       -o-transition: all 1s ease-in-out .3s;
       transition: all 1s ease-in-out .3s;
    }

    #form_popuppm:hover .jq_popuppm {
       height: 330px;
    }

    .jq_popuppm p.close_win {
       text-align: right;
    }

    .jq_popuppm a.close {
       font-size: 10px;
    }

    .jq_popuppm p.click_view {
       text-align: center;
    }

    .jq_popuppm a.view {
       font-size: 13px;
    }

    .jq_popuppm p.new_message {
       margin-top: 20px;
       text-align: center;
       font-size: 1.3em;
    }

    .jq_popuppm cite {
       font-size: 12px;
       text-align: center;
       display: block;
       margin-top: 100px;
    }


Получаем:


Файлы конверта:
images.zip
(220.04 КБ) 84 скачивания
images.zip
(220.04 КБ) 84 скачивания
Электромонтажные работы на дачах и квартирах г. Москва.
Интернет-магазин «Electric House». Стабилизаторы напряжения, инверторы, ИБП, аккумуляторы. Voltron, Voltron 3D, Энергия, Энергия Classic/Ultra.
Все тематические вопросы и ответы на них, только на форуме! В личку по электрике не отвечаю.

Стабилизатор напряжения - Энергия СНВТ-10000/1 Hybrid
Энергия СНВТ-10000/1 Hybrid
Стабилизатор напряжения


Высокоточный гибридный стабилизатор с плавной регулировкой, выдерживающий сильные просадки и скачки напряжения.

20.900 руб.

Уведомление о новом ЛС в виде конверта на jQuery.

Сообщение Объявления » 16 дек 2012, 21:39

Аватара пользователя
Alex39
Заглянувший

Re: Уведомление о новом ЛС в виде конверта на jQuery.

Сообщение Alex39 » 29 мар 2013, 01:11

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

Аватара пользователя
elhouse
Автор темы
Russia
Председатель клуба
Председатель клуба
Генеральный директор
Генеральный директор

Re: Уведомление о новом ЛС в виде конверта на jQuery.

Сообщение elhouse » 29 мар 2013, 08:29

Выложите ваш overall_header.html - посмотрю.
И ссылку на форум.
Скорее всего дело в ваших скриптах....
Электромонтажные работы на дачах и квартирах г. Москва.
Интернет-магазин «Electric House». Стабилизаторы напряжения, инверторы, ИБП, аккумуляторы. Voltron, Voltron 3D, Энергия, Энергия Classic/Ultra.
Все тематические вопросы и ответы на них, только на форуме! В личку по электрике не отвечаю.

Аватара пользователя
Alex39
Заглянувший

Re: Уведомление о новом ЛС в виде конверта на jQuery.

Сообщение Alex39 » 29 мар 2013, 14:01

Сайт стоит пока что на компе, Для просмотра ссылки необходимо зарегистрироваться!

► Показать спойлер

Аватара пользователя
elhouse
Автор темы
Russia
Председатель клуба
Председатель клуба
Генеральный директор
Генеральный директор

Re: Уведомление о новом ЛС в виде конверта на jQuery.

Сообщение elhouse » 29 мар 2013, 21:47

У Вас стоят оба кода - старый и новый.
Старый нужно удалить.

Должен остаться только этот код.

Это мой:

Код: Выделить всё

   <!-- IF S_USER_PM_POPUP and S_NEW_PM -->
              $(document).ready(function() {
               $("body").append("<div id='form_popuppm'><div class='jq_popuppm'><p class='close_win'><a href='' class='close' onClick='$(\"#form_popuppm\").hide()' title='{L_CLOSE_WINDOW}'>[x]</a></p><p class='new_message'>{L_NEW_MESSAGE}</p><p class='click_view'><a href='ucp.php?i=pm&folder=inbox' class='view' title='{L_GO}'>{L_GO}</a></p><cite>http://www.ваш сайт.ru/</cite></div></div>");
             $("#form_popuppm").hide();
               $("#form_popuppm").show(1000);
              });
   <!-- ENDIF -->
Электромонтажные работы на дачах и квартирах г. Москва.
Интернет-магазин «Electric House». Стабилизаторы напряжения, инверторы, ИБП, аккумуляторы. Voltron, Voltron 3D, Энергия, Энергия Classic/Ultra.
Все тематические вопросы и ответы на них, только на форуме! В личку по электрике не отвечаю.

Аватара пользователя
Alex39
Заглянувший

Re: Уведомление о новом ЛС в виде конверта на jQuery.

Сообщение Alex39 » 29 мар 2013, 21:56

Не совсем понял, там нет двух кодов, и я сравнил Ваш со своим, они совершенно идентичны, что то я ничего не понял

Аватара пользователя
elhouse
Автор темы
Russia
Председатель клуба
Председатель клуба
Генеральный директор
Генеральный директор

Re: Уведомление о новом ЛС в виде конверта на jQuery.

Сообщение elhouse » 29 мар 2013, 22:19

Это весь скрипт:

Код: Выделить всё

<script type="text/javascript">
// <![CDATA[
   var jump_page = '{LA_JUMP_PAGE}:';
   var on_page = '{ON_PAGE}';
   var per_page = '{PER_PAGE}';
   var base_url = '{A_BASE_URL}';
   var style_cookie = 'phpBBstyle';
   var style_cookie_settings = '{A_COOKIE_SETTINGS}';
   var onload_functions = new Array();
   var onunload_functions = new Array();
   
   <!-- IF S_USER_PM_POPUP and S_NEW_PM -->
              $(document).ready(function() {
               $("body").append("<div id='form_popuppm'><div class='jq_popuppm'><p class='close_win'><a href='' class='close' onClick='$(\"#form_popuppm\").hide()' title='{L_CLOSE_WINDOW}'>[x]</a></p><p class='new_message'><b>Вам пришло новое личное сообщение!</b></p><p class='click_view'><b><a href='ucp.php?i=pm&folder=inbox' class='view' title='{L_GO}'>{L_GO}</a></b></p><br /><p style='font-size: 1.2em; text-align: center'>{PRIVATE_MESSAGE_INFO}</p><cite>http://www.electric-house.ru</cite></div></div>");
             $("#form_popuppm").hide();
               $("#form_popuppm").show(1000);
              });
   <!-- ENDIF -->

   <!-- IF S_BIRTHDAY_POPUP -->

         var url = '{UA_POPUP_BIRTHDAY}';
         window.open(url.replace(/&amp;/g, '&'), '_phpbbbdpopup', 'height=225,resizable=yes,scrollbars=yes, width=400');

   <!-- ENDIF -->

   /**
   * Find a member
   */
   function find_username(url)
   {
      popup(url, 760, 570, '_usersearch');
      return false;
   }

   /**
   * New function for handling multiple calls to window.onload and window.unload by pentapenguin
   */
   window.onload = function()
   {
      for (var i = 0; i < onload_functions.length; i++)
      {
         eval(onload_functions[i]);
      }
   };

   window.onunload = function()
   {
      for (var i = 0; i < onunload_functions.length; i++)
      {
         eval(onunload_functions[i]);
      }
   };

// ]]>
</script>


Вот это у Вас что:

Код: Выделить всё

<!-- IF S_USER_PM_POPUP -->
if ({S_NEW_PM})
{
popup('{UA_POPUP_PM}', 400, 225, '_phpbbprivmsg');
}
<!-- ENDIF -->
Электромонтажные работы на дачах и квартирах г. Москва.
Интернет-магазин «Electric House». Стабилизаторы напряжения, инверторы, ИБП, аккумуляторы. Voltron, Voltron 3D, Энергия, Энергия Classic/Ultra.
Все тематические вопросы и ответы на них, только на форуме! В личку по электрике не отвечаю.

Аватара пользователя
Alex39
Заглянувший

Re: Уведомление о новом ЛС в виде конверта на jQuery.

Сообщение Alex39 » 29 мар 2013, 22:24

Все получилось, видно коды разные в скрипте сайта, раскоментировал строку

Код: Выделить всё

window.open(url.replace(/&amp;/g, '&'), '_phpbbprivmsg', 'height=225,resizable=yes,scrollbars=yes, width=400');


и все заработало

Добавлено спустя 4 минуты 47 секунд:
elhouse писал(а):
Это весь скрипт:

Код: Выделить всё

<script type="text/javascript">
// <![CDATA[
   var jump_page = '{LA_JUMP_PAGE}:';
   var on_page = '{ON_PAGE}';
   var per_page = '{PER_PAGE}';
   var base_url = '{A_BASE_URL}';
   var style_cookie = 'phpBBstyle';
   var style_cookie_settings = '{A_COOKIE_SETTINGS}';
   var onload_functions = new Array();
   var onunload_functions = new Array();
   
   <!-- IF S_USER_PM_POPUP and S_NEW_PM -->
              $(document).ready(function() {
               $("body").append("<div id='form_popuppm'><div class='jq_popuppm'><p class='close_win'><a href='' class='close' onClick='$(\"#form_popuppm\").hide()' title='{L_CLOSE_WINDOW}'>[x]</a></p><p class='new_message'><b>Вам пришло новое личное сообщение!</b></p><p class='click_view'><b><a href='ucp.php?i=pm&folder=inbox' class='view' title='{L_GO}'>{L_GO}</a></b></p><br /><p style='font-size: 1.2em; text-align: center'>{PRIVATE_MESSAGE_INFO}</p><cite>http://www.electric-house.ru</cite></div></div>");
             $("#form_popuppm").hide();
               $("#form_popuppm").show(1000);
              });
   <!-- ENDIF -->

   <!-- IF S_BIRTHDAY_POPUP -->

         var url = '{UA_POPUP_BIRTHDAY}';
         window.open(url.replace(/&amp;/g, '&'), '_phpbbbdpopup', 'height=225,resizable=yes,scrollbars=yes, width=400');

   <!-- ENDIF -->

   /**
   * Find a member
   */
   function find_username(url)
   {
      popup(url, 760, 570, '_usersearch');
      return false;
   }

   /**
   * New function for handling multiple calls to window.onload and window.unload by pentapenguin
   */
   window.onload = function()
   {
      for (var i = 0; i < onload_functions.length; i++)
      {
         eval(onload_functions[i]);
      }
   };

   window.onunload = function()
   {
      for (var i = 0; i < onunload_functions.length; i++)
      {
         eval(onunload_functions[i]);
      }
   };

// ]]>
</script>


Вот это у Вас что:

Код: Выделить всё

<!-- IF S_USER_PM_POPUP -->
if ({S_NEW_PM})
{
popup('{UA_POPUP_PM}', 400, 225, '_phpbbprivmsg');
}
<!-- ENDIF -->


У меня двиг немного другой, не phpbb3 а phpbbex который немного другой, это обновление устаревшего релиза phpbb3, так как обновление долго выходят, какая то организаци взялась сделать обновление, сейчас намного луше работает форум, сам вот недавно нашел и теперь довольный скриптом

Нет аватара
m-31
Новенький

Re: Уведомление о новом ЛС в виде конверта на jQuery.

Сообщение m-31 » 04 июн 2013, 22:11

Что то не выходит =(
Мой overall_header

Код: Выделить всё

<script type="text/javascript">
// <![CDATA[
   var jump_page = '{LA_JUMP_PAGE}:';
   var on_page = '{ON_PAGE}';
   var per_page = '{PER_PAGE}';
   var base_url = '{A_BASE_URL}';
   var style_cookie = 'phpBBstyle';
   var style_cookie_settings = '{A_COOKIE_SETTINGS}';
   var onload_functions = new Array();
   var onunload_functions = new Array();

[b]   <!-- IF S_USER_PM_POPUP and S_NEW_PM -->
      var url = '{UA_POPUP_PM}';
      window.open(url.replace(/&amp;/g, '&'), '_phpbbprivmsg', 'height=225,resizable=yes,scrollbars=yes, width=400');
   <!-- ENDIF -->[/b]

   /**
   * Find a member
   */
   function find_username(url)
   {
      popup(url, 760, 570, '_usersearch');
      return false;
   }
   /**
   * New function for handling multiple calls to window.onload and window.unload by pentapenguin
   */
   window.onload = function()
   {
      for (var i = 0; i < onload_functions.length; i++)
      {
         eval(onload_functions[i]);
      }
   };
   window.onunload = function()
   {
      for (var i = 0; i < onunload_functions.length; i++)
      {
         eval(onunload_functions[i]);
      }
   };
// ]]>
</script>

Аватара пользователя
elhouse
Автор темы
Russia
Председатель клуба
Председатель клуба
Генеральный директор
Генеральный директор

Re: Уведомление о новом ЛС в виде конверта на jQuery.

Сообщение elhouse » 08 июн 2013, 11:37

Что именно не выходит?
Электромонтажные работы на дачах и квартирах г. Москва.
Интернет-магазин «Electric House». Стабилизаторы напряжения, инверторы, ИБП, аккумуляторы. Voltron, Voltron 3D, Энергия, Энергия Classic/Ultra.
Все тематические вопросы и ответы на них, только на форуме! В личку по электрике не отвечаю.

Стабилизатор напряжения - Энергия Люкс-1000
Энергия Люкс-1000
Стабилизатор напряжения


Бытовой стабилизатор со встроенным фильтром сетевых помех. Защитит от скачков и просадок напряжения.

2.500 руб.

Рекомендуемый контент

 Ещё страницы сайта »


  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Расширения и моды phpBB3 и phpBB 3.1.x»

Кто на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 0 гостей