$js[] = 'DIMP.conf_compose.popup = 1';
}
-$identity = Horde_Prefs_Identity::singleton(array('imp', 'imp'));
+$identity = $injector->getInstance('IMP_Identity');
if (!$prefs->isLocked('default_identity') && isset($vars->identity)) {
$identity->setDefault($vars->identity);
}
}
/* Set the current identity. */
-$identity = Horde_Prefs_Identity::singleton(array('imp', 'imp'));
+$identity = $injector->getInstance('IMP_Identity');
if (!$prefs->isLocked('default_identity') && isset($vars->identity)) {
$identity->setDefault($vars->identity);
}
$vars = Horde_Variables::getDefaultVariables();
/* Set the current identity. */
-$identity = Horde_Prefs_Identity::singleton(array('imp', 'imp'));
+$identity = $injector->getInstance('IMP_Identity');
if (!$prefs->isLocked('default_identity')) {
if (!is_null($vars->identity)) {
$identity->setDefault($vars->identity);
$result->success = 1;
/* Set up identity. */
- $identity = Horde_Prefs_Identity::singleton(array('imp', 'imp'));
+ $identity = $GLOBALS['injector']->getInstance('IMP_Identity');
if (isset($this->_vars->identity) &&
!$GLOBALS['prefs']->isLocked('default_identity')) {
$identity->setDefault($this->_vars->identity);
'IMP_Crypt_Pgp' => new IMP_Injector_Binder_Pgp(),
'IMP_Crypt_Smime' => new IMP_Injector_Binder_Smime(),
'IMP_Folder' => new IMP_Injector_Binder_Folder(),
+ 'IMP_Identity' => new IMP_Injector_Binder_Identity(),
'IMP_Imap_Tree' => new IMP_Injector_Binder_Imaptree(),
'IMP_Sentmail' => new IMP_Injector_Binder_Sentmail()
);
$identity_id = null;
$headers = $contents->getHeaderOb();
if (($fromaddr = Horde_Mime_Address::bareAddress($headers->getValue('from')))) {
- $identity = Horde_Prefs_Identity::singleton(array('imp', 'imp'));
+ $identity = $GLOBALS['injector']->getInstance('IMP_Identity');
$identity_id = $identity->getMatchingIdentity($fromaddr);
}
}
/* Filter out our own address from the addresses we reply to. */
- $identity = Horde_Prefs_Identity::singleton(array('imp', 'imp'));
+ $identity = $GLOBALS['injector']->getInstance('IMP_Identity');
$all_addrs = array_keys($identity->getAllFromAddresses(true));
/* Build the To: header. It is either:
$recip = $this->recipientList(array('to' => $to));
$recipients = implode(', ', $recip['list']);
- $identity = Horde_Prefs_Identity::singleton(array('imp', 'imp'));
+ $identity = $GLOBALS['injector']->getInstance('IMP_Identity');
$from_addr = $identity->getFromAddress();
$contents = $this->getContentsOb();
$msgAddresses[] = $h->getValue($val);
}
- return Horde_Prefs_Identity::singleton(array('imp', 'imp'))->getMatchingIdentity($msgAddresses);
+ return $GLOBALS['injector']->getInstance('IMP_Identity')->getMatchingIdentity($msgAddresses);
}
/**
/* TODO: Retrieve by ID. */
/* See if the address points to the user's public key. */
- $identity = Horde_Prefs_Identity::singleton(array('imp', 'imp'));
+ $identity = $GLOBALS['injector']->getInstance('IMP_Identity');
$personal_pubkey = $this->getPersonalPublicKey();
if (!empty($personal_pubkey) && $identity->hasAddress($address)) {
$result = $personal_pubkey;
$key = $GLOBALS['registry']->call('contacts/getField', array($address, self::PUBKEY_FIELD, $params['sources'], false, true));
} catch (Horde_Exception $e) {
/* See if the address points to the user's public key. */
- $identity = Horde_Prefs_Identity::singleton(array('imp', 'imp'));
+ $identity = $GLOBALS['injector']->getInstance('IMP_Identity');
$personal_pubkey = $this->getPersonalPublicKey();
if (!empty($personal_pubkey) && $identity->hasAddress($address)) {
return $personal_pubkey;
static public function isSpecialFolder($mbox)
{
/* Get the identities. */
- $identity = Horde_Prefs_Identity::singleton(array('imp', 'imp'));
+ $identity = $GLOBALS['injector']->getInstance('IMP_Identity');
return (($mbox == self::folderPref($GLOBALS['prefs']->getValue('drafts_folder'), true)) || in_array($mbox, $identity->getAllSentmailFolders()));
}
if (isset($options['personal'])) {
if (is_array($options['personal'])) {
- $identity = Horde_Prefs_Identity::singleton(array('imp', 'imp'));
+ $identity = $GLOBALS['injector']->getInstance('IMP_Identity');
foreach ($options['personal'] as $val) {
if ($identity->hasAddress($val['inner'])) {
$process['personal'] = $f['personal'];
*/
public function getSpecialMailboxes()
{
- $identity = Horde_Prefs_Identity::singleton(array('imp', 'imp'));
+ $identity = $GLOBALS['injector']->getInstance('IMP_Identity');
return array(
'draft' => IMP::folderPref($GLOBALS['prefs']->getValue('drafts_folder'), true),
'sent' => $identity->getAllSentmailFolders(),
--- /dev/null
+<?php
+/**
+ * Binder for IMP's Identity object.
+ *
+ * Copyright 2010 The Horde Project (http://www.horde.org/)
+ *
+ * See the enclosed file COPYING for license information (GPL). If you
+ * did not receive this file, see http://www.fsf.org/copyleft/gpl.html.
+ *
+ * @author Michael Slusarz <slusarz@horde.org>
+ * @package IMP
+ */
+class IMP_Injector_Binder_Identity implements Horde_Injector_Binder
+{
+ /**
+ */
+ public function create(Horde_Injector $injector)
+ {
+ return Horde_Prefs_Identity::singleton(array('imp', 'imp'));
+ }
+
+ /**
+ */
+ public function equals(Horde_Injector_Binder $binder)
+ {
+ return false;
+ }
+
+}
/* Get list of all folders, parse through and get the list of all
old sent-mail folders. Then sort this array according to
the date. */
- $identity = Horde_Prefs_Identity::singleton(array('imp', 'imp'));
+ $identity = $GLOBALS['injector']->getInstance('IMP_Identity');
$imp_folder = $GLOBALS['injector']->getInstance('IMP_Folder');
$sent_mail_folders = $identity->getAllSentmailFolders();
*/
protected function _getFolders()
{
- return Horde_Prefs_Identity::singleton(array('imp', 'imp'))->getAllSentmailfolders();
+ return $GLOBALS['injector']->getInstance('IMP_Identity')->getAllSentmailfolders();
}
}
{
$success = true;
- $identity = Horde_Prefs_Identity::singleton(array('imp', 'imp'));
+ $identity = $GLOBALS['injector']->getInstance('IMP_Identity');
$imp_folder = $GLOBALS['injector']->getInstance('IMP_Folder');
foreach ($identity->getAllSentmailfolders() as $sent_folder) {
*/
public function describe()
{
- $identity = Horde_Prefs_Identity::singleton(array('imp', 'imp'));
+ $identity = $GLOBALS['injector']->getInstance('IMP_Identity');
$new_folders = $old_folders = array();
foreach ($identity->getAllSentmailfolders() as $folder) {
$vEvent_reply->setAttribute('ORGANIZER', $vEvent->getAttribute('ORGANIZER'), array_pop($organizer));
// Find out who we are and update status.
- $identity = Horde_Prefs_Identity::singleton(array('imp', 'imp'));
+ $identity = $GLOBALS['injector']->getInstance('IMP_Identity');
$attendees = $vEvent->getAttribute('ATTENDEE');
if (!is_array($attendees)) {
$attendees = array($attendees);
array('startStamp' => $startStamp,
'endStamp' => $endStamp));
// Find out who we are and update status.
- $identity = Horde_Prefs_Identity::singleton();
+ $identity = $GLOBALS['injector']->getInstance('IMP_Identity');
$email = $identity->getFromAddress();
// Build the reply.
// Check that you are one of the attendees here.
$is_attendee = false;
if (!($attendees instanceof PEAR_Error) && !empty($attendees)) {
- $identity = Horde_Prefs_Identity::singleton(array('imp', 'imp'));
+ $identity = $GLOBALS['injector']->getInstance('IMP_Identity');
for ($i = 0, $c = count($attendees); $i < $c; ++$i) {
$attendee = parse_url($attendees[$i]);
if (!empty($attendee['path']) &&
return false;
case 'signature_html_select':
- return Horde_Prefs_Identity::singleton(array('imp', 'imp'))->setValue('signature_html', $ui->vars->signature_html);
+ return $GLOBALS['injector']->getInstance('IMP_Identity')->setValue('signature_html', $ui->vars->signature_html);
case 'soundselect':
return $prefs->setValue('nav_audio', $ui->vars->nav_audio);
$t->set('deletekeypair', addslashes(_("Are you sure you want to delete your keypair? (This is NOT recommended!)")));
$t->set('personalkey-delete-help', Horde_Help::link('imp', 'pgp-personalkey-delete'));
} else {
- $imp_identity = Horde_Prefs_Identity::singleton(array('imp', 'imp'));
+ $imp_identity = $GLOBALS['injector']->getInstance('IMP_Identity');
$t->set('fullname', $imp_identity->getFullname());
$t->set('personalkey-create-name-help', Horde_Help::link('imp', 'pgp-personalkey-create-name'));
$t->set('personalkey-create-comment-help', Horde_Help::link('imp', 'pgp-personalkey-create-comment'));
*/
protected function _sentmail()
{
- $identity = Horde_Prefs_Identity::singleton(array('imp', 'imp'));
+ $identity = $GLOBALS['injector']->getInstance('IMP_Identity');
$js = array();
foreach (array_keys($identity->getAll('id')) as $key) {
$imp_folder->create($sent_mail_folder, $prefs->getValue('subscribe'));
}
- $imp_identity = Horde_Prefs_Identity::singleton(array('imp', 'imp'));
- $imp_identity->setValue('sent_mail_folder', IMP::folderPref($sent_mail_folder, false));
+ $GLOBALS['injector']->getInstance('IMP_Identity')->setValue('sent_mail_folder', IMP::folderPref($sent_mail_folder, false));
return true;
}
*/
protected function _signatureHtml()
{
- $identity = Horde_Prefs_Identity::singleton(array('imp', 'imp'));
+ $identity = $GLOBALS['injector']->getInstance('IMP_Identity');
$js = array();
foreach (array_keys($identity->getAll('id')) as $key) {
if (!isset($imp_compose)) {
$imp_compose = IMP_Compose::singleton();
- $identity = Horde_Prefs_Identity::singleton(array('imp', 'imp'));
try {
- $from_line = $identity->getFromLine();
+ $from_line = $GLOBALS['injector']->getInstance('IMP_Identity')->getFromLine();
} catch (Horde_Exception $e) {
$from_line = null;
}
public function identityJs()
{
$identities = array();
- $identity = Horde_Prefs_Identity::singleton(array('imp', 'imp'));
+ $identity = $GLOBALS['injector']->getInstance('IMP_Identity');
$html_sigs = $identity->getAllSignatures('html');
*/
public function convertComposeText($data, $to, $identity)
{
- $imp_identity = Horde_Prefs_Identity::singleton(array('imp', 'imp'));
+ $imp_identity = $GLOBALS['injector']->getInstance('IMP_Identity');
$replaced = 0;
$html_sig = $imp_identity->getSignature('html', $identity);
$ret['from'] = _("Invalid Address");
$ret['error'] = true;
} else {
- $identity = Horde_Prefs_Identity::singleton(array('imp', 'imp'));
- if ($identity->hasAddress($from['inner'])) {
+ if ($GLOBALS['injector']->getInstance('IMP_Identity')->hasAddress($from['inner'])) {
/* This message was sent by one of the user's identity
* addresses - show To: information instead. */
if (empty($ob['to'])) {
if (empty($args['redirect'])) {
/* Load Identity. */
- $identity = Horde_Prefs_Identity::singleton(array('imp', 'imp'));
+ $identity = $GLOBALS['injector']->getInstance('IMP_Identity');
$selected_identity = $identity->getDefault();
/* Generate identities list. */
}
/* Create the Identity object. */
-$user_identity = Horde_Prefs_Identity::singleton(array('imp', 'imp'));
+$user_identity = $injector->getInstance('IMP_Identity');
/* Develop the list of headers to display. */
$basic_headers = $imp_ui->basicHeaders();
$imp_message = $injector->getInstance('IMP_Message');
/* Initialize the user's identities. */
-$user_identity = Horde_Prefs_Identity::singleton(array('imp', 'imp'));
+$user_identity = $injector->getInstance('IMP_Identity');
/* Run through action handlers. */
$vars = Horde_Variables::getDefaultVariables();
}
if (!empty($conf['print']['add_printedby'])) {
- $user_identity = Horde_Prefs_Identity::singleton(array('imp', 'imp'));
+ $user_identity = $injector->getInstance('IMP_Identity');
$headers[] = array(
'header' => htmlspecialchars(_("Printed By")),
'value' => htmlspecialchars($user_identity->getFullname() ? $user_identity->getFullname() : Horde_Auth::getAuth())