dynamicweb/datacenterlight/cms_plugins.py

135 lines
3.9 KiB
Python
Raw Normal View History

2018-02-28 04:09:19 +05:30
from cms.plugin_base import CMSPluginBase
from cms.plugin_pool import plugin_pool
from cms.models.pluginmodel import CMSPlugin
from .cms_models import (
2018-03-02 02:05:42 +05:30
DCLBannerItemPluginModel, DCLBannerListPluginModel, DCLContactPluginModel,
DCLFooterPluginModel, DCLLinkPluginModel, DCLNavbarDropdownPluginModel,
DCLSectionIconPluginModel, DCLSectionImagePluginModel,
DCLSectionPluginModel,
2018-02-28 04:09:19 +05:30
)
from .models import VMTemplate
2018-02-28 04:09:19 +05:30
@plugin_pool.register_plugin
2018-03-02 02:05:42 +05:30
class DCLSectionPlugin(CMSPluginBase):
2018-02-28 04:09:19 +05:30
module = "Datacenterlight"
2018-03-02 02:05:42 +05:30
name = "DCL Section Plugin"
2018-02-28 04:09:19 +05:30
model = DCLSectionPluginModel
2018-03-02 02:05:42 +05:30
render_template = "datacenterlight/cms/section.html"
2018-02-28 04:09:19 +05:30
cache = False
2018-03-02 02:05:42 +05:30
allow_children = True
child_classes = ['DCLSectionIconPlugin', 'DCLSectionImagePlugin']
2018-02-28 04:09:19 +05:30
@plugin_pool.register_plugin
2018-03-02 02:05:42 +05:30
class DCLSectionIconPlugin(CMSPluginBase):
2018-02-28 04:09:19 +05:30
module = "Datacenterlight"
2018-03-02 02:05:42 +05:30
name = "DCL Section Icon Plugin"
model = DCLSectionIconPluginModel
render_template = "datacenterlight/cms/section_icon.html"
cache = False
require_parent = True
@plugin_pool.register_plugin
class DCLSectionImagePlugin(CMSPluginBase):
module = "Datacenterlight"
name = "DCL Section Image Plugin"
model = DCLSectionImagePluginModel
render_template = "datacenterlight/cms/section_image.html"
cache = False
require_parent = True
@plugin_pool.register_plugin
class DCLCalculatorPlugin(CMSPluginBase):
module = "Datacenterlight"
name = "DCL Calculator Plugin"
2018-02-28 04:09:19 +05:30
model = DCLSectionPluginModel
2018-03-02 02:05:42 +05:30
render_template = "datacenterlight/cms/calculator.html"
2018-02-28 04:09:19 +05:30
cache = False
def render(self, context, instance, placeholder):
context = super(DCLCalculatorPlugin, self).render(
context, instance, placeholder
)
context['templates'] = VMTemplate.objects.all()
return context
2018-02-28 04:09:19 +05:30
@plugin_pool.register_plugin
2018-03-02 02:05:42 +05:30
class DCLBannerListPlugin(CMSPluginBase):
2018-02-28 04:09:19 +05:30
module = "Datacenterlight"
2018-03-02 02:05:42 +05:30
name = "DCL Banner List Plugin"
model = DCLBannerListPluginModel
render_template = "datacenterlight/cms/banner_list.html"
2018-02-28 04:09:19 +05:30
cache = False
allow_children = True
2018-03-02 02:05:42 +05:30
child_classes = ['DCLBannerItemPlugin']
2018-02-28 04:09:19 +05:30
@plugin_pool.register_plugin
2018-03-02 02:05:42 +05:30
class DCLBannerItemPlugin(CMSPluginBase):
2018-02-28 04:09:19 +05:30
module = "Datacenterlight"
2018-03-02 02:05:42 +05:30
name = "DCL Banner Item Plugin"
model = DCLBannerItemPluginModel
render_template = "datacenterlight/cms/banner_item.html"
2018-02-28 04:09:19 +05:30
cache = False
require_parent = True
2018-03-02 02:05:42 +05:30
parent_classes = ['DCLBannerListPlugin']
@plugin_pool.register_plugin
class DCLNavbarPlugin(CMSPluginBase):
module = "Datacenterlight"
name = "DCL Navbar Plugin"
model = CMSPlugin
render_template = "datacenterlight/cms/navbar.html"
cache = False
allow_children = True
child_classes = ['DCLLinkPlugin', 'DCLNavbarDropdownPlugin']
2018-02-28 04:09:19 +05:30
@plugin_pool.register_plugin
class DCLNavbarDropdownPlugin(CMSPluginBase):
module = "Datacenterlight"
2018-03-02 02:05:42 +05:30
name = "DCL Navbar Dropdown Plugin"
2018-02-28 04:09:19 +05:30
model = DCLNavbarDropdownPluginModel
render_template = "datacenterlight/cms/navbar_dropdown.html"
cache = False
allow_children = True
child_classes = ['DCLLinkPlugin']
require_parent = True
parent_classes = ['DCLNavbarPlugin']
2018-03-02 02:05:42 +05:30
@plugin_pool.register_plugin
class DCLLinkPlugin(CMSPluginBase):
module = "Datacenterlight"
name = "DCL Link Plugin"
model = DCLLinkPluginModel
render_template = "datacenterlight/cms/link.html"
cache = False
require_parent = True
2018-02-28 04:09:19 +05:30
@plugin_pool.register_plugin
class DCLContactPlugin(CMSPluginBase):
module = "Datacenterlight"
2018-03-02 02:05:42 +05:30
name = "DCL Contact Plugin"
2018-02-28 04:09:19 +05:30
model = DCLContactPluginModel
render_template = "datacenterlight/cms/contact.html"
cache = False
@plugin_pool.register_plugin
class DCLFooterPlugin(CMSPluginBase):
module = "Datacenterlight"
2018-03-02 02:05:42 +05:30
name = "DCL Footer Plugin"
2018-02-28 04:09:19 +05:30
model = DCLFooterPluginModel
render_template = "datacenterlight/cms/footer.html"
cache = False
allow_children = True
child_classes = ['DCLLinkPlugin']