Example #1
0
 def __init__(
         self,
         statuses=[]):
     for s in statuses:
         Statuses.get_or_create(name=s)
     #self.root_path = root_path
     #self.projects_list = projects_list
     self.projects = {}
     for _p in self.hg_repos:
         self.projects[_p] = Project(_p, self.repo_root, 'hg')
     for _p in self.git_repos:
         self.projects[_p] = Project(_p, self.repo_root, 'git')
Example #2
0
    def create_task(self, name, status, description='', MU_type='md'):
        """MarkUp type defaults to 'markdown'
        """
        _status = Statuses.get(name=status)
        _t = Tasks()
        _d = str(datetime.datetime.now())
        _t.name = name
        _t.description = description
        _t.status = _status
        _t.md5hash = md5(_d + name)
        _t.position = Tasks.select().where(Tasks.status == _status).count()
        _t.project = Projects.get_or_create(name=self.name)
        _t.save()

        # TODO save task on disk, inside the repo
        #if description == '':
            #description = name
        #self.tasks_files.create_doc(name+'.'+MU_type, description)
        #self.tasks_files.create_doc(name, description)
        #self.r.add_file(self.r.path+'/tasks/'+name)
        print '*' * 100
        print self.tasks_files.root_path
        print 'tasks fullpath: ' + self.tasks_fullpath + '/' + name + '.'\
            + MU_type
        print '*' * 100
Example #3
0
def add_task():
    _redirect = '/tasks/add',
    auth.require(
        role='edit',
        fail_redirect='/login?redirect=' + _redirect[0])
    menu = make_tasks_menu()
    statuses = Statuses.select()
    print [x.name for x in statuses]
Example #4
0
def list_tasks():
    menu = make_tasks_menu()
    statuses = Statuses.select()
    tasks_list = {}
    for s in statuses:
        tasks_list[s.name] = t.select().where(Tasks.status == s)
    return(
        dict(
            tasks_list=tasks_list,
            statuses=statuses,
            title="Task list",
            leftmenu=menu,
            project=None))
Example #5
0
    def create_task(self, name, status, description='', MU_type='md'):
        """MarkUp type defaults to 'markdown'
        """
        _status = Statuses.get(name=status)
        _t = Tasks()
        _d = str(datetime.datetime.now())
        _t.name = name
        _t.description = description
        _t.status = _status
        _t.md5hash = md5(_d + name)
        _t.position = Tasks.select().where(Tasks.status == _status).count()
        _t.project = Projects.get_or_create(name=self.name)
        _t.save()

        self.tasks_files.create_doc(name + '.' + MU_type, description)
        self.r.add_file(self.tasks_fullpath + '/' + name + '.' + MU_type)
        self.tasks_files.cache(name + '.' + MU_type)
Example #6
0
 def set_status(self, tid, new_status):
     """ Set tasks #tid with new_status"""
     _t = Tasks.get(id=tid)
     _s = Statuses.get(name=new_status)
     _t.status = _s
     _t.save()