fixup! Add forms for adding recipes and versions
simple alternative author input
This commit is contained in:
parent
99594a7e14
commit
38b7d20f29
|
|
@ -4,8 +4,6 @@ from .models import Recipe, Version, Ingredient
|
|||
class VersionForm(ModelForm):
|
||||
recipe_id: int
|
||||
|
||||
use_user_for_author = BooleanField(initial=True, label='I am the author', required=False)
|
||||
|
||||
class Meta:
|
||||
model = Version
|
||||
fields = ['label', 'slug', 'body', 'alternative_author']
|
||||
|
|
|
|||
|
|
@ -15,26 +15,6 @@
|
|||
</form>
|
||||
|
||||
<script>
|
||||
let userIsAuthorCheckbox = document.querySelector("#id_version-use_user_for_author");
|
||||
let authorNameValue = "";
|
||||
|
||||
function enableAuthorNameInput() {
|
||||
let authorName = document.querySelector("#id_version-alternative_author")
|
||||
|
||||
if (userIsAuthorCheckbox.checked) {
|
||||
authorName.setAttribute("disabled", "");
|
||||
authorNameValue = authorName.value;
|
||||
authorName.value = "";
|
||||
} else {
|
||||
authorName.removeAttribute("disabled");
|
||||
authorName.value = authorNameValue;
|
||||
}
|
||||
}
|
||||
|
||||
enableAuthorNameInput();
|
||||
|
||||
userIsAuthorCheckbox.addEventListener('input', enableAuthorNameInput)
|
||||
|
||||
let firstIngredientDiv = document.querySelector("input[id^=id_ingredient][id$=text]").parentElement;
|
||||
let addIngredientButton = document.querySelector("#add-ingredient");
|
||||
let form = document.querySelector("#add-version-form");
|
||||
|
|
|
|||
|
|
@ -51,11 +51,11 @@ def add_version(request, slug_recipe):
|
|||
|
||||
if version_form.is_valid() and ingredients_formset.is_valid():
|
||||
version = version_form.save(commit=False)
|
||||
if version_form.cleaned_data['use_user_for_author']:
|
||||
version.user = request.user
|
||||
version.alternative_author = ''
|
||||
elif 'alternative_author' in version_form.cleaned_data:
|
||||
version.user = request.user
|
||||
|
||||
if 'alternative_author' in version_form.cleaned_data:
|
||||
version.alternative_author = version_form.cleaned_data['alternative_author']
|
||||
|
||||
version.recipe = recipe
|
||||
version.save()
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue