@@ -15,11 +15,13 @@ public function addGroupUser($name, $userName)
1515 ]);
1616
1717 try {
18- $ ret = $ this ->exec ($ this ->uri .'/user?groupname= ' . $ this ->filterName ($ name ).'' , $ json , 'POST ' );
18+ if (self ::$ isJIRAUtf8 )
19+ $ ret = $ this ->exec ($ this ->uri .'/user?groupname= ' . $ this ->filterName (urlencode ($ name ), '+ ' ).'&useUnicode=true&characterEncoding=unicode ' , $ json , 'POST ' );
20+ else
21+ $ ret = $ this ->exec ($ this ->uri .'/user?groupname= ' . $ this ->filterName (urlencode ($ name ), '+ ' ).'' , $ json , 'POST ' );
1922 } catch (\Jira \Api \Exception $ e ) {
2023 $ code = $ e -> getCode ();
2124 $ err = $ e -> getMessage ();
22-
2325 if (FALSE !== strpos ($ err , "Cannot add user. ' $ userName' does not exist " ))
2426 return -1 ;
2527
@@ -42,7 +44,10 @@ public function removeGroupUser($name, $userName)
4244
4345 try
4446 {
45- $ ret = $ this ->exec ($ this ->uri .'/user?username= ' .$ userName .'&groupname= ' . $ this ->filterName ($ name ).'' , null , 'DELETE ' );
47+ if (self ::$ isJIRAUtf8 )
48+ $ ret = $ this ->exec ($ this ->uri .'/user?username= ' .$ userName .'&groupname= ' . $ this ->filterName (urlencode ($ name ),'+ ' ).'&useUnicode=true&characterEncoding=unicode ' , null , 'DELETE ' );
49+ else
50+ $ ret = $ this ->exec ($ this ->uri .'/user?username= ' .$ userName .'&groupname= ' . $ this ->filterName (urlencode ($ name ),'+ ' ).'' , null , 'DELETE ' );
4651 }
4752 catch (\Jira \Api \Exception $ e )
4853 {
@@ -65,13 +70,18 @@ public function removeGroupUser($name, $userName)
6570 */
6671 public function getGroup ($ name )
6772 {
68- $ ret = $ this ->exec ($ this ->uri .'?groupname= ' . $ this ->filterName ($ name , '+ ' ) .'' );
73+ if (self ::$ isJIRAUtf8 )
74+ $ ret = $ this ->exec ($ this ->uri .'?groupname= ' . str_replace (' ' , '+ ' , urlencode ($ name )).'&useUnicode=true&characterEncoding=unicode ' );
75+ else
76+ $ ret = $ this ->exec ($ this ->uri .'?groupname= ' . str_replace (' ' , '+ ' , urlencode ($ name )));// .'&useUnicode=false&characterEncoding=unicode');
77+ // $ret = $this->exec($this->uri.'?groupname=' . ($this->filterName($name,'+')) .'&useUnicode=true&characterEncoding=UTF8');
78+ // $ret = $this->exec($this->uri, $json, 'POST');
6979// $ret = $this->exec($this->uri.'/member?groupname=' . $name);
80+ //var_dump($ret);
7081
7182 $ group = $ this ->json_mapper ->map (
7283 json_decode ($ ret ), new Group ()
7384 );
74-
7585 return $ group ;
7686 }
7787
@@ -88,11 +98,14 @@ public function getGroupMembers($name)
8898 while ($ page * $ onPage < $ max )
8999 {
90100 $ json = json_encode ([
91- 'groupname ' => $ this ->filterName ($ name ),
101+ // 'groupname' => $this->filterName($name),
92102 'maxResults ' => $ max ,
93103 'startAt ' => $ onPage * $ page ,
94104 ]);
95- $ ret = $ this ->exec ($ this ->uri ."?expand=users&maxResults= $ max&startAt= " .($ onPage *$ page ).'&groupname= ' . $ this ->filterName ($ name ,'+ ' ));
105+ if (self ::$ isJIRAUtf8 )
106+ $ ret = $ this ->exec ($ this ->uri ."?expand=users&maxResults= $ max&startAt= " .($ onPage *$ page ).'&groupname= ' . $ this ->filterName (urlencode ($ name ),'+ ' ).'&useUnicode=true&characterEncoding=unicode ' );
107+ else
108+ $ ret = $ this ->exec ($ this ->uri ."?expand=users&maxResults= $ max&startAt= " .($ onPage *$ page ).'&groupname= ' . $ this ->filterName (urlencode ($ name ),'+ ' ));
96109// $ret = $this->exec($this->uri.'?groupname=' . $name);
97110 $ ret = json_decode ($ ret );
98111// print_r($ret);
@@ -122,8 +135,15 @@ public function createGroup($name)
122135 $ json = json_encode ([
123136 'name ' => $ this ->filterName ($ name ),
124137 ]);
125- $ ret = $ this ->exec ($ this ->uri , $ json , 'POST ' );
126- // $ret = $this->exec($this->uri.'/member?groupname=' . $name);
138+ var_dump ($ json );
139+ try {
140+ $ ret = $ this ->exec ($ this ->uri , $ json , 'POST ' );
141+ } catch (\Exception $ e ) {
142+ if (stripos ($ e ->getMessage (), 'A group or user with this name already exists. ' ) !== 0 ) {
143+ die ('a ' );
144+ }
145+ else throw $ e ;
146+ }
127147
128148 $ group = $ this ->json_mapper ->map (
129149 json_decode ($ ret ), new Group ()
0 commit comments