- Fix fallback to default source (#1488009)

release-0.6
alecpl 13 years ago
parent 5ed119e534
commit 70c3111826

@ -100,7 +100,7 @@ if ($undo = $_SESSION['contact_undo']) {
}
// instantiate a contacts object according to the given source
function rcmail_contact_source($source=null, $init_env=false)
function rcmail_contact_source($source=null, $init_env=false, $writable=false)
{
global $RCMAIL, $OUTPUT, $CONFIG, $CONTACT_COLTYPES;
@ -108,12 +108,8 @@ function rcmail_contact_source($source=null, $init_env=false)
$source = get_input_value('_source', RCUBE_INPUT_GPC);
}
if (!strlen($source)) {
return null;
}
// Get object
$CONTACTS = $RCMAIL->get_address_book($source);
$CONTACTS = $RCMAIL->get_address_book($source, $writable);
$CONTACTS->set_pagesize($CONFIG['pagesize']);
// set list properties and session vars
@ -163,7 +159,7 @@ function rcmail_default_source($writable=false)
function rcmail_set_sourcename($abook)
{
global $OUTPUT;
// get address book name (for display)
if ($abook && $_SESSION['addressbooks_count'] > 1) {
$name = $abook->get_name();

@ -19,11 +19,10 @@
*/
$CONTACTS = rcmail_contact_source(null, true);
$CONTACTS = rcmail_contact_source(null, true, true);
$cid = get_input_value('_cid', RCUBE_INPUT_POST);
$return_action = empty($cid) ? 'add' : 'edit';
// Source changed, display the form again
if (!empty($_GET['_reload'])) {
rcmail_overwrite_action($return_action);
@ -220,6 +219,11 @@ if (!empty($cid))
// insert a new contact
else {
$source = get_input_value('_source', RCUBE_INPUT_GPC);
// Name of the addressbook already selected on the list
$orig_source = get_input_value('_orig_source', RCUBE_INPUT_GPC);
if (!strlen($source))
$source = $orig_source;
// show notice if existing contacts with same e-mail are found
$existing = false;
@ -254,9 +258,6 @@ else {
}
}
// Name of the addressbook already selected on the list
$orig_source = get_input_value('_orig_source', RCUBE_INPUT_GPC);
if ((string)$source === (string)$orig_source) {
// add contact row or jump to the page where it should appear
$CONTACTS->reset();

Loading…
Cancel
Save