@@ 4-61 (lines=58) @@ | ||
1 | <?php |
|
2 | namespace Datatrics\API\Modules; |
|
3 | ||
4 | class Sale extends Base |
|
5 | { |
|
6 | /** |
|
7 | * Private constructor so only the client can create this |
|
8 | * @param string $apikey |
|
9 | * @param string $projectid |
|
10 | */ |
|
11 | public function __construct($apikey, $projectid) |
|
12 | { |
|
13 | parent::__construct($apikey, "/project/" . $projectid . "/sale"); |
|
14 | } |
|
15 | ||
16 | /** |
|
17 | * Get one or multiple sales |
|
18 | * @param string sale id, leave null for list of boxes |
|
19 | * @param object Containing query arguments |
|
20 | * @return object Result of the request |
|
21 | */ |
|
22 | public function Get($saleId = null, $args = array("limit" => 50)) |
|
23 | { |
|
24 | return $saleId == null ? $this->request(self::HTTP_GET, "?".http_build_query($args)) : $this->request(self::HTTP_GET, "/".$saleId."?".http_build_query($args)); |
|
25 | } |
|
26 | ||
27 | /** |
|
28 | * Create new sale |
|
29 | * @param object Containing all the information of a sale |
|
30 | * @return object Result of the request |
|
31 | */ |
|
32 | public function Create($sale) |
|
33 | { |
|
34 | return $this->request(self::HTTP_POST, "", $sale); |
|
35 | } |
|
36 | ||
37 | /** |
|
38 | * Delete a sale object by sale id |
|
39 | * @param string Id of the sale |
|
40 | * @return object Result of the request |
|
41 | */ |
|
42 | public function Delete($saleId) |
|
43 | { |
|
44 | return $this->request(self::HTTP_DELETE, "/".$saleId); |
|
45 | } |
|
46 | ||
47 | /** |
|
48 | * Updates a maximum of 50 sale items at a time. |
|
49 | * @param array Containing content items with a maximum of 50 |
|
50 | * @throws \Exception When more that 50 content items are provided |
|
51 | * @return object Result of the request |
|
52 | */ |
|
53 | public function UpdateBulk($items) |
|
54 | { |
|
55 | if (count($items) > 50) { |
|
56 | throw new \Exception("Maximum of 50 sale items allowed at a time"); |
|
57 | } |
|
58 | ||
59 | return $this->request(self::HTTP_POST, "/bulk", ['items' => $items]); |
|
60 | } |
|
61 | } |
|
62 |
@@ 4-61 (lines=58) @@ | ||
1 | <?php |
|
2 | namespace Datatrics\API\Modules; |
|
3 | ||
4 | class Scorecard extends Base |
|
5 | { |
|
6 | /** |
|
7 | * Private constructor so only the client can create this |
|
8 | * @param string $apikey |
|
9 | * @param string $projectid |
|
10 | */ |
|
11 | public function __construct($apikey, $projectid) |
|
12 | { |
|
13 | parent::__construct($apikey, "/project/" . $projectid . "/scorecard"); |
|
14 | } |
|
15 | ||
16 | /** |
|
17 | * Get one or multiple scorecards |
|
18 | * @param string scorecard id, leave null for list of boxes |
|
19 | * @param object Containing query arguments |
|
20 | * @return object Result of the request |
|
21 | */ |
|
22 | public function Get($scorecardId = null, $args = array("limit" => 50)) |
|
23 | { |
|
24 | return $scorecardId == null ? $this->request(self::HTTP_GET, "?".http_build_query($args)) : $this->request(self::HTTP_GET, "/".$scorecardId."?".http_build_query($args)); |
|
25 | } |
|
26 | ||
27 | /** |
|
28 | * Create new scorecard |
|
29 | * @param object Containing all the information of a scorecard |
|
30 | * @return object Result of the request |
|
31 | */ |
|
32 | public function Create($scorecard) |
|
33 | { |
|
34 | return $this->request(self::HTTP_POST, "", $scorecard); |
|
35 | } |
|
36 | ||
37 | /** |
|
38 | * Delete a scorecard object by scorecard id |
|
39 | * @param string Id of the scorecard |
|
40 | * @return object Result of the request |
|
41 | */ |
|
42 | public function Delete($scorecardId) |
|
43 | { |
|
44 | return $this->request(self::HTTP_DELETE, "/".$scorecardId); |
|
45 | } |
|
46 | ||
47 | /** |
|
48 | * Updates a maximum of 50 scorecard items at a time. |
|
49 | * @param array Containing scorecards with a maximum of 50 |
|
50 | * @throws \Exception When more that 50 content items are provided |
|
51 | * @return object Result of the request |
|
52 | */ |
|
53 | public function UpdateBulk($scorecards) |
|
54 | { |
|
55 | if (count($scorecards) > 50) { |
|
56 | throw new \Exception("Maximum of 50 scorecards allowed at a time"); |
|
57 | } |
|
58 | ||
59 | return $this->request(self::HTTP_POST, "/bulk", ['items' => $scorecards]); |
|
60 | } |
|
61 | } |
|
62 |