summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristopher Speller <crspeller@gmail.com>2015-07-31 08:57:51 -0400
committerChristopher Speller <crspeller@gmail.com>2015-07-31 08:57:51 -0400
commit7b968a75721164dbe016f2ca5be6e9be2b26f434 (patch)
treeef6e7806852a76fea26db5507f1431b6760a6c11
parentb7869cdb3cd60b1c8ed420dbf4839990e5e0a797 (diff)
parentaaad5add260252f8663f4b29755d8ce31f477a7d (diff)
downloadchat-7b968a75721164dbe016f2ca5be6e9be2b26f434.tar.gz
chat-7b968a75721164dbe016f2ca5be6e9be2b26f434.tar.bz2
chat-7b968a75721164dbe016f2ca5be6e9be2b26f434.zip
Merge pull request #293 from rgarmsen2295/mm-1725
MM-1725 Added text to inform the user a session id is not available for a login attempt
-rw-r--r--web/react/components/access_history_modal.jsx52
1 files changed, 28 insertions, 24 deletions
diff --git a/web/react/components/access_history_modal.jsx b/web/react/components/access_history_modal.jsx
index 6cc8ec8a9..16768a119 100644
--- a/web/react/components/access_history_modal.jsx
+++ b/web/react/components/access_history_modal.jsx
@@ -15,13 +15,13 @@ function getStateFromStoresForAudits() {
module.exports = React.createClass({
componentDidMount: function() {
UserStore.addAuditsChangeListener(this._onChange);
- $(this.refs.modal.getDOMNode()).on('shown.bs.modal', function (e) {
+ $(this.refs.modal.getDOMNode()).on('shown.bs.modal', function(e) {
AsyncClient.getAudits();
});
var self = this;
$(this.refs.modal.getDOMNode()).on('hidden.bs.modal', function(e) {
- self.setState({ moreInfo: [] });
+ self.setState({moreInfo: []});
});
},
componentWillUnmount: function() {
@@ -36,7 +36,7 @@ module.exports = React.createClass({
handleMoreInfo: function(index) {
var newMoreInfo = this.state.moreInfo;
newMoreInfo[index] = true;
- this.setState({ moreInfo: newMoreInfo });
+ this.setState({moreInfo: newMoreInfo});
},
getInitialState: function() {
var initialState = getStateFromStoresForAudits();
@@ -57,24 +57,28 @@ module.exports = React.createClass({
newDate = (<div> {currentHistoryDate.toDateString()} </div>);
}
+ if (!currentAudit.session_id && currentAudit.action.search('/users/login') !== -1) {
+ currentAudit.session_id = 'N/A (Login attempt)';
+ }
+
accessList[i] = (
- <div className="access-history__table">
- <div className="access__date">{newDate}</div>
- <div className="access__report">
- <div className="report__time">{newHistoryDate.toLocaleTimeString(navigator.language, {hour: '2-digit', minute:'2-digit'})}</div>
- <div className="report__info">
- <div>{"IP: " + currentAudit.ip_address}</div>
- { this.state.moreInfo[i] ?
+ <div className='access-history__table'>
+ <div className='access__date'>{newDate}</div>
+ <div className='access__report'>
+ <div className='report__time'>{newHistoryDate.toLocaleTimeString(navigator.language, {hour: '2-digit', minute: '2-digit'})}</div>
+ <div className='report__info'>
+ <div>{'IP: ' + currentAudit.ip_address}</div>
+ {this.state.moreInfo[i] ?
<div>
- <div>{"Session ID: " + currentAudit.session_id}</div>
- <div>{"URL: " + currentAudit.action.replace("/api/v1", "")}</div>
+ <div>{'Session ID: ' + currentAudit.session_id}</div>
+ <div>{'URL: ' + currentAudit.action.replace(/\/api\/v[1-9]/, '')}</div>
</div>
:
- <a href="#" className="theme" onClick={this.handleMoreInfo.bind(this, i)}>More info</a>
+ <a href='#' className='theme' onClick={this.handleMoreInfo.bind(this, i)}>More info</a>
}
</div>
{i < this.state.audits.length - 1 ?
- <div className="divider-light"/>
+ <div className='divider-light'/>
:
null
}
@@ -85,17 +89,17 @@ module.exports = React.createClass({
return (
<div>
- <div className="modal fade" ref="modal" id="access-history" tabIndex="-1" role="dialog" aria-hidden="true">
- <div className="modal-dialog modal-lg">
- <div className="modal-content">
- <div className="modal-header">
- <button type="button" className="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
- <h4 className="modal-title" id="myModalLabel">Access History</h4>
+ <div className='modal fade' ref='modal' id='access-history' tabIndex='-1' role='dialog' aria-hidden='true'>
+ <div className='modal-dialog modal-lg'>
+ <div className='modal-content'>
+ <div className='modal-header'>
+ <button type='button' className='close' data-dismiss='modal' aria-label='Close'><span aria-hidden='true'>&times;</span></button>
+ <h4 className='modal-title' id='myModalLabel'>Access History</h4>
</div>
- <div ref="modalBody" className="modal-body">
- { !this.state.audits.loading ?
- <form role="form">
- { accessList }
+ <div ref='modalBody' className='modal-body'>
+ {!this.state.audits.loading ?
+ <form role='form'>
+ {accessList}
</form>
:
<LoadingScreen />