Compare commits

..

No commits in common. "2f8d62649e8375acce1f6737bf612f732448b9c2" and "0ca50252dd383f4aa0c765af9fb8ab7bbe8df456" have entirely different histories.

14 changed files with 24 additions and 25 deletions

View file

@ -0,0 +1 @@
default_app_config = 'entries.apps.EntriesConfig'

View file

@ -178,7 +178,6 @@ DATABASES = {
} }
} }
DEFAULT_AUTO_FIELD = 'django.db.models.AutoField'
AUTH_USER_MODEL = 'users.User' AUTH_USER_MODEL = 'users.User'

View file

@ -1,7 +1,7 @@
from .base import * from .base import *
ALLOWED_HOSTS = ['*'] ALLOWED_HOSTS = ['*']
META_SITE_DOMAIN = '00dani.lo' META_SITE_DOMAIN = '00dani.dev'
META_FB_APPID = '142105433189339' META_FB_APPID = '142105433189339'
STATIC_URL = 'https://static.00dani.lo/' STATIC_URL = 'https://static.00dani.dev/'
MEDIA_URL = 'https://media.00dani.lo/' MEDIA_URL = STATIC_URL + 'media/'

View file

@ -0,0 +1 @@
default_app_config = 'lemonshort.apps.LemonshortConfig'

View file

@ -6,11 +6,10 @@ from string import ascii_lowercase, ascii_uppercase
chars = ascii_uppercase + ascii_lowercase chars = ascii_uppercase + ascii_lowercase
conv = BaseConverter(chars) conv = BaseConverter(chars)
class AbcIdConverter:
regex = '[a-zA-Z]+'
def to_python(self, value: str) -> int: def abc_to_id(abc):
return int(conv.decode(value)) return int(conv.decode(abc))
def to_url(self, value: int) -> str:
return conv.encode(value) def id_to_abc(id):
return conv.encode(id)

View file

@ -2,7 +2,7 @@ from django.apps import apps
from django.conf import settings from django.conf import settings
from typing import Any, Dict, Type from typing import Any, Dict, Type
from .convert import AbcIdConverter from .convert import id_to_abc
prefixes = {} # type: Dict[Type[Any], str] prefixes = {} # type: Dict[Type[Any], str]
@ -14,4 +14,4 @@ def short_url(entity):
base = '/' base = '/'
if hasattr(settings, 'SHORT_BASE_URL'): if hasattr(settings, 'SHORT_BASE_URL'):
base = settings.SHORT_BASE_URL base = settings.SHORT_BASE_URL
return base + prefixes[type(entity)] + AbcIdConverter().to_url(entity.id) return base + prefixes[type(entity)] + id_to_abc(entity.id)

View file

@ -1,7 +1,7 @@
from .. import convert from .. import convert
def test_to_python(): def test_abc_to_id():
samples = { samples = {
'A': 0, 'A': 0,
'B': 1, 'B': 1,
@ -12,9 +12,8 @@ def test_to_python():
'BA': 52, 'BA': 52,
'BAB': 2705, 'BAB': 2705,
} }
converter = convert.AbcIdConverter()
for abc, id in samples.items(): for abc, id in samples.items():
assert converter.to_python(abc) == id assert convert.abc_to_id(abc) == id
def test_id_to_abc(): def test_id_to_abc():
@ -27,6 +26,5 @@ def test_id_to_abc():
104: 'CA', 104: 'CA',
130: 'Ca', 130: 'Ca',
} }
converter = convert.AbcIdConverter()
for id, abc in samples.items(): for id, abc in samples.items():
assert converter.to_url(id) == abc assert convert.id_to_abc(id) == abc

View file

@ -1,13 +1,10 @@
from django.conf import settings from django.conf import settings
from django.urls import path, register_converter from django.urls import path
from .convert import AbcIdConverter
from .views import unshort from .views import unshort
register_converter(AbcIdConverter, 'abc_id')
app_name = 'lemonshort' app_name = 'lemonshort'
urlpatterns = tuple( urlpatterns = tuple(
path('{0!s}<abc_id:tiny>'.format(k), unshort, name=m, kwargs={'model': m}) path('{0!s}<tiny>'.format(k), unshort, name=m, kwargs={'model': m})
for k, m in settings.SHORTEN_MODELS.items() for k, m in settings.SHORTEN_MODELS.items()
) )

View file

@ -1,9 +1,9 @@
from django.apps import apps from django.apps import apps
from django.shortcuts import get_object_or_404, redirect from django.shortcuts import get_object_or_404, redirect
from .convert import AbcIdConverter from .convert import abc_to_id
def unshort(request, model, tiny): def unshort(request, model, tiny):
entity = get_object_or_404(apps.get_model(model), pk=tiny) entity = get_object_or_404(apps.get_model(model), pk=abc_to_id(tiny))
return redirect(entity, permanent=True) return redirect(entity, permanent=True)

View file

@ -0,0 +1 @@
default_app_config = 'micropub.apps.MicropubConfig'

View file

@ -1,6 +1,6 @@
{ {
"name": "lemoncurry", "name": "lemoncurry",
"version": "1.11.0", "version": "1.10.3",
"repository": "https://git.00dani.me/00dani/lemoncurry", "repository": "https://git.00dani.me/00dani/lemoncurry",
"license": "MIT", "license": "MIT",
"devDependencies": { "devDependencies": {

View file

@ -0,0 +1 @@
default_app_config = 'users.apps.UsersConfig'

View file

@ -0,0 +1 @@
default_app_config = 'webmention.apps.WebmentionConfig'

View file

@ -0,0 +1 @@
default_app_config = 'wellknowns.apps.WellKnownsConfig'