+2.10
Рейтинг
5.19
Сила

Эмиль

Личные сообщения на странице пользователя

Доброе время суток, уважаемые!

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

За конкретную помощь готов заплатить.

Плавающая шапка шаблона

Приветствую. Помню была на Лайвстрите тема про плавающую шапку ( плавающий header.tpl ). Искал, искал и ничего не нашел. Может кто кинет ссылку или подскажет как сделать это?

Буду очень признателен!

Бесплатный шаблон Fancy

Простой и быстрый шаблон под названием Fancy, который заточен под развлекательный, познавательный или информационный ресурс. Идеально подойдёт если на Вашем сайте выкладываться большие картинки и видео.



В комплекте с шаблоном идёт PSD исходник логотипа, легко и просто можете адаптировать данный шаблон под свои нужды.
Читать дальше →

картинка превью, при вставке в vk



Хотел бы понять принцип выбора изображения
Допустим еcть у меня топик на сайте ЛС, копирую его ссылку вставляю в вк, и оно может выбрать картинку из топика, может выбрать иконку блога, может выбрать картинку из банера в сайдбаре(очень часто)

Как это работает?

Из своих наблюдений заметил, что если картинка в топики визупльно меньше, картинки з банера в сайдбаре то почти всегда ставить превью банер с сайдбара, а если картинка из топика значительно превосходит банер, то берет с топика. Но как оно считает, по разрешению, по размеру или в зависсимости от формата изображения?

кто-то знает что-то наверняка?

и главный вопрос — как сделать чтоб брало картинку только с топика?

Отправитель письма при использовании sendmail

При отправки писем движком LiveStreet используя sendmail есть один нюанс, что отправителем письма (Return-Path) является какой-нибудь nobody@localhost или www-data@localhost или ещё что-то в подобном духе. (всё зависит от настроек сервера, но при виртуальном хостинге возможность исправить настройки сервера отсутствуют).

Изза чего письма могут оседать на некоторых спам фильтрах. или в некоторых webmailах или почтовых программах высвечиваться типа ваш@мейл On Behalf Of: nobody@localhost, что в принципе не кошерно.

Решение проблемы достаточно простое. (я думаю этот момент стоит внести в штатную сборку LiveStreet)

в файле engine/modules/mail/Mail.class.php

176 строка файла
в функции Init() находим
$this->oMailer->From=$this->sFrom;

и добавляем
$this->oMailer->Sender=$this->sFrom;


т.е. вот так выглядить функция после исправлений
	public function Init() {
		/**
		 * Настройки SMTP сервера для отправки писем
		 */
		$this->sHost     = Config::Get('sys.mail.smtp.host');
		$this->iPort     = Config::Get('sys.mail.smtp.port');
		$this->sUsername = Config::Get('sys.mail.smtp.user');
		$this->sPassword = Config::Get('sys.mail.smtp.password');
		$this->bSmtpAuth = Config::Get('sys.mail.smtp.auth');
		$this->sSmtpSecure = Config::Get('sys.mail.smtp.secure');
		/**
		 * Метод отправки почты
		 */
		$this->sMailerType=Config::Get('sys.mail.type');
		/**
		 * Кодировка писем
		 */
		$this->sCharSet=Config::Get('sys.mail.charset');
		/**
		 * Мыло от кого отправляется вся почта
		 */
		$this->sFrom=Config::Get('sys.mail.from_email');
		/**
		 * Имя от кого отправляется вся почта
		 */
		$this->sFromName=Config::Get('sys.mail.from_name');

		/**
		 * Создаём объект phpMailer и устанвливаем ему необходимые настройки
		 */
		$this->oMailer = new phpmailer();
		$this->oMailer->Host=$this->sHost;
		$this->oMailer->Port=$this->iPort;
		$this->oMailer->Username=$this->sUsername;
		$this->oMailer->Password=$this->sPassword;
		$this->oMailer->SMTPAuth=$this->bSmtpAuth;
		$this->oMailer->SMTPSecure=$this->sSmtpSecure;
		$this->oMailer->Mailer=$this->sMailerType;
		$this->oMailer->WordWrap=$this->iWordWrap;
		$this->oMailer->CharSet=$this->sCharSet;

		$this->oMailer->From=$this->sFrom;
		$this->oMailer->Sender=$this->sFrom; // 176 строка. фиксит return-path
		$this->oMailer->FromName=$this->sFromName;
	}

Тонкая настройка почты

Столкнулся с тем, что при добавлении топиков, происходят достаточно сильные тормоза. После проведённого анализа выяснилось, что проблема тормозов ПОЧТА. При публикации топика происходит рассылка по всем пользователям, которые имеют отношение к блогу, в который происходит размещение материала.

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

В конфиге config/config.local.php добавляем следующие настройки

// Указывает на необходимость использовать режим отложенной рассылки сообщений на email
$config['module']['notify']['delayed'] = true;
// Если опция установлена в true, систему будет собирать записи заданий удаленной публикации, для вставки их в базу единым INSERT
$config['module']['notify']['insert_single'] = true;
// Количество отложенных заданий, обрабатываемых одним крон-процессом
$config['module']['notify']['per_process'] = 10;


Далее исправляем файл classes/modules/notify/Notify.class.php

Находим в нём функцию

public function Send($oUserTo,$sTemplate,$sSubject,$aAssign=array(),$sPluginName=null) {


В этой функции находим строчку

if(Config::Get('module.notify.delayed')) {


И заменяем её на

$isNotifyDelayed = Config::Get('module.notify.delayed');
if (($sTemplate == "notify.registration_activate.tpl") || ($sTemplate == "notify.registration.tpl") || ($sTemplate == "notify.reactivation.tpl") || ($sTemplate == "notify.reminder_code.tpl") || ($sTemplate == "notify.reminder_password.tpl")) { $isNotifyDelayed = false; }
if($isNotifyDelayed) {


PS: Возможно разместил топик не в тот блог, но в другие писать к сожалению не могу. Видимо не хватает рейтинга или силы.

Небольшое дополнение:
Кто-то может забыть, поэтому напоминаю, что необходимо по крону запускать скрипт include/cron/notify.php

есть 2 варианта запуска.

1. используя HTTP.

для этого необходимо поправить .htaccess в папке include/cron/
содержание должно быть

Order Deny,Allow
Deny from all
Allow from XXX.XXX.XXX.XXX


вместо XXX.XXX.XXX.XXX укажите IP, с которого будет производиться HTTP запрос.
и в крон можно внести следующую запись

*/5 * * * *   wget -O- http://www.livestreet.ru/include/cron/notify.php >> /dev/null


2. либо из консоли.

и в крон можно внести следующую запись

*/5 * * * *   /usr/bin/php /vhosts/site.ru/www/include/cron/notify.php


Пути указывайте в соответствии с настройками вашего сервера.

Эксперементируем с responsive design на Livestreet

Может кому то пригодится или кто то хочет попробовать, название говорит само за себя.

В каждый тег
@media (max-width: XXXpx) { }
можем вставить тег стилей которые мы хотим уменьшит, увеличить, изменит.

             /** Эксперементируем с responsive design all %) **/
             
             
             /* Для мониторов больше 1300, ширина сайта будет 1200px */
             #container { width:1200px; min-width:600px;/* background: aqua; */}
             #content   { margin-right:20px; width:840px;}
            
             
             
             @media (max-width: 1300px) { 
             	#container { width:1130px; /*background: green; */}
             	#content   { margin-right:20px; width:770px;}
             }
             
             
             @media (max-width: 1200px) { 
             	#container { width:1030px; /*background: pink; */}
             	#content   { margin-right:20px; width:658px;}
             }
             
             @media (max-width: 1100px) { 
             	#container { width:950px;/*background: red;*/} 
             	#content   { margin-right:20px; width:568px;}
               
             	#header .nav.nav-main li     { font-size:26px;}	
             	#header .nav.nav-main li a   { margin-right:15px;}
             	
             
             }