aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMax Magorsch <arzano@gentoo.org>2020-06-19 18:33:21 +0200
committerMax Magorsch <arzano@gentoo.org>2020-06-19 18:33:21 +0200
commit2d98fcffdf895a6a23a34e2bfc0b1430488f2e0e (patch)
tree98736560da67cf06188ecb21787146c8ad73916c /pkg/importer
parentRemove duplicate lists (diff)
downloadarchives-2d98fcffdf895a6a23a34e2bfc0b1430488f2e0e.tar.gz
archives-2d98fcffdf895a6a23a34e2bfc0b1430488f2e0e.tar.bz2
archives-2d98fcffdf895a6a23a34e2bfc0b1430488f2e0e.zip
Speed up the /lists page
Signed-off-by: Max Magorsch <arzano@gentoo.org>
Diffstat (limited to 'pkg/importer')
-rw-r--r--pkg/importer/utils.go9
1 files changed, 8 insertions, 1 deletions
diff --git a/pkg/importer/utils.go b/pkg/importer/utils.go
index c2d38fc..1af34ed 100644
--- a/pkg/importer/utils.go
+++ b/pkg/importer/utils.go
@@ -28,6 +28,7 @@ func importMail(name, path, maildirPath string) {
Body: getBody(m.Header, m.Body),
Date: getDate(m.Header),
Lists: getLists(m.Header),
+ List: getListName(path),
Comment: "",
Hidden: false,
}
@@ -116,6 +117,12 @@ func getLists(header mail.Header) []string {
return lists
}
+func getListName(path string) string {
+ listName := strings.ReplaceAll(path, config.MailDirPath() + ".", "")
+ listName = strings.Split(listName, "/")[0]
+ return listName
+}
+
func insertMessage(message models.Message) error {
_, err := database.DBCon.Model(&message).
Value("tsv_subject", "to_tsvector(?)", message.GetSubject()).
@@ -127,7 +134,7 @@ func insertMessage(message models.Message) error {
func isPublicList(path string) bool {
for _, publicList := range config.AllPublicMailingLists(){
- if strings.HasPrefix(path, config.MailDirPath() + "." + publicList + "/") {
+ if publicList == getListName(path) {
return true
}
}