Cookie Crumbs
A Rails plugin that adds the ability to create sub-cookies within a
controller when you need to store more than domain limit of 20 cookies.
Overview
Cookie Crumbs is a Rails plugin that adds the ability to store more than one value for a single cookie. This is helpful in applications that need to store more than the maximum 20 allowed cookies.
Download
Subversion Repository:
$ https://svn.maintainable.com/public/rails/plugins/cookie_crumbs
To install for use in your Rails project:
$ ./script/plugin install \ https://svn.maintainable.com/public/rails/plugins/cookie_crumbs
How it Works
In the Rails Controller
The plugin will add a new crumbs method to your
controller classes to access the data.
def index # setting crumbs - these all save to the same 'widget' cookie crumbs[:widget] = { :favorites => "open", :sources => "closed" } # or crumbs[:widget][:favorites] = "open" crumbs[:widget][:sources] = "closed" # getting crumbs crumbs[:widget] # => { :favorites => "open", :sources => "closed" } crumbs[:widget][:favorites] # => "open" # deleting crumbs crumbs[:widget].delete :favorites end
In the Javascript
The Javascript library extends the document object with various methods for manipulating both cookies and crumbs.
// cookies (set/get/delete)
document.setCookie('sidebar', 'open');
document.getCookie('sidebar');
document.delCookie('sidebar');
// setting crumbs - these all save to the same 'widget' cookie
document.setCrumb('widget', 'favorites' 'open');
document.setCrumb('widget', 'sources' 'closed');
// getting crumbs
document.getCrumb('widget', 'favorites'); // => "open"
// deleting crumbs
document.delCrumb('widget', 'sources');
