summaryrefslogtreecommitdiff
path: root/inc/common.php
diff options
context:
space:
mode:
authorAndreas Gohr <gohr@cosmocode.de>2009-10-07 15:36:14 +0200
committerAndreas Gohr <gohr@cosmocode.de>2009-10-07 15:36:14 +0200
commitf22635779b10fe3735a11bc1af5c88653e580534 (patch)
tree03322ac39a0a7a644340b45417125ea4c8275b51 /inc/common.php
parentc57e365ef97272cc08601374e4de2f5bcd614335 (diff)
downloadrpg-f22635779b10fe3735a11bc1af5c88653e580534.tar.gz
rpg-f22635779b10fe3735a11bc1af5c88653e580534.tar.bz2
New dformat() function for fuzzy date support
Ignore-this: 7193cd788fee2c05a9068bf6edd5dc17 It is now possible to use the %f placeholder in $conf['dformat'] to add a fuzzy age string. Template developers and plugin authors should replace their strftime + $conf['dformat'] calls with calls to the new dformat() function. Example: %Y/%m/%d %H:%M (%f) produces dates like this: 2009/09/16 10:36 (3 weeks ago) darcs-hash:20091007133614-6e07b-677108d1b43928ef8fd886813e43514507b5e073.gz
Diffstat (limited to 'inc/common.php')
-rw-r--r--inc/common.php22
1 files changed, 21 insertions, 1 deletions
diff --git a/inc/common.php b/inc/common.php
index 82d5f69ee..a15cb5c62 100644
--- a/inc/common.php
+++ b/inc/common.php
@@ -1082,7 +1082,7 @@ function notify($id,$who,$rev='',$summary='',$minor=false,$replace=array()){
}
$ip = clientIP();
- $text = str_replace('@DATE@',strftime($conf['dformat']),$text);
+ $text = str_replace('@DATE@',dformat(),$text);
$text = str_replace('@BROWSER@',$_SERVER['HTTP_USER_AGENT'],$text);
$text = str_replace('@IPADDRESS@',$ip,$text);
$text = str_replace('@HOSTNAME@',gethostsbyaddrs($ip),$text);
@@ -1224,6 +1224,26 @@ function datetime_h($dt){
}
/**
+ * Wraps around strftime but provides support for fuzzy dates
+ *
+ * The format default to $conf['dformat']. It is passed to
+ * strftime - %f can be used to get the value from datetime_h()
+ *
+ * @see datetime_h
+ * @author Andreas Gohr <gohr@cosmocode.de>
+ */
+function dformat($dt=null,$format=''){
+ global $conf;
+
+ if(is_null($dt)) $dt = time();
+ $dt = (int) $dt;
+ if(!$format) $format = $conf['dformat'];
+
+ $format = str_replace('%f',datetime_h($dt),$format);
+ return strftime($format,$dt);
+}
+
+/**
* return an obfuscated email address in line with $conf['mailguard'] setting
*
* @author Harry Fuecks <hfuecks@gmail.com>