fnschool 20251021.80058.842__py3-none-any.whl → 20251027.81653.841__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of fnschool might be problematic. Click here for more details.
- fnschoo1/__init__.py +1 -1
- fnschoo1/canteen/forms.py +2 -2
- fnschoo1/canteen/migrations/0019_category_updated_at_ingredient_created_at_and_more.py +48 -0
- fnschoo1/canteen/migrations/0020_alter_ingredient_created_at.py +20 -0
- fnschoo1/canteen/models.py +23 -3
- fnschoo1/canteen/templates/canteen/category/list.html +1 -1
- fnschoo1/canteen/templates/canteen/consumption/create.html +6 -1
- fnschoo1/canteen/templates/canteen/ingredient/list.html +11 -2
- fnschoo1/canteen/templates/canteen/meal_type/list.html +1 -1
- fnschoo1/fnprofile/__init__.py +0 -0
- fnschoo1/fnprofile/admin.py +27 -0
- fnschoo1/fnprofile/apps.py +12 -0
- fnschoo1/fnprofile/forms.py +73 -0
- fnschoo1/fnprofile/migrations/0001_initial.py +213 -0
- fnschoo1/fnprofile/migrations/0002_auto_20251026_2235.py +42 -0
- fnschoo1/fnprofile/migrations/0003_alter_fnuser_options.py +20 -0
- fnschoo1/fnprofile/migrations/__init__.py +0 -0
- fnschoo1/fnprofile/models.py +90 -0
- fnschoo1/fnprofile/signals.py +20 -0
- fnschoo1/fnprofile/templates/fnprofile/create.html +18 -0
- fnschoo1/fnprofile/templates/fnprofile/detail.html +16 -0
- fnschoo1/fnprofile/templates/fnprofile/edit.html +16 -0
- fnschoo1/fnprofile/templates/fnprofile/log_in.html +22 -0
- fnschoo1/fnprofile/templates/fnprofile/log_out.html +12 -0
- fnschoo1/fnprofile/tests.py +3 -0
- fnschoo1/fnprofile/urls.py +15 -0
- fnschoo1/fnprofile/views.py +69 -0
- fnschoo1/fnschool/settings.py +4 -2
- fnschoo1/fnschool/settings_fn_profile_migration_0001.py +180 -0
- fnschoo1/fnschool/urls.py +7 -2
- fnschoo1/locale/zh_Hans/LC_MESSAGES/django.mo +0 -0
- fnschoo1/profiles/__init__.py +7 -0
- fnschoo1/profiles/forms.py +6 -0
- fnschoo1/profiles/migrations/0006_profile_created_at_profile_updated_at.py +27 -0
- fnschoo1/profiles/migrations/0007_alter_profile_created_at.py +20 -0
- fnschoo1/profiles/migrations/0008_alter_profile_groups_alter_profile_user_permissions.py +38 -0
- fnschoo1/profiles/models.py +32 -2
- fnschoo1/profiles/templates/profiles/create.html +1 -1
- fnschoo1/profiles/templates/profiles/detail.html +1 -1
- fnschoo1/profiles/templates/profiles/edit.html +4 -2
- fnschoo1/profiles/templates/profiles/log_in.html +1 -1
- fnschoo1/profiles/templates/profiles/log_out.html +1 -1
- fnschoo1/profiles/views.py +7 -1
- fnschoo1/static/css/fnschool.css +14 -0
- fnschoo1/static/js/fnschool.js +20 -0
- fnschoo1/templates/home.html +1 -1
- fnschoo1/templates/includes/_header.html +30 -6
- {fnschool-20251021.80058.842.dist-info → fnschool-20251027.81653.841.dist-info}/METADATA +1 -1
- {fnschool-20251021.80058.842.dist-info → fnschool-20251027.81653.841.dist-info}/RECORD +59 -35
- /fnschoo1/templates/base/{header_content_footer.html → document.html} +0 -0
- {fnschool-20251021.80058.842.dist-info → fnschool-20251027.81653.841.dist-info}/SOURCES.txt.py +0 -0
- {fnschool-20251021.80058.842.dist-info → fnschool-20251027.81653.841.dist-info}/WHEEL +0 -0
- {fnschool-20251021.80058.842.dist-info → fnschool-20251027.81653.841.dist-info}/dependency_links.txt.py +0 -0
- {fnschool-20251021.80058.842.dist-info → fnschool-20251027.81653.841.dist-info}/entry_points.txt +0 -0
- {fnschool-20251021.80058.842.dist-info → fnschool-20251027.81653.841.dist-info}/entry_points.txt.py +0 -0
- {fnschool-20251021.80058.842.dist-info → fnschool-20251027.81653.841.dist-info}/licenses/LICENSE +0 -0
- {fnschool-20251021.80058.842.dist-info → fnschool-20251027.81653.841.dist-info}/requires.txt.py +0 -0
- {fnschool-20251021.80058.842.dist-info → fnschool-20251027.81653.841.dist-info}/top_level.txt +0 -0
- {fnschool-20251021.80058.842.dist-info → fnschool-20251027.81653.841.dist-info}/top_level.txt.py +0 -0
fnschoo1/profiles/models.py
CHANGED
|
@@ -1,4 +1,10 @@
|
|
|
1
|
-
from django.contrib.auth.models import
|
|
1
|
+
from django.contrib.auth.models import (
|
|
2
|
+
AbstractBaseUser,
|
|
3
|
+
AbstractUser,
|
|
4
|
+
BaseUserManager,
|
|
5
|
+
PermissionsMixin,
|
|
6
|
+
User,
|
|
7
|
+
)
|
|
2
8
|
from django.db import models
|
|
3
9
|
from django.db.models.signals import post_save
|
|
4
10
|
from django.dispatch import receiver
|
|
@@ -14,7 +20,23 @@ class Gender(models.TextChoices):
|
|
|
14
20
|
UNKNOWN = "U", "--"
|
|
15
21
|
|
|
16
22
|
|
|
17
|
-
class Profile(AbstractUser):
|
|
23
|
+
class Profile(AbstractUser, PermissionsMixin):
|
|
24
|
+
groups = models.ManyToManyField(
|
|
25
|
+
"auth.Group",
|
|
26
|
+
verbose_name="groups",
|
|
27
|
+
blank=True,
|
|
28
|
+
help_text=_("The groups this user belongs to."),
|
|
29
|
+
related_name="profile_groups",
|
|
30
|
+
related_query_name="profile",
|
|
31
|
+
)
|
|
32
|
+
user_permissions = models.ManyToManyField(
|
|
33
|
+
"auth.Permission",
|
|
34
|
+
verbose_name="user permissions",
|
|
35
|
+
blank=True,
|
|
36
|
+
help_text=_("Specific permissions for this user."),
|
|
37
|
+
related_name="profile_permissions",
|
|
38
|
+
related_query_name="profile",
|
|
39
|
+
)
|
|
18
40
|
phone = models.CharField(
|
|
19
41
|
max_length=15, blank=True, null=True, verbose_name=_("Phone Number")
|
|
20
42
|
)
|
|
@@ -49,6 +71,14 @@ class Profile(AbstractUser):
|
|
|
49
71
|
max_length=512, blank=True, verbose_name=_("Biography")
|
|
50
72
|
)
|
|
51
73
|
|
|
74
|
+
created_at = models.DateTimeField(
|
|
75
|
+
null=True, auto_now_add=True, verbose_name=_("Time of creating")
|
|
76
|
+
)
|
|
77
|
+
|
|
78
|
+
updated_at = models.DateTimeField(
|
|
79
|
+
null=True, auto_now=True, verbose_name=_("Time of updating")
|
|
80
|
+
)
|
|
81
|
+
|
|
52
82
|
class Meta:
|
|
53
83
|
verbose_name = _("User Profile")
|
|
54
84
|
verbose_name_plural = _("User Profiles")
|
|
@@ -1,11 +1,13 @@
|
|
|
1
|
-
{% extends "base/
|
|
1
|
+
{% extends "base/document.html" %}
|
|
2
2
|
{% load crispy_forms_tags %}
|
|
3
3
|
{% block title %}
|
|
4
4
|
{% trans "Update Profile" %}
|
|
5
5
|
{% endblock %}
|
|
6
6
|
{% block content %}
|
|
7
7
|
<h2>{% trans "Update Profile." %}</h2>
|
|
8
|
-
<form method="post"
|
|
8
|
+
<form method="post"
|
|
9
|
+
action="{% url 'profiles:update' %}"
|
|
10
|
+
enctype="multipart/form-data">
|
|
9
11
|
{% csrf_token %} {{ form|crispy }}
|
|
10
12
|
<button type="submit button" class="btn btn-outline-primary">
|
|
11
13
|
{% trans "Update" %}
|
fnschoo1/profiles/views.py
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
|
+
from django.contrib import messages
|
|
1
2
|
from django.contrib.auth import authenticate, login, logout
|
|
2
3
|
from django.contrib.auth.decorators import login_required
|
|
3
4
|
from django.shortcuts import redirect, render
|
|
4
5
|
from django.urls import reverse_lazy
|
|
5
6
|
from django.views.generic import CreateView
|
|
7
|
+
from fnschool import _, count_chinese_characters
|
|
6
8
|
from fnschool.settings import LOGIN_URL
|
|
7
9
|
|
|
8
10
|
from .forms import ProfileForm, ProfileLoginForm
|
|
@@ -51,9 +53,13 @@ def profile_log_out(request):
|
|
|
51
53
|
@login_required
|
|
52
54
|
def profile_edit(request):
|
|
53
55
|
if request.method == "POST":
|
|
54
|
-
form = ProfileForm(request.POST, instance=request.user)
|
|
56
|
+
form = ProfileForm(request.POST, request.FILES, instance=request.user)
|
|
57
|
+
print(request.FILES)
|
|
55
58
|
if form.is_valid():
|
|
56
59
|
form.save()
|
|
60
|
+
messages.success(
|
|
61
|
+
request, _("Profile has been updated successfully!")
|
|
62
|
+
)
|
|
57
63
|
return redirect("home")
|
|
58
64
|
else:
|
|
59
65
|
form = ProfileForm(instance=request.user)
|
fnschoo1/static/css/fnschool.css
CHANGED
|
@@ -2,6 +2,20 @@
|
|
|
2
2
|
color: #00adff;
|
|
3
3
|
}
|
|
4
4
|
|
|
5
|
+
.avatar-img {
|
|
6
|
+
width: 60px;
|
|
7
|
+
height: 60px;
|
|
8
|
+
border-radius: 50%;
|
|
9
|
+
position: fixed;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
.avatar-img:hover {
|
|
13
|
+
transform: scale(1.1);
|
|
14
|
+
}
|
|
15
|
+
.avatar-nav-link {
|
|
16
|
+
width: 32px;
|
|
17
|
+
}
|
|
18
|
+
|
|
5
19
|
main {
|
|
6
20
|
padding-top: 60px;
|
|
7
21
|
padding-bottom: 120px;
|
fnschoo1/static/js/fnschool.js
CHANGED
|
@@ -1,3 +1,23 @@
|
|
|
1
|
+
$(document).ready(function () {
|
|
2
|
+
var messages = $('.messages')
|
|
3
|
+
if (messages.length) {
|
|
4
|
+
messages.css({
|
|
5
|
+
position: 'absolute',
|
|
6
|
+
top: $('.navbar').height(),
|
|
7
|
+
width: '100%',
|
|
8
|
+
})
|
|
9
|
+
setTimeout(function () {
|
|
10
|
+
messages.hide()
|
|
11
|
+
}, 25000)
|
|
12
|
+
}
|
|
13
|
+
var close_btn = $('.btn-close')
|
|
14
|
+
if (close_btn.length) {
|
|
15
|
+
close_btn.on('click', function () {
|
|
16
|
+
close_btn.closest('.alert').hide()
|
|
17
|
+
})
|
|
18
|
+
}
|
|
19
|
+
})
|
|
20
|
+
|
|
1
21
|
function make_highlight(query, time_data) {
|
|
2
22
|
var highlight_elements = $(query)
|
|
3
23
|
var highlight_elements_toggled = []
|
fnschoo1/templates/home.html
CHANGED
|
@@ -55,23 +55,47 @@
|
|
|
55
55
|
<a class="nav-link" href="#">{% trans "About" %}</a>
|
|
56
56
|
</li>
|
|
57
57
|
</ul>
|
|
58
|
-
<div class="d-flex">
|
|
58
|
+
<div class="d-flex ">
|
|
59
59
|
{% if request.user.is_authenticated %}
|
|
60
60
|
<ul class="nav-item">
|
|
61
|
-
|
|
61
|
+
{% if request.user.avatar %}
|
|
62
|
+
<a class="nav-link avatar-nav-link"
|
|
63
|
+
href="{% url 'fnprofile:update' %}"
|
|
64
|
+
title="{{ request.user.username }}">
|
|
65
|
+
<img src="{{ request.user.avatar.url }}"
|
|
66
|
+
alt="{{ request.user.username }}"
|
|
67
|
+
class="avatar-img">
|
|
68
|
+
</a>
|
|
69
|
+
{% else %}
|
|
70
|
+
<a class="nav-link "
|
|
71
|
+
href="{% url 'fnprofile:update' %}"
|
|
72
|
+
title="{{ request.user.username }}">
|
|
73
|
+
{{ request.user.username }}
|
|
74
|
+
</a>
|
|
75
|
+
{% endif %}
|
|
62
76
|
</ul>
|
|
63
|
-
<ul class="nav-item">
|
|
64
|
-
<a class="nav-link" href="{% url '
|
|
77
|
+
<ul class="nav-item ">
|
|
78
|
+
<a class="nav-link" href="{% url 'fnprofile:log_out' %}">{% trans "Log out" %}</a>
|
|
65
79
|
</ul>
|
|
66
80
|
{% else %}
|
|
67
81
|
<ul class="nav-item">
|
|
68
|
-
<a class="nav-link" href="{% url '
|
|
82
|
+
<a class="nav-link" href="{% url 'fnprofile:log_in' %}">{% trans "Login" %}</a>
|
|
69
83
|
</ul>
|
|
70
84
|
<ul class="nav-item">
|
|
71
|
-
<a class="nav-link" href="{% url '
|
|
85
|
+
<a class="nav-link" href="{% url 'fnprofile:create' %}">{% trans "Sign Up" %}</a>
|
|
72
86
|
</ul>
|
|
73
87
|
{% endif %}
|
|
74
88
|
</div>
|
|
75
89
|
</div>
|
|
76
90
|
</div>
|
|
77
91
|
</nav>
|
|
92
|
+
{% if messages %}
|
|
93
|
+
<div class="messages">
|
|
94
|
+
{% for message in messages %}
|
|
95
|
+
<div class="alert alert-{{ message.tags }}">
|
|
96
|
+
{{ message }}
|
|
97
|
+
<span class="btn-close mx-2" title="{% trans "Hide messages." %}"></span>
|
|
98
|
+
</div>
|
|
99
|
+
{% endfor %}
|
|
100
|
+
</div>
|
|
101
|
+
{% endif %}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: fnschool
|
|
3
|
-
Version:
|
|
3
|
+
Version: 20251027.81653.841
|
|
4
4
|
Summary: Just some school related scripts, without any ambition.
|
|
5
5
|
Author-email: larryw3i <larryw3i@163.com>, Larry Wei <larryw3i@126.com>, Larry W3i <larryw3i@yeah.net>
|
|
6
6
|
Maintainer-email: larryw3i <larryw3i@163.com>, Larry Wei <larryw3i@126.com>
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
fnschoo1/__init__.py,sha256=
|
|
1
|
+
fnschoo1/__init__.py,sha256=okBXJVxN7zEzkLb9Nrc-s1XXTG5nj62Bhpl_QJL_usQ,197
|
|
2
2
|
fnschoo1/manage.py,sha256=VZIol9q_Dhg81_KJ9Jfq-L5O8ubQelShkA-cZVJ1S6E,1539
|
|
3
3
|
fnschoo1/canteen/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
4
4
|
fnschoo1/canteen/admin.py,sha256=suMo4x8I3JBxAFBVIdE-5qnqZ6JAZV0FESABHOSc-vg,63
|
|
5
5
|
fnschoo1/canteen/apps.py,sha256=zUjM0ZJwHW4i72vOm87QewRlvFQORQo5yb053u4YIGs,146
|
|
6
|
-
fnschoo1/canteen/forms.py,sha256=
|
|
7
|
-
fnschoo1/canteen/models.py,sha256=
|
|
6
|
+
fnschoo1/canteen/forms.py,sha256=QtI91rbfD_4-fih4zRDK6ude6DgfT9Ye4TBUnMXJtQM,2609
|
|
7
|
+
fnschoo1/canteen/models.py,sha256=tapzO2qOenL3H1OaTPoCaJ6OrCERSfEBVv1igUbO2KA,6830
|
|
8
8
|
fnschoo1/canteen/tests.py,sha256=mrbGGRNg5jwbTJtWWa7zSKdDyeB4vmgZCRc2nk6VY-g,60
|
|
9
9
|
fnschoo1/canteen/urls.py,sha256=4GtrqC9L59c8zopfjRgqhbcvA5iPnGcAUVuM6CrKWpk,2797
|
|
10
10
|
fnschoo1/canteen/views.py,sha256=4YYacxxa_regc56TqRQ_Bb-_wX3zuFIKyhGGp4QPh7M,28983
|
|
@@ -26,87 +26,111 @@ fnschoo1/canteen/migrations/0015_alter_category_options_alter_category_priority.
|
|
|
26
26
|
fnschoo1/canteen/migrations/0016_consumption_unique_ingredient_date_of_using.py,sha256=kiNr4ISVoy99U7LuJMItJYtNyE4BPYR_jSdnKoXxWt4,520
|
|
27
27
|
fnschoo1/canteen/migrations/0017_ingredient_updated_at_alter_category_created_at_and_more.py,sha256=fvbJV9uf8lUrqASwPO2EsyW3ApXkFk4zBE1vlT2UV0o,872
|
|
28
28
|
fnschoo1/canteen/migrations/0018_alter_ingredient_updated_at.py,sha256=yzqmn9dORTvIbcmjOhtyon1eifY0pjExkRMD5UDgzBE,542
|
|
29
|
+
fnschoo1/canteen/migrations/0019_category_updated_at_ingredient_created_at_and_more.py,sha256=KHtlgxwVWPnrAq_KkOrPghI_rLB-F6Re6ho8BIAWss4,1420
|
|
30
|
+
fnschoo1/canteen/migrations/0020_alter_ingredient_created_at.py,sha256=yweF6XGnPzXL0X3zW6izwlU_Vo0WmpWCeCycX0QXBR8,505
|
|
29
31
|
fnschoo1/canteen/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
30
32
|
fnschoo1/canteen/templates/canteen/close.html,sha256=pLYeJmGaOEJKMUJdZmYzz_n--l28IRDQ4fXvetP_Vsc,200
|
|
31
33
|
fnschoo1/canteen/templates/canteen/category/create.html,sha256=T33zbHRYUrWlLYSLAYZ14Y03Gw2tGMoYzBWUVv-I8pk,609
|
|
32
34
|
fnschoo1/canteen/templates/canteen/category/delete.html,sha256=iPmGAB2r8K9DqBTp9T3ilOwsIfXWITlu-XcuJRLdeFM,1818
|
|
33
|
-
fnschoo1/canteen/templates/canteen/category/list.html,sha256=
|
|
35
|
+
fnschoo1/canteen/templates/canteen/category/list.html,sha256=OnK9IIJyKx_r65gnTj3Sj3ECtpIXevUTA5FeCEvTQpw,2135
|
|
34
36
|
fnschoo1/canteen/templates/canteen/category/update.html,sha256=UnCI95eqsQXfdUMdJXWUf1qNVWM9ZgsP03ayZ_Nrak8,831
|
|
35
37
|
fnschoo1/canteen/templates/canteen/consumption/_create.html,sha256=tXlJcd566D9sYbsnj5KN-m0lyobT2AwwYt9oxUHbn4M,1026
|
|
36
|
-
fnschoo1/canteen/templates/canteen/consumption/create.html,sha256=
|
|
38
|
+
fnschoo1/canteen/templates/canteen/consumption/create.html,sha256=CfIMsERuDx6FAiTUZKs-H71q3c9ymRFuHRGEPun1-MI,16925
|
|
37
39
|
fnschoo1/canteen/templates/canteen/ingredient/close.html,sha256=pLYeJmGaOEJKMUJdZmYzz_n--l28IRDQ4fXvetP_Vsc,200
|
|
38
40
|
fnschoo1/canteen/templates/canteen/ingredient/create.html,sha256=i4ajPDpXBTUp08lIiwn0wZoNEohyXlX3G64zG1lmIcs,839
|
|
39
41
|
fnschoo1/canteen/templates/canteen/ingredient/create_one.html,sha256=y9EAKXmyIrlp5-DxHd86l1rMtB16KuOjPMbPiLAN_ag,615
|
|
40
42
|
fnschoo1/canteen/templates/canteen/ingredient/delete.html,sha256=npUtDGV7KK2jvc2AkiNlK6F2wUsKwLB5DQuBULm1pW8,1227
|
|
41
|
-
fnschoo1/canteen/templates/canteen/ingredient/list.html,sha256=
|
|
43
|
+
fnschoo1/canteen/templates/canteen/ingredient/list.html,sha256=7hUO0vK7-1Y_JmXsFW_RC-3vRFwdB7Ak_Pz7xe393WI,6057
|
|
42
44
|
fnschoo1/canteen/templates/canteen/ingredient/update.html,sha256=JwW8dVQ1fzvxjA32RvRSSqrYzPPaajObvy7D45gz5pc,835
|
|
43
45
|
fnschoo1/canteen/templates/canteen/meal_type/create.html,sha256=OIxOcAa3Pp3OPT-Z0PRLINfZ08CO61ulNDU-YJA6EKI,612
|
|
44
46
|
fnschoo1/canteen/templates/canteen/meal_type/delete.html,sha256=i9PBX3ShXU4Az62MEawAuDWM5jwOmKByywizhdvuSTI,1567
|
|
45
|
-
fnschoo1/canteen/templates/canteen/meal_type/list.html,sha256=
|
|
47
|
+
fnschoo1/canteen/templates/canteen/meal_type/list.html,sha256=RQ2HgB1BLL1Zc_l_ieVjLwfcBQm-qLVsQaBtRqrlBr0,1894
|
|
46
48
|
fnschoo1/canteen/templates/canteen/meal_type/update.html,sha256=vqqyuC1m2CnPd3KrcjA8t4hbJslT001s4XvcYpkQmO0,834
|
|
47
49
|
fnschoo1/canteen/workbook/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
|
48
50
|
fnschoo1/canteen/workbook/generate.py,sha256=wmqt5eFxmZRZdasMTsuc1AbntwOpUN4uVOtjfpM2j1k,109350
|
|
51
|
+
fnschoo1/fnprofile/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
52
|
+
fnschoo1/fnprofile/admin.py,sha256=DdBM3Haggw2GwO2rxcQ16KT-QnTun8tQ8W0iELhQv2w,519
|
|
53
|
+
fnschoo1/fnprofile/apps.py,sha256=cHx1hkuyEWo3ENyeWn8bdSNcvsir-dp__hl_ZjuNU0I,218
|
|
54
|
+
fnschoo1/fnprofile/forms.py,sha256=jJVfqFcSO1Pk9f7xsLH9-6Xwmoa-4j5-2QyfUhas_Ic,2059
|
|
55
|
+
fnschoo1/fnprofile/models.py,sha256=IQO32PqmLle3XNSs4efA0pzhSBcY7yBvVFWol9C7nm8,2476
|
|
56
|
+
fnschoo1/fnprofile/signals.py,sha256=n6PR2VdFNHUidD_k6S2xG2RHQjiguIAeK1foLRMhtbM,492
|
|
57
|
+
fnschoo1/fnprofile/tests.py,sha256=mrbGGRNg5jwbTJtWWa7zSKdDyeB4vmgZCRc2nk6VY-g,60
|
|
58
|
+
fnschoo1/fnprofile/urls.py,sha256=1vDGl43a5A1EGtpuUaqMbdAW8oa0fvx8RRVBw9Akxog,437
|
|
59
|
+
fnschoo1/fnprofile/views.py,sha256=3XOa5jwSqaTh_H8IEbg8GAxC3vp-0PY10tgFJX7DvU4,2206
|
|
60
|
+
fnschoo1/fnprofile/migrations/0001_initial.py,sha256=guAfLpQG4pGXXQHTqaEI8EMUiuCjsuheiHn-dV8iDtY,7484
|
|
61
|
+
fnschoo1/fnprofile/migrations/0002_auto_20251026_2235.py,sha256=kv0fO28-5NQx8nFSp39pTOm2zd5kKy8gIXisOzTrGwo,1239
|
|
62
|
+
fnschoo1/fnprofile/migrations/0003_alter_fnuser_options.py,sha256=TpzLYSCGMnWl1iU4LqiP0xrSHhc6epy-DfBWad1T1-I,452
|
|
63
|
+
fnschoo1/fnprofile/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
64
|
+
fnschoo1/fnprofile/templates/fnprofile/create.html,sha256=CO2zKX5Jqh2GXAyfF7AR0rzytYdczkbF6oO2ZoZG1Lo,546
|
|
65
|
+
fnschoo1/fnprofile/templates/fnprofile/detail.html,sha256=F0_Tv0X890kIdlgUZNT4pB3NiR9vyd_mhERxTjCUelc,595
|
|
66
|
+
fnschoo1/fnprofile/templates/fnprofile/edit.html,sha256=2QWupdI3dvPUUgBbx_umxpgPTT86-hFaqidoWHmmAQA,467
|
|
67
|
+
fnschoo1/fnprofile/templates/fnprofile/log_in.html,sha256=NhtmyuPQDlQM-IC6hnf-_sIknF5C5rrRnrwXbH0G4d4,725
|
|
68
|
+
fnschoo1/fnprofile/templates/fnprofile/log_out.html,sha256=siA56sam_0XEanX40H7Oa8dJZ2PaNi9Lbif_0Zq09Xo,317
|
|
49
69
|
fnschoo1/fnschool/__init__.py,sha256=TmHhzykpKNMoMf6eD-EKvbvmnlzs1XGHtvD55ae1sXs,287
|
|
50
70
|
fnschoo1/fnschool/_settings.py,sha256=ajz1GSNU9xYVrFEDSz6Xwg7amWQ_yvW75tQa1ZvRIWc,3
|
|
51
71
|
fnschoo1/fnschool/asgi.py,sha256=kzkqosS10uBlyBX53EXcsATcvEZmac6nsPzyOHCuucE,393
|
|
52
|
-
fnschoo1/fnschool/settings.py,sha256=
|
|
53
|
-
fnschoo1/fnschool/
|
|
72
|
+
fnschoo1/fnschool/settings.py,sha256=2eHR5jTq8QjK7mjfPnfESm7WXb-3vpHuwSjYeNhX-u8,4709
|
|
73
|
+
fnschoo1/fnschool/settings_fn_profile_migration_0001.py,sha256=zQKGekBTRn2fDL7OBAC3mdLUrkXxybRcjJE2t1FmxCI,4708
|
|
74
|
+
fnschoo1/fnschool/urls.py,sha256=5eqHzKZLzhVt3SXpSD7aNSZ4HT-B_9nLaT83-X_aJNo,1261
|
|
54
75
|
fnschoo1/fnschool/views.py,sha256=MfujMhFkRLxT-saID1xTU16v0khzIl6ceDl7_JgrgFs,152
|
|
55
76
|
fnschoo1/fnschool/wsgi.py,sha256=dQq4S0vZWCz8w5R9KooJeLYTVFXvEgJRYe7NFZwVxU8,393
|
|
56
77
|
fnschoo1/fnschool/templatetags/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
|
57
78
|
fnschoo1/fnschool/templatetags/fnschool_tags.py,sha256=l5Zov4VlQKpz-69SFftP4kXyMymz-a0D5F_ss_eiFc4,568
|
|
58
79
|
fnschoo1/locale/en/LC_MESSAGES/django.mo,sha256=M8AB6fmjwlEd761iFlasNWdiEYfE-2nIwBoioGtEVUo,404
|
|
59
|
-
fnschoo1/locale/zh_Hans/LC_MESSAGES/django.mo,sha256=
|
|
60
|
-
fnschoo1/profiles/__init__.py,sha256=
|
|
80
|
+
fnschoo1/locale/zh_Hans/LC_MESSAGES/django.mo,sha256=avjNs-L9jVhH8JiFsgsPmyHvjIvnyc6wtb_BfXasQBs,23277
|
|
81
|
+
fnschoo1/profiles/__init__.py,sha256=RvsEo5qK27vkdZjPQFM5LFsIo9IH7PzkbNU6DQjrYpw,178
|
|
61
82
|
fnschoo1/profiles/admin.py,sha256=93UCvdODI63KzCDfFFnKmfvCMGCp6FCG9WErE91i79Y,522
|
|
62
83
|
fnschoo1/profiles/apps.py,sha256=WDu6eceFnDkBFMqquAolMZMo7XPb0ah6l2q2AruTrl4,215
|
|
63
|
-
fnschoo1/profiles/forms.py,sha256=
|
|
64
|
-
fnschoo1/profiles/models.py,sha256=
|
|
84
|
+
fnschoo1/profiles/forms.py,sha256=ilTUlBySQgszWpUA9ioFQUr09uXZIuKTde_e_K57Ll8,2063
|
|
85
|
+
fnschoo1/profiles/models.py,sha256=dSl0DA8ZlTJM3kiJcxpg-vKXWGXFjRAlK6aYPIj9l8M,2466
|
|
65
86
|
fnschoo1/profiles/signals.py,sha256=u5cv6xoZ7PUrKoD6ZOVWLLKg_93w_FCgWIiC4DxJADA,486
|
|
66
87
|
fnschoo1/profiles/tests.py,sha256=mrbGGRNg5jwbTJtWWa7zSKdDyeB4vmgZCRc2nk6VY-g,60
|
|
67
88
|
fnschoo1/profiles/urls.py,sha256=IOQ6GaPdOB4E0J-plfqIFHkabXZwOJKyFCKS7m9uKMY,426
|
|
68
|
-
fnschoo1/profiles/views.py,sha256=
|
|
89
|
+
fnschoo1/profiles/views.py,sha256=9SUJx_CL7XIQcHMiRap6XkqaFOFlDc6Pk4tZ5_FRDNw,2204
|
|
69
90
|
fnschoo1/profiles/migrations/0001_initial.py,sha256=zZ7l2DxJHf7YpLBBX3ztUfCmdoRNz1O5oSrdbBOdPjI,6776
|
|
70
91
|
fnschoo1/profiles/migrations/0002_alter_profile_bio.py,sha256=LD7FdqcJ747XuKfIrZpq7avfx7_uZXr_t-Obc7yntSU,444
|
|
71
92
|
fnschoo1/profiles/migrations/0003_alter_profile_options_alter_profile_address_and_more.py,sha256=R8rIXtXgGgOQKaucoDz93tcrHlzq1B1_Fq5DlWHPDSw,2057
|
|
72
93
|
fnschoo1/profiles/migrations/0004_profile_gender.py,sha256=n5eQwBDRcEORGM7HZOcjoY_m1pckuKbjrwk--J7-LjA,625
|
|
73
94
|
fnschoo1/profiles/migrations/0005_alter_profile_gender.py,sha256=dPAoUEcwjYt6AxgBfRZTCJCnEsJgCAfx_jae32TVLD4,550
|
|
95
|
+
fnschoo1/profiles/migrations/0006_profile_created_at_profile_updated_at.py,sha256=7cKGa_3H7bVtoO3AJ-5yWdhwBxNZqghSRO9dhOrsuXE,705
|
|
96
|
+
fnschoo1/profiles/migrations/0007_alter_profile_created_at.py,sha256=9lDwP5DAnj_ucCGn2hCLGf8i7Zbf26gOErwvJJlNvkY,490
|
|
97
|
+
fnschoo1/profiles/migrations/0008_alter_profile_groups_alter_profile_user_permissions.py,sha256=JIEvPtvbeF3j-5knJDv1BtAb8nOIB56uKZJv3vb1QCA,1158
|
|
74
98
|
fnschoo1/profiles/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
75
|
-
fnschoo1/profiles/templates/profiles/create.html,sha256=
|
|
76
|
-
fnschoo1/profiles/templates/profiles/detail.html,sha256=
|
|
77
|
-
fnschoo1/profiles/templates/profiles/edit.html,sha256=
|
|
78
|
-
fnschoo1/profiles/templates/profiles/log_in.html,sha256=
|
|
79
|
-
fnschoo1/profiles/templates/profiles/log_out.html,sha256=
|
|
99
|
+
fnschoo1/profiles/templates/profiles/create.html,sha256=a5nh6eg0D32ufnbIXZiKn4pQWXl1x1TUZUYhlBiIhOc,544
|
|
100
|
+
fnschoo1/profiles/templates/profiles/detail.html,sha256=IiBEs3gnPiA2MUWlt5I9BmeFbavVSBgtzyP3jCBB7eU,577
|
|
101
|
+
fnschoo1/profiles/templates/profiles/edit.html,sha256=7kP4LlgwLFUnzNUJUTHs4yZfLEKK5TbBcumne2yFiCg,466
|
|
102
|
+
fnschoo1/profiles/templates/profiles/log_in.html,sha256=r5ah5EuuNCiQ0ou-YJClD5irQPxqxul4LLIPq-8yA1A,723
|
|
103
|
+
fnschoo1/profiles/templates/profiles/log_out.html,sha256=7cgmXbXR1CFnVdXn3U6BAemX_m8Vfy-8Mdn6Lsu-Zfg,307
|
|
80
104
|
fnschoo1/static/css/bootstrap.min.css,sha256=eGY1FwN6FhXUvbmXraT1t_q2vcNlQa8g5xQDwg8mG6w,280591
|
|
81
|
-
fnschoo1/static/css/fnschool.css,sha256=
|
|
105
|
+
fnschoo1/static/css/fnschool.css,sha256=NmePHTMyKovvucCws_hC1w9b-7r4NMta-G13PiVUeDw,649
|
|
82
106
|
fnschoo1/static/images/favicon.ico,sha256=S8Tf0NsUdHnoYO0SEn-sig6YjB0atIpEtSlm7p1HxjY,5014
|
|
83
107
|
fnschoo1/static/js/bootstrap.bundle.min.js,sha256=6kw84LCFc4QJzifgkle0FsvQrpt2NVRNPNjSSc9caiM,125881
|
|
84
108
|
fnschoo1/static/js/bootstrap.min.js,sha256=0SHpZTHghUOz_BNedMzuH00z5lgwOSRKP_KI9G5Ogbk,88597
|
|
85
|
-
fnschoo1/static/js/fnschool.js,sha256=
|
|
109
|
+
fnschoo1/static/js/fnschool.js,sha256=XqcvQS0GGtQmZya4E7rZESdloDm_0QIfmAoSstSR2fc,4445
|
|
86
110
|
fnschoo1/static/js/jquery.min.js,sha256=np_WnfpAmUmEO_iheFAJKf6mbm0_laW3Ns4x7kjSlt4,162505
|
|
87
111
|
fnschoo1/static/js/jquery.slim.min.js,sha256=p5YkbOjgHxX3hTadKlGuDW58NvJ1ldjjokDuDQ_5yXs,129962
|
|
88
112
|
fnschoo1/static/js/popper.min.js,sha256=O2xdmtEow7gq3I7-0lKjshvxHkBe0hTWrMkbX2fy0XQ,36887
|
|
89
113
|
fnschoo1/templates/close.html,sha256=pLYeJmGaOEJKMUJdZmYzz_n--l28IRDQ4fXvetP_Vsc,200
|
|
90
|
-
fnschoo1/templates/home.html,sha256=
|
|
114
|
+
fnschoo1/templates/home.html,sha256=Z2mdqq4yY7K8booZlYrngPop_jLrejb-lBFqVVxn22I,180
|
|
91
115
|
fnschoo1/templates/base/_content.html,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
92
116
|
fnschoo1/templates/base/_css.html,sha256=I7We2o3BzNq4PBN72UOKAtXHkZ1Xb-eYP8N4bF3rm1w,16
|
|
93
117
|
fnschoo1/templates/base/_js.html,sha256=E2mgj6LQjd37r660iG2cAIOfofwuwMC6SZ59fj6wUnA,443
|
|
94
118
|
fnschoo1/templates/base/content.html,sha256=wbbZVWuZwL7EX0K6x5Ex1sYx0N2YteA0XMAdGsW_ScU,974
|
|
95
|
-
fnschoo1/templates/base/
|
|
119
|
+
fnschoo1/templates/base/document.html,sha256=8HyXN5B0u2bUtAXvnTkFsUhRHNA_Y3V87KuosQoPPJ4,1134
|
|
96
120
|
fnschoo1/templates/includes/_footer.html,sha256=giWQqakjUWPe2Z9au-EVnKmu2dvxuLezQZXmWFEtngU,1562
|
|
97
|
-
fnschoo1/templates/includes/_header.html,sha256=
|
|
121
|
+
fnschoo1/templates/includes/_header.html,sha256=pjyq_WusbfNRTtTLXVPaOMxVGk8m9RfG5zXo4iZR8B0,3595
|
|
98
122
|
fnschoo1/templates/includes/_navigation.html,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
99
123
|
fnschoo1/templates/includes/_paginator.html,sha256=Q-FRCODFNlETjn2yX18IfhctRWfqEgEnIc5LcdHzKSo,1262
|
|
100
124
|
fnschoo1/templates/registration/logged_out.html,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
101
125
|
fnschoo1/templates/registration/login.html,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
102
|
-
fnschool-
|
|
103
|
-
fnschool-
|
|
104
|
-
fnschool-
|
|
105
|
-
fnschool-
|
|
106
|
-
fnschool-
|
|
107
|
-
fnschool-
|
|
108
|
-
fnschool-
|
|
109
|
-
fnschool-
|
|
110
|
-
fnschool-
|
|
111
|
-
fnschool-
|
|
112
|
-
fnschool-
|
|
126
|
+
fnschool-20251027.81653.841.dist-info/licenses/LICENSE,sha256=2n6rt7r999OuXp8iOqW9we7ORaxWncIbOwN1ILRGR2g,7651
|
|
127
|
+
fnschool-20251027.81653.841.dist-info/METADATA,sha256=yLl7ZpplO_pG30_hmA9EWaVhVeDHyi8YQxGi8bOZDNQ,4752
|
|
128
|
+
fnschool-20251027.81653.841.dist-info/SOURCES.txt.py,sha256=2LY2mshgNtxI3ICB-oBjyMYgJk2bQqeGFM5J5ay5TQs,4954
|
|
129
|
+
fnschool-20251027.81653.841.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
130
|
+
fnschool-20251027.81653.841.dist-info/dependency_links.txt.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
|
131
|
+
fnschool-20251027.81653.841.dist-info/entry_points.txt,sha256=Ow5nChVFJY3O4TJAIE1ZydMev1MUtgRsT1b8eFP6728,54
|
|
132
|
+
fnschool-20251027.81653.841.dist-info/entry_points.txt.py,sha256=7iOwIx_m9Y6xJt___BZHWJh27LV5hqWnUjmj77MoRys,47
|
|
133
|
+
fnschool-20251027.81653.841.dist-info/requires.txt.py,sha256=PqRcHIQSMPUb271hacYrlSDHwB1WDZmlWUkh6RnBz_g,113
|
|
134
|
+
fnschool-20251027.81653.841.dist-info/top_level.txt,sha256=s6ZKnNm94Q0-247a50eI7jDK98uPF6P2kC9Ovd3LUlM,9
|
|
135
|
+
fnschool-20251027.81653.841.dist-info/top_level.txt.py,sha256=_7CbrSihm0dzBn_tTy2ass_Y2VlkVNT2eylE8mcfwHY,9
|
|
136
|
+
fnschool-20251027.81653.841.dist-info/RECORD,,
|
|
File without changes
|
{fnschool-20251021.80058.842.dist-info → fnschool-20251027.81653.841.dist-info}/SOURCES.txt.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{fnschool-20251021.80058.842.dist-info → fnschool-20251027.81653.841.dist-info}/entry_points.txt
RENAMED
|
File without changes
|
{fnschool-20251021.80058.842.dist-info → fnschool-20251027.81653.841.dist-info}/entry_points.txt.py
RENAMED
|
File without changes
|
{fnschool-20251021.80058.842.dist-info → fnschool-20251027.81653.841.dist-info}/licenses/LICENSE
RENAMED
|
File without changes
|
{fnschool-20251021.80058.842.dist-info → fnschool-20251027.81653.841.dist-info}/requires.txt.py
RENAMED
|
File without changes
|
{fnschool-20251021.80058.842.dist-info → fnschool-20251027.81653.841.dist-info}/top_level.txt
RENAMED
|
File without changes
|
{fnschool-20251021.80058.842.dist-info → fnschool-20251027.81653.841.dist-info}/top_level.txt.py
RENAMED
|
File without changes
|