function hex2bin($s) {
return(pack("H*",$s));
-}
\ No newline at end of file
+}
+
$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';
// show relative date and add proper verbiage
return $relative_date.' ago';
}
+
+function age($dob,$owner_tz = '',$viewer_tz = '') {
+ if(strlen($dob) != 10)
+ return 0;
+ if(! $owner_tz)
+ $owner_tz = date_default_timezone_get();
+ if(! $viewer_tz)
+ $viewer_tz = date_default_timezone_get();
+
+ $birthdate = datetime_convert('UTC',$owner_tz,$dob . ' 00:00:00+00:00','Y-m-d');
+ list($year,$month,$day) = explode("-",$birthdate);
+ $year_diff = datetime_convert('UTC',$viewer_tz,'now','Y') - $year;
+ $curr_month = datetime_convert('UTC',$viewer_tz,'now','m');
+ $curr_day = datetime_convert('UTC',$viewer_tz,'now','d');
+
+ if(($curr_month < $month) || (($curr_month == $month) && ($curr_day < $day)))
+ $year_diff--;
+ return $year_diff;
+}
function directory_content(&$a) {
+ $search = ((x($_GET,'search')) ? notags(trim($_GET['search'])) : '');
$tpl .= file_get_contents('view/directory_header.tpl');
$o .= replace_macros($tpl, array(
+ '$search' => $search
));
- $r = q("SELECT `profile`.*, `profile`.`uid` AS `profile_uid`, `user`.`nickname` FROM `profile` LEFT JOIN `user` ON `user`.`uid` = `profile`.`uid` WHERE `is-default` = 1 AND `publish` = 1 ORDER BY `name` ASC");
+ if($search)
+ $search = dbesc($search);
+ $sql_extra = ((strlen($search)) ? " AND MATCH (`profile`.`name`, `user`.`nickname`, `locality`,`region`,`country-name`,`gender`,`marital`,`sexual`,`about`,`romance`,`employer`,`school`) AGAINST ('$search' IN BOOLEAN MODE) " : "");
+
+ $r = q("SELECT `profile`.*, `profile`.`uid` AS `profile_uid`, `user`.`nickname`, `user`.`timezone` FROM `profile` LEFT JOIN `user` ON `user`.`uid` = `profile`.`uid` WHERE `is-default` = 1 AND `publish` = 1 $sql_extra ORDER BY `name` ASC");
if(count($r)) {
$tpl = file_get_contents('view/directory_item.tpl');
$details .= ', ';
$details .= $rr['country-name'];
}
- if(strlen($rr['dob']))
- $details .= '<br />Age: ' ; // . calculate age($rr['dob'])) ;
+ if(strlen($rr['dob'])) {
+ if(($years = age($rr['dob'],$rr['timezone'],'')) != 0)
+ $details .= "<br />Age: $years" ;
+ }
if(strlen($rr['gender']))
$details .= '<br />Gender: ' . $rr['gender'];
overflow: auto;
}
+#directory-search-wrapper {
+ float: right;
+ margin-right: 20px;
+ margin-bottom: 50px;
+}
+
+#directory-search-end {
+ clear: both;
+}
\ No newline at end of file
reputation
-directory page search, pager, details
+directory page pager
+
+profile advanced details submit, display
publish to external directory