/** * Function to save the identities array * * @param array $identities Array of identities */ function save_identities($identities) { global $username, $data_dir, $domain; if (empty($identities) || !is_array($identities)) { return; } $num_cur = getPref($data_dir, $username, 'identities'); $cnt = count($identities); // Remove any additional identities in prefs // for ($i = $cnt; $i <= $num_cur; $i++) { removePref($data_dir, $username, 'full_name' . $i); removePref($data_dir, $username, 'email_address' . $i); removePref($data_dir, $username, 'reply_to' . $i); setSig($data_dir, $username, $i, ''); } foreach ($identities as $id => $ident) { $key = $id ? $id : ''; setPref($data_dir, $username, 'full_name' . $key, $ident['full_name']); setPref($data_dir, $username, 'email_address' . $key, $ident['email_address']); setPref($data_dir, $username, 'reply_to' . $key, $ident['reply_to']); if ($id === 0) { setSig($data_dir, $username, 'g', $ident['signature']); } else { setSig($data_dir, $username, $key, $ident['signature']); } } setPref($data_dir, $username, 'identities', $cnt); }
/** * Saves the signature option. */ function save_option_signature($option) { global $data_dir, $username; setSig($data_dir, $username, 'g', $option->new_value); }
function SaveUpdateFunction() { global $username, $data_dir, $full_name, $email_address, $reply_to, $signature; $i = 1; $fakeI = 1; $name = 'form_for_' . $i; global ${$name}; while (isset(${$name})) { $name = 'delete_' . $i; global ${$name}; if (isset(${$name})) { $fakeI--; } else { do_hook('options_identities_renumber', $i, $fakeI); $filled = 0; $name = 'full_name' . $i; global ${$name}; if (${$name} != '') { $filled++; } setPref($data_dir, $username, 'full_name' . $fakeI, ${$name}); $name = 'email_address' . $i; global ${$name}; if (${$name} != '') { $filled++; } setPref($data_dir, $username, 'email_address' . $fakeI, ${$name}); $name = 'reply_to' . $i; global ${$name}; if (${$name} != '') { $filled++; } setPref($data_dir, $username, 'reply_to' . $fakeI, ${$name}); $name = 'signature' . $i; global ${$name}; if (${$name} != '') { $filled++; } setSig($data_dir, $username, $fakeI, ${$name}); if ($filled == 0) { $fakeI--; } } $fakeI++; $i++; $name = 'form_for_' . $i; global ${$name}; } setPref($data_dir, $username, 'identities', $fakeI); while ($fakeI != $i) { removePref($data_dir, $username, 'full_name' . $fakeI); removePref($data_dir, $username, 'email_address' . $fakeI); removePref($data_dir, $username, 'reply_to' . $fakeI); setSig($data_dir, $username, $fakeI, ""); $fakeI++; } setPref($data_dir, $username, 'full_name', $full_name); setPref($data_dir, $username, 'email_address', $email_address); setPref($data_dir, $username, 'reply_to', $reply_to); setSig($data_dir, $username, "g", $signature); }