[closed] Webtop / Library management issue 6.3.2

After recently upgrading my dev/test site I seem to have lost library management. The UI controls fail to load (see image). If I try to click the plain text link, I get a js error.

Everything seems to be loading ok when I inspect the network tab, here’s what I get in the JS console.

Uncaught SyntaxError: Unexpected identifier (displayed when an object admin page (dmfile, dminage, etc.) is loaded.

Uncaught TypeError: Cannot read property ‘CLICK’ of undefined when I click one of the “text” links, edit, overview, etc.

forgot to mention this is 6.3.2, running on Windows 2012, CF10, IIS 8

Did you clear the www/cache directory after you upgraded? If not you might be loading js/css files from an older version of FarCry

Hi Sean, yes. I did clear the cache directory.Looks like all facrcry “buttons” are not working.

Are you loading your own version of jquery or jquery ui anywhere in your project? I recall having a similar issue once and I think it had to do with that (wish I could remember more though).

I am … both… on the front end, but I am not seeing any of them loaded when I’m in the web top…

Can you paste the code that does the jQuery / UI library overriding in the front end?

If you are using registerJS with id=“jquery” / id=“jquery-ui” in the front end then it could break the webtop. In FarCry 7.x we avoid this problem by having the webtop use it’s own specific id’s that should never be overridden (“fc-jquery”, etc).

Hi Justin,

Currently I am calling these scripts directly via the displayHeaderStandard web skin

<script src="/js/jquery/jquery-1.4.2.min.js" type="text/javascript"></script>
<script src="/js/jquery/jquery-ui/jquery-ui-1.8.21.custom.min.js" type="text/javascript"></script>

So I don’t believe any conflicts are arising via the webtop side of things. my plan is to use register and load once I get everything working.

It does seem to have something to do with the facry buttons in object admin tho… Another part of my upgrade involves changing from the verity engine to Jeff and Sean’s solr plugin. I have noticed the “add” button in SolrPro Content Type Admin does not render correctly…

Check your /farcry and /webtop mappings/virtual directories. Make sure they are pointed to the right folders now that you’ve upgraded core.

I have a CF mapping to mydrive:/websites/farcry (this folder contains, core, plugins, projects, etc.)

I have an IIS virtual directory “webtop” that is mapped to:

mydrive:\websites\farcry\core\webtop

Cool, your JS in the front end should be fine then.

The buttons in your webtop are all unstyled because jQuery UI isn’t loading
/ working. If you view the frame source of the objectadmin grid can you see
the jQuery UI JS / CSS being outputted?

hmm… was just comparing dev vs. prod…

should the cache css and js file extensions be URL encoded like this

<link rel="stylesheet" id="stylesheet-jquery-ui" type="text/css" href="/cache/jquery%2Dui%2DE09BDBE8EEF638BCBDA27351F0F18E97%2Ecss" media="all" >

<script src="/cache/jquery%2Dui%2D2C68BDD20F7C845A50F5F30EEE60C4F9%2Ejs" type="text/javascript"></script>

%2D (-) and %2E (.)

hmm seems like the resources are loaded just fine…

On your local dev I would switch back to the tag I recommended last week, milestone-6-2-11, see if that works :smile:

Thanks @justincarter, I’ll give that a shot and report back

No luck… rolled back to 6-2-11 core, update app, and deleted the www/cache, same issue with farcry buttons with object admin screens. any other thoughts or anything else I can try or provide you guys (thanks for all the help btw)… I’m getting a lot of pressure from my ops guys to decommission my windows2k3 production server and this (and the move to solr) seem to be my last trouble spots.

I’ve sent you a PM, happy to take a look directly if possible :smile:

Just a quick follow-up to this post, we’ve found the culprit :smile:

$j('#f-btn-1C76FA60-BE09-11E4-B61B005056B07226').button( //{} ); 
$j('#f-btn-1C76FA60-BE09-11E4-B61B005056B07226').data('fcSettings', //{"BUTTONSETTINGS":"","SUBMIT":"Log In","TURNONSERVERSIDEVALIDATION":1,"CLICK":"Log In"}); 
	if(typeof $j('#farcryForm248887017').uniform != "undefined") { 

Notice the // appearing in the calls to $.button() and $.data(), this is a result of the “JSON prefix” setting in the ColdFusion Administrator. This is a recommendation in the ACF lock-down guide, however there is no way to call serializeJSON() without the prefix so the setting needs to remain empty for FarCry deployments. Alternatively, if this setting must be turned on for the server, you should be able to set THIS.secureJSONPrefix = "" in the farcryConstructor.cfm to achieve the same result.

1 Like