Addresses issue #628, using reverse() and the newly created helper function
reverse_lazy() (found in ietf/utils/lazy.py) to DRY out the code a bit by
decoupling the urls from being hardcoded.
With this commit idrfc, and ipr modules have been modified to take advantage
of the reverse() and reverse_lazy() functions.
- Legacy-Id: 2956
Note: SVN reference [2948] has been migrated to Git commit 9399a2e0e8bbfe5c5a16781fd784776cfa31fbac
using pretty much the same template as for a non-form view.
This solution is less hackish than the previous one which
used the form.as_table() rendering of a form, and then split
the resulting html in chunks.
Instead, '''all''' the html has been moved out to a formfield
template, and a custom form class is generated which will render
the form elements using an indicated template.
* Add form factory in utils.py (an old version which still has
html in the code is there for history, but will be removed
* Changes in ipr/views.py:new(), now subclassing one form with
some class members being other form instances, matching the
members used for the show() view
* A fix in ipr/models, making an email field use models.EmailField
* Reverting a number of changes in ipr/details.html which aren't
needed any more, as well as in ipr/new.html; and adding
ipr/formfield.html
- Legacy-Id: 104