|
1 | 1 | // ==UserScript==
|
2 | 2 | // @name UnityForumFixer
|
3 | 3 | // @namespace https://unitycoder.com/
|
4 |
| -// @version 0.5 (26.08.2024) |
| 4 | +// @version 0.52 (26.08.2024) |
5 | 5 | // @description Fixes For Unity Forums - https://github.com/unitycoder/UnityForumFixer
|
6 | 6 | // @author unitycoder.com
|
7 | 7 | // @match https://discussions.unity.com/latest
|
@@ -283,37 +283,41 @@ function TopicsViewCombineViewAndReplyCounts()
|
283 | 283 | }
|
284 | 284 | }
|
285 | 285 |
|
286 |
| -function FixPostActivityTime() |
287 |
| -{ |
288 |
| - document.querySelectorAll('.relative-date').forEach(function (el) |
289 |
| - { |
| 286 | +function FixPostActivityTime() { |
| 287 | + document.querySelectorAll('.relative-date').forEach(function (el) { |
290 | 288 | const dataTime = parseInt(el.getAttribute('data-time'), 10);
|
291 | 289 | if (!dataTime) return;
|
292 | 290 |
|
293 | 291 | const date = new Date(dataTime);
|
294 | 292 | const now = new Date();
|
295 | 293 | const diffInMinutes = Math.floor((now - date) / (1000 * 60));
|
296 | 294 | const diffInHours = Math.floor(diffInMinutes / 60);
|
| 295 | + const diffInDays = Math.floor(diffInHours / 24); |
297 | 296 |
|
298 | 297 | let timeString;
|
299 |
| - if (diffInHours >= 1) { |
300 |
| - const remainingMinutes = diffInMinutes % 60; |
301 |
| - if (remainingMinutes > 0) { |
302 |
| - timeString = `${diffInHours} hour${diffInHours !== 1 ? 's' : ''} ${remainingMinutes} minute${remainingMinutes !== 1 ? 's' : ''} ago`; |
| 298 | + |
| 299 | + if (diffInMinutes < 60) { // Less than 60 minutes |
| 300 | + if (diffInMinutes === 0) { |
| 301 | + timeString = `just now`; |
303 | 302 | } else {
|
304 |
| - timeString = `${diffInHours} hour${diffInHours !== 1 ? 's' : ''} ago`; |
| 303 | + timeString = `${diffInMinutes} minute${diffInMinutes !== 1 ? 's' : ''} ago`; |
305 | 304 | }
|
306 |
| - } else if (diffInMinutes >= 1) { |
307 |
| - timeString = `${diffInMinutes} minute${diffInMinutes !== 1 ? 's' : ''} ago`; |
308 |
| - } else { |
309 |
| - timeString = `just now`; |
| 305 | + } else if (diffInHours < 24) { // Less than 24 hours |
| 306 | + timeString = `${diffInHours} hour${diffInHours !== 1 ? 's' : ''} ago`; |
| 307 | + } else if (diffInDays < 7) { // Within the last 7 days |
| 308 | + const dayName = date.toLocaleDateString('en-GB', { weekday: 'long' }); // Get day name like 'Monday' |
| 309 | + const formattedTime = date.toLocaleTimeString('en-GB', { hour: '2-digit', minute: '2-digit', hour12: false }); // Format as "HH:MM" |
| 310 | + timeString = `${dayName} at ${formattedTime}`; |
| 311 | + } else { // Older than 7 days |
| 312 | + timeString = date.toLocaleDateString('en-GB', { day: '2-digit', month: 'short', year: 'numeric' }); // Format as "20 Sep 2024" |
310 | 313 | }
|
311 | 314 |
|
312 | 315 | el.textContent = timeString;
|
313 | 316 | });
|
314 | 317 | }
|
315 | 318 |
|
316 | 319 |
|
| 320 | + |
317 | 321 | // POST VIEW
|
318 | 322 |
|
319 | 323 | function PostViewShowOriginalPosterInfo()
|
|
0 commit comments