esmith Posted January 19, 2015 Share Posted January 19, 2015 Prior to 9.3 I have been able to link to an external JS file for all my code with template rules used to call to these more detailed functions. If I made changes to the external file, I could simply update the JS file without having to re-collect the FP template -- a nice time saver for quick changes. Since updating to 9.3, I am no longer able to make changes to this file and have the FP template recognize the changes on the next composition. Instead, I now have to collect the job again (despite nothing changing in the template itself) in order for the revised code to be applied. Is PTI aware of this change? If so, is it intentional? I'm guessing that the Assets file may be to blame, but I don't have a way of reading it's contents. I am considering reverting backwards to re-gain this preferred functionality. Quote Link to comment Share on other sites More sharing options...
esmith Posted January 19, 2015 Author Share Posted January 19, 2015 Note that this is not a problem when composing locally. Local composition correctly "sees" changes to external JS. It is only when overwriting the external JS file on the FPS server that server-side composition is not recognizing the external changes. Quote Link to comment Share on other sites More sharing options...
Dan Korn Posted January 20, 2015 Share Posted January 20, 2015 How exactly are you using an "external JS file?" Are you calling the Load() function? Also, is the JS file marked as a resource and collected up with the job, or is it on a fixed path? Can you collect up an example that demonstrates this, or provide any other specific information as to how to reproduce the problem? Quote Link to comment Share on other sites More sharing options...
esmith Posted January 20, 2015 Author Share Posted January 20, 2015 Are you calling the Load() function? Yes. // Load external JS: local for preview; relative to template for web backend var exjs = (FusionPro.Composition.isPreview) ? "/Users/cg138300/Desktop/_SSS/_js/sss.js" : FusionPro.ResolveFile("../_js/sss.js"); Load(exjs); is the JS file marked as a resource and collected up with the job, or is it on a fixed path? Fixed path, not a resource. Can you collect up an example that demonstrates this, or provide any other specific information as to how to reproduce the problem? I'll see if I can find/make time to create a generic example. Quote Link to comment Share on other sites More sharing options...
Dan Korn Posted January 20, 2015 Share Posted January 20, 2015 I'll see if I can find/make time to create a generic example. Okay, thanks. A couple more questions: Note that this is not a problem when composing locally. Local composition correctly "sees" changes to external JS. It is only when overwriting the external JS file on the FPS server that server-side composition is not recognizing the external changes. What specific version of FusionPro is on the server? Your signature only notes the client Mac version. Also, you say that, "I now have to collect the job again." So, you re-collect the job, and then what? Do you overwrite the entire job on the server, then re-compose? Finally, when you say this: // Load external JS: local for preview; relative to template for web backend var exjs = (FusionPro.Composition.isPreview) ? "/Users/cg138300/Desktop/_SSS/_js/sss.js" : FusionPro.ResolveFile("../_js/sss.js"); Load(exjs); Fixed path, not a resource. I guess I wouldn't classify a relative path like "../_js/sss.js" as a "fixed" path. I'm wondering if FusionPro isn't picking up the file you expect. What happens if you add this line to your rule? Print("Found JS file: " + FusionPro.ResolveFile("../_js/sss.js")); Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.