Merge branch 'master' into bbmaster
This commit is contained in:
		
						commit
						2ecf05e5e9
					
				
					 7 changed files with 130 additions and 21 deletions
				
			
		|  | @ -83,7 +83,7 @@ class ObjectForm(NodeView): | |||
|     def checkPermissions(self): | ||||
|         obj = self.target | ||||
|         if obj is None: | ||||
|             obj = self.context | ||||
|             obj = self.containerext | ||||
|         return canWriteObject(obj) | ||||
| 
 | ||||
|     @Lazy | ||||
|  | @ -289,7 +289,9 @@ class CreateObjectForm(ObjectForm): | |||
|     @Lazy | ||||
|     def title(self): | ||||
|         if self.fixedType: | ||||
|             return _(u'Create %s') % self.typeConcept.title | ||||
|             #return _(u'Create %s') % self.typeConcept.title | ||||
|             return _(u'Create $type',  | ||||
|                      mapping=dict(type=self.typeConcept.title)) | ||||
|         else: | ||||
|             return _(self.defaultTitle) | ||||
| 
 | ||||
|  |  | |||
|  | @ -400,7 +400,7 @@ class ChildRelationSet(RelationSet): | |||
|         self.context.assignChild(related, self.predicate, order, relevance) | ||||
| 
 | ||||
|     def remove(self, related): | ||||
|         related = baseObject(related.context) | ||||
|         related = baseObject(related) | ||||
|         self.context.deassignChild(related, [self.predicate]) | ||||
| 
 | ||||
|     def __iter__(self): | ||||
|  |  | |||
|  | @ -115,6 +115,7 @@ class ResultsConceptView(ConceptView): | |||
|     """ | ||||
| 
 | ||||
|     reportName = None   # define in subclass if applicable | ||||
|     reportType = None   # set for using special report instance adapter | ||||
| 
 | ||||
|     @Lazy | ||||
|     def result_macros(self): | ||||
|  | @ -143,8 +144,9 @@ class ResultsConceptView(ConceptView): | |||
| 
 | ||||
|     @Lazy | ||||
|     def reportInstance(self): | ||||
|         reportType = self.reportType or self.report.reportType | ||||
|         ri = component.getAdapter(self.report, IReportInstance, | ||||
|                                   name=self.report.reportType) | ||||
|                                   name=reportType) | ||||
|         ri.view = self.nodeView | ||||
|         return ri | ||||
| 
 | ||||
|  |  | |||
										
											Binary file not shown.
										
									
								
							|  | @ -3,7 +3,7 @@ msgstr "" | |||
| 
 | ||||
| "Project-Id-Version: $Id$\n" | ||||
| "POT-Creation-Date: 2007-05-22 12:00 CET\n" | ||||
| "PO-Revision-Date: 2012-05-09 12:00 CET\n" | ||||
| "PO-Revision-Date: 2012-05-30 12:00 CET\n" | ||||
| "Last-Translator: Helmut Merz <helmutm@cy55.de>\n" | ||||
| "Language-Team: loops developers <helmutm@cy55.de>\n" | ||||
| "MIME-Version: 1.0\n" | ||||
|  | @ -47,6 +47,9 @@ msgstr "Ressource anlegen..." | |||
| msgid "Create %s" | ||||
| msgstr "%s anlegen" | ||||
| 
 | ||||
| msgid "Create $type" | ||||
| msgstr "$type anlegen" | ||||
| 
 | ||||
| msgid "Create a new resource object." | ||||
| msgstr "Eine neue Ressource erzeugen" | ||||
| 
 | ||||
|  | @ -230,19 +233,34 @@ msgstr "Begriff bearbeiten" | |||
| msgid "Create Event..." | ||||
| msgstr "Termin anlegen..." | ||||
| 
 | ||||
| msgid "Create a new event" | ||||
| msgid "Create a new event." | ||||
| msgstr "Einen neuen Termin anlegen." | ||||
| 
 | ||||
| msgid "Create Follow-up Event..." | ||||
| msgstr "Folgetermin anlegen..." | ||||
| 
 | ||||
| msgid "Create an event that is linked to this one." | ||||
| msgstr "Einen neuen Termin anlegen, der mit diesem verknüpft ist." | ||||
| 
 | ||||
| msgid "Edit Event..." | ||||
| msgstr "Termin bearbeiten..." | ||||
| 
 | ||||
| msgid "Modify event." | ||||
| msgstr "Termin bearbeiten" | ||||
| 
 | ||||
| msgid "Modify follow-up event." | ||||
| msgstr "Folgetermin bearbeiten" | ||||
| 
 | ||||
| msgid "Create Task..." | ||||
| msgstr "Aufgabe anlegen..." | ||||
| 
 | ||||
| msgid "Create a new task" | ||||
| msgid "Create a new task." | ||||
| msgstr "Eine neue Aufgabe anlegen." | ||||
| 
 | ||||
| msgid "Edit Task..." | ||||
| msgstr "Aufgabe bearbeiten..." | ||||
| 
 | ||||
| msgid "Modify task" | ||||
| msgid "Modify task." | ||||
| msgstr "Aufgabe bearbeiten" | ||||
| 
 | ||||
| msgid "Create Project..." | ||||
|  |  | |||
|  | @ -83,6 +83,32 @@ | |||
|       class="loops.organize.browser.party.EditPersonForm" | ||||
|       permission="zope.View" /> | ||||
| 
 | ||||
|   <browser:page | ||||
|         name="create_followup_event.html" | ||||
|         for="loops.interfaces.INode" | ||||
|         class="loops.organize.browser.event.CreateFollowUpEventForm" | ||||
|         permission="zope.View" /> | ||||
| 
 | ||||
|   <zope:adapter | ||||
|       name="create_followup_event" | ||||
|       for="loops.browser.node.NodeView | ||||
|            zope.publisher.interfaces.browser.IBrowserRequest" | ||||
|       factory="loops.organize.browser.event.CreateFollowUpEvent" | ||||
|       permission="zope.View" /> | ||||
| 
 | ||||
|   <browser:page | ||||
|         name="edit_followup_event.html" | ||||
|         for="loops.interfaces.INode" | ||||
|         class="loops.organize.browser.event.EditFollowUpEventForm" | ||||
|         permission="zope.View" /> | ||||
| 
 | ||||
|   <zope:adapter | ||||
|       name="edit_followup_event" | ||||
|       for="loops.browser.node.NodeView | ||||
|            zope.publisher.interfaces.browser.IBrowserRequest" | ||||
|       factory="loops.organize.browser.event.EditFollowUpEvent" | ||||
|       permission="zope.View" /> | ||||
| 
 | ||||
|   <!-- authentication --> | ||||
| 
 | ||||
|   <browser:addform | ||||
|  |  | |||
|  | @ -27,9 +27,12 @@ from zope import interface, component | |||
| from zope.app.pagetemplate import ViewPageTemplateFile | ||||
| from zope.cachedescriptors.property import Lazy | ||||
| 
 | ||||
| from cybertools.browser.action import actions | ||||
| from cybertools.meta.interfaces import IOptions | ||||
| from loops.browser.action import DialogAction | ||||
| from loops.browser.action import DialogAction, TargetAction | ||||
| from loops.browser.concept import ConceptView | ||||
| from loops.browser.form import CreateConceptPage, CreateConcept | ||||
| from loops.browser.form import EditConceptPage, EditConcept | ||||
| from loops.browser.node import NodeView | ||||
| from loops.common import adapted | ||||
| from loops.util import _ | ||||
|  | @ -38,6 +41,39 @@ from loops.util import _ | |||
| organize_macros = ViewPageTemplateFile('view_macros.pt') | ||||
| 
 | ||||
| 
 | ||||
| actions.register('createEvent', 'portlet', DialogAction, | ||||
|         title=_(u'Create Event...'), | ||||
|         description=_(u'Create a new event.'), | ||||
|         viewName='create_concept.html', | ||||
|         dialogName='createEvent', | ||||
|         typeToken='.loops/concepts/event', | ||||
|         fixedType=True, | ||||
|         prerequisites=['registerDojoDateWidget'], | ||||
| ) | ||||
| 
 | ||||
| actions.register('editEvent', 'portlet', DialogAction, | ||||
|         title=_(u'Edit Event...'), | ||||
|         description=_(u'Modify event.'), | ||||
|         viewName='edit_concept.html', | ||||
|         dialogName='editEvent', | ||||
|         prerequisites=['registerDojoDateWidget'], | ||||
| ) | ||||
| 
 | ||||
| actions.register('createFollowUpEvent', 'portlet', TargetAction, | ||||
|         title=_(u'Create Follow-up Event...'), | ||||
|         description=_(u'Create an event that is linked to this one.'), | ||||
|         viewName='create_followup_event.html', | ||||
|         prerequisites=['registerDojoDateWidget'], | ||||
| ) | ||||
| 
 | ||||
| actions.register('editFollowUpEvent', 'portlet', TargetAction, | ||||
|         title=_(u'Edit Event...'), | ||||
|         description=_(u'Modify follow-up event.'), | ||||
|         viewName='edit_followup_event.html', | ||||
|         prerequisites=['registerDojoDateWidget'], | ||||
| ) | ||||
| 
 | ||||
| 
 | ||||
| class Events(ConceptView): | ||||
| 
 | ||||
|     @Lazy | ||||
|  | @ -45,19 +81,11 @@ class Events(ConceptView): | |||
|         return organize_macros.macros['events'] | ||||
| 
 | ||||
|     def getActions(self, category='object', page=None, target=None): | ||||
|         actions = [] | ||||
|         acts = super(Events, self).getActions(category, page, target) | ||||
|         if category == 'portlet': | ||||
|             actions.append(DialogAction(self, title=_(u'Create Event...'), | ||||
|                   description=_(u'Create a new event.'), | ||||
|                   viewName='create_concept.html', | ||||
|                   dialogName='createEvent', | ||||
|                   typeToken='.loops/concepts/event', | ||||
|                   fixedType=True, | ||||
|                   innerForm='inner_concept_form.html', | ||||
|                   page=page, | ||||
|                   target=target)) | ||||
|             self.registerDojoDateWidget() | ||||
|         return actions | ||||
|             acts.extend(actions.get(category, ['createEvent'], | ||||
|                                 view=self, page=page, target=target)) | ||||
|         return acts | ||||
| 
 | ||||
|     @Lazy | ||||
|     def selectedDate(self): | ||||
|  | @ -215,3 +243,36 @@ class CalendarInfo(NodeView): | |||
|     def getEventTitles(self, day): | ||||
|         events = self.events[day-1] | ||||
|         return '; '.join(ev.title for ev in events) | ||||
| 
 | ||||
| 
 | ||||
| # special forms | ||||
| 
 | ||||
| class CreateFollowUpEventForm(CreateConceptPage): | ||||
| 
 | ||||
|     fixedType = True | ||||
|     typeToken = '.loops/concepts/event' | ||||
|     form_action = 'create_followup_event' | ||||
|     showAssignments = True | ||||
| 
 | ||||
| 
 | ||||
| class EditFollowUpEventForm(EditConceptPage, CreateFollowUpEventForm): | ||||
| 
 | ||||
|     pass | ||||
| 
 | ||||
| 
 | ||||
| # form controllers | ||||
| 
 | ||||
| class BaseFollowUpController(object): | ||||
| 
 | ||||
|     pass | ||||
| 
 | ||||
| 
 | ||||
| class CreateFollowUpEvent(CreateConcept, BaseFollowUpController): | ||||
| 
 | ||||
|     defaultTypeToken = '.loops/concepts/event' | ||||
| 
 | ||||
| 
 | ||||
| class EditFollowUpEvent(EditConcept, BaseFollowUpController): | ||||
| 
 | ||||
|     pass | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
	Add table
		
		Reference in a new issue