Hungarian language allows Account mandatory filed to be empty

The issue is related with the translation file \include\language\hu_HU.lang.php
(as usual !)
Removing that file the validation works.

Now we need to find what is breaking that file… I bet on a parsing error with apostrophes!

Error founded:
It was a translation for Hungarian with an additional ending return that breaks the validation!
The include language file is just a stupi* file with really bad code!

No other language affected :slight_smile: The string is:

$app_strings['LBL_JJWG_MAPS_LAT']

After removing extra line at the ending of the translation, now it works:

So please go to https://crowdin.com/project/suitecrmtranslations and download again the Hungarian pack, remove your actual pack and install again (some other corrections in place)

Note: This error was there since the first SuiteCRM Hungarian translation (it was uploaded from an old Sugar pack).
I’m not Hungarian and it toke me almost 1 hour to fix it. So I hope you can give back to the community some more translations for Hungarian!

1 Like

Wow, that was an impressive fix!

Don’t throw away the broken file. Can you send it me please, or tell me where to get it and where the error is? Or better yet, if you can make that same error happen in an English language file, that would make my tests easier.

I think we should try to add a validation in the software that this error won’t happen again. We could check for extra line breaks when loading a string, or something similar.

Guys thank you for the outstanding support!!! :slight_smile:

Easy to replicate:
\include\language\en_us.lang.php
Lines ~3594

$app_strings['LBL_JJWG_MAPS_LAT'] = 'Latitude';

Hit the ENTER/RETURN key after Latitude so the '; goes into next line

Create or edit an account without the name field and save. No validation!

Its not just that line, this ones goes the same

$app_strings['LBL_JJWG_MAPS_LNG'] = 'Longitude';
$app_strings['LBL_JJWG_MAPS_LAT'] = 'Latitude';
$app_strings['LBL_JJWG_MAPS_GEOCODE_STATUS'] = 'Geocode Status';
$app_strings['LBL_JJWG_MAPS_ADDRESS'] = 'Address';
$app_strings['LBL_BUG_FIX'] = 'Bug Fix';

But editing the lines below or after that lines will trigger the validation.
So there is a bug in the system. I will create an Issue in github!

Issue create https://github.com/salesagility/SuiteCRM/issues/3609 and it looks like its related with LBL_JJWG_MAPS strings

This also happens with Accounts, Contacts, Opportunities, Cases, Meetings, Project and Leads modules.
But not with Campaign, Tasks, Calls, Notes, Documents or Bugs modules