banned-page.js 1.1 KB

123456789101112131415161718192021222324252627282930313233
  1. import moment from 'moment'; // jshint ignore:line
  2. import React from 'react'; // jshint ignore:line
  3. import ReactDOM from 'react-dom';
  4. import { Provider, connect } from 'react-redux'; // jshint ignore:line
  5. import BannedPage from 'misago/components/banned-page'; // jshint ignore:line
  6. import misago from 'misago/index';
  7. import store from 'misago/services/store'; // jshint ignore:line
  8. /* jshint ignore:start */
  9. let select = function(state) {
  10. return state.tick;
  11. };
  12. let RedrawedBannedPage = connect(select)(BannedPage);
  13. /* jshint ignore:end */
  14. export default function(ban, changeState) {
  15. ReactDOM.render(
  16. /* jshint ignore:start */
  17. <Provider store={store.getStore()}>
  18. <RedrawedBannedPage message={ban.message}
  19. expires={ban.expires_on ? moment(ban.expires_on) : null} />
  20. </Provider>,
  21. /* jshint ignore:end */
  22. document.getElementById('page-mount')
  23. );
  24. if (typeof changeState === 'undefined' || changeState) {
  25. let forumName = misago.get('SETTINGS').forum_name;
  26. document.title = gettext("You are banned") + ' | ' + forumName;
  27. window.history.pushState({}, "", misago.get('BANNED_URL'));
  28. }
  29. }