Missing labels in Administration UI

Hi,

I have missing labels in Administration page, some modules are showing the labels correctly while some others aren’t.

Please see the screenshot:

http://prntscr.com/8p4c48

I have set correct permissions as suggested in manual and forum, I have re-installed from fresh, nothing happened, same problem.

Our server instance is running on nginx.

Can some shed some light into this issue?

Hi leenyx,

What permissions values did you set to the directories/files? They may be too restrictive.
Also, If you go to Admin -> Repair and run a Quick Repair and Rebuild, then clear your browser’s cache and press CTRL+F5, does the issue resolve?

Hi John,

I am using this script to set permissions in the server:

APACHEUSER='www-data:www-data'
SUGARPATH='/home/podsystem-sugarcrm/public_html'

find -P $SUGARPATH/ -type d -exec chmod 755 {} \;
find -P $SUGARPATH/ -type f -exec chmod 644 {} \;
find -P $SUGARPATH/ -name *.js -exec chmod 755 {} \;

chmod 664 $SUGARPATH/config.php
chmod 664 $SUGARPATH/config_override.php
chmod 664 $SUGARPATH/sugarcrm.log

find -P $SUGARPATH/cache -type d -exec chmod 775 {} \;
find -P $SUGARPATH/custom -type d -exec chmod 775 {} \;
find -P $SUGARPATH/data -type d -exec chmod 775 {} \;
find -P $SUGARPATH/modules -type d -exec chmod 775 {} \;
find -P $SUGARPATH/include -type d -exec chmod 775 {} \;
find -P $SUGARPATH/upload -type d -exec chmod 775 {} \;

find -P $SUGARPATH/cache -type f -exec chmod 664 {} \;
find -P $SUGARPATH/custom -type f -exec chmod 664 {} \;
find -P $SUGARPATH/data -type f -exec chmod 664 {} \;
find -P $SUGARPATH/modules -type f -exec chmod 664 {} \;
find -P $SUGARPATH/include -type f -exec chmod 664 {} \;
find -P $SUGARPATH/upload -type f -exec chmod 664 {} \;

chown -R $APACHEUSER $SUGARPATH

Running the script and executing a quick repair + rebuild relationships + clear cache + page refresh doesn’t do any changes.

I have been having these issues for a while.

Thanks!

Hi,

We usually recommend running the following permissions commands on your instance:

sudo chown -R www-data:www-data .
sudo chmod -R 755 .
sudo chmod -R 775 cache custom modules themes data upload config_override.php

as we find these to work well with the CRM.

Also, if you navigate to your config.php file, you can find the array:
‘default_permissions’ =>
array (
‘dir_mode’ => ,
‘file_mode’ => ,
‘user’ => ‘’,
‘group’ => ‘’,
),

As you have your Apache user as www-data:www-data, it may be worth changing these values in the array to something like:

‘default_permissions’ =>
array (
‘dir_mode’ => 1517,
‘file_mode’ => 420,
‘user’ => ‘www-data’,
‘group’ => ‘www-data’,
),

And run through the quick repair + clear cache + page refresh process.

I have gone through these steps, the config file reflects exactly those values. The permissions are right but the labels are still missing from the UI.

Thanks.

I am having this issue in Suite 7.10.6 as well as others

I have found that the official sugarcrm way of adding language labels to the Administration menu no longer works.
if you want to support different languages in the admin menu, you would need to do something like this now


$admin_option_defs['Administration'][<section key>] = array (
  '<icon name>',
  translate('LBL_LINK_NAME, <module name>),
  translate('LBL_LINK_DESCRIPTION', <module name>),
  '/index.php?module=<module>&action=<action>'
);

@Madmart maybe this should be added to the Documentation. Anybody can edit!

Where exactly do you do this change?

I add a file for a custom module in custom/Extension/modules/Administration/Ext/Administration/.php

and in this file following the sugarcrm instructions, you will build an array of links and then add all these links to a new entry in the admin_group_header array
but instead of grabbing the labels from the Administration module, you’ll grab them from the modules language files instead,
so if you want to extend an existing module put your new labels in a file inside custom/Extension/modules//Ext/Language/..php or if it’s a custom module it the label will be defined in modules//language/.lang.php

and use the global translate function to take the label from the module you specify.
so a full example of the file inside custom/Extension/modules/Administration/Ext/Administration/.php would look like the following


$admin_section_links = array (); //name of this array doesn't matter we are just defining links here for convenience
$admin_section_links['Administration']['<section key>'] = array(
  <icon>,
  translate('LBL_LINK_NAME, <module name>),
  translate('LBL_LINK_DESCRIPTION', <module name>),
  <link url>,
);

 $admin_group_header[] = array( //this is where we are actually adding to the administration menu
translate('LBL_SECTION_HEADER, <module name>), //this is the text for a group of links
'', // I don't know what this does, always seen it empty sugarcrm support site says it's $other_text parameter for get_form_header()
false, // same as above, not sure what this is for but sugarcrm site says it's $show_help parameter for get_form_header()
$admin_section_links, // links we defined above
translate('LBL_SECTION_DESCRIPTION, <module name>) //text under the tsection title
);
1 Like