mirror of
				https://github.com/paperless-ngx/paperless-ngx.git
				synced 2025-11-03 19:17:13 -05:00 
			
		
		
		
	add support for configuring mail server character set per server. fixes #548
This commit is contained in:
		
							parent
							
								
									b12fcca20d
								
							
						
					
					
						commit
						870808f3c2
					
				@ -8,7 +8,7 @@ msgid ""
 | 
			
		||||
msgstr ""
 | 
			
		||||
"Project-Id-Version: PACKAGE VERSION\n"
 | 
			
		||||
"Report-Msgid-Bugs-To: \n"
 | 
			
		||||
"POT-Creation-Date: 2021-05-04 15:00+0000\n"
 | 
			
		||||
"POT-Creation-Date: 2021-05-16 09:38+0000\n"
 | 
			
		||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 | 
			
		||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 | 
			
		||||
"Language-Team: LANGUAGE <LL@li.org>\n"
 | 
			
		||||
@ -46,7 +46,7 @@ msgid "Automatic"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: documents/models.py:41 documents/models.py:350 paperless_mail/models.py:25
 | 
			
		||||
#: paperless_mail/models.py:109
 | 
			
		||||
#: paperless_mail/models.py:117
 | 
			
		||||
msgid "name"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
@ -376,127 +376,135 @@ msgstr ""
 | 
			
		||||
msgid "File type %(type)s not supported"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: documents/templates/index.html:21
 | 
			
		||||
#: documents/templates/index.html:22
 | 
			
		||||
msgid "Paperless-ng is loading..."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: documents/templates/registration/logged_out.html:13
 | 
			
		||||
#: documents/templates/registration/logged_out.html:14
 | 
			
		||||
msgid "Paperless-ng signed out"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: documents/templates/registration/logged_out.html:41
 | 
			
		||||
#: documents/templates/registration/logged_out.html:45
 | 
			
		||||
msgid "You have been successfully logged out. Bye!"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: documents/templates/registration/logged_out.html:42
 | 
			
		||||
#: documents/templates/registration/logged_out.html:46
 | 
			
		||||
msgid "Sign in again"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: documents/templates/registration/login.html:13
 | 
			
		||||
#: documents/templates/registration/login.html:15
 | 
			
		||||
msgid "Paperless-ng sign in"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: documents/templates/registration/login.html:42
 | 
			
		||||
#: documents/templates/registration/login.html:47
 | 
			
		||||
msgid "Please sign in."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: documents/templates/registration/login.html:45
 | 
			
		||||
#: documents/templates/registration/login.html:50
 | 
			
		||||
msgid "Your username and password didn't match. Please try again."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: documents/templates/registration/login.html:48
 | 
			
		||||
#: documents/templates/registration/login.html:53
 | 
			
		||||
msgid "Username"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: documents/templates/registration/login.html:49
 | 
			
		||||
#: documents/templates/registration/login.html:54
 | 
			
		||||
msgid "Password"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: documents/templates/registration/login.html:54
 | 
			
		||||
#: documents/templates/registration/login.html:59
 | 
			
		||||
msgid "Sign in"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless/settings.py:300
 | 
			
		||||
#: paperless/settings.py:303
 | 
			
		||||
msgid "English (US)"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless/settings.py:301
 | 
			
		||||
#: paperless/settings.py:304
 | 
			
		||||
msgid "English (GB)"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless/settings.py:302
 | 
			
		||||
#: paperless/settings.py:305
 | 
			
		||||
msgid "German"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless/settings.py:303
 | 
			
		||||
#: paperless/settings.py:306
 | 
			
		||||
msgid "Dutch"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless/settings.py:304
 | 
			
		||||
#: paperless/settings.py:307
 | 
			
		||||
msgid "French"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless/settings.py:305
 | 
			
		||||
#: paperless/settings.py:308
 | 
			
		||||
msgid "Portuguese (Brazil)"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless/settings.py:306
 | 
			
		||||
#: paperless/settings.py:309
 | 
			
		||||
msgid "Portuguese"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless/settings.py:307
 | 
			
		||||
#: paperless/settings.py:310
 | 
			
		||||
msgid "Italian"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless/settings.py:308
 | 
			
		||||
#: paperless/settings.py:311
 | 
			
		||||
msgid "Romanian"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless/settings.py:309
 | 
			
		||||
#: paperless/settings.py:312
 | 
			
		||||
msgid "Russian"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless/settings.py:310
 | 
			
		||||
#: paperless/settings.py:313
 | 
			
		||||
msgid "Spanish"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless/settings.py:311
 | 
			
		||||
#: paperless/settings.py:314
 | 
			
		||||
msgid "Polish"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless/settings.py:312
 | 
			
		||||
#: paperless/settings.py:315
 | 
			
		||||
msgid "Swedish"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless/urls.py:113
 | 
			
		||||
#: paperless/urls.py:120
 | 
			
		||||
msgid "Paperless-ng administration"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/admin.py:25
 | 
			
		||||
#: paperless_mail/admin.py:15
 | 
			
		||||
msgid "Authentication"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/admin.py:18
 | 
			
		||||
msgid "Advanced settings"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/admin.py:37
 | 
			
		||||
msgid "Filter"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/admin.py:27
 | 
			
		||||
#: paperless_mail/admin.py:39
 | 
			
		||||
msgid ""
 | 
			
		||||
"Paperless will only process mails that match ALL of the filters given below."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/admin.py:37
 | 
			
		||||
#: paperless_mail/admin.py:49
 | 
			
		||||
msgid "Actions"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/admin.py:39
 | 
			
		||||
#: paperless_mail/admin.py:51
 | 
			
		||||
msgid ""
 | 
			
		||||
"The action applied to the mail. This action is only performed when documents "
 | 
			
		||||
"were consumed from the mail. Mails without attachments will remain entirely "
 | 
			
		||||
"untouched."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/admin.py:46
 | 
			
		||||
#: paperless_mail/admin.py:58
 | 
			
		||||
msgid "Metadata"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/admin.py:48
 | 
			
		||||
#: paperless_mail/admin.py:60
 | 
			
		||||
msgid ""
 | 
			
		||||
"Assign metadata to documents consumed from this rule automatically. If you "
 | 
			
		||||
"do not assign tags, types or correspondents here, paperless will still "
 | 
			
		||||
@ -553,144 +561,158 @@ msgstr ""
 | 
			
		||||
msgid "password"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:60
 | 
			
		||||
msgid "mail rule"
 | 
			
		||||
#: paperless_mail/models.py:54
 | 
			
		||||
msgid "character set"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:61
 | 
			
		||||
msgid "mail rules"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:67
 | 
			
		||||
msgid "Only process attachments."
 | 
			
		||||
#: paperless_mail/models.py:57
 | 
			
		||||
msgid ""
 | 
			
		||||
"The character set to use when communicating with the mail server, such as "
 | 
			
		||||
"'UTF-8' or 'US-ASCII'."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:68
 | 
			
		||||
msgid "mail rule"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:69
 | 
			
		||||
msgid "mail rules"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:75
 | 
			
		||||
msgid "Only process attachments."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:76
 | 
			
		||||
msgid "Process all files, including 'inline' attachments."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:78
 | 
			
		||||
#: paperless_mail/models.py:86
 | 
			
		||||
msgid "Mark as read, don't process read mails"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:79
 | 
			
		||||
#: paperless_mail/models.py:87
 | 
			
		||||
msgid "Flag the mail, don't process flagged mails"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:80
 | 
			
		||||
#: paperless_mail/models.py:88
 | 
			
		||||
msgid "Move to specified folder"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:81
 | 
			
		||||
#: paperless_mail/models.py:89
 | 
			
		||||
msgid "Delete"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:88
 | 
			
		||||
#: paperless_mail/models.py:96
 | 
			
		||||
msgid "Use subject as title"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:89
 | 
			
		||||
#: paperless_mail/models.py:97
 | 
			
		||||
msgid "Use attachment filename as title"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:99
 | 
			
		||||
#: paperless_mail/models.py:107
 | 
			
		||||
msgid "Do not assign a correspondent"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:101
 | 
			
		||||
#: paperless_mail/models.py:109
 | 
			
		||||
msgid "Use mail address"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:103
 | 
			
		||||
#: paperless_mail/models.py:111
 | 
			
		||||
msgid "Use name (or mail address if not available)"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:105
 | 
			
		||||
#: paperless_mail/models.py:113
 | 
			
		||||
msgid "Use correspondent selected below"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:113
 | 
			
		||||
#: paperless_mail/models.py:121
 | 
			
		||||
msgid "order"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:120
 | 
			
		||||
#: paperless_mail/models.py:128
 | 
			
		||||
msgid "account"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:124
 | 
			
		||||
#: paperless_mail/models.py:132
 | 
			
		||||
msgid "folder"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:128
 | 
			
		||||
msgid "filter from"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:131
 | 
			
		||||
msgid "filter subject"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:134
 | 
			
		||||
msgid "filter body"
 | 
			
		||||
msgid "Subfolders must be separated by dots."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:138
 | 
			
		||||
msgid "filter from"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:141
 | 
			
		||||
msgid "filter subject"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:144
 | 
			
		||||
msgid "filter body"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:148
 | 
			
		||||
msgid "filter attachment filename"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:140
 | 
			
		||||
#: paperless_mail/models.py:150
 | 
			
		||||
msgid ""
 | 
			
		||||
"Only consume documents which entirely match this filename if specified. "
 | 
			
		||||
"Wildcards such as *.pdf or *invoice* are allowed. Case insensitive."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:146
 | 
			
		||||
#: paperless_mail/models.py:156
 | 
			
		||||
msgid "maximum age"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:148
 | 
			
		||||
#: paperless_mail/models.py:158
 | 
			
		||||
msgid "Specified in days."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:151
 | 
			
		||||
#: paperless_mail/models.py:161
 | 
			
		||||
msgid "attachment type"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:154
 | 
			
		||||
#: paperless_mail/models.py:164
 | 
			
		||||
msgid ""
 | 
			
		||||
"Inline attachments include embedded images, so it's best to combine this "
 | 
			
		||||
"option with a filename filter."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:159
 | 
			
		||||
#: paperless_mail/models.py:169
 | 
			
		||||
msgid "action"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:165
 | 
			
		||||
#: paperless_mail/models.py:175
 | 
			
		||||
msgid "action parameter"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:167
 | 
			
		||||
#: paperless_mail/models.py:177
 | 
			
		||||
msgid ""
 | 
			
		||||
"Additional parameter for the action selected above, i.e., the target folder "
 | 
			
		||||
"of the move to folder action."
 | 
			
		||||
"of the move to folder action. Subfolders must be separated by dots."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:173
 | 
			
		||||
#: paperless_mail/models.py:184
 | 
			
		||||
msgid "assign title from"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:183
 | 
			
		||||
#: paperless_mail/models.py:194
 | 
			
		||||
msgid "assign this tag"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:191
 | 
			
		||||
#: paperless_mail/models.py:202
 | 
			
		||||
msgid "assign this document type"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:195
 | 
			
		||||
#: paperless_mail/models.py:206
 | 
			
		||||
msgid "assign correspondent from"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: paperless_mail/models.py:205
 | 
			
		||||
#: paperless_mail/models.py:216
 | 
			
		||||
msgid "assign this correspondent"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
@ -8,6 +8,18 @@ class MailAccountAdmin(admin.ModelAdmin):
 | 
			
		||||
 | 
			
		||||
    list_display = ("name", "imap_server", "username")
 | 
			
		||||
 | 
			
		||||
    fieldsets = [
 | 
			
		||||
        (None, {
 | 
			
		||||
            'fields': ['name', 'imap_server', 'imap_port']
 | 
			
		||||
        }),
 | 
			
		||||
        (_("Authentication"), {
 | 
			
		||||
            'fields': ['imap_security', 'username', 'password']
 | 
			
		||||
        }),
 | 
			
		||||
        (_("Advanced settings"), {
 | 
			
		||||
            'fields': ['character_set']
 | 
			
		||||
        })
 | 
			
		||||
    ]
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class MailRuleAdmin(admin.ModelAdmin):
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -200,8 +200,10 @@ class MailAccountHandler(LoggingMixin):
 | 
			
		||||
            f"{str(AND(**criterias))}")
 | 
			
		||||
 | 
			
		||||
        try:
 | 
			
		||||
            messages = M.fetch(criteria=AND(**criterias),
 | 
			
		||||
                               mark_seen=False, charset='UTF-8')
 | 
			
		||||
            messages = M.fetch(
 | 
			
		||||
                criteria=AND(**criterias),
 | 
			
		||||
                mark_seen=False,
 | 
			
		||||
                charset=rule.account.character_set)
 | 
			
		||||
        except Exception:
 | 
			
		||||
            raise MailError(
 | 
			
		||||
                f"Rule {rule}: Error while fetching folder {rule.folder}")
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										28
									
								
								src/paperless_mail/migrations/0008_auto_20210516_0940.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								src/paperless_mail/migrations/0008_auto_20210516_0940.py
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,28 @@
 | 
			
		||||
# Generated by Django 3.2.3 on 2021-05-16 09:40
 | 
			
		||||
 | 
			
		||||
from django.db import migrations, models
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class Migration(migrations.Migration):
 | 
			
		||||
 | 
			
		||||
    dependencies = [
 | 
			
		||||
        ('paperless_mail', '0007_auto_20210106_0138'),
 | 
			
		||||
    ]
 | 
			
		||||
 | 
			
		||||
    operations = [
 | 
			
		||||
        migrations.AddField(
 | 
			
		||||
            model_name='mailaccount',
 | 
			
		||||
            name='character_set',
 | 
			
		||||
            field=models.CharField(default='UTF-8', help_text="The character set to use when communicating with the mail server, such as 'UTF-8' or 'US-ASCII'.", max_length=256, verbose_name='character set'),
 | 
			
		||||
        ),
 | 
			
		||||
        migrations.AlterField(
 | 
			
		||||
            model_name='mailrule',
 | 
			
		||||
            name='action_parameter',
 | 
			
		||||
            field=models.CharField(blank=True, help_text='Additional parameter for the action selected above, i.e., the target folder of the move to folder action. Subfolders must be separated by dots.', max_length=256, null=True, verbose_name='action parameter'),
 | 
			
		||||
        ),
 | 
			
		||||
        migrations.AlterField(
 | 
			
		||||
            model_name='mailrule',
 | 
			
		||||
            name='folder',
 | 
			
		||||
            field=models.CharField(default='INBOX', help_text='Subfolders must be separated by dots.', max_length=256, verbose_name='folder'),
 | 
			
		||||
        ),
 | 
			
		||||
    ]
 | 
			
		||||
@ -50,6 +50,14 @@ class MailAccount(models.Model):
 | 
			
		||||
        _("password"),
 | 
			
		||||
        max_length=256)
 | 
			
		||||
 | 
			
		||||
    character_set = models.CharField(
 | 
			
		||||
        _("character set"),
 | 
			
		||||
        max_length=256,
 | 
			
		||||
        default="UTF-8",
 | 
			
		||||
        help_text=_("The character set to use when communicating with the "
 | 
			
		||||
                    "mail server, such as 'UTF-8' or 'US-ASCII'.")
 | 
			
		||||
    )
 | 
			
		||||
 | 
			
		||||
    def __str__(self):
 | 
			
		||||
        return self.name
 | 
			
		||||
 | 
			
		||||
@ -122,7 +130,9 @@ class MailRule(models.Model):
 | 
			
		||||
 | 
			
		||||
    folder = models.CharField(
 | 
			
		||||
        _("folder"),
 | 
			
		||||
        default='INBOX', max_length=256)
 | 
			
		||||
        default='INBOX', max_length=256,
 | 
			
		||||
        help_text=_("Subfolders must be separated by dots.")
 | 
			
		||||
    )
 | 
			
		||||
 | 
			
		||||
    filter_from = models.CharField(
 | 
			
		||||
        _("filter from"),
 | 
			
		||||
@ -166,7 +176,8 @@ class MailRule(models.Model):
 | 
			
		||||
        max_length=256, blank=True, null=True,
 | 
			
		||||
        help_text=_("Additional parameter for the action selected above, "
 | 
			
		||||
                    "i.e., "
 | 
			
		||||
                    "the target folder of the move to folder action.")
 | 
			
		||||
                    "the target folder of the move to folder action. "
 | 
			
		||||
                    "Subfolders must be separated by dots.")
 | 
			
		||||
    )
 | 
			
		||||
 | 
			
		||||
    assign_title_from = models.PositiveIntegerField(
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user