Beispiel #1
0
def get_projects(active=1):
    data = make_request('project/?active={0}'.format(active))
    projects = []
    for project in data.find('project').findall('item'):
        projects.append({
            'id': project.find('id').text,
            'name': project.find('name').text
        })
    return projects
Beispiel #2
0
def get_time():
    data = make_request('time')
    time_entries = []
    for entry in data.find('time').findall('item'):
        time_entries.append({
            'date': entry.find('date').text,
            'time': entry.find('time').text,
            'description': entry.find('description').text
        })
    return time_entries
Beispiel #3
0
def get_project_modules(project_id, active=1):
    data = make_request('projectmodule/?projectid={0}&active={1}'.format(
        project_id, active))
    modules = []
    for module in data.find('projectmodule').findall('item'):
        modules.append({
            'id': module.find('moduleid').text,
            'name': module.find('modulename').text
        })
    return modules
Beispiel #4
0
def get_project_worktypes(project_id, active=1):
    data = make_request('projectworktype/?projectid={0}&active={1}'.format(
        project_id, active))
    worktypes = []
    for worktype in data.find('projectworktype').findall('item'):
        worktypes.append({
            'id': worktype.find('worktypeid').text,
            'name': worktype.find('worktype').text
        })
    return worktypes
Beispiel #5
0
def add_time(projectid,
             moduleid,
             worktypeid,
             date,
             hours,
             billable=1,
             description=''):
    data = make_request(
        'time', 'post', {
            'projectid': projectid,
            'moduleid': moduleid,
            'worktypeid': worktypeid,
            'personid': get_personid(),
            'date': date,
            'time': hours,
            'billable': 1 if billable else 0,
            'description': description
        })
    return data