# Re: Custom CSS File

**URL:** <https://www.ruby-forum.com/t/re-custom-css-file/123697>\
**Category:** Radiant CMS\
**Created:** [December 19, 2007, 8:42pm UTC](https://www.ruby-forum.com/t/re-custom-css-file/123697 "2007-12-19T20:42:35Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![topherzee](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/f1d935/32.png) [@topherzee](https://www.ruby-forum.com/u/topherzee)\
**Post date:** [December 19, 2007, 8:42pm UTC](https://www.ruby-forum.com/t/re-custom-css-file/123697/1 "2007-12-19T20:42:35Z")

</div>

Hi,  
Im trying to include a custom CSS file for radiant. Previously, I just  
replaced the main.css file in the radiant gem directory - but thats not  
“sustainable”.

I tried following Sean’s instructions below but have run into trouble.  
The  
technique is to create an extension that runs a before filter that  
calls:  
include\_stylesheet ‘my\_stylesheet’

But it looks like the include\_stylesheet is crashing because the  
@stylesheet  
array is empty.

The line it is failing on is:  
controllers/application.rb line 22  
“@stylesheets \<\< sheet”

My extension looks like this:

def activate  
require\_dependency ‘application’  
SiteController.class\_eval do

```
   prepend_before_filter :customize_admin_css

   def customize_admin_css
       include_stylesheet ('radiant_custom')
  end

```

end  
end

Any ideas anyone - could be something silly as I am still a rubynuby.

Thanks!  
Topher

Following is the dev log trace:

NoMethodError (You have a nil object when you didn’t expect it!  
You might have expected an instance of Array.  
The error occurred while evaluating nil.\<\<):  
C:/a\_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/radiant-  
0.6.4/app/controllers/application.rb:22:in `include_stylesheet' C:/a_Systems/InstantRails-1.7-win/rails_apps/henry_radiant2/vendor/extensions/custom_stylesheet/custom_stylesheet_extension.rb:18:in `customize\_admin\_css’  
C:/a\_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/radiant-  
0.6.4/vendor/rails/actionpack/lib/action\_controller/filters.rb:469:in  
`send' C:/a_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/radiant- 0.6.4/vendor/rails/actionpack/lib/action_controller/filters.rb:469:in `call’  
C:/a\_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/radiant-  
0.6.4/vendor/rails/actionpack/lib/action\_controller/filters.rb:442:in  
`run' C:/a_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/radiant- 0.6.4/vendor/rails/actionpack/lib/action_controller/filters.rb:714:in `run\_before\_filters’  
C:/a\_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/radiant-  
0.6.4/vendor/rails/actionpack/lib/action\_controller/filters.rb:694:in  
`call_filters' C:/a_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/radiant- 0.6.4/vendor/rails/actionpack/lib/action_controller/filters.rb:688:in `perform\_action\_without\_benchmark’  
C:/a\_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/radiant-  
0.6.4/vendor/rails/actionpack/lib/action\_controller/benchmarking.rb:66:in  
`perform_action_without_rescue' C:/a_Systems/InstantRails-1.7-win/ruby/lib/ruby/1.8/benchmark.rb:293:in `measure’  
C:/a\_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/radiant-  
0.6.4/vendor/rails/actionpack/lib/action\_controller/benchmarking.rb:66:in  
`perform_action_without_rescue' C:/a_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/radiant- 0.6.4/vendor/rails/actionpack/lib/action_controller/rescue.rb:83:in `perform\_action’  
C:/a\_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/radiant-  
0.6.4/vendor/rails/actionpack/lib/action\_controller/base.rb:435:in  
`send' C:/a_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/radiant- 0.6.4/vendor/rails/actionpack/lib/action_controller/base.rb:435:in `process\_without\_filters’  
C:/a\_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/radiant-  
0.6.4/vendor/rails/actionpack/lib/action\_controller/filters.rb:684:in  
`process_without_session_management_support' C:/a_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/radiant- 0.6.4/vendor/rails/actionpack/lib/action_controller/session_management.rb:114:in `process’  
C:/a\_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/radiant-  
0.6.4/vendor/rails/actionpack/lib/action\_controller/base.rb:334:in  
`process' C:/a_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/radiant- 0.6.4/vendor/rails/railties/lib/dispatcher.rb:41:in `dispatch’  
C:/a\_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/mongrel-  
1.0.1-mswin32/lib/mongrel/rails.rb:78:in `process' C:/a_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/mongrel- 1.0.1-mswin32/lib/mongrel/rails.rb:76:in `synchronize’  
C:/a\_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/mongrel-  
1.0.1-mswin32/lib/mongrel/rails.rb:76:in `process' C:/a_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/mongrel- 1.0.1-mswin32/lib/mongrel.rb:618:in `process\_client’  
C:/a\_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/mongrel-  
1.0.1-mswin32/lib/mongrel.rb:617:in `each' C:/a_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/mongrel- 1.0.1-mswin32/lib/mongrel.rb:617:in `process\_client’  
C:/a\_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/mongrel-  
1.0.1-mswin32/lib/mongrel.rb:736:in `run' C:/a_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/mongrel- 1.0.1-mswin32/lib/mongrel.rb:736:in `initialize’  
C:/a\_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/mongrel-  
1.0.1-mswin32/lib/mongrel.rb:736:in `new' C:/a_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/mongrel- 1.0.1-mswin32/lib/mongrel.rb:736:in `run’  
C:/a\_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/mongrel-  
1.0.1-mswin32/lib/mongrel.rb:720:in `initialize' C:/a_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/mongrel- 1.0.1-mswin32/lib/mongrel.rb:720:in `new’  
C:/a\_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/mongrel-  
1.0.1-mswin32/lib/mongrel.rb:720:in `run' C:/a_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/mongrel- 1.0.1-mswin32/lib/mongrel/configurator.rb:271:in `run’  
C:/a\_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/mongrel-  
1.0.1-mswin32/lib/mongrel/configurator.rb:270:in `each' C:/a_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/mongrel- 1.0.1-mswin32/lib/mongrel/configurator.rb:270:in `run’  
C:/a\_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/mongrel-  
1.0.1-mswin32/bin/mongrel\_rails:127:in `run' C:/a_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/mongrel- 1.0.1-mswin32/lib/mongrel/command.rb:211:in `run’  
C:/a\_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/mongrel-  
1.0.1-mswin32/bin/mongrel\_rails:243  
C:/a\_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/radiant-  
0.6.4/vendor/rails/activesupport/lib/active\_support/dependencies.rb:488:in  
`load' C:/a_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/radiant- 0.6.4/vendor/rails/activesupport/lib/active_support/dependencies.rb:488:in `load’  
C:/a\_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/radiant-  
0.6.4/vendor/rails/activesupport/lib/active\_support/dependencies.rb:342:in  
`new_constants_in' C:/a_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/radiant- 0.6.4/vendor/rails/activesupport/lib/active_support/dependencies.rb:488:in `load’  
C:/a\_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/radiant-  
0.6.4/vendor/rails/railties/lib/commands/servers/mongrel.rb:60  
C:/a\_Systems/InstantRails-1.7-win/ruby/lib/ruby/site\_ruby/1.8/rubygems/custom\_require.rb:27:in  
`gem_original_require' C:/a_Systems/InstantRails-1.7-win/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in `require’  
C:/a\_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/radiant-  
0.6.4/vendor/rails/activesupport/lib/active\_support/dependencies.rb:495:in  
`require' C:/a_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/radiant- 0.6.4/vendor/rails/activesupport/lib/active_support/dependencies.rb:342:in `new\_constants\_in’  
C:/a\_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/radiant-  
0.6.4/vendor/rails/activesupport/lib/active\_support/dependencies.rb:495:in  
`require' C:/a_Systems/InstantRails-1.7-win/ruby/lib/ruby/gems/1.8/gems/radiant- 0.6.4/vendor/rails/railties/lib/commands/server.rb:39 C:/a_Systems/InstantRails-1.7-win/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem\_original\_require’  
C:/a\_Systems/InstantRails-1.7-win/ruby/lib/ruby/site\_ruby/1.8/rubygems/custom\_require.rb:27:in  
`require’  
script/server:3

On Dec 2, 2007 2:02 PM, Sean C. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> ```
> def customize_admin_css
> 
> ```
> 
> Sean  
> like
> 
> > > > perhaps level with the “Edit Page” heading, but floated to the right.
> > 
> > Post: removed\_email\_address@domain.invalid

–  
Christopher Z.  
removed\_email\_address@domain.invalid  
604-484-9279

---

<div class="post-metadata">

**Author:** ![topherzee](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/f1d935/32.png) [@topherzee](https://www.ruby-forum.com/u/topherzee)\
**Post date:** [December 19, 2007, 10:17pm UTC](https://www.ruby-forum.com/t/re-custom-css-file/123697/2 "2007-12-19T22:17:29Z")

</div>

Oh, duh! Sorry I overlooked this problem.

You need to memoize the @stylesheets array. Change that method to look  
like this:

def customize\_admin\_css  
@stylesheets ||=[]  
include\_stylesheet ‘radiant\_custom’  
end

Sean
