]> CyberLeo.Net >> Repos - Github/sugarcrm.git/blob - modules/EAPM/views/view.detail.php
Release 6.3.0
[Github/sugarcrm.git] / modules / EAPM / views / view.detail.php
1 <?php
2 if(!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');
3
4 /*********************************************************************************
5  * SugarCRM Community Edition is a customer relationship management program developed by
6  * SugarCRM, Inc. Copyright (C) 2004-2011 SugarCRM Inc.
7  * 
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.
14  * 
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
18  * details.
19  * 
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
23  * 02110-1301 USA.
24  * 
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.
27  * 
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.
31  * 
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  ********************************************************************************/
38
39
40 require_once('include/MVC/View/views/view.detail.php');
41
42 class EAPMViewDetail extends ViewDetail {
43
44     private $_returnId;
45
46     public function __construct()
47     {
48         $this->setReturnId();
49         parent::__construct();
50     }
51
52     protected function setReturnId()
53     {
54         $returnId = $GLOBALS['current_user']->id;
55         if(!empty($_REQUEST['user_id']) && !empty($_REQUEST['return_module']) && 'Users' == $_REQUEST['return_module']){
56             $returnId = $_REQUEST['user_id'];
57         }
58         $this->_returnId = $returnId;
59     }
60
61
62     protected function _getModuleTab()
63     {
64         return 'Users';
65     }
66
67     /**
68          * @see SugarView::_getModuleTitleParams()
69          */
70         protected function _getModuleTitleParams($browserTitle = false)
71         {
72             global $mod_strings;
73
74         $returnAction = 'DetailView';
75         $returnModule = 'Users';
76         $returnId = $GLOBALS['current_user']->id;
77         $returnName = $GLOBALS['current_user']->full_name;
78         if(!empty($_REQUEST['return_action']) && !empty($_REQUEST['return_module'])){
79             if('Users' == $_REQUEST['return_module']){
80                 if('EditView' == $_REQUEST['return_action']){
81                     $returnAction = 'EditView';
82                 }
83                 if(!empty($_REQUEST['return_name'])){
84                     $returnName = $_REQUEST['return_name'];
85                 }
86                 if(!empty($_REQUEST['user_id'])){
87                     $returnId = $_REQUEST['user_id'];
88                 }
89             }
90         }
91
92         $this->_returnId = $returnId;
93
94         $iconPath = $this->getModuleTitleIconPath($this->module);
95         $params = array();
96         if (!empty($iconPath) && !$browserTitle) {
97             $params[] = "<a href='index.php?module=Users&action=index'><img src='{$iconPath}' alt='".translate('LBL_MODULE_NAME','Users')."' title='".translate('LBL_MODULE_NAME','Users')."' align='absmiddle'></a>";
98         }
99         else {
100             $params[] = translate('LBL_MODULE_NAME','Users');
101         }
102         $params[] = "<a href='index.php?module={$returnModule}&action=EditView&record={$returnId}'>".$returnName."</a>";
103         if($returnAction == 'EditView'){
104             $params[] = $GLOBALS['app_strings']['LBL_EDIT_BUTTON_LABEL'];
105         }
106         return $params;
107     }
108
109     /**
110          * @see SugarView::getModuleTitleIconPath()
111          */
112         protected function getModuleTitleIconPath($module) 
113     {
114         return parent::getModuleTitleIconPath('Users');
115     }
116
117         function display(){
118         $this->ss->assign('return_id', $this->_returnId);
119         if($GLOBALS['current_user']->is_admin || empty($this->bean) || empty($this->bean->id) || $this->bean->isOwner($GLOBALS['current_user']->id)){
120                         parent::display();
121         } else {
122                 ACLController::displayNoAccess();
123         }
124         }
125 }
126
127 ?>