Ignore:
Timestamp:
06/22/12 11:02:56 (12 years ago)
Author:
acoutinho
Message:

Ticket #2766 - Melhorias no recurso contatos dos usuario

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/prototype/rest/catalog/UserContactsResource.php

    r6559 r6572  
    4545            $c->addData($d); 
    4646 
    47             //Recupera os contatos dinâmicos do usuario 
     47//Recupera os contatos dinâmicos do usuario 
    4848            $dynamicContacts = Controller::find( 
    4949                            array('concept' => 'dynamicContact'), false, array('filter' => array('=', 'owner', Config::me("uidNumber")), 
     
    8080                    $d = new Data(); 
    8181                    $d->setName('number_of_messages'); 
    82                     $d->setValue($value['number_of_messages']); 
     82                    $d->setValue((int)$value['number_of_messages']); 
    8383                    $d->setPrompt('Quantidade de mensagens enviadas'); 
    8484                    $d->setDataType('integer'); 
     
    134134            $acl = array(); 
    135135 
    136             //Recupera o uidNumber de todos os usuários que compartilham suas agendas com o usuário logado 
     136//Recupera o uidNumber de todos os usuários que compartilham suas agendas com o usuário logado 
    137137            $shareds = Controller::service('PostgreSQL')->execResultSql('select acl_account as "uidNumber", acl_rights as "acl" from phpgw_acl where (acl_location =   \'' . Config::me("uidNumber") . '\' AND acl_appname =  \'contactcenter\' )'); 
    138138 
     
    148148            if ($groups) { 
    149149                foreach ($groups as $value) { 
    150  
    151                     $i = new Item($request->resources, ($value['user'] == Config::me("uidNumber") ? 'GroupsResource' : 'SharedGroupsResource'), $value['id']); 
    152  
    153                     $d = new Data(); 
    154                     $d->setName('id'); 
    155                     $d->setValue($value['id']); 
    156                     $d->setPrompt('Id do Grupo'); 
    157                     $d->setDataType('string'); 
    158                     $d->setMaxLength('100'); 
    159                     $d->setMinLength(null); 
    160                     $d->setRequired(true); 
    161                     $i->addData($d); 
    162  
    163                     $d = new Data(); 
    164                     $d->setName('owner'); 
    165                     $d->setValue($value['user']); 
    166                     $d->setPrompt('Id Dono do Grupo'); 
    167                     $d->setDataType('string'); 
    168                     $d->setMaxLength('100'); 
    169                     $d->setMinLength(null); 
    170                     $d->setRequired(true); 
    171                     $i->addData($d); 
    172  
    173                     $d = new Data(); 
    174                     $d->setName('name'); 
    175                     $d->setValue($value['name']); 
    176                     $d->setPrompt('Nome do Grupo'); 
    177                     $d->setDataType('string'); 
    178                     $d->setMaxLength('100'); 
    179                     $d->setMinLength(null); 
    180                     $d->setRequired(true); 
    181                     $i->addData($d); 
    182  
    183                     $d = new Data(); 
    184                     $d->setName('email'); 
    185                     $d->setValue($value['email']); 
    186                     $d->setPrompt('Email do Grupo'); 
    187                     $d->setDataType('string'); 
    188                     $d->setMaxLength('100'); 
    189                     $d->setMinLength(null); 
    190                     $d->setRequired(true); 
    191                     $i->addData($d); 
    192  
    193                     if (Config::me("uidNumber") != $value['user']) { 
    194                         /* Descomentar ao implementar os métodos 
    195                           if ($acl[$value['user']]['delete']) { 
    196                           $l = new Link(); 
    197                           $l->setHref(''); 
    198                           $l->setRel('delete'); 
    199                           $l->setAlt('Remover'); 
    200                           $l->setPrompt('Remover'); 
    201                           $l->setRender('link'); 
    202                           $i->addLink($l); 
    203                           } 
    204  
    205                           if ($acl[$value['user']]['update']) { 
    206                           $l = new Link(); 
    207                           $l->setHref(''); 
    208                           $l->setRel('put'); 
    209                           $l->setAlt('Atualizar'); 
    210                           $l->setPrompt('Atualizar'); 
    211                           $l->setRender('link'); 
    212                           $i->addLink($l); 
    213                           } 
    214  
    215                           if ($acl[$value['user']]['write']) { 
    216                           $l = new Link(); 
    217                           $l->setHref(''); 
    218                           $l->setRel('post'); 
    219                           $l->setAlt('Criar'); 
    220                           $l->setPrompt('Criar novo'); 
    221                           $l->setRender('link'); 
    222                           $i->addLink($l); 
    223                           } 
    224  
    225                           if ($acl[$value['user']]['read']) { 
    226                           $l = new Link(); 
    227                           $l->setHref('/sharedgroup/' . $value['user'] . '/' . $value['id']); 
    228                           $l->setRel('get'); 
    229                           $l->setAlt('Buscar'); 
    230                           $l->setPrompt('Buscar'); 
    231                           $l->setRender('link'); 
    232                           $i->addLink($l); 
    233                           } 
    234                          */ 
    235                     } else { 
    236                         /* Descomentar ao implementar métodos no recurso 
    237                           $l = new Link(); 
    238                           $l->setHref(''); 
    239                           $l->setRel('delete'); 
    240                           $l->setAlt('Remover'); 
    241                           $l->setPrompt('Remover'); 
    242                           $l->setRender('link'); 
    243                           $i->addLink($l); 
    244  
    245                           $l = new Link(); 
    246                           $l->setHref(''); 
    247                           $l->setRel('put'); 
    248                           $l->setAlt('Atualizar'); 
    249                           $l->setPrompt('Atualizar'); 
    250                           $l->setRender('link'); 
    251                           $i->addLink($l); 
    252                          */ 
    253  
    254                         $l = new Link(); 
    255                         $l->setHref('/group/' . $value['id']); 
    256                         $l->setRel('get'); 
    257                         $l->setAlt('Buscar'); 
    258                         $l->setPrompt('Buscar'); 
    259                         $l->setRender('link'); 
    260  
    261                         $i->addLink($l); 
     150                    if (($value['user'] == Config::me("uidNumber")) || ($acl[$value['user']]['read'])) { 
     151 
     152                        $i = new Item($request->resources, ($value['user'] == Config::me("uidNumber") ? 'GroupsResource' : 'SharedGroupsResource'), $value['id']); 
     153 
     154                        $d = new Data(); 
     155                        $d->setName('id'); 
     156                        $d->setValue($value['id']); 
     157                        $d->setPrompt('Id do Grupo'); 
     158                        $d->setDataType('string'); 
     159                        $d->setMaxLength('100'); 
     160                        $d->setMinLength(null); 
     161                        $d->setRequired(true); 
     162                        $i->addData($d); 
     163 
     164                        $d = new Data(); 
     165                        $d->setName('owner'); 
     166                        $d->setValue($value['user']); 
     167                        $d->setPrompt('Id Dono do Grupo'); 
     168                        $d->setDataType('string'); 
     169                        $d->setMaxLength('100'); 
     170                        $d->setMinLength(null); 
     171                        $d->setRequired(true); 
     172                        $i->addData($d); 
     173 
     174                        $d = new Data(); 
     175                        $d->setName('name'); 
     176                        $d->setValue($value['name']); 
     177                        $d->setPrompt('Nome do Grupo'); 
     178                        $d->setDataType('string'); 
     179                        $d->setMaxLength('100'); 
     180                        $d->setMinLength(null); 
     181                        $d->setRequired(true); 
     182                        $i->addData($d); 
     183 
     184                        $d = new Data(); 
     185                        $d->setName('email'); 
     186                        $d->setValue($value['email']); 
     187                        $d->setPrompt('Email do Grupo'); 
     188                        $d->setDataType('string'); 
     189                        $d->setMaxLength('100'); 
     190                        $d->setMinLength(null); 
     191                        $d->setRequired(true); 
     192                        $i->addData($d); 
     193 
     194                        if (Config::me("uidNumber") != $value['user']) { 
     195                            /* Descomentar ao implementar os métodos 
     196                              if ($acl[$value['user']]['delete']) { 
     197                              $l = new Link(); 
     198                              $l->setHref(''); 
     199                              $l->setRel('delete'); 
     200                              $l->setAlt('Remover'); 
     201                              $l->setPrompt('Remover'); 
     202                              $l->setRender('link'); 
     203                              $i->addLink($l); 
     204                              } 
     205 
     206                              if ($acl[$value['user']]['update']) { 
     207                              $l = new Link(); 
     208                              $l->setHref(''); 
     209                              $l->setRel('put'); 
     210                              $l->setAlt('Atualizar'); 
     211                              $l->setPrompt('Atualizar'); 
     212                              $l->setRender('link'); 
     213                              $i->addLink($l); 
     214                              } 
     215 
     216                              if ($acl[$value['user']]['write']) { 
     217                              $l = new Link(); 
     218                              $l->setHref(''); 
     219                              $l->setRel('post'); 
     220                              $l->setAlt('Criar'); 
     221                              $l->setPrompt('Criar novo'); 
     222                              $l->setRender('link'); 
     223                              $i->addLink($l); 
     224                              } 
     225                             */ 
     226 
     227                            $l = new Link(); 
     228                            $l->setHref('/sharedgroup/' . $value['id']); 
     229                            $l->setRel('get'); 
     230                            $l->setAlt('Buscar'); 
     231                            $l->setPrompt('Buscar'); 
     232                            $l->setRender('link'); 
     233                            $i->addLink($l); 
     234                        } else { 
     235                            /* Descomentar ao implementar métodos no recurso 
     236                              $l = new Link(); 
     237                              $l->setHref(''); 
     238                              $l->setRel('delete'); 
     239                              $l->setAlt('Remover'); 
     240                              $l->setPrompt('Remover'); 
     241                              $l->setRender('link'); 
     242                              $i->addLink($l); 
     243 
     244                              $l = new Link(); 
     245                              $l->setHref(''); 
     246                              $l->setRel('put'); 
     247                              $l->setAlt('Atualizar'); 
     248                              $l->setPrompt('Atualizar'); 
     249                              $l->setRender('link'); 
     250                              $i->addLink($l); 
     251                             */ 
     252 
     253                            $l = new Link(); 
     254                            $l->setHref('/group/' . $value['id']); 
     255                            $l->setRel('get'); 
     256                            $l->setAlt('Buscar'); 
     257                            $l->setPrompt('Buscar'); 
     258                            $l->setRender('link'); 
     259 
     260                            $i->addLink($l); 
     261                        } 
     262                        $c->addItem($i); 
    262263                    } 
    263                     $c->addItem($i); 
    264264                } 
    265265            } 
    266266 
    267             //Recupera os contatos pessoais do usuario 
     267//Recupera os contatos pessoais do usuario 
    268268            $contacts = Controller::find(array('concept' => 'contact'), false, array('filter' => array('IN', 'user', $idS))); 
    269269 
     
    271271 
    272272                foreach ($contacts as $value) { 
    273                     $d = new Data(); 
    274                     $i = new Item($request->resources, (($value['user'] == Config::me("uidNumber")) ? 'ContactsResource' : 'SharedContactsResource'), $value['id']); 
    275                     $d->setName('id'); 
    276                     $d->setValue($value['id']); 
    277                     $d->setPrompt('Id do Contato'); 
    278                     $d->setDataType('string'); 
    279                     $d->setMaxLength('100'); 
    280                     $d->setMinLength(null); 
    281                     $d->setRequired(true); 
    282  
    283                     $i->addData($d); 
    284  
    285                     $d = new Data(); 
    286                     $d->setName('owner'); 
    287                     $d->setValue($value['user']); 
    288                     $d->setPrompt('Id Dono do Contato'); 
    289                     $d->setDataType('string'); 
    290                     $d->setMaxLength('100'); 
    291                     $d->setMinLength(null); 
    292                     $d->setRequired(true); 
    293  
    294                     $i->addData($d); 
    295  
    296                     $d = new Data(); 
    297                     $d->setName('name'); 
    298                     $d->setValue($value['name']); 
    299                     $d->setPrompt('Nome do Contato'); 
    300                     $d->setDataType('string'); 
    301                     $d->setMaxLength('100'); 
    302                     $d->setMinLength(null); 
    303                     $d->setRequired(true); 
    304  
    305                     $i->addData($d); 
    306  
    307                     $d = new Data(); 
    308                     $d->setName('email'); 
    309                     $d->setValue(isset($value['email']) ? $value['email'] : null); 
    310                     $d->setPrompt('Email do Contato'); 
    311                     $d->setDataType('string'); 
    312                     $d->setMaxLength('100'); 
    313                     $d->setMinLength(null); 
    314                     $d->setRequired(true); 
    315  
    316                     $i->addData($d); 
    317  
    318                     $d = new Data(); 
    319                     $d->setName('telephone'); 
    320                     $d->setValue(isset($value['telephone']) ? $value['telephone'] : null); 
    321                     $d->setPrompt('Telefone do Contato'); 
    322                     $d->setDataType('string'); 
    323                     $d->setMaxLength('100'); 
    324                     $d->setMinLength(null); 
    325                     $d->setRequired(true); 
    326  
    327                     $i->addData($d); 
    328  
    329                     if (Config::me("uidNumber") != $value['user']) { 
    330                         /* Descomentar ao criar recursos 
    331                           if ($acl[$value['user']]['read']) { 
    332                           $l = new Link(); 
    333                           $l->setHref('/sharedcontact/' . $value['id']); 
    334                           $l->setRel('get'); 
    335                           $l->setAlt('Buscar'); 
    336                           $l->setPrompt('Buscar'); 
    337                           $l->setRender('link'); 
    338                           $i->addLink($l); 
    339                           } 
    340  
    341                           if ($acl[$value['user']]['delete']) { 
    342                           $l = new Link(); 
    343                           $l->setHref(''); 
    344                           $l->setRel('delete'); 
    345                           $l->setAlt('Remover'); 
    346                           $l->setPrompt('Remover'); 
    347                           $l->setRender('link'); 
    348                           $i->addLink($l); 
    349                           } 
    350  
    351                           if ($acl[$value['user']]['put']) { 
    352                           $l = new Link(); 
    353                           $l->setHref(''); 
    354                           $l->setRel('put'); 
    355                           $l->setAlt('Atualizar'); 
    356                           $l->setPrompt('Atualizar'); 
    357                           $l->setRender('link'); 
    358                           $i->addLink($l); 
    359                           } 
    360                          */ 
    361                     } else { 
    362                         /* Descomentar ao criar recursos 
    363                           $l = new Link(); 
    364  
    365                           $l->setHref(''); 
    366                           $l->setRel('delete'); 
    367                           $l->setAlt('Remover'); 
    368                           $l->setPrompt('Remover'); 
    369                           $l->setRender('link'); 
    370  
    371                           $i->addLink($l); 
    372  
    373                           $l = new Link(); 
    374                           $l->setHref(''); 
    375                           $l->setRel('put'); 
    376                           $l->setAlt('Atualizar'); 
    377                           $l->setPrompt('Atualizar'); 
    378                           $l->setRender('link'); 
    379  
    380                           $i->addLink($l); 
    381                          */ 
    382                         $l = new Link(); 
    383                         $l->setHref('/contact/' . $value['id']); 
    384                         $l->setRel('get'); 
    385                         $l->setAlt('Buscar'); 
    386                         $l->setPrompt('Buscar'); 
    387                         $l->setRender('link'); 
    388  
    389                         $i->addLink($l); 
     273 
     274                    if (($value['user'] == Config::me("uidNumber")) || ($acl[$value['user']]['read'])) { 
     275 
     276                        $d = new Data(); 
     277                        $i = new Item($request->resources, (($value['user'] == Config::me("uidNumber")) ? 'ContactsResource' : 'SharedContactsResource'), $value['id']); 
     278                        $d->setName('id'); 
     279                        $d->setValue($value['id']); 
     280                        $d->setPrompt('Id do Contato'); 
     281                        $d->setDataType('string'); 
     282                        $d->setMaxLength('100'); 
     283                        $d->setMinLength(null); 
     284                        $d->setRequired(true); 
     285 
     286                        $i->addData($d); 
     287 
     288                        $d = new Data(); 
     289                        $d->setName('owner'); 
     290                        $d->setValue($value['user']); 
     291                        $d->setPrompt('Id Dono do Contato'); 
     292                        $d->setDataType('string'); 
     293                        $d->setMaxLength('100'); 
     294                        $d->setMinLength(null); 
     295                        $d->setRequired(true); 
     296 
     297                        $i->addData($d); 
     298 
     299                        $d = new Data(); 
     300                        $d->setName('name'); 
     301                        $d->setValue($value['name']); 
     302                        $d->setPrompt('Nome do Contato'); 
     303                        $d->setDataType('string'); 
     304                        $d->setMaxLength('100'); 
     305                        $d->setMinLength(null); 
     306                        $d->setRequired(true); 
     307 
     308                        $i->addData($d); 
     309 
     310                        $d = new Data(); 
     311                        $d->setName('email'); 
     312                        $d->setValue(isset($value['email']) ? $value['email'] : null); 
     313                        $d->setPrompt('Email do Contato'); 
     314                        $d->setDataType('string'); 
     315                        $d->setMaxLength('100'); 
     316                        $d->setMinLength(null); 
     317                        $d->setRequired(true); 
     318 
     319                        $i->addData($d); 
     320 
     321                        $d = new Data(); 
     322                        $d->setName('telephone'); 
     323                        $d->setValue(isset($value['telephone']) ? $value['telephone'] : null); 
     324                        $d->setPrompt('Telefone do Contato'); 
     325                        $d->setDataType('string'); 
     326                        $d->setMaxLength('100'); 
     327                        $d->setMinLength(null); 
     328                        $d->setRequired(true); 
     329 
     330                        $i->addData($d); 
     331 
     332                        if (Config::me("uidNumber") != $value['user']) { 
     333 
     334                            $l = new Link(); 
     335                            $l->setHref('/sharedcontact/' . $value['id']); 
     336                            $l->setRel('get'); 
     337                            $l->setAlt('Buscar'); 
     338                            $l->setPrompt('Buscar'); 
     339                            $l->setRender('link'); 
     340                            $i->addLink($l); 
     341 
     342                            /* Descomentar ao criar recursos 
     343                              if ($acl[$value['user']]['delete']) { 
     344                              $l = new Link(); 
     345                              $l->setHref(''); 
     346                              $l->setRel('delete'); 
     347                              $l->setAlt('Remover'); 
     348                              $l->setPrompt('Remover'); 
     349                              $l->setRender('link'); 
     350                              $i->addLink($l); 
     351                              } 
     352 
     353                              if ($acl[$value['user']]['put']) { 
     354                              $l = new Link(); 
     355                              $l->setHref(''); 
     356                              $l->setRel('put'); 
     357                              $l->setAlt('Atualizar'); 
     358                              $l->setPrompt('Atualizar'); 
     359                              $l->setRender('link'); 
     360                              $i->addLink($l); 
     361                              } 
     362                             */ 
     363                        } else { 
     364                            /* Descomentar ao criar recursos 
     365                              $l = new Link(); 
     366 
     367                              $l->setHref(''); 
     368                              $l->setRel('delete'); 
     369                              $l->setAlt('Remover'); 
     370                              $l->setPrompt('Remover'); 
     371                              $l->setRender('link'); 
     372 
     373                              $i->addLink($l); 
     374 
     375                              $l = new Link(); 
     376                              $l->setHref(''); 
     377                              $l->setRel('put'); 
     378                              $l->setAlt('Atualizar'); 
     379                              $l->setPrompt('Atualizar'); 
     380                              $l->setRender('link'); 
     381 
     382                              $i->addLink($l); 
     383                             */ 
     384                            $l = new Link(); 
     385                            $l->setHref('/contact/' . $value['id']); 
     386                            $l->setRel('get'); 
     387                            $l->setAlt('Buscar'); 
     388                            $l->setPrompt('Buscar'); 
     389                            $l->setRender('link'); 
     390 
     391                            $i->addLink($l); 
     392                        } 
     393                        $c->addItem($i); 
    390394                    } 
    391                     $c->addItem($i); 
    392395                } 
    393396            } 
Note: See TracChangeset for help on using the changeset viewer.