0.00
Рейтинг
0.69
Сила

Константин Сорокин

Конкурс на новый дефолтный дизайн LiveStreet CMS

Текущий дефолтный дизайн/шаблон прослужил верой и правдой почти 3 года, многим он нравится своей простотой, легкостью и универсальность, кому-то не нравится :)

И вот настал момент и назрела необходимость его обновить, сделать рестайлинг.
Мы снова обращаемся к сообществу за помощью и объявляем конкурс на новый дефолтный дизайн LiveStreet!

Призовые:
  • 1 место — 20 000 р. и включение дизайна в дистрибутив в качестве дефолтного с копирайтами автора
  • 2 место — 15 000 р.
  • 3 место — 10 000 р.

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

Новые возможности форматирования дат

В версии 0.4 значительно улучшены возможности по работе с датами. Ввиду большого числа писем по этому поводу, опишу здесь основные моменты и правила пользования новыми параметрами форматирования дат:

0. Вступление.

За оформление даты в Smarty-шаблоне отвечает тот же, что и раньше, smarty-тег {date_format}. Тег требует только один обязательный параметр 'date' — собственно дата. Простейший вариант вывода:
{date_format date=$oTopic->getDateAdd()}

в результате получаем самый обычный:
10 декабря 2009, 00:35

Информация для разработчиков: date_format работает теперь не через функцию в function.php, а через специально написанный для движка smarty-плагин.


Дополнительные параметры формата

[DLEtoLS] Ограниченное бета-тестирование, бета 2

Доброго времени суток!

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


Подробности ниже

Загрузка последнего сообщения из Twitter в профиль

идея была давно. а вот вчера посреди ночи проснулся и занялся реализацией. Просьба не кидать в меня помидоры, я не знаю ПХП. Лучше укажите недочеты, и помогите исправить :)
Итак.
1) Сначала попытался сделать это все на пхп. но знающие люди отговорили от этой идеи. все таки твиттер находится на удаленном сервере, поэтому, чтобы профиль не упал при падении твиттера, решил реализовать это на Яваскрипте
2) В свете того, что в предверии выхода версии движка 0.3 сообщество как то зло на все реагирует, хочу заявить. Я тут непричем, моей заслуги нет, код ворованый и тд и тп. Спасибо Максу aka ort за движок.
3) Баги есть и многое еще не доделано. но основной функционал сделан. Повторюсь, буду очень рад, если кто-нибудь поможет сделать из этого конфетку
4) как выглядит это безобразие можете посмотреть тут
file.kirovnet.ru/d/108648
простите ссылку на сайт дать не могу — мы за NAT :)
5) Поддерживается не только Twitter, но и любой сервер на движке laconi.ca
6) актуально для пре-0.3, для версии 0.2 тоже должно работать
Закончили с приветами и поздравлениями — Приступаем к работе

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

Модернизация функции рейсайза картинок

Как понадобилось изменять размер картинок столкнулся с тем, что стандартная функция func_img_resize изменяла размер только когда указана $iWidthDest и то как-то «косячно» на мой взгляд… в общем решил я функцию переделать… сделал независимый расайз по высоте и ширине теперь если надо картинку вписать в прямоугольник то просто задаёшь $iWidthDest и $iHeightDest… а ели просто надо подогнать по высоте или ширине задаёшь только то, что надо! всё просто и работает!!! =)
может кому пригодиться…
/**
 * Рейсайзинг картинок
 *
 * @param unknown_type $sFileSrc
 * @param unknown_type $sDirDest
 * @param unknown_type $sFileDest
 * @param unknown_type $iWidthMax
 * @param unknown_type $iHeightMax
 * @param unknown_type $iWidthDest
 * @param unknown_type $iHeightDest
 * @param unknown_type $bForcedMinSize
 * @return unknown
 */
function func_img_resize($sFileSrc,$sDirDest,$sFileDest,$iWidthMax,$iHeightMax,$iWidthDest=null,$iHeightDest=null,$bForcedMinSize=true) {
	if (!($aSize=getimagesize($sFileSrc))) {		
		return false;
	}	
	$img_src=false;
	switch ($aSize['mime']) {
		case 'image/png':
			$img_src=imagecreatefrompng($sFileSrc);
			$sFileDest.='.png';
			break;
		case 'image/gif':
			$img_src=imagecreatefromgif($sFileSrc);
			$sFileDest.='.gif';
			break;
		case 'image/jpeg':
			$img_src=imagecreatefromjpeg($sFileSrc);
			$sFileDest.='.jpg';
			break;
		default:
			return false;
			break;
	}
	if (!$img_src) {		
		return false;
	}
	$iWidthNew=$aSize[0];
	$iHeightNew=$aSize[1];
	if (($iWidthNew>$iWidthMax) or ($iHeightNew>$iHeightMax)) {
		return false;
	}
	if ($iWidthDest) {
		if (!$bForcedMinSize and ($iWidthDest>$iWidthNew)) {
			$iWidthDest=$iWidthNew;
		}
		$iSizeRelation=$iWidthDest/$iWidthNew;	
		$iWidthNew=$iWidthDest;		
		$iHeightNew=round($iSizeRelation*$iHeightNew);
	}
	if ($iHeightDest) {
		if (!$bForcedMinSize and ($iHeightDest>$iHeightNew)) {
			$iHeightDest=$iHeightNew;
		}
		$iSizeRelation=$iHeightDest/$iHeightNew;
		$iHeightNew=$iHeightDest;			
		$iWidthNew=round($iSizeRelation*$iWidthNew);
	}
	
	
	$sFileFullPath=DIR_SERVER_ROOT.'/'.$sDirDest.'/'.$sFileDest;
	@func_mkdir(DIR_SERVER_ROOT,$sDirDest);
	if (($iWidthDest and $iWidthDest!=$aSize[0])or($iHeightDest and $iHeightDest!=$aSize[1])) {
		$img_dest=imagecreatetruecolor($iWidthNew,$iHeightNew);		
		imagesavealpha($img_dest,true);
		imagealphablending($img_dest,false);
		if (imagecopyresampled($img_dest,$img_src,0,0,0,0,$iWidthNew,$iHeightNew,$aSize[0],$aSize[1])) {				
			imagedestroy($img_src);
			switch ($aSize['mime']) {
				case 'image/png':
					if (imagepng($img_dest,$sFileFullPath)) {
						chmod($sFileFullPath,0666);
						return $sFileDest;
					}
					break;
				case 'image/gif':
					if (imagegif($img_dest,$sFileFullPath)) {
						chmod($sFileFullPath,0666);
						return $sFileDest;
					}
					break;
				case 'image/jpeg':
					if (imagejpeg($img_dest,$sFileFullPath)) {
						chmod($sFileFullPath,0666);
						return $sFileDest;
					}
					break;
			}
		}
	} else {
		if (copy($sFileSrc,$sFileFullPath)) {
			return $sFileDest;
		}
	}
	return false;
}

Использование поддоменов в LiveStreet

У многих возникает необходимость использовать поддомены для своих проектов на базе LiveStreet, например вынести на поддомены блоги.
Сделать это можно разными путями, например через реврайты в .htaccess, либо через роутер движка.
Я покажу как это можно сделать на примере последнего варианта, т.е. через роутер.

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

Добавляем ссылку на пользователя.

Добавим в комментариях к записи возможность оставить ссылку на профиль любого пользователя.



1. В файле /classes/modules/sys_text/Test.class.php



В строке (51):

		$this->oJevix->cfgAllowTags(array('cut','a', 'img', 'i', 'b', 'u', 's', 'video', 'em',  'strong', 'nobr', 'li', 'ol', 'ul', 'sup', 'abbr', 'sub', 'acronym', 'h4', 'h5', 'h6', 'br', 'hr', 'pre', 'code', 'object', 'param', 'embed'));


добавляем в конце:


, 'user'


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

Обновление FAQ'a от 2009-02-03

Обновлен раздел Вопросы.

• Каков набор стандартных шаблонов?
• Как увеличить отступ от картинок в топике?
• Как скрыть статистику?
• Где можно поменять значение изменяемого рейтинга и силы?
• Как изменить количество макс. символов при добавлении материала?
• Как правильно вставить видео-ролик?

Добавлен раздел Хаки и Моды.

Что попало в раздел на данный момент:
Читать дальше →