}
/* Init objects. */
-$imp_compose = $injector->getInstance('IMP_Compose')->getOb();
+$imp_compose = $injector->getInstance('IMP_Injector_Factory_Compose')->create();
$imp_ui = new IMP_Ui_Compose();
$show_editor = false;
$compose_disable = !IMP::canCompose();
/* Initialize objects. */
-$imp_compose = $injector->getInstance('IMP_Compose')->getOb($vars->composeCache);
+$imp_compose = $injector->getInstance('IMP_Injector_Factory_Compose')->create($vars->composeCache);
$imp_ui = new IMP_Ui_Compose();
foreach (array_keys($display_hdrs) as $val) {
}
/* Initialize the IMP_Compose:: object. */
-$imp_compose = $injector->getInstance('IMP_Compose')->getOb($vars->composeCache);
+$imp_compose = $injector->getInstance('IMP_Injector_Factory_Compose')->create($vars->composeCache);
$imp_compose->pgpAttachPubkey((bool) $vars->pgp_attach_pubkey);
$imp_compose->userLinkAttachments((bool) $vars->link_attachments);
*/
public function cancelCompose()
{
- $imp_compose = $GLOBALS['injector']->getInstance('IMP_Compose')->getOb($this->_vars->imp_compose);
+ $imp_compose = $GLOBALS['injector']->getInstance('IMP_Injector_Factory_Compose')->create($this->_vars->imp_compose);
$imp_compose->destroy('cancel');
return true;
*/
public function deleteDraft()
{
- $GLOBALS['injector']->getInstance('IMP_Compose')->getOb($this->_vars->imp_compose)->destroy('cancel');
+ $GLOBALS['injector']->getInstance('IMP_Injector_Factory_Compose')->create($this->_vars->imp_compose)->destroy('cancel');
return true;
}
public function deleteAttach()
{
if (isset($this->_vars->atc_indices)) {
- $imp_compose = $GLOBALS['injector']->getInstance('IMP_Compose')->getOb($this->_vars->imp_compose);
+ $imp_compose = $GLOBALS['injector']->getInstance('IMP_Injector_Factory_Compose')->create($this->_vars->imp_compose);
foreach ($this->_vars->atc_indices as $val) {
$GLOBALS['notification']->push(sprintf(_("Deleted attachment \"%s\"."), Horde_Mime::decode($imp_compose[$val]['part']->getName(true))), 'horde.success');
unset($imp_compose[$val]);
*/
public function addAttachment()
{
- $imp_compose = $GLOBALS['injector']->getInstance('IMP_Compose')->getOb($this->_vars->composeCache);
+ $imp_compose = $GLOBALS['injector']->getInstance('IMP_Injector_Factory_Compose')->create($this->_vars->composeCache);
$result = new stdClass;
$result->action = 'addAttachment';
$result->success = 1;
try {
- $imp_compose = $GLOBALS['injector']->getInstance('IMP_Compose')->getOb($this->_vars->composeCache);
+ $imp_compose = $GLOBALS['injector']->getInstance('IMP_Injector_Factory_Compose')->create($this->_vars->composeCache);
$imp_compose->sendRedirectMessage($this->_vars->redirect_to);
$result->mbox = $imp_compose->getMetadata('mailbox');
}
$headers['subject'] = $this->_vars->subject;
- $imp_compose = $GLOBALS['injector']->getInstance('IMP_Compose')->getOb($this->_vars->composeCache);
+ $imp_compose = $GLOBALS['injector']->getInstance('IMP_Injector_Factory_Compose')->create($this->_vars->composeCache);
return array($result, $imp_compose, $headers, $identity);
}
*/
protected function _initCompose()
{
- $imp_compose = $GLOBALS['injector']->getInstance('IMP_Compose')->getOb($this->_vars->imp_compose);
+ $imp_compose = $GLOBALS['injector']->getInstance('IMP_Injector_Factory_Compose')->create($this->_vars->imp_compose);
if (!($imp_contents = $imp_compose->getContentsOb())) {
$imp_contents = $this->_vars->uid
? $GLOBALS['injector']->getInstance('IMP_Contents')->getOb(new IMP_Indices($this->_vars->uid))
{
if (($e->getCode() == Horde_Registry::AUTH_FAILURE) &&
Horde_Util::getFormData('composeCache')) {
- $GLOBALS['injector']->getInstance('IMP_Compose')->getOb()->sessionExpireDraft(Horde_Variables::getDefaultVariables());
+ $GLOBALS['injector']->getInstance('IMP_Injector_Factory_Compose')->create()->sessionExpireDraft(Horde_Variables::getDefaultVariables());
}
}
/* Add IMP-specific binders. */
$binders = array(
'IMP_AuthImap' => new IMP_Injector_Binder_AuthImap(),
- 'IMP_Compose' => new IMP_Injector_Binder_Compose(),
'IMP_Contents' => new IMP_Injector_Binder_Contents(),
'IMP_Crypt_Pgp' => new IMP_Injector_Binder_Pgp(),
'IMP_Crypt_Smime' => new IMP_Injector_Binder_Smime(),
/* Clean up dangling IMP_Compose objects. */
if (!empty($_SESSION['imp']['cache']['compose'])) {
foreach (array_keys($_SESSION['imp']['cache']['compose']) as $key) {
- $GLOBALS['injector']->getInstance('IMP_Compose')->getOb($key)->destroy('cancel');
+ $GLOBALS['injector']->getInstance('IMP_Injector_Factory_Compose')->create($key)->destroy('cancel');
}
}
}
}
/* Check for drafts due to session timeouts. */
- $imp_compose = $GLOBALS['injector']->getInstance('IMP_Compose')->getOb()->recoverSessionExpireDraft();
+ $imp_compose = $GLOBALS['injector']->getInstance('IMP_Injector_Factory_Compose')->create()->recoverSessionExpireDraft();
self::_logMessage(true);
}
+++ /dev/null
-<?php
-/**
- * Binder for IMP_Compose::.
- *
- * 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>
- * @category Horde
- * @license http://www.fsf.org/copyleft/gpl.html GPL
- * @package IMP
- */
-class IMP_Injector_Binder_Compose implements Horde_Injector_Binder
-{
- /**
- */
- public function create(Horde_Injector $injector)
- {
- return new IMP_Injector_Factory_Compose($injector);
- }
-
- /**
- */
- public function equals(Horde_Injector_Binder $binder)
- {
- return false;
- }
-
-}
* @return IMP_Compose The singleton compose instance.
* @throws IMP_Exception
*/
- public function getOb($cacheid = null)
+ public function create($cacheid = null)
{
if (empty($cacheid)) {
$cacheid = strval(new Horde_Support_Randomid());
} elseif (!isset($this->_instances[$cacheid])) {
- $obs = $GLOBALS['injector']->getInstance('Horde_SessionObjects');
+ $obs = $this->_injector->getInstance('Horde_SessionObjects');
$this->_instances[$cacheid] = $obs->query($cacheid);
}
*/
public function shutdown()
{
- $obs = $GLOBALS['injector']->getInstance('Horde_SessionObjects');
+ $obs = $this->_injector->getInstance('Horde_SessionObjects');
foreach ($this->_instances as $key => $val) {
switch ($val->changed) {
}
if (!isset($imp_compose)) {
- $imp_compose = $GLOBALS['injector']->getInstance('IMP_Compose')->getOb();
+ $imp_compose = $GLOBALS['injector']->getInstance('IMP_Injector_Factory_Compose')->create();
try {
$from_line = $GLOBALS['injector']->getInstance('IMP_Identity')->getFromLine();
} catch (Horde_Exception $e) {
$t->setOption('gettext', true);
if (!empty($args['composeCache'])) {
- $imp_compose = $injector->getInstance('IMP_Compose')->getOb($args['composeCache']);
+ $imp_compose = $injector->getInstance('IMP_Injector_Factory_Compose')->create($args['composeCache']);
$t->set('composeCache', $args['composeCache']);
}
* message data. Rather, we must use the IMP_Compose object to get the
* necessary data for Horde_Mime_Part. */
if ($vars->actionID == 'compose_attach_preview') {
- $imp_compose = $injector->getInstance('IMP_Compose')->getOb($vars->composeCache);
+ $imp_compose = $injector->getInstance('IMP_Injector_Factory_Compose')->create($vars->composeCache);
$mime = $imp_compose->buildAttachment($vars->id);
$mime->setMimeId($vars->id);