mirror of
https://github.com/pretix/pretix.git
synced 2026-05-21 17:54:08 +00:00
Compare commits
9 Commits
v4.18.0
...
v4.18.2.po
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
25beb8f6c6 | ||
|
|
e3c55fd0fe | ||
|
|
5bc92a9f04 | ||
|
|
1de57aaa80 | ||
|
|
6ae2fa5964 | ||
|
|
d5ed1b87a1 | ||
|
|
2b0f754f4b | ||
|
|
aaebcae12b | ||
|
|
8096e958b8 |
@@ -19,4 +19,4 @@
|
||||
# You should have received a copy of the GNU Affero General Public License along with this program. If not, see
|
||||
# <https://www.gnu.org/licenses/>.
|
||||
#
|
||||
__version__ = "4.18.0"
|
||||
__version__ = "4.18.2.post1"
|
||||
|
||||
@@ -470,6 +470,7 @@ def pretixcontrol_logentry_display(sender: Event, logentry: LogEntry, **kwargs):
|
||||
'pretix.voucher.redeemed': _('The voucher has been redeemed in order {order_code}.'),
|
||||
'pretix.event.item.added': _('The product has been created.'),
|
||||
'pretix.event.item.changed': _('The product has been changed.'),
|
||||
'pretix.event.item.reordered': _('The product has been reordered.'),
|
||||
'pretix.event.item.deleted': _('The product has been deleted.'),
|
||||
'pretix.event.item.variation.added': _('The variation "{value}" has been created.'),
|
||||
'pretix.event.item.variation.deleted': _('The variation "{value}" has been deleted.'),
|
||||
@@ -488,9 +489,11 @@ def pretixcontrol_logentry_display(sender: Event, logentry: LogEntry, **kwargs):
|
||||
'pretix.event.category.added': _('The category has been added.'),
|
||||
'pretix.event.category.deleted': _('The category has been deleted.'),
|
||||
'pretix.event.category.changed': _('The category has been changed.'),
|
||||
'pretix.event.category.reordered': _('The category has been reordered.'),
|
||||
'pretix.event.question.added': _('The question has been added.'),
|
||||
'pretix.event.question.deleted': _('The question has been deleted.'),
|
||||
'pretix.event.question.changed': _('The question has been changed.'),
|
||||
'pretix.event.question.reordered': _('The question has been reordered.'),
|
||||
'pretix.event.discount.added': _('The discount has been added.'),
|
||||
'pretix.event.discount.deleted': _('The discount has been deleted.'),
|
||||
'pretix.event.discount.changed': _('The discount has been changed.'),
|
||||
|
||||
@@ -136,6 +136,11 @@ def item_move(request, item, up=True):
|
||||
if item.position != i:
|
||||
item.position = i
|
||||
item.save()
|
||||
item.log_action(
|
||||
'pretix.event.item.reordered', user=request.user, data={
|
||||
'position': i,
|
||||
}
|
||||
)
|
||||
messages.success(request, _('The order of items has been updated.'))
|
||||
|
||||
|
||||
@@ -185,6 +190,11 @@ def reorder_items(request, organizer, event):
|
||||
if pos != i.position: # Save unneccessary UPDATE queries
|
||||
i.position = pos
|
||||
i.save(update_fields=['position'])
|
||||
i.log_action(
|
||||
'pretix.event.item.reordered', user=request.user, data={
|
||||
'position': i,
|
||||
}
|
||||
)
|
||||
|
||||
return HttpResponse()
|
||||
|
||||
@@ -243,7 +253,7 @@ class CategoryUpdate(EventPermissionRequiredMixin, UpdateView):
|
||||
messages.success(self.request, _('Your changes have been saved.'))
|
||||
if form.has_changed():
|
||||
self.object.log_action(
|
||||
'pretix.event.category.changed', user=self.request.user, data={
|
||||
'pretix.event.category.reordered', user=self.request.user, data={
|
||||
k: form.cleaned_data.get(k) for k in form.changed_data
|
||||
}
|
||||
)
|
||||
@@ -338,6 +348,11 @@ def category_move(request, category, up=True):
|
||||
if cat.position != i:
|
||||
cat.position = i
|
||||
cat.save()
|
||||
cat.log_action(
|
||||
'pretix.event.category.reordered', user=request.user, data={
|
||||
'position': i,
|
||||
}
|
||||
)
|
||||
messages.success(request, _('The order of categories has been updated.'))
|
||||
|
||||
|
||||
@@ -381,6 +396,11 @@ def reorder_categories(request, organizer, event):
|
||||
if pos != c.position: # Save unneccessary UPDATE queries
|
||||
c.position = pos
|
||||
c.save(update_fields=['position'])
|
||||
c.log_action(
|
||||
'pretix.event.category.reordered', user=request.user, data={
|
||||
'position': pos,
|
||||
}
|
||||
)
|
||||
|
||||
return HttpResponse()
|
||||
|
||||
@@ -510,6 +530,11 @@ def reorder_questions(request, organizer, event):
|
||||
if pos != q.position: # Save unneccessary UPDATE queries
|
||||
q.position = pos
|
||||
q.save(update_fields=['position'])
|
||||
q.log_action(
|
||||
'pretix.event.question.reordered', user=request.user, data={
|
||||
'position': pos,
|
||||
}
|
||||
)
|
||||
|
||||
system_question_order = {}
|
||||
for s in ('attendee_name_parts', 'attendee_email', 'company', 'street', 'zipcode', 'city', 'country'):
|
||||
@@ -518,6 +543,11 @@ def reorder_questions(request, organizer, event):
|
||||
else:
|
||||
system_question_order[s] = -1
|
||||
request.event.settings.system_question_order = system_question_order
|
||||
request.event.log_action(
|
||||
'pretix.event.settings', user=request.user, data={
|
||||
'system_question_order': system_question_order,
|
||||
}
|
||||
)
|
||||
|
||||
return HttpResponse()
|
||||
|
||||
@@ -731,7 +761,7 @@ class QuestionUpdate(EventPermissionRequiredMixin, QuestionMixin, UpdateView):
|
||||
|
||||
if form.has_changed():
|
||||
self.object.log_action(
|
||||
'pretix.event.question.changed', user=self.request.user, data={
|
||||
'pretix.event.question.reordered', user=self.request.user, data={
|
||||
k: form.cleaned_data.get(k) for k in form.changed_data
|
||||
}
|
||||
)
|
||||
|
||||
@@ -482,30 +482,27 @@ Vue.component('item', {
|
||||
expanded: this.$root.show_variations_expanded
|
||||
};
|
||||
},
|
||||
watch: {
|
||||
expanded: function (newValue) {
|
||||
var v = this.$refs.variations;
|
||||
if (newValue) {
|
||||
v.hidden = false;
|
||||
} else {
|
||||
// Vue.nextTick does not work here
|
||||
window.setTimeout(function () {
|
||||
v.style.maxHeight = 0;
|
||||
}, 50);
|
||||
}
|
||||
v.style.maxHeight = v.scrollHeight + 'px';
|
||||
}
|
||||
},
|
||||
mounted: function () {
|
||||
if (this.$refs.variations) {
|
||||
this.$refs.variations.hidden = !this.expanded;
|
||||
this.$refs.variations.addEventListener('transitionend', function (event) {
|
||||
if (this.style.maxHeight && this.style.maxHeight != '0px') {
|
||||
this.style.maxHeight = 'none';
|
||||
} else {
|
||||
this.hidden = true;
|
||||
}
|
||||
});
|
||||
if (!this.expanded) {
|
||||
var $this = this;
|
||||
this.$refs.variations.hidden = true;
|
||||
this.$refs.variations.addEventListener('transitionend', function (event) {
|
||||
if (event.target == this) {
|
||||
this.hidden = !$this.expanded;
|
||||
this.style.maxHeight = 'none';
|
||||
}
|
||||
});
|
||||
this.$watch('expanded', function (newValue) {
|
||||
var v = this.$refs.variations;
|
||||
v.hidden = false;
|
||||
v.style.maxHeight = (newValue ? 0 : v.scrollHeight) + 'px';
|
||||
// Vue.nextTick does not work here
|
||||
window.setTimeout(function () {
|
||||
v.style.maxHeight = (!newValue ? 0 : v.scrollHeight) + 'px';
|
||||
}, 50);
|
||||
})
|
||||
}
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
|
||||
@@ -373,7 +373,6 @@
|
||||
|
||||
.pretix-widget-item-variations {
|
||||
overflow: hidden;
|
||||
max-height: 0;
|
||||
padding-top: 0;
|
||||
padding-bottom: 0;
|
||||
margin-top: 0;
|
||||
|
||||
@@ -218,7 +218,7 @@ setup(
|
||||
'python-u2flib-server==4.*',
|
||||
'pytz',
|
||||
'pyuca',
|
||||
'redis==4.5.*',
|
||||
'redis==4.5.*,>=4.5.4',
|
||||
'reportlab==3.6.*',
|
||||
'requests==2.28.*',
|
||||
'sentry-sdk==1.15.*',
|
||||
|
||||
Reference in New Issue
Block a user