예제 #1
0
    def getMenuItems(self, context, request):
        """Return menu item entries in a TAL-friendly form."""
        if interfaces.IBusinessWhatsOnSectionLayer.providedBy(request):
            return ()
        else:
            if IBungeniApplication.providedBy(context.__parent__):
                return ()
        wf = IWorkflow(context, None)
        if wf is None:
            return ()
        #state = IWorkflowInfo(context).state().getState()
        wf_info = IWorkflowInfo(context)
        transitions = wf_info.getManualTransitionIds()

        # !+ context_workflow menu: the order of transitions is alphabetic, but
        # should really be order of definition.
        parliament_id = getCurrentParliamentId()

        url = ui_url.absoluteURL(context, request)
        site_url2 = ui_url.absoluteURL(getSite(), request)
        results = []
        for transition in transitions:
            tid = transition
            state_transition = wf.getTransitionById(transition)
            #Compares the current url to homepage to determine whether we are on workspace or not.
            #Fix for bug 319
            #Someone should probably review this.
            if url == site_url2:
                transition_url = site_url2 + \
                             '/archive/browse/parliaments/obj-' + str(parliament_id) + \
                             '/change_workflow_state?' + \
                             'transition=%s&next_url=...' % tid
            else:
                transition_url = url + \
                             '/change_workflow_state?'\
                             'transition=%s&next_url=...' % tid
            extra = {
                'id': 'workflow-transition-%s' % tid,
                'separator': None,
                'class': ''
            }

            state_title = translate(str(state_transition.title),
                                    domain="bungeni.core",
                                    context=request)
            results.append(
                dict(title=state_title,
                     description="",
                     action=transition_url,
                     selected=False,
                     transition_id=tid,
                     icon=None,
                     extra=extra,
                     submenu=None))

        return results
예제 #2
0
 def getMenuItems(self, context, request):
     """Return menu item entries in a TAL-friendly form."""
     if interfaces.IBusinessWhatsOnSectionLayer.providedBy(request):
         return ()
     else:
         if IBungeniApplication.providedBy(context.__parent__):
             return ()
     wf = IWorkflow(context, None)
     if wf is None:
         return ()
     #state = IWorkflowInfo(context).state().getState()
     wf_info = IWorkflowInfo(context)
     transitions = wf_info.getManualTransitionIds()
     
     # !+ context_workflow menu: the order of transitions is alphabetic, but 
     # should really be order of definition.
     parliament_id = getCurrentParliamentId()
     
     _url = url.absoluteURL(context, request)
     site_url2 = url.absoluteURL(getSite(), request)
     results = []
     for transition in transitions:
         tid = transition
         state_transition = wf.getTransitionById(transition)
         #Compares the current url to homepage to determine whether we are on workspace or not.
         #Fix for bug 319
         #Someone should probably review this.
         if _url == site_url2:
             transition_url = site_url2 + \
                          "/archive/browse/parliaments/obj-" + str(parliament_id) + \
                          "/change_workflow_state?" + \
                          "transition=%s&next_url=..." % tid
         else:
             transition_url = _url + \
                          "/change_workflow_state?"\
                          "transition=%s&next_url=..." % tid
         extra = {"id": "workflow-transition-%s" % tid,
                  "separator": None,
                  "class": ""}
         
         state_title = translate(str(state_transition.title), 
                 domain="bungeni.core", 
                 context=request)
         results.append(
             dict(title=state_title,
                  description="",
                  action=transition_url,
                  selected=False,
                  transition_id=tid,
                  icon=None,
                  extra=extra,
                  submenu=None))
     
     return results
예제 #3
0
    def getMenuItems(self, context, request):
        """Return menu item entries in a TAL-friendly form."""
        if (not interfaces.IWorkspaceOrAdminSectionLayer.providedBy(request) or
            interfaces.IFormEditLayer.providedBy(request) or
            IVersion.providedBy(context)
        ):
            return ()
        #!+wfc.workflow
        wf = IWorkflow(context, None)
        if wf is None:
            return ()
        #state = IWorkflowController(context).state_controller.get_status()
        wfc = IWorkflowController(context)
        wf = wfc.workflow  # !+wfc.workflow
        tids = wfc.getManualTransitionIds()

        parliament_id = getCurrentParliamentId()
        _url = url.absoluteURL(context, request)
        site_url2 = url.absoluteURL(getSite(), request)
        results = []
        for tid in tids:
            state_transition = wf.get_transition(tid)
            #Compares the current url to homepage to determine whether
            #we are on workspace or not.
            #Fix for bug 319
            #Someone should probably review this.
            if _url == site_url2:
                transition_url = site_url2 + \
                             "/archive/browse/parliaments/obj-" + \
                             str(parliament_id) + \
                             "/change_workflow_state?" + \
                             "transition=%s&next_url=..." % tid
            else:
                transition_url = _url + \
                             "/change_workflow_state?"\
                             "transition=%s&next_url=..." % tid
            extra = {"id": "workflow-transition-%s" % tid,
                     "separator": None,
                     "class": ""}
            state_title = translate(str(state_transition.title),
                    domain="bungeni",
                    context=request)
            results.append(
                dict(title=state_title,
                     description="",
                     action=transition_url,
                     selected=False,
                     transition_id=tid,
                     icon=None,
                     extra=extra,
                     submenu=None))

        return results
예제 #4
0
 def __init__(self, context, request):
     super(WhatsOnBrowserView, self).__init__(context, request)
     parliament_id = getCurrentParliamentId()
     if parliament_id:
         session = Session()
         parliament = session.query(domain.Parliament).get(parliament_id)
         self.context = parliament
         self.context.__parent__ = context
         self.context.__name__ = ""
     start_date, end_date = get_date_range(request)
     if type(start_date) != datetime.date:
         self.start_date = datetime.date.today()
     else:
         self.start_date = start_date
     if type(end_date) != datetime.date:
         end_date = datetime.date.today() + datetime.timedelta(10)
         self.end_date = datetime.datetime(end_date.year, end_date.month, end_date.day, 23, 59)
     else:
         self.end_date = datetime.datetime(end_date.year, end_date.month, end_date.day, 23, 59)
     self.get_items()
예제 #5
0
 def __init__(self, context, request):
     super(WhatsOnBrowserView, self).__init__(context, request)
     parliament_id = getCurrentParliamentId()
     if parliament_id:
         session = Session()
         parliament = session.query(domain.Parliament).get(parliament_id)
         self.context = parliament
         self.context.__parent__ = context
         self.context.__name__ = ""
     start_date, end_date = get_date_range(request)
     if type(start_date) != datetime.date:
         self.start_date = datetime.date.today()
     else:
         self.start_date = start_date
     if type(end_date) != datetime.date:
         self.end_date = None
     else:
         self.end_date = datetime.datetime(end_date.year, end_date.month,
                                           end_date.day, 23, 59)
     self.get_items()
예제 #6
0
 def __init__(self, context, request):
     self.context = context
     self.request = request
     self.traverse_subpath = []
     self.currParliament = prefs.getCurrentParliamentId()
예제 #7
0
def setQuestionParliamentId(question):
    if not question.parliament_id:
        question.parliament_id = prefs.getCurrentParliamentId()
예제 #8
0
 def group_id(self):
     """Return current parliament's group id."""
     return getCurrentParliamentId()
예제 #9
0
 def group_id(self):
     return getCurrentParliamentId()
예제 #10
0
 def __init__(self, context, request):
     self.context = context
     self.request = request
     self.traverse_subpath = []
     self.currParliament = prefs.getCurrentParliamentId()
예제 #11
0
def setParliamentId(info, context):
    instance = removeSecurityProxy(context)
    if not instance.parliament_id:
        instance.parliament_id = prefs.getCurrentParliamentId()
예제 #12
0
def setQuestionParliamentId(question):
    if not question.parliament_id:
        question.parliament_id = prefs.getCurrentParliamentId()
예제 #13
0
def setParliamentId(info, context):
    instance = removeSecurityProxy(context)
    if not instance.parliament_id:
        parliamentId = prefs.getCurrentParliamentId()
        instance.parliament_id = parliamentId