SimpleDomControl 0.55.3__tar.gz → 0.56.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.
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/PKG-INFO +5 -2
- simpledomcontrol-0.56.0/README.md +5 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/pyproject.toml +4 -1
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/consumers.py +11 -9
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/management/commands/init_add/add_model_manager.py +15 -12
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/management/commands/sdc_get_model_infos.py +8 -8
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/sdc_extentions/models.py +42 -7
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/sdc_extentions/response.py +6 -8
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/template_files/Assets/gulpfile.jsx +13 -2
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/template_files/controller/template_controller.js.txt +16 -2
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/template_files/package.json +1 -1
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/Assets/src/sdc_tools/controller/sdc_navigator/sdc_navigator.js +0 -4
- simpledomcontrol-0.55.3/README.md +0 -1
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/__init__.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/apps.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/management/__init__.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/management/commands/__init__.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/management/commands/_private.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/management/commands/init_add/__init__.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/management/commands/init_add/add_controller_manager.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/management/commands/init_add/options.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/management/commands/init_add/sdc_core_manager.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/management/commands/init_add/settings_manager.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/management/commands/init_add/utils.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/management/commands/sdc_cc.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/management/commands/sdc_get_controller_infos.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/management/commands/sdc_get_controller_url.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/management/commands/sdc_init.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/management/commands/sdc_is_installed.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/management/commands/sdc_new_model.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/management/commands/sdc_shell_execute_script.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/management/commands/sdc_update_links.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/management/commands/sdc_update_url.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/sdc_extentions/__init__.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/sdc_extentions/forms.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/sdc_extentions/import_manager.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/sdc_extentions/search.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/sdc_extentions/views.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/template_files/Assets/.babelrc +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/template_files/Assets/src/index.organizer.js +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/template_files/Assets/src/index.style.scss +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/template_files/Assets/tests/config/post-test-teardown.js +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/template_files/Assets/tests/config/pre-test-setup.js +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/template_files/Assets/tests/config/test-setup.js +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/template_files/Assets/webpack.config/webpack.default.config.jsx +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/template_files/Assets/webpack.config/webpack.development.config.jsx +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/template_files/Assets/webpack.config/webpack.production.config.jsx +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/template_files/apps/sdc_examples/Add_SDCUser.txt +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/template_files/apps/sdc_examples/index.html +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/template_files/apps/sdc_examples/server_call.txt +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/template_files/asgi.py.txt +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/template_files/controller/templade_view.html +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/template_files/controller/template_css.scss +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/template_files/controller/template_test.js.text +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/template_files/js_test.js.txt +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/template_files/models/detail.html +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/template_files/models/list.html +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/template_files/routing.py.txt +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/template_files/sdc_urls.py.txt +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/template_files/sdc_views.py.txt +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/template_files/settings_extension.py.txt +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/template_files/templates/base.html +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/template_files/templates/index.html +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/template_files/urls.py.txt +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/Assets/src/sdc_tools/controller/sdc_alert_messenger/sdc_alert_messenger.js +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/Assets/src/sdc_tools/controller/sdc_alert_messenger/sdc_alert_messenger.scss +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/Assets/src/sdc_tools/controller/sdc_auto_submit/sdc_auto_submit.js +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/Assets/src/sdc_tools/controller/sdc_detail_view/sdc_detail_view.js +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/Assets/src/sdc_tools/controller/sdc_detail_view/sdc_detail_view.scss +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/Assets/src/sdc_tools/controller/sdc_dummy/sdc_dummy.js +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/Assets/src/sdc_tools/controller/sdc_dummy/sdc_dummy.scss +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/Assets/src/sdc_tools/controller/sdc_error/sdc_error.js +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/Assets/src/sdc_tools/controller/sdc_error/sdc_error.scss +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/Assets/src/sdc_tools/controller/sdc_list_view/sdc_list_view.js +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/Assets/src/sdc_tools/controller/sdc_list_view/sdc_list_view.scss +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/Assets/src/sdc_tools/controller/sdc_model_form/sdc_model_form.js +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/Assets/src/sdc_tools/controller/sdc_model_form/sdc_model_form.scss +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/Assets/src/sdc_tools/controller/sdc_navigation_client/sdc_navigation_client.js +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/Assets/src/sdc_tools/controller/sdc_navigator/sdc_navigator.scss +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/Assets/src/sdc_tools/controller/sdc_search_view/sdc_search_view.js +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/Assets/src/sdc_tools/controller/sdc_search_view/sdc_search_view.scss +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/Assets/src/sdc_tools/controller/sdc_update_on_change/sdc_update_on_change.js +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/Assets/src/sdc_tools/sdc_tools.organizer.js +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/Assets/src/sdc_tools/sdc_tools.style.scss +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/Assets/tests/sdc_tools.test.js +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/__init__.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/admin.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/apps.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/migrations/__init__.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/models.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/sdc_urls.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/sdc_views.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/templates/elements/form.html +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/templates/elements/inline_form.html +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/templates/email/base.html +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/templates/sdc_tools/sdc/dummy_sdc.html +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/templates/sdc_tools/sdc/sdc_alert_messenger.html +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/templates/sdc_tools/sdc/sdc_detail_view.html +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/templates/sdc_tools/sdc/sdc_dummy.html +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/templates/sdc_tools/sdc/sdc_error.html +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/templates/sdc_tools/sdc/sdc_list_view.html +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/templates/sdc_tools/sdc/sdc_model_form.html +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/templates/sdc_tools/sdc/sdc_navigator.html +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/templates/sdc_tools/sdc/sdc_search_view.html +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/templatetags/__init__.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/templatetags/addclass.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/templatetags/indexfilter.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/templatetags/sdc_filter.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/tests.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/views.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_user/Assets/src/sdc_user/controller/sdc_login/sdc_login.js +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_user/Assets/src/sdc_user/controller/sdc_login/sdc_login.scss +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_user/Assets/src/sdc_user/controller/sdc_logout/sdc_logout.js +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_user/Assets/src/sdc_user/controller/sdc_logout/sdc_logout.scss +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_user/Assets/src/sdc_user/controller/sdc_user_nav_btn/sdc_user_nav_btn.js +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_user/Assets/src/sdc_user/controller/sdc_user_nav_btn/sdc_user_nav_btn.scss +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_user/Assets/src/sdc_user/sdc_user.organizer.js +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_user/Assets/src/sdc_user/sdc_user.style.scss +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_user/Assets/tests/sdc_user.test.js +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_user/__init__.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_user/admin.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_user/apps.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_user/migrations/__init__.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_user/models.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_user/sdc_urls.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_user/sdc_views.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_user/templates/sdc_user/sdc/sdc_login.html +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_user/templates/sdc_user/sdc/sdc_logout.html +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_user/templates/sdc_user/sdc/sdc_user_nav_btn.html +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_user/tests.py +0 -0
- {simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_user/views.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: SimpleDomControl
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.56.0
|
|
4
4
|
Summary: Simple DOM control -> a django MVC framework
|
|
5
5
|
Home-page: https://github.com/StarmanMartin/sdc
|
|
6
6
|
License: Apache-2.0
|
|
@@ -26,5 +26,8 @@ Requires-Dist: psycopg2-binary (>=2.9.9,<3.0.0)
|
|
|
26
26
|
Requires-Dist: regex (>=2024.5.15,<2025.0.0)
|
|
27
27
|
Description-Content-Type: text/markdown
|
|
28
28
|
|
|
29
|
-
|
|
29
|
+
# Simple Dom Control (SDC)
|
|
30
30
|
|
|
31
|
+
SDC is a framework that combines elements of both the MVC (Model-View-Controller) and MVT (Model-View-Template) patterns. Its main goal is to provide a tool for simple and efficient web development. The name ‘SDC’ is an abbreviation for ‘Simple DOM Control,’ indicating its focus on controlling and manipulating the Document Object Model (DOM), which is crucial for web development, particularly in dynamic web pages.
|
|
32
|
+
|
|
33
|
+
For detailed docs go to [rtd](https://simpledomcontrol.readthedocs.io/en/latest/)
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
# Simple Dom Control (SDC)
|
|
2
|
+
|
|
3
|
+
SDC is a framework that combines elements of both the MVC (Model-View-Controller) and MVT (Model-View-Template) patterns. Its main goal is to provide a tool for simple and efficient web development. The name ‘SDC’ is an abbreviation for ‘Simple DOM Control,’ indicating its focus on controlling and manipulating the Document Object Model (DOM), which is crucial for web development, particularly in dynamic web pages.
|
|
4
|
+
|
|
5
|
+
For detailed docs go to [rtd](https://simpledomcontrol.readthedocs.io/en/latest/)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[tool.poetry]
|
|
2
2
|
name = "SimpleDomControl"
|
|
3
|
-
version = "0.
|
|
3
|
+
version = "0.56.0"
|
|
4
4
|
authors = [ "Martin Starman <private@martin-starman.com>", ]
|
|
5
5
|
description = "Simple DOM control -> a django MVC framework"
|
|
6
6
|
readme = "README.md"
|
|
@@ -38,6 +38,9 @@ testpaths = [
|
|
|
38
38
|
[tool.poetry.group.dev.dependencies]
|
|
39
39
|
pytest = "^7.2.2"
|
|
40
40
|
pillow = "^10.1.0"
|
|
41
|
+
sphinx-toolbox = "^3.6.0"
|
|
42
|
+
sphinx-rtd-theme = "^2.0.0"
|
|
43
|
+
sphinx-markdown-builder = "^0.6.6"
|
|
41
44
|
|
|
42
45
|
[build-system]
|
|
43
46
|
requires = ["poetry-core"]
|
|
@@ -277,7 +277,9 @@ class SDCModelConsumer(WebsocketConsumer):
|
|
|
277
277
|
traceback.print_tb(e.__traceback__)
|
|
278
278
|
else:
|
|
279
279
|
logger.error(e_text)
|
|
280
|
-
|
|
280
|
+
e_text_details = str(e)
|
|
281
|
+
e_text = _f('Something went wrong! {e}').format(e=e_text_details)
|
|
282
|
+
|
|
281
283
|
self.state_error({
|
|
282
284
|
'type': msg_type,
|
|
283
285
|
'msg': e_text,
|
|
@@ -315,12 +317,12 @@ class SDCModelConsumer(WebsocketConsumer):
|
|
|
315
317
|
def _load_create_form(self, json_data):
|
|
316
318
|
instance: SdcModel = self.model()
|
|
317
319
|
instance.scope = self.scope
|
|
318
|
-
return self._load_form(json_data, self.model.create_form, instance)
|
|
320
|
+
return self._load_form(json_data, self.model.SdcMeta.create_form, instance)
|
|
319
321
|
|
|
320
322
|
def _load_edit_form(self, json_data):
|
|
321
323
|
instance = self._load_model().get(pk=json_data['args']['pk'])
|
|
322
324
|
instance.scope = self.scope
|
|
323
|
-
return self._load_form(json_data, self.model.edit_form, instance)
|
|
325
|
+
return self._load_form(json_data, self.model.SdcMeta.edit_form, instance)
|
|
324
326
|
|
|
325
327
|
def _load_named_form(self, json_data):
|
|
326
328
|
instance = self._load_model().get(pk=json_data['args']['pk'])
|
|
@@ -345,7 +347,7 @@ class SDCModelConsumer(WebsocketConsumer):
|
|
|
345
347
|
self.send(text_data=json.dumps({
|
|
346
348
|
'type': json_data['event_type'],
|
|
347
349
|
'event_id': json_data['event_id'],
|
|
348
|
-
'html': self._render(self.model.html_form_template, {'instance': instance, 'form': form(instance=instance)},
|
|
350
|
+
'html': self._render(self.model.SdcMeta.html_form_template, {'instance': instance, 'form': form(instance=instance)},
|
|
349
351
|
json_data),
|
|
350
352
|
'is_error': False
|
|
351
353
|
}))
|
|
@@ -353,12 +355,12 @@ class SDCModelConsumer(WebsocketConsumer):
|
|
|
353
355
|
def _create_element(self, json_data):
|
|
354
356
|
instance: SdcModel = self.model()
|
|
355
357
|
instance.scope = self.scope
|
|
356
|
-
return self._submit_element(json_data, self.model.create_form, instance)
|
|
358
|
+
return self._submit_element(json_data, self.model.SdcMeta.create_form, instance)
|
|
357
359
|
|
|
358
360
|
def _save_element(self, json_data):
|
|
359
361
|
instance = self._load_model().get(pk=json_data['args']['data']['pk'])
|
|
360
362
|
instance.scope = self.scope
|
|
361
|
-
return self._submit_element(json_data, self.model.edit_form, instance)
|
|
363
|
+
return self._submit_element(json_data, self.model.SdcMeta.edit_form, instance)
|
|
362
364
|
|
|
363
365
|
def _upload_file(self, json_data):
|
|
364
366
|
file_data = json_data['args']
|
|
@@ -416,20 +418,20 @@ class SDCModelConsumer(WebsocketConsumer):
|
|
|
416
418
|
'type': json_data['event_type'],
|
|
417
419
|
'event_id': json_data['event_id'],
|
|
418
420
|
'data': {'instance': new_instance},
|
|
419
|
-
'html': self._render(self.model.html_form_template,
|
|
421
|
+
'html': self._render(self.model.SdcMeta.html_form_template,
|
|
420
422
|
{'instance': form_instance.instance, 'form': form_instance},
|
|
421
423
|
json_data),
|
|
422
424
|
'is_error': not is_valid
|
|
423
425
|
}))
|
|
424
426
|
|
|
425
427
|
def _load_list_view(self, json_data):
|
|
426
|
-
if self.model.html_list_template is None:
|
|
428
|
+
if self.model.SdcMeta.html_list_template is None:
|
|
427
429
|
raise NotImplemented()
|
|
428
430
|
|
|
429
431
|
self.send(text_data=json.dumps({
|
|
430
432
|
'type': json_data['event_type'],
|
|
431
433
|
'event_id': json_data['event_id'],
|
|
432
|
-
'html': self._render(self.model.html_list_template, {'instances': self._load_model()}, json_data),
|
|
434
|
+
'html': self._render(self.model.SdcMeta.html_list_template, {'instances': self._load_model()}, json_data),
|
|
433
435
|
'is_error': False
|
|
434
436
|
}))
|
|
435
437
|
|
|
@@ -49,22 +49,25 @@ class AddModelManager():
|
|
|
49
49
|
self._check_if_sdcmodel_imported(model_path)
|
|
50
50
|
f = open(model_path, 'a')
|
|
51
51
|
|
|
52
|
-
search_form_def = "\n".join([
|
|
53
|
-
'class {2}SearchForm(AbstractSearchForm):',
|
|
54
|
-
'{0}CHOICES = (("id", "Id"),)',
|
|
55
|
-
'{0}PLACEHOLDER = ""',
|
|
56
|
-
'{0}DEFAULT_CHOICES = CHOICES[0][0]',
|
|
57
|
-
'{0}SEARCH_FIELDS = ("id",)',
|
|
58
|
-
]).format(options.SEP, self.app_name, self.model_name)
|
|
52
|
+
search_form_def = "\n".join([]).format(options.SEP, self.app_name, self.model_name)
|
|
59
53
|
|
|
60
54
|
class_def = "\n".join([
|
|
61
55
|
'class {2}(models.Model, SdcModel):',
|
|
62
|
-
'{0}
|
|
63
|
-
'{0}
|
|
64
|
-
'{0}
|
|
65
|
-
'{0}
|
|
56
|
+
'{0}class SearchForm(AbstractSearchForm):',
|
|
57
|
+
'{0}{0}"""A default search form used in the list view. You can delete it if you dont need it"""',
|
|
58
|
+
'{0}{0}CHOICES = (("id", "Id"),)',
|
|
59
|
+
'{0}{0}PLACEHOLDER = ""',
|
|
60
|
+
'{0}{0}DEFAULT_CHOICES = CHOICES[0][0]',
|
|
61
|
+
'{0}{0}SEARCH_FIELDS = ("id",)',
|
|
62
|
+
'',
|
|
63
|
+
'{0}class _SdcMeta:',
|
|
64
|
+
'{0}{0}"""Meta data information needed to manage all SDC operations."""',
|
|
65
|
+
'{0}{0}edit_form = "{1}.forms.{2}Form"',
|
|
66
|
+
'{0}{0}create_form = "{1}.forms.{2}Form"',
|
|
67
|
+
'{0}{0}html_list_template = "{1}/models/{2}/{2}_list.html"',
|
|
68
|
+
'{0}{0}html_detail_template = "{1}/models/{2}/{2}_details.html"',
|
|
66
69
|
'',
|
|
67
|
-
'{0}@classmethod\n{0}def render(cls, template_name, context=None, request=None, using=None):\n{0}{0}if template_name == cls.html_list_template:\n{0}{0}{0}sf =
|
|
70
|
+
'{0}@classmethod\n{0}def render(cls, template_name, context=None, request=None, using=None):\n{0}{0}if template_name == cls.SdcMeta.html_list_template:\n{0}{0}{0}sf = cls.SearchForm(data=context.get("filter", {{}}))\n{0}{0}{0}context = context | handle_search_form(context["instances"], sf, range=10)\n{0}{0}return render_to_string(template_name=template_name, context=context, request=request, using=using)',
|
|
68
71
|
'',
|
|
69
72
|
'{0}@classmethod\n{0}def is_authorised(cls, user, action, obj):\n{0}{0}return True',
|
|
70
73
|
'',
|
|
@@ -44,26 +44,26 @@ class Command(BaseCommand):
|
|
|
44
44
|
'model_file': os.path.join(options.PROJECT_ROOT, model.__module__.replace('.', os.path.sep) + '.py'),
|
|
45
45
|
'model_file_line': self._get_class_line_number(
|
|
46
46
|
os.path.join(options.PROJECT_ROOT, model.__module__.replace('.', os.path.sep) + '.py'), model.__name__),
|
|
47
|
-
'create_form': self._separate_file_class(model.create_form),
|
|
48
|
-
'edit_form': self._separate_file_class(model.edit_form)
|
|
47
|
+
'create_form': self._separate_file_class(model.SdcMeta.create_form),
|
|
48
|
+
'edit_form': self._separate_file_class(model.SdcMeta.edit_form)
|
|
49
49
|
|
|
50
50
|
}
|
|
51
51
|
|
|
52
|
-
if model.html_detail_template:
|
|
52
|
+
if model.SdcMeta.html_detail_template:
|
|
53
53
|
try:
|
|
54
|
-
mi['html_detail_template'] = get_template(model.html_detail_template).origin.name
|
|
54
|
+
mi['html_detail_template'] = get_template(model.SdcMeta.html_detail_template).origin.name
|
|
55
55
|
except:
|
|
56
56
|
pass
|
|
57
57
|
|
|
58
|
-
if model.html_list_template:
|
|
58
|
+
if model.SdcMeta.html_list_template:
|
|
59
59
|
try:
|
|
60
|
-
mi['html_list_template'] = get_template(model.html_list_template).origin.name
|
|
60
|
+
mi['html_list_template'] = get_template(model.SdcMeta.html_list_template).origin.name
|
|
61
61
|
except:
|
|
62
62
|
pass
|
|
63
63
|
|
|
64
|
-
if model.html_form_template:
|
|
64
|
+
if model.SdcMeta.html_form_template:
|
|
65
65
|
try:
|
|
66
|
-
mi['html_form_template'] = get_template(model.html_form_template).origin.name
|
|
66
|
+
mi['html_form_template'] = get_template(model.SdcMeta.html_form_template).origin.name
|
|
67
67
|
except:
|
|
68
68
|
pass
|
|
69
69
|
|
|
@@ -11,10 +11,13 @@ from django.apps import apps
|
|
|
11
11
|
from channels.layers import get_channel_layer
|
|
12
12
|
from django.contrib.auth import get_user_model
|
|
13
13
|
|
|
14
|
+
from sdc_core.sdc_extentions.forms import AbstractSearchForm
|
|
15
|
+
|
|
14
16
|
User = get_user_model()
|
|
15
17
|
|
|
16
18
|
_ALL_MODELS = None
|
|
17
19
|
|
|
20
|
+
|
|
18
21
|
def all_models():
|
|
19
22
|
global _ALL_MODELS
|
|
20
23
|
if _ALL_MODELS is None:
|
|
@@ -23,6 +26,7 @@ def all_models():
|
|
|
23
26
|
}
|
|
24
27
|
return _ALL_MODELS
|
|
25
28
|
|
|
29
|
+
|
|
26
30
|
class ConsumerSerializer(Serializer):
|
|
27
31
|
|
|
28
32
|
def handle_m2m_field(self, obj, field):
|
|
@@ -42,16 +46,47 @@ class ConsumerSerializer(Serializer):
|
|
|
42
46
|
return field.value_from_object(obj).url
|
|
43
47
|
return super()._value_from_field(obj, field)
|
|
44
48
|
|
|
49
|
+
|
|
50
|
+
_SDC_META_DEFAULT = {'edit_form': None,
|
|
51
|
+
'create_form': None,
|
|
52
|
+
'html_list_template': None,
|
|
53
|
+
'html_detail_template': None,
|
|
54
|
+
'html_form_template': getattr(settings, 'MODEL_FORM_TEMPLATE', "elements/form.html")
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
class classproperty(property):
|
|
58
|
+
def __get__(self, obj, objtype=None):
|
|
59
|
+
return super().__get__(objtype)
|
|
60
|
+
def __set__(self, obj, value):
|
|
61
|
+
super().__set__(type(obj), value)
|
|
62
|
+
|
|
63
|
+
class _SdcMetaDummy:
|
|
64
|
+
_sdc_checked = False
|
|
65
|
+
|
|
45
66
|
class SdcModel():
|
|
46
67
|
__is_sdc_model__ = True
|
|
47
|
-
edit_form = None
|
|
48
|
-
create_form = None
|
|
49
|
-
html_list_template = None
|
|
50
|
-
html_detail_template = None
|
|
51
|
-
html_form_template = getattr(settings, 'MODEL_FORM_TEMPLATE', "elements/form.html")
|
|
52
|
-
apply_filter = None
|
|
53
68
|
_scope = None
|
|
54
69
|
|
|
70
|
+
class SearchForm(AbstractSearchForm):
|
|
71
|
+
CHOICES = (("id", "Id"),)
|
|
72
|
+
PLACEHOLDER = ""
|
|
73
|
+
DEFAULT_CHOICES = CHOICES[0][0]
|
|
74
|
+
SEARCH_FIELDS = ("id",)
|
|
75
|
+
|
|
76
|
+
@classproperty
|
|
77
|
+
def SdcMeta(cls):
|
|
78
|
+
if not hasattr(cls, '_SdcMeta'):
|
|
79
|
+
setattr(cls, '_SdcMeta', _SdcMetaDummy())
|
|
80
|
+
|
|
81
|
+
sdc_meta = getattr(cls, '_SdcMeta')
|
|
82
|
+
|
|
83
|
+
if not getattr(sdc_meta, '_sdc_checked', False):
|
|
84
|
+
setattr(sdc_meta,'_sdc_checked', True)
|
|
85
|
+
for k, v in _SDC_META_DEFAULT.items():
|
|
86
|
+
if not hasattr(sdc_meta, k):
|
|
87
|
+
setattr(sdc_meta, k, getattr(cls, k, v))
|
|
88
|
+
return sdc_meta
|
|
89
|
+
|
|
55
90
|
@property
|
|
56
91
|
def scope(self) -> dict[str: any]:
|
|
57
92
|
return self._scope
|
|
@@ -73,7 +108,7 @@ class SdcModel():
|
|
|
73
108
|
raise NotImplemented
|
|
74
109
|
|
|
75
110
|
@classmethod
|
|
76
|
-
def data_load(cls, user: User, action: str, obj: dict[str: any]) -> QuerySet|None:
|
|
111
|
+
def data_load(cls, user: User, action: str, obj: dict[str: any]) -> QuerySet | None:
|
|
77
112
|
return None
|
|
78
113
|
|
|
79
114
|
|
|
@@ -5,13 +5,12 @@ from django.http import HttpResponse
|
|
|
5
5
|
from django.template.loader import render_to_string
|
|
6
6
|
from django.core.serializers.json import DjangoJSONEncoder
|
|
7
7
|
|
|
8
|
-
|
|
9
8
|
NEXT = 'next_controller'
|
|
10
9
|
|
|
11
10
|
|
|
12
|
-
|
|
13
|
-
def sdc_link_factory(controller: str = None, link_data: dict = None, add_sdc_index : bool = True) -> str:
|
|
11
|
+
def sdc_link_factory(controller: str = None, link_data: dict = None, add_sdc_index: bool = True) -> str:
|
|
14
12
|
"""
|
|
13
|
+
|
|
15
14
|
:param controller: path to controller
|
|
16
15
|
:type controller: str, optional
|
|
17
16
|
:param link_data: arguments passed to the new redirected controller
|
|
@@ -51,16 +50,14 @@ def send_redirect(controller: str = None, back: bool = False, link_data: dict =
|
|
|
51
50
|
send_redirect is a simple way to redirect a client to another SDC controller. Set the controller argument according to
|
|
52
51
|
the rules of the sdc_tools.sdc_navigator. Following you see some examples:
|
|
53
52
|
|
|
54
|
-
|
|
55
53
|
- /view-a/view-b -> view-b as subview of view-a
|
|
56
54
|
- */view-b -> keeps first view as it is and view-b as subview
|
|
57
55
|
- ../view-b -> replaces current latest subview by view-b
|
|
58
56
|
- ./view-b -> adds view-b as next latest subview to the current path
|
|
59
57
|
|
|
60
|
-
|
|
61
58
|
:param controller: path to controller
|
|
62
59
|
:type controller: str, optional
|
|
63
|
-
:param back: if
|
|
60
|
+
:param back: if ``True`` the redirect url is equal to ``..``, default is ``False``
|
|
64
61
|
:type back: boolean, optional
|
|
65
62
|
:param link_data: arguments passed to the new redirected controller
|
|
66
63
|
:type link_data: dict, optional
|
|
@@ -86,7 +83,7 @@ def send_redirect(controller: str = None, back: bool = False, link_data: dict =
|
|
|
86
83
|
return HttpResponse(json.dumps(kwargs, cls=DjangoJSONEncoder), status=301, content_type="application/json")
|
|
87
84
|
|
|
88
85
|
|
|
89
|
-
def send_success(template_name: str = None, context: dict = None, request
|
|
86
|
+
def send_success(template_name: str = None, context: dict = None, request=None, status='success', **kwargs):
|
|
90
87
|
"""
|
|
91
88
|
|
|
92
89
|
:param template_name: HTML template name
|
|
@@ -110,5 +107,6 @@ def send_error(template_name: str = None, context: dict = None, request=None, st
|
|
|
110
107
|
kwargs['html'] = render_to_string(template_name, request=request, context=context)
|
|
111
108
|
return HttpResponse(json.dumps(kwargs, cls=DjangoJSONEncoder), status=status, content_type="application/json")
|
|
112
109
|
|
|
110
|
+
|
|
113
111
|
def send_controller(controller_name: str):
|
|
114
|
-
return HttpResponse('<%s></%s>' % (controller_name,controller_name), content_type="text/html")
|
|
112
|
+
return HttpResponse('<%s></%s>' % (controller_name, controller_name), content_type="text/html")
|
{simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/template_files/Assets/gulpfile.jsx
RENAMED
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
'use strict'
|
|
2
2
|
|
|
3
3
|
const {src, dest, series, parallel} = require('gulp');
|
|
4
|
-
const path = require("path");
|
|
5
4
|
const webpack = require('webpack-stream');
|
|
5
|
+
const copy = require('gulp-copy');
|
|
6
|
+
|
|
7
|
+
process.env.JS_CILENT_FILE_EXTENTIONS = ['.js', '.json'];
|
|
6
8
|
|
|
7
9
|
const {
|
|
8
10
|
sdc_scss,
|
|
@@ -20,11 +22,20 @@ function webpack_javascript() {
|
|
|
20
22
|
.pipe(dest('../static'));
|
|
21
23
|
}
|
|
22
24
|
|
|
25
|
+
function copy_statics() {
|
|
26
|
+
return src('./static/**/*')
|
|
27
|
+
.pipe(copy('../static', { prefix: 1 }))
|
|
28
|
+
.on('end', () => {
|
|
29
|
+
console.log('Contents copied successfully!');
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
|
|
23
33
|
exports.webpack = webpack_javascript;
|
|
24
34
|
exports.scss = sdc_scss;
|
|
25
35
|
exports.link_files = sdc_link_files;
|
|
26
36
|
exports.clean = sdc_clean;
|
|
27
|
-
exports.
|
|
37
|
+
exports.copy_statics = copy_statics;
|
|
38
|
+
exports.default = series(copy_statics, sdc_default_build_factory(webpack_javascript));
|
|
28
39
|
exports.watch_scss = sdc_watch_scss;
|
|
29
40
|
exports.watch_webpack = sdc_watch_webpack_factory(webpack_javascript);
|
|
30
41
|
|
|
@@ -7,12 +7,26 @@ class §CONTROLLERNAMETITLE§Controller extends AbstractSDC {
|
|
|
7
7
|
super();
|
|
8
8
|
this.contentUrl = "§TEMPLATEURL§"; //§TAGNAME§
|
|
9
9
|
|
|
10
|
+
/**
|
|
11
|
+
* Uncomment the following line to make sure the HTML template
|
|
12
|
+
* of this controller is not cached and reloaded for every instance
|
|
13
|
+
* of this controller.
|
|
14
|
+
*/
|
|
15
|
+
// this.contentReload = true;
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Uncomment the following line to make this controller asynchronous.
|
|
19
|
+
* This means that the parent controller finishes loading without
|
|
20
|
+
* waiting for this controller
|
|
21
|
+
*/
|
|
22
|
+
// this.load_async = true;
|
|
23
|
+
|
|
10
24
|
/**
|
|
11
25
|
* Events is an array of dom events.
|
|
12
26
|
* The pattern is {'event': {'dom_selector': handler}}
|
|
13
|
-
*
|
|
27
|
+
* Uncomment the following line to add events;
|
|
14
28
|
*/
|
|
15
|
-
// this.events.unshift({'click': {'.header-sample': (ev, $elem)=> $elem.css('border', '2px solid black')}}
|
|
29
|
+
// this.events.unshift({'click': {'.header-sample': (ev, $elem)=> $elem.css('border', '2px solid black')}});
|
|
16
30
|
}
|
|
17
31
|
|
|
18
32
|
//-------------------------------------------------//
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
simpleDomControl
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/management/commands/__init__.py
RENAMED
|
File without changes
|
{simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/management/commands/_private.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/management/commands/init_add/options.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/management/commands/init_add/utils.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/management/commands/sdc_init.py
RENAMED
|
File without changes
|
{simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/management/commands/sdc_is_installed.py
RENAMED
|
File without changes
|
{simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/management/commands/sdc_new_model.py
RENAMED
|
File without changes
|
|
File without changes
|
{simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/management/commands/sdc_update_links.py
RENAMED
|
File without changes
|
{simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/management/commands/sdc_update_url.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/sdc_extentions/import_manager.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
|
{simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/template_files/models/detail.html
RENAMED
|
File without changes
|
{simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/template_files/models/list.html
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/template_files/sdc_views.py.txt
RENAMED
|
File without changes
|
|
File without changes
|
{simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/template_files/templates/base.html
RENAMED
|
File without changes
|
{simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_core/template_files/templates/index.html
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
|
{simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/Assets/tests/sdc_tools.test.js
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
|
{simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/templates/elements/inline_form.html
RENAMED
|
File without changes
|
|
File without changes
|
{simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/templates/sdc_tools/sdc/dummy_sdc.html
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/templates/sdc_tools/sdc/sdc_dummy.html
RENAMED
|
File without changes
|
{simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_tools/templates/sdc_tools/sdc/sdc_error.html
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
|
{simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_user/Assets/src/sdc_user/sdc_user.style.scss
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
|
{simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_user/templates/sdc_user/sdc/sdc_login.html
RENAMED
|
File without changes
|
{simpledomcontrol-0.55.3 → simpledomcontrol-0.56.0}/sdc_user/templates/sdc_user/sdc/sdc_logout.html
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|