def getSlideshowLocalProperties(self): """ Returns the locally defined properties for the slideshow """ adapter = SlideshowManagerAdapter(self.context) values = adapter.getSlideshowProperties().items() props = {} for key, value in values: props[key] = str(value) return props
def setSlideshowLocalProperties(self): """ Saves the locally defined properties for a Slideshow """ status = IStatusMessage(self.request) adapter = SlideshowManagerAdapter(self.context) reset_key = [] for key, value in self.request.form.items(): if key.startswith("reset_"): real_key = key.split("reset_")[1] adapter.resetSlideshowProperty(real_key) reset_key.append(real_key) continue if key not in reset_key and value not in ["", "None"]: adapter.setSlideshowProperty(key, value) status.addStatusMessage("Local slideshow properties have been saved", type="info") self.request.response.redirect(self.request.URL.split("@@")[0])
def enableSlideshowFolder(event): """Slideshow preparation when a slideshow folder is created """ if event.subtype.type_interface == ISlideshowFolder: folder = event.object folder.setLayout('slideshow_folder_view') adapter = SlideshowManagerAdapter(folder) fol = getToolByName(folder, 'portal_types')['Folder'] if 'Slideshow' not in [ac.title for ac in fol.listActions()]: fol.addAction( "slideshowproperties", "Slideshow", "slideshow_edit_form", "python:object.restrictedTraverse(\ '@@plone_interface_info').provides(\ 'collective.easyslideshow.interfaces.ISlideshowFolder')", "Modify portal content", "folder", )
def setSlideshowLocalProperties(self): """ Saves the locally defined properties for a Slideshow """ status = IStatusMessage(self.request) adapter = SlideshowManagerAdapter(self.context) reset_key = [] for key, value in self.request.form.items(): if key.startswith('reset_'): real_key = key.split('reset_')[1] adapter.resetSlideshowProperty(real_key) reset_key.append(real_key) continue if key not in reset_key and value not in ['', 'None']: adapter.setSlideshowProperty(key, value) status.addStatusMessage('Local slideshow properties have been saved', type='info') self.request.response.redirect(self.request.URL.split('@@')[0])