[2] | 1 | <?php |
---|
[5509] | 2 | /*************************************************************************** |
---|
| 3 | * Expresso Livre * |
---|
| 4 | * http://www.expressolivre.org * |
---|
| 5 | * -------------------------------------------- * |
---|
| 6 | * This program is free software; you can redistribute it and/or modify it * |
---|
| 7 | * under the terms of the GNU General Public License as published by the * |
---|
| 8 | * Free Software Foundation; either version 2 of the License, or (at your * |
---|
| 9 | * option) any later version. * |
---|
| 10 | \**************************************************************************/ |
---|
| 11 | |
---|
[2] | 12 | class bo_group |
---|
| 13 | { |
---|
| 14 | |
---|
| 15 | var $so; |
---|
| 16 | |
---|
| 17 | function bo_group() |
---|
| 18 | { |
---|
| 19 | $this->so = CreateObject('contactcenter.so_group'); |
---|
| 20 | } |
---|
| 21 | |
---|
| 22 | function get_groups() |
---|
| 23 | { |
---|
| 24 | return $this->so -> select(); |
---|
| 25 | } |
---|
| 26 | |
---|
| 27 | function get_group($id) |
---|
| 28 | { $result = $this-> so -> select($id); |
---|
| 29 | return $result[0]; |
---|
| 30 | } |
---|
| 31 | |
---|
| 32 | function commit($status, $data) |
---|
| 33 | { |
---|
| 34 | if($status == 'insert') |
---|
| 35 | $result = $this-> so -> insert($data); |
---|
| 36 | |
---|
| 37 | else if($status == 'update') |
---|
| 38 | $result = $this-> so -> update($data); |
---|
| 39 | |
---|
| 40 | else if($status == 'delete') |
---|
| 41 | $result = $this-> so -> delete($data); |
---|
| 42 | |
---|
| 43 | |
---|
| 44 | return $result; |
---|
| 45 | } |
---|
| 46 | |
---|
[1280] | 47 | function get_all_contacts($field = false,$owner=null){ |
---|
[2] | 48 | |
---|
[1280] | 49 | $result = $this-> so -> selectAllContacts($field,$owner); |
---|
[2] | 50 | return $result; |
---|
| 51 | } |
---|
| 52 | |
---|
[4754] | 53 | function verify_shared_contact($owner,$email){ |
---|
| 54 | |
---|
| 55 | $result = $this-> so -> verifySharedContact($owner,$email); |
---|
| 56 | return $result; |
---|
| 57 | } |
---|
[2] | 58 | |
---|
| 59 | function get_contacts_by_group($id){ |
---|
| 60 | |
---|
| 61 | $result = $this-> so -> selectContactsByGroup($id); |
---|
| 62 | return $result; |
---|
| 63 | } |
---|
| 64 | |
---|
[5131] | 65 | function verify_contact($email, $name, $phone){ |
---|
| 66 | $result = $this->so->verifyContact($email, $name, $phone); |
---|
| 67 | return $result; |
---|
| 68 | } |
---|
| 69 | |
---|
[2] | 70 | function getContactsByGroupAlias($alias){ |
---|
| 71 | $result = $this-> so -> selectContactsByGroupAlias($alias); |
---|
| 72 | return $result; |
---|
| 73 | } |
---|
| 74 | |
---|
[4498] | 75 | /*! |
---|
| 76 | * @function get_groups_by_user |
---|
| 77 | * @abstract Busca todos os grupos cadastrados de um usuário. |
---|
| 78 | * @author Luiz Carlos Viana Melo - Prognus |
---|
| 79 | * @param (integer) $id_user O ID do usuário. |
---|
| 80 | * @return Retorna uma estrutura contendo: |
---|
| 81 | * array( |
---|
| 82 | * array( |
---|
| 83 | * id_group => O ID do grupo; |
---|
| 84 | * title => O nome do grupo; |
---|
| 85 | * short_name => O nome abreviado do grupo. |
---|
| 86 | * ) |
---|
| 87 | * ) |
---|
| 88 | */ |
---|
| 89 | function get_groups_by_user($id_user = false) |
---|
| 90 | { |
---|
| 91 | return $this->so->select_owner_groups($id_user); |
---|
| 92 | } |
---|
[2] | 93 | |
---|
[4498] | 94 | /*! |
---|
| 95 | * @function get_contact_groups |
---|
| 96 | * @abstract Busca todos os grupos a qual o contato pertence. |
---|
| 97 | * @author Luiz Carlos Viana Melo - Prognus |
---|
| 98 | * @param (integer) $id_contact O ID do contato. |
---|
| 99 | * @return Retorna uma estrutura contendo: |
---|
| 100 | * array( |
---|
| 101 | * array( |
---|
| 102 | * id_contact => O ID do contato; |
---|
| 103 | * id_connection => O ID da conexão de associação; |
---|
| 104 | * id_group => O ID do grupo; |
---|
| 105 | * title => O nome do grupo; |
---|
| 106 | * short_name => O nome abreviado do grupo. |
---|
| 107 | * ) |
---|
| 108 | * ) |
---|
| 109 | */ |
---|
| 110 | function get_contact_groups ($id_contact) |
---|
| 111 | { |
---|
| 112 | return $this->so->select_contact_groups($id_contact); |
---|
| 113 | } |
---|
| 114 | |
---|
| 115 | /*! |
---|
| 116 | * @function add_contacts_in_group |
---|
| 117 | * @abstract Adiciona novos contatos em um determinado grupo. |
---|
| 118 | * @author Luiz Carlos Viana Melo - Prognus |
---|
| 119 | * @param (integer) $id_group O ID do grupo onde serão adicionados os contatos. |
---|
| 120 | * @param (array) $contacts_conns Os IDs das conexões dos contatos que serão |
---|
| 121 | * associados ao grupo. |
---|
| 122 | * @return Retorna true caso for adicionado com sucesso. |
---|
| 123 | */ |
---|
| 124 | function add_contacts_in_group($id_group, $contacts_conns) |
---|
| 125 | { |
---|
| 126 | //essa função recebe uma lista de ID de conexões que serão adicionadas no grupo. |
---|
| 127 | return $this->so->insertContactsByGroup($id_group, $contacts_conns); |
---|
| 128 | } |
---|
| 129 | |
---|
| 130 | /*! |
---|
| 131 | * @function remove_contacts_from_group |
---|
| 132 | * @abstract Remove contatos de um grupo. |
---|
| 133 | * @author Luiz Carlos Viana Melo - Prognus |
---|
| 134 | * @param (integer) $id_group O ID do grupo de onde serão removidos os contatos. |
---|
| 135 | * @param (array) $contact_conns Os ID das conexões dos contatos que serão |
---|
| 136 | * removidos do grupo. |
---|
| 137 | * @return Retorna True caso for removidos com sucesso. |
---|
| 138 | */ |
---|
| 139 | function remove_contacts_from_group($id_group, $contacts_conns) |
---|
| 140 | { |
---|
| 141 | return $this->so->deleteContactsByGroup($id_group, $contacts_conns); |
---|
| 142 | } |
---|
[4502] | 143 | |
---|
| 144 | function update_contact_groups($id_defaultconnection, $connections, $groups) |
---|
| 145 | { |
---|
| 146 | return $this->so->updateContactGroups($id_defaultconnection, $connections, $groups); |
---|
| 147 | } |
---|
[4498] | 148 | |
---|
[2] | 149 | } |
---|
| 150 | ?> |
---|