diff options
author | CoprDistGit <infra@openeuler.org> | 2023-05-10 07:21:49 +0000 |
---|---|---|
committer | CoprDistGit <infra@openeuler.org> | 2023-05-10 07:21:49 +0000 |
commit | e8543d2a62e09b593cdbdb5ebe21f51cda546895 (patch) | |
tree | 3705083d94918f9e77c0bdd041e51be3417df429 | |
parent | efb23f5d7ddf711199cf7e134ee2cca0680d1033 (diff) |
automatic import of python-djangocms-cascade
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | python-djangocms-cascade.spec | 526 | ||||
-rw-r--r-- | sources | 1 |
3 files changed, 528 insertions, 0 deletions
@@ -0,0 +1 @@ +/djangocms-cascade-2.3.14.tar.gz diff --git a/python-djangocms-cascade.spec b/python-djangocms-cascade.spec new file mode 100644 index 0000000..2ec4150 --- /dev/null +++ b/python-djangocms-cascade.spec @@ -0,0 +1,526 @@ +%global _empty_manifest_terminate_build 0 +Name: python-djangocms-cascade +Version: 2.3.14 +Release: 1 +Summary: Build Single Page Applications using the Django-CMS plugin system +License: MIT +URL: https://github.com/jrief/djangocms-cascade +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/f8/1b/34003791c3288cc18e909420162f35b327c348c76c0b59768b4199528b68/djangocms-cascade-2.3.14.tar.gz +BuildArch: noarch + +Requires: python3-django +Requires: python3-django-classy-tags +Requires: python3-django-cms +Requires: python3-django-entangled +Requires: python3-djangocms-text-ckeditor +Requires: python3-django-select2 +Requires: python3-requests + +%description +# djangocms-cascade + +[](https://github.com/jrief/djangocms-cascade/actions) +[](https://pypi.python.org/pypi/djangocms-cascade) +[](https://pypi.python.org/pypi/djangocms-cascade) +[](https://pypi.python.org/pypi/djangocms-cascade) +[](https://github.com/jrief/djangocms-cascade/blob/master/LICENSE) + +The Swiss army knife for working with Django-CMS plugins. + +## Why Use DjangoCMS-Cascade? + +**DjangoCMS-Cascade** is a collection of plugins for Django-CMS +[placeholders](http://docs.django-cms.org/en/latest/introduction/templates_placeholders.html#templates-placeholders). +Instead of creating one database model for each CMS plugin, Cascade shares one database model for +all of them. The payload then is stored inside a JSON field instead of declaring each attribute +explicitly. This furthermore prevents us to handle all kind of nasty database migration problems. + + +## Features + +### Perfect for nested grid systems + +Since **Cascade** keeps track on the widths of all columns, ``<img>`` and ``<picture>`` elements can +be rendered in a responsive way, so that the browser only loads the image required for the visible +viewport. + + +### Extend plugins with additional features + +Using a JSON field to store the payload gives us much more flexibility. We can for instance enrich +our plugins with additional attributes, configured during runtime. This can be used to optionally +share attributes across different plugins (referenced by an alias name), add CSS classes and styles, +or offer alternative rendering templates. + + +### Set links onto your own views + +Another nice aspect of this approach is, that we can override the functionality used to set links +onto pages which are not part of the CMS. This is specially useful, since we do not want to +re-implement this functionality for all plugins, which require links, ie. images, pictures, +buttons and text-links. + + +### Copy content and paste it somewhere else + +Since the payload of plugins is already serialized, we can even copy them from one site to another +site supporting **djangocms-cascade**. + + +## Documentation + +Find detailed documentation on [ReadTheDocs](http://djangocms-cascade.readthedocs.io/en/latest/). + +Please see the [Release Notes](http://djangocms-cascade.readthedocs.io/en/latest/changelog.html) +before upgrading from an older version. + + +## Architecture + +### It's pluggable + +**DjangoCMS-Cascade** is very modular, keeping its CMS modules in functional groups. These groups +have to be activated independently in the project's `settings.py`. It also is possible to activate +only certain plugins out of a group. Currently Bootstrap-4 is implemented, but this app could +easily be extended for other CSS frameworks. + +### Configurable individually + +Each **Cascade** plugin can be styled individually. The site-administrator can specify which CSS +styles and CSS classes can be added to each plugin. Then the page-editor can pick one of the +allowed styles to adopt his elements accordingly. + + +### Reuse your data + +Each **Cascade** plugin can be configured by the site-administrator to share some or all of its +data fields. This for instance is handy, to keep references onto external URLs in a central place. +Or is can be used to resize all images sharing a cetrain property in one go. + + +### Segment the DOM + +It is even possible to group plugins into seperate evaluation contexts. This for instance is used +to render different Plugins, depending on whether a user is authenticated or anonymous. + + +### Responsive Images + +In modern web development, images must adopt to the column width in which they are rendered. +Therefore the ``<img ...>`` tag, in addition to the well known ``src`` attribute, also accepts +additional ``srcset``'s, one for each media query. Here **djangocms-cascade** calculates the +required widths for each image, depending on the current column layout considering all media +breakpoints. + +This is also implemented for the ``<picture>`` element with all of it's children, normally +``<source srcset="...">``. + +It also supports resolutions of more than one physical pixel per logical pixel as found in Retina +displays. + + +### Other Features + +* Use the scaffolding technique from the preferred CSS framework to subdivide a placeholder into a + [grid system](http://getbootstrap.com/css/#grid). +* Make full usage of responsive techniques, by allowing + [stacked to horizontal](http://getbootstrap.com/css/#grid-example-basic) classes per element. +* Use styled [buttons](http://getbootstrap.com/css/#buttons) to add links. +* Wrap special content into a [Jumbotron](http://getbootstrap.com/components/#jumbotron) or a + [Carousel](http://getbootstrap.com/javascript/#carousel). +* Add ``<img>`` and ``<picture>`` elements in a responsive way, so that more than one image URL + points onto the resized sources, one for each viewport using the ``srcset`` tags or the + ``<source>`` elements. +* Use segmentation to conditionally render parts of the DOM. +* Temporarily hide a plugin to show up in the DOM. +* Upload an self composed font from [Fontello](http://fontello.com/) and use it's icon in plain text + or as framed eye catchers. +* It is very easy to integrate additional elements from the preferred CSS framework. For instance, + implementing the Bootstrap Carousel, requires only 50 lines of Python code and two simple Django + templates. +* Since all the data is stored in JSON, no database migration is required if a field is added, + modified or removed from the plugin. +* Currently **Bootstrap-4** is supported, but other CSS frameworks can be easily added in a + pluggable manner. +* It follows the "batteries included" philosophy, but still remains very modular. + +In addition to easily implement any kind of plugin, **DjangoCMS-Cascade** makes it possible to add +reusable helpers. Such a helper enriches a plugin with an additional, configurable functionality: + +* By making some of the plugin fields sharable, one can reuse these values for other plugins of the + same kind. This for instance is handy for the image and picture plugin, so that images always are + resized to predefined values. +* By allowing extra fields, one can add an optional ``id`` tag, CSS classes and inline styles. This + is configurable on a plugin and site base. +* It is possible to customize the rendering templates shipped with the plugins. +* Since all data is JSON, you can dump the content of one placeholder and insert it into another one, + even on a foreign site. This for instance is useful to transfer pages from the staging site to production. + + +### Help appreciated + +If someone wants to start a subproject for a CSS framework, other than Bootstrap-4/5. + +If you are a native English speaker, please check the documentation for spelling mistakes and +grammar, since English is not my mother tongue. + + +[](https://twitter.com/jacobrief) + + +%package -n python3-djangocms-cascade +Summary: Build Single Page Applications using the Django-CMS plugin system +Provides: python-djangocms-cascade +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-djangocms-cascade +# djangocms-cascade + +[](https://github.com/jrief/djangocms-cascade/actions) +[](https://pypi.python.org/pypi/djangocms-cascade) +[](https://pypi.python.org/pypi/djangocms-cascade) +[](https://pypi.python.org/pypi/djangocms-cascade) +[](https://github.com/jrief/djangocms-cascade/blob/master/LICENSE) + +The Swiss army knife for working with Django-CMS plugins. + +## Why Use DjangoCMS-Cascade? + +**DjangoCMS-Cascade** is a collection of plugins for Django-CMS +[placeholders](http://docs.django-cms.org/en/latest/introduction/templates_placeholders.html#templates-placeholders). +Instead of creating one database model for each CMS plugin, Cascade shares one database model for +all of them. The payload then is stored inside a JSON field instead of declaring each attribute +explicitly. This furthermore prevents us to handle all kind of nasty database migration problems. + + +## Features + +### Perfect for nested grid systems + +Since **Cascade** keeps track on the widths of all columns, ``<img>`` and ``<picture>`` elements can +be rendered in a responsive way, so that the browser only loads the image required for the visible +viewport. + + +### Extend plugins with additional features + +Using a JSON field to store the payload gives us much more flexibility. We can for instance enrich +our plugins with additional attributes, configured during runtime. This can be used to optionally +share attributes across different plugins (referenced by an alias name), add CSS classes and styles, +or offer alternative rendering templates. + + +### Set links onto your own views + +Another nice aspect of this approach is, that we can override the functionality used to set links +onto pages which are not part of the CMS. This is specially useful, since we do not want to +re-implement this functionality for all plugins, which require links, ie. images, pictures, +buttons and text-links. + + +### Copy content and paste it somewhere else + +Since the payload of plugins is already serialized, we can even copy them from one site to another +site supporting **djangocms-cascade**. + + +## Documentation + +Find detailed documentation on [ReadTheDocs](http://djangocms-cascade.readthedocs.io/en/latest/). + +Please see the [Release Notes](http://djangocms-cascade.readthedocs.io/en/latest/changelog.html) +before upgrading from an older version. + + +## Architecture + +### It's pluggable + +**DjangoCMS-Cascade** is very modular, keeping its CMS modules in functional groups. These groups +have to be activated independently in the project's `settings.py`. It also is possible to activate +only certain plugins out of a group. Currently Bootstrap-4 is implemented, but this app could +easily be extended for other CSS frameworks. + +### Configurable individually + +Each **Cascade** plugin can be styled individually. The site-administrator can specify which CSS +styles and CSS classes can be added to each plugin. Then the page-editor can pick one of the +allowed styles to adopt his elements accordingly. + + +### Reuse your data + +Each **Cascade** plugin can be configured by the site-administrator to share some or all of its +data fields. This for instance is handy, to keep references onto external URLs in a central place. +Or is can be used to resize all images sharing a cetrain property in one go. + + +### Segment the DOM + +It is even possible to group plugins into seperate evaluation contexts. This for instance is used +to render different Plugins, depending on whether a user is authenticated or anonymous. + + +### Responsive Images + +In modern web development, images must adopt to the column width in which they are rendered. +Therefore the ``<img ...>`` tag, in addition to the well known ``src`` attribute, also accepts +additional ``srcset``'s, one for each media query. Here **djangocms-cascade** calculates the +required widths for each image, depending on the current column layout considering all media +breakpoints. + +This is also implemented for the ``<picture>`` element with all of it's children, normally +``<source srcset="...">``. + +It also supports resolutions of more than one physical pixel per logical pixel as found in Retina +displays. + + +### Other Features + +* Use the scaffolding technique from the preferred CSS framework to subdivide a placeholder into a + [grid system](http://getbootstrap.com/css/#grid). +* Make full usage of responsive techniques, by allowing + [stacked to horizontal](http://getbootstrap.com/css/#grid-example-basic) classes per element. +* Use styled [buttons](http://getbootstrap.com/css/#buttons) to add links. +* Wrap special content into a [Jumbotron](http://getbootstrap.com/components/#jumbotron) or a + [Carousel](http://getbootstrap.com/javascript/#carousel). +* Add ``<img>`` and ``<picture>`` elements in a responsive way, so that more than one image URL + points onto the resized sources, one for each viewport using the ``srcset`` tags or the + ``<source>`` elements. +* Use segmentation to conditionally render parts of the DOM. +* Temporarily hide a plugin to show up in the DOM. +* Upload an self composed font from [Fontello](http://fontello.com/) and use it's icon in plain text + or as framed eye catchers. +* It is very easy to integrate additional elements from the preferred CSS framework. For instance, + implementing the Bootstrap Carousel, requires only 50 lines of Python code and two simple Django + templates. +* Since all the data is stored in JSON, no database migration is required if a field is added, + modified or removed from the plugin. +* Currently **Bootstrap-4** is supported, but other CSS frameworks can be easily added in a + pluggable manner. +* It follows the "batteries included" philosophy, but still remains very modular. + +In addition to easily implement any kind of plugin, **DjangoCMS-Cascade** makes it possible to add +reusable helpers. Such a helper enriches a plugin with an additional, configurable functionality: + +* By making some of the plugin fields sharable, one can reuse these values for other plugins of the + same kind. This for instance is handy for the image and picture plugin, so that images always are + resized to predefined values. +* By allowing extra fields, one can add an optional ``id`` tag, CSS classes and inline styles. This + is configurable on a plugin and site base. +* It is possible to customize the rendering templates shipped with the plugins. +* Since all data is JSON, you can dump the content of one placeholder and insert it into another one, + even on a foreign site. This for instance is useful to transfer pages from the staging site to production. + + +### Help appreciated + +If someone wants to start a subproject for a CSS framework, other than Bootstrap-4/5. + +If you are a native English speaker, please check the documentation for spelling mistakes and +grammar, since English is not my mother tongue. + + +[](https://twitter.com/jacobrief) + + +%package help +Summary: Development documents and examples for djangocms-cascade +Provides: python3-djangocms-cascade-doc +%description help +# djangocms-cascade + +[](https://github.com/jrief/djangocms-cascade/actions) +[](https://pypi.python.org/pypi/djangocms-cascade) +[](https://pypi.python.org/pypi/djangocms-cascade) +[](https://pypi.python.org/pypi/djangocms-cascade) +[](https://github.com/jrief/djangocms-cascade/blob/master/LICENSE) + +The Swiss army knife for working with Django-CMS plugins. + +## Why Use DjangoCMS-Cascade? + +**DjangoCMS-Cascade** is a collection of plugins for Django-CMS +[placeholders](http://docs.django-cms.org/en/latest/introduction/templates_placeholders.html#templates-placeholders). +Instead of creating one database model for each CMS plugin, Cascade shares one database model for +all of them. The payload then is stored inside a JSON field instead of declaring each attribute +explicitly. This furthermore prevents us to handle all kind of nasty database migration problems. + + +## Features + +### Perfect for nested grid systems + +Since **Cascade** keeps track on the widths of all columns, ``<img>`` and ``<picture>`` elements can +be rendered in a responsive way, so that the browser only loads the image required for the visible +viewport. + + +### Extend plugins with additional features + +Using a JSON field to store the payload gives us much more flexibility. We can for instance enrich +our plugins with additional attributes, configured during runtime. This can be used to optionally +share attributes across different plugins (referenced by an alias name), add CSS classes and styles, +or offer alternative rendering templates. + + +### Set links onto your own views + +Another nice aspect of this approach is, that we can override the functionality used to set links +onto pages which are not part of the CMS. This is specially useful, since we do not want to +re-implement this functionality for all plugins, which require links, ie. images, pictures, +buttons and text-links. + + +### Copy content and paste it somewhere else + +Since the payload of plugins is already serialized, we can even copy them from one site to another +site supporting **djangocms-cascade**. + + +## Documentation + +Find detailed documentation on [ReadTheDocs](http://djangocms-cascade.readthedocs.io/en/latest/). + +Please see the [Release Notes](http://djangocms-cascade.readthedocs.io/en/latest/changelog.html) +before upgrading from an older version. + + +## Architecture + +### It's pluggable + +**DjangoCMS-Cascade** is very modular, keeping its CMS modules in functional groups. These groups +have to be activated independently in the project's `settings.py`. It also is possible to activate +only certain plugins out of a group. Currently Bootstrap-4 is implemented, but this app could +easily be extended for other CSS frameworks. + +### Configurable individually + +Each **Cascade** plugin can be styled individually. The site-administrator can specify which CSS +styles and CSS classes can be added to each plugin. Then the page-editor can pick one of the +allowed styles to adopt his elements accordingly. + + +### Reuse your data + +Each **Cascade** plugin can be configured by the site-administrator to share some or all of its +data fields. This for instance is handy, to keep references onto external URLs in a central place. +Or is can be used to resize all images sharing a cetrain property in one go. + + +### Segment the DOM + +It is even possible to group plugins into seperate evaluation contexts. This for instance is used +to render different Plugins, depending on whether a user is authenticated or anonymous. + + +### Responsive Images + +In modern web development, images must adopt to the column width in which they are rendered. +Therefore the ``<img ...>`` tag, in addition to the well known ``src`` attribute, also accepts +additional ``srcset``'s, one for each media query. Here **djangocms-cascade** calculates the +required widths for each image, depending on the current column layout considering all media +breakpoints. + +This is also implemented for the ``<picture>`` element with all of it's children, normally +``<source srcset="...">``. + +It also supports resolutions of more than one physical pixel per logical pixel as found in Retina +displays. + + +### Other Features + +* Use the scaffolding technique from the preferred CSS framework to subdivide a placeholder into a + [grid system](http://getbootstrap.com/css/#grid). +* Make full usage of responsive techniques, by allowing + [stacked to horizontal](http://getbootstrap.com/css/#grid-example-basic) classes per element. +* Use styled [buttons](http://getbootstrap.com/css/#buttons) to add links. +* Wrap special content into a [Jumbotron](http://getbootstrap.com/components/#jumbotron) or a + [Carousel](http://getbootstrap.com/javascript/#carousel). +* Add ``<img>`` and ``<picture>`` elements in a responsive way, so that more than one image URL + points onto the resized sources, one for each viewport using the ``srcset`` tags or the + ``<source>`` elements. +* Use segmentation to conditionally render parts of the DOM. +* Temporarily hide a plugin to show up in the DOM. +* Upload an self composed font from [Fontello](http://fontello.com/) and use it's icon in plain text + or as framed eye catchers. +* It is very easy to integrate additional elements from the preferred CSS framework. For instance, + implementing the Bootstrap Carousel, requires only 50 lines of Python code and two simple Django + templates. +* Since all the data is stored in JSON, no database migration is required if a field is added, + modified or removed from the plugin. +* Currently **Bootstrap-4** is supported, but other CSS frameworks can be easily added in a + pluggable manner. +* It follows the "batteries included" philosophy, but still remains very modular. + +In addition to easily implement any kind of plugin, **DjangoCMS-Cascade** makes it possible to add +reusable helpers. Such a helper enriches a plugin with an additional, configurable functionality: + +* By making some of the plugin fields sharable, one can reuse these values for other plugins of the + same kind. This for instance is handy for the image and picture plugin, so that images always are + resized to predefined values. +* By allowing extra fields, one can add an optional ``id`` tag, CSS classes and inline styles. This + is configurable on a plugin and site base. +* It is possible to customize the rendering templates shipped with the plugins. +* Since all data is JSON, you can dump the content of one placeholder and insert it into another one, + even on a foreign site. This for instance is useful to transfer pages from the staging site to production. + + +### Help appreciated + +If someone wants to start a subproject for a CSS framework, other than Bootstrap-4/5. + +If you are a native English speaker, please check the documentation for spelling mistakes and +grammar, since English is not my mother tongue. + + +[](https://twitter.com/jacobrief) + + +%prep +%autosetup -n djangocms-cascade-2.3.14 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-djangocms-cascade -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Wed May 10 2023 Python_Bot <Python_Bot@openeuler.org> - 2.3.14-1 +- Package Spec generated @@ -0,0 +1 @@ +96c6a815dab76ca44eaf9e7ddfb469ff djangocms-cascade-2.3.14.tar.gz |