mirror of https://gitlab.crans.org/bde/nk20
Merge branch 'beta' into 'master'
Fix memberships See merge request bde/nk20!147
This commit is contained in:
commit
c49af0b83a
|
@ -658,8 +658,8 @@ class ClubAddMemberView(ProtectQuerysetMixin, ProtectedCreateView):
|
||||||
if club.name != "Kfet" and club.parent_club and not Membership.objects.filter(
|
if club.name != "Kfet" and club.parent_club and not Membership.objects.filter(
|
||||||
user=form.instance.user,
|
user=form.instance.user,
|
||||||
club=club.parent_club,
|
club=club.parent_club,
|
||||||
date_start__gte=club.parent_club.membership_start,
|
date_start__lte=timezone.now(),
|
||||||
date_end__lte=club.parent_club.membership_end,
|
date_end__gte=club.parent_club.membership_end,
|
||||||
).exists():
|
).exists():
|
||||||
form.add_error('user', _('User is not a member of the parent club') + ' ' + club.parent_club.name)
|
form.add_error('user', _('User is not a member of the parent club') + ' ' + club.parent_club.name)
|
||||||
error = True
|
error = True
|
||||||
|
|
|
@ -302,7 +302,7 @@ $('#btn_transfer').click(function () {
|
||||||
addMsg(interpolate(gettext('Warning, the emitter note %s is no more a BDE member.'), [source.name]), 'danger', 30000)
|
addMsg(interpolate(gettext('Warning, the emitter note %s is no more a BDE member.'), [source.name]), 'danger', 30000)
|
||||||
}
|
}
|
||||||
if (dest.note.membership && dest.note.membership.date_end < new Date().toISOString()) {
|
if (dest.note.membership && dest.note.membership.date_end < new Date().toISOString()) {
|
||||||
addMsg(interpolate(gettext('Warning, the destination note %s is no more a BDE member.'), [source.name]), 'danger', 30000)
|
addMsg(interpolate(gettext('Warning, the destination note %s is no more a BDE member.'), [dest.name]), 'danger', 30000)
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!isNaN(source.note.balance)) {
|
if (!isNaN(source.note.balance)) {
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* You should never see this file.
|
* If you are not using the main language, you should never see this file.
|
||||||
* It is here only for compatibility reasons in case of the command `compilejsmessages` was never executed.
|
* It is here only for compatibility reasons in case of the command `compilejsmessages` was never executed.
|
||||||
* Please execute this command to generate translation strings.
|
* Please execute this command to generate translation strings.
|
||||||
*/
|
*/
|
||||||
|
@ -9,14 +9,7 @@
|
||||||
var django = globals.django || (globals.django = {});
|
var django = globals.django || (globals.django = {});
|
||||||
|
|
||||||
|
|
||||||
django.pluralidx = function(n) {
|
django.pluralidx = function(count) { return (count == 1) ? 0 : 1; };
|
||||||
var v=(n != 1);
|
|
||||||
if (typeof(v) == 'boolean') {
|
|
||||||
return v ? 1 : 0;
|
|
||||||
} else {
|
|
||||||
return v;
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
/* gettext library */
|
/* gettext library */
|
||||||
|
@ -73,39 +66,41 @@
|
||||||
/* formatting library */
|
/* formatting library */
|
||||||
|
|
||||||
django.formats = {
|
django.formats = {
|
||||||
"DATETIME_FORMAT": "j \\d\\e F \\d\\e Y \\a \\l\\a\\s H:i",
|
"DATETIME_FORMAT": "N j, Y, P",
|
||||||
"DATETIME_INPUT_FORMATS": [
|
"DATETIME_INPUT_FORMATS": [
|
||||||
"%d/%m/%Y %H:%M:%S",
|
|
||||||
"%d/%m/%Y %H:%M:%S.%f",
|
|
||||||
"%d/%m/%Y %H:%M",
|
|
||||||
"%d/%m/%y %H:%M:%S",
|
|
||||||
"%d/%m/%y %H:%M:%S.%f",
|
|
||||||
"%d/%m/%y %H:%M",
|
|
||||||
"%Y-%m-%d %H:%M:%S",
|
"%Y-%m-%d %H:%M:%S",
|
||||||
"%Y-%m-%d %H:%M:%S.%f",
|
"%Y-%m-%d %H:%M:%S.%f",
|
||||||
"%Y-%m-%d %H:%M",
|
"%Y-%m-%d %H:%M",
|
||||||
"%Y-%m-%d"
|
"%Y-%m-%d",
|
||||||
|
"%m/%d/%Y %H:%M:%S",
|
||||||
|
"%m/%d/%Y %H:%M:%S.%f",
|
||||||
|
"%m/%d/%Y %H:%M",
|
||||||
|
"%m/%d/%Y",
|
||||||
|
"%m/%d/%y %H:%M:%S",
|
||||||
|
"%m/%d/%y %H:%M:%S.%f",
|
||||||
|
"%m/%d/%y %H:%M",
|
||||||
|
"%m/%d/%y"
|
||||||
],
|
],
|
||||||
"DATE_FORMAT": "j \\d\\e F \\d\\e Y",
|
"DATE_FORMAT": "N j, Y",
|
||||||
"DATE_INPUT_FORMATS": [
|
"DATE_INPUT_FORMATS": [
|
||||||
"%d/%m/%Y",
|
"%Y-%m-%d",
|
||||||
"%d/%m/%y",
|
"%m/%d/%Y",
|
||||||
"%Y-%m-%d"
|
"%m/%d/%y"
|
||||||
],
|
],
|
||||||
"DECIMAL_SEPARATOR": ",",
|
"DECIMAL_SEPARATOR": ".",
|
||||||
"FIRST_DAY_OF_WEEK": 1,
|
"FIRST_DAY_OF_WEEK": 0,
|
||||||
"MONTH_DAY_FORMAT": "j \\d\\e F",
|
"MONTH_DAY_FORMAT": "F j",
|
||||||
"NUMBER_GROUPING": 3,
|
"NUMBER_GROUPING": 3,
|
||||||
"SHORT_DATETIME_FORMAT": "d/m/Y H:i",
|
"SHORT_DATETIME_FORMAT": "m/d/Y P",
|
||||||
"SHORT_DATE_FORMAT": "d/m/Y",
|
"SHORT_DATE_FORMAT": "m/d/Y",
|
||||||
"THOUSAND_SEPARATOR": ".",
|
"THOUSAND_SEPARATOR": ",",
|
||||||
"TIME_FORMAT": "H:i",
|
"TIME_FORMAT": "P",
|
||||||
"TIME_INPUT_FORMATS": [
|
"TIME_INPUT_FORMATS": [
|
||||||
"%H:%M:%S",
|
"%H:%M:%S",
|
||||||
"%H:%M:%S.%f",
|
"%H:%M:%S.%f",
|
||||||
"%H:%M"
|
"%H:%M"
|
||||||
],
|
],
|
||||||
"YEAR_MONTH_FORMAT": "F \\d\\e Y"
|
"YEAR_MONTH_FORMAT": "F Y"
|
||||||
};
|
};
|
||||||
|
|
||||||
django.get_format = function(format_type) {
|
django.get_format = function(format_type) {
|
||||||
|
|
|
@ -0,0 +1,134 @@
|
||||||
|
/*
|
||||||
|
* You should never see this file.
|
||||||
|
* It is here only for compatibility reasons in case of the command `compilejsmessages` was never executed.
|
||||||
|
* Please execute this command to generate translation strings.
|
||||||
|
*/
|
||||||
|
|
||||||
|
(function(globals) {
|
||||||
|
|
||||||
|
var django = globals.django || (globals.django = {});
|
||||||
|
|
||||||
|
|
||||||
|
django.pluralidx = function(n) {
|
||||||
|
var v=(n != 1);
|
||||||
|
if (typeof(v) == 'boolean') {
|
||||||
|
return v ? 1 : 0;
|
||||||
|
} else {
|
||||||
|
return v;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
/* gettext library */
|
||||||
|
|
||||||
|
django.catalog = django.catalog || {};
|
||||||
|
|
||||||
|
|
||||||
|
if (!django.jsi18n_initialized) {
|
||||||
|
django.gettext = function(msgid) {
|
||||||
|
var value = django.catalog[msgid];
|
||||||
|
if (typeof(value) == 'undefined') {
|
||||||
|
return msgid;
|
||||||
|
} else {
|
||||||
|
return (typeof(value) == 'string') ? value : value[0];
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
django.ngettext = function(singular, plural, count) {
|
||||||
|
var value = django.catalog[singular];
|
||||||
|
if (typeof(value) == 'undefined') {
|
||||||
|
return (count == 1) ? singular : plural;
|
||||||
|
} else {
|
||||||
|
return value.constructor === Array ? value[django.pluralidx(count)] : value;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
django.gettext_noop = function(msgid) { return msgid; };
|
||||||
|
|
||||||
|
django.pgettext = function(context, msgid) {
|
||||||
|
var value = django.gettext(context + '\x04' + msgid);
|
||||||
|
if (value.indexOf('\x04') != -1) {
|
||||||
|
value = msgid;
|
||||||
|
}
|
||||||
|
return value;
|
||||||
|
};
|
||||||
|
|
||||||
|
django.npgettext = function(context, singular, plural, count) {
|
||||||
|
var value = django.ngettext(context + '\x04' + singular, context + '\x04' + plural, count);
|
||||||
|
if (value.indexOf('\x04') != -1) {
|
||||||
|
value = django.ngettext(singular, plural, count);
|
||||||
|
}
|
||||||
|
return value;
|
||||||
|
};
|
||||||
|
|
||||||
|
django.interpolate = function(fmt, obj, named) {
|
||||||
|
if (named) {
|
||||||
|
return fmt.replace(/%\(\w+\)s/g, function(match){return String(obj[match.slice(2,-2)])});
|
||||||
|
} else {
|
||||||
|
return fmt.replace(/%s/g, function(match){return String(obj.shift())});
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
/* formatting library */
|
||||||
|
|
||||||
|
django.formats = {
|
||||||
|
"DATETIME_FORMAT": "j \\d\\e F \\d\\e Y \\a \\l\\a\\s H:i",
|
||||||
|
"DATETIME_INPUT_FORMATS": [
|
||||||
|
"%d/%m/%Y %H:%M:%S",
|
||||||
|
"%d/%m/%Y %H:%M:%S.%f",
|
||||||
|
"%d/%m/%Y %H:%M",
|
||||||
|
"%d/%m/%y %H:%M:%S",
|
||||||
|
"%d/%m/%y %H:%M:%S.%f",
|
||||||
|
"%d/%m/%y %H:%M",
|
||||||
|
"%Y-%m-%d %H:%M:%S",
|
||||||
|
"%Y-%m-%d %H:%M:%S.%f",
|
||||||
|
"%Y-%m-%d %H:%M",
|
||||||
|
"%Y-%m-%d"
|
||||||
|
],
|
||||||
|
"DATE_FORMAT": "j \\d\\e F \\d\\e Y",
|
||||||
|
"DATE_INPUT_FORMATS": [
|
||||||
|
"%d/%m/%Y",
|
||||||
|
"%d/%m/%y",
|
||||||
|
"%Y-%m-%d"
|
||||||
|
],
|
||||||
|
"DECIMAL_SEPARATOR": ",",
|
||||||
|
"FIRST_DAY_OF_WEEK": 1,
|
||||||
|
"MONTH_DAY_FORMAT": "j \\d\\e F",
|
||||||
|
"NUMBER_GROUPING": 3,
|
||||||
|
"SHORT_DATETIME_FORMAT": "d/m/Y H:i",
|
||||||
|
"SHORT_DATE_FORMAT": "d/m/Y",
|
||||||
|
"THOUSAND_SEPARATOR": ".",
|
||||||
|
"TIME_FORMAT": "H:i",
|
||||||
|
"TIME_INPUT_FORMATS": [
|
||||||
|
"%H:%M:%S",
|
||||||
|
"%H:%M:%S.%f",
|
||||||
|
"%H:%M"
|
||||||
|
],
|
||||||
|
"YEAR_MONTH_FORMAT": "F \\d\\e Y"
|
||||||
|
};
|
||||||
|
|
||||||
|
django.get_format = function(format_type) {
|
||||||
|
var value = django.formats[format_type];
|
||||||
|
if (typeof(value) == 'undefined') {
|
||||||
|
return format_type;
|
||||||
|
} else {
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
/* add to global namespace */
|
||||||
|
globals.pluralidx = django.pluralidx;
|
||||||
|
globals.gettext = django.gettext;
|
||||||
|
globals.ngettext = django.ngettext;
|
||||||
|
globals.gettext_noop = django.gettext_noop;
|
||||||
|
globals.pgettext = django.pgettext;
|
||||||
|
globals.npgettext = django.npgettext;
|
||||||
|
globals.interpolate = django.interpolate;
|
||||||
|
globals.get_format = django.get_format;
|
||||||
|
|
||||||
|
django.jsi18n_initialized = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
}(this));
|
||||||
|
|
Loading…
Reference in New Issue