ModuleTools
Package | modules.tools |
---|---|
Inheritance | class ModuleTools » Module » LsObject |
Since | 1.0 |
Source Code | /classes/modules/tools/Tools.class.php |
Модуль Tools - различные вспомогательные методы
Protected Properties
Property | Type | Description | Defined By |
---|---|---|---|
bIsInit | bool | Указывает на то, была ли проведенна инициализация модуля | Module |
oEngine | Engine | Объект ядра | Module |
Public Methods
Method | Description | Defined By |
---|---|---|
Init() | Инициализация | ModuleTools |
MakeCloud() | Строит логарифмическое облако - расчитывает значение size в зависимости от count | ModuleTools |
SetInit() | Помечает модуль как инициализированный | Module |
Shutdown() | Метод срабатывает при завершении работы ядра | Module |
__call() | Ставим хук на вызов неизвестного метода и считаем что хотели вызвать метод какого либо модуля | Module |
__construct() | При создании модуля передаем объект ядра | Module |
isInit() | Возвращает значение флага инициализации модуля | Module |
Protected Methods
Method | Description | Defined By |
---|---|---|
__clone() | Блокируем копирование/клонирование объекта | Module |
Method Details
Init()
method
public void Init()
|
Source Code: /classes/modules/tools/Tools.class.php#29 (show)
public function Init() {
}
Инициализация
MakeCloud()
method
public array MakeCloud(aray $aCollection, int $iMinSize=1, int $iMaxSize=10)
| ||
$aCollection | aray | Список тегов |
$iMinSize | int | Минимальный размер |
$iMaxSize | int | Максимальный размер |
{return} | array |
Source Code: /classes/modules/tools/Tools.class.php#42 (show)
public function MakeCloud($aCollection,$iMinSize=1,$iMaxSize=10) {
if (count($aCollection)) {
$iSizeRange=$iMaxSize-$iMinSize;
$iMin=10000;
$iMax=0;
foreach($aCollection as $oObject) {
if ($iMax<$oObject->getCount()) {
$iMax=$oObject->getCount();
}
if ($iMin>$oObject->getCount()) {
$iMin=$oObject->getCount();
}
}
$iMinCount=log($iMin+1);
$iMaxCount=log($iMax+1);
$iCountRange=$iMaxCount-$iMinCount;
if ($iCountRange==0) {
$iCountRange=1;
}
foreach($aCollection as $oObject) {
$iTagSize=$iMinSize+(log($oObject->getCount()+1)-$iMinCount)*($iSizeRange/$iCountRange);
$oObject->setSize(round($iTagSize));
}
}
return $aCollection;
}
Строит логарифмическое облако - расчитывает значение size в зависимости от count У объектов в коллекции обязательно должны быть методы getCount() и setSize()