"undefined" message on pop-up

Using latest version of Suite.

I go to Calls

I want to delete a call so I check the box next to it and click Delete button above the list of calls.

I get a pop-up in Chrome browser on an iMac (Mavericks) saying:

The page at newmediawebsitedesign.com says:

(See below)

it offers me “cancel” and “OK.” If I click OK, the call gets deleted.

So how do I fix this message?

Have you set permissions correctly?

There are many articles in the forum about this type of error. I also posted a script that will set permissions on a linux server correctly.

Please try to set permissions and user/owner correctly, update the configuration values in config.php if necessary then execute a quick repair and rebuild and then try again.
Once done please report your result.


I had forgotten to set file


permission to 777 after the last update.

Works fine now. Thanks for the reminder to look there.

Hi all

I have a similar problem. I have updated my permissions to 775 and also cleared the cache folder, did a quick repair and rebuild, and refreshed but still have the same issue.

Is there any other solution in place?


Dear all

I have the same problem. Always solved it with changing permissions to 775 but this time did not work. I also cleared the whole cache folder, did a quick repair and rebuild, and refreshed but still undefined messages.

Any other options to solve this?

See: http://forums.sugarcrm.com/f3/getting-undefined-loading-message-51370/

Someone said to delete the file and restart the program but changing permissions to 777 has always worked for me.

Thanks for the response dev77

I actually set my permissions to 777 and deleted cache/jsLanguage/en_us.js but still get the same problem. Just updating permissions used to easily work for me but this time I have hit a dead-end.

I get a feeling that i am missing or doing something wrong. :frowning:

Any other help?

The only other thing I can think of is to clear the cache of your browser (or try another browser you have not used for a while.)

Oh, maybe just for testing, make every file in your Suite directory 777 and see if that solves it?

The only other thing is to backup your database and do a clean install of Suite in a new directory and then delete the new database and re-load the old one.

I’ve always wished there was a way to install Sugar/Suite WITHOUT creating a new database!

(One of the things I don’t like about Suite is that it basically inherited all the crappy code and poor design from Sugar’s community edition which is basically a bunch of hacks over many years from a lot of people who didn’t really know what they were doing all the time! I’m hoping Suite can raise enough money to re-write some of the stuff and make the system more stable than it is now… which is not very stable… witness the number of issues people have with it… but given the price (free) it’s a bargain!!)

What version of SuiteCRM are you using?

Have you tried deleting ALL the contents of the cache folder? (do not delete the folder itself)

After you do so:
. reset permissions.
. quick repair and rebuild
. then reset permissions again.

and try again!

If look for my previous posts you will find a small script I shared that resets permissions for a linux distribution

You may also try disabling unused languages from admin. (in earlier versions there was a bug related to languages so it was better to disable them)
To do so: Admin->Languages (under System) then move Russian and Spanish to the Disabled Languages side. Then Save.
Run again Quick Repair and Rebuild and reset permissions (I do it before and after).

Hi Guys

I have cleared cache on all my browsers (IE, firefox and chrome). Set permissions to all files 777 before and after any changes on admin panel such as repair and rebuild. Unused languages are disable as well and still same problem. I am on Version 7.0.2

I will do a clean install of Suite as the last option.

I have noticed something on the cpanel that if I use the search (using the search field on cpanel) en_us.js I still find the path mycrm/cache/jsLanguage/en_us.js even though the cache folder is empty when I check it through file manager. I called my host company and they said that the fie is removed even if the path still appears, they can explain who do I still get the file path though. Do you think this may be the cause of the problem somehow?


You are saying you don’t see the file when you FTP into your host, but you see it when you use the host’s cPanel file manager?

Well, we know that Suite creates a new version of en_us.js if it does not see one, and I believe all you have to do is refresh a page to have a new one created if one is not there.

Quit Suite. FTP (or SSH) into the host and delete the file via FTP or SSH). Then go to the host cPanel and see if it is there. If it is, something is really screwed up somewhere!

I wish you had not deleted the entire cache as that was not necessary and might be introducing other issues.

I’d stop messing with this and do a clean install in a new directory… and before you bring over the old database, use the new one and put some test data in it.

After hours of experimenting with permissions, it was not a permission problem for me. If you are getting log files and if you delete the en_us.js files and they get recreated, you don’t have a write permission problem (my installation works fine with directories at 755 and files at 644).

As it turned out, in my situation, I had created a subdomain to access suiteCRM (e.g. crm.mydomain.com). This was causing a path problem within the index file so the language files couldn’t be found. When I used the direct path mydomain.com/suiteCRM, the error messages worked as advertised.

I suspect this is a design flaw and should be addressed in a future release. In the mean time, don’t access suiteCRM through subdomains. I am on 7.2.1.

After moving to 7.2 I’m getting the ‘undefined’ pop up too but I’m NOT using a subdomain… just a sub folder … www.mydomain.com/suite

Any idea how to fix this? Maybe something in the config file? I’ve tried to change the permissions on /cache/jsLanguage/en_us.js to 777 as well as delete it but nothing works. I can’t get to email either. I get the "undefined’ pop up… and so far I’ve not found anyone with a solution.

The message mappings are located in the cache/jsLanguage file. The undefined means the browser can’t find the particular mappings due to not finding the aforementioned mapping file.

Here is a test. When you see the undefined message, right click on the web page and View Page Source of the file. Near the top, locate the text that looks like

<script type="text/javascript" src="cache/jsLanguage/en_us.js..... After the src=, the url should be clickable. Click it and see if the file displays in your browser (as unformatted javsscript). If it does, you don't have a permission or subdomain problem. If the page can't be found, take a look at the url path on the window header. Is this what you expect? In my case it wasn't. By the way, only certain messages like delete confirmations were displaying undefined. Others were just fine.

Very interesting. The source says:

but when I click it it says:


You don’t have permission to access /suite/cache/jsLanguage/index.php on this server.

There is no ‘index.php’ in the jsLanguage directory.

What is going on?

I got something like that too. What did the url say on the title bar of the window? Does it say www.mydomain.com/suite/…?

Mine said crm.mydomain.com/suite/cache… and since the subdomain resolved to mydomain.com/suite, it was looking for

mydomain.com/suite/suite/cache/… which doesn’t exist.

Could your www.mydomain.com be resolved to something else? Try taking off the www and see what happens.

If I put: http://newmediawebsitedesign.com/suite/cache/jsLanguage/en_us.js?v=SsNShytFXRntYPMX9alQ_Q in the address bar and press Enter there is some kind of redirection going on because it resolves to


and I get the screen:


You don’t have permission to access /suite/cache/jsLanguage/index.php on this server.

I can’t figure out what is going on. The permissions are fine. It must be finding the http://newmediawebsitedesign.com/suite/cache/jsLanguage/en_us.js file and something in there is causing a problem?

Or maybe it’s not finding it and some other routine in SuiteCRM is taking over?


I’m starting to think you do have a permission problem. If you try the url (no www) but change suite to suitecrm, notice the url doesn’t change to www and you get a page not found error as expected. When you use the correct path, the web server is finding the path but not letting you access the file so you are being sent to a 403 error handler (forbidden directory) which may be doing the redirection.

By the way, the js file has nothing more than message objects. There is no redirection code.

Also, a clue appears in the .htaccess file in the suite directory

Options +FollowSymLinks RewriteEngine On RewriteBase /suiteCRM RewriteRule ^cache/jsLanguage/(.._..).js$ index.php?entryPoint=jslang&module=app_strings&lang=$1 [L,QSA] RewriteRule ^cache/jsLanguage/(\w*)/(.._..).js$ index.php?entryPoint=jslang&module=$1&lang=$2 [L,QSA]

I’m not a .htaccess expert but I believe this explains the redirection.

Explore the permissions again.

1 Like

Making progress. I dumped the .htaccess and do the Repair, Rebuild .htaccess.

Now when I click the src in page source I get a javascript file.

But… when I try to do email I get a gray screen and a popup saying “Performing Task, One moment please.”

It hangs on that and I see a “javascript (void)” at bottom of browser window (Chrome on Mac)

Any ideas on what to do next?

1 Like

What does “do email” mean. I have no problems with email. Did the email work under the old .htaccess?