| | <?php |
| |
|
| | use Kanboard\Core\Translator; |
| |
|
| | function concat_files(array $files) |
| | { |
| | $data = ''; |
| | foreach ($files as $pattern) { |
| | foreach (glob($pattern, GLOB_ERR | GLOB_NOCHECK) as $filename) { |
| | echo $filename.PHP_EOL; |
| | if (! file_exists($filename)) { |
| | die("$filename not found\n"); |
| | } |
| |
|
| | $contents = file_get_contents($filename); |
| | if ($contents === false) { |
| | die("Unable to read $filename\n"); |
| | } |
| |
|
| | $data .= $contents; |
| | } |
| | } |
| |
|
| | return $data; |
| | } |
| |
|
| | function session_get($key) |
| | { |
| | return isset($_SESSION[$key]) ? $_SESSION[$key] : null; |
| | } |
| |
|
| | function session_set($key, $value) |
| | { |
| | $_SESSION[$key] = $value; |
| | } |
| |
|
| | function session_remove($key) |
| | { |
| | unset($_SESSION[$key]); |
| | } |
| |
|
| | function session_exists($key) |
| | { |
| | return isset($_SESSION[$key]); |
| | } |
| |
|
| | function session_is_true($key) |
| | { |
| | return isset($_SESSION[$key]) && $_SESSION[$key] === true; |
| | } |
| |
|
| | function session_merge($key, array $value) |
| | { |
| | $_SESSION[$key] = array_merge($_SESSION[$key], $value); |
| | } |
| |
|
| | function session_flush() |
| | { |
| | $_SESSION = []; |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | function explode_csv_field($str) |
| | { |
| | $fields = explode(',', $str); |
| | array_walk($fields, function (&$value) { $value = trim($value); }); |
| | return array_filter($fields); |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | function array_merge_relation(array &$input, array &$relations, $relation, $column) |
| | { |
| | foreach ($input as &$row) { |
| | if (isset($row[$column]) && isset($relations[$row[$column]])) { |
| | $row[$relation] = $relations[$row[$column]]; |
| | } else { |
| | $row[$relation] = array(); |
| | } |
| | } |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | function array_column_index(array &$input, $column) |
| | { |
| | $result = array(); |
| |
|
| | foreach ($input as &$row) { |
| | if (isset($row[$column])) { |
| | $result[$row[$column]][] = $row; |
| | } |
| | } |
| |
|
| | return $result; |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | function array_column_index_unique(array &$input, $column) |
| | { |
| | $result = array(); |
| |
|
| | foreach ($input as &$row) { |
| | if (isset($row[$column]) && ! isset($result[$row[$column]])) { |
| | $result[$row[$column]] = $row; |
| | } |
| | } |
| |
|
| | return $result; |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | function array_column_sum(array &$input, $column) |
| | { |
| | $sum = 0.0; |
| |
|
| | foreach ($input as &$row) { |
| | if (isset($row[$column])) { |
| | $sum += (float) $row[$column]; |
| | } |
| | } |
| |
|
| | return $sum; |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | function build_app_version($ref, $commit_hash) |
| | { |
| | if ($ref !== '$Format:%d$') { |
| | $tag = preg_replace('/\s*\(.*tag:\sv([^,]+).*\)/i', '\1', $ref); |
| |
|
| | if (!is_null($tag) && $tag !== $ref) { |
| | return $tag; |
| | } |
| | } |
| |
|
| | if ($commit_hash !== '$Format:%H$') { |
| | return 'main.'.$commit_hash; |
| | } else if (file_exists(__DIR__ . '/version.txt')) { |
| | return rtrim(file_get_contents(__DIR__ . '/version.txt')); |
| | } |
| |
|
| | return 'main.unknown_revision'; |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | function get_upload_max_size() |
| | { |
| | $upload_max_filesize = convert_php_size_to_bytes(ini_get('upload_max_filesize')); |
| | $post_max_size = convert_php_size_to_bytes(ini_get('post_max_size')); |
| |
|
| | if ($post_max_size == 0) { |
| | return $upload_max_filesize; |
| | } |
| |
|
| | if ($upload_max_filesize == 0) { |
| | return $post_max_size; |
| | } |
| |
|
| | return min($post_max_size, $upload_max_filesize); |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | function convert_php_size_to_bytes($value) |
| | { |
| | |
| | $unit = preg_replace('/[^bkmgtpezy]/i', '', $value); |
| |
|
| | |
| | $size = preg_replace('/[^0-9\.]/', '', $value); |
| |
|
| | switch (strtoupper($unit)) { |
| | case 'G': |
| | $size *= 1024; |
| | case 'M': |
| | $size *= 1024; |
| | case 'K': |
| | $size *= 1024; |
| | } |
| |
|
| | return $size; |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | function get_file_extension($filename) |
| | { |
| | return strtolower(pathinfo($filename, PATHINFO_EXTENSION)); |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | function t() |
| | { |
| | return call_user_func_array(array(Translator::getInstance(), 'translate'), func_get_args()); |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | function e() |
| | { |
| | return call_user_func_array(array(Translator::getInstance(), 'translateNoEscaping'), func_get_args()); |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | function n($value) |
| | { |
| | return Translator::getInstance()->number($value); |
| | } |
| |
|