Links to every page of table

This commit is contained in:
Gregor Kleen 2018-04-13 15:06:15 +02:00
parent e0b3f0921a
commit 05cd245102
4 changed files with 25 additions and 4 deletions

View File

@ -1,7 +1,7 @@
SummerTerm year@Integer: Sommersemester #{tshow year}
WinterTerm year@Integer: Wintersemester #{tshow year}/#{tshow $ succ year}
PSLimitNonPositive: “pagesize” muss größer als null sein
Page n@Int64 num@Int64: Seite #{tshow n} von #{tshow num}
Page n@Int64: #{tshow n}
TermEdited tid@TermIdentifier: Semester #{termToText tid} erfolgreich editiert.
TermNewTitle: Semester editiere/anlegen.
InvalidInput: Eingaben bitte korrigieren.

View File

@ -152,6 +152,7 @@ dbTable PSValidator{..} DBTable{ dbtIdent = (toPathPiece -> dbtIdent), .. } = do
getParams <- handlerToWidget $ queryToQueryText . Wai.queryString . reqWaiRequest <$> getRequest
let table = $(widgetFile "table/colonnade")
pageCount = max 1 . ceiling $ rowCount % psLimit
pageNumbers = [0..pred pageCount]
tblLink f = decodeUtf8 . Builder.toLazyByteString . renderQueryText True $ f getParams
withSortLinks Sortable{ sortableContent = Cell{..}, .. } = Cell

View File

@ -0,0 +1,14 @@
ul.paginationLinks
list-style: none outside none
margin: 0
padding: 0
text-align: center
li
margin: 0
margin-right: .25em
padding: 0
display: inline-block
.current
text-decoration: underline
li:last-child
margin-right: 0

View File

@ -1,7 +1,13 @@
$newline never
<div ##{dbtIdent}-table-wrapper>
<div .scrolltable>
^{table}
$if pageCount > 1
<p style="text-align:center">
$# TODO: foreach (reachable pages) print link to that page
_{MsgPage (succ psPage) pageCount}
<ul .paginationLinks>
$forall p <- pageNumbers
<li>
$if p == psPage
<span .current>_{MsgPage (succ p)}
$else
<a href=#{tblLink $ setParam (wIdent "page") (Just $ tshow p)}>
_{MsgPage (succ p)}