Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

General Questions

General questions about getting started with SilverStripe that don't fit in any of the categories above.

Moderators: martimiz, Sean, biapar, Willr, Ingo, swaiba, simon_w

Requirements Combined Files


Reply

3 Posts   2092 Views

Avatar
Mo

20 March 2010 at 1:19pm Community Member, 509 Posts

So I was browsing through the requirements class in 2.4 beta and I spotted the set_combined_files_enabled() method. I was wondering if this is meant to combine all individual CSS / JS files into one master file and load that instead (in a similar way to Plone)?

If so, is this functionality still under development? I tried setting the method to true, but it didn't seem to do anything.

Any advice?

Cheers,

Mo

Avatar
Willr

20 March 2010 at 3:01pm (Last edited: 20 March 2010 3:15pm), Forum Moderator, 5511 Posts

This has actually been round for quite a while, well you'll find it in 2.3. Can't remember when it was added.

It works in tandem with the Requirements::combine_files() function. You define which files you would like to group like

Requirements::combine_files('myapp.js', array('myapp1.js', 'myapp2.js'));

and it will combine myapp1 and myapp2 into myapp. Its not documented on http://doc.silverstripe.org/doku.php?id=requirements so I don't blame anyone for not seeing this functionality before!.

Edit: added some documentation to that page - http://doc.silverstripe.org/doku.php?id=requirements#combining_files

One piece of functionality I don't like is on devmode it doesn't default back to including each individual file, it just returns false so you need to include your files the standard way, then include that line after it.

Avatar
Fred C.

16 April 2010 at 5:44am Community Member, 18 Posts

I'd advise not using this feature until the bugs have been worked out. It can get into a mode where it breaks the site tree in the CMS. By watching FireBug's console, I can tell this happens as soon as it loads assets/_combinedfiles/cmsmain.js