BOARD: - content types / models (CRUD) - require a custom field at least - pre-select the first custom field as the highlighted one - contents (CRUD) - sort contents BACKLOG: - liquid rendering engine - theme assets - assets collection - custom models - asset collections: custom resizing if image - devise messages in French - localize devise emails - refactoring admin crud (pages + layouts + snippets) - refactoring page.rb => create module pagetree - refactoring: CustomFields::CustomField => CustomFields::Field BUGS: - theme assets: disable version if not image - assets uploader: remove old files if new one DONE: x admin layout x logout button x slugify page x validation page slug x update position when assigning a new parent x remove all descendants x slug from title ! update "path" when changing slug (new page too) ? x mettre a jour le chemin dans _form si slug et/ou parent change x slug for 404 and Index pages can not be modified x store node closed or open in cookies x snippets section x menu items have to be translated x layout needs at least content_for_layout x parts js/css: x codemirror x change bg (separator) x when a tab is selected, if we change layout, we should move to the first visible one x page parts x layout part should be always in first x pages section (CRUD) x my account section (part of settings) x add new accounts x edit site settings x slug unique within a folder x layouts section x create new site x share session accross domains (only subdomains) x destroy site x remove all pages, snippets, ...etc when destroying a website x destroy account x can not delete the only one admin account for a site x create 404 + index pages once a site is created x can not delete index + 404 pages x validates_uniqueness_of :slug, :scope => :id x domain scoping when authenticating x theme assets x create / update x slug x filename from slug x can not replace a javascript by a stylesheet x asset collections x create / update x sort assets x removing assets x assets x destroy x custom fields: x renaming fields x extract a plugin from custom fields x ui x field position x rename asset_field x nested attributes x keep tracks of all custom fields (adding / editing assets) + order them x duplicate fields