mirror of
https://github.com/pretix/pretix.git
synced 2026-05-09 15:54:03 +00:00
Improve "copy from above"
This commit is contained in:
@@ -53,13 +53,15 @@
|
|||||||
{% if pos.variation %}
|
{% if pos.variation %}
|
||||||
– {{ pos.variation }}
|
– {{ pos.variation }}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
<i class="fa fa-angle-down collapse-indicator"></i>
|
{% if forloop.counter > 1 %}
|
||||||
|
<span class="text-right">
|
||||||
|
<input type="button" data-id="{{ forloop.counter0 }}" name="copy" class="js-copy-answers btn btn-default btn-xs" value='{% trans "Copy answers from above" %}'>
|
||||||
|
<i class="fa fa-angle-down collapse-indicator"></i>
|
||||||
|
</span>
|
||||||
|
{% else %}
|
||||||
|
<i class="fa fa-angle-down collapse-indicator"></i>
|
||||||
|
{% endif %}
|
||||||
</a>
|
</a>
|
||||||
{% if forloop.counter > 1 %}
|
|
||||||
<span class="text-right pull-right">
|
|
||||||
<input type="button" data-id="{{ forloop.counter0 }}" name="copy" class="js-copy-answers btn btn-default btn-xs" value='{% trans "Copy answers from above" %}'>
|
|
||||||
</span>
|
|
||||||
{% endif %}
|
|
||||||
</h4>
|
</h4>
|
||||||
</div>
|
</div>
|
||||||
<div id="cp{{ pos.id }}"
|
<div id="cp{{ pos.id }}"
|
||||||
|
|||||||
@@ -51,8 +51,10 @@ $(function () {
|
|||||||
// Copy answers
|
// Copy answers
|
||||||
$(".js-copy-answers").click(function (e) {
|
$(".js-copy-answers").click(function (e) {
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
|
e.stopPropagation();
|
||||||
var idx = $(this).data('id');
|
var idx = $(this).data('id');
|
||||||
copy_answers(idx);
|
copy_answers(idx);
|
||||||
|
return false;
|
||||||
});
|
});
|
||||||
|
|
||||||
// Subevent choice
|
// Subevent choice
|
||||||
@@ -98,31 +100,33 @@ function copy_answers(idx) {
|
|||||||
elements.each(function(index){
|
elements.each(function(index){
|
||||||
var input = $(this),
|
var input = $(this),
|
||||||
tagName = input.prop('tagName').toLowerCase(),
|
tagName = input.prop('tagName').toLowerCase(),
|
||||||
attributeType = input.attr('type');
|
attributeType = input.attr('type'),
|
||||||
|
suffix = input.attr('name').split('-')[1];
|
||||||
|
|
||||||
|
|
||||||
switch (tagName) {
|
switch (tagName) {
|
||||||
case "textarea":
|
case "textarea":
|
||||||
input.val(firstAnswers.eq(index).val());
|
input.val(firstAnswers.filter("[name$=" + suffix + "]").val());
|
||||||
break;
|
break;
|
||||||
case "select":
|
case "select":
|
||||||
input.val(firstAnswers.eq(index).find(":selected").val()).change();
|
input.val(firstAnswers.filter("[name$=" + suffix + "]").find(":selected").val()).change();
|
||||||
break;
|
break;
|
||||||
case "input":
|
case "input":
|
||||||
switch (attributeType) {
|
switch (attributeType) {
|
||||||
case "text":
|
case "text":
|
||||||
case "number":
|
case "number":
|
||||||
input.val(firstAnswers.eq(index).val());
|
input.val(firstAnswers.filter("[name$=" + suffix + "]").val());
|
||||||
break;
|
break;
|
||||||
case "checkbox":
|
case "checkbox":
|
||||||
case "radio":
|
case "radio":
|
||||||
input.prop("checked", firstAnswers.eq(index).prop("checked"));
|
input.prop("checked", firstAnswers.filter("[name$=" + suffix + "]").prop("checked"));
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
input.val(firstAnswers.eq(index).val());
|
input.val(firstAnswers.filter("[name$=" + suffix + "]").val());
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
input.val(firstAnswers.eq(index).val());
|
input.val(firstAnswers.filter("[name$=" + suffix + "]").val());
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -16,6 +16,10 @@
|
|||||||
pointer-events: none;
|
pointer-events: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.js-copy-answers {
|
||||||
|
margin-right: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
.form-control.is-focused {
|
.form-control.is-focused {
|
||||||
@extend .form-control:focus;
|
@extend .form-control:focus;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user