<p>Create a separate #create action that handles POSTs to<br>
/user/new. This simplifies the other actions and ensures that the URL is<br>
/user/new when validation errors occur, rather than /user/terms.</p>
<p>Fixes <a href="https://github.com/openstreetmap/openstreetmap-website/issues/398" class="issue-link" title="URL/body are wrong after invalid form submission">#398</a></p>
<hr>
<h4>You can merge this Pull Request by running</h4>
<pre> git pull https://github.com/osmlab/openstreetmap-website user-new</pre>
<p>Or view, comment on, or merge it at:</p>
<p> <a href='https://github.com/openstreetmap/openstreetmap-website/pull/405'>https://github.com/openstreetmap/openstreetmap-website/pull/405</a></p>
<h4>Commit Summary</h4>
<ul>
<li>Refactor user creation actions</li>
</ul>
<h4>File Changes</h4>
<ul>
<li>
<strong>M</strong>
<a href="https://github.com/openstreetmap/openstreetmap-website/pull/405/files#diff-0">app/controllers/user_controller.rb</a>
(108)
</li>
<li>
<strong>M</strong>
<a href="https://github.com/openstreetmap/openstreetmap-website/pull/405/files#diff-1">app/views/user/new.html.erb</a>
(2)
</li>
<li>
<strong>M</strong>
<a href="https://github.com/openstreetmap/openstreetmap-website/pull/405/files#diff-2">config/routes.rb</a>
(3)
</li>
<li>
<strong>M</strong>
<a href="https://github.com/openstreetmap/openstreetmap-website/pull/405/files#diff-3">test/functional/user_controller_test.rb</a>
(26)
</li>
<li>
<strong>M</strong>
<a href="https://github.com/openstreetmap/openstreetmap-website/pull/405/files#diff-4">test/integration/user_creation_test.rb</a>
(34)
</li>
</ul>
<h4>Patch Links:</h4>
<ul>
<li><a href='https://github.com/openstreetmap/openstreetmap-website/pull/405.patch'>https://github.com/openstreetmap/openstreetmap-website/pull/405.patch</a></li>
<li><a href='https://github.com/openstreetmap/openstreetmap-website/pull/405.diff'>https://github.com/openstreetmap/openstreetmap-website/pull/405.diff</a></li>
</ul>