<?php
|
|
use Monolog\Logger;
|
|
use Monolog\Handler\StreamHandler;
|
|
|
|
date_default_timezone_set('UTC');
|
|
|
|
if(getenv('ENV')) {
|
|
require(dirname(__FILE__).'/../config.'.getenv('ENV').'.php');
|
|
} else {
|
|
require(dirname(__FILE__).'/../config.php');
|
|
}
|
|
|
|
function initdb() {
|
|
ORM::configure('mysql:host=' . Config::$db['host'] . ';dbname=' . Config::$db['database']);
|
|
ORM::configure('username', Config::$db['username']);
|
|
ORM::configure('password', Config::$db['password']);
|
|
}
|
|
|
|
function logger() {
|
|
static $log;
|
|
if(!isset($log)) {
|
|
$log = new Logger('name');
|
|
$log->pushHandler(new StreamHandler(dirname(__FILE__).'/../logs/telegraph.log', Logger::DEBUG));
|
|
}
|
|
return $log;
|
|
}
|
|
|
|
function log_info($msg) {
|
|
logger()->addInfo($msg);
|
|
}
|
|
|
|
function log_warning($msg) {
|
|
logger()->addWarning($msg);
|
|
}
|
|
|
|
function view($template, $data=[]) {
|
|
global $templates;
|
|
return $templates->render($template, $data);
|
|
}
|
|
|
|
function q() {
|
|
static $caterpillar = false;
|
|
if(!$caterpillar) {
|
|
$logdir = __DIR__.'/../scripts/logs/';
|
|
$caterpillar = new Caterpillar('telegraph', '127.0.0.1', 11300, $logdir);
|
|
}
|
|
return $caterpillar;
|
|
}
|
|
|
|
function redis() {
|
|
static $client = false;
|
|
if(!$client)
|
|
$client = new Predis\Client('tcp://127.0.0.1:6379');
|
|
return $client;
|
|
}
|
|
|
|
function random_string($len) {
|
|
$charset='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
|
|
$str = '';
|
|
$c = strlen($charset)-1;
|
|
for($i=0; $i<$len; $i++) {
|
|
$str .= $charset[mt_rand(0, $c)];
|
|
}
|
|
return $str;
|
|
}
|
|
|
|
// Returns true if $needle is the end of the $haystack
|
|
function str_ends_with($haystack, $needle) {
|
|
if($needle == '' || $haystack == '') return false;
|
|
return strpos(strrev($haystack), strrev($needle)) === 0;
|
|
}
|
|
|
|
function display_url($url) {
|
|
return preg_replace(['/^https?:\/\//','/\/$/'], '', $url);
|
|
}
|
|
|
|
function session($k, $default=null) {
|
|
if(!isset($_SESSION)) return $default;
|
|
return array_key_exists($k, $_SESSION) ? $_SESSION[$k] : $default;
|
|
}
|