Using react tooltip for timestamp in center channel instead of normal bootstrap
Этот коммит содержится в:
@@ -84,8 +84,6 @@ export default class ChannelLoader extends React.Component {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
$('body').tooltip({selector: '[data-toggle=tooltip]', trigger: 'hover click'});
|
|
||||||
|
|
||||||
$('body').on('mouseenter mouseleave', '.post', function mouseOver(ev) {
|
$('body').on('mouseenter mouseleave', '.post', function mouseOver(ev) {
|
||||||
if (ev.type === 'mouseenter') {
|
if (ev.type === 'mouseenter') {
|
||||||
$(this).parent('div').prev('.date-separator, .new-separator').addClass('hovered--after');
|
$(this).parent('div').prev('.date-separator, .new-separator').addClass('hovered--after');
|
||||||
|
|||||||
@@ -5,6 +5,8 @@ var UserStore = require('../stores/user_store.jsx');
|
|||||||
var utils = require('../utils/utils.jsx');
|
var utils = require('../utils/utils.jsx');
|
||||||
|
|
||||||
var Constants = require('../utils/constants.jsx');
|
var Constants = require('../utils/constants.jsx');
|
||||||
|
var Tooltip = ReactBootstrap.Tooltip;
|
||||||
|
var OverlayTrigger = ReactBootstrap.OverlayTrigger;
|
||||||
|
|
||||||
export default class PostInfo extends React.Component {
|
export default class PostInfo extends React.Component {
|
||||||
constructor(props) {
|
constructor(props) {
|
||||||
@@ -148,17 +150,19 @@ export default class PostInfo extends React.Component {
|
|||||||
|
|
||||||
var dropdown = this.createDropdown();
|
var dropdown = this.createDropdown();
|
||||||
|
|
||||||
|
let tooltip = <Tooltip>{utils.displayDate(post.create_at)} at ${utils.displayTime(post.create_at)}</Tooltip>;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<ul className='post-header post-info'>
|
<ul className='post-header post-info'>
|
||||||
<li className='post-header-col'>
|
<li className='post-header-col'>
|
||||||
<time
|
<OverlayTrigger
|
||||||
className='post-profile-time'
|
placement='top'
|
||||||
data-toggle='tooltip'
|
overlay={tooltip}
|
||||||
title={`${utils.displayDate(post.create_at)} at ${utils.displayTime(post.create_at)}`}
|
|
||||||
data-placement='top'
|
|
||||||
>
|
>
|
||||||
{utils.displayDateTime(post.create_at)}
|
<time className='post-profile-time'>
|
||||||
</time>
|
{utils.displayDateTime(post.create_at)}
|
||||||
|
</time>
|
||||||
|
</OverlayTrigger>
|
||||||
</li>
|
</li>
|
||||||
<li className='post-header-col post-header__reply'>
|
<li className='post-header-col post-header__reply'>
|
||||||
<div className='dropdown'>
|
<div className='dropdown'>
|
||||||
|
|||||||
@@ -32,6 +32,7 @@ export default class UserProfile extends React.Component {
|
|||||||
componentDidMount() {
|
componentDidMount() {
|
||||||
UserStore.addChangeListener(this.onChange);
|
UserStore.addChangeListener(this.onChange);
|
||||||
$('#profile_' + this.uniqueId).popover({placement: 'right', container: 'body', trigger: 'hover', html: true, delay: {show: 200, hide: 100}});
|
$('#profile_' + this.uniqueId).popover({placement: 'right', container: 'body', trigger: 'hover', html: true, delay: {show: 200, hide: 100}});
|
||||||
|
$('body').tooltip({selector: '[data-toggle=tooltip]', trigger: 'hover click'});
|
||||||
}
|
}
|
||||||
componentWillUnmount() {
|
componentWillUnmount() {
|
||||||
UserStore.removeChangeListener(this.onChange);
|
UserStore.removeChangeListener(this.onChange);
|
||||||
|
|||||||
@@ -53,6 +53,7 @@
|
|||||||
<div id="register_app_modal"></div>
|
<div id="register_app_modal"></div>
|
||||||
<script>
|
<script>
|
||||||
window.setup_channel_page({{ .Props }});
|
window.setup_channel_page({{ .Props }});
|
||||||
|
$('body').tooltip( {selector: '[data-toggle=tooltip]'} );
|
||||||
$('.modal-body').css('max-height', $(window).height() * 0.7);
|
$('.modal-body').css('max-height', $(window).height() * 0.7);
|
||||||
$('.modal-body').perfectScrollbar();
|
$('.modal-body').perfectScrollbar();
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
Ссылка в новой задаче
Block a user