Skip to content

Commit 83a6933

Browse files
author
artur
committed
Merge branch 'master' of github.com:m4tthumphrey/php-gitlab-api
Conflicts: lib/Gitlab/Api/MergeRequests.php lib/Gitlab/Model/MergeRequest.php lib/Gitlab/Model/Project.php
2 parents e4dbca3 + 2210a0c commit 83a6933

34 files changed

+2057
-1991
lines changed

lib/Gitlab/Api/AbstractApi.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ abstract class AbstractApi implements ApiInterface
1515
* Default entries per page
1616
*/
1717
const PER_PAGE = 20;
18-
18+
1919
/**
2020
* The client
2121
*

lib/Gitlab/Api/Groups.php

Lines changed: 53 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -1,53 +1,53 @@
1-
<?php
2-
3-
namespace Gitlab\Api;
4-
5-
class Groups extends AbstractApi
6-
{
7-
public function all($page = 1, $per_page = self::PER_PAGE)
8-
{
9-
return $this->get('groups', array(
10-
'page' => $page,
11-
'per_page' => $per_page
12-
));
13-
}
14-
15-
public function show($id)
16-
{
17-
return $this->get('groups/'.urlencode($id));
18-
}
19-
20-
public function create($name, $path)
21-
{
22-
return $this->post('groups', array(
23-
'name' => $name,
24-
'path' => $path
25-
));
26-
}
27-
28-
public function transfer($group_id, $project_id)
29-
{
30-
return $this->post('groups/'.urlencode($group_id).'/projects/'.urlencode($project_id));
31-
}
32-
33-
public function members($id, $page = 1, $per_page = self::PER_PAGE)
34-
{
35-
return $this->get('groups/'.urlencode($id).'/members', array(
36-
'page' => $page,
37-
'per_page' => $per_page
38-
));
39-
}
40-
41-
public function addMember($group_id, $user_id, $access_level)
42-
{
43-
return $this->post('groups/'.urlencode($group_id).'/members', array(
44-
'user_id' => $user_id,
45-
'access_level' => $access_level
46-
));
47-
}
48-
49-
public function removeMember($group_id, $user_id)
50-
{
51-
return $this->delete('groups/'.urlencode($group_id).'/members/'.urlencode($user_id));
52-
}
53-
}
1+
<?php
2+
3+
namespace Gitlab\Api;
4+
5+
class Groups extends AbstractApi
6+
{
7+
public function all($page = 1, $per_page = self::PER_PAGE)
8+
{
9+
return $this->get('groups', array(
10+
'page' => $page,
11+
'per_page' => $per_page
12+
));
13+
}
14+
15+
public function show($id)
16+
{
17+
return $this->get('groups/'.urlencode($id));
18+
}
19+
20+
public function create($name, $path)
21+
{
22+
return $this->post('groups', array(
23+
'name' => $name,
24+
'path' => $path
25+
));
26+
}
27+
28+
public function transfer($group_id, $project_id)
29+
{
30+
return $this->post('groups/'.urlencode($group_id).'/projects/'.urlencode($project_id));
31+
}
32+
33+
public function members($id, $page = 1, $per_page = self::PER_PAGE)
34+
{
35+
return $this->get('groups/'.urlencode($id).'/members', array(
36+
'page' => $page,
37+
'per_page' => $per_page
38+
));
39+
}
40+
41+
public function addMember($group_id, $user_id, $access_level)
42+
{
43+
return $this->post('groups/'.urlencode($group_id).'/members', array(
44+
'user_id' => $user_id,
45+
'access_level' => $access_level
46+
));
47+
}
48+
49+
public function removeMember($group_id, $user_id)
50+
{
51+
return $this->delete('groups/'.urlencode($group_id).'/members/'.urlencode($user_id));
52+
}
53+
}

lib/Gitlab/Api/Issues.php

Lines changed: 45 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -1,42 +1,45 @@
1-
<?php
2-
3-
namespace Gitlab\Api;
4-
5-
class Issues extends AbstractApi
6-
{
7-
public function all($project_id = null, $page = 1, $per_page = self::PER_PAGE)
8-
{
9-
$path = $project_id === null ? 'issues' : 'projects/'.urlencode($project_id).'/issues';
10-
11-
return $this->get($path, array(
12-
'page' => $page,
13-
'per_page' => $per_page
14-
));
15-
}
16-
17-
public function show($project_id, $issue_id)
18-
{
19-
return $this->get('projects/'.urlencode($project_id).'/issues/'.urlencode($issue_id));
20-
}
21-
22-
public function create($project_id, array $params)
23-
{
24-
return $this->post('projects/'.urlencode($project_id).'/issues', $params);
25-
}
26-
27-
public function update($project_id, $issue_id, array $params)
28-
{
29-
return $this->put('projects/'.urlencode($project_id).'/issues/'.urlencode($issue_id), $params);
30-
}
31-
32-
public function showComments($project_id, $issue_id)
33-
{
34-
return $this->get('projects/'.urlencode($project_id).'/issues/'.urlencode($issue_id).'/notes');
35-
}
36-
37-
public function addComment($project_id, $issue_id, array $params)
38-
{
39-
return $this->post('projects/'.urlencode($project_id).'/issues/'.urlencode($issue_id).'/notes', $params);
40-
}
41-
42-
}
1+
<?php
2+
3+
namespace Gitlab\Api;
4+
5+
class Issues extends AbstractApi
6+
{
7+
public function all($project_id = null, $page = 1, $per_page = self::PER_PAGE, array $params = array())
8+
{
9+
$path = $project_id === null ? 'issues' : 'projects/'.urlencode($project_id).'/issues';
10+
11+
$params = array_intersect_key($params, array('labels' => '', 'state' => ''));
12+
$params = array_merge(array(
13+
'page' => $page,
14+
'per_page' => $per_page
15+
), $params);
16+
17+
return $this->get($path, $params);
18+
}
19+
20+
public function show($project_id, $issue_id)
21+
{
22+
return $this->get('projects/'.urlencode($project_id).'/issues/'.urlencode($issue_id));
23+
}
24+
25+
public function create($project_id, array $params)
26+
{
27+
return $this->post('projects/'.urlencode($project_id).'/issues', $params);
28+
}
29+
30+
public function update($project_id, $issue_id, array $params)
31+
{
32+
return $this->put('projects/'.urlencode($project_id).'/issues/'.urlencode($issue_id), $params);
33+
}
34+
35+
public function showComments($project_id, $issue_id)
36+
{
37+
return $this->get('projects/'.urlencode($project_id).'/issues/'.urlencode($issue_id).'/notes');
38+
}
39+
40+
public function addComment($project_id, $issue_id, array $params)
41+
{
42+
return $this->post('projects/'.urlencode($project_id).'/issues/'.urlencode($issue_id).'/notes', $params);
43+
}
44+
45+
}

lib/Gitlab/Api/MergeRequests.php

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,18 +34,19 @@ public function show($project_id, $mr_id)
3434
return $this->get('projects/'.urlencode($project_id).'/merge_request/'.urlencode($mr_id));
3535
}
3636

37-
public function create($project_id, $source, $target, $title, $assignee = null, $target_project_id = null)
37+
public function create($project_id, $source, $target, $title, $assignee = null, $target_project_id = null, $description = null)
3838
{
3939
if ($target_project_id && ! is_numeric($target_project_id)) {
40-
throw new InvalidArgumentException('target_project_id should be numeric, the project name is not allowed');
40+
throw new \InvalidArgumentException('target_project_id should be numeric, the project name is not allowed');
4141
}
4242

4343
return $this->post('projects/'.urlencode($project_id).'/merge_requests', array(
4444
'source_branch' => $source,
4545
'target_branch' => $target,
4646
'title' => $title,
4747
'assignee_id' => $assignee,
48-
'target_project_id' => $target_project_id
48+
'target_project_id' => $target_project_id,
49+
'description' => $description
4950
));
5051
}
5152

@@ -54,6 +55,16 @@ public function update($project_id, $mr_id, array $params)
5455
return $this->put('projects/'.urlencode($project_id).'/merge_request/'.urlencode($mr_id), $params);
5556
}
5657

58+
public function merge($project_id, $mr_id, array $params)
59+
{
60+
return $this->put('projects/'.urlencode($project_id).'/merge_request/'.urlencode($mr_id).'/merge', $params);
61+
}
62+
63+
public function showComments($project_id, $mr_id)
64+
{
65+
return $this->get('projects/'.urlencode($project_id).'/merge_request/'.urlencode($mr_id).'/comments');
66+
}
67+
5768
public function addComment($project_id, $mr_id, $note)
5869
{
5970
return $this->post('projects/'.urlencode($project_id).'/merge_request/'.urlencode($mr_id).'/comments', array(

lib/Gitlab/Api/Milestones.php

Lines changed: 30 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,30 @@
1-
<?php
2-
3-
namespace Gitlab\Api;
4-
5-
class Milestones extends AbstractApi
6-
{
7-
public function all($project_id, $page = 1, $per_page = self::PER_PAGE)
8-
{
9-
return $this->get('projects/'.urlencode($project_id).'/milestones', array(
10-
'page' => $page,
11-
'per_page' => $per_page
12-
));
13-
}
14-
15-
public function show($project_id, $milestone_id)
16-
{
17-
return $this->get('projects/'.urlencode($project_id).'/milestones/'.urlencode($milestone_id));
18-
}
19-
20-
public function create($project_id, array $params)
21-
{
22-
return $this->post('projects/'.urlencode($project_id).'/milestones', $params);
23-
}
24-
25-
public function update($project_id, $milestone_id, array $params)
26-
{
27-
return $this->put('projects/'.urlencode($project_id).'/milestones/'.urlencode($milestone_id), $params);
28-
}
29-
30-
}
1+
<?php
2+
3+
namespace Gitlab\Api;
4+
5+
class Milestones extends AbstractApi
6+
{
7+
public function all($project_id, $page = 1, $per_page = self::PER_PAGE)
8+
{
9+
return $this->get('projects/'.urlencode($project_id).'/milestones', array(
10+
'page' => $page,
11+
'per_page' => $per_page
12+
));
13+
}
14+
15+
public function show($project_id, $milestone_id)
16+
{
17+
return $this->get('projects/'.urlencode($project_id).'/milestones/'.urlencode($milestone_id));
18+
}
19+
20+
public function create($project_id, array $params)
21+
{
22+
return $this->post('projects/'.urlencode($project_id).'/milestones', $params);
23+
}
24+
25+
public function update($project_id, $milestone_id, array $params)
26+
{
27+
return $this->put('projects/'.urlencode($project_id).'/milestones/'.urlencode($milestone_id), $params);
28+
}
29+
30+
}
Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
1-
<?php
2-
3-
namespace Gitlab\Api;
4-
5-
class ProjectNamespaces extends AbstractApi
6-
{
7-
public function all($page = 1, $per_page = self::PER_PAGE)
8-
{
9-
return $this->get('namespaces', array(
10-
'page' => $page,
11-
'per_page' => $per_page
12-
));
13-
}
14-
15-
}
1+
<?php
2+
3+
namespace Gitlab\Api;
4+
5+
class ProjectNamespaces extends AbstractApi
6+
{
7+
public function all($page = 1, $per_page = self::PER_PAGE)
8+
{
9+
return $this->get('namespaces', array(
10+
'page' => $page,
11+
'per_page' => $per_page
12+
));
13+
}
14+
15+
}

0 commit comments

Comments
 (0)