django-admin-js 0.1.0__tar.gz
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.
- django_admin_js-0.1.0/CHANGELOG.md +16 -0
- django_admin_js-0.1.0/CONTRIBUTING.md +41 -0
- django_admin_js-0.1.0/LICENSE +21 -0
- django_admin_js-0.1.0/MANIFEST.in +8 -0
- django_admin_js-0.1.0/PKG-INFO +122 -0
- django_admin_js-0.1.0/README.md +91 -0
- django_admin_js-0.1.0/django_admin_js/__init__.py +0 -0
- django_admin_js-0.1.0/django_admin_js/admin.py +1 -0
- django_admin_js-0.1.0/django_admin_js/apps.py +7 -0
- django_admin_js-0.1.0/django_admin_js/migrations/__init__.py +0 -0
- django_admin_js-0.1.0/django_admin_js/models.py +1 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/404.html +27 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/500.html +34 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/actions.html +33 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/admin_styles.css +895 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/app_index.html +20 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/app_list.html +60 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/auth/user/add_form.html +10 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/auth/user/change_password.html +57 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/base.html +971 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/base_site.html +19 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/change_form.html +92 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/change_form_object_tools.html +8 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/change_list.html +323 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/change_list_object_tools.html +13 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/change_list_results.html +36 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/color_theme_toggle.html +15 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/date_hierarchy.html +14 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/delete_confirmation.html +82 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/delete_selected_confirmation.html +81 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/edit_inline/stacked.html +66 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/edit_inline/tabular.html +94 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/filter.html +19 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/includes/aurora_bg.html +4 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/includes/breadcrumbs.html +12 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/includes/command_palette.html +217 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/includes/dashboard_stats.html +41 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/includes/fieldset.html +34 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/includes/header.html +95 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/includes/object_delete_summary.html +7 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/index.html +61 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/invalid_setup.html +13 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/login.html +120 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/nav_sidebar.html +17 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/object_history.html +66 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/pagination.html +12 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/popup_response.html +10 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/prepopulated_fields_js.html +5 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/search_form.html +46 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/submit_line.html +41 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/widgets/clearable_file_input.html +6 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/widgets/date.html +3 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/widgets/foreign_key_raw_id.html +2 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/widgets/many_to_many_raw_id.html +1 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/widgets/radio.html +1 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/widgets/related_widget_wrapper.html +52 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/widgets/split_datetime.html +4 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/widgets/time.html +3 -0
- django_admin_js-0.1.0/django_admin_js/templates/admin/widgets/url.html +1 -0
- django_admin_js-0.1.0/django_admin_js/templates/registration/logged_out.html +92 -0
- django_admin_js-0.1.0/django_admin_js/templatetags/__init__.py +0 -0
- django_admin_js-0.1.0/django_admin_js/templatetags/admin_stats.py +84 -0
- django_admin_js-0.1.0/django_admin_js/tests.py +1 -0
- django_admin_js-0.1.0/django_admin_js/tests_settings.py +32 -0
- django_admin_js-0.1.0/django_admin_js/views.py +1 -0
- django_admin_js-0.1.0/django_admin_js.egg-info/PKG-INFO +122 -0
- django_admin_js-0.1.0/django_admin_js.egg-info/SOURCES.txt +70 -0
- django_admin_js-0.1.0/django_admin_js.egg-info/dependency_links.txt +1 -0
- django_admin_js-0.1.0/django_admin_js.egg-info/requires.txt +1 -0
- django_admin_js-0.1.0/django_admin_js.egg-info/top_level.txt +1 -0
- django_admin_js-0.1.0/pyproject.toml +47 -0
- django_admin_js-0.1.0/setup.cfg +4 -0
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to this project will be documented in this file.
|
|
4
|
+
|
|
5
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
|
+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
|
+
|
|
8
|
+
## [0.1.0] - 2026-06-12
|
|
9
|
+
### Added
|
|
10
|
+
- Initial release of DjangoAdmin.JS.
|
|
11
|
+
- Redesigned Django Admin templates with Tailwind CSS.
|
|
12
|
+
- Modern dashboard with statistics.
|
|
13
|
+
- Responsive navigation and layout.
|
|
14
|
+
- Dark mode support.
|
|
15
|
+
- Professional package structure with `pyproject.toml`.
|
|
16
|
+
- GitHub Actions for CI/CD.
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# Contributing to DjangoAdmin.JS
|
|
2
|
+
|
|
3
|
+
Thank you for your interest in contributing to DjangoAdmin.JS! We welcome contributions of all kinds, from bug reports to new features.
|
|
4
|
+
|
|
5
|
+
## How to Contribute
|
|
6
|
+
|
|
7
|
+
### Reporting Bugs
|
|
8
|
+
- Use the [GitHub issue tracker](https://github.com/rocco/DjangoAdmin.JS/issues) to report bugs.
|
|
9
|
+
- Include a clear description of the bug and steps to reproduce it.
|
|
10
|
+
|
|
11
|
+
### Feature Requests
|
|
12
|
+
- Use the issue tracker to suggest new features.
|
|
13
|
+
- Provide as much detail as possible about the proposed feature.
|
|
14
|
+
|
|
15
|
+
### Pull Requests
|
|
16
|
+
1. Fork the repository.
|
|
17
|
+
2. Create a new branch for your changes.
|
|
18
|
+
3. Make your changes and include tests if applicable.
|
|
19
|
+
4. Submit a pull request with a clear description of your changes.
|
|
20
|
+
|
|
21
|
+
## Development Setup
|
|
22
|
+
|
|
23
|
+
1. Clone the repository:
|
|
24
|
+
```bash
|
|
25
|
+
git clone https://github.com/yourusername/DjangoAdmin.JS.git
|
|
26
|
+
cd DjangoAdmin.JS
|
|
27
|
+
```
|
|
28
|
+
2. Create a virtual environment and install dependencies:
|
|
29
|
+
```bash
|
|
30
|
+
python -m venv venv
|
|
31
|
+
source venv/bin/activate
|
|
32
|
+
pip install -e .
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
## Coding Standards
|
|
36
|
+
- Follow PEP 8 for Python code.
|
|
37
|
+
- Use meaningful variable names and comments.
|
|
38
|
+
- Ensure your code is well-tested.
|
|
39
|
+
|
|
40
|
+
## License
|
|
41
|
+
By contributing to DjangoAdmin.JS, you agree that your contributions will be licensed under the MIT License.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Rocco
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: django-admin-js
|
|
3
|
+
Version: 0.1.0
|
|
4
|
+
Summary: A modern Django Admin experience built with Tailwind CSS and progressive JavaScript enhancements.
|
|
5
|
+
Author-email: Rocco <rocco@example.com>
|
|
6
|
+
License: MIT
|
|
7
|
+
Project-URL: Homepage, https://github.com/rocco/DjangoAdmin.JS
|
|
8
|
+
Project-URL: Issues, https://github.com/rocco/DjangoAdmin.JS/issues
|
|
9
|
+
Keywords: django,admin,tailwind,ui,ux
|
|
10
|
+
Classifier: Development Status :: 4 - Beta
|
|
11
|
+
Classifier: Environment :: Web Environment
|
|
12
|
+
Classifier: Framework :: Django
|
|
13
|
+
Classifier: Framework :: Django :: 5.0
|
|
14
|
+
Classifier: Framework :: Django :: 5.1
|
|
15
|
+
Classifier: Framework :: Django :: 5.2
|
|
16
|
+
Classifier: Intended Audience :: Developers
|
|
17
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
18
|
+
Classifier: Operating System :: OS Independent
|
|
19
|
+
Classifier: Programming Language :: Python
|
|
20
|
+
Classifier: Programming Language :: Python :: 3
|
|
21
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
22
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
23
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
24
|
+
Classifier: Topic :: Software Development :: Libraries :: Application Frameworks
|
|
25
|
+
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
26
|
+
Requires-Python: >=3.10
|
|
27
|
+
Description-Content-Type: text/markdown
|
|
28
|
+
License-File: LICENSE
|
|
29
|
+
Requires-Dist: django>=5.0
|
|
30
|
+
Dynamic: license-file
|
|
31
|
+
|
|
32
|
+
# DjangoAdmin.JS
|
|
33
|
+
|
|
34
|
+
[](https://pypi.org/project/django-admin-js/)
|
|
35
|
+
[](https://opensource.org/licenses/MIT)
|
|
36
|
+
[](https://github.com/rocco/DjangoAdmin.JS/actions)
|
|
37
|
+
|
|
38
|
+
A modern Django Admin experience built with Tailwind CSS and progressive JavaScript enhancements. Features a redesigned UI, improved UX, asynchronous interactions, and a foundation for a faster, more responsive administration panel.
|
|
39
|
+
|
|
40
|
+
---
|
|
41
|
+
|
|
42
|
+
## 📸 Screenshots
|
|
43
|
+
|
|
44
|
+

|
|
45
|
+
*Modern, clean, and responsive dashboard.*
|
|
46
|
+
|
|
47
|
+

|
|
48
|
+
*Refined form layouts and tabs.*
|
|
49
|
+
|
|
50
|
+
---
|
|
51
|
+
|
|
52
|
+
## ✨ Features
|
|
53
|
+
|
|
54
|
+
- **Tailwind CSS Driven**: Clean, modern aesthetics using the latest utility-first CSS.
|
|
55
|
+
- **Responsive Layout**: Optimized for mobile, tablet, and desktop.
|
|
56
|
+
- **Dark Mode Support**: Built-in support for dark themes.
|
|
57
|
+
- **Enhanced UX**: Improved navigation, breadcrumbs, and interactive components.
|
|
58
|
+
- **No JS Bloat**: Uses progressive enhancements with minimal dependencies.
|
|
59
|
+
|
|
60
|
+
---
|
|
61
|
+
|
|
62
|
+
## 🚀 Quick Start
|
|
63
|
+
|
|
64
|
+
### 1. Installation
|
|
65
|
+
|
|
66
|
+
Install via pip:
|
|
67
|
+
|
|
68
|
+
```bash
|
|
69
|
+
pip install django-admin-js
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
### 2. Configuration
|
|
73
|
+
|
|
74
|
+
Add `django_admin_js` to your `INSTALLED_APPS` **before** `django.contrib.admin`:
|
|
75
|
+
|
|
76
|
+
```python
|
|
77
|
+
INSTALLED_APPS = [
|
|
78
|
+
"django_admin_js", # Must be before admin
|
|
79
|
+
"django.contrib.admin",
|
|
80
|
+
"django.contrib.auth",
|
|
81
|
+
"django.contrib.contenttypes",
|
|
82
|
+
"django.contrib.sessions",
|
|
83
|
+
"django.contrib.messages",
|
|
84
|
+
"django.contrib.staticfiles",
|
|
85
|
+
# ... your apps
|
|
86
|
+
]
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
### 3. Usage
|
|
90
|
+
|
|
91
|
+
That's it! Your Django Admin will now use the new theme automatically.
|
|
92
|
+
|
|
93
|
+
---
|
|
94
|
+
|
|
95
|
+
## 📊 Compatibility
|
|
96
|
+
|
|
97
|
+
- **Django**: 5.0, 5.1, 5.2+
|
|
98
|
+
- **Python**: 3.10, 3.11, 3.12+
|
|
99
|
+
|
|
100
|
+
---
|
|
101
|
+
|
|
102
|
+
## đź› Roadmap
|
|
103
|
+
|
|
104
|
+
- [ ] **Tailwind UI**: Full implementation of all admin components.
|
|
105
|
+
- [ ] **Dark Mode**: Refinement of dark mode transitions.
|
|
106
|
+
- [ ] **Async Actions**: Perform admin actions without page reloads.
|
|
107
|
+
- [ ] **Fetch API**: Modernize all data interactions.
|
|
108
|
+
- [ ] **REST-powered interactions**: Better integration with API-driven data.
|
|
109
|
+
- [ ] **Modal CRUD**: Create and edit related objects in modals.
|
|
110
|
+
- [ ] **Inline Editing**: Quick edit fields directly in the list view.
|
|
111
|
+
|
|
112
|
+
---
|
|
113
|
+
|
|
114
|
+
## 🤝 Contributing
|
|
115
|
+
|
|
116
|
+
Contributions are welcome! Please see [CONTRIBUTING.md](CONTRIBUTING.md) for details.
|
|
117
|
+
|
|
118
|
+
---
|
|
119
|
+
|
|
120
|
+
## đź“„ License
|
|
121
|
+
|
|
122
|
+
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
# DjangoAdmin.JS
|
|
2
|
+
|
|
3
|
+
[](https://pypi.org/project/django-admin-js/)
|
|
4
|
+
[](https://opensource.org/licenses/MIT)
|
|
5
|
+
[](https://github.com/rocco/DjangoAdmin.JS/actions)
|
|
6
|
+
|
|
7
|
+
A modern Django Admin experience built with Tailwind CSS and progressive JavaScript enhancements. Features a redesigned UI, improved UX, asynchronous interactions, and a foundation for a faster, more responsive administration panel.
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## 📸 Screenshots
|
|
12
|
+
|
|
13
|
+

|
|
14
|
+
*Modern, clean, and responsive dashboard.*
|
|
15
|
+
|
|
16
|
+

|
|
17
|
+
*Refined form layouts and tabs.*
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## ✨ Features
|
|
22
|
+
|
|
23
|
+
- **Tailwind CSS Driven**: Clean, modern aesthetics using the latest utility-first CSS.
|
|
24
|
+
- **Responsive Layout**: Optimized for mobile, tablet, and desktop.
|
|
25
|
+
- **Dark Mode Support**: Built-in support for dark themes.
|
|
26
|
+
- **Enhanced UX**: Improved navigation, breadcrumbs, and interactive components.
|
|
27
|
+
- **No JS Bloat**: Uses progressive enhancements with minimal dependencies.
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## 🚀 Quick Start
|
|
32
|
+
|
|
33
|
+
### 1. Installation
|
|
34
|
+
|
|
35
|
+
Install via pip:
|
|
36
|
+
|
|
37
|
+
```bash
|
|
38
|
+
pip install django-admin-js
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
### 2. Configuration
|
|
42
|
+
|
|
43
|
+
Add `django_admin_js` to your `INSTALLED_APPS` **before** `django.contrib.admin`:
|
|
44
|
+
|
|
45
|
+
```python
|
|
46
|
+
INSTALLED_APPS = [
|
|
47
|
+
"django_admin_js", # Must be before admin
|
|
48
|
+
"django.contrib.admin",
|
|
49
|
+
"django.contrib.auth",
|
|
50
|
+
"django.contrib.contenttypes",
|
|
51
|
+
"django.contrib.sessions",
|
|
52
|
+
"django.contrib.messages",
|
|
53
|
+
"django.contrib.staticfiles",
|
|
54
|
+
# ... your apps
|
|
55
|
+
]
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
### 3. Usage
|
|
59
|
+
|
|
60
|
+
That's it! Your Django Admin will now use the new theme automatically.
|
|
61
|
+
|
|
62
|
+
---
|
|
63
|
+
|
|
64
|
+
## 📊 Compatibility
|
|
65
|
+
|
|
66
|
+
- **Django**: 5.0, 5.1, 5.2+
|
|
67
|
+
- **Python**: 3.10, 3.11, 3.12+
|
|
68
|
+
|
|
69
|
+
---
|
|
70
|
+
|
|
71
|
+
## đź› Roadmap
|
|
72
|
+
|
|
73
|
+
- [ ] **Tailwind UI**: Full implementation of all admin components.
|
|
74
|
+
- [ ] **Dark Mode**: Refinement of dark mode transitions.
|
|
75
|
+
- [ ] **Async Actions**: Perform admin actions without page reloads.
|
|
76
|
+
- [ ] **Fetch API**: Modernize all data interactions.
|
|
77
|
+
- [ ] **REST-powered interactions**: Better integration with API-driven data.
|
|
78
|
+
- [ ] **Modal CRUD**: Create and edit related objects in modals.
|
|
79
|
+
- [ ] **Inline Editing**: Quick edit fields directly in the list view.
|
|
80
|
+
|
|
81
|
+
---
|
|
82
|
+
|
|
83
|
+
## 🤝 Contributing
|
|
84
|
+
|
|
85
|
+
Contributions are welcome! Please see [CONTRIBUTING.md](CONTRIBUTING.md) for details.
|
|
86
|
+
|
|
87
|
+
---
|
|
88
|
+
|
|
89
|
+
## đź“„ License
|
|
90
|
+
|
|
91
|
+
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
# Register your models here.
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
# Create your models here.
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
{% extends "admin/base_site.html" %}
|
|
2
|
+
{% load i18n %}
|
|
3
|
+
|
|
4
|
+
{% block title %}{% translate 'Page not found' %}{% endblock %}
|
|
5
|
+
|
|
6
|
+
{% block content %}
|
|
7
|
+
<div class="max-w-md mx-auto my-12 text-center">
|
|
8
|
+
<div class="bg-white dark:bg-apple-darkcard border border-apple-border/40 dark:border-apple-darkborder/40 rounded-2xl shadow-xl p-8 space-y-6">
|
|
9
|
+
<div class="inline-flex items-center justify-center w-16 h-16 rounded-full bg-indigo-50 dark:bg-indigo-950/20 text-apple-blue mb-2">
|
|
10
|
+
<svg class="w-8 h-8" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
|
|
11
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9.172 16.172a4 4 0 015.656 0M9 10h.01M15 10h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"></path>
|
|
12
|
+
</svg>
|
|
13
|
+
</div>
|
|
14
|
+
|
|
15
|
+
<div class="space-y-2">
|
|
16
|
+
<h2 class="text-2xl font-bold tracking-tight text-apple-text dark:text-apple-darktext">{% translate 'Page not found' %}</h2>
|
|
17
|
+
<p class="text-apple-secondary text-sm">{% translate 'We’re sorry, but the page you are looking for could not be found.' %}</p>
|
|
18
|
+
</div>
|
|
19
|
+
|
|
20
|
+
<div class="pt-4 border-t border-apple-border/20 dark:border-apple-darkborder/20">
|
|
21
|
+
<a href="{% url 'admin:index' %}" class="inline-block px-5 py-2 text-sm font-semibold text-white bg-apple-blue hover:bg-apple-blue-hover rounded-lg shadow-sm transition-all duration-150">
|
|
22
|
+
{% translate 'Go back home' %}
|
|
23
|
+
</a>
|
|
24
|
+
</div>
|
|
25
|
+
</div>
|
|
26
|
+
</div>
|
|
27
|
+
{% endblock %}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
{% extends "admin/base_site.html" %}
|
|
2
|
+
{% load i18n %}
|
|
3
|
+
|
|
4
|
+
{% block breadcrumbs %}
|
|
5
|
+
<div class="breadcrumbs">
|
|
6
|
+
<a href="{% url 'admin:index' %}">{% translate 'Home' %}</a>
|
|
7
|
+
› {% translate 'Server error' %}
|
|
8
|
+
</div>
|
|
9
|
+
{% endblock %}
|
|
10
|
+
|
|
11
|
+
{% block title %}{% translate 'Server error (500)' %}{% endblock %}
|
|
12
|
+
|
|
13
|
+
{% block content %}
|
|
14
|
+
<div class="max-w-md mx-auto my-12 text-center">
|
|
15
|
+
<div class="bg-white dark:bg-apple-darkcard border border-apple-border/40 dark:border-apple-darkborder/40 rounded-2xl shadow-xl p-8 space-y-6">
|
|
16
|
+
<div class="inline-flex items-center justify-center w-16 h-16 rounded-full bg-red-50 dark:bg-red-950/20 text-red-500 mb-2">
|
|
17
|
+
<svg class="w-8 h-8" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
|
|
18
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z"></path>
|
|
19
|
+
</svg>
|
|
20
|
+
</div>
|
|
21
|
+
|
|
22
|
+
<div class="space-y-2">
|
|
23
|
+
<h2 class="text-2xl font-bold tracking-tight text-apple-text dark:text-apple-darktext">{% translate 'Server Error (500)' %}</h2>
|
|
24
|
+
<p class="text-apple-secondary text-sm">{% translate 'There’s been an error. It’s been reported to the site administrators and should be fixed shortly. Thanks for your patience.' %}</p>
|
|
25
|
+
</div>
|
|
26
|
+
|
|
27
|
+
<div class="pt-4 border-t border-apple-border/20 dark:border-apple-darkborder/20">
|
|
28
|
+
<a href="{% url 'admin:index' %}" class="inline-block px-5 py-2 text-sm font-semibold text-white bg-apple-blue hover:bg-apple-blue-hover rounded-lg shadow-sm transition-all duration-150">
|
|
29
|
+
{% translate 'Go back home' %}
|
|
30
|
+
</a>
|
|
31
|
+
</div>
|
|
32
|
+
</div>
|
|
33
|
+
</div>
|
|
34
|
+
{% endblock %}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
{% load i18n %}
|
|
2
|
+
<div class="actions flex flex-wrap items-center gap-3 text-sm text-apple-secondary">
|
|
3
|
+
{% block actions %}
|
|
4
|
+
{% block actions-form %}
|
|
5
|
+
<div class="flex items-center gap-2">
|
|
6
|
+
{% for field in action_form %}
|
|
7
|
+
{% if field.label %}
|
|
8
|
+
<label class="font-semibold text-apple-text dark:text-apple-darktext">{{ field.label }}</label>
|
|
9
|
+
{% endif %}
|
|
10
|
+
{{ field }}
|
|
11
|
+
{% endfor %}
|
|
12
|
+
</div>
|
|
13
|
+
{% endblock %}
|
|
14
|
+
{% block actions-submit %}
|
|
15
|
+
<button type="submit" class="!inline-flex !items-center !gap-1.5 button !px-4 !py-2 !text-sm !font-semibold !text-white !bg-apple-blue hover:!bg-apple-blue-hover !rounded-lg !shadow-sm !transition-all !duration-150 !cursor-pointer !h-[38px] !m-0" title="{% translate "Run the selected action" %}" name="index" value="{{ action_index|default:0 }}">
|
|
16
|
+
<svg class="w-3.5 h-3.5 text-white" fill="none" stroke="currentColor" stroke-width="2.5" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" d="M3.75 13.5l10.5-11.25L12 10.5h8.25L9.75 21.75 12 13.5H3.75z" /></svg>
|
|
17
|
+
<span>{% translate "Go" %}</span>
|
|
18
|
+
</button>
|
|
19
|
+
{% endblock %}
|
|
20
|
+
{% block actions-counter %}
|
|
21
|
+
{% if actions_selection_counter %}
|
|
22
|
+
<span class="action-counter text-xs text-apple-secondary" data-actions-icnt="{{ cl.result_list|length }}">{{ selection_note }}</span>
|
|
23
|
+
{% if cl.result_count != cl.result_list|length %}
|
|
24
|
+
<span class="all hidden text-xs text-apple-secondary">{{ selection_note_all }}</span>
|
|
25
|
+
<span class="question hidden text-xs">
|
|
26
|
+
<a href="#" class="text-apple-blue hover:underline font-semibold" title="{% translate "Click here to select the objects across all pages" %}">{% blocktranslate with cl.result_count as total_count %}Select all {{ total_count }} {{ module_name }}{% endblocktranslate %}</a>
|
|
27
|
+
</span>
|
|
28
|
+
<span class="clear hidden text-xs"><a href="#" class="text-red-500 hover:underline">{% translate "Clear selection" %}</a></span>
|
|
29
|
+
{% endif %}
|
|
30
|
+
{% endif %}
|
|
31
|
+
{% endblock %}
|
|
32
|
+
{% endblock %}
|
|
33
|
+
</div>
|