Commit Graph

173 Commits (0c02daf29a2c8d58a846c75f81f6c338aa9164e3)
 

Author SHA1 Message Date
Jan Dittberner 0c02daf29a Implement direct voting 2 years ago
Jan Dittberner 164495c818 Improve design
- improve icons
- implement VoteChoice and VoteStatus as real types with Scanner and Value
  methods
2 years ago
Jan Dittberner b8b6899cf3 Update modified timestamp when updating motion 2 years ago
Jan Dittberner 2b98712aa8 Implement motion editing 2 years ago
Jan Dittberner 335ce16547 Add tests for handlers and middleware
- drop migration 2022052601_drop_unused_decisions_colums because it was implicitly part of an earlier migration
- add /health endpoint for database health check
- add tests for the health check endpoint
- add tests for middleware secureHeaders, logRequest and tryAuthenticate
- add models.UserModel.CreateUser method
2 years ago
Jan Dittberner c3d0733e27 Replace gorilla/csrf with justinas/nosurf
- replace dependency for less indirect dependencies
- remove unused configuration options
2 years ago
Jan Dittberner 257a777e03 Add Cache-Control for authenticated pages 2 years ago
Jan Dittberner d5d7525a31 Tighten http timeout settings 2 years ago
Jan Dittberner 1695ce0168 Implement small improvements
- fix golangci-lint warnings
- start setup for user management
- nicer formatting of user login information
2 years ago
Jan Dittberner 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
2 years ago
Jan Dittberner f8fbf00c4d Refactor new motion form processing
- extract form parsing into helper method app.decodePostForm
- extract field checks into form.Validate
2 years ago
Jan Dittberner 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
2 years ago
Jan Dittberner aa3a1b0cc7 Implement database mapping for vote types 2 years ago
Jan Dittberner e1af6876c1 Implement new motion form
- add session handler
- add form decoder from go-playground
- implement custom decoder for VoteType
2 years ago
Jan Dittberner 47af34f1cd Use httprouter.NotFound and httprouter.PanicHandler 2 years ago
Jan Dittberner 0ad88fe5f4 Implement motion detail view
- add httprouter for parameterized routing
- improve styling
- add routes and handlers
- implement motion detail handler
2 years ago
Jan Dittberner 44a6180a09 Use alice to chain middleware 2 years ago
Jan Dittberner 2ddc013c84 Add panic recovery middleware 2 years ago
Jan Dittberner c0a73494c3 Add request logging 2 years ago
Jan Dittberner 4ce321dc36 Implement security headers and HTTPS 2 years ago
Jan Dittberner c4c64d0202 Add output buffering for rendered pages 2 years ago
Jan Dittberner 65cce5b723 Use embedded templates 2 years ago
Jan Dittberner ff93acb65c Refactorings
- fix typo in nav.html and template functions
- implement template cache and render function
- refactor motion list methods to reduce cyclomatic complexity
2 years ago
Jan Dittberner ec7623a51a Implement timestamp pagination for motion list 2 years ago
Jan Dittberner 2b8beadb77 Remove unused Print method 2 years ago
Jan Dittberner 49295d2caa Add context to model methods 2 years ago
Jan Dittberner 3346cb5dba Fix golangci-lint warnings 2 years ago
Jan Dittberner 68d6f4bcdc Reimplement decision close job 2 years ago
Jan Dittberner 01b95f2253 Start notification job refactoring 2 years ago
Jan Dittberner 933f21a43c Move migrations to internal/migrations 2 years ago
Jan Dittberner ec7d2fe324 Start refactoring to packages 2 years ago
Jan Dittberner a5c1a64a3c Update go and dependency versions 2 years ago
Jan Dittberner 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
2 years ago
Jan Dittberner 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
2 years ago
Jan Dittberner d22f31e823 Fix copyright headers in Go files 2 years ago
Jan Dittberner 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
2 years ago
Jan Dittberner 7dbef080b1 Update README 2 years ago
Jan Dittberner 3a25296b37 Handle client certificate failures 2 years ago
Jan Dittberner 0c2fbf9d54 Wrap error when db connection closing fails 2 years ago
Jan Dittberner 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
2 years ago
Jan Dittberner 63c748bb1d Update golangci-lint configuration
- replace deprecated linters
- add more linters
2 years ago
Jan Dittberner 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
2 years ago
Jan Dittberner c3adfd9e8b Add short section explaining the project ideas 3 years ago
Jan Dittberner 975f3c0837 Adapt Makefile and boardvoting.go to new ldflags 3 years ago
Jan Dittberner 4d87e35ec2 Add nfpms configuration 3 years ago
Jan Dittberner 806d706d4f Add goreleaser config 3 years ago
Jan Dittberner 32f271ca7a Remove old assets, improve Makefile 3 years ago
Jan Dittberner 96797ec4ef Remove space character from go version 3 years ago
Jan Dittberner fdc5c5cc61 Use tools section for Jenkins 3 years ago
Jan Dittberner 23d586e99d Attempt to define pipeline for go1.16 3 years ago