Expanded timeAgo function to incoude time ahead, added this functionality to client overview

This commit is contained in:
johnnyq
2024-01-15 22:59:39 -05:00
parent b5e67eb3f6
commit e07fb9ce50
2 changed files with 20 additions and 10 deletions

View File

@@ -180,12 +180,13 @@ $sql_asset_retire = mysqli_query(
$domain_id = intval($row['domain_id']); $domain_id = intval($row['domain_id']);
$domain_name = nullable_htmlentities($row['domain_name']); $domain_name = nullable_htmlentities($row['domain_name']);
$domain_expire = nullable_htmlentities($row['domain_expire']); $domain_expire = nullable_htmlentities($row['domain_expire']);
$domain_expire_human = timeAgo($row['domain_expire']);
?> ?>
<p class="mb-1"> <p class="mb-1">
<i class="fa fa-fw fa-globe text-secondary mr-1"></i> <i class="fa fa-fw fa-globe text-secondary mr-1"></i>
<a href="client_domains.php?client_id=<?php echo $client_id; ?>&q=<?php echo $domain_name; ?>"><?php echo $domain_name; ?></a> <a href="client_domains.php?client_id=<?php echo $client_id; ?>&q=<?php echo $domain_name; ?>"><?php echo $domain_name; ?></a>
<span class="text-warning">-- <?php echo $domain_expire; ?></span> <span>-- <?php echo $domain_expire_human; ?> <small class="text-muted"><?php echo $domain_expire; ?></small></span>
</p> </p>
<?php <?php
} }
@@ -197,12 +198,13 @@ $sql_asset_retire = mysqli_query(
$asset_id = intval($row['asset_id']); $asset_id = intval($row['asset_id']);
$asset_name = nullable_htmlentities($row['asset_name']); $asset_name = nullable_htmlentities($row['asset_name']);
$asset_warranty_expire = nullable_htmlentities($row['asset_warranty_expire']); $asset_warranty_expire = nullable_htmlentities($row['asset_warranty_expire']);
$asset_warranty_expire_human = timeAgo($row['asset_warranty_expire']);
?> ?>
<p class="mb-1"> <p class="mb-1">
<i class="fa fa-fw fa-laptop text-secondary mr-1"></i> <i class="fa fa-fw fa-laptop text-secondary mr-1"></i>
<a href="client_assets.php?client_id=<?php echo $client_id; ?>&q=<?php echo $asset_name; ?>"><?php echo $asset_name; ?></a> <a href="client_assets.php?client_id=<?php echo $client_id; ?>&q=<?php echo $asset_name; ?>"><?php echo $asset_name; ?></a>
<span class="text-warning">-- <?php echo $asset_warranty_expire; ?></span> <span>-- <?php echo $asset_warranty_expire_human; ?> <small class="text-muted"><?php echo $asset_warranty_expire; ?></small></span>
</p> </p>
@@ -216,12 +218,13 @@ $sql_asset_retire = mysqli_query(
$asset_id = intval($row['asset_id']); $asset_id = intval($row['asset_id']);
$asset_name = nullable_htmlentities($row['asset_name']); $asset_name = nullable_htmlentities($row['asset_name']);
$asset_install_date = nullable_htmlentities($row['asset_install_date']); $asset_install_date = nullable_htmlentities($row['asset_install_date']);
$asset_install_date_human = timeAgo($row['asset_install_date']);
?> ?>
<p class="mb-1"> <p class="mb-1">
<i class="fa fa-fw fa-laptop text-secondary mr-1"></i> <i class="fa fa-fw fa-laptop text-secondary mr-1"></i>
<a href="client_assets.php?client_id=<?php echo $client_id; ?>&q=<?php echo $asset_name; ?>"><?php echo $asset_name; ?></a> <a href="client_assets.php?client_id=<?php echo $client_id; ?>&q=<?php echo $asset_name; ?>"><?php echo $asset_name; ?></a>
<span class="text-warning">-- <?php echo $asset_install_date; ?></span> <span>-- <?php echo $asset_install_date_human; ?> <small class="text-muted"><?php echo $asset_install_date; ?></small></span>
</p> </p>
<?php <?php
@@ -234,12 +237,13 @@ $sql_asset_retire = mysqli_query(
$software_id = intval($row['software_id']); $software_id = intval($row['software_id']);
$software_name = nullable_htmlentities($row['software_name']); $software_name = nullable_htmlentities($row['software_name']);
$software_expire = nullable_htmlentities($row['software_expire']); $software_expire = nullable_htmlentities($row['software_expire']);
$software_expire_human = timeAgo($row['software_expire']);
?> ?>
<p class="mb-1"> <p class="mb-1">
<i class="fa fa-fw fa-cube text-secondary mr-1"></i> <i class="fa fa-fw fa-cube text-secondary mr-1"></i>
<a href="client_software.php?client_id=<?php echo $client_id; ?>&q=<?php echo $software_name; ?>"><?php echo $software_name; ?></a> <a href="client_software.php?client_id=<?php echo $client_id; ?>&q=<?php echo $software_name; ?>"><?php echo $software_name; ?></a>
<span class="text-warning">-- <?php echo $software_expire; ?></span> <span>-- <?php echo $software_expire_human; ?> <small class="text-muted"><?php echo $software_expire; ?></small></span>
</p> </p>
<?php <?php
@@ -274,12 +278,13 @@ $sql_asset_retire = mysqli_query(
$ticket_number = intval($row['ticket_number']); $ticket_number = intval($row['ticket_number']);
$ticket_subject = nullable_htmlentities($row['ticket_subject']); $ticket_subject = nullable_htmlentities($row['ticket_subject']);
$ticket_created_at = nullable_htmlentities($row['ticket_created_at']); $ticket_created_at = nullable_htmlentities($row['ticket_created_at']);
$ticket_created_at_human = timeAgo($row['ticket_created_at']);
?> ?>
<tr> <tr>
<td><a href="ticket.php?ticket_id=<?php echo $ticket_id?>"><?php echo "$ticket_prefix$ticket_number"; ?></a></td> <td><a href="ticket.php?ticket_id=<?php echo $ticket_id?>"><?php echo "$ticket_prefix$ticket_number"; ?></a></td>
<td><?php echo $ticket_subject; ?></td> <td><?php echo $ticket_subject; ?></td>
<td class="text-danger"><?php echo $ticket_created_at; ?></td> <td><?php echo $ticket_created_at_human; ?> <small class="text-muted"><?php echo $ticket_created_at; ?></small></td>
</tr> </tr>
<?php <?php

View File

@@ -681,12 +681,16 @@ function sanitizeForEmail($data) {
function timeAgo($datetime) { function timeAgo($datetime) {
$time = strtotime($datetime); $time = strtotime($datetime);
$difference = time() - $time; $difference = $time - time(); // Changed to handle future dates
if ($difference < 1) { if ($difference == 0) {
return 'just now'; return 'right now';
} }
$timeRules = array (
$isFuture = $difference > 0; // Check if the date is in the future
$difference = abs($difference); // Absolute value for calculation
$timeRules = array(
31536000 => 'year', 31536000 => 'year',
2592000 => 'month', 2592000 => 'month',
604800 => 'week', 604800 => 'week',
@@ -700,7 +704,8 @@ function timeAgo($datetime) {
$div = $difference / $secs; $div = $difference / $secs;
if ($div >= 1) { if ($div >= 1) {
$t = round($div); $t = round($div);
return $t . ' ' . $str . ($t > 1 ? 's' : '') . ' ago'; $timeStr = $t . ' ' . $str . ($t > 1 ? 's' : '');
return $isFuture ? 'in ' . $timeStr : $timeStr . ' ago';
} }
} }
} }