* @copyright (cc) creative commons - attribution-shareAlike 3.0 unported * @version 1.0 * @package qoob * @subpackage utils */ final class cloud { /** * @var int $max_size maximun font size in percent */ private $max_size = 250; /** * @var int $min_size minimun font size in percent */ private $min_size = 80; /** * set maximun font size * @param int $max */ function setMax($max) { $this->max_size = $max; } /** * set minimum font size * @param int $min */ function setMin($min) { $this->min_size = $min; } /** * generate function * returns the html tag cloud from an array. * * @param array $tags * @return string */ function generate($tags) { if(!is_array($tags)) { return false; } $numbers = array(); foreach($tags as $obj) { $numbers[] = $obj['tag_count']; } $max_qty = max($numbers); $min_qty = min($numbers); $spread = $max_qty - $min_qty; if (0 == $spread) { //we don't want to divide by zero $spread = 1; } $step = ($this->max_size - $this->min_size)/($spread); $html = ''; return $html; } function make($tags, $url, $highlight = '', $cat = '') { if(!is_array($tags)) { return false; } $numbers = array(); foreach($tags as $obj) { $numbers[] = $obj['tag_count']; } $max_qty = max($numbers); $min_qty = min($numbers); $spread = $max_qty - $min_qty; if (0 == $spread) { //we don't want to divide by zero $spread = 1; } $step = ($this->max_size - $this->min_size)/($spread); $html = ''; return $html; } } ?>