class PersonalDetail(models.Model):
    name = models.CharField(max_length=40)
    profile_pic = models.ImageField(
        upload_to='profile_pic/',
        default='profile_pic/default.png',
        null=True,
    )
    address = models.TextField()
    contact_1 = models.CharField(max_length=10,
                                 validators=[
                                     int_list_validator(sep='', ),
                                     MinLengthValidator(10),
                                 ])
    contact_2 = models.CharField(max_length=10,
                                 null=True,
                                 blank=True,
                                 validators=[
                                     int_list_validator(sep='', ),
                                     MinLengthValidator(10),
                                 ])
    email = models.EmailField(null=True, blank=True)
    guardian_name = models.CharField(max_length=40, )
    guardian_contact = models.CharField(max_length=10,
                                        validators=[
                                            int_list_validator(sep='', ),
                                            MinLengthValidator(10),
                                        ])

    class Meta:
        abstract = True
Exemple #2
0
class GameResult(models.Model):
    """
    Create one per game.
    USE THE `cls.create()` METHOD TO CREATE THESE OBJECTS, NOT `cls.objects.create()`.
    """
    players = models.ManyToManyField('accounts.Player', related_name='games')
    time = models.DateTimeField(auto_now_add=True, blank=True, null=True, editable=False)
    deck = models.ForeignKey('articles.Deck', on_delete=models.SET_NULL, editable=False, null=True)
    player_pks = models.CharField(max_length=500, validators=[validators.int_list_validator()], default='')
    scores = models.CharField(max_length=500, validators=[validators.int_list_validator()], default='')

    def __str__(self):
        players = [p.user.username for p in self.players.all()]
        return f"GameResult @ {self.time.strftime('%Y-%m-%d %H:%M:%S')} | {self.deck} | Players {players} "

    @classmethod
    def create(cls, players, deck, player_scores, **kwargs):
        game_result = cls.objects.create(deck=deck, **kwargs)
        game_result.player_scores = player_scores
        game_result.save()
        game_result.players.set(players)
        return game_result

    @property
    def player_scores(self) -> dict:
        player_pks = [int(v) for v in self.player_pks.split(',')]
        scores = [int(v) for v in self.scores.split(',')]
        assert len(scores) == len(player_pks), "PLAYER-SCORE LISTS MISMATCH!"
        return dict(zip(player_pks, scores))

    @player_scores.setter
    def player_scores(self, score_dict: dict):
        # TODO: parse {player: score} dict and store it as key-value lists
        self.player_pks, self.scores = player_scores_to_commasep(score_dict)
class BackAccountModelAbstract(CreateUpdateMixIn):
    REL_NAME_PREFIX = 'bank'
    ACCOUNT_TYPES = [
        ('checking', _('Checking')),
        ('savings', _('Savings')),
        ('money_mkt', _('Money Market')),
    ]

    uuid = models.UUIDField(default=uuid4, editable=False, primary_key=True)
    name = models.CharField(max_length=150, null=True, blank=True)
    account_number = models.CharField(max_length=30,
                                      null=True,
                                      blank=True,
                                      validators=[
                                          int_list_validator(
                                              sep='',
                                              message=_('Only digits allowed'))
                                      ])
    routing_number = models.CharField(max_length=30,
                                      null=True,
                                      blank=True,
                                      validators=[
                                          int_list_validator(
                                              sep='',
                                              message=_('Only digits allowed'))
                                      ])
    aba_number = models.CharField(max_length=30, null=True, blank=True)
    account_type = models.CharField(choices=ACCOUNT_TYPES, max_length=10)
    cash_account = models.ForeignKey(
        'django_ledger.AccountModel',
        on_delete=models.CASCADE,
        verbose_name=_('Cash Account'),
        related_name=f'{REL_NAME_PREFIX}_cash_account',
        null=True,
        blank=True)
    ledger = models.OneToOneField('django_ledger.LedgerModel',
                                  verbose_name=_('Ledger'),
                                  on_delete=models.CASCADE)
    active = models.BooleanField(default=True)
    hidden = models.BooleanField(default=False)
    objects = BankAccountModelManager()

    class Meta:
        abstract = True
        verbose_name = _('Bank Account')
        indexes = [
            models.Index(fields=['ledger']),
            models.Index(fields=['account_type']),
            models.Index(fields=['cash_account', 'account_type'])
        ]
        unique_together = [('cash_account', 'account_number', 'routing_number')
                           ]

    def __str__(self):
        return self.name
Exemple #4
0
class Article(models.Model):
    categories = models.ManyToManyField('Category',
                                        related_name='articles',
                                        blank=True,
                                        null=True)
    sku = models.CharField(max_length=128, unique=True, verbose_name='SKU')
    ean = models.CharField(
        max_length=16,
        unique=True,
        verbose_name='EAN',
        validators=[
            int_list_validator(
                sep='-',
                message='EAN must be numerical. Can be "-" separated'),
            EANValidator()
        ])
    name = models.CharField(max_length=1024)
    quantity = models.IntegerField(default=0, help_text='Defaults to 0')
    price = models.FloatField()
    currency = models.CharField(max_length=32,
                                choices=[(currency, currency.value)
                                         for currency in Currencies])

    def __str__(self):
        return f'{self.name} '
Exemple #5
0
class Evento(models.Model):
    titulo = models.CharField(max_length=120)
    endereco = models.CharField(max_length=120)
    descricao = models.CharField(max_length=800)
    dia = models.IntegerField()
    mes = models.IntegerField()
    ano = models.IntegerField()
    horario = models.CharField(
        max_length=5,
        validators=[
            int_list_validator(
                sep=',',
                message="Use vírgula (,) para separar as horas dos minutos"),
            MinLengthValidator(5, message="Horário no formato 00,00")
        ])
    imagem = models.FileField(blank=True, null=True)

    def __str__(self):
        horario = self.horario.replace(',', ':')
        if (len(str(self.dia)) == 1):
            self.dia = '0' + str(self.dia)
        if (len(str(self.mes)) == 1):
            self.mes = '0' + str(self.mes)
        return str(self.dia) + '/' + str(self.mes) + ' ' + horario + ' ' + str(
            self.titulo)
Exemple #6
0
class AbstractSoftwareVersion(BaseModel):
    software = models.ForeignKey("Software", on_delete=models.CASCADE)
    version = models.CharField(max_length=25,
                               validators=[int_list_validator(sep='.')])
    version_value = models.PositiveIntegerField(null=True, blank=True)
    published = models.DateField(null=True, blank=True)
    link = models.URLField(null=True, blank=True)
    short_description = models.CharField(max_length=200, null=True, blank=True)
    lead_developer = models.ForeignKey('sources.Person',
                                       on_delete=models.SET_NULL,
                                       null=True,
                                       blank=True,
                                       related_name='lead_developer')
    other_contact = models.ForeignKey('sources.Person',
                                      on_delete=models.SET_NULL,
                                      null=True,
                                      blank=True,
                                      related_name='other_contact')
    version_changes = RichTextUploadingField(blank=True, null=True)

    def __str__(self):
        return self.software.name + "-" + self.version

    def save(self, *args, **kwargs):
        self.version_value = get_version_value(
            self.version)  # enforce version serialization
        super().save(*args, **kwargs)  # Call the parent save() method.

    class Meta:
        abstract = True
        unique_together = (
            'software',
            'version',
        )
        ordering = ['-version_value']
Exemple #7
0
class UserOrderForm(forms.Form):
    name = forms.CharField(max_length=64, required=True)
    surname = forms.CharField(max_length=64, required=True)
    size = forms.CharField(max_length=10,
                           validators=[
                               int_list_validator(sep=''),
                               MinLengthValidator(2),
                           ])
    address = forms.CharField(max_length=128, required=True)
    from_email = forms.EmailField(required=True)
    phone = forms.CharField(
        max_length=10,
        validators=[
            int_list_validator(sep=''),
            MinLengthValidator(10),
        ],
    )
Exemple #8
0
class Penduduk(models.Model):
    id = models.AutoField(primary_key=True, db_column="id")
    no_ktp = models.CharField("No KTP",
                              max_length=16,
                              validators=[
                                  MinLengthValidator(
                                      16,
                                      message="No KTP Kurang",
                                  ),
                                  int_list_validator(
                                      sep='',
                                      message="Cek No KTP",
                                      code='invalid',
                                      allow_negative=False,
                                  ),
                              ],
                              unique=True,
                              db_column="no_ktp")
    nama = models.CharField("Nama", max_length=200, db_column="nama")
    tempat_lahir = models.CharField("Tempat Lahir",
                                    max_length=200,
                                    db_column="tempat_lahir")
    tanggal_lahir = models.DateField("Tanggal Lahir",
                                     db_column="tanggal_lahir")
    id_jenis_kelamin = models.ForeignKey(JenisKelamin,
                                         verbose_name="Jenis Kelamin",
                                         default=1,
                                         db_column="id_jenis_kelamin")
    id_desa = models.ForeignKey(Desa, verbose_name="Desa", db_column="id_desa")
    id_rt = models.ForeignKey(RT, verbose_name="RT", db_column="id_rt")
    no_rumah = models.CharField("No Rumah",
                                max_length=10,
                                blank=True,
                                null=True,
                                db_column="no_rumah")
    bantuan = models.DecimalField("Bantuan",
                                  max_digits=15,
                                  decimal_places=0,
                                  default=0,
                                  db_column="bantuan")
    id_status = models.ForeignKey(Status,
                                  verbose_name="Status",
                                  default=1,
                                  db_column="id_status")
    keterangan = models.TextField("Keterangan",
                                  blank=True,
                                  null=True,
                                  db_column="keterangan")

    class Meta:
        db_table = "penduduk"
        verbose_name = "Penduduk"
        verbose_name_plural = "Penduduk"

    def __unicode__(self):
        return self.nama
Exemple #9
0
class BusinessProfile(models.Model):
    user = models.OneToOneField(User, on_delete=models.CASCADE)
    nip = models.CharField(
        max_length=10,
        validators=[
            int_list_validator(sep=""),
            MinLengthValidator(10),
        ],
    )
    verified = models.BooleanField(default=False)
Exemple #10
0
class registration(models.Model):
    name = models.CharField(max_length=100)
    email = models.EmailField(max_length=100, unique=True)
    password = models.CharField(max_length=100)
    contact = models.CharField(verbose_name="Phone number",
                               max_length=10,
                               validators=[
                                   int_list_validator(sep=''),
                                   MinLengthValidator(10),
                               ],
                               unique=True)
Exemple #11
0
class SignupSerializer(serializers.Serializer):
    email = serializers.CharField()
    phone = serializers.CharField(max_length=11,
                                  validators=[
                                      validators.int_list_validator(),
                                      validators.MinLengthValidator(10)
                                  ])
    password = serializers.CharField()
    user_type = serializers.CharField()
    first_name = serializers.CharField()
    last_name = serializers.CharField()
Exemple #12
0
class Entidad(models.Model):
    razonSocial = models.CharField(max_length=100)
    ruc = models.CharField(help_text="RUC PERÚ",
                           max_length=11,
                           validators=[
                               int_list_validator(sep=''),
                               MinLengthValidator(11),
                           ])
    direccionFiscal = models.CharField(max_length=100)
    contacto = models.CharField(max_length=100)
    telefono = models.CharField(help_text="051123456789",
                                max_length=12,
                                validators=[
                                    int_list_validator(sep=''),
                                    MinLengthValidator(12),
                                ])
    correo = models.EmailField(max_length=254,
                               help_text='*****@*****.**',
                               unique=True)
    cuenta = models.CharField(max_length=42)
Exemple #13
0
class Client_buffer_recv(models.Model):

    user = models.ForeignKey(settings.AUTH_USER_MODEL,
                             on_delete=models.CASCADE)
    device_id = models.CharField(max_length=255)

    data = models.CharField(
        validators=[int_list_validator(allow_negative=True)], max_length=10000)
    timestamp = models.DateTimeField()

    def __str__(self):
        return str(self.user.username)
Exemple #14
0
class Book(Page):
    isbn = models.CharField(
        max_length=13,
        validators=[
            int_list_validator(sep="-"),
            MinLengthValidator(9),
        ],
        help_text="Enter an ISBN (9, 10, or 13) with optional hyphens.",
    )

    content_panels = Page.content_panels + [
        FieldPanel("isbn"),
    ]
Exemple #15
0
class Fellow(models.Model):
    name = models.CharField(max_length=64)
    CNIC = models.CharField(max_length=13,
                            validators=[
                                int_list_validator(sep=''),
                                MinLengthValidator(13),
                            ])
    program = models.CharField(max_length=30)
    ID = models.CharField(max_length=5)
    graduation = models.CharField(max_length=25)

    def __str__(self):
        return f"{self.name}"
Exemple #16
0
class AbstractMaterialVersion(BaseModel):
    material = models.ForeignKey(Material, on_delete=models.CASCADE)
    version = models.CharField(max_length=25,
                               validators=[int_list_validator(sep='.')])
    version_value = models.PositiveIntegerField(null=True, blank=True)
    grade = models.CharField(max_length=1,
                             choices=MATERIAL_GRADES,
                             null=True,
                             blank=True)
    material_lead = models.ForeignKey('sources.Person',
                                      blank=True,
                                      null=True,
                                      on_delete=models.CASCADE,
                                      related_name='%(class)s_material_lead')
    material_expert = models.ForeignKey(
        'sources.Person',
        blank=True,
        null=True,
        on_delete=models.CASCADE,
        related_name='%(class)s_material_expert')
    modeling_expert = models.ForeignKey(
        'sources.Person',
        blank=True,
        null=True,
        on_delete=models.CASCADE,
        related_name='%(class)s_modeling_expert')
    other_contact = models.ForeignKey('sources.Person',
                                      blank=True,
                                      null=True,
                                      on_delete=models.CASCADE,
                                      related_name='%(class)s_other_contact')
    notes = models.TextField(blank=True, null=True)
    datasheet = models.FileField(blank=True, null=True)
    published = models.DateField(blank=True, null=True)

    def __str__(self):
        return self.material.name + "_" + self.version

    def save(self, *args, **kwargs):
        self.version_value = get_version_value(
            self.version)  # enforce version serialization
        super().save(*args, **kwargs)  # Call the parent save() method.

    class Meta:
        abstract = True
        unique_together = (
            'material',
            'version',
        )
        ordering = ['-version_value']
Exemple #17
0
class History(models.Model):
    array = models.CharField(max_length=255,
                             validators=[
                                 int_list_validator(sep=', ',
                                                    message=None,
                                                    code='invalid',
                                                    allow_negative=False)
                             ])
    calculations = models.CharField(max_length=255,
                                    validators=[
                                        int_list_validator(
                                            sep=', ',
                                            message=None,
                                            code='invalid',
                                            allow_negative=False)
                                    ])
    user = models.ForeignKey(User, on_delete=models.CASCADE)

    def __str__(self):
        return f'{self.id} - {self.user}'

    class Meta:
        verbose_name_plural = "History"
Exemple #18
0
class EntryCounter(models.Model):
    form = models.ForeignKey(
        Form,
        models.CASCADE,
        verbose_name=_("form"),
        related_name="%(app_label)s_%(class)s",
    )

    steps = models.CharField(
        verbose_name=_("steps"),
        max_length=200,
        validators=[int_list_validator()],
        default="50, 100, 500, 1000",
    )

    prefix = models.CharField(max_length=100,
                              blank=True,
                              verbose_name=_("pefix"))
    suffix = models.CharField(max_length=100,
                              blank=True,
                              verbose_name=_("suffix"))

    prefix_missing = models.CharField(max_length=100,
                                      blank=True,
                                      verbose_name=_("pefix missing"))
    suffix_missing = models.CharField(max_length=100,
                                      blank=True,
                                      verbose_name=_("suffix missing"))
    aggregate_field = models.SlugField(
        _("aggregate field"),
        blank=True,
        help_text=_(
            "use if you don't want the count of entries, but the sum of a field"
        ),
    )

    start = models.IntegerField(_("start"), default=0)

    template_key = models.CharField(
        _("template"),
        choices=(
            ("forms/bar.html", _("bar")),
            ("forms/number.html", _("number")),
        ),
        default="forms/bar.html",
        max_length=40,
    )

    class Meta:
        abstract = True
Exemple #19
0
class Add(models.Model):
    value = models.CharField(max_length=255,
                             validators=[
                                 int_list_validator(sep=', ',
                                                    message=None,
                                                    code='invalid',
                                                    allow_negative=True)
                             ])
    user = models.ForeignKey(User, on_delete=models.CASCADE)

    def __str__(self):
        return self.value

    class Meta:
        verbose_name_plural = "Adds"
Exemple #20
0
class TransferSerializer(serializers.Serializer):
    from_user_id = serializers.IntegerField()
    to_inn = serializers.CharField(max_length=12,
                                   validators=[
                                       int_list_validator(sep='',
                                                          message=None,
                                                          code='invalid',
                                                          allow_negative=False)
                                   ])
    amount = serializers.DecimalField(max_digits=19, decimal_places=2)

    def create(self, validated_data):
        return Transfer(**validated_data)

    def update(self, instance, validated_data):
        for field, value in validated_data.items():
            setattr(instance, field, value)
        return instance
Exemple #21
0
class UserProfile(models.Model):

    SECURITY_LEVEL = Choices('Confidential', 'Secret', 'Top_Secret')
    security = models.CharField(
        max_length=12,
        choices=SECURITY_LEVEL,
    )

    user = models.OneToOneField(User, on_delete=models.CASCADE)
    image = models.ImageField(upload_to='profile_image', blank=True)
    phone_no = models.CharField(max_length=13,
    validators=[int_list_validator(sep=''),MinLengthValidator(10),], 
    default='385')
    address = models.CharField(max_length=200, default='')
    city = models.CharField(max_length=50, default='')
    employee_status = models.CharField(max_length=150, default='')
    
    def __str__(self):
        return self.user.username
class StudySectionReview(models.Model):

    proposal = models.ForeignKey(
        "proposals.LogoProposal",
        on_delete=models.CASCADE,
        related_name='study_reviews',
    )

    raw_score_list = models.CharField(
        validators=[
            int_list_validator(),
        ],
        max_length=512,
    )

    summary = models.TextField(blank=True, default='')

    def __str__(self):
        return 'Study section score of proposal #{:d}'.format(self.proposal_id)
Exemple #23
0
    def test_value_placeholder_with_char_field(self):
        cases = [
            (validators.validate_integer, "-42.5", "invalid"),
            (validators.validate_email, "a", "invalid"),
            (validators.validate_email, "a@b\n.com", "invalid"),
            (validators.validate_email, "a\[email protected]", "invalid"),
            (validators.validate_slug, "你 好", "invalid"),
            (validators.validate_unicode_slug, "你 好", "invalid"),
            (validators.validate_ipv4_address, "256.1.1.1", "invalid"),
            (validators.validate_ipv6_address, "1:2", "invalid"),
            (validators.validate_ipv46_address, "256.1.1.1", "invalid"),
            (validators.validate_comma_separated_integer_list, "a,b,c",
             "invalid"),
            (validators.int_list_validator(), "-1,2,3", "invalid"),
            (validators.MaxLengthValidator(10), 11 * "x", "max_length"),
            (validators.MinLengthValidator(10), 9 * "x", "min_length"),
            (validators.URLValidator(), "no_scheme", "invalid"),
            (validators.URLValidator(), "http://test[.com", "invalid"),
            (validators.URLValidator(), "http://[::1:2::3]/", "invalid"),
            (
                validators.URLValidator(),
                "http://" + ".".join(["a" * 35 for _ in range(9)]),
                "invalid",
            ),
            (validators.RegexValidator("[0-9]+"), "xxxxxx", "invalid"),
        ]
        for validator, value, code in cases:
            if isinstance(validator, types.FunctionType):
                name = validator.__name__
            else:
                name = type(validator).__name__
            with self.subTest(name, value=value):

                class MyForm(forms.Form):
                    field = forms.CharField(
                        validators=[validator],
                        error_messages={code: "%(value)s"},
                    )

                form = MyForm({"field": value})
                self.assertIs(form.is_valid(), False)
                self.assertEqual(form.errors, {"field": [value]})
Exemple #24
0
    def test_value_placeholder_with_char_field(self):
        cases = [
            (validators.validate_integer, '-42.5', 'invalid'),
            (validators.validate_email, 'a', 'invalid'),
            (validators.validate_email, 'a@b\n.com', 'invalid'),
            (validators.validate_email, 'a\[email protected]', 'invalid'),
            (validators.validate_slug, '你 好', 'invalid'),
            (validators.validate_unicode_slug, '你 好', 'invalid'),
            (validators.validate_ipv4_address, '256.1.1.1', 'invalid'),
            (validators.validate_ipv6_address, '1:2', 'invalid'),
            (validators.validate_ipv46_address, '256.1.1.1', 'invalid'),
            (validators.validate_comma_separated_integer_list, 'a,b,c',
             'invalid'),
            (validators.int_list_validator(), '-1,2,3', 'invalid'),
            (validators.MaxLengthValidator(10), 11 * 'x', 'max_length'),
            (validators.MinLengthValidator(10), 9 * 'x', 'min_length'),
            (validators.URLValidator(), 'no_scheme', 'invalid'),
            (validators.URLValidator(), 'http://test[.com', 'invalid'),
            (validators.URLValidator(), 'http://[::1:2::3]/', 'invalid'),
            (
                validators.URLValidator(),
                'http://' + '.'.join(['a' * 35 for _ in range(9)]),
                'invalid',
            ),
            (validators.RegexValidator('[0-9]+'), 'xxxxxx', 'invalid'),
        ]
        for validator, value, code in cases:
            if isinstance(validator, types.FunctionType):
                name = validator.__name__
            else:
                name = type(validator).__name__
            with self.subTest(name, value=value):

                class MyForm(forms.Form):
                    field = forms.CharField(
                        validators=[validator],
                        error_messages={code: '%(value)s'},
                    )

                form = MyForm({'field': value})
                self.assertIs(form.is_valid(), False)
                self.assertEqual(form.errors, {'field': [value]})
class SignupSerializer(serializers.Serializer):
    email = serializers.CharField()
    phone = serializers.CharField(max_length=10,
                                  validators=[
                                      validators.int_list_validator(),
                                      validators.MinLengthValidator(10)
                                  ])
    password = serializers.CharField()
    user_type = serializers.CharField()
    first_name = serializers.CharField()
    last_name = serializers.CharField()

    class Meta:
        fields = (
            'first_name',
            'last_name',
            'email',
            'phone',
            'password',
            'user_type',
        )
Exemple #26
0
class Project(models.Model):
    title = models.CharField(max_length=40)
    description = models.TextField()
    company = models.ForeignKey(Company, on_delete=models.SET_NULL, null=True)
    client_name = models.CharField(max_length=40)
    client_contact = models.CharField(max_length=10,
                                      validators=[
                                          int_list_validator(sep='', ),
                                          MinLengthValidator(10),
                                      ])
    client_email = models.EmailField()
    frontend = models.ForeignKey(Frontend,
                                 on_delete=models.SET_NULL,
                                 null=True)
    backend = models.ForeignKey(Backend, on_delete=models.SET_NULL, null=True)
    trainer_1_name = models.ForeignKey(Trainer,
                                       on_delete=models.SET_NULL,
                                       null=True)
    trainer_1_role = models.ForeignKey(TrainerRole,
                                       on_delete=models.SET_NULL,
                                       null=True)
    trainer_2_name = models.ForeignKey(Trainer,
                                       related_name='trainer_2',
                                       on_delete=models.SET_NULL,
                                       null=True)
    trainer_2_role = models.ForeignKey(TrainerRole,
                                       related_name='trainer_2_role',
                                       on_delete=models.SET_NULL,
                                       null=True)
    # actual_fees = models.FloatField(validators=[MinValueValidator(0)])
    from_date = models.DateField()
    to_date = models.DateField()

    def __str__(self):
        return self.title

    def clean(self):
        validate_date_range(from_date=self.from_date, to_date=self.to_date)
Exemple #27
0
class LandlordResponse(models.Model):
    gross_net_bases = (('Gross', 'Gross'), ('Net', 'Net'))
    building = models.ForeignKey(Building, on_delete=models.CASCADE, default=1)
    requirement = models.ForeignKey(Requirement, on_delete=models.CASCADE)
    subject_space_floors = models.CharField(max_length=50, null=False, validators=[int_list_validator()], default='0')
    subject_space_size_RSF = models.IntegerField(null=False, default=0)
    quoted_net_rental_rate_USD_per_RSF = models.FloatField(null=False, default=0)
    estimated_yearly_operating_expenses_USD = models.FloatField(null=False, default=0)
    annual_increase_in_net_rental_rate_USD = models.IntegerField(null=False, default=0)
    quoted_improvement_allowance_USD = models.IntegerField(null=False, default=0)
    quoted_free_rent_months_CNT = models.IntegerField(null=False, default=0)
    quoted_free_rent_basis = models.CharField(max_length=10, choices=gross_net_bases, default='Gross', null=False)
    subject_space_former_use = models.TextField(null=True, blank=True)
    subject_space_existing_condition = models.TextField(null=True, blank=True)
    other_notes = models.TextField(null=True, blank=True)

    created_by = models.ForeignKey(User, on_delete=models.CASCADE, default=1)

    def __str__(self):
        return self.building.building_name

    def get_absolute_url(self):
        return reverse('index')
Exemple #28
0
class Kraepelin(models.Model):

    NUMERAL_SYSTEM_CHOICES = (
        ('latin', 'latin'),
        ('kanji', 'kanji'),
    )

    STATUS_CHOICES = (('active', 'active'), ('expired', 'expired'),
                      ('finished', 'finished'))

    user = models.ForeignKey(settings.AUTH_USER_MODEL,
                             on_delete=models.CASCADE,
                             related_name='result')
    timestamp = models.DateTimeField(auto_now_add=True)
    timeleft = models.IntegerField(default=7200, blank=True)
    numeral_system = models.CharField(choices=NUMERAL_SYSTEM_CHOICES,
                                      default='latin',
                                      max_length=32)
    numbers = models.CharField(
        validators=[validate_comma_separated_integer_list],
        blank=True,
        null=True,
        max_length=30000)
    answers = models.CharField(max_length=30000)
    results = models.CharField(
        validators=[int_list_validator(',', allow_negative=True)],
        max_length=30000)
    status = models.CharField(choices=STATUS_CHOICES,
                              default='active',
                              max_length=32)
    room = models.ForeignKey(Room,
                             on_delete=models.RESTRICT,
                             null=True,
                             blank=True)

    def __str__(self) -> str:
        return f' {self.status}  -  {self.user}'
Exemple #29
0
def add(request):
    this_value = request.POST['value']

    validator = int_list_validator(sep=', ',
                                   message=None,
                                   code='invalid',
                                   allow_negative=True)

    try:
        validator(this_value)
        try:
            instance = Add.objects.get(user=request.user)
            instance.value = instance.value + ", " + this_value
            instance.save()
            return HttpResponse(status=201)
        except:
            add = Add()
            add.value = this_value
            add.user = request.user
            add.save()
            return HttpResponse(status=201)

    except:
        return HttpResponse("Invalid data", status=406)
Exemple #30
0
class UserOrder(models.Model):
    name = models.CharField(max_length=64, default='Name', blank=False)
    surname = models.CharField(max_length=64, default='Surname', blank=False)
    address = models.CharField(max_length=128, default='Address', blank=False)
    phone_no = models.CharField(verbose_name="Phone number",
                                max_length=10,
                                validators=[
                                    int_list_validator(sep=''),
                                    MinLengthValidator(10),
                                ],
                                default='1234567890')
    email = models.EmailField(max_length=128,
                              default='*****@*****.**')
    shoes_name = models.CharField(max_length=64, default='Shoes name')
    model = models.CharField(max_length=128)
    size = models.CharField(max_length=10, default='')
    time = models.DateTimeField(verbose_name='order time', auto_now=True)
    mod_check = models.BooleanField(default=False)

    def __str__(self):
        return str(self.surname)

    def get_absolute_url(self):
        return reverse('userorder', kwargs={'id': self.id})
Exemple #31
0
    (validate_comma_separated_integer_list, '12', None),
    (validate_comma_separated_integer_list, '1,2', None),
    (validate_comma_separated_integer_list, '1,2,3', None),
    (validate_comma_separated_integer_list, '10,32', None),

    (validate_comma_separated_integer_list, '', ValidationError),
    (validate_comma_separated_integer_list, 'a', ValidationError),
    (validate_comma_separated_integer_list, 'a,b,c', ValidationError),
    (validate_comma_separated_integer_list, '1, 2, 3', ValidationError),
    (validate_comma_separated_integer_list, ',', ValidationError),
    (validate_comma_separated_integer_list, '1,2,3,', ValidationError),
    (validate_comma_separated_integer_list, '1,2,', ValidationError),
    (validate_comma_separated_integer_list, ',1', ValidationError),
    (validate_comma_separated_integer_list, '1,,2', ValidationError),

    (int_list_validator(sep='.'), '1.2.3', None),
    (int_list_validator(sep='.', allow_negative=True), '1.2.3', None),
    (int_list_validator(allow_negative=True), '-1,-2,3', None),
    (int_list_validator(allow_negative=True), '1,-2,-12', None),

    (int_list_validator(), '-1,2,3', ValidationError),
    (int_list_validator(sep='.'), '1,2,3', ValidationError),
    (int_list_validator(sep='.'), '1.2.3\n', ValidationError),

    (MaxValueValidator(10), 10, None),
    (MaxValueValidator(10), -10, None),
    (MaxValueValidator(10), 0, None),
    (MaxValueValidator(NOW), NOW, None),
    (MaxValueValidator(NOW), NOW - timedelta(days=1), None),

    (MaxValueValidator(0), 1, ValidationError),
Exemple #32
0
    (validate_comma_separated_integer_list, '12', None),
    (validate_comma_separated_integer_list, '1,2', None),
    (validate_comma_separated_integer_list, '1,2,3', None),
    (validate_comma_separated_integer_list, '10,32', None),

    (validate_comma_separated_integer_list, '', ValidationError),
    (validate_comma_separated_integer_list, 'a', ValidationError),
    (validate_comma_separated_integer_list, 'a,b,c', ValidationError),
    (validate_comma_separated_integer_list, '1, 2, 3', ValidationError),
    (validate_comma_separated_integer_list, ',', ValidationError),
    (validate_comma_separated_integer_list, '1,2,3,', ValidationError),
    (validate_comma_separated_integer_list, '1,2,', ValidationError),
    (validate_comma_separated_integer_list, ',1', ValidationError),
    (validate_comma_separated_integer_list, '1,,2', ValidationError),

    (int_list_validator(sep='.'), '1.2.3', None),
    (int_list_validator(sep='.'), '1,2,3', ValidationError),

    (MaxValueValidator(10), 10, None),
    (MaxValueValidator(10), -10, None),
    (MaxValueValidator(10), 0, None),
    (MaxValueValidator(NOW), NOW, None),
    (MaxValueValidator(NOW), NOW - timedelta(days=1), None),

    (MaxValueValidator(0), 1, ValidationError),
    (MaxValueValidator(NOW), NOW + timedelta(days=1), ValidationError),

    (MinValueValidator(-10), -10, None),
    (MinValueValidator(-10), 10, None),
    (MinValueValidator(-10), 0, None),
    (MinValueValidator(NOW), NOW, None),