Skip to content
Snippets Groups Projects
Select Git revision
  • dailybuild_linux-x64
  • dailybuild_win32
  • master default protected
  • sqlite
  • rip_abstraction
  • dailybuild_macos-armv8
  • dd_file_lister_filanem_in_desc_color
  • mode7
  • dd_msg_reader_are_you_there_warning_improvement
  • c23-playing
  • syncterm-1.3
  • syncterm-1.2
  • test-build
  • hide_remote_connection_with_telgate
  • 638-can-t-control-c-during-a-file-search
  • add_body_to_pager_email
  • mingw32-build
  • cryptlib-3.4.7
  • ree/mastermind
  • new_user_dat
  • sbbs320d
  • syncterm-1.6
  • syncterm-1.5
  • syncterm-1.4
  • sbbs320b
  • syncterm-1.3
  • syncterm-1.2
  • syncterm-1.2rc6
  • syncterm-1.2rc5
  • push
  • syncterm-1.2rc4
  • syncterm-1.2rc2
  • syncterm-1.2rc1
  • sbbs319b
  • sbbs318b
  • goodbuild_linux-x64_Sep-01-2020
  • goodbuild_win32_Sep-01-2020
  • goodbuild_linux-x64_Aug-31-2020
  • goodbuild_win32_Aug-31-2020
  • goodbuild_win32_Aug-30-2020
40 results

age.js

Blame
    • Rob Swindell's avatar
      a54bb6af
      Remove old CVS tags, increment revision/version numbers where used · a54bb6af
      Rob Swindell authored
      The details (dates, author, revision numbers) are often stale and
      misleading, so start removing them. Where the Revision tag was used
      for a version/revision, just bump it by one and use a string constant
      instead (Git doesn't provide any similar facility for auto-incrementing
      revision numbers).
      
      More remains. Perhaps a commit hook to alert me when committing that I should
      clean up as I go rather than try to do this in bulk. <shrug>
      a54bb6af
      History
      Remove old CVS tags, increment revision/version numbers where used
      Rob Swindell authored
      The details (dates, author, revision numbers) are often stale and
      misleading, so start removing them. Where the Revision tag was used
      for a version/revision, just bump it by one and use a string constant
      instead (Git doesn't provide any similar facility for auto-incrementing
      revision numbers).
      
      More remains. Perhaps a commit hook to alert me when committing that I should
      clean up as I go rather than try to do this in bulk. <shrug>
    age.js 1.56 KiB
    require('text.js', 'Years');
    
    // Ported from src/sbbs3/str.cpp, sbbs_t::age_of_posted_item()
    function seconds(t, adjust_for_zone)
    {
    	var	now = time();
    	if(adjust_for_zone)
    		now += new Date().getTimezoneOffset() * 60
    	
    	var diff = now - Number(t);
    	if(diff < 0) {
    		past = system.text(InTheFuture);
    		diff = -diff;
    	}
    	return diff;
    }
    
    function minutes(t, adjust_for_zone)
    {
    	return seconds(t, adjust_for_zone) / 60.0;
    }
    
    function hours(t, adjust_for_zone)
    {
    	return minutes(t, adjust_for_zone) / 60.0;
    }
    
    function days(t, adjust_for_zone)
    {
    	return hours(t, adjust_for_zone) / 24.0;
    }
    
    function months(t, adjust_for_zone)
    {
    	return days(t, adjust_for_zone) / 30.0;
    }
    
    function years(t, adjust_for_zone)
    {
    	return days(t, adjust_for_zone) / 365.25;
    }
    
    function string(t, adjust_for_zone)
    {
    	var	past = system.text(InThePast);
    	var	units = system.text(Years);
    	var value;
    	var diff = seconds(t, adjust_for_zone);
    	
    	if(diff < 60) {
    		value = format("%.0f", diff);
    		units = system.text(Seconds);
    	} else if(diff < 60*60) {
    		value = format("%.0f", diff / 60.0);
    		units = system.text(Minutes);
    	} else if(diff < 60*60*24) {
    		value = format("%.1f", diff / (60.0 * 60.0));
    		units = system.text(Hours);
    	} else if(diff < 60*60*24*30) {
    		value = format("%.1f", diff / (60.0 * 60.0 * 24.0));
    		units = system.text(Days);
    	} else if(diff < 60*60*24*365) {
    		value = format("%.1f", diff / (60.0 * 60.0 * 24.0 * 30.0));
    		units = system.text(Months);
    	} else
    		value = format("%.1f", diff / (60.0 * 60.0 * 24.0 * 365.25));
    	
    	return(format(system.text(AgeOfPostedItem), value, units, past));
    }
    
    this;