focomy 0.1.117__tar.gz → 0.1.119__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.
- {focomy-0.1.117 → focomy-0.1.119}/PKG-INFO +1 -1
- {focomy-0.1.117 → focomy-0.1.119}/core/admin/routes.py +7 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/engine/routes.py +1 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/theme.py +1 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/templates/admin/base.html +3 -0
- {focomy-0.1.117 → focomy-0.1.119}/pyproject.toml +1 -1
- focomy-0.1.119/themes/corporate/customizations.json +29 -0
- {focomy-0.1.117 → focomy-0.1.119}/themes/default/templates/base.html +19 -1
- {focomy-0.1.117 → focomy-0.1.119}/.gitignore +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/LICENSE +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/README.md +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/__init__.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/admin/__init__.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/admin/url.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/api/__init__.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/api/auth.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/api/comments.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/api/entities.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/api/forms.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/api/media.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/api/relations.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/api/revisions.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/api/schema.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/api/search.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/api/seo.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/cli.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/config.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/content_types/__init__.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/content_types/audit_log.yaml +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/content_types/category.yaml +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/content_types/channel.yaml +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/content_types/comment.yaml +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/content_types/edit_lock.yaml +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/content_types/form.yaml +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/content_types/form_submission.yaml +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/content_types/menu_item.yaml +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/content_types/news.yaml +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/content_types/page.yaml +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/content_types/plugin.yaml +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/content_types/plugin_developer.yaml +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/content_types/plugin_review.yaml +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/content_types/post.yaml +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/content_types/redirect.yaml +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/content_types/scheduled_action.yaml +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/content_types/series.yaml +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/content_types/site_setting.yaml +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/content_types/tag.yaml +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/content_types/user.yaml +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/content_types/widget.yaml +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/content_types/workflow_history.yaml +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/database.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/engine/__init__.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/main.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/migrations/env.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/migrations/script.py.mako +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/migrations/versions/2038bdf6693b_add_import_jobs_table.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/migrations/versions/3a1b2c3d4e5f_add_file_hash_to_media.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/models/__init__.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/models/auth.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/models/entity.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/models/import_job.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/models/media.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/models/relation.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/models/revision.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/plugins/__init__.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/plugins/base.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/plugins/hooks.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/plugins/loader.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/plugins/manager.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/rate_limit.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/relations.yaml +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/scaffold/.env.template +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/scaffold/.gitignore.template +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/scaffold/__init__.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/scaffold/config.yaml.template +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/scaffold/themes/default/templates/archive.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/scaffold/themes/default/templates/base.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/scaffold/themes/default/templates/category.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/scaffold/themes/default/templates/home.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/scaffold/themes/default/templates/post.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/scaffold/themes/default/templates/search.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/scaffold/themes/default/theme.yaml +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/schemas/__init__.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/schemas/import_schema.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/seo/__init__.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/__init__.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/api_auth.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/assets.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/audit.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/auth.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/block_converter.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/bulk.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/cache.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/channel.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/cleanup.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/comment.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/config_priority.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/deployment.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/edit_lock.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/entity.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/export.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/field.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/formula.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/i18n.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/index.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/invite.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/link_validator.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/logging.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/mail.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/marketplace.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/marketplace_verify.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/media.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/media_cleanup.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/menu.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/migration_helpers.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/oauth.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/pagination.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/plugin_resolver.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/plugin_sandbox.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/preview.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/query_optimizer.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/rbac.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/redirect.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/relation.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/revision.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/routing.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/sanitizer.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/schedule.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/search.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/sentry.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/seo.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/settings.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/spam_filter.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/storage.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/theme_inheritance.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/thumbnail.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/update.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/widget.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/wordpress_import/__init__.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/wordpress_import/acf.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/wordpress_import/analyzer.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/wordpress_import/constants.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/wordpress_import/content_sanitizer.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/wordpress_import/diff_detector.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/wordpress_import/dry_run.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/wordpress_import/error_collector.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/wordpress_import/id_resolver.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/wordpress_import/import_service.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/wordpress_import/importer.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/wordpress_import/link_fixer.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/wordpress_import/media.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/wordpress_import/preview.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/wordpress_import/redirects.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/wordpress_import/rest_client.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/wordpress_import/rollback.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/wordpress_import/verification.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/wordpress_import/wxr_parser.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/services/workflow.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/templates/admin/backup.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/templates/admin/comments.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/templates/admin/components/editor.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/templates/admin/customize.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/templates/admin/dashboard.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/templates/admin/entity_form.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/templates/admin/entity_list.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/templates/admin/forgot_password.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/templates/admin/import.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/templates/admin/link_validator.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/templates/admin/login.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/templates/admin/media.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/templates/admin/menus.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/templates/admin/plugins.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/templates/admin/redirects.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/templates/admin/reset_password.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/templates/admin/settings.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/templates/admin/sitemap.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/templates/admin/system.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/templates/admin/themes.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/templates/admin/widgets.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/themes/__init__.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/themes/customizer.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/themes/manager.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/themes/marketplace.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/core/utils.py +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/static/favicon.svg +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/themes/blog/templates/base.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/themes/blog/templates/home.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/themes/blog/templates/post.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/themes/blog/theme.yaml +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/themes/corporate/templates/base.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/themes/corporate/templates/home.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/themes/corporate/templates/page.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/themes/corporate/theme.yaml +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/themes/default/customizations.json +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/themes/default/templates/404.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/themes/default/templates/500.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/themes/default/templates/archive.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/themes/default/templates/category.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/themes/default/templates/channel.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/themes/default/templates/form.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/themes/default/templates/form_success.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/themes/default/templates/home.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/themes/default/templates/page.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/themes/default/templates/post.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/themes/default/templates/search.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/themes/default/templates/series.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/themes/default/theme.yaml +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/themes/minimal/templates/base.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/themes/minimal/templates/home.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/themes/minimal/templates/page.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/themes/minimal/templates/post.html +0 -0
- {focomy-0.1.117 → focomy-0.1.119}/themes/minimal/theme.yaml +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: focomy
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.119
|
|
4
4
|
Summary: The Most Beautiful CMS - A metadata-driven, zero-duplicate-code content management system
|
|
5
5
|
Project-URL: Homepage, https://github.com/focomy/focomy
|
|
6
6
|
Project-URL: Documentation, https://focomy.dev/docs
|
|
@@ -198,6 +198,12 @@ async def get_context(
|
|
|
198
198
|
except Exception:
|
|
199
199
|
pass # Post content type may not exist
|
|
200
200
|
|
|
201
|
+
# Get active theme for customize link
|
|
202
|
+
from ..services.settings import SettingsService
|
|
203
|
+
settings_svc = SettingsService(db)
|
|
204
|
+
theme_settings = await settings_svc.get_by_category("theme")
|
|
205
|
+
active_theme = theme_settings.get("active", "default")
|
|
206
|
+
|
|
201
207
|
return {
|
|
202
208
|
"request": request,
|
|
203
209
|
"content_types": content_types,
|
|
@@ -208,6 +214,7 @@ async def get_context(
|
|
|
208
214
|
"user_role": user_role,
|
|
209
215
|
"channels": channels,
|
|
210
216
|
"orphan_post_count": orphan_post_count,
|
|
217
|
+
"active_theme": active_theme,
|
|
211
218
|
}
|
|
212
219
|
|
|
213
220
|
|
|
@@ -160,6 +160,7 @@ async def render_theme(
|
|
|
160
160
|
if admin_info:
|
|
161
161
|
context["is_admin"] = True
|
|
162
162
|
context["admin_user"] = admin_info["user_data"]
|
|
163
|
+
context["active_theme"] = active_theme # For customize link
|
|
163
164
|
# Build edit URL if entity provided
|
|
164
165
|
if entity and content_type:
|
|
165
166
|
context["edit_url"] = f"/admin/{content_type}/{entity.id}/edit"
|
|
@@ -1194,6 +1194,7 @@ body {
|
|
|
1194
1194
|
|
|
1195
1195
|
# Add theme CSS to context
|
|
1196
1196
|
context["theme_css"] = self.get_css_variables(theme_name)
|
|
1197
|
+
context["customizations"] = self.get_customizations(theme_name)
|
|
1197
1198
|
context["current_year"] = datetime.now().year
|
|
1198
1199
|
context.setdefault("site_name", "Focomy")
|
|
1199
1200
|
|
|
@@ -551,6 +551,9 @@
|
|
|
551
551
|
</a>
|
|
552
552
|
|
|
553
553
|
<div class="nav-section">外観</div>
|
|
554
|
+
<a href="/admin/themes/{{ active_theme }}/customize" class="nav-item {% if current_page == 'customize' %}active{% endif %}">
|
|
555
|
+
カスタマイズ
|
|
556
|
+
</a>
|
|
554
557
|
<a href="/admin/themes" class="nav-item {% if current_page == 'themes' %}active{% endif %}">
|
|
555
558
|
テーマ
|
|
556
559
|
</a>
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
{
|
|
2
|
+
"site_logo": "",
|
|
3
|
+
"site_icon": "",
|
|
4
|
+
"header_image": "",
|
|
5
|
+
"background_image": "",
|
|
6
|
+
"color_primary": "#0066cc",
|
|
7
|
+
"color_primary-hover": "#0052a3",
|
|
8
|
+
"color_secondary": "#ff6b35",
|
|
9
|
+
"color_secondary-hover": "#e55a2b",
|
|
10
|
+
"color_background": "#ffffff",
|
|
11
|
+
"color_surface": "#f8f9fa",
|
|
12
|
+
"color_text": "#212529",
|
|
13
|
+
"color_text-muted": "#6c757d",
|
|
14
|
+
"color_border": "#dee2e6",
|
|
15
|
+
"color_success": "#28a745",
|
|
16
|
+
"color_error": "#dc3545",
|
|
17
|
+
"color_warning": "#ffc107",
|
|
18
|
+
"font_sans": "'Noto Sans JP', -apple-system, BlinkMacSystemFont, sans-serif",
|
|
19
|
+
"font_serif": "'Noto Serif JP', Georgia, serif",
|
|
20
|
+
"font_mono": "ui-monospace, monospace",
|
|
21
|
+
"space_xs": "0.25rem",
|
|
22
|
+
"space_sm": "0.5rem",
|
|
23
|
+
"space_md": "1rem",
|
|
24
|
+
"space_lg": "1.5rem",
|
|
25
|
+
"space_xl": "2rem",
|
|
26
|
+
"space_2xl": "3rem",
|
|
27
|
+
"space_3xl": "4rem",
|
|
28
|
+
"custom_css": ""
|
|
29
|
+
}
|
|
@@ -37,9 +37,14 @@
|
|
|
37
37
|
{% endif %}
|
|
38
38
|
|
|
39
39
|
<!-- Favicon -->
|
|
40
|
+
{% if customizations and customizations.site_icon %}
|
|
41
|
+
<link rel="icon" href="{{ customizations.site_icon }}" type="image/png">
|
|
42
|
+
<link rel="apple-touch-icon" href="{{ customizations.site_icon }}">
|
|
43
|
+
{% else %}
|
|
40
44
|
<link rel="icon" href="/static/favicon.ico" sizes="32x32">
|
|
41
45
|
<link rel="icon" href="/static/favicon.svg" type="image/svg+xml">
|
|
42
46
|
<link rel="apple-touch-icon" href="/static/apple-touch-icon.png">
|
|
47
|
+
{% endif %}
|
|
43
48
|
<link rel="manifest" href="/manifest.json">
|
|
44
49
|
|
|
45
50
|
<!-- Preload critical resources -->
|
|
@@ -56,6 +61,12 @@
|
|
|
56
61
|
<link rel="stylesheet" href="/css/theme.css">
|
|
57
62
|
|
|
58
63
|
<style>
|
|
64
|
+
/* Site logo image */
|
|
65
|
+
.site-logo-img {
|
|
66
|
+
max-height: 50px;
|
|
67
|
+
width: auto;
|
|
68
|
+
vertical-align: middle;
|
|
69
|
+
}
|
|
59
70
|
|
|
60
71
|
/* Dropdown menu styles */
|
|
61
72
|
.nav-item { position: relative; display: inline-block; }
|
|
@@ -135,6 +146,7 @@
|
|
|
135
146
|
{% endif %}
|
|
136
147
|
</div>
|
|
137
148
|
</div>
|
|
149
|
+
<a href="/admin/themes/{{ active_theme }}/customize">カスタマイズ</a>
|
|
138
150
|
{% if edit_url %}
|
|
139
151
|
<a href="{{ edit_url }}">編集</a>
|
|
140
152
|
{% endif %}
|
|
@@ -218,7 +230,13 @@
|
|
|
218
230
|
<header class="site-header">
|
|
219
231
|
{% block header %}
|
|
220
232
|
<div class="container">
|
|
221
|
-
<a href="/" class="site-logo">
|
|
233
|
+
<a href="/" class="site-logo">
|
|
234
|
+
{% if customizations and customizations.site_logo %}
|
|
235
|
+
<img src="{{ customizations.site_logo }}" alt="{{ site_name }}" class="site-logo-img">
|
|
236
|
+
{% else %}
|
|
237
|
+
{{ site_name }}
|
|
238
|
+
{% endif %}
|
|
239
|
+
</a>
|
|
222
240
|
<nav class="site-nav">
|
|
223
241
|
{% block nav %}
|
|
224
242
|
{% if menus and menus.header %}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{focomy-0.1.117 → focomy-0.1.119}/core/migrations/versions/2038bdf6693b_add_import_jobs_table.py
RENAMED
|
File without changes
|
{focomy-0.1.117 → focomy-0.1.119}/core/migrations/versions/3a1b2c3d4e5f_add_file_hash_to_media.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|