2 if(!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');
3 /*********************************************************************************
4 * SugarCRM is a customer relationship management program developed by
5 * SugarCRM, Inc. Copyright (C) 2004-2011 SugarCRM Inc.
7 * This program is free software; you can redistribute it and/or modify it under
8 * the terms of the GNU Affero General Public License version 3 as published by the
9 * Free Software Foundation with the addition of the following permission added
10 * to Section 15 as permitted in Section 7(a): FOR ANY PART OF THE COVERED WORK
11 * IN WHICH THE COPYRIGHT IS OWNED BY SUGARCRM, SUGARCRM DISCLAIMS THE WARRANTY
12 * OF NON INFRINGEMENT OF THIRD PARTY RIGHTS.
14 * This program is distributed in the hope that it will be useful, but WITHOUT
15 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
16 * FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
19 * You should have received a copy of the GNU Affero General Public License along with
20 * this program; if not, see http://www.gnu.org/licenses or write to the Free
21 * Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
24 * You can contact SugarCRM, Inc. headquarters at 10050 North Wolfe Road,
25 * SW2-130, Cupertino, CA 95014, USA. or at email address contact@sugarcrm.com.
27 * The interactive user interfaces in modified source and object code versions
28 * of this program must display Appropriate Legal Notices, as required under
29 * Section 5 of the GNU Affero General Public License version 3.
31 * In accordance with Section 7(b) of the GNU Affero General Public License version 3,
32 * these Appropriate Legal Notices must retain the display of the "Powered by
33 * SugarCRM" logo. If the display of the logo is not reasonably feasible for
34 * technical reasons, the Appropriate Legal Notices must display the words
35 * "Powered by SugarCRM".
36 ********************************************************************************/
41 function displayAdminError($errorString){
42 $output = '<p class="error">' . $errorString .'</p>';
46 if(isset($_SESSION['rebuild_relationships'])){
47 displayAdminError(translate('MSG_REBUILD_RELATIONSHIPS', 'Administration'));
50 if(isset($_SESSION['rebuild_extensions'])){
51 displayAdminError(translate('MSG_REBUILD_EXTENSIONS', 'Administration'));
55 $license=new Administration();
56 $license=$license->retrieveSettings('license');
61 if(!empty($_SESSION['HomeOnly'])){
62 displayAdminError(translate('FATAL_LICENSE_ALTERED', 'Administration'));
65 if(isset($license) && !empty($license->settings['license_msg_all'])){
66 displayAdminError(base64_decode($license->settings['license_msg_all']));
68 if ( (strpos($_SERVER["SERVER_SOFTWARE"],'Microsoft-IIS') !== false) && (php_sapi_name() == 'cgi-fcgi') && (ini_get('fastcgi.logging') != '0') ) {
69 displayAdminError(translate('LBL_FASTCGI_LOGGING', 'Administration'));
71 if(is_admin($current_user)){
72 if(!empty($_SESSION['COULD_NOT_CONNECT'])){
73 displayAdminError(translate('LBL_COULD_NOT_CONNECT', 'Administration') . ' '. $timedate->to_display_date_time($_SESSION['COULD_NOT_CONNECT']));
75 if(!empty($_SESSION['EXCEEDING_OC_LICENSES']) && $_SESSION['EXCEEDING_OC_LICENSES'] == true){
76 displayAdminError(translate('LBL_EXCEEDING_OC_LICENSES', 'Administration'));
78 if(isset($license) && !empty($license->settings['license_msg_admin'])){
80 $GLOBALS['log']->fatal(base64_decode($license->settings['license_msg_admin']));
81 //displayAdminError(base64_decode($license->settings['license_msg_admin']));
85 //No SMTP server is set up Error.
87 $admin = new Administration();
88 $admin->retrieveSettings();
90 //If sendmail has been configured by setting the config variable ignore this warning
91 $sendMailEnabled = isset($sugar_config['allow_sendmail_outbound']) && $sugar_config['allow_sendmail_outbound'];
93 if(trim($admin->settings['mail_smtpserver']) == '' && !$sendMailEnabled) {
94 if($admin->settings['notify_on']) {
100 displayAdminError(translate('WARN_NO_SMTP_SERVER_AVAILABLE_ERROR','Administration'));
103 if(!empty($dbconfig['db_host_name']) || $sugar_config['sugar_version'] != $sugar_version ){
104 displayAdminError(translate('WARN_REPAIR_CONFIG', 'Administration'));
107 if( !isset($sugar_config['installer_locked']) || $sugar_config['installer_locked'] == false ){
108 displayAdminError(translate('WARN_INSTALLER_LOCKED', 'Administration'));
120 if(empty($GLOBALS['sugar_config']['admin_access_control'])){
121 if(isset($_SESSION['invalid_versions'])){
122 $invalid_versions = $_SESSION['invalid_versions'];
123 foreach($invalid_versions as $invalid){
124 displayAdminError(translate('WARN_UPGRADE', 'Administration'). $invalid['name'] .translate('WARN_UPGRADE2', 'Administration'));
128 if (isset($_SESSION['available_version'])){
129 if($_SESSION['available_version'] != $sugar_version)
131 displayAdminError(translate('WARN_UPGRADENOTE', 'Administration').$_SESSION['available_version_description']);
136 // if (!isset($_SESSION['dst_fixed']) || $_SESSION['dst_fixed'] != true) {
137 // $qDst = "SELECT count(*) AS dst FROM versions WHERE name = 'DST Fix'";
138 // $rDst = $db->query($qDst);
139 // $rowsDst = $db->fetchByAssoc($rDst);
140 // if($rowsDst['dst'] > 0) {
141 // $_SESSION['dst_fixed'] = true;
143 // $_SESSION['dst_fixed'] = false;
144 // displayAdminError($app_strings['LBL_DST_NEEDS_FIXIN']);
149 if(isset($_SESSION['administrator_error']))
151 // Only print DB errors once otherwise they will still look broken
152 // after they are fixed.
153 displayAdminError($_SESSION['administrator_error']);
156 unset($_SESSION['administrator_error']);