| | |
| | | this.load_contact = function(cid, action, framed) |
| | | { |
| | | var win, url = {}, target = window, |
| | | rec = this.contact_list.data[cid]; |
| | | rec = this.contact_list ? this.contact_list.data[cid] : null; |
| | | |
| | | if (win = this.get_frame_window(this.env.contentframe)) { |
| | | url._framed = 1; |
| | |
| | | if (!cid) |
| | | this.contact_list.clear_selection(); |
| | | |
| | | this.enable_command('compose', rec.email); |
| | | this.enable_command('export-selected', rec._type != 'group'); |
| | | this.enable_command('compose', rec && rec.email); |
| | | this.enable_command('export-selected', rec && rec._type != 'group'); |
| | | } |
| | | else if (framed) |
| | | return false; |
| | |
| | | }; |
| | | |
| | | // update a contact record in the list |
| | | this.update_contact_row = function(cid, cols_arr, newcid, source) |
| | | this.update_contact_row = function(cid, cols_arr, newcid, source, data) |
| | | { |
| | | var c, row, list = this.contact_list; |
| | | |
| | |
| | | list.selection[0] = newcid; |
| | | row.style.display = ''; |
| | | } |
| | | |
| | | list.data[cid] = data; |
| | | } |
| | | }; |
| | | |
| | |
| | | $record['email'] = reset($CONTACTS->get_col_values('email', $record, true)); |
| | | $record['name'] = rcube_addressbook::compose_list_name($record); |
| | | |
| | | foreach (array('name', 'email') as $col) |
| | | foreach (array('name') as $col) |
| | | $a_js_cols[] = Q((string)$record[$col]); |
| | | |
| | | // update the changed col in list |
| | | $OUTPUT->command('parent.update_contact_row', $cid, $a_js_cols, $newcid, $source); |
| | | $OUTPUT->command('parent.update_contact_row', $cid, $a_js_cols, $newcid, $source, $record); |
| | | |
| | | // show confirmation |
| | | $OUTPUT->show_message('successfullysaved', 'confirmation', null, false); |