def block_portlets(self, action): status = IStatusMessage(self.request) context = Acquisition.aq_inner(self.context) data, error = self.extractData() blockstatus = data.get('blockstatus', False) manager = data.get('portlet_manager', None) path = "/".join(context.getPhysicalPath()) if manager is not None: managernames = [manager] else: managernames = utils.get_portlet_manager_names() status.addStatusMessage(u'Set portlet block status on %s' % ', '.join( managernames), type='info') managers = dict() for managername in managernames: managers[managername] = assignment_mapping_from_key( context, managername, CONTEXT_CATEGORY, path,) info, warnings, errors = utils.exec_for_all_langs( context, utils.block_portlets, managers=managers, blockstatus=blockstatus,) self.handle_status(status, info, warnings, errors)
def reindex_all(self, action): context = Acquisition.aq_inner(self.context) def _setter(ob, *args, **kw): ob.reindexObject() status = IStatusMessage(self.request) status.addStatusMessage(_(u"Reindex object"), type='info') info, warnings, errors = utils.exec_for_all_langs(context, _setter) self.handle_status(status, info, warnings, errors)
def set_description(self, action): status = IStatusMessage(self.request) status.addStatusMessage(_(u"Set text as description"), type="info") context = Acquisition.aq_inner(self.context) data, error = self.extractData() info, warnings, errors = utils.exec_for_all_langs( context, utils.set_po_description, text=data.get('text', ''), po_domain=data.get('po_domain', '')) self.handle_status(status, info, warnings, errors)
def delete_property(self, action): """ deletes the given property """ status = IStatusMessage(self.request) context = Acquisition.aq_inner(self.context) data, error = self.extractData() property_id = data.get('property_to_delete') status.addStatusMessage( u'Delete property %s' % property_id, type='info') info, warnings, errors = utils.exec_for_all_langs( context, utils.delete_property, property_id=property_id,) self.handle_status(status, info, warnings, errors)
def remove_interface(self, action): data, error = self.extractData() interface_to_remove = data.get('interface_to_remove') status = IStatusMessage(self.request) status.addStatusMessage(_( u"Remove marker interface '%s' on this object and all " u"translations" % interface_to_remove), type="info") context = Acquisition.aq_inner(self.context) info, warnings, errors = utils.exec_for_all_langs( context, utils.remove_interface, interface_to_remove=interface_to_remove,) self.handle_status(status, info, warnings, errors)
def delete(self, action): """ deletes object in all languages """ status = IStatusMessage(self.request) context = Acquisition.aq_inner(self.context) data, error = self.extractData() id_to_delete = data.get('id_to_delete') status.addStatusMessage( u'Delete object %s' % id_to_delete, type='info') info, warnings, errors = utils.exec_for_all_langs( context, utils.delete_this, id_to_delete=id_to_delete, target_id=id_to_delete,) self.handle_status(status, info, warnings, errors)
def do_action(self, action): data, error = self.extractData() transition = data.get('transition') status = IStatusMessage(self.request) status.addStatusMessage(_( u"Perform workflow-action '%s' on this object and all " u"translations" % transition), type="info") context = Acquisition.aq_inner(self.context) info, warnings, errors = utils.exec_for_all_langs( context, utils.workflow_action, transition=transition,) self.handle_status(status, info, warnings, errors)
def cut_and_paste(self, action): context = Acquisition.aq_inner(self.context) data, error = self.extractData() target_path = data.get('target_path', '') id_to_move = data.get('id_to_move', '') status = IStatusMessage(self.request) status.addStatusMessage(_(u"Move object %s to %s" % ( id_to_move, target_path)), type="info") info, warnings, errors = utils.exec_for_all_langs( context, utils.cut_and_paste, target_path=target_path, id_to_move=id_to_move, target_id=id_to_move) self.handle_status(status, info, warnings, errors)
def rename(self, action): status = IStatusMessage(self.request) context = Acquisition.aq_inner(self.context) data, error = self.extractData() old_id = data.get('old_id', '') new_id = data.get('new_id', '') status.addStatusMessage( u'Rename from %s to %s.' % (old_id, new_id), type="info") info, warnings, errors = utils.exec_for_all_langs( context, utils.renamer, oldid=old_id, newid=new_id, target_id=old_id,) self.handle_status(status, info, warnings, errors)
def set_property(self, action): """ sets the given property """ status = IStatusMessage(self.request) context = Acquisition.aq_inner(self.context) data, error = self.extractData() property_id = data.get('property_id') property_value = data.get('property_value') if isinstance(property_value, unicode): property_value = property_value.encode('utf-8') status.addStatusMessage(u'Set property %s' % property_id, type='info') info, warnings, errors = utils.exec_for_all_langs( context, utils.set_property, property_id=property_id, property_type=data.get('property_type'), property_value=property_value,) self.handle_status(status, info, warnings, errors)
def set_title(self, action): status = IStatusMessage(self.request) status.addStatusMessage(_(u"Set text as title"), type="info") context = Acquisition.aq_inner(self.context) data, error = self.extractData() info, warnings, errors = utils.exec_for_all_langs( context, utils.set_po_title, text=data.get('text', ''), po_domain=data.get('po_domain', '')) for msg in info: status.addStatusMessage(msg, type='info') for msg in warnings: status.addStatusMessage(msg, type='warning') for msg in errors: status.addStatusMessage(msg, type='error') self.request.response.redirect(self.context.REQUEST.get('URL'))