define('PLUGIN_NEW_DATE_FORMAT', '<span class="comment_date">%s</span>');
-function plugin_new_init()
-{
- // Elapsed time => New! message with CSS
- $messages['_plugin_new_elapses'] = array(
- 60 * 60 * 24 * 1 => ' <span class="new1" title="%s">New!</span>', // 1day
- 60 * 60 * 24 * 5 => ' <span class="new5" title="%s">New</span>'); // 5days
- set_plugin_messages($messages);
-}
-
function plugin_new_inline()
{
- global $vars, $_plugin_new_elapses;
+ global $vars;
$retval = '';
$args = func_get_args();
}
}
}
-
- // Add 'New!' string by the elapsed time
- $erapse = UTIME - $timestamp;
- foreach ($_plugin_new_elapses as $limit=>$tag) {
- if ($erapse <= $limit) {
- $retval .= sprintf($tag, get_passage($timestamp));
- break;
- }
- }
-
if($date !== '') {
+ // 1 day hot: <span class="new1">New!</span>
+ // 5 days hot: <span class="new5">New</span>
+ $retval .= '<span class="__plugin_new" data-mtime="' . get_date_atom($timestamp + LOCALZONE) . '"></span>';
// Show a date string
return sprintf(PLUGIN_NEW_DATE_FORMAT, $retval);
} else {
e.textContent = getSimplePassage(d, now);
}
});
+ // new plugin
+ var newItems = document.getElementsByClassName('__plugin_new');
+ forEach(newItems, function(e) {
+ var dt = e.getAttribute('data-mtime');
+ if (dt) {
+ var d = new Date(dt);
+ var diff = now.getTime() - d.getTime();
+ var daySpan = diff / 1000 / 60 / 60 / 24;
+ if (daySpan < 1) {
+ e.textContent = ' New!';
+ e.title = getPassage(d, now);
+ if (e.classList && e.classList.add) {
+ e.classList.add('new1');
+ }
+ } else if (daySpan < 5) {
+ e.textContent = ' New';
+ e.title = getPassage(d, now);
+ if (e.classList && e.classList.add) {
+ e.classList.add('new5');
+ }
+ }
+ }
+ });
}
setYourName();
autoTicketLink();