Cardlists::all()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 2
CRAP Score 1

Importance

Changes 0
Metric Value
dl 0
loc 4
ccs 2
cts 2
cp 1
rs 10
c 0
b 0
f 0
cc 1
eloc 2
nc 1
nop 2
crap 1
1
<?php
2
3
namespace Trello\Api\Board;
4
5
use Trello\Api\AbstractApi;
6
7
/**
8
 * Trello Board Lists API
9
 * @link https://trello.com/docs/api/board
10
 *
11
 * Fully implemented.
12
 */
13
class Cardlists extends AbstractApi
14
{
15
    /**
16
     * Base path of board lists api
17
     * @var string
18
     */
19
    protected $path = 'boards/#id#/lists';
20
21
    /**
22
     * Get a given board's lists
23
     * @link https://trello.com/docs/api/board/#get-1-boards-board-id-lists
24
     *
25
     * @param string $id     the board's id
26
     * @param array  $params optional parameters
27
     *
28
     * @return array
29
     */
30 1
    public function all($id, array $params = array())
31
    {
32 1
        return $this->get($this->getPath($id), $params);
33
    }
34
35
    /**
36
     * Filter card lists related to a given board
37
     * @link https://trello.com/docs/api/board/#get-1-boards-board-id-lists-filter
38
     *
39
     * @param string       $id     the board's id
40
     * @param string|array $filter array of / one of 'all', 'none', 'open', 'closed'
41
     *
42
     * @return array
43
     */
44 3
    public function filter($id, $filter = 'all')
45
    {
46 3
        $allowed = array('all', 'none', 'open', 'closed');
47 3
        $filter = $this->validateAllowedParameters($allowed, $filter, 'filter');
48
49 3
        return $this->get($this->getPath($id).'/'.implode(',', $filter));
50
    }
51
52
    /**
53
     * Create a list on a given board
54
     * @link https://trello.com/docs/api/board/#post-1-boards-board-id-lists
55
     *
56
     * @param array $params
57
     *
58
     * @return array
59
     */
60 2
    public function create($id, array $params = array())
61
    {
62 2
        $this->validateRequiredParameters(array('name'), $params);
63
64 1
        return $this->post($this->getPath($id), $params);
65
    }
66
}
67