diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/auth.php | 6 | ||||
-rw-r--r-- | include/datetime.php | 76 | ||||
-rw-r--r-- | include/dba.php | 4 |
3 files changed, 35 insertions, 51 deletions
diff --git a/include/auth.php b/include/auth.php index 8f9019e01..8d2a0e2d0 100644 --- a/include/auth.php +++ b/include/auth.php @@ -10,7 +10,7 @@ if((x($_SESSION,'authenticated')) && (! ($_POST['auth-params'] == 'login'))) { unset($_SESSION['is_visitor']); unset($_SESSION['administrator']); unset($_SESSION['cid']); - $_SESSION['sysmsg'] = t("Logged out.") . EOL; + notice( t('Logged out.') . EOL); goaway($a->get_baseurl()); } if(x($_SESSION,'uid')) { @@ -50,7 +50,7 @@ else { dbesc(trim($_POST['login-name'])), dbesc($encrypted)); if(($r === false) || (! count($r))) { - $_SESSION['sysmsg'] = t('Login failed.') . EOL ; + notice( t('Login failed.') . EOL ); goaway($a->get_baseurl()); } $_SESSION['uid'] = $r[0]['uid']; @@ -58,7 +58,7 @@ else { $_SESSION['authenticated'] = 1; $_SESSION['my_url'] = $a->get_baseurl() . '/profile/' . $r[0]['nickname']; - $_SESSION['sysmsg'] = t("Welcome back ") . $r[0]['username'] . EOL; + notice( t("Welcome back ") . $r[0]['username'] . EOL); $a->user = $r[0]; if(strlen($a->user['timezone'])) date_default_timezone_set($a->user['timezone']); diff --git a/include/datetime.php b/include/datetime.php index b0621f4a2..15d688530 100644 --- a/include/datetime.php +++ b/include/datetime.php @@ -8,8 +8,8 @@ function timezone_cmp($a, $b) { } if(strstr($a,'/')) return -1; if(strstr($b,'/')) return 1; - if ($a == $b) return 0; - return ($a < $b) ? -1 : 1; + if ( t($a) == t($b)) return 0; + return ( t($a) < t($b)) ? -1 : 1; }} @@ -29,7 +29,7 @@ function select_timezone($current = 'America/Los_Angeles') { if($continent != '') $o .= '</optgroup>'; $continent = $ex[0]; - $o .= "<optgroup label=\"$continent\">"; + $o .= '<optgroup label="' . t($continent) . '">'; } if(count($ex) > 2) $city = substr($value,strpos($value,'/')+1); @@ -41,10 +41,10 @@ function select_timezone($current = 'America/Los_Angeles') { if($continent != 'Miscellaneous') { $o .= '</optgroup>'; $continent = 'Miscellaneous'; - $o .= "<optgroup label=\"$continent\">"; + $o .= '<optgroup label="' . t($continent) . '">'; } } - $city = str_replace('_', ' ', $city); + $city = str_replace('_', ' ', t($city)); $selected = (($value == $current) ? " selected=\"selected\" " : ""); $o .= "<option value=\"$value\" $selected >$city</option>"; } @@ -101,56 +101,36 @@ function datesel($pre,$ymin,$ymax,$allow_blank,$y,$m,$d) { }} -// TODO rewrite this buggy sucker +if(! function_exists('relative_date')) { function relative_date($posted_date) { $localtime = datetime_convert('UTC',date_default_timezone_get(),$posted_date); - - $in_seconds = strtotime($localtime); - $diff = time() - $in_seconds; + $abs = strtotime($localtime); + $etime = time() - $abs; + + if ($etime < 1) { + return t('less than a second ago'); + } + + $a = array( 12 * 30 * 24 * 60 * 60 => array( t('year'), t('years')), + 30 * 24 * 60 * 60 => array( t('month'), t('months')), + 7 * 24 * 60 * 60 => array( t('week'), t('weeks')), + 24 * 60 * 60 => array( t('day'), t('days')), + 60 * 60 => array( t('hour'), t('hours')), + 60 => array( t('minute'), t('minutes')), + 1 => array( t('second'), t('seconds')) + ); - $months = floor($diff/2592000); - $diff -= $months*2419200; - $weeks = floor($diff/604800); - $diff -= $weeks*604800; - $days = floor($diff/86400); - $diff -= $days*86400; - $hours = floor($diff/3600); - $diff -= $hours*3600; - $minutes = floor($diff/60); - $diff -= $minutes*60; - $seconds = $diff; - - if($months > 2) - return(datetime_convert('UTC',date_default_timezone_get(),$posted_date,'\o\n Y-m-d \a\t H:i:s')); - if ($months>0) { - // over a month old, - return 'over a month ago'; - } else { - if ($weeks>0) { - // weeks and days - $relative_date .= ($relative_date?', ':'').$weeks.' week'.($weeks!=1 ?'s':''); - - } elseif ($days>0) { - // days and hours - $relative_date .= ($relative_date?', ':'').$days.' day'.($days!=1?'s':''); - - } elseif ($hours>0) { - // hours and minutes - $relative_date .= ($relative_date?', ':'').$hours.' hour'.($hours!=1?'s':''); - - } elseif ($minutes>0) { - // minutes only - $relative_date .= ($relative_date?', ':'').$minutes.' minute'.($minutes!=1?'s':''); - } else { - // seconds only - $relative_date .= ($relative_date?', ':'').$seconds.' second'.($seconds!=1?'s':''); + foreach ($a as $secs => $str) { + $d = $etime / $secs; + if ($d >= 1) { + $r = round($d); + return $r . ' ' . (($r == 1) ? $str[0] : $str[1]) . t(' ago'); } } - // show relative date and add proper verbiage - return $relative_date.' ago'; -} +}} + function age($dob,$owner_tz = '',$viewer_tz = '') { if(! intval($dob)) diff --git a/include/dba.php b/include/dba.php index 07142dbad..050068230 100644 --- a/include/dba.php +++ b/include/dba.php @@ -20,6 +20,10 @@ class dba { system_unavailable(); } + public function getdb() { + return $this->db; + } + public function q($sql) { global $debug_text; |