2 //FILE SUGARCRM flav=pro || flav=sales
3 if(!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');
4 /*********************************************************************************
5 * SugarCRM Community Edition is a customer relationship management program developed by
6 * SugarCRM, Inc. Copyright (C) 2004-2011 SugarCRM Inc.
8 * This program is free software; you can redistribute it and/or modify it under
9 * the terms of the GNU Affero General Public License version 3 as published by the
10 * Free Software Foundation with the addition of the following permission added
11 * to Section 15 as permitted in Section 7(a): FOR ANY PART OF THE COVERED WORK
12 * IN WHICH THE COPYRIGHT IS OWNED BY SUGARCRM, SUGARCRM DISCLAIMS THE WARRANTY
13 * OF NON INFRINGEMENT OF THIRD PARTY RIGHTS.
15 * This program is distributed in the hope that it will be useful, but WITHOUT
16 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
17 * FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
20 * You should have received a copy of the GNU Affero General Public License along with
21 * this program; if not, see http://www.gnu.org/licenses or write to the Free
22 * Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
25 * You can contact SugarCRM, Inc. headquarters at 10050 North Wolfe Road,
26 * SW2-130, Cupertino, CA 95014, USA. or at email address contact@sugarcrm.com.
28 * The interactive user interfaces in modified source and object code versions
29 * of this program must display Appropriate Legal Notices, as required under
30 * Section 5 of the GNU Affero General Public License version 3.
32 * In accordance with Section 7(b) of the GNU Affero General Public License version 3,
33 * these Appropriate Legal Notices must retain the display of the "Powered by
34 * SugarCRM" logo. If the display of the logo is not reasonably feasible for
35 * technical reasons, the Appropriate Legal Notices must display the words
36 * "Powered by SugarCRM".
37 ********************************************************************************/
39 require_once('include/MVC/View/views/view.quickcreate.php');
40 require_once('modules/Emails/EmailUI.php');
42 class EmailsViewQuickcreate extends ViewQuickcreate
45 * @see ViewQuickcreate::display()
47 public function display()
49 $userPref = $GLOBALS['current_user']->getPreference('email_link_type');
50 $defaultPref = $GLOBALS['sugar_config']['email_default_client'];
54 $client = $defaultPref;
56 if ( $client == 'sugar' ) {
58 if(!empty($this->bean->id) && !in_array($this->bean->object_name,array('EmailMan')) ) {
59 $fullComposeUrl = "index.php?module=Emails&action=Compose&parent_id={$this->bean->id}&parent_type={$this->bean->module_dir}";
60 $composeData = array('parent_id'=>$this->bean->id, 'parent_type' => $this->bean->module_dir);
62 $fullComposeUrl = "index.php?module=Emails&action=Compose";
63 $composeData = array('parent_id'=>'', 'parent_type' => '');
66 $j_quickComposeOptions = $eUi->generateComposePackageForQuickCreate($composeData, $fullComposeUrl);
67 $json_obj = getJSONobj();
68 $opts = $json_obj->decode($j_quickComposeOptions);
69 $opts['menu_id'] = 'dccontent';
71 $ss = new Sugar_Smarty();
72 $ss->assign('json_output', $json_obj->encode($opts));
73 $ss->display('modules/Emails/templates/dceMenuQuickCreate.tpl');
77 if(!empty($this->bean->id) && !in_array($this->bean->object_name,array('EmailMan')) ) {
78 $emailAddress = $this->bean->emailAddress->getPrimaryAddress($this->bean);
80 echo "<script>document.location.href='mailto:$emailAddress';lastLoadedMenu=undefined;DCMenu.closeOverlay();</script>";