Remove math engines
This commit is contained in:
parent
3f53c62d4d
commit
1e7957a2cd
22 changed files with 67 additions and 81 deletions
|
@ -63,7 +63,6 @@ class ProfileAdmin(VersionAdmin):
|
|||
"timezone",
|
||||
"language",
|
||||
"ace_theme",
|
||||
"math_engine",
|
||||
"last_access",
|
||||
"ip",
|
||||
"mute",
|
||||
|
|
|
@ -8,7 +8,6 @@
|
|||
"ip": "10.0.2.2",
|
||||
"language": 1,
|
||||
"last_access": "2017-12-02T08:57:10.093Z",
|
||||
"math_engine": "auto",
|
||||
"mute": false,
|
||||
"organizations": [
|
||||
1
|
||||
|
|
|
@ -88,11 +88,6 @@ class ProfileForm(ModelForm):
|
|||
"css_background": forms.TextInput(),
|
||||
}
|
||||
|
||||
has_math_config = bool(settings.MATHOID_URL)
|
||||
if has_math_config:
|
||||
fields.append("math_engine")
|
||||
widgets["math_engine"] = Select2Widget(attrs={"style": "width:200px"})
|
||||
|
||||
if HeavyPreviewPageDownWidget is not None:
|
||||
widgets["about"] = HeavyPreviewPageDownWidget(
|
||||
preview=reverse_lazy("profile_preview"),
|
||||
|
|
|
@ -89,7 +89,6 @@ class Command(BaseCommand):
|
|||
if trans is None
|
||||
else trans.description,
|
||||
"url": "",
|
||||
"math_engine": maker.math_engine,
|
||||
}
|
||||
)
|
||||
.replace('"//', '"https://')
|
||||
|
|
50
judge/migrations/0181_remove_math_engine.py
Normal file
50
judge/migrations/0181_remove_math_engine.py
Normal file
|
@ -0,0 +1,50 @@
|
|||
# Generated by Django 3.2.18 on 2024-02-26 20:43
|
||||
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
("judge", "0180_course"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.RemoveField(
|
||||
model_name="profile",
|
||||
name="math_engine",
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name="course",
|
||||
name="about",
|
||||
field=models.TextField(verbose_name="course description"),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name="courselesson",
|
||||
name="course",
|
||||
field=models.ForeignKey(
|
||||
on_delete=django.db.models.deletion.CASCADE,
|
||||
related_name="lessons",
|
||||
to="judge.course",
|
||||
verbose_name="course",
|
||||
),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name="courselesson",
|
||||
name="problems",
|
||||
field=models.ManyToManyField(
|
||||
blank=True, to="judge.Problem", verbose_name="problem"
|
||||
),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name="courserole",
|
||||
name="user",
|
||||
field=models.ForeignKey(
|
||||
on_delete=django.db.models.deletion.CASCADE,
|
||||
related_name="course_roles",
|
||||
to="judge.profile",
|
||||
verbose_name="user",
|
||||
),
|
||||
),
|
||||
]
|
|
@ -2,8 +2,6 @@ from reversion import revisions
|
|||
|
||||
from judge.models.choices import (
|
||||
ACE_THEMES,
|
||||
EFFECTIVE_MATH_ENGINES,
|
||||
MATH_ENGINES_CHOICES,
|
||||
TIMEZONE,
|
||||
)
|
||||
from judge.models.comment import Comment, CommentLock, CommentVote
|
||||
|
|
|
@ -54,13 +54,3 @@ ACE_THEMES = (
|
|||
("vibrant_ink", "Vibrant Ink"),
|
||||
("xcode", "XCode"),
|
||||
)
|
||||
|
||||
MATH_ENGINES_CHOICES = (
|
||||
("tex", _("Leave as LaTeX")),
|
||||
("svg", _("SVG with PNG fallback")),
|
||||
("mml", _("MathML only")),
|
||||
("jax", _("MathJax with SVG/PNG fallback")),
|
||||
("auto", _("Detect best quality")),
|
||||
)
|
||||
|
||||
EFFECTIVE_MATH_ENGINES = ("svg", "mml", "tex", "jax")
|
||||
|
|
|
@ -17,7 +17,7 @@ from django.db.models.signals import post_save, pre_save
|
|||
from fernet_fields import EncryptedCharField
|
||||
from sortedm2m.fields import SortedManyToManyField
|
||||
|
||||
from judge.models.choices import ACE_THEMES, MATH_ENGINES_CHOICES, TIMEZONE
|
||||
from judge.models.choices import ACE_THEMES, TIMEZONE
|
||||
from judge.models.runtime import Language
|
||||
from judge.ratings import rating_class
|
||||
from judge.caching import cache_wrapper
|
||||
|
@ -215,13 +215,6 @@ class Profile(models.Model):
|
|||
related_name="+",
|
||||
on_delete=models.SET_NULL,
|
||||
)
|
||||
math_engine = models.CharField(
|
||||
verbose_name=_("math engine"),
|
||||
choices=MATH_ENGINES_CHOICES,
|
||||
max_length=4,
|
||||
default=settings.MATHOID_DEFAULT_TYPE,
|
||||
help_text=_("the rendering engine used to render math"),
|
||||
)
|
||||
is_totp_enabled = models.BooleanField(
|
||||
verbose_name=_("2FA enabled"),
|
||||
default=False,
|
||||
|
|
|
@ -14,7 +14,6 @@ from .models import (
|
|||
Comment,
|
||||
Contest,
|
||||
ContestSubmission,
|
||||
EFFECTIVE_MATH_ENGINES,
|
||||
Judge,
|
||||
Language,
|
||||
License,
|
||||
|
@ -52,9 +51,8 @@ def problem_update(sender, instance, **kwargs):
|
|||
)
|
||||
cache.delete_many(
|
||||
[
|
||||
make_template_fragment_key("problem_html", (instance.id, engine, lang))
|
||||
make_template_fragment_key("problem_html", (instance.id, lang))
|
||||
for lang, _ in settings.LANGUAGES
|
||||
for engine in EFFECTIVE_MATH_ENGINES
|
||||
]
|
||||
)
|
||||
cache.delete_many(
|
||||
|
@ -80,10 +78,7 @@ def profile_update(sender, instance, **kwargs):
|
|||
return
|
||||
|
||||
cache.delete_many(
|
||||
[
|
||||
make_template_fragment_key("user_about", (instance.id, engine))
|
||||
for engine in EFFECTIVE_MATH_ENGINES
|
||||
]
|
||||
[make_template_fragment_key("user_about", (instance.id))]
|
||||
+ [
|
||||
make_template_fragment_key("org_member_count", (org_id,))
|
||||
for org_id in instance.organizations.values_list("id", flat=True)
|
||||
|
@ -98,10 +93,7 @@ def contest_update(sender, instance, **kwargs):
|
|||
|
||||
cache.delete_many(
|
||||
["generated-meta-contest:%d" % instance.id]
|
||||
+ [
|
||||
make_template_fragment_key("contest_html", (instance.id, engine))
|
||||
for engine in EFFECTIVE_MATH_ENGINES
|
||||
]
|
||||
+ [make_template_fragment_key("contest_html", (instance.id))]
|
||||
)
|
||||
|
||||
|
||||
|
@ -136,12 +128,7 @@ def post_update(sender, instance, **kwargs):
|
|||
"blog_feed:%d" % instance.id,
|
||||
]
|
||||
)
|
||||
cache.delete_many(
|
||||
[
|
||||
make_template_fragment_key("post_content", (instance.id, engine))
|
||||
for engine in EFFECTIVE_MATH_ENGINES
|
||||
]
|
||||
)
|
||||
cache.delete_many([make_template_fragment_key("post_content", (instance.id))])
|
||||
|
||||
|
||||
@receiver(post_delete, sender=Submission)
|
||||
|
@ -158,12 +145,7 @@ def contest_submission_delete(sender, instance, **kwargs):
|
|||
|
||||
@receiver(post_save, sender=Organization)
|
||||
def organization_update(sender, instance, **kwargs):
|
||||
cache.delete_many(
|
||||
[
|
||||
make_template_fragment_key("organization_html", (instance.id, engine))
|
||||
for engine in EFFECTIVE_MATH_ENGINES
|
||||
]
|
||||
)
|
||||
cache.delete_many([make_template_fragment_key("organization_html", (instance.id))])
|
||||
|
||||
|
||||
_misc_config_i18n = [code for code, _ in settings.LANGUAGES]
|
||||
|
|
|
@ -118,13 +118,3 @@ def site_name(request):
|
|||
"SITE_LONG_NAME": settings.SITE_LONG_NAME,
|
||||
"SITE_ADMIN_EMAIL": settings.SITE_ADMIN_EMAIL,
|
||||
}
|
||||
|
||||
|
||||
def math_setting(request):
|
||||
if request.user.is_authenticated:
|
||||
engine = request.profile.math_engine
|
||||
else:
|
||||
engine = settings.MATHOID_DEFAULT_TYPE
|
||||
if engine == "auto":
|
||||
engine = "jax"
|
||||
return {"MATH_ENGINE": engine, "REQUIRE_JAX": engine == "jax"}
|
||||
|
|
|
@ -399,7 +399,6 @@ class ProblemPdfView(ProblemMixin, SingleObjectMixin, View):
|
|||
if trans is None
|
||||
else trans.description,
|
||||
"url": request.build_absolute_uri(),
|
||||
"math_engine": maker.math_engine,
|
||||
}
|
||||
)
|
||||
.replace('"//', '"https://')
|
||||
|
|
|
@ -430,7 +430,6 @@ def edit_profile(request):
|
|||
"form": form,
|
||||
"title": _("Edit profile"),
|
||||
"profile": profile,
|
||||
"has_math_config": bool(settings.MATHOID_URL),
|
||||
"TIMEZONE_MAP": tzmap or "http://momentjs.com/static/img/world.png",
|
||||
"TIMEZONE_BG": settings.TIMEZONE_BG if tzmap else "#4E7CAD",
|
||||
},
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue