+0.27
Рейтинг
1.08
Сила

Очередной вопрос про перенос css и js файлов на другой поддомен.

Прошу сразу сильно не пинать и не минусовать, пожалуйста.
Есть:
blogs.example.ru — сам сайт.

Задача:
Сделать так, чтобы css файлы загружались с домена например css-blogs.example.ru
Сдедать так, чтобы js файлы загружались с домена js-blogs.example.ru (Или пофиг, можно даже с тогоже css-blogs.example.ru)

Читать дальше →

История про нагрузку и как я с ней боролся.

Случилось так, что на одном из проектов full time стал переваливать за 1,5 сек и при этом сжирался весь проц. При этом все остальные показали были в норме: база — 0,002 сек, кеш — 0,01 сек.

Пришлось прикручивать профайлер и смотреть, в чем дело.

Виноват оказался Smarty, который из 1,5 секунд работал 1,2 (шаблон, на проекте, используется стандартный с легкими изменениями).

Копаясь дальше нашел самый сложный шаблон comments_tree.tpl, который выполняет в цикле инклюд шаблона comment.tpl.

Проблема решилась отказом от инклюда и переносом содержимого из comment.tpl в comments_tree.tpl.

full time на топиках с 400+ комментариев не превышает 0,4 сек.

Надеюсь кому-то поможет.

Время "запоминания" пользователя

Предлагаю способ как можно изменить время, на которое запоминается авторизация пользователя.
Версия: LiveStreet 0.4.2

1. Запишем в конфиг необходимое время авторизации.
Открываем config/config.php
На 54 строке находим:
$config['sys']['cookie']['path'] = '/';  // путь для установки куков

После неё вставляем строку:
$config['sys']['cookie']['time'] = 60*60*24*3; // время установки куков (в секундах)

Где вместо 3 можете написать нужное количество дней.

2. Исправим функцию авторизации пользователя.
Открываем classes/modules/user/User.class.php
На 441 строке находим:
setcookie('key',$sKey,time()+60*60*24*3,Config::Get('sys.cookie.path'),Config::Get('sys.cookie.host'));

Меняем на:
setcookie('key',$sKey,time()+Config::Get('sys.cookie.time'),Config::Get('sys.cookie.path'),Config::Get('sys.cookie.host'));


Всё готово.

Голосование админам неограниченное количество раз

Небольшая доработка голосовалки.

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

В aceadminpanel реализовано неограниченная голосовалка только для рейтинга и силы пользователя, эта рализация для всего остального.

Читать дальше →

Как отключить Jevix на «статичных страницах»? (РЕШЕНО)

Не могу понять как/где можно отключить обработчик Jevix на «статичных страницах»

Вроде всё посмотрел, но так и не догадался где нужную кнопку нажать.

Хотя я разобрался с Jevix-ом который обрабатывает «топики»…

Читать дальше →

Форматирование дат (На сайте: 1 год 5 месяцев 6 дней )

Хочу поделится хаком, как выводить дату в таком формате. Для этого необходимо в файл \engine\modules\viewer\plugs\function.date_format.php в function smarty_function_date_format вставить:

if(isset($aParams['day_back'])) {
		require_once('modifier.declension.php');
		$iTimeDelta = round((time()- $iDate)/(60*60*24));
		$year=floor($iTimeDelta/365);
		$mouth=floor(($iTimeDelta%365)/30);
		$day=($iTimeDelta%365)%30;
		$r = "";
		if($year>0) $r = smarty_modifier_declension(
						$year,
						$oEngine->Lang_Get('date_year_back',array('year'=>$year)),
						$oEngine->Lang_GetLang()
					);
		if($mouth>0) $r.= smarty_modifier_declension(
						$mouth,
						$oEngine->Lang_Get('date_mouth_back',array('mouth'=>$mouth)),
						$oEngine->Lang_GetLang()
					); 	
		if($day>0)	$r.= smarty_modifier_declension(
						$day,
						$oEngine->Lang_Get('date_day_back',array('day'=>$day)),
						$oEngine->Lang_GetLang()
					);	
		if($r!=""){
			return $r;
		}
		else return $oEngine->Lang_Get('date_day_back_less');
			
		
	}

В файл \templates\language\russian.php

'date_day_back' => '%%day%% день; %%day%% дня; %%day%% дней',
'date_mouth_back' => '%%mouth%% месяц; %%mouth%% месяца; %%mouth%% месяцев',
'date_year_back' => '%%year%% год; %%year%% года; %%year%% лет',

И при выводе даты прописать {date_format date=$oUserProfile->getDateRegister() day_back=«1»}

Заявка на плагин: внешние ссылки в новом окне

Все доброго дня.
Ну просто кровь из носу необходим плагин, который бы добавлял такой функционал:
— внутренние ссылки — как есть
— внешние ссылки (определяем по домену) — добавляем target="_blank"

Зачем это надо? Да просто для того чтобы бедные юзеры не тыкали каждый раз кнопку Back, чтобы вернуться на ресурс.
Как по мне, намного удобнее просто закрыть окно и оказаться на сайте, с которого куда-то перешел, чем закрыть окно и забыть урл указанного сайта.

Кроме того, все мы пользуемся сервисами типа imagebam для хранения и линковки фото. В этом случае тоже ну очень удобно, когда такая ссылка открывается в новом окне.

Прошу поддержать предложение тех, кому такой функционал тожн необходим.

Спасибо.

P.S.: Да, я знаю, что на Хабре этого нет и все в порядке. Но не забывайте, что айтишник — не простой обыватель, мы умеем нажимать кнопки правильно, а большинство — нет :)

Кнопки: В заметки Вконтакте,Мой мир,Facebook,Twitter

<a href="http://vkontakte.ru/share.php?url={if $oTopic->getType()=='link'}{router page='link'}go/{$oTopic->getId()}/{else}{$oTopic->getUrl()}{/if}" rel="nofollow" target="_blank"><img src="{cfg name='path.root.web'}/templates/skin/new/images/bookmarks/vkontakte.gif" title="Добавить заметку в Вконтакте"></a>

Читать дальше →