|
3 | 3 | namespace Zendesk\API\Resources\HelpCenter;
|
4 | 4 |
|
5 | 5 | use Zendesk\API\Traits\Resource\Defaults;
|
| 6 | +use Zendesk\API\Traits\Resource\Locales; |
6 | 7 |
|
7 | 8 | /**
|
8 | 9 | * Class Categories
|
|
11 | 12 | class Categories extends ResourceAbstract
|
12 | 13 | {
|
13 | 14 | use Defaults;
|
| 15 | + use Locales; |
14 | 16 |
|
15 | 17 | /**
|
16 | 18 | * {@inheritdoc}
|
17 | 19 | */
|
18 | 20 | protected $objectName = 'category';
|
19 | 21 |
|
20 |
| - /** |
21 |
| - * @var locale |
22 |
| - */ |
23 |
| - private $locale; |
24 |
| - |
25 | 22 | /**
|
26 | 23 | * @inheritdoc
|
27 | 24 | */
|
28 | 25 | protected function setUpRoutes()
|
29 | 26 | {
|
30 | 27 | $this->setRoute('updateSourceLocale', "{$this->resourceName}/{categoryId}/source_locale.json");
|
31 | 28 | }
|
32 |
| - |
33 |
| - /** |
34 |
| - * @inheritdoc |
35 |
| - */ |
36 |
| - public function getRoute($name, array $params = []) |
37 |
| - { |
38 |
| - $routesWithLocale = ['findAll', 'find', 'create', 'update']; |
39 |
| - |
40 |
| - $locale = $this->getLocale(); |
41 |
| - if (in_array($name, $routesWithLocale) && isset($locale)) { |
42 |
| - $originalResourceName = $this->resourceName; |
43 |
| - $this->resourceName = "help_center/{$locale}/categories"; |
44 |
| - |
45 |
| - $route = parent::getRoute($name, $params); |
46 |
| - |
47 |
| - // Reset resourceName so it doesn't affect succeeding calls |
48 |
| - $this->resourceName = $originalResourceName; |
49 |
| - |
50 |
| - return $route; |
51 |
| - } else { |
52 |
| - return parent::getRoute($name, $params); |
53 |
| - } |
54 |
| - } |
55 |
| - |
56 |
| - /** |
57 |
| - * @return string |
58 |
| - */ |
59 |
| - public function getLocale() |
60 |
| - { |
61 |
| - return $this->locale; |
62 |
| - } |
63 |
| - |
64 |
| - /** |
65 |
| - * @param string $locale |
66 |
| - * |
67 |
| - * @return Categories |
68 |
| - */ |
69 |
| - public function setLocale($locale) |
70 |
| - { |
71 |
| - if (is_string($locale)) { |
72 |
| - $this->locale = $locale; |
73 |
| - } |
74 |
| - |
75 |
| - return $this; |
76 |
| - } |
77 |
| - |
78 |
| - /** |
79 |
| - * Updates a categories source_locale property |
80 |
| - * |
81 |
| - * @param $categoryId The category to update |
82 |
| - * @param $sourceLocale The new source_locale |
83 |
| - * |
84 |
| - * @return array |
85 |
| - * @throws \Zendesk\API\Exceptions\RouteException |
86 |
| - */ |
87 |
| - public function updateSourceLocale($categoryId, $sourceLocale) |
88 |
| - { |
89 |
| - if (empty($categoryId)) { |
90 |
| - $categoryId = $this->getChainedParameter(get_class($this)); |
91 |
| - } |
92 |
| - |
93 |
| - return $this->client->put( |
94 |
| - $this->getRoute(__FUNCTION__, ['categoryId' => $categoryId]), |
95 |
| - ['category_locale' => $sourceLocale] |
96 |
| - ); |
97 |
| - } |
98 | 29 | }
|
0 commit comments