SugarCRM常用的几个简单修改

1、如何修改SugarCRM默认登录后的显示模块

SugarCRM默认登录后会进入首页,如果需要修改为自己的模块,可以直接通过config_override.php进行修改,添加如下的配置信息:

$sugar_config['default_module'] = '模块名称';

2、如何隐藏SugarCRM在页面底部的版权页

找到themes\Sugar5\tpls\footer.tpl文件,将里面的

<div id="footer"">  

修改为:

<div id="footer" style="display:none">  

3、如何在登录成功后,在页面头部显示自定义信息

SugarCRM登录成功后,在页面最上方显示一个自定义内容框,可以使用SugarCRM提供的钩子,但是因为我每次都要显示,因此我的做法是直接修改thems\Sugar5\tpls\header.tpl,在里面添加自己需要的内容,例如:

{if $AUTHENTICATED}  
<script type='text/javascript'>  
    window.parent.status_check_ok("{$CURRENT_USER_WORKNO}");  
</script>  
{/if}  

上面 $AUTHENTICATED 试看有没有登录,下面则是在登录后去,我自己写的JS调用。

4、系统管理页面里面,如果邮箱设置没有设置好,SugarCRM总是出来一个红字提醒提供设置正确的邮箱服务器。

因为我这里没有必要使用邮箱设置,所以需要去掉这段显示,方法为,找到modules\Administrator\DisplayWarnings.php,将

function displayAdminError($errorString){  
    $output = '<p class="error">' . $errorString .'</p>';  
        echo $output;  
}  

修改为

function displayAdminError($errorString){  
    $output = '<p class="error" style="display:none">' . $errorString .'</p>';  
        echo $output;  
}  

5、默认首页的Sugar Feeds、Sugar News总让人很心烦,去掉它很简单,找到modules\Home\index.php,注释掉:

// This is here to get Sugar dashlets added above the rest  
$dashlets[create_guid()] = array('className' => 'iFrameDashlet',  
                                 'module' => 'Home',  
                                 'forceColumn' => 0,  
                                 'fileLocation' => $dashletsFiles['iFrameDashlet']['file'],  
                                 'options' => array('titleLabel' => 'LBL_DASHLET_DISCOVER_SUGAR_PRO',  
                                                    'url' => 'http://www.sugarcrm.com/crm/product/gopro',  
                                                    'height' => 315,  
                                     ));  

ets[create_guid()] = array ('className' => 'SugarFeedDashlet',  
                                  'module' => 'SugarFeed',  
                                  'forceColumn' => 1,  
                                  'fileLocation' => $dashletsFiles['SugarFeedDashlet']['file'],  
                                  );  

        $dashlets[create_guid()] = array('className' => 'iFrameDashlet',  
                                 'module' => 'Home',  
                                 'forceColumn' => 1,  
                                 'fileLocation' => $dashletsFiles['iFrameDashlet']['file'],  
                                 'options' => array('titleLabel' => 'LBL_DASHLET_SUGAR_NEWS',  
                                                    'url' => 'http://www.sugarcrm.com/crm/product/news',  
                                                    'height' => 315,  
                                     ));  

注意,这边注释掉的话,仅仅是在注释掉以后新创建的用户生效,老用户是访问历史配置数据信息中的,要去掉老用户的显示,可以自己关闭显示不需要的模块,或者直接在数据中清除记录。

6、SugarCRM系统管理页面里面的出现的官方信息页面很烦人

去掉它的方式很简单,找到modules\Administrator\metadata\adminpaneldefs.php,删除以下内容:

$admin_option_defs['Administration']['support']= array('Support','LBL_SUPPORT_TITLE','LBL_SUPPORT','./index.php?module=Administration&action=SupportPortal&view=support_portal');  
$admin_option_defs['documentation']= array('OnlineDocumentation','LBL_DOCUMENTATION_TITLE','LBL_DOCUMENTATION','./index.php?module=Administration&action=SupportPortal&view=documentation&help_module=Administration&edition='.$sugar_flavor.'&key='.$server_unique_key.'&language='.$current_language);  


$admin_option_defs['Administration']['update'] = array('sugarupdate','LBL_SUGAR_UPDATE_TITLE','LBL_SUGAR_UPDATE','./index.php?module=Administration&action=Updater');  
$admin_option_defs['Administration']['documentation']= array('OnlineDocumentation','LBL_DOCUMENTATION_TITLE','LBL_DOCUMENTATION',  
        'javascript:void window.open("index.php?module=Administration&action=SupportPortal&view=documentation&help_module=Administration&edition='.$sugar_flavor.'&key='.$server_unique_key.'&language='.$current_language.'", "helpwin","width=600,height=600,status=0,resizable=1,scrollbars=1,toolbar=0,location=0")');  

if(!emptyempty($license->settings['license_latest_versions'])){  
    $encodedVersions = $license->settings['license_latest_versions'];  
    $versions = unserialize(base64_decode( $encodedVersions));  
    include('sugar_version.php');  
    if(!emptyempty($versions)){  
        foreach($versions as $version){  
            if(compareVersions($version['version'], $sugar_version))  
            {  
                $admin_option_defs['Administration']['update'][] ='red';  
                if(!isset($admin_option_defs['Administration']['update']['additional_label']))$admin_option_defs['Administration']['update']['additional_label']= '('.$version['version'].')';  

            }  
        }  
    }  
}  



$admin_group_header[]= array('LBL_SUGAR_NETWORK_TITLE','',false,$admin_option_defs, 'LBL_SUGAR_NETWORK_DESC');  

同样,如果你想在系统管理页面中删除某些页面,或者添加某些页面的话,都可以通过修改这个文件来实现。