/** * @fn is_blocked($ip_addr) * @short Returns <tt>TRUE</tt> if <tt>ip_addr</tt> is in the blacklist, * <tt>FALSE</tt> otherwise. * @param ip_addr The IP address to test. */ public static function is_blocked($ip_addr) { $conn = Db::get_connection(); $bip_factory = new self(); $ret = $bip_factory->find_all(array('where_clause' => "`ip_addr` = '{$conn->escape($ip_addr)}'")); Db::close_connection($conn); return count($ret) > 0; }
static function chg2eur($divisa = 'USD', $date = NULL) { if ($date == NULL) { $date = date('Y-m-d H:i:s'); } if (!isset(self::$cache[$date])) { $conn = Db::get_connection(); $change_factory = new self(); $changes = $change_factory->find_all(array('where_clause' => empty($date) ? '1' : "`data` <= '{$conn->escape($date)}'", 'order_by' => '`data` DESC', 'limit' => 1)); $change = $changes[0]; self::$cache[$date] = array('usd2eur' => $change->usd2eur, 'aud2eur' => $change->aud2eur, 'try2eur' => $change->try2eur, 'zar2eur' => $change->zar2eur, 'brl2eur' => $change->brl2eur, 'gbp2eur' => $change->gbp2eur, 'rub2eur' => $change->rub2eur); Db::close_connection($conn); } switch ($divisa) { case 'USD': return self::$cache[$date]['usd2eur']; break; case 'AUD': return self::$cache[$date]['aud2eur']; break; case 'TRY': return self::$cache[$date]['try2eur']; break; case 'ZAR': return self::$cache[$date]['zar2eur']; break; case 'BRL': return self::$cache[$date]['brl2eur']; break; case 'GBP': return self::$cache[$date]['gbp2eur']; case 'RUB': return self::$cache[$date]['rub2eur']; } return 1; }
/** * @fn next * @short Returns the item that succeeds the receiver in the order. */ public function next() { $conn = Db::get_connection(); $factory = new self(); $results = $factory->find_all(array('where_clause' => "`created_at` > '{$conn->escape($this->created_at)}' " . "AND `status` = 'pubblicato'", 'order_by' => '`created_at` ASC', 'limit' => 1)); $ret = count($results) > 0 ? $results[0] : NULL; Db::close_connection($conn); return $ret; }
/** * @fn cloud($js_fn) * @short Creates an HTML tag cloud for all the existing tags. * @param js_fn An optional Javascript function to be used * as <tt>onclick</tt> handler for tag items. */ public static function cloud($js_fn = NULL) { $factory = new self(); $tags = $factory->find_all(); return self::join($tags, TRUE, $js_fn); }