Make WordPress Core

Ticket #9272: 9272.3.patch

File 9272.3.patch, 1.9 KB (added by SergeyBiryukov, 12 years ago)
  • wp-includes/formatting.php

     
    21332133function human_time_diff( $from, $to = '' ) {
    21342134        if ( empty( $to ) )
    21352135                $to = time();
     2136
    21362137        $diff = (int) abs( $to - $from );
    2137         if ( $diff <= HOUR_IN_SECONDS ) {
     2138
     2139        if ( $diff < HOUR_IN_SECONDS ) {
    21382140                $mins = round( $diff / MINUTE_IN_SECONDS );
    2139                 if ( $mins <= 1 ) {
     2141                if ( $mins <= 1 )
    21402142                        $mins = 1;
    2141                 }
    21422143                /* translators: min=minute */
    21432144                $since = sprintf( _n( '%s min', '%s mins', $mins ), $mins );
    2144         } elseif ( ( $diff <= DAY_IN_SECONDS ) && ( $diff > HOUR_IN_SECONDS ) ) {
     2145        } elseif ( $diff < DAY_IN_SECONDS && $diff >= HOUR_IN_SECONDS ) {
    21452146                $hours = round( $diff / HOUR_IN_SECONDS );
    2146                 if ( $hours <= 1 ) {
     2147                if ( $hours <= 1 )
    21472148                        $hours = 1;
    2148                 }
    21492149                $since = sprintf( _n( '%s hour', '%s hours', $hours ), $hours );
    2150         } elseif ( $diff >= DAY_IN_SECONDS ) {
     2150        } elseif ( $diff < WEEK_IN_SECONDS && $diff >= DAY_IN_SECONDS ) {
    21512151                $days = round( $diff / DAY_IN_SECONDS );
    2152                 if ( $days <= 1 ) {
     2152                if ( $days <= 1 )
    21532153                        $days = 1;
    2154                 }
    21552154                $since = sprintf( _n( '%s day', '%s days', $days ), $days );
     2155        } elseif ( $diff < 30 * DAY_IN_SECONDS && $diff >= WEEK_IN_SECONDS ) {
     2156                $weeks = round( $diff / WEEK_IN_SECONDS );
     2157                if ( $weeks <= 1 )
     2158                        $weeks = 1;
     2159                $since = sprintf( _n( '%s week', '%s weeks', $weeks ), $weeks );
     2160        } elseif ( $diff < YEAR_IN_SECONDS && $diff >= 30 * DAY_IN_SECONDS ) {
     2161                $months = round( $diff / ( 30 * DAY_IN_SECONDS ) );
     2162                if ( $months <= 1 )
     2163                        $months = 1;
     2164                $since = sprintf( _n( '%s month', '%s months', $months ), $months );
     2165        } elseif ( $diff >= YEAR_IN_SECONDS ) {
     2166                $years = round( $diff / YEAR_IN_SECONDS );
     2167                if ( $years <= 1 )
     2168                        $years = 1;
     2169                $since = sprintf( _n( '%s year', '%s years', $years ), $years );
    21562170        }
     2171
    21572172        return $since;
    21582173}
    21592174