47092bfa9b
Implement flash messages
...
- configure session cookie security
- setup flash message handling in newTemplateData
- show flash message in base.html
- add flash message for new motion
2022-05-26 16:30:30 +02:00
f8fbf00c4d
Refactor new motion form processing
...
- extract form parsing into helper method app.decodePostForm
- extract field checks into form.Validate
2022-05-26 16:06:31 +02:00
a1a66b7245
Finish new motion create implementation
...
- rename config block mail_server to mail_config
- rename smtp server settings
- move mail notification settings to mail_config
- improve navigation templates
- prepare routes for user management
2022-05-26 15:27:25 +02:00
aa3a1b0cc7
Implement database mapping for vote types
2022-05-22 21:47:27 +02:00
e1af6876c1
Implement new motion form
...
- add session handler
- add form decoder from go-playground
- implement custom decoder for VoteType
2022-05-22 21:15:54 +02:00
47af34f1cd
Use httprouter.NotFound and httprouter.PanicHandler
2022-05-22 15:00:50 +02:00
0ad88fe5f4
Implement motion detail view
...
- add httprouter for parameterized routing
- improve styling
- add routes and handlers
- implement motion detail handler
2022-05-22 14:08:02 +02:00
44a6180a09
Use alice to chain middleware
2022-05-22 12:23:42 +02:00
2ddc013c84
Add panic recovery middleware
2022-05-22 12:19:25 +02:00
c0a73494c3
Add request logging
2022-05-22 12:06:23 +02:00
4ce321dc36
Implement security headers and HTTPS
2022-05-22 11:02:37 +02:00
c4c64d0202
Add output buffering for rendered pages
2022-05-21 21:02:15 +02:00
65cce5b723
Use embedded templates
2022-05-21 20:57:32 +02:00
ff93acb65c
Refactorings
...
- fix typo in nav.html and template functions
- implement template cache and render function
- refactor motion list methods to reduce cyclomatic complexity
2022-05-21 20:49:35 +02:00
ec7623a51a
Implement timestamp pagination for motion list
2022-05-21 19:18:17 +02:00
2b8beadb77
Remove unused Print method
2022-05-21 14:30:57 +02:00
49295d2caa
Add context to model methods
2022-05-21 14:27:46 +02:00
3346cb5dba
Fix golangci-lint warnings
2022-05-21 14:09:19 +02:00
68d6f4bcdc
Reimplement decision close job
2022-05-21 13:51:17 +02:00
01b95f2253
Start notification job refactoring
2022-05-15 20:10:49 +02:00
933f21a43c
Move migrations to internal/migrations
2022-05-14 12:45:53 +02:00
ec7d2fe324
Start refactoring to packages
2022-05-09 21:09:24 +02:00
a5c1a64a3c
Update go and dependency versions
2022-05-09 18:06:11 +02:00
8d0d968441
Start move to new directory structure
...
- create cmd/boardvoting/main.go
- adapt .goreleaser.yml and Makefile to use cmd/boardvoting for the main
package
2022-05-08 19:17:40 +02:00
d7a742d97d
Update UI framework
...
- add package.json for npm/npx
- update to fomantic-ui
- move ui files to ui directory
- add UI build documentation to README.md
- add ui target to Makefile
- add addPrefix handler in boardvoting.go to allow the same /static/
prefix for static resources
2022-05-08 16:13:50 +02:00
d22f31e823
Fix copyright headers in Go files
2022-03-21 13:39:00 +01:00
87b87f7de3
Fix golangci-lint configuration
...
- remove redundante whitespace
- rename wrong linter-settings to linters-settings
- ignore strconv functions for gomnd linter
- use australian locale for spell checking
2022-03-21 13:37:44 +01:00
7dbef080b1
Update README
2022-03-21 12:43:30 +01:00
3a25296b37
Handle client certificate failures
2022-03-21 12:18:55 +01:00
0c2fbf9d54
Wrap error when db connection closing fails
2022-03-21 12:18:20 +01:00
623bdf6d56
Replace magic numbers with constants
...
- use strconv.Atoi and strconv.Itoa where appropriate
- use constants for number base and size
- use constant for reminder job interval
2022-03-21 12:16:24 +01:00
63c748bb1d
Update golangci-lint configuration
...
- replace deprecated linters
- add more linters
2022-03-21 12:14:25 +01:00
a9290b9717
Update to go 1.17, remove duplicate go-mail
...
- update module to go 1.17 level
- ran go mod tidy
- bump go version in Jenkinsfile
- drop github.com/go-mail/mail
2022-03-21 12:12:09 +01:00
c3adfd9e8b
Add short section explaining the project ideas
2021-04-17 21:08:48 +02:00
975f3c0837
Adapt Makefile and boardvoting.go to new ldflags
2021-04-14 19:02:44 +02:00
4d87e35ec2
Add nfpms configuration
2021-04-14 18:37:17 +02:00
806d706d4f
Add goreleaser config
2021-04-14 18:37:17 +02:00
32f271ca7a
Remove old assets, improve Makefile
2021-03-14 18:10:51 +01:00
96797ec4ef
Remove space character from go version
2021-03-07 20:28:01 +01:00
fdc5c5cc61
Use tools section for Jenkins
2021-03-07 20:22:06 +01:00
23d586e99d
Attempt to define pipeline for go1.16
2021-03-07 19:58:57 +01:00
70cc0942ca
Upgrade to Go 1.16 and newer libraries
...
- use embed from the standard library instead of packr
- upgrade to sprig v3
- upgrade gomail version
- use golang-migrate instead of sql-migrate to get embed support
- use statigz to deliver compressed static assets
2021-03-07 19:42:11 +01:00
03827874cf
Configure golangci-lint and apply suggestions
2021-01-09 15:49:19 +01:00
594df29dc1
Explicitly define timeouts for http and https
2020-04-26 13:18:58 +02:00
bf67dfbc10
Remove call to deprecated BuildNameToCertificate
2020-04-26 13:18:01 +02:00
e6fb26e5ef
Fix Goland warnings caused by large assets.go
2020-04-26 13:17:24 +02:00
b0aa52fc24
Fix issue with stricter template syntax
2020-04-26 13:16:47 +02:00
03247b420d
Update go.mod for Go 1.14
2020-04-26 13:16:22 +02:00
58898b29a7
Add new table user_roles
...
This commit adds a new database table user_roles to prepare for the
introduction of a voter management system. All existing enabled voters
are added to the VOTER role.
2020-04-14 23:25:11 +02:00
6c9bf09f1a
Add missing newline in README
2019-08-12 15:19:22 +02:00