timefly 0.0.1 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
 - data/lib/timefly.rb +83 -0
 - metadata +2 -2
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            SHA1:
         
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: 8fc9e01f42843c1b0b98bb6dca9f7ffbc63c3398
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: 3ef046d0ca42a3377bd0b04762a3f7e06f0f442e
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: 1d4180a780c3e7c2ff342350de56a3e9aa4a7c6b851fb13cceb2410cbd9f0ec3288712d4e69be783aa325f6cb3a2c1a50463633887abb4dda7be2663b86838e5
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: 20d59e84b78b2244170fab019ede757f1d8b20349a0cfc0b3ee3e187c32d8240b2f43387214ff20e7fcfee18503cba502a6b5c4c442dcf2c1cb0d78c4a6fbc71
         
     | 
    
        data/lib/timefly.rb
    CHANGED
    
    | 
         @@ -34,6 +34,27 @@ class Timefly 
     | 
|
| 
       34 
34 
     | 
    
         
             
                end
         
     | 
| 
       35 
35 
     | 
    
         
             
              end
         
     | 
| 
       36 
36 
     | 
    
         | 
| 
      
 37 
     | 
    
         
            +
              # returns the time elapsed in a readable format
         
     | 
| 
      
 38 
     | 
    
         
            +
              #
         
     | 
| 
      
 39 
     | 
    
         
            +
              # Example:
         
     | 
| 
      
 40 
     | 
    
         
            +
              #   >> Timefly.new(origin_time).time_elapsed
         
     | 
| 
      
 41 
     | 
    
         
            +
              #   => '4 hours ago'
         
     | 
| 
      
 42 
     | 
    
         
            +
              def elapsed_time
         
     | 
| 
      
 43 
     | 
    
         
            +
                if time_elapsed_in_seconds?
         
     | 
| 
      
 44 
     | 
    
         
            +
                  elapsed_time_in_seconds
         
     | 
| 
      
 45 
     | 
    
         
            +
                elsif time_elapsed_in_minutes?
         
     | 
| 
      
 46 
     | 
    
         
            +
                  elapsed_time_in_minutes
         
     | 
| 
      
 47 
     | 
    
         
            +
                elsif time_elapsed_in_hours?
         
     | 
| 
      
 48 
     | 
    
         
            +
                  elapsed_time_in_hours
         
     | 
| 
      
 49 
     | 
    
         
            +
                elsif time_elapsed_in_days?
         
     | 
| 
      
 50 
     | 
    
         
            +
                  elapsed_time_in_days
         
     | 
| 
      
 51 
     | 
    
         
            +
                elsif time_elapsed_in_months?
         
     | 
| 
      
 52 
     | 
    
         
            +
                  elapsed_time_in_months
         
     | 
| 
      
 53 
     | 
    
         
            +
                else
         
     | 
| 
      
 54 
     | 
    
         
            +
                  elapsed_time_in_years
         
     | 
| 
      
 55 
     | 
    
         
            +
                end
         
     | 
| 
      
 56 
     | 
    
         
            +
              end
         
     | 
| 
      
 57 
     | 
    
         
            +
             
     | 
| 
       37 
58 
     | 
    
         
             
              private
         
     | 
| 
       38 
59 
     | 
    
         | 
| 
       39 
60 
     | 
    
         
             
              # This method tries to convert the origin_time to Time
         
     | 
| 
         @@ -91,4 +112,66 @@ class Timefly 
     | 
|
| 
       91 
112 
     | 
    
         
             
                  now_years - origin_time_years
         
     | 
| 
       92 
113 
     | 
    
         
             
                end
         
     | 
| 
       93 
114 
     | 
    
         
             
              end
         
     | 
| 
      
 115 
     | 
    
         
            +
             
     | 
| 
      
 116 
     | 
    
         
            +
              # START time_elapsed helper methods --------------------------------
         
     | 
| 
      
 117 
     | 
    
         
            +
             
     | 
| 
      
 118 
     | 
    
         
            +
              def time_diff_in_secs
         
     | 
| 
      
 119 
     | 
    
         
            +
                @time_diff_in_secs ||= (Time.now - origin_time).to_i.abs
         
     | 
| 
      
 120 
     | 
    
         
            +
              end
         
     | 
| 
      
 121 
     | 
    
         
            +
             
     | 
| 
      
 122 
     | 
    
         
            +
              def time_elapsed_in_seconds?
         
     | 
| 
      
 123 
     | 
    
         
            +
                time_diff_in_secs < 60
         
     | 
| 
      
 124 
     | 
    
         
            +
              end
         
     | 
| 
      
 125 
     | 
    
         
            +
             
     | 
| 
      
 126 
     | 
    
         
            +
              def time_elapsed_in_minutes?
         
     | 
| 
      
 127 
     | 
    
         
            +
                (time_diff_in_secs / 60) < 60
         
     | 
| 
      
 128 
     | 
    
         
            +
              end
         
     | 
| 
      
 129 
     | 
    
         
            +
             
     | 
| 
      
 130 
     | 
    
         
            +
              def time_elapsed_in_hours?
         
     | 
| 
      
 131 
     | 
    
         
            +
                (time_diff_in_secs / (60 * 60)) < 24
         
     | 
| 
      
 132 
     | 
    
         
            +
              end
         
     | 
| 
      
 133 
     | 
    
         
            +
             
     | 
| 
      
 134 
     | 
    
         
            +
              def time_elapsed_in_days?
         
     | 
| 
      
 135 
     | 
    
         
            +
                (time_diff_in_secs / (60 * 60 * 24)) < 30
         
     | 
| 
      
 136 
     | 
    
         
            +
              end
         
     | 
| 
      
 137 
     | 
    
         
            +
             
     | 
| 
      
 138 
     | 
    
         
            +
              def time_elapsed_in_months?
         
     | 
| 
      
 139 
     | 
    
         
            +
                (time_diff_in_secs / (60 * 60 * 24 * 30)) < 12
         
     | 
| 
      
 140 
     | 
    
         
            +
              end
         
     | 
| 
      
 141 
     | 
    
         
            +
             
     | 
| 
      
 142 
     | 
    
         
            +
              def elapsed_time_in_seconds
         
     | 
| 
      
 143 
     | 
    
         
            +
                'a few seconds ago'
         
     | 
| 
      
 144 
     | 
    
         
            +
              end
         
     | 
| 
      
 145 
     | 
    
         
            +
             
     | 
| 
      
 146 
     | 
    
         
            +
              def elapsed_time_in_minutes
         
     | 
| 
      
 147 
     | 
    
         
            +
                time_diff = time_diff_in_secs / 60
         
     | 
| 
      
 148 
     | 
    
         
            +
                elapsed_time_in_unit(time_diff, 'minute')
         
     | 
| 
      
 149 
     | 
    
         
            +
              end
         
     | 
| 
      
 150 
     | 
    
         
            +
             
     | 
| 
      
 151 
     | 
    
         
            +
              def elapsed_time_in_hours
         
     | 
| 
      
 152 
     | 
    
         
            +
                time_diff = time_diff_in_secs / (60 * 60)
         
     | 
| 
      
 153 
     | 
    
         
            +
                elapsed_time_in_unit(time_diff, 'hour')
         
     | 
| 
      
 154 
     | 
    
         
            +
              end
         
     | 
| 
      
 155 
     | 
    
         
            +
             
     | 
| 
      
 156 
     | 
    
         
            +
              def elapsed_time_in_days
         
     | 
| 
      
 157 
     | 
    
         
            +
                time_diff = time_diff_in_secs / (60 * 60 * 24)
         
     | 
| 
      
 158 
     | 
    
         
            +
                elapsed_time_in_unit(time_diff, 'day')
         
     | 
| 
      
 159 
     | 
    
         
            +
              end
         
     | 
| 
      
 160 
     | 
    
         
            +
             
     | 
| 
      
 161 
     | 
    
         
            +
              def elapsed_time_in_months
         
     | 
| 
      
 162 
     | 
    
         
            +
                time_diff = time_diff_in_secs / (60 * 60 * 24 * 30)
         
     | 
| 
      
 163 
     | 
    
         
            +
                elapsed_time_in_unit(time_diff, 'month')
         
     | 
| 
      
 164 
     | 
    
         
            +
              end
         
     | 
| 
      
 165 
     | 
    
         
            +
             
     | 
| 
      
 166 
     | 
    
         
            +
              def elapsed_time_in_years
         
     | 
| 
      
 167 
     | 
    
         
            +
                time_diff = time_diff_in_secs / (60 * 60 * 24 * 30 * 12)
         
     | 
| 
      
 168 
     | 
    
         
            +
                elapsed_time_in_unit(time_diff, 'year')
         
     | 
| 
      
 169 
     | 
    
         
            +
              end
         
     | 
| 
      
 170 
     | 
    
         
            +
             
     | 
| 
      
 171 
     | 
    
         
            +
              def elapsed_time_in_unit(time_diff, unit)
         
     | 
| 
      
 172 
     | 
    
         
            +
                unit += 's' if time_diff > 1
         
     | 
| 
      
 173 
     | 
    
         
            +
                "#{time_diff} #{unit} ago"
         
     | 
| 
      
 174 
     | 
    
         
            +
              end
         
     | 
| 
      
 175 
     | 
    
         
            +
             
     | 
| 
      
 176 
     | 
    
         
            +
              # END time_elapsed helper methods --------------------------------
         
     | 
| 
       94 
177 
     | 
    
         
             
            end
         
     | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,14 +1,14 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: timefly
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 0.0 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 0.1.0
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors:
         
     | 
| 
       7 
7 
     | 
    
         
             
            - Gaurav Singha Roy
         
     | 
| 
       8 
8 
     | 
    
         
             
            autorequire: 
         
     | 
| 
       9 
9 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       10 
10 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       11 
     | 
    
         
            -
            date: 2015-07- 
     | 
| 
      
 11 
     | 
    
         
            +
            date: 2015-07-19 00:00:00.000000000 Z
         
     | 
| 
       12 
12 
     | 
    
         
             
            dependencies:
         
     | 
| 
       13 
13 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       14 
14 
     | 
    
         
             
              name: rspec
         
     |