Skip to content
This repository has been archived by the owner on Oct 1, 2020. It is now read-only.

Commit

Permalink
fix table sorting
Browse files Browse the repository at this point in the history
  • Loading branch information
monty5811 committed Jan 27, 2017
1 parent a302f85 commit 71c7a7c
Show file tree
Hide file tree
Showing 17 changed files with 98 additions and 21 deletions.
6 changes: 6 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,12 @@ All notable changes to this project will be documented in this file.

## [Unreleased]

## [v1.16.1]

### Fixed

- Sort tables properly

## [v1.16.0]

### Added
Expand Down
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
1.16.0
1.16.1
2 changes: 1 addition & 1 deletion ansible/env_vars/base.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---

git_repo: https://github.com/monty5811/apostello.git
git_version: v1.16.0
git_version: v1.16.1

project_name: apostello
application_name: apostello
Expand Down
12 changes: 6 additions & 6 deletions apostello/static/js/app.js

Large diffs are not rendered by default.

15 changes: 15 additions & 0 deletions assets/elm/Helpers.elm
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
module Helpers exposing (..)

import Decoders exposing (..)
import Date
import Dict
import Http
import Json.Decode as Decode
Expand Down Expand Up @@ -105,3 +106,17 @@ handleLoadingFailed model =
handleNotSaved : Model -> ( Model, Cmd Msg )
handleNotSaved model =
( createNotSavedNotification model, Cmd.none )


compareByTR : { a | time_received : String } -> Float
compareByTR sms =
let
date =
Date.fromString sms.time_received
in
case date of
Ok d ->
Date.toTime d

Err _ ->
toFloat 1
6 changes: 5 additions & 1 deletion assets/elm/Updates/ElvantoImport.elm
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,11 @@ update msg model =

updateGroups : ElvantoImportModel -> ElvantoGroups -> ElvantoImportModel
updateGroups model newGroups =
{ model | groups = mergeItems model.groups newGroups }
{ model
| groups =
mergeItems model.groups newGroups
|> List.sortBy .name
}


pullGroups : String -> Cmd Msg
Expand Down
4 changes: 2 additions & 2 deletions assets/elm/Updates/GroupComposer.elm
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,8 @@ updateGroups resp model =
mergeItems model.groups resp.results
in
{ model
| groups = newGroups
, people = (collectPeople newGroups)
| groups = newGroups |> List.sortBy .name
, people = (collectPeople newGroups) |> List.sortBy .full_name
}


Expand Down
6 changes: 5 additions & 1 deletion assets/elm/Updates/GroupTable.elm
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,11 @@ update msg model =

updateGroups : GroupTableModel -> ApostelloResponse RecipientGroup -> GroupTableModel
updateGroups model resp =
{ model | groups = mergeItems model.groups resp.results }
{ model
| groups =
mergeItems model.groups resp.results
|> List.sortBy .name
}


optArchiveGroup : GroupTableModel -> Int -> GroupTableModel
Expand Down
7 changes: 6 additions & 1 deletion assets/elm/Updates/InboundTable.elm
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,12 @@ update msg model =

updateSms : InboundTableModel -> SmsInbounds -> InboundTableModel
updateSms model newSms =
{ model | sms = mergeItems model.sms newSms }
{ model
| sms =
mergeItems model.sms newSms
|> List.sortBy compareByTR
|> List.reverse
}


reprocessSms : CSRFToken -> Int -> Cmd Msg
Expand Down
7 changes: 6 additions & 1 deletion assets/elm/Updates/KeyRespTable.elm
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,12 @@ update msg model =

updateSms : KeyRespTableModel -> SmsInbounds -> KeyRespTableModel
updateSms model newSms =
{ model | sms = mergeItems model.sms newSms }
{ model
| sms =
mergeItems model.sms newSms
|> List.sortBy compareByTR
|> List.reverse
}


optToggleDealtWith : KeyRespTableModel -> Int -> KeyRespTableModel
Expand Down
2 changes: 1 addition & 1 deletion assets/elm/Updates/KeywordTable.elm
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ optArchiveKeyword model pk =

updateKeywords : KeywordTableModel -> ApostelloResponse Keyword -> KeywordTableModel
updateKeywords model resp =
{ model | keywords = mergeItems model.keywords resp.results }
{ model | keywords = mergeItems model.keywords resp.results |> List.sortBy .keyword }


toggleKeywordArchive : CSRFToken -> Bool -> Int -> Cmd Msg
Expand Down
22 changes: 21 additions & 1 deletion assets/elm/Updates/OutboundTable.elm
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
module Updates.OutboundTable exposing (update)

import Actions exposing (determineRespCmd)
import Date
import Helpers exposing (..)
import Messages exposing (..)
import Models exposing (..)
Expand All @@ -23,4 +24,23 @@ update msg model =

updateSms : OutboundTableModel -> ApostelloResponse SmsOutbound -> OutboundTableModel
updateSms model resp =
{ model | sms = mergeItems model.sms resp.results }
{ model
| sms =
mergeItems model.sms resp.results
|> List.sortBy compareByTS
|> List.reverse
}


compareByTS : SmsOutbound -> Float
compareByTS sms =
let
date =
Date.fromString sms.time_sent
in
case date of
Ok d ->
Date.toTime d

Err _ ->
toFloat 1
6 changes: 5 additions & 1 deletion assets/elm/Updates/RecipientTable.elm
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,11 @@ update msg model =

updateRecipients : RecipientTableModel -> List Recipient -> RecipientTableModel
updateRecipients model newRecipients =
{ model | recipients = mergeItems model.recipients newRecipients }
{ model
| recipients =
mergeItems model.recipients newRecipients
|> List.sortBy .last_name
}


optRemoveRecipient : RecipientTableModel -> Int -> RecipientTableModel
Expand Down
7 changes: 6 additions & 1 deletion assets/elm/Updates/ScheduledSmsTable.elm
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
module Updates.ScheduledSmsTable exposing (update)

import Actions exposing (determineRespCmd)
import Date
import Decoders exposing (decodeAlwaysTrue)
import DjangoSend exposing (post)
import Helpers exposing (..)
Expand Down Expand Up @@ -36,7 +37,11 @@ update msg model =

updateSms : ScheduledSmsTableModel -> List QueuedSms -> ScheduledSmsTableModel
updateSms model newSms =
{ model | sms = mergeItems model.sms newSms }
{ model
| sms =
mergeItems model.sms newSms
|> List.sortBy (Date.toTime << .time_to_send)
}


optCancelSms : ScheduledSmsTableModel -> Int -> ScheduledSmsTableModel
Expand Down
6 changes: 5 additions & 1 deletion assets/elm/Updates/UserProfileTable.elm
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,11 @@ update msg model =

updateUserProfiles : UserProfileTableModel -> List UserProfile -> UserProfileTableModel
updateUserProfiles model profiles =
{ model | userprofiles = mergeItems model.userprofiles profiles }
{ model
| userprofiles =
mergeItems model.userprofiles profiles
|> List.sortBy (.email << .user)
}


toggleField : CSRFToken -> UserProfile -> Cmd Msg
Expand Down
7 changes: 6 additions & 1 deletion assets/elm/Updates/Wall.elm
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,12 @@ update msg model =

updateSms : WallModel -> List SmsInboundSimple -> WallModel
updateSms model newSms =
{ model | sms = mergeItems model.sms newSms }
{ model
| sms =
mergeItems model.sms newSms
|> List.sortBy compareByTR
|> List.reverse
}


toggleWallDisplay : CSRFToken -> Bool -> Int -> Cmd Msg
Expand Down
2 changes: 1 addition & 1 deletion scripts/ansible_install.sh
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#!/bin/bash
set -e
# setup some constants
AP_VER=v1.16.0
AP_VER=v1.16.1
REPO_URL=https://github.com/monty5811/apostello.git
HOME_DIR=/home/apostello
CUSTOM_VARS_FILE=$HOME_DIR/custom_vars.yml
Expand Down

0 comments on commit 71c7a7c

Please sign in to comment.