divio/django-cms — pull request #2110 by stefanfoulis (2013-07-31 11:28:14+00:00)
Title: WIP: Page Extensions

**DO NOT MERGE YET**

This is a continuation of #2001.

Adds a simple way for developers to extend a Page with custom fields.
A PageExtension is a custom model with a OneToOne-Relation to Page (or Title for translatable extensions).
An abstract model class and a Admin base class are provided for Integration. When using this facility,
entries should be added to the cms toolbar to allow users to edit.

Tasklist

- [x] simple base admin
- [x] simple base model
- [x] handle publishing (draft/live)
- [x] handle related objects with publishing (copy relations)
- [ ] admin popup add/edit distinction and hide+autofill the extended object
- [ ] check permissions
- [ ] page must be reloaded after create/delete (because the url in the menu has to change)
- [ ] allow adding entries with the default add_view as well
- [ ] admin popup should not contain "save and add another"
- [ ] simplify toolbar integration for extension developers

- [ ] Tests
- [ ] Docs