From bdd512eb708fe1adbf47411c43a632aa3582f2e8 Mon Sep 17 00:00:00 2001 From: Matthias Hannig Date: Mon, 23 Jul 2018 12:27:37 +0200 Subject: [PATCH] basic pagination --- .../routeservers/routes/loading-indicator.jsx | 4 +- .../routeservers/routes/pagination.jsx | 55 ++++++++++++++----- .../components/routeservers/routes/view.jsx | 1 - 3 files changed, 43 insertions(+), 17 deletions(-) diff --git a/client/components/routeservers/routes/loading-indicator.jsx b/client/components/routeservers/routes/loading-indicator.jsx index 18ecaf1..cd3233e 100644 --- a/client/components/routeservers/routes/loading-indicator.jsx +++ b/client/components/routeservers/routes/loading-indicator.jsx @@ -56,8 +56,8 @@ class Indicator extends React.Component { {this.state.displayMessages >= 5 && -

> Still loading routes, please be patient.

} - {this.state.displayMessages >= 10 && +


> Still loading routes, please be patient.

} + {this.state.displayMessages >= 15 &&

> This seems to take a while...

} {this.state.displayMessages >= 20 &&

> This usually only happens when there are really many routes!
diff --git a/client/components/routeservers/routes/pagination.jsx b/client/components/routeservers/routes/pagination.jsx index aceddea..3fcd65f 100644 --- a/client/components/routeservers/routes/pagination.jsx +++ b/client/components/routeservers/routes/pagination.jsx @@ -8,6 +8,11 @@ import {Link} from 'react-router' const PageLink = function(props) { const linkPage = parseInt(props.page); + const label = props.label || (linkPage + 1); + + if (props.disabled) { + return {label}; + } let pr = props.pageReceived; let pf = props.pageFiltered; @@ -34,8 +39,9 @@ const PageLink = function(props) { search: search, }; + return ( - {linkPage + 1} + {label} ); } @@ -49,8 +55,13 @@ class RoutesPaginatorView extends React.Component { const pageLinks = Array.from(Array(this.props.totalPages), (_, i) => { + let className = ""; + if (i == this.props.page) { + className = "active"; + } + return ( -

  • +
  • ); diff --git a/client/components/routeservers/routes/view.jsx b/client/components/routeservers/routes/view.jsx index df6288b..75be851 100644 --- a/client/components/routeservers/routes/view.jsx +++ b/client/components/routeservers/routes/view.jsx @@ -88,7 +88,6 @@ class RoutesView extends React.Component { componentDidUpdate(prevProps) { if (this.routesNeedFetch(prevProps)) { - console.log("Component needs fetch!"); this.dispatchFetchRoutes(); } }