1
0
mirror of https://github.com/LaCasemate/fab-manager.git synced 2024-11-29 10:24:20 +01:00

[bug] Free entry label for events without reservation

This commit is contained in:
Sylvain 2020-04-28 11:20:12 +02:00
parent 2da644ecd5
commit f6c5a75811
16 changed files with 35 additions and 34 deletions

View File

@ -5,13 +5,14 @@
- Fix a bug: unable to change group if the previous was deactivated - Fix a bug: unable to change group if the previous was deactivated
- Fix a bug: unable to create events or trainings that are not multiples of SLOT_DURATION - Fix a bug: unable to create events or trainings that are not multiples of SLOT_DURATION
- Fix a bug: unable to delete an unreserved event - Fix a bug: unable to delete an unreserved event
- Fix a bug: no reservation needed for an event labelled as free entry
## v4.3.4 2020 April 14 ## v4.3.4 2020 April 14
- Improved version check - Improved version check
- Improved setup script for installations without nginx - Improved setup script for installations without nginx
- Changed some default values for new installations - Changed some default values for new installations
- Compatible database with Fab-manager v1, to allow upgrades - Database is now compatible with Fab-manager v1, to allow upgrades
- Updated documentation - Updated documentation
- Changed In-Context pseudo-language to Zulu instead of Acholi - Changed In-Context pseudo-language to Zulu instead of Acholi
- Allow removing contacts from the about page - Allow removing contacts from the about page
@ -31,7 +32,7 @@
## v4.3.3 2020 April 1st ## v4.3.3 2020 April 1st
- Docker build will no longer embed development dependencies - Docker build will no longer embed development dependencies
- Updated instructions to setup a development environment - Updated instructions to set up a development environment
- Updated translations - Updated translations
- Removed `MESSAGEFORMAT_LOCALE` as it is now handled by make-plural - Removed `MESSAGEFORMAT_LOCALE` as it is now handled by make-plural
- Updated rails framework to v5.2 - Updated rails framework to v5.2
@ -67,7 +68,7 @@
## v4.3.1 2020 March 04 ## v4.3.1 2020 March 04
- Updated user's manual for v4.3 (fr) - Updated user's manual for v4.3 (fr)
- Display user's manual when help is asked, if no tour is available - Display user's manual when asking for help, if no tour is available
- Change style and pluralize the text of the slot division alert in new availability assistant - Change style and pluralize the text of the slot division alert in new availability assistant
- Fix a bug: in feature tours, next and previous arrows may be broken on some systems - Fix a bug: in feature tours, next and previous arrows may be broken on some systems
- Fix a bug: in the user's menu, two links to the personal wallet - Fix a bug: in the user's menu, two links to the personal wallet

View File

@ -71,7 +71,7 @@
<span class="btn btn-warning btn-xs" ng-click="cancelBooking(r)" ng-if="!r.canceled_at"><i class="fa fa-times red"></i></span> <span class="btn btn-warning btn-xs" ng-click="cancelBooking(r)" ng-if="!r.canceled_at"><i class="fa fa-times red"></i></span>
</li> </li>
</ul> </ul>
<div ng-show="reservations.length == 0" translate>{{ 'app.admin.calendar.no_reservations' }}</div> <div ng-show="reservations.length == 0" translate>{{ 'app.admin.calendar.without_reservation' }}</div>
<div class="m-t" ng-show="availability.lock"><i class="fa fa-ban"></i> <span class="m-l-xs" translate>{{ 'app.admin.calendar.reservations_locked' }}</span></div> <div class="m-t" ng-show="availability.lock"><i class="fa fa-ban"></i> <span class="m-l-xs" translate>{{ 'app.admin.calendar.reservations_locked' }}</span></div>
</div> </div>
</div> </div>

View File

@ -51,7 +51,7 @@
<td style="vertical-align:middle"> <td style="vertical-align:middle">
<span class="ng-binding" ng-if="event.nb_total_places > 0">{{ event.nb_total_places - event.nb_free_places }} / {{ event.nb_total_places }}</span> <span class="ng-binding" ng-if="event.nb_total_places > 0">{{ event.nb_total_places - event.nb_free_places }} / {{ event.nb_total_places }}</span>
<span class="badge font-sbold cancelled" ng-if="event.nb_total_places == -1" translate>{{ 'app.admin.events.cancelled' }}</span> <span class="badge font-sbold cancelled" ng-if="event.nb_total_places == -1" translate>{{ 'app.admin.events.cancelled' }}</span>
<span class="badge font-sbold" ng-if="!event.nb_total_places" translate>{{ 'app.admin.events.free_entry' }}</span> <span class="badge font-sbold" ng-if="!event.nb_total_places" translate>{{ 'app.admin.events.without_reservation' }}</span>
</td> </td>
<td style="vertical-align:middle"> <td style="vertical-align:middle">

View File

@ -67,7 +67,7 @@
<span class="text-black-light text-xs" ng-if="event.nb_free_places > 0">{{event.nb_free_places}} {{ 'app.public.events_list.still_available' | translate }}</span> <span class="text-black-light text-xs" ng-if="event.nb_free_places > 0">{{event.nb_free_places}} {{ 'app.public.events_list.still_available' | translate }}</span>
<span class="text-black-light text-xs" ng-if="event.nb_total_places > 0 && event.nb_free_places <= 0" translate>{{ 'app.public.events_list.sold_out' }}</span> <span class="text-black-light text-xs" ng-if="event.nb_total_places > 0 && event.nb_free_places <= 0" translate>{{ 'app.public.events_list.sold_out' }}</span>
<span class="text-black-light text-xs" ng-if="event.nb_total_places == -1" translate>{{ 'app.public.events_list.cancelled' }}</span> <span class="text-black-light text-xs" ng-if="event.nb_total_places == -1" translate>{{ 'app.public.events_list.cancelled' }}</span>
<span class="text-black-light text-xs" ng-if="!event.nb_total_places" translate>{{ 'app.public.events_list.free_entry' }}</span> <span class="text-black-light text-xs" ng-if="!event.nb_total_places" translate>{{ 'app.public.events_list.without_reservation' }}</span>
</div> </div>
</div> </div>

View File

@ -102,7 +102,7 @@
<div ng-if="event.nb_total_places == -1"><span class="badge font-sbold" translate>{{ 'app.public.events_show.cancelled' }}</span></div> <div ng-if="event.nb_total_places == -1"><span class="badge font-sbold" translate>{{ 'app.public.events_show.cancelled' }}</span></div>
</div> </div>
<div class="text-sm m-b" ng-if="!event.nb_total_places"> <div class="text-sm m-b" ng-if="!event.nb_total_places">
<div><span class="badge font-sbold" translate>{{ 'app.public.events_show.free_entry' }}</span></div> <div><span class="badge font-sbold" translate>{{ 'app.public.events_show.without_reservation' }}</span></div>
</div> </div>

View File

@ -42,7 +42,7 @@
<i class="fa fa-user red col-xs-3 padder-icon"></i> <i class="fa fa-user red col-xs-3 padder-icon"></i>
<h6 class="m-n col-xs-9 "> <h6 class="m-n col-xs-9 ">
<span ng-if="event.nb_free_places > 0">{{ 'app.public.home.still_available' | translate }} {{event.nb_free_places}}</span> <span ng-if="event.nb_free_places > 0">{{ 'app.public.home.still_available' | translate }} {{event.nb_free_places}}</span>
<span ng-if="!event.nb_total_places" translate>{{ 'app.public.home.free_entry' }}</span> <span ng-if="!event.nb_total_places" translate>{{ 'app.public.home.without_reservation' }}</span>
<span ng-if="event.nb_total_places > 0 && event.nb_free_places <= 0" translate>{{ 'app.public.home.event_full' }}</span> <span ng-if="event.nb_total_places > 0 && event.nb_free_places <= 0" translate>{{ 'app.public.home.event_full' }}</span>
</h6> </h6>
</div> </div>

View File

@ -19,7 +19,7 @@ en:
availabilities: "Availabilities" availabilities: "Availabilities"
availabilities_notice: "Export to an Excel workbook every slots available for reservation, and their occupancy rate." availabilities_notice: "Export to an Excel workbook every slots available for reservation, and their occupancy rate."
ongoing_reservations: "Ongoing reservations" ongoing_reservations: "Ongoing reservations"
no_reservations: "No reservations" without_reservation: "Without reservation"
confirmation_required: "Confirmation required" confirmation_required: "Confirmation required"
do_you_really_want_to_cancel_the_USER_s_reservation_the_DATE_at_TIME_concerning_RESERVATION: "Do you really {GENDER, select, other {want}} to cancel the {USER}'s reservation, the {DATE} at {TIME}, concerning {RESERVATION}?" do_you_really_want_to_cancel_the_USER_s_reservation_the_DATE_at_TIME_concerning_RESERVATION: "Do you really {GENDER, select, other {want}} to cancel the {USER}'s reservation, the {DATE} at {TIME}, concerning {RESERVATION}?"
reservation_was_successfully_cancelled: "Reservation was successfully cancelled." reservation_was_successfully_cancelled: "Reservation was successfully cancelled."
@ -193,7 +193,7 @@ en:
booking: "Booking" booking: "Booking"
sold_out: "Sold out" sold_out: "Sold out"
cancelled: "Cancelled" cancelled: "Cancelled"
free_entry: "Free entry" without_reservation: "Without reservation"
free_admission: "Free admission" free_admission: "Free admission"
view_reservations: "View reservations" view_reservations: "View reservations"
load_the_next_events: "Load the next events..." load_the_next_events: "Load the next events..."
@ -611,7 +611,7 @@ en:
manager_successfully_deleted: "Manager successfully deleted." manager_successfully_deleted: "Manager successfully deleted."
unable_to_delete_the_manager: "Unable to delete the manager." unable_to_delete_the_manager: "Unable to delete the manager."
partners: "Partners" partners: "Partners"
partners_info: "A partner is a special user that can be associated with the «Partner» plans. These users will only receive notifications about subscriptions to these plans." partners_info: "A partner is a special user that can be associated with the «Partner» plans. These users won't be able to connect and will just receive notifications about subscriptions to their associated plan."
search_for_a_partner: "Search for a partner" search_for_a_partner: "Search for a partner"
add_a_new_partner: "Add a new partner" add_a_new_partner: "Add a new partner"
delete_this_partner: "Do you really want to delete this partner? This cannot be undone." delete_this_partner: "Do you really want to delete this partner? This cannot be undone."

View File

@ -19,7 +19,7 @@ es:
availabilities: "Disponibilidades" availabilities: "Disponibilidades"
availabilities_notice: "Exportar a un libro de trabajo de Excel cada ranura disponible para reserva, y su ratio de ocupación." availabilities_notice: "Exportar a un libro de trabajo de Excel cada ranura disponible para reserva, y su ratio de ocupación."
ongoing_reservations: "Reservas en curso" ongoing_reservations: "Reservas en curso"
no_reservations: "Sin reservas" without_reservation: "Sin reserva"
confirmation_required: "Confirmación requerida" confirmation_required: "Confirmación requerida"
do_you_really_want_to_cancel_the_USER_s_reservation_the_DATE_at_TIME_concerning_RESERVATION: "Realmente quieres cancelar la reserva del {USER}, en {DATE} a las {TIME}, respecto {RESERVATION}?" do_you_really_want_to_cancel_the_USER_s_reservation_the_DATE_at_TIME_concerning_RESERVATION: "Realmente quieres cancelar la reserva del {USER}, en {DATE} a las {TIME}, respecto {RESERVATION}?"
reservation_was_successfully_cancelled: "La reserva fué cancelada con éxito." reservation_was_successfully_cancelled: "La reserva fué cancelada con éxito."
@ -193,7 +193,7 @@ es:
booking: "Booking" booking: "Booking"
sold_out: "Sold out" sold_out: "Sold out"
cancelled: "Cancelled" cancelled: "Cancelled"
free_entry: "Free entry" without_reservation: "Sin reserva"
free_admission: "Free admission" free_admission: "Free admission"
view_reservations: "Ver reservas" view_reservations: "Ver reservas"
load_the_next_events: "Load the next events..." load_the_next_events: "Load the next events..."

View File

@ -193,7 +193,7 @@ fr:
booking: "Réservations" booking: "Réservations"
sold_out: "Complet" sold_out: "Complet"
cancelled: "Annulé" cancelled: "Annulé"
free_entry: "Entrée libre" without_reservation: "Sans réservation"
free_admission: "Entrée gratuite" free_admission: "Entrée gratuite"
view_reservations: "Consulter les réservations" view_reservations: "Consulter les réservations"
load_the_next_events: "Charger les évènements suivants..." load_the_next_events: "Charger les évènements suivants..."

View File

@ -193,8 +193,8 @@ pt:
booking: "Reserva" booking: "Reserva"
sold_out: "Esgotado" sold_out: "Esgotado"
cancelled: "Cancelado" cancelled: "Cancelado"
free_entry: "Entrada gratuita" no_reservations: "Sem reserva"
free_admission: "Admissão gratuita" free_admission: "Entrada gratuita"
view_reservations: "Ver reservas" view_reservations: "Ver reservas"
load_the_next_events: "Load the next events..." load_the_next_events: "Load the next events..."
categories: "Categorias" categories: "Categorias"

View File

@ -193,7 +193,7 @@ zu:
booking: "crwdns7009:0crwdne7009:0" booking: "crwdns7009:0crwdne7009:0"
sold_out: "crwdns7011:0crwdne7011:0" sold_out: "crwdns7011:0crwdne7011:0"
cancelled: "crwdns7013:0crwdne7013:0" cancelled: "crwdns7013:0crwdne7013:0"
free_entry: "crwdns7015:0crwdne7015:0" without_reservation: "crwdns7015:0crwdne7015:0"
free_admission: "crwdns7017:0crwdne7017:0" free_admission: "crwdns7017:0crwdne7017:0"
view_reservations: "crwdns7019:0crwdne7019:0" view_reservations: "crwdns7019:0crwdne7019:0"
load_the_next_events: "crwdns7021:0crwdne7021:0" load_the_next_events: "crwdns7021:0crwdne7021:0"

View File

@ -147,7 +147,7 @@ en:
from_date_to_date: "From {START} to {END}" from_date_to_date: "From {START} to {END}"
on_the_date: "On the {DATE}" on_the_date: "On the {DATE}"
from_time_to_time: "From {START} to {END}" from_time_to_time: "From {START} to {END}"
free_entry: "Free entry" without_reservation: "Without reservation"
free_admission: "Free admission" free_admission: "Free admission"
full_price: "Full price: " full_price: "Full price: "
event_full: "Event full" event_full: "Event full"
@ -270,7 +270,7 @@ en:
cancelled: "Cancelled" cancelled: "Cancelled"
free_admission: "Free admission" free_admission: "Free admission"
still_available: "available place(s)" still_available: "available place(s)"
free_entry: "Free entry" without_reservation: "Without reservation"
add_an_event: "Add an event" add_an_event: "Add an event"
load_the_next_events: "Load the next events..." load_the_next_events: "Load the next events..."
full_price_: "Full price:" full_price_: "Full price:"
@ -291,7 +291,7 @@ en:
full_price_: "Full price:" full_price_: "Full price:"
tickets_still_availables: "Tickets still available:" tickets_still_availables: "Tickets still available:"
sold_out: "Sold out." sold_out: "Sold out."
free_entry: "Free entry" without_reservation: "Without reservation"
cancelled: "Cancelled" cancelled: "Cancelled"
ticket: "{NUMBER, plural, one{ticket} other{tickets}}" ticket: "{NUMBER, plural, one{ticket} other{tickets}}"
make_a_gift_of_this_reservation: "Make a gift of this reservation" make_a_gift_of_this_reservation: "Make a gift of this reservation"

View File

@ -146,8 +146,8 @@ es:
from_date_to_date: "Desde {START} hasta {END}" from_date_to_date: "Desde {START} hasta {END}"
on_the_date: "El {DATE}" on_the_date: "El {DATE}"
from_time_to_time: "Desde {START} hasta {END}" from_time_to_time: "Desde {START} hasta {END}"
free_entry: "Entrada gratuita" without_reservation: "Sin reserva"
free_admission: "Admisión gratuita" free_admission: "Entrada gratuita"
full_price: "Precio completo: " full_price: "Precio completo: "
event_full: "Evento lleno" event_full: "Evento lleno"
still_available: "Asiento(s) disponible(s): " still_available: "Asiento(s) disponible(s): "
@ -269,7 +269,7 @@ es:
cancelled: "Cancelled" cancelled: "Cancelled"
free_admission: "Free admission" free_admission: "Free admission"
still_available: "asiento(s) disponible(s)" still_available: "asiento(s) disponible(s)"
free_entry: "Free entry" without_reservation: "Sin reserva"
add_an_event: "Add an event" add_an_event: "Add an event"
load_the_next_events: "Cargar los próximos eventos..." load_the_next_events: "Cargar los próximos eventos..."
full_price_: "Precio completo:" full_price_: "Precio completo:"
@ -290,7 +290,7 @@ es:
full_price_: "Precio completo:" full_price_: "Precio completo:"
tickets_still_availables: "Entradas disponibles:" tickets_still_availables: "Entradas disponibles:"
sold_out: "Entradas vendidas." sold_out: "Entradas vendidas."
free_entry: "Entrada gratuita" without_reservation: "Sin reserva"
cancelled: "Cancelled" cancelled: "Cancelled"
ticket: "{NUMBER, plural, one{ticket} other{tickets}}" ticket: "{NUMBER, plural, one{ticket} other{tickets}}"
make_a_gift_of_this_reservation: "Regalar esta reserva" make_a_gift_of_this_reservation: "Regalar esta reserva"

View File

@ -146,7 +146,7 @@ fr:
from_date_to_date: "Du {START} au {END}" from_date_to_date: "Du {START} au {END}"
on_the_date: "Le {DATE}" on_the_date: "Le {DATE}"
from_time_to_time: "De {START} à {END}" from_time_to_time: "De {START} à {END}"
free_entry: "Accès libre" without_reservation: "Sans réservation"
free_admission: "Entrée gratuite" free_admission: "Entrée gratuite"
full_price: "Plein tarif : " full_price: "Plein tarif : "
event_full: "Événement complet" event_full: "Événement complet"
@ -269,7 +269,7 @@ fr:
cancelled: "Annulé" cancelled: "Annulé"
free_admission: "Gratuit" free_admission: "Gratuit"
still_available: "place(s) disponible(s)" still_available: "place(s) disponible(s)"
free_entry: "Accès libre" without_reservation: "Sans réservation"
add_an_event: "Ajouter un évènement" add_an_event: "Ajouter un évènement"
load_the_next_events: "Charger les évènements suivants..." load_the_next_events: "Charger les évènements suivants..."
full_price_: "Plein tarif :" full_price_: "Plein tarif :"
@ -290,7 +290,7 @@ fr:
full_price_: "Plein tarif :" full_price_: "Plein tarif :"
tickets_still_availables: "Places encore disponibles :" tickets_still_availables: "Places encore disponibles :"
sold_out: "Événement complet." sold_out: "Événement complet."
free_entry: "Accès libre" without_reservation: "Sans réservation"
cancelled: "Annulé" cancelled: "Annulé"
ticket: "{NUMBER, plural, =0{place} one{place} other{places}}" ticket: "{NUMBER, plural, =0{place} one{place} other{places}}"
make_a_gift_of_this_reservation: "Offrir cette réservation" make_a_gift_of_this_reservation: "Offrir cette réservation"

View File

@ -146,8 +146,8 @@ pt:
from_date_to_date: "De {START} até {END}" from_date_to_date: "De {START} até {END}"
on_the_date: "Em {DATE}" on_the_date: "Em {DATE}"
from_time_to_time: "Das {START} até {END}" from_time_to_time: "Das {START} até {END}"
free_entry: "Entrada franca" without_reservation: "Sem reserva"
free_admission: "Admissão grátis" free_admission: "Entrada grátis"
full_price: "Valor inteira: " full_price: "Valor inteira: "
event_full: "Evento lotado" event_full: "Evento lotado"
still_available: "Locais disponíveis: " still_available: "Locais disponíveis: "
@ -269,7 +269,7 @@ pt:
cancelled: "Cancelado" cancelled: "Cancelado"
free_admission: "Admissão grátis" free_admission: "Admissão grátis"
still_available: "lugares disponíveis" still_available: "lugares disponíveis"
free_entry: "Entrada franca" without_reservation: "Sem reserva"
add_an_event: "Add an event" add_an_event: "Add an event"
load_the_next_events: "Load the next events..." load_the_next_events: "Load the next events..."
full_price_: "Valor inteira:" full_price_: "Valor inteira:"
@ -290,7 +290,7 @@ pt:
full_price_: "Valor inteira:" full_price_: "Valor inteira:"
tickets_still_availables: "Tickets ainda disponíveis:" tickets_still_availables: "Tickets ainda disponíveis:"
sold_out: "Esgotado." sold_out: "Esgotado."
free_entry: "Entrada franca" without_reservation: "Sem reserva"
cancelled: "Cancelado" cancelled: "Cancelado"
ticket: "{NUMBER, plural, one{ticket} other{tickets}}" ticket: "{NUMBER, plural, one{ticket} other{tickets}}"
make_a_gift_of_this_reservation: "Doe esta reserva" make_a_gift_of_this_reservation: "Doe esta reserva"

View File

@ -146,7 +146,7 @@ zu:
from_date_to_date: "crwdns9021:0{START}crwdnd9021:0{END}crwdne9021:0" from_date_to_date: "crwdns9021:0{START}crwdnd9021:0{END}crwdne9021:0"
on_the_date: "crwdns9023:0{DATE}crwdne9023:0" on_the_date: "crwdns9023:0{DATE}crwdne9023:0"
from_time_to_time: "crwdns9025:0{START}crwdnd9025:0{END}crwdne9025:0" from_time_to_time: "crwdns9025:0{START}crwdnd9025:0{END}crwdne9025:0"
free_entry: "crwdns9027:0crwdne9027:0" without_reservation: "crwdns9027:0crwdne9027:0"
free_admission: "crwdns9029:0crwdne9029:0" free_admission: "crwdns9029:0crwdne9029:0"
full_price: "crwdns20242:0crwdne20242:0" full_price: "crwdns20242:0crwdne20242:0"
event_full: "crwdns9033:0crwdne9033:0" event_full: "crwdns9033:0crwdne9033:0"
@ -269,7 +269,7 @@ zu:
cancelled: "crwdns9231:0crwdne9231:0" cancelled: "crwdns9231:0crwdne9231:0"
free_admission: "crwdns9233:0crwdne9233:0" free_admission: "crwdns9233:0crwdne9233:0"
still_available: "crwdns9235:0crwdne9235:0" still_available: "crwdns9235:0crwdne9235:0"
free_entry: "crwdns9237:0crwdne9237:0" without_reservation: "crwdns9237:0crwdne9237:0"
add_an_event: "crwdns9239:0crwdne9239:0" add_an_event: "crwdns9239:0crwdne9239:0"
load_the_next_events: "crwdns9241:0crwdne9241:0" load_the_next_events: "crwdns9241:0crwdne9241:0"
full_price_: "crwdns9243:0crwdne9243:0" full_price_: "crwdns9243:0crwdne9243:0"
@ -290,7 +290,7 @@ zu:
full_price_: "crwdns9267:0crwdne9267:0" full_price_: "crwdns9267:0crwdne9267:0"
tickets_still_availables: "crwdns9269:0crwdne9269:0" tickets_still_availables: "crwdns9269:0crwdne9269:0"
sold_out: "crwdns9271:0crwdne9271:0" sold_out: "crwdns9271:0crwdne9271:0"
free_entry: "crwdns9273:0crwdne9273:0" without_reservation: "crwdns9273:0crwdne9273:0"
cancelled: "crwdns9275:0crwdne9275:0" cancelled: "crwdns9275:0crwdne9275:0"
ticket: "crwdns9277:0NUMBER={NUMBER}crwdne9277:0" ticket: "crwdns9277:0NUMBER={NUMBER}crwdne9277:0"
make_a_gift_of_this_reservation: "crwdns9279:0crwdne9279:0" make_a_gift_of_this_reservation: "crwdns9279:0crwdne9279:0"