Sorted Project imfo API

This commit is contained in:
Sagi Dayan 2015-06-29 16:38:39 +03:00
parent 75d385a477
commit 3db75de9b0
2 changed files with 37 additions and 9 deletions

View file

@ -21,13 +21,41 @@ def get_repo_issues(repo_url):
req = requests.get(url)
return req.json()
def get_repo_weekly_commits(repo_url):
url = 'https://api.github.com/repos/' + repo_url + '/stats/participation' + '?client_id=' + githubKeys.getId() + '&client_secret=' + githubKeys.getSecret()
req = requests.get(url)
return req.json()['all']
def make_macro(stats, info):
macro = {'labels': [], 'data': [0]}
macro['labels'].append('Commits')
macro['labels'].append('Open Issues')
for stat in stats:
macro['data'][0] += stat['total']
macro['data'].append(info['open_issues'])
return macro
def make_micro(stats, info):
micro = {'labels': [], 'data': [0], 'series': []}
micro['labels'].append('Commits')
micro['labels'].append('Open Issues')
for stat in stats:
micro['data'][0] += stat['total']
micro['data'].append(info['open_issues'])
return micro
def get_github_data(repo_url):
project_info = {'stats': None, 'issues': None, 'info': None}
project_info['stats'] = get_repo_stats(repo_url) #first Call
project_info = {'stats': {}}
github_stats = get_repo_stats(repo_url) #first Call
project_info['info'] = get_repo_general_info(repo_url)
project_info['issues'] = get_repo_issues(repo_url)
project_info['stats'] = get_repo_stats(repo_url) #Second Call
issues = get_repo_issues(repo_url)
weekly_commits = get_repo_weekly_commits(repo_url)
github_stats = get_repo_stats(repo_url) #Second Call
project_info['stats']['macro'] = make_macro(github_stats, project_info['info'])
return project_info
project_info['stats']['weekly_commits'] = weekly_commits
project_info['issues'] = issues
return project_info

View file

@ -89,11 +89,11 @@ angular.module('SeHub')
$scope.labels = ['Commits', 'Issues Assigned', 'Messages', 'Open Tasks'];
$scope.series = ['Project A', 'Project B'];
//$scope.series = ['Project A', 'Project B'];
$scope.data = [
[54, 3, 15, 3],
[28, 48, 40, 3]
[54, 3, 15, 3]//,
//[28, 48, 40, 3]
];
$scope.isUser = $scope.$parent.user.id.toString() /*The Actual User*/ === $routeParams.id /*The Profile User*/;