Annotation of FreeBSD/tinderbox/webui/core/functions.php, revision 1.1.1.1.2.2

1.1       as          1: <?php
                      2: #-
                      3: # Copyright (c) 2004-2005 FreeBSD GNOME Team <freebsd-gnome@FreeBSD.org>
                      4: # All rights reserved.
                      5: #
                      6: # Redistribution and use in source and binary forms, with or without
                      7: # modification, are permitted provided that the following conditions
                      8: # are met:
                      9: # 1. Redistributions of source code must retain the above copyright
                     10: #    notice, this list of conditions and the following disclaimer.
                     11: # 2. Redistributions in binary form must reproduce the above copyright
                     12: #    notice, this list of conditions and the following disclaimer in the
                     13: #    documentation and/or other materials provided with the distribution.
                     14: #
                     15: # THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
                     16: # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
                     17: # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
                     18: # ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
                     19: # FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
                     20: # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
                     21: # OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
                     22: # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
                     23: # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
                     24: # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
                     25: # SUCH DAMAGE.
                     26: #
1.1.1.1.2.2! as         27: # $Paefchen: FreeBSD/tinderbox/webui/core/functions.php,v 1.1.1.1.2.1 2007/11/12 22:45:14 as Exp $
1.1       as         28: # $MCom: portstools/tinderbox/webui/core/functions.php,v 1.5 2007/06/09 22:09:12 marcus Exp $
                     29: #
                     30: 
                     31: function prettyEmail($input) {
1.1.1.1.2.1  as         32:        return preg_replace('/@FreeBSD.org$/i', '', $input);
1.1       as         33: }
                     34: 
                     35: function prettyDatetime($input) {
1.1.1.1.2.1  as         36:        if (preg_match('/^[0-9]{14}$/', $input)) 
1.1       as         37:                /* timstamp */
                     38:                return substr($input,0,4)."-".substr($input,4,2)."-".substr($input,6,2)." ".substr($input,8,2).":".substr($input,10,2).":".substr($input,12,2);
1.1.1.1.2.1  as         39: 
                     40:        elseif (preg_match('/[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}:[0-9]{2}', $input))
1.1       as         41:                /* datetime */
1.1.1.1.2.1  as         42:                return $input == '0000-00-00 00:00:00'
                     43:                        || $input == '0000-00-00 00:00:00.000000'
                     44:                        ? ''
                     45:                        : substr($input, 0, 19);
                     46:        else
1.1       as         47:                return $input;
                     48: }
                     49: 
                     50: function cryptPassword($password) {
                     51:        return md5($password);
                     52: }
                     53: 
                     54: function build_query_string($url, $qs, $key, $value) {
                     55:        $qs[$key] = $value;
                     56:        $tmp = array();
1.1.1.1.2.1  as         57:        foreach ($qs as $k => $v)
1.1       as         58:                array_push($tmp, $k . '=' . $v);
1.1.1.1.2.1  as         59:        
1.1       as         60:        return $url . '?' . implode('&amp;', $tmp);
                     61: }
                     62: 
                     63: function time_difference_from_now($then) {
                     64:        $then = strtotime(prettyDatetime($then));
                     65:        $diff = time() - $then;
                     66:        return time_elapsed($diff);
                     67: }
                     68: 
                     69: function time_elapsed($c) {
1.1.1.1.2.1  as         70:        if ($c === 0 || $c < 0 || $c == '')
                     71:                return '-';
                     72: 
                     73:        if ($c >= 3600)
1.1       as         74:                return sprintf("%0d:%02d:%02d",
1.1.1.1.2.1  as         75:                        floor($c / 3600), floor(($c % 3600) / 60), floor($c % 60));
                     76: 
                     77:        return sprintf('%02d:%02d',
                     78:                floor(($c % 3600) / 60), floor($c % 60));
1.1       as         79: }
                     80: 
1.1.1.1.2.2! as         81: function __autoload($class) {
        !            82:        require_once $class.'.php';
        !            83: }
        !            84: 
        !            85: function module_list() {
        !            86:        return preg_split('/[,; ]+/', MODULES);
        !            87: }
        !            88: 
        !            89: function module_instance($module) {
        !            90:        static $instances;
        !            91:        if (! isset($instances))
        !            92:                $instances = array();
        !            93: }
        !            94: 
1.1       as         95: ?>