Merge remote-tracking branch 'glitchsoc/master' into gs-master
This commit is contained in:
		
						commit
						c511b0f72a
					
				
					 1 changed files with 11 additions and 4 deletions
				
			
		|  | @ -20,7 +20,7 @@ const dateFormatOptions = { | |||
| }; | ||||
| 
 | ||||
| const shortDateFormatOptions = { | ||||
|   month: 'numeric', | ||||
|   month: 'short', | ||||
|   day: 'numeric', | ||||
| }; | ||||
| 
 | ||||
|  | @ -66,12 +66,17 @@ export default class RelativeTimestamp extends React.Component { | |||
|   static propTypes = { | ||||
|     intl: PropTypes.object.isRequired, | ||||
|     timestamp: PropTypes.string.isRequired, | ||||
|     year: PropTypes.number.isRequired, | ||||
|   }; | ||||
| 
 | ||||
|   state = { | ||||
|     now: this.props.intl.now(), | ||||
|   }; | ||||
| 
 | ||||
|   static defaultProps = { | ||||
|     year: (new Date()).getFullYear(), | ||||
|   }; | ||||
| 
 | ||||
|   shouldComponentUpdate (nextProps, nextState) { | ||||
|     // As of right now the locale doesn't change without a new page load,
 | ||||
|     // but we might as well check in case that ever changes.
 | ||||
|  | @ -114,7 +119,7 @@ export default class RelativeTimestamp extends React.Component { | |||
|   } | ||||
| 
 | ||||
|   render () { | ||||
|     const { timestamp, intl } = this.props; | ||||
|     const { timestamp, intl, year } = this.props; | ||||
| 
 | ||||
|     const date  = new Date(timestamp); | ||||
|     const delta = this.state.now - date.getTime(); | ||||
|  | @ -123,7 +128,7 @@ export default class RelativeTimestamp extends React.Component { | |||
| 
 | ||||
|     if (delta < 10 * SECOND) { | ||||
|       relativeTime = intl.formatMessage(messages.just_now); | ||||
|     } else if (delta < 3 * DAY) { | ||||
|     } else if (delta < 7 * DAY) { | ||||
|       if (delta < MINUTE) { | ||||
|         relativeTime = intl.formatMessage(messages.seconds, { number: Math.floor(delta / SECOND) }); | ||||
|       } else if (delta < HOUR) { | ||||
|  | @ -133,8 +138,10 @@ export default class RelativeTimestamp extends React.Component { | |||
|       } else { | ||||
|         relativeTime = intl.formatMessage(messages.days, { number: Math.floor(delta / DAY) }); | ||||
|       } | ||||
|     } else { | ||||
|     } else if (date.getFullYear() === year) { | ||||
|       relativeTime = intl.formatDate(date, shortDateFormatOptions); | ||||
|     } else { | ||||
|       relativeTime = intl.formatDate(date, { ...shortDateFormatOptions, year: 'numeric' }); | ||||
|     } | ||||
| 
 | ||||
|     return ( | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue