Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript]Polski czas i gramatyka
Forum PHP.pl > Forum > Przedszkole
senior.pol
Witam,
Jak dodać do poniższego skryptu dodatkowe opcje z czasem, np. jeśli minęły 53 minuty, to będzie "dodano 53 minuty temu", a nie jak jest teraz "dodano 53 minut temu" ?
  1. FUNCTION relative_time(time_value) {
  2. var VALUES = time_value.split(" ");
  3. time_value = VALUES[1] + " " + VALUES[2] + ", " + VALUES[5] + " " + VALUES[3];
  4. var parsed_date = Date.parse(time_value);
  5. var relative_to = (arguments.length > 1) ? arguments[1] : new Date();
  6. var delta = parseInt((relative_to.getTime() - parsed_date) / 1000);
  7. delta = delta + (relative_to.getTimezoneOffset() * 60);
  8.  
  9. IF (delta < 60) {
  10. RETURN 'dodano sekund temu';
  11. } else IF(delta < 120) {
  12. RETURN 'dodano minutę temu';
  13. } else IF(delta < (60*60)) {
  14. RETURN (parseInt(delta / 60)).toString() + ' minut temu';
  15. } else IF(delta < (120*60)) {
  16. RETURN 'dodano godzinę temu';
  17. } else IF(delta < (24*60*60)) {
  18. RETURN 'dodano ' + (parseInt(delta / 3600)).toString() + ' godzin temu';
  19. } else IF(delta < (48*60*60)) {
  20. RETURN 'dzień temu';
  21. } else {
  22. RETURN (parseInt(delta / 86400)).toString() + ' dni temu';
  23. }
  24. }
markonix
Instrukcje warunkową umieść po prostu przed linią 14, a słowo "minut" zmień w zmienną, która będzie przybierała odpowiednią formę.
senior.pol
No i tu jest problem, bo nie wiem jak tą instrukcję napisać, dla tak małych warunków.
markonix
Zdefiniuj pojęcie małych warunków bo Cię nie rozumiem.
  1. var minute_txt = 'minut';
  2. if (delta > x) wtedy minute_txt coś tam.
  3. RETURN (parseInt(delta / 60)).toString() + ' ' + minute_txt + ' temu';

Warunki możesz opierać o sekundy bo domyślam się, że delta właśnie je przechowuje - mniej czytelne ale mniej linijek, albo zmień sekundy na minuty co masz już zrobione w return (jeśli to już zrobisz wyżej to z return to wywal - po co dwa razy).
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.