Exemplo n.º 1
0
 def get_nav_items(self):
     nav_role = Task.get_nav_role(self.config.app)
     if (not nav_role) or (nav_role == self.config.cur_view_group.view_id):
         return None
     href = self.request.path
     if ('pk' in self.kwargs):
         pk = str(self.kwargs['pk']) + '/'
         if (pk in href):
             href = href.split(pk)[0]
     sort = 'name'
     nav_item_group = detect_group(self.request.user, self.config.app,
                                   'role', nav_role, '')
     if nav_item_group and nav_item_group.items_sort:
         sort = nav_item_group.items_sort
     ret = []
     for item in Task.get_role_tasks(self.request.user.id, self.config.app,
                                     nav_role).order_by(sort):
         ret.append({
             'id':
             item.id,
             'name':
             item.name,
             'qty':
             len(
                 Task.get_role_tasks(self.request.user.id, self.config.app,
                                     self.config.cur_view_group.view_id,
                                     item)),
             'href':
             href,
         })
     return ret
Exemplo n.º 2
0
def delete_task_role(app, role, result):
    data = Task.get_role_tasks(None, app,
                               role).exclude(id__in=get_excluded(app, 'Task'))
    if (app == APP_TODO):
        qnt = data.update(app_task=NONE)
    if (app == APP_NOTE):
        qnt = data.update(app_note=NONE)
    if (app == APP_NEWS):
        qnt = data.update(app_news=NONE)
    if (app == APP_STORE):
        qnt = data.update(app_store=NONE)
    if (app == APP_DOCS):
        qnt = data.update(app_doc=NONE)
    if (app == APP_WARR):
        qnt = data.update(app_warr=NONE)
    if (app == APP_EXPEN):
        qnt = data.update(app_expen=NONE)
    if (app == APP_TRIP):
        qnt = data.update(app_trip=NONE)
    if (app == APP_FUEL):
        qnt = data.update(app_fuel=NONE)
    if (app == APP_APART):
        qnt = data.update(app_apart=NONE)
    if (app == APP_HEALTH):
        qnt = data.update(app_health=NONE)
    if (app == APP_WORK):
        qnt = data.update(app_work=NONE)
    if (app == APP_PHOTO):
        qnt = data.update(app_photo=NONE)
    set(result, app, role, 'Task', 'reset_role', qnt)
    to_kill = Task.objects.filter(app_task=NONE,
                                  app_note=NONE,
                                  app_news=NONE,
                                  app_store=NONE,
                                  app_doc=NONE,
                                  app_warr=NONE,
                                  app_expen=NONE,
                                  app_trip=NONE,
                                  app_fuel=NONE,
                                  app_apart=NONE,
                                  app_health=NONE,
                                  app_work=NONE,
                                  app_photo=NONE)
    set(result, app, role, 'Step', 'delete',
        Step.objects.filter(task__in=to_kill).delete()[0])
    set(result, app, role, 'Urls', 'delete',
        Urls.objects.filter(task__in=to_kill).delete()[0])
    set(result, app, role, 'Hist', 'delete',
        Hist.objects.filter(task__in=to_kill).delete()[0])
    set(result, app, role, 'Task', 'delete', to_kill.delete()[0])
Exemplo n.º 3
0
    def get_dataset(self, group, query=None, nav_item=None):
        if (group.determinator == 'role'):
            cur_role = group.view_id
        else:
            cur_role = self.config.base_role
        data = Task.get_role_tasks(self.request.user.id, self.config.app,
                                   cur_role, nav_item)

        if (self.config.app == APP_ALL) and (not query):
            return data

        if data and ((not group.determinator) or
                     (group.determinator == 'group')):
            data = data.filter(groups__id=group.id)
            # if (not group.completed):
            #     data = data.filter(completed=False)

        if hasattr(self, 'tune_dataset'):
            return self.tune_dataset(data, group)

        return data