source: companies/celepar/phpgwapi/doc/contacts.readme.txt @ 763

Revision 763, 7.7 KB checked in by niltonneto, 15 years ago (diff)

Importação inicial do Expresso da Celepar

Line 
1  /**************************************************************************\
2  * eGroupWare API - Contacts class documentation                            *
3  * This file written by Miles Lott <milosch@groupwhare.org>                 *
4  * -------------------------------------------------------------------------*
5  * This library is free software; you can redistribute it and/or modify it  *
6  * under the terms of the GNU Lesser General Public License as published by *
7  * the Free Software Foundation; either version 2.1 of the License,         *
8  * or any later version.                                                    *
9  * This library is distributed in the hope that it will be useful, but      *
10  * WITHOUT ANY WARRANTY; without even the implied warranty of               *
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.                     *
12  * See the GNU Lesser General Public License for more details.              *
13  * You should have received a copy of the GNU Lesser General Public License *
14  * along with this library; if not, write to the Free Software Foundation,  *
15  * Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA            *
16  \**************************************************************************/
17
18
19
20Starting with the most cumbersome function:
21
22function read($start,$offset,$fields,$query="",$filter="",$sort="",$order="")
23
24        Purpose:
25                Returns a list of contacts based on limits, query, and filter,
26                in an array of name/values, e.g.:
27
28                        $fields[0]["id"]    => "354",
29                        $fields[0]["email"] => "name@domain.com", ...
30
31                        $fields[1]["id"]    => "355",
32                        $fields[1]["email"] => "othername@otherdomain.com", ...
33
34        Inputs:
35
36                $start = start of list, e.g. 1,16,31
37                $offset = numrows, e.g. 15,30,etc. from nextmatchs, usually
38                $fields = simple array of fields to return:
39
40                        $qfields = array(
41                                'id' => 'id',
42                                'n_given' => 'n_given
43                        );
44
45                $query = simple string to search for, e.g. "milosch" or "555"
46
47                $filter = for 'accounting' fields other than id (use read_single_entry for
48                that):
49
50                        owner  = account_id of record owner
51                        access = public/private
52                        cat_id = category id for the record
53                        lid    = account_lid for account records stored here, if any
54                        tid    = type id:
55                                n = normal contact - almost always use this
56                                p = profiles for hr, tied to account records
57                                u = user account, if stored in contacts class
58                                g = group account, ""
59               
60                        Filters should be in the format:
61
62                                example 1: 'tid=n'                              filter for normal contacts
63                                example 2: 'tid=u,lid=milosch'  filter user accounts for lid
64                                                                                                'milosch'
65                                etc...
66
67                $sort = ASC, DESC, or "" (defaults to ASC)
68
69                $order = sort on this field, e.g. n_given
70
71
72function read_single_entry($id,$fields)
73
74        Purpose:
75                returns a single array of name/value based on id
76                and field selection, e.g.:
77
78                        $fields[0]["email"]   => "name@domain.com"
79                        $fields[0]["n_given"] => "Bob"
80
81        Inputs:
82
83                $id = id of entry you want to return
84       
85                $fields = simple array of fields to return
86
87                        $qfields = array(
88                                'id' => 'id',
89                                'n_given' => 'n_given
90                        );
91
92
93function add($owner,$fields,$access='',$cat_id='',$tid='n')
94
95        Purpose:
96
97                Add a new contact record of the type, category and access sent
98                with a field list.
99
100        Inputs:
101
102                $owner  =       id of user adding this data
103
104                $fields =       simple array of fields to write into the new record
105
106                $access =       public/private
107
108                $cat_id =       category id for the record, if desired
109
110                $tid    =       type id ( see read() above ), defaults to 'n'
111
112
113function update($id,$owner,$fields,$access='',$cat_id='',$tid='')
114
115        Purpose:
116
117                Update an entry already in the contacts list
118
119        Inputs:
120
121                $id     =       id of entry you want to update
122               
123                $owner  =       id of user modifying this data
124               
125                $fields =       simple array of fields to update in the record
126                                        (see examples above)
127
128                $access =       public/private
129
130                $cat_id =       category id for the record, if desired
131
132
133                $tid    =       type id ( see read() above ), defaults to 'n'
134
135
136function delete_($id)
137
138        Purpose:
139
140                Delete an entry already in the contacts list
141
142        Inputs:
143
144                $id = id of entry you want to delete
145
146
147Stock contact fields, other than accounting fields mentioned above:
148
149                        $this->stock_contact_fields = array(
150                                "fn"                     => "fn",        // 'prefix given middle family suffix'
151                                "n_given"                => "n_given",   // firstname
152                                "n_family"               => "n_family",  // lastname
153                                "n_middle"               => "n_middle",
154                                "n_prefix"               => "n_prefix",
155                                "n_suffix"               => "n_suffix",
156                                "sound"                  => "sound",
157                                "bday"                   => "bday",             // Birthday (12/31/1969)
158                                "note"                   => "note",             // Note, description, etc.
159                                "tz"                     => "tz",               // Hours offset from phpgw install
160                                "geo"                    => "geo",              // Not used
161                                "url"                    => "url",
162                                "pubkey"                 => "pubkey",   // Similar to note, but for public encryption key
163
164                                "org_name"               => "org_name",  // company
165                                "org_unit"               => "org_unit",  // division
166                                "title"                  => "title",
167
168                                "adr_one_street"         => "adr_one_street",   // Business address entry
169                                "adr_one_locality"       => "adr_one_locality",
170                                "adr_one_region"         => "adr_one_region",
171                                "adr_one_postalcode"     => "adr_one_postalcode",
172                                "adr_one_countryname"    => "adr_one_countryname",
173                                "adr_one_type"           => "adr_one_type", // address is domestic/intl/postal/parcel/work/home
174                                "label"                  => "label", // address label
175
176                                "adr_two_street"         => "adr_two_street",   // Home address entry
177                                "adr_two_locality"       => "adr_two_locality",
178                                "adr_two_region"         => "adr_two_region",
179                                "adr_two_postalcode"     => "adr_two_postalcode",
180                                "adr_two_countryname"    => "adr_two_countryname",
181                                "adr_two_type"           => "adr_two_type", // address is domestic/intl/postal/parcel/work/home
182
183                                "tel_work"               => "tel_work",
184                                "tel_home"               => "tel_home",
185                                "tel_voice"              => "tel_voice",
186                                "tel_fax"                => "tel_fax",
187                                "tel_msg"                => "tel_msg",
188                                "tel_cell"               => "tel_cell",
189                                "tel_pager"              => "tel_pager",
190                                "tel_bbs"                => "tel_bbs",
191                                "tel_modem"              => "tel_modem",
192                                "tel_car"                => "tel_car",
193                                "tel_isdn"               => "tel_isdn",
194                                "tel_video"              => "tel_video",
195                                "tel_prefer"             => "tel_prefer", // home;work;voice
196                                "email"                  => "email",
197                                "email_type"             => "email_type", //'INTERNET','CompuServe',etc...
198                                "email_home"             => "email_home",
199                                "email_home_type"        => "email_home_type" //'INTERNET','CompuServe',etc...
200                        );
201
202Other useful arrays for setting option dialogs, etc.
203
204                        // Used to set adr_one_type/adr_two_type, e.g. 'intl;work'
205                        $this->adr_types = array(
206                                "dom"    => lang("Domestic"),
207                                "intl"   => lang("International"),
208                                "parcel" => lang("Parcel"),
209                                "postal" => lang("Postal")
210                        );
211
212                        // Used to set preferred number field, e.g. 'cell' or 'work'
213                        $this->tel_types = array(
214                                "work"  => "work",
215                                "home"  => "home",
216                                "voice" => "voice",
217                                "fax"   => "fax",
218                                "msg"   => "msg",
219                                "cell"  => "cell",
220                                "pager" => "pager",
221                                "bbs"   => "bbs",
222                                "modem" => "modem",
223                                "car"   => "car",
224                                "isdn"  => "isdn",
225                                "video" => "video"
226                        );
227
228                        $this->email_types = array(
229                                "INTERNET"   => "INTERNET",
230                                "CompuServe" => "CompuServe",
231                                "AOL"        => "AOL",
232                                "Prodigy"    => "Prodigy",
233                                "eWorld"     => "eWorld",
234                                "AppleLink"  => "AppleLink",
235                                "AppleTalk"  => "AppleTalk",
236                                "PowerShare" => "PowerShare",
237                                "IBMMail"    => "IBMMail",
238                                "ATTMail"    => "ATTMail",
239                                "MCIMail"    => "MCIMail",
240                                "X.400"      => "X.400",
241                                "TLX"        => "TLX"
242                        );
243
Note: See TracBrowser for help on using the repository browser.