githaven/models
Gary Kim f1c414882c Add Ability for User to Customize Email Notification Frequency (#7813)
* Add Backend Logic for Toggling Email Notification

This commit adds the backend logic for
allowing users to enable or disable email
notifications. The implementation ensures
that only issue notification emails get disabled
and important emails are still sent regardless
of the setting.

The UI to toggle this setting has not yet been
implemented.

* Add UI and complete user email notification enable

This commit completes the functionality to allow
users to disable their own email notifications.

Signed-off-by: Gary Kim <gary@garykim.dev>

* Add Third Option for Only Email on Mention

Signed-off-by: Gary Kim <gary@garykim.dev>

* Readd NOT NULL to new preference string

Signed-off-by: Gary Kim <gary@garykim.dev>

* Add Tests and Rewrite Comment

Signed-off-by: Gary Kim <gary@garykim.dev>

* Allow admin to set default email frequency

Signed-off-by: Gary Kim <gary@garykim.dev>

* Add new config option to docs

Signed-off-by: Gary Kim <gary@garykim.dev>

* Fix a few mistakes

Signed-off-by: Gary Kim <gary@garykim.dev>

* Only update required columns

Signed-off-by: Gary Kim <gary@garykim.dev>

* Simplify an error check

Signed-off-by: Gary Kim <gary@garykim.dev>

* Make email_notification_preference column in DB be VARCHAR(20)

Signed-off-by: Gary Kim <gary@garykim.dev>

* Handle errors

Signed-off-by: Gary Kim <gary@garykim.dev>

* Update models/migrations/v93.go

Co-Authored-By: Lauris BH <lauris@nix.lv>
2019-08-29 17:05:42 +03:00
..
fixtures Add Ability for User to Customize Email Notification Frequency (#7813) 2019-08-29 17:05:42 +03:00
migrations Add Ability for User to Customize Email Notification Frequency (#7813) 2019-08-29 17:05:42 +03:00
access_test.go Fixed ineffectual assignments in tests (#7553) 2019-07-22 15:11:16 +08:00
access.go Trace Logging on Permission Denied & ColorFormat (#6618) 2019-04-22 23:40:51 +03:00
action_list.go refactor: reduce sql query in retrieveFeeds (#3547) 2018-02-21 18:55:34 +08:00
action_test.go Add file status on API (#7671) 2019-08-21 13:16:22 +08:00
action.go Use gitea forked macaron (#7933) 2019-08-23 12:40:29 -04:00
admin_test.go Fix tests code to prevent some runtime errors (#2381) 2017-08-28 12:17:45 +03:00
admin.go Use gitea forked macaron (#7933) 2019-08-23 12:40:29 -04:00
attachment_test.go fix upload attachments (#6481) 2019-04-02 15:25:05 -04:00
attachment.go Display ui time with customize time location (#7792) 2019-08-15 22:46:21 +08:00
branches_test.go Add deleted_branch table fixture (#2832) 2017-11-04 15:31:59 +02:00
branches.go Use gitea forked macaron (#7933) 2019-08-23 12:40:29 -04:00
commit_status_test.go api: fix multiple bugs with statuses endpoints (#7785) 2019-08-09 10:13:03 +08:00
commit_status.go Display ui time with customize time location (#7792) 2019-08-15 22:46:21 +08:00
consistency.go Fix error log when loading issues caused by a xorm bug (#7271) 2019-06-23 18:22:43 +03:00
convert.go Move database settings from models to setting (#7806) 2019-08-24 11:24:45 +02:00
error_oauth2.go gofmt (#1662) 2017-05-04 13:54:56 +08:00
error.go Add error for fork already existing (#7185) 2019-06-12 16:20:43 -04:00
external_login_user.go Add primary key and index to external login user table (#1656) 2017-05-02 16:41:44 +08:00
git_diff_test.go Make diff line-marker non-selectable (#7279) 2019-06-24 21:23:52 +01:00
git_diff.go Use gitea forked macaron (#7933) 2019-08-23 12:40:29 -04:00
gpg_key_test.go Display ui time with customize time location (#7792) 2019-08-15 22:46:21 +08:00
gpg_key.go Display ui time with customize time location (#7792) 2019-08-15 22:46:21 +08:00
graph_test.go move code.gitea.io/git to code.gitea.io/gitea/modules/git (#6364) 2019-03-27 17:33:00 +08:00
graph.go move code.gitea.io/git to code.gitea.io/gitea/modules/git (#6364) 2019-03-27 17:33:00 +08:00
helper_directory.go Use gitea forked macaron (#7933) 2019-08-23 12:40:29 -04:00
helper_environment.go Fix bug create/edit wiki pages when code master branch protected (#7580) 2019-07-25 22:50:20 +01:00
helper.go Add reactions to issues/PR and comments (#2856) 2017-12-04 01:14:26 +02:00
issue_assignees_test.go refactor: append, build variable and type switch (#4940) 2019-05-28 23:45:54 +08:00
issue_assignees.go Use gitea forked macaron (#7933) 2019-08-23 12:40:29 -04:00
issue_comment_list.go Add golangci (#6418) 2019-06-12 15:41:28 -04:00
issue_comment_test.go Pull request review/approval and comment on code (#3748) 2018-08-06 06:43:21 +02:00
issue_comment.go Use gitea forked macaron (#7933) 2019-08-23 12:40:29 -04:00
issue_dependency_test.go Fix an error while adding a dependency via UI. (#5862) 2019-01-27 13:31:40 +02:00
issue_dependency.go Display ui time with customize time location (#7792) 2019-08-15 22:46:21 +08:00
issue_label_test.go Move sdk structs to modules/structs (#6905) 2019-05-11 18:21:34 +08:00
issue_label.go Use gitea forked macaron (#7933) 2019-08-23 12:40:29 -04:00
issue_list_test.go Shows total tracked time in issue and milestone list (#3341) 2018-04-29 13:58:47 +08:00
issue_list.go Fix error log when loading issues caused by a xorm bug (#7271) 2019-06-23 18:22:43 +03:00
issue_lock.go Implement "conversation lock" for issue comments (#5073) 2019-02-18 22:55:04 +02:00
issue_mail.go Add Ability for User to Customize Email Notification Frequency (#7813) 2019-08-29 17:05:42 +03:00
issue_milestone_test.go Display ui time with customize time location (#7792) 2019-08-15 22:46:21 +08:00
issue_milestone.go Display ui time with customize time location (#7792) 2019-08-15 22:46:21 +08:00
issue_reaction_test.go Ensure valid git author names passed in signatures (#5774) 2019-01-24 16:12:17 +02:00
issue_reaction.go Display ui time with customize time location (#7792) 2019-08-15 22:46:21 +08:00
issue_stopwatch_test.go Display ui time with customize time location (#7792) 2019-08-15 22:46:21 +08:00
issue_stopwatch.go Display ui time with customize time location (#7792) 2019-08-15 22:46:21 +08:00
issue_test.go Add more tests and docs for issue indexer, add db indexer type for searching from database (#6144) 2019-02-21 13:01:28 +08:00
issue_tracked_time_test.go Feature: Timetracking (#2211) 2017-09-12 09:48:13 +03:00
issue_tracked_time.go Display ui time with customize time location (#7792) 2019-08-15 22:46:21 +08:00
issue_user_test.go Multiple assignees (#3705) 2018-05-09 19:29:04 +03:00
issue_user.go Fix sqlite deadlock when assigning to a PR (#5640) 2019-01-04 16:51:27 -05:00
issue_watch_test.go Hide unactive on explore users and some refactors (#2741) 2017-10-24 20:36:19 +03:00
issue_watch.go Display ui time with customize time location (#7792) 2019-08-15 22:46:21 +08:00
issue.go Retry create issue to cope with duplicate keys (#7898) 2019-08-26 22:17:23 -04:00
lfs_lock.go Use gitea forked macaron (#7933) 2019-08-23 12:40:29 -04:00
lfs.go Display ui time with customize time location (#7792) 2019-08-15 22:46:21 +08:00
log.go Fix error log when loading issues caused by a xorm bug (#7271) 2019-06-23 18:22:43 +03:00
login_source.go Use gitea forked macaron (#7933) 2019-08-23 12:40:29 -04:00
mail_test.go Include thread related headers in issue/coment mail (#7484) 2019-07-17 15:02:42 -04:00
mail.go Use gitea forked macaron (#7933) 2019-08-23 12:40:29 -04:00
main_test.go Unit tests for wiki routers (#3022) 2017-11-30 17:52:15 +02:00
migrate.go Fix milestone completness calculation when migrating (#7725) 2019-08-03 21:38:42 +03:00
models_test.go Move database settings from models to setting (#7806) 2019-08-24 11:24:45 +02:00
models.go Move database settings from models to setting (#7806) 2019-08-24 11:24:45 +02:00
notification_test.go Add 'mark all read' option to notifications (#3097) 2017-12-07 13:52:57 +08:00
notification.go Display ui time with customize time location (#7792) 2019-08-15 22:46:21 +08:00
oauth2_application_test.go OAuth2 Grant UI (#6625) 2019-04-17 16:18:16 +08:00
oauth2_application.go Use gitea forked macaron (#7933) 2019-08-23 12:40:29 -04:00
oauth2.go Add golangci (#6418) 2019-06-12 15:41:28 -04:00
org_team_test.go Fix approvals counting (#7757) 2019-08-07 07:22:41 +03:00
org_team.go Fix approvals counting (#7757) 2019-08-07 07:22:41 +03:00
org_test.go Add support for DEFAULT_ORG_MEMBER_VISIBLE (#7669) 2019-08-24 15:28:59 +03:00
org.go Add support for DEFAULT_ORG_MEMBER_VISIBLE (#7669) 2019-08-24 15:28:59 +03:00
pull_test.go only return head: null if source branch was deleted (#6705) 2019-07-08 10:32:46 +03:00
pull.go Use gitea forked macaron (#7933) 2019-08-23 12:40:29 -04:00
release_test.go Added missing error checks in tests (#7554) 2019-07-23 20:28:43 +01:00
release.go fix wrong sender when send slack webhook (#7918) 2019-08-20 17:05:30 +02:00
repo_activity.go Add golangci (#6418) 2019-06-12 15:41:28 -04:00
repo_branch.go Add golangci (#6418) 2019-06-12 15:41:28 -04:00
repo_collaboration_test.go Unit tests for models/repo_collaboration (#1032) 2017-02-24 09:37:38 +08:00
repo_collaboration.go Add golangci (#6418) 2019-06-12 15:41:28 -04:00
repo_indexer.go Convert files to utf-8 for indexing (#7814) 2019-08-15 20:07:28 +08:00
repo_issue.go Add EnableTimetracking option to app settings (#3719) 2018-04-09 23:15:32 +08:00
repo_list_test.go Include description in repository search. (#7942) 2019-08-25 20:06:36 +03:00
repo_list.go Include description in repository search. (#7942) 2019-08-25 20:06:36 +03:00
repo_mirror.go Use gitea forked macaron (#7933) 2019-08-23 12:40:29 -04:00
repo_permission_test.go fix bug when update owner team then visit team's repo return 404 (#6119) 2019-02-22 11:14:45 -05:00
repo_permission.go Removed unnecessary conversions (#7557) 2019-07-23 19:50:39 +01:00
repo_redirect_test.go Unit tests for repo redirects (#961) 2017-02-17 08:55:33 +08:00
repo_redirect.go Use gitea forked macaron (#7933) 2019-08-23 12:40:29 -04:00
repo_tag.go Fixes #2738 - Adds the /git/tags API endpoint (#7138) 2019-06-08 17:31:11 +03:00
repo_test.go Use gitea forked macaron (#7933) 2019-08-23 12:40:29 -04:00
repo_unit.go Use gitea forked macaron (#7933) 2019-08-23 12:40:29 -04:00
repo_watch_test.go Hide unactive on explore users and some refactors (#2741) 2017-10-24 20:36:19 +03:00
repo_watch.go Fix sqlite deadlock when assigning to a PR (#5640) 2019-01-04 16:51:27 -05:00
repo.go Move database settings from models to setting (#7806) 2019-08-24 11:24:45 +02:00
review_test.go Show review summary in pull requests (#5132) 2018-11-22 15:17:36 +02:00
review.go Display ui time with customize time location (#7792) 2019-08-15 22:46:21 +08:00
ssh_key_test.go Make PKCS8, PEM and SSH2 keys work (#7600) 2019-07-25 20:33:38 +01:00
ssh_key.go Use gitea forked macaron (#7933) 2019-08-23 12:40:29 -04:00
star_test.go Fix tests code to prevent some runtime errors (#2381) 2017-08-28 12:17:45 +03:00
star.go Ensure that sessions are passed into queries that could use the database to prevent deadlocks (#5718) 2019-01-13 21:29:58 -05:00
test_fixtures.go Increase the retry limit to 20 times and the interval to 200ms (#5134) 2018-10-21 16:09:17 +02:00
token_test.go Add golangci (#6418) 2019-06-12 15:41:28 -04:00
token.go Display ui time with customize time location (#7792) 2019-08-15 22:46:21 +08:00
topic_test.go feat(repo): support search repository by topic name (#4505) 2018-09-13 10:33:48 +08:00
topic.go Display ui time with customize time location (#7792) 2019-08-15 22:46:21 +08:00
twofactor.go Display ui time with customize time location (#7792) 2019-08-15 22:46:21 +08:00
u2f_test.go Override xorm type mapping for U2F counter (#6232) 2019-03-04 21:34:52 -05:00
u2f.go Display ui time with customize time location (#7792) 2019-08-15 22:46:21 +08:00
unit_tests.go Move database settings from models to setting (#7806) 2019-08-24 11:24:45 +02:00
unit.go Fixes #5960 - Adds API Endpoint for Repo Edit (#7006) 2019-05-30 11:09:05 -04:00
update_test.go move code.gitea.io/git to code.gitea.io/gitea/modules/git (#6364) 2019-03-27 17:33:00 +08:00
update.go Display ui time with customize time location (#7792) 2019-08-15 22:46:21 +08:00
upload.go Use gitea forked macaron (#7933) 2019-08-23 12:40:29 -04:00
user_follow_test.go Move user_follow to separate file (#1210) 2017-03-11 16:46:53 +08:00
user_follow.go Refactor session close as xorm already does everything needed internally (#2020) 2017-06-21 08:57:05 +08:00
user_heatmap_test.go Fix JSON result of empty array (#5154) 2018-10-24 21:17:21 +08:00
user_heatmap.go Move database settings from models to setting (#7806) 2019-08-24 11:24:45 +02:00
user_mail_test.go Fix tests code to prevent some runtime errors (#2381) 2017-08-28 12:17:45 +03:00
user_mail.go Add golangci (#6418) 2019-06-12 15:41:28 -04:00
user_openid_test.go Add golangci (#6418) 2019-06-12 15:41:28 -04:00
user_openid.go Fix SQL quoting (#5117) 2018-10-20 18:19:21 -04:00
user_test.go Add Ability for User to Customize Email Notification Frequency (#7813) 2019-08-29 17:05:42 +03:00
user.go Add Ability for User to Customize Email Notification Frequency (#7813) 2019-08-29 17:05:42 +03:00
userlist_test.go org/members: display 2FA members states + optimize sql requests (#7621) 2019-08-02 12:06:27 -04:00
userlist.go org/members: display 2FA members states + optimize sql requests (#7621) 2019-08-02 12:06:27 -04:00
webhook_dingtalk.go Move sdk structs to modules/structs (#6905) 2019-05-11 18:21:34 +08:00
webhook_discord.go Add golangci (#6418) 2019-06-12 15:41:28 -04:00
webhook_msteams.go Move sdk structs to modules/structs (#6905) 2019-05-11 18:21:34 +08:00
webhook_slack.go Fix Slack webhook fork message (#7774) 2019-08-06 19:27:10 -04:00
webhook_telegram.go Move sdk structs to modules/structs (#6905) 2019-05-11 18:21:34 +08:00
webhook_test.go Move sdk structs to modules/structs (#6905) 2019-05-11 18:21:34 +08:00
webhook.go Use gitea forked macaron (#7933) 2019-08-23 12:40:29 -04:00
wiki_test.go Remove local clones & make hooks run on merge/edit/upload (#6672) 2019-05-11 11:29:17 -04:00
wiki.go Use gitea forked macaron (#7933) 2019-08-23 12:40:29 -04:00