Compare commits
	
		
			2 Commits
		
	
	
		
			5c6bfd8b49
			...
			61fd1849ed
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 61fd1849ed | |||
| a67158f8f6 | 
@@ -17,8 +17,6 @@
 | 
				
			|||||||
"""The forms for the currency management.
 | 
					"""The forms for the currency management.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
"""
 | 
					"""
 | 
				
			||||||
from __future__ import annotations
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
from flask_wtf import FlaskForm
 | 
					from flask_wtf import FlaskForm
 | 
				
			||||||
from wtforms import StringField, ValidationError
 | 
					from wtforms import StringField, ValidationError
 | 
				
			||||||
from wtforms.validators import DataRequired, Regexp, NoneOf
 | 
					from wtforms.validators import DataRequired, Regexp, NoneOf
 | 
				
			||||||
@@ -30,22 +28,25 @@ from accounting.utils.strip_text import strip_text
 | 
				
			|||||||
from accounting.utils.user import get_current_user_pk
 | 
					from accounting.utils.user import get_current_user_pk
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class CodeUnique:
 | 
				
			||||||
 | 
					    """The validator to check if the code is unique."""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    def __call__(self, form: FlaskForm, field: StringField) -> None:
 | 
				
			||||||
 | 
					        if field.data == "":
 | 
				
			||||||
 | 
					            return
 | 
				
			||||||
 | 
					        if not isinstance(form, CurrencyForm):
 | 
				
			||||||
 | 
					            return
 | 
				
			||||||
 | 
					        if form.obj_code is not None and form.obj_code == field.data:
 | 
				
			||||||
 | 
					            return
 | 
				
			||||||
 | 
					        if db.session.get(Currency, field.data) is not None:
 | 
				
			||||||
 | 
					            raise ValidationError(lazy_gettext(
 | 
				
			||||||
 | 
					                "Code conflicts with another currency."))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class CurrencyForm(FlaskForm):
 | 
					class CurrencyForm(FlaskForm):
 | 
				
			||||||
    """The form to create or edit a currency."""
 | 
					    """The form to create or edit a currency."""
 | 
				
			||||||
    CODE_BLOCKLIST: list[str] = ["create", "store", "exists-code"]
 | 
					    CODE_BLOCKLIST: list[str] = ["create", "store", "exists-code"]
 | 
				
			||||||
    """The reserved codes that are not available."""
 | 
					    """The reserved codes that are not available."""
 | 
				
			||||||
 | 
					 | 
				
			||||||
    class CodeUnique:
 | 
					 | 
				
			||||||
        """The validator to check if the code is unique."""
 | 
					 | 
				
			||||||
        def __call__(self, form: CurrencyForm, field: StringField) -> None:
 | 
					 | 
				
			||||||
            if field.data == "":
 | 
					 | 
				
			||||||
                return
 | 
					 | 
				
			||||||
            if form.obj_code is not None and form.obj_code == field.data:
 | 
					 | 
				
			||||||
                return
 | 
					 | 
				
			||||||
            if db.session.get(Currency, field.data) is not None:
 | 
					 | 
				
			||||||
                raise ValidationError(lazy_gettext(
 | 
					 | 
				
			||||||
                    "Code conflicts with another currency."))
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    code = StringField(
 | 
					    code = StringField(
 | 
				
			||||||
        filters=[strip_text],
 | 
					        filters=[strip_text],
 | 
				
			||||||
        validators=[DataRequired(lazy_gettext("Please fill in the code.")),
 | 
					        validators=[DataRequired(lazy_gettext("Please fill in the code.")),
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -17,8 +17,6 @@
 | 
				
			|||||||
"""The journal entry sub-forms for the transaction management.
 | 
					"""The journal entry sub-forms for the transaction management.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
"""
 | 
					"""
 | 
				
			||||||
from __future__ import annotations
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
import re
 | 
					import re
 | 
				
			||||||
 | 
					
 | 
				
			||||||
from flask_babel import LazyString
 | 
					from flask_babel import LazyString
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -17,8 +17,6 @@
 | 
				
			|||||||
"""The reorder forms for the transaction management.
 | 
					"""The reorder forms for the transaction management.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
"""
 | 
					"""
 | 
				
			||||||
from __future__ import annotations
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
from datetime import date
 | 
					from datetime import date
 | 
				
			||||||
 | 
					
 | 
				
			||||||
from flask import request
 | 
					from flask import request
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -17,8 +17,6 @@
 | 
				
			|||||||
"""The account option for the transaction management.
 | 
					"""The account option for the transaction management.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
"""
 | 
					"""
 | 
				
			||||||
from __future__ import annotations
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
from accounting.models import Account
 | 
					from accounting.models import Account
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user