Changeset 6429 for sandbox/2.4.1-3/prototype/rest/user/UsersResource.php
- Timestamp:
- 06/06/12 09:01:21 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
sandbox/2.4.1-3/prototype/rest/user/UsersResource.php
r6395 r6429 43 43 } 44 44 else{ 45 //lança warning no log do Expresso 46 trigger_error("Invalid field (".$_GET['field'].") in the query.", E_USER_WARNING); 47 48 //formata os atributos LDAP do conceito 'user' 49 $attributes = implode(', ', $map); 50 51 //Configura o erro na hypermedia 45 //lança warning no log do Expresso 46 trigger_error("Invalid field (".$_GET['field'].") in the query.", E_USER_WARNING); 47 48 //formata os atributos LDAP do conceito 'user' 49 $attributes = implode(', ', $map); 50 51 //Configura o erro na hypermedia 52 $error = new Error(); 53 $error->setCode(Response::NOTFOUND); 54 $error->setTitle('UserLDAP not found'); 55 $error->setDescription("Invalid field (".$_GET['field'].") in the query. Use of these: ".$attributes); 56 57 $c->setError($error); 58 $h->setCollection($c); 59 60 //retorna a hypermedia 61 $response->code = Response::NOTFOUND; 62 $response->body = $h->getHypermedia($request->accept[10][0]); 63 return $response; 64 } 65 } 66 else{ 67 //Executa a consulta dos primeiros 20 usuarios do LDAP 68 $users = Controller::find(array('concept' => 'user','service'=>'OpenLDAP'), false, array('filter' => array('=', 'phpgwAccountType', 'u'),'limit'=>20)); 69 } 70 71 //Se nao foi encontrado usuarios na consulta 72 if($users===false){ 52 73 $error = new Error(); 53 74 $error->setCode(Response::NOTFOUND); 54 75 $error->setTitle('UserLDAP not found'); 55 $error->setDescription( "Invalid field (".$_GET['field'].") in the query. Use of these: ".$attributes);76 $error->setDescription('Users not found.'); 56 77 57 78 $c->setError($error); 58 79 $h->setCollection($c); 59 80 60 //retorna a hypermedia61 81 $response->code = Response::NOTFOUND; 62 82 $response->body = $h->getHypermedia($request->accept[10][0]); 63 83 return $response; 64 } 65 } 66 else{ 67 //Executa a consulta dos primeiros 20 usuarios do LDAP 68 $users = Controller::find(array('concept' => 'user','service'=>'OpenLDAP'), false, array('filter' => array('=', 'phpgwAccountType', 'u'),'limit'=>20)); 69 } 70 71 //Se nao foi encontrado usuarios na consulta 72 if($users===false){ 73 $error = new Error(); 74 $error->setCode(Response::NOTFOUND); 75 $error->setTitle('UserLDAP not found'); 76 $error->setDescription('Users not found.'); 77 78 $c->setError($error); 84 } 85 86 foreach($users as $value){ 87 $d = new Data(); 88 $i = new Item($request->resources, 'UsersResource', $value['uid']); 89 90 $d->setName('name'); 91 $d->setValue($value['name']); 92 $d->setPrompt('Nome do Usuario'); 93 $d->setDataType('string'); 94 $d->setMaxLength('100'); 95 $d->setMinLength(null); 96 $d->setRequired(true); 97 98 $i->addData($d); 99 100 $d = new Data(); 101 $d->setName('email'); 102 $d->setValue($value['mail']); 103 $d->setPrompt('Email do Usuario'); 104 $d->setDataType('string'); 105 $d->setMaxLength('100'); 106 $d->setMinLength(null); 107 $d->setRequired(true); 108 109 $i->addData($d); 110 111 $d = new Data(); 112 $d->setName('telephoneNumber'); 113 $d->setValue($value['telephoneNumber']); 114 $d->setPrompt('Telefone do Usuario'); 115 $d->setDataType('string'); 116 $d->setMaxLength('100'); 117 $d->setMinLength(null); 118 $d->setRequired(true); 119 120 $i->addData($d); 121 122 $l = new Link(); 123 124 $l->setHref(''); 125 $l->setRel('delete'); 126 $l->setAlt('Remover'); 127 $l->setPrompt('Remover'); 128 $l->setRender('link'); 129 130 $i->addLink($l); 131 132 $l = new Link(); 133 $l->setHref(''); 134 $l->setRel('put'); 135 $l->setAlt('Atualizar'); 136 $l->setPrompt('Atualizar'); 137 $l->setRender('link'); 138 139 $i->addLink($l); 140 141 $l = new Link(); 142 $l->setHref('/userldap/'.$value['uid']); 143 $l->setRel('get'); 144 $l->setAlt('Buscar'); 145 $l->setPrompt('Buscar'); 146 $l->setRender('link'); 147 148 $i->addLink($l); 149 $c->addItem($i); 150 } 151 152 $t = new Template(); 153 $d = new Data(); 154 155 $d->setName('name'); 156 $d->setValue(null); 157 $d->setPrompt('Nome do Usuario'); 158 $d->setDataType('string'); 159 $d->setMaxLength(100); 160 $d->setMinLength(null); 161 $d->setRequired(true); 162 163 $t->addData($d); 164 165 $d = new Data(); 166 $d->setName('email'); 167 $d->setValue(null); 168 $d->setPrompt('Email do Usuario'); 169 $d->setDataType('string'); 170 $d->setMaxLength(100); 171 $d->setMinLength(null); 172 $d->setRequired(true); 173 174 $t->addData($d); 175 176 $d = new Data(); 177 $d->setName('telefone'); 178 $d->setValue(null); 179 $d->setPrompt('Telefone do Usuario'); 180 $d->setDataType('string'); 181 $d->setMaxLength(100); 182 $d->setMinLength(null); 183 $d->setRequired(true); 184 185 $t->addData($d); 186 187 $c->setTemplate($t); 188 189 $d = new Data(); 190 $d->setName('Usuario LDAP'); 191 $d->setValue(null); 192 $d->setPrompt('Usuario do LDAP'); 193 $d->setDataType(null); 194 $d->setMaxLength(null); 195 $d->setMinLength(null); 196 $d->setRequired(null); 197 198 $c->addData($d); 199 200 $queries = new Querie(); 201 $queries->setHref($c->href); 202 $queries->setData('field','',true); 203 $queries->setData('value','',true); 204 $c->addQueries($queries); 205 206 79 207 $h->setCollection($c); 80 81 $response->code = Response::NOTFOUND;82 $response->body = $h->getHypermedia($request->accept[10][0]);83 return $response;84 }85 86 foreach($users as $value){87 $d = new Data();88 $i = new Item($request->resources, 'UsersResource', $value['uid']);89 90 $d->setName('name');91 $d->setValue($value['name']);92 $d->setPrompt('Nome do Usuário');93 $d->setDataType('string');94 $d->setMaxLength('100');95 $d->setMinLength(null);96 $d->setRequired(true);97 98 $i->addData($d);99 100 $d = new Data();101 $d->setName('email');102 $d->setValue($value['mail']);103 $d->setPrompt('Email do Usuário');104 $d->setDataType('string');105 $d->setMaxLength('100');106 $d->setMinLength(null);107 $d->setRequired(true);108 109 $i->addData($d);110 111 $d = new Data();112 $d->setName('telephoneNumber');113 $d->setValue($value['telephoneNumber']);114 $d->setPrompt('Telefone do Usuário');115 $d->setDataType('string');116 $d->setMaxLength('100');117 $d->setMinLength(null);118 $d->setRequired(true);119 120 $i->addData($d);121 122 $l = new Link();123 124 $l->setHref('');125 $l->setRel('delete');126 $l->setAlt('Remover');127 $l->setPrompt('Remover');128 $l->setRender('link');129 130 $i->addLink($l);131 132 $l = new Link();133 $l->setHref('');134 $l->setRel('put');135 $l->setAlt('Atualizar');136 $l->setPrompt('Atualizar');137 $l->setRender('link');138 139 $i->addLink($l);140 141 $l = new Link();142 $l->setHref('/userldap/'.$value['uid']);143 $l->setRel('get');144 $l->setAlt('Buscar');145 $l->setPrompt('Buscar');146 $l->setRender('link');147 148 $i->addLink($l);149 $c->addItem($i);150 }151 152 $t = new Template();153 $d = new Data();154 155 $d->setName('name');156 $d->setValue(null);157 $d->setPrompt('Nome do Usuário');158 $d->setDataType('string');159 $d->setMaxLength(100);160 $d->setMinLength(null);161 $d->setRequired(true);162 163 $t->addData($d);164 165 $d = new Data();166 $d->setName('email');167 $d->setValue(null);168 $d->setPrompt('Email do Usuário');169 $d->setDataType('string');170 $d->setMaxLength(100);171 $d->setMinLength(null);172 $d->setRequired(true);173 174 $t->addData($d);175 176 $d = new Data();177 $d->setName('telefone');178 $d->setValue(null);179 $d->setPrompt('Telefone do Usuário');180 $d->setDataType('string');181 $d->setMaxLength(100);182 $d->setMinLength(null);183 $d->setRequired(true);184 185 $t->addData($d);186 187 $c->setTemplate($t);188 189 $d = new Data();190 $d->setName('Usuário LDAP');191 $d->setValue(null);192 $d->setPrompt('Usuário do LDAP');193 $d->setDataType(null);194 $d->setMaxLength(null);195 $d->setMinLength(null);196 $d->setRequired(null);197 198 $c->setData($d);199 200 $queries = array();201 $queries[0] = new Querie();202 $queries[0]->setHref($c->href);203 $queries[0]->setData('field','',true);204 $queries[0]->setData('value','',true);205 $c->setQueries($queries);206 207 208 $h->setCollection($c);209 208 210 209 }catch (Exception $ex){
Note: See TracChangeset
for help on using the changeset viewer.