mirror of
https://github.com/opensupports/opensupports.git
synced 2025-07-28 00:04:31 +02:00
Ivan - Add admin panel ticket viewer [skip ci]
This commit is contained in:
parent
2e9aae777b
commit
9b83fde4fc
@ -242,7 +242,9 @@ class TicketViewer extends React.Component {
|
|||||||
loading: false
|
loading: false
|
||||||
});
|
});
|
||||||
|
|
||||||
store.dispatch(SessionActions.getUserData());
|
if(this.props.onComment) {
|
||||||
|
this.props.onComment();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
onCommentFail() {
|
onCommentFail() {
|
||||||
|
@ -84,7 +84,7 @@ export default (
|
|||||||
<Route path="new-tickets" component={AdminPanelNewTickets} />
|
<Route path="new-tickets" component={AdminPanelNewTickets} />
|
||||||
<Route path="all-tickets" component={AdminPanelAllTickets} />
|
<Route path="all-tickets" component={AdminPanelAllTickets} />
|
||||||
<Route path="custom-responses" component={AdminPanelCustomResponses} />
|
<Route path="custom-responses" component={AdminPanelCustomResponses} />
|
||||||
<Route path="view-ticket" component={AdminPanelViewTicket} />
|
<Route path="view-ticket/:ticketNumber" component={AdminPanelViewTicket} />
|
||||||
</Route>
|
</Route>
|
||||||
|
|
||||||
<Route path="users">
|
<Route path="users">
|
||||||
|
@ -1,14 +1,68 @@
|
|||||||
import React from 'react';
|
import React from 'react';
|
||||||
|
|
||||||
|
import API from 'lib-app/api-call';
|
||||||
|
import TicketViewer from 'app-components/ticket-viewer';
|
||||||
|
import Loading from 'core-components/loading';
|
||||||
|
|
||||||
class AdminPanelViewTicket extends React.Component {
|
class AdminPanelViewTicket extends React.Component {
|
||||||
|
|
||||||
|
state = {
|
||||||
|
loading: true,
|
||||||
|
ticket: {}
|
||||||
|
};
|
||||||
|
|
||||||
render() {
|
render() {
|
||||||
return (
|
return (
|
||||||
<div>
|
<div>
|
||||||
/admin/panel/tickets/view-ticket
|
{(this.state.loading) ? this.renderLoading() : this.renderView()}
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
renderLoading() {
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
renderView() {
|
||||||
|
return (this.props.ticket) ? this.renderNotFoundError() : this.renderTicketView();
|
||||||
|
}
|
||||||
|
|
||||||
|
renderNotFoundError() {
|
||||||
|
return (
|
||||||
|
<div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
renderTicketView() {
|
||||||
|
return (
|
||||||
|
<div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
retrieveTicket() {
|
||||||
|
this.setState({
|
||||||
|
loading: true,
|
||||||
|
ticket: {}
|
||||||
|
});
|
||||||
|
|
||||||
|
API.call({
|
||||||
|
path: '/ticket/get',
|
||||||
|
date: {
|
||||||
|
ticketNumber: this.props.params.ticketNumber
|
||||||
|
}
|
||||||
|
}).then(this.onRetrieveSuccess.bind(this))
|
||||||
|
}
|
||||||
|
|
||||||
|
onRetrieveSuccess(result) {
|
||||||
|
this.setState({
|
||||||
|
loading: false,
|
||||||
|
ticket: result.data
|
||||||
|
});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export default AdminPanelViewTicket;
|
export default AdminPanelViewTicket;
|
@ -2,6 +2,7 @@ import React from 'react';
|
|||||||
import _ from 'lodash';
|
import _ from 'lodash';
|
||||||
import {connect} from 'react-redux';
|
import {connect} from 'react-redux';
|
||||||
|
|
||||||
|
import SessionActions from 'actions/session-actions';
|
||||||
import TicketViewer from 'app-components/ticket-viewer';
|
import TicketViewer from 'app-components/ticket-viewer';
|
||||||
|
|
||||||
class DashboardTicketPage extends React.Component {
|
class DashboardTicketPage extends React.Component {
|
||||||
@ -13,7 +14,7 @@ class DashboardTicketPage extends React.Component {
|
|||||||
render() {
|
render() {
|
||||||
return (
|
return (
|
||||||
<div className="dashboard-ticket-page">
|
<div className="dashboard-ticket-page">
|
||||||
<TicketViewer ticket={this.getTicketData()} />
|
<TicketViewer ticket={this.getTicketData()} onComment={this.retrieveUserData.bind(this)}/>
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
@ -21,6 +22,10 @@ class DashboardTicketPage extends React.Component {
|
|||||||
getTicketData() {
|
getTicketData() {
|
||||||
return _.find(this.props.tickets, {ticketNumber: this.props.params.ticketNumber});
|
return _.find(this.props.tickets, {ticketNumber: this.props.params.ticketNumber});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
retrieveUserData() {
|
||||||
|
this.props.dispatch(SessionActions.getUserData());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export default connect((store) => {
|
export default connect((store) => {
|
||||||
|
@ -43,7 +43,7 @@ module.exports = [
|
|||||||
return {
|
return {
|
||||||
status: 'success',
|
status: 'success',
|
||||||
data: {
|
data: {
|
||||||
sessionActive: false
|
sessionActive: true
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user