|
8 | 8 | import os |
9 | 9 | import re |
10 | 10 |
|
11 | | -from django.db import models |
12 | 11 | from django.utils.translation import gettext_lazy as _ |
13 | 12 |
|
14 | 13 |
|
|
89 | 88 | # TODO: Remove this since we only have 1 type. |
90 | 89 | REPO_CHOICES = ((REPO_TYPE_GIT, _("Git")),) |
91 | 90 |
|
| 91 | +PUBLIC = "public" |
| 92 | +PRIVATE = "private" |
92 | 93 |
|
93 | | -class Privacy(models.TextChoices): |
94 | | - """Privacy level for a project or version.""" |
95 | | - |
96 | | - PUBLIC = "public", _("Public") |
97 | | - PRIVATE = "private", _("Private") |
98 | | - |
99 | | - |
100 | | -# Backward-compatible aliases for Privacy |
101 | | -PUBLIC = Privacy.PUBLIC |
102 | | -PRIVATE = Privacy.PRIVATE |
103 | | -PRIVACY_CHOICES = Privacy.choices |
| 94 | +PRIVACY_CHOICES = ( |
| 95 | + (PUBLIC, _("Public")), |
| 96 | + (PRIVATE, _("Private")), |
| 97 | +) |
104 | 98 |
|
105 | 99 | IMPORTANT_VERSION_FILTERS = { |
106 | 100 | "slug": "important", |
@@ -391,70 +385,58 @@ class Privacy(models.TextChoices): |
391 | 385 | GITHUB_BRAND = "GitHub" |
392 | 386 | GITLAB_BRAND = "GitLab" |
393 | 387 |
|
| 388 | +# SSL statuses |
| 389 | +SSL_STATUS_VALID = "valid" |
| 390 | +SSL_STATUS_INVALID = "invalid" |
| 391 | +SSL_STATUS_PENDING = "pending" |
| 392 | +SSL_STATUS_UNKNOWN = "unknown" |
| 393 | +SSL_STATUS_CHOICES = ( |
| 394 | + (SSL_STATUS_VALID, _("Valid and active")), |
| 395 | + (SSL_STATUS_INVALID, _("Invalid")), |
| 396 | + (SSL_STATUS_PENDING, _("Pending")), |
| 397 | + (SSL_STATUS_UNKNOWN, _("Unknown")), |
| 398 | +) |
394 | 399 |
|
395 | | -class SSLStatus(models.TextChoices): |
396 | | - """SSL certificate status for a custom domain.""" |
397 | | - |
398 | | - VALID = "valid", _("Valid and active") |
399 | | - INVALID = "invalid", _("Invalid") |
400 | | - PENDING = "pending", _("Pending") |
401 | | - UNKNOWN = "unknown", _("Unknown") |
402 | | - |
403 | | - |
404 | | -# Backward-compatible aliases for SSLStatus |
405 | | -SSL_STATUS_VALID = SSLStatus.VALID |
406 | | -SSL_STATUS_INVALID = SSLStatus.INVALID |
407 | | -SSL_STATUS_PENDING = SSLStatus.PENDING |
408 | | -SSL_STATUS_UNKNOWN = SSLStatus.UNKNOWN |
409 | | -SSL_STATUS_CHOICES = SSLStatus.choices |
410 | | - |
411 | | - |
412 | | -class VersioningScheme(models.TextChoices): |
413 | | - """URL scheme for serving documentation.""" |
414 | | - |
415 | | - MULTIPLE_VERSIONS_WITH_TRANSLATIONS = ( |
416 | | - "multiple_versions_with_translations", |
| 400 | +MULTIPLE_VERSIONS_WITH_TRANSLATIONS = "multiple_versions_with_translations" |
| 401 | +MULTIPLE_VERSIONS_WITHOUT_TRANSLATIONS = "multiple_versions_without_translations" |
| 402 | +SINGLE_VERSION_WITHOUT_TRANSLATIONS = "single_version_without_translations" |
| 403 | +VERSIONING_SCHEME_CHOICES = ( |
| 404 | + ( |
| 405 | + MULTIPLE_VERSIONS_WITH_TRANSLATIONS, |
417 | 406 | _("Multiple versions with translations (/<language>/<version>/<filename>)"), |
418 | | - ) |
419 | | - MULTIPLE_VERSIONS_WITHOUT_TRANSLATIONS = ( |
420 | | - "multiple_versions_without_translations", |
| 407 | + ), |
| 408 | + ( |
| 409 | + MULTIPLE_VERSIONS_WITHOUT_TRANSLATIONS, |
421 | 410 | _("Multiple versions without translations (/<version>/<filename>)"), |
422 | | - ) |
423 | | - SINGLE_VERSION_WITHOUT_TRANSLATIONS = ( |
424 | | - "single_version_without_translations", |
| 411 | + ), |
| 412 | + ( |
| 413 | + SINGLE_VERSION_WITHOUT_TRANSLATIONS, |
425 | 414 | _("Single version without translations (/<filename>)"), |
426 | | - ) |
427 | | - |
428 | | - |
429 | | -# Backward-compatible aliases for VersioningScheme |
430 | | -MULTIPLE_VERSIONS_WITH_TRANSLATIONS = VersioningScheme.MULTIPLE_VERSIONS_WITH_TRANSLATIONS |
431 | | -MULTIPLE_VERSIONS_WITHOUT_TRANSLATIONS = VersioningScheme.MULTIPLE_VERSIONS_WITHOUT_TRANSLATIONS |
432 | | -SINGLE_VERSION_WITHOUT_TRANSLATIONS = VersioningScheme.SINGLE_VERSION_WITHOUT_TRANSLATIONS |
433 | | -VERSIONING_SCHEME_CHOICES = VersioningScheme.choices |
434 | | - |
435 | | - |
436 | | -class FlyoutSorting(models.TextChoices): |
437 | | - """Sorting algorithm for the version flyout.""" |
438 | | - |
439 | | - ALPHABETICALLY = "alphabetically", _("Alphabetically") |
440 | | - # Compatibility to keep the behavior of the old flyout. |
441 | | - # This isn't a good algorithm, but it's a way to keep the old behavior in case we need it. |
442 | | - SEMVER_READTHEDOCS_COMPATIBLE = "semver-readthedocs-compatible", _("SemVer (Read the Docs)") |
443 | | - # https://pypi.org/project/packaging/ |
444 | | - PYTHON_PACKAGING = "python-packaging", _("Python Packaging (PEP 440 and PEP 425)") |
445 | | - CALVER = "calver", _("CalVer (YYYY.0M.0M)") |
446 | | - # Let the user to define a custom pattern and use BumpVer to parse and sort the versions. |
447 | | - # https://github.com/mbarkhau/bumpver#pattern-examples |
448 | | - CUSTOM_PATTERN = "custom-pattern", _("Define your own pattern") |
449 | | - |
450 | | - |
451 | | -# Backward-compatible aliases for FlyoutSorting |
452 | | -ADDONS_FLYOUT_SORTING_ALPHABETICALLY = FlyoutSorting.ALPHABETICALLY |
453 | | -ADDONS_FLYOUT_SORTING_SEMVER_READTHEDOCS_COMPATIBLE = FlyoutSorting.SEMVER_READTHEDOCS_COMPATIBLE |
454 | | -ADDONS_FLYOUT_SORTING_PYTHON_PACKAGING = FlyoutSorting.PYTHON_PACKAGING |
455 | | -ADDONS_FLYOUT_SORTING_CALVER = FlyoutSorting.CALVER |
456 | | -ADDONS_FLYOUT_SORTING_CUSTOM_PATTERN = FlyoutSorting.CUSTOM_PATTERN |
457 | | -ADDONS_FLYOUT_SORTING_CHOICES = FlyoutSorting.choices |
| 415 | + ), |
| 416 | +) |
| 417 | + |
| 418 | + |
| 419 | +ADDONS_FLYOUT_SORTING_ALPHABETICALLY = "alphabetically" |
| 420 | +# Compatibility to keep the behavior of the old flyout. |
| 421 | +# This isn't a good algorithm, but it's a way to keep the old behavior in case we need it. |
| 422 | +ADDONS_FLYOUT_SORTING_SEMVER_READTHEDOCS_COMPATIBLE = "semver-readthedocs-compatible" |
| 423 | +# https://pypi.org/project/packaging/ |
| 424 | +ADDONS_FLYOUT_SORTING_PYTHON_PACKAGING = "python-packaging" |
| 425 | +ADDONS_FLYOUT_SORTING_CALVER = "calver" |
| 426 | +# Let the user to define a custom pattern and use BumpVer to parse and sort the versions. |
| 427 | +# https://github.com/mbarkhau/bumpver#pattern-examples |
| 428 | +ADDONS_FLYOUT_SORTING_CUSTOM_PATTERN = "custom-pattern" |
| 429 | + |
| 430 | +ADDONS_FLYOUT_SORTING_CHOICES = ( |
| 431 | + (ADDONS_FLYOUT_SORTING_ALPHABETICALLY, _("Alphabetically")), |
| 432 | + (ADDONS_FLYOUT_SORTING_SEMVER_READTHEDOCS_COMPATIBLE, _("SemVer (Read the Docs)")), |
| 433 | + ( |
| 434 | + ADDONS_FLYOUT_SORTING_PYTHON_PACKAGING, |
| 435 | + _("Python Packaging (PEP 440 and PEP 425)"), |
| 436 | + ), |
| 437 | + (ADDONS_FLYOUT_SORTING_CALVER, _("CalVer (YYYY.0M.0M)")), |
| 438 | + (ADDONS_FLYOUT_SORTING_CUSTOM_PATTERN, _("Define your own pattern")), |
| 439 | +) |
458 | 440 |
|
459 | 441 | ADDONS_FLYOUT_POSITION_BOTTOM_LEFT = "bottom-left" |
460 | 442 | ADDONS_FLYOUT_POSITION_BOTTOM_RIGHT = "bottom-right" |
|
0 commit comments