org.views.reservation

Functions

reservation_subject(resource_title, reservations, activity) → str

assert_anonymous_access_only_temporary(resource, ...) → None

Raises exceptions if the current user is anonymous and no longer

assert_access_only_if_there_are_reservations(reservations) → None

Raises an exception if no reservations are available.

respond_with_success(request) → onegov.core.types.JSON_ro

respond_with_error(request, error) → onegov.core.types.JSON_ro

reserve_allocation(self, request) → onegov.core.types.JSON_ro

Adds a single reservation to the list of reservations bound to the

internal_reserve(self, request) → onegov.core.types.JSON_ro

Adds a single reservation to the list of reservations bound to the

delete_reservation(self, request) → onegov.core.types.JSON_ro

get_reservation_form_class(resource, request) → type[onegov.org.forms.ReservationForm]

handle_reservation_form(self, request, form[, layout]) → onegov.core.types.RenderData | webob.Response

Asks the user for the form data required to complete one or many

get_next_resource_context(reservations) → onegov.reservation.Resource

handle_find_your_spot_reservation_form(self, request) → webob.Response

This is a convenience view that redirects to the appropriate

blocked_by_zipcode(request, resource, form, reservations) → dict[int, blocked_by_zipcode.date]

Returns a dict of reservation ids that are blocked by zipcode, with

confirm_reservation(self, request[, layout]) → onegov.core.types.RenderData | webob.Response

finalize_reservation(self, request) → webob.Response

get_my_reservations_url(request, email[, ...]) → str | None

Durable magic link to a limited summary of the recipient's

get_reservations_subscribe_url(request, email[, ...]) → str | None

Durable magic link to the recipient's reservations calendar feed.

accept_reservation(self, request[, text, notify, ...]) → webob.Response

accept_reservation_from_ticket(self, request) → webob.Response

accept_reservation_with_message(self, request, form[, ...]) → onegov.core.types.RenderData | webob.Response

accept_reservation_with_message_from_ticket(self, ...) → onegov.core.types.RenderData | webob.Response

_remove_reservation(self, request[, text, notify, ...]) → webob.Response | None

reject_reservation(self, request) → webob.Response | None

reject_reservation_from_ticket(self, request) → webob.Response | None

reject_reservation_with_message(self, request, form[, ...]) → onegov.core.types.RenderData | webob.Response | None

reject_reservation_with_message_from_ticket(self, ...) → onegov.core.types.RenderData | webob.Response | None

request_cancellation(self, request, form[, layout]) → onegov.core.types.RenderData | webob.Response

accept_cancellation(self, request) → webob.Response | None

send_reservation_summary(self, request) → webob.Response | None

add_reservation(self, request, form[, view_ticket, layout]) → onegov.core.types.RenderData | webob.Response

add_reservation_from_ticket(self, request, form[, layout]) → onegov.core.types.RenderData | webob.Response | None

adjust_reservation(self, request, form[, view_ticket, ...]) → onegov.core.types.RenderData | webob.Response

adjust_reservation_from_ticket(self, request, form[, ...]) → onegov.core.types.RenderData | webob.Response | None

edit_kaba(self, request, form[, view_ticket, layout]) → onegov.core.types.RenderData | webob.Response

edit_kaba_from_ticket(self, request, form[, layout]) → onegov.core.types.RenderData | webob.Response | None

Module Contents

org.views.reservation.reservation_subject(resource_title: str, reservations: collections.abc.Sequence[Any], activity: str) → str[source]
org.views.reservation.assert_anonymous_access_only_temporary(resource: onegov.reservation.Resource, reservation: onegov.reservation.Reservation, request: onegov.org.request.OrgRequest) → None[source]

Raises exceptions if the current user is anonymous and no longer should be given access to the reservation models.

This could probably be done using morepath’s security system, but it would not be quite as straight-forward. This approach is, though we have to manually add this function to all reservation views the anonymous user should be able to access when creating a new reservatin, but not anymore after that.

org.views.reservation.assert_access_only_if_there_are_reservations(reservations: collections.abc.Collection[Any]) → None[source]

Raises an exception if no reservations are available.

org.views.reservation.respond_with_success(request: onegov.org.request.OrgRequest) → onegov.core.types.JSON_ro[source]
org.views.reservation.respond_with_error(request: onegov.org.request.OrgRequest, error: str) → onegov.core.types.JSON_ro[source]
org.views.reservation.reserve_allocation(self: onegov.reservation.Allocation, request: onegov.org.request.OrgRequest) → onegov.core.types.JSON_ro[source]

Adds a single reservation to the list of reservations bound to the current browser session.

Does not actually reserve anything, just keeps a list of things to reserve later. Though it will still check if the reservation is feasible.

org.views.reservation.internal_reserve(self: onegov.reservation.Resource, request: onegov.org.request.OrgRequest) → onegov.core.types.JSON_ro[source]

Adds a single reservation to the list of reservations bound to the current browser session.

In contrast to reserve_allocation this operates on the virtual resource and creates an allocation if necessary. Therefore this is resource-scoped.

It is also only supported on room resources currently.

org.views.reservation.delete_reservation(self: onegov.reservation.Reservation, request: onegov.org.request.OrgRequest) → onegov.core.types.JSON_ro[source]
org.views.reservation.get_reservation_form_class(resource: onegov.reservation.Resource, request: onegov.org.request.OrgRequest) → type[onegov.org.forms.ReservationForm][source]
org.views.reservation.handle_reservation_form(self: onegov.reservation.Resource, request: onegov.org.request.OrgRequest, form: onegov.org.forms.ReservationForm, layout: onegov.org.layout.ReservationLayout | None = None) → onegov.core.types.RenderData | webob.Response[source]

Asks the user for the form data required to complete one or many reservations on a resource.

org.views.reservation.get_next_resource_context(reservations: dict[onegov.reservation.Resource, list[onegov.reservation.Reservation]]) → onegov.reservation.Resource[source]
org.views.reservation.handle_find_your_spot_reservation_form(self: onegov.org.models.resource.FindYourSpotCollection, request: onegov.org.request.OrgRequest) → webob.Response[source]

This is a convenience view that redirects to the appropriate resource specific reservation form.

org.views.reservation.blocked_by_zipcode(request: onegov.org.request.OrgRequest, resource: onegov.reservation.Resource, form: onegov.form.Form, reservations: collections.abc.Iterable[onegov.reservation.Reservation]) → dict[int, blocked_by_zipcode.date][source]

Returns a dict of reservation ids that are blocked by zipcode, with the value set to the date it will be available.

org.views.reservation.confirm_reservation(self: onegov.reservation.Resource, request: onegov.org.request.OrgRequest, layout: onegov.org.layout.ReservationLayout | None = None) → onegov.core.types.RenderData | webob.Response[source]
org.views.reservation.finalize_reservation(self: onegov.reservation.Resource, request: onegov.org.request.OrgRequest) → webob.Response[source]
org.views.reservation.get_my_reservations_url(request: onegov.org.request.OrgRequest, email: str, reservation_token: uuid.UUID | None = None) → str | None[source]

Durable magic link to a limited summary of the recipient’s reservations, with an option to log in for full details.

When reservation_token is given, the limited view is restricted to the reservations of that single ticket.

org.views.reservation.get_reservations_subscribe_url(request: onegov.org.request.OrgRequest, email: str, reservation_token: uuid.UUID | None = None) → str | None[source]

Durable magic link to the recipient’s reservations calendar feed.

When reservation_token is given, the feed is restricted to the reservations of that single ticket.

org.views.reservation.accept_reservation(self: onegov.reservation.Reservation, request: onegov.org.request.OrgRequest, text: str | None = None, notify: bool = False, view_ticket: onegov.org.models.ticket.ReservationTicket | None = None, file: onegov.file.File | None = None) → webob.Response[source]
org.views.reservation.accept_reservation_from_ticket(self: onegov.org.models.ticket.ReservationTicket, request: onegov.org.request.OrgRequest) → webob.Response[source]
org.views.reservation.accept_reservation_with_message(self: onegov.reservation.Reservation, request: onegov.org.request.OrgRequest, form: onegov.org.forms.ReservationTicketChatMessageForm, layout: onegov.org.layout.TicketChatMessageLayout | None = None, view_ticket: onegov.org.models.ticket.ReservationTicket | None = None) → onegov.core.types.RenderData | webob.Response[source]
org.views.reservation.accept_reservation_with_message_from_ticket(self: onegov.org.models.ticket.ReservationTicket, request: onegov.org.request.OrgRequest, form: onegov.org.forms.ReservationTicketChatMessageForm, layout: onegov.org.layout.TicketChatMessageLayout | None = None) → onegov.core.types.RenderData | webob.Response[source]
org.views.reservation._remove_reservation(self: onegov.reservation.Reservation, request: onegov.org.request.OrgRequest, text: str | None = None, notify: bool = False, view_ticket: onegov.org.models.ticket.ReservationTicket | None = None, change: str = 'rejected', targeted_ids: set[int] | None = None) → webob.Response | None[source]
org.views.reservation.reject_reservation(self: onegov.reservation.Reservation, request: onegov.org.request.OrgRequest) → webob.Response | None[source]
org.views.reservation.reject_reservation_from_ticket(self: onegov.org.models.ticket.ReservationTicket, request: onegov.org.request.OrgRequest) → webob.Response | None[source]
org.views.reservation.reject_reservation_with_message(self: onegov.reservation.Reservation, request: onegov.org.request.OrgRequest, form: onegov.org.forms.InternalTicketChatMessageForm, layout: onegov.org.layout.TicketChatMessageLayout | None = None, view_ticket: onegov.org.models.ticket.ReservationTicket | None = None) → onegov.core.types.RenderData | webob.Response | None[source]
org.views.reservation.reject_reservation_with_message_from_ticket(self: onegov.org.models.ticket.ReservationTicket, request: onegov.org.request.OrgRequest, form: onegov.org.forms.InternalTicketChatMessageForm, layout: onegov.org.layout.TicketChatMessageLayout | None = None) → onegov.core.types.RenderData | webob.Response | None[source]
org.views.reservation.request_cancellation(self: onegov.org.models.ticket.ReservationTicket, request: onegov.org.request.OrgRequest, form: onegov.org.forms.RequestCancellationForm, layout: onegov.org.layout.DefaultLayout | None = None) → onegov.core.types.RenderData | webob.Response[source]
org.views.reservation.accept_cancellation(self: onegov.org.models.ticket.ReservationTicket, request: onegov.org.request.OrgRequest) → webob.Response | None[source]
org.views.reservation.send_reservation_summary(self: onegov.org.models.ticket.ReservationTicket, request: onegov.org.request.OrgRequest) → webob.Response | None[source]
org.views.reservation.add_reservation(self: onegov.reservation.Reservation, request: onegov.org.request.OrgRequest, form: onegov.org.forms.AddReservationForm, view_ticket: onegov.org.models.ticket.ReservationTicket | None = None, layout: onegov.org.layout.ReservationLayout | onegov.org.layout.TicketLayout | None = None) → onegov.core.types.RenderData | webob.Response[source]
org.views.reservation.add_reservation_from_ticket(self: onegov.org.models.ticket.ReservationTicket, request: onegov.org.request.OrgRequest, form: onegov.org.forms.AddReservationForm, layout: onegov.org.layout.TicketLayout | None = None) → onegov.core.types.RenderData | webob.Response | None[source]
org.views.reservation.adjust_reservation(self: onegov.reservation.Reservation, request: onegov.org.request.OrgRequest, form: onegov.org.forms.ReservationAdjustmentForm, view_ticket: onegov.org.models.ticket.ReservationTicket | None = None, layout: onegov.org.layout.ReservationLayout | onegov.org.layout.TicketLayout | None = None) → onegov.core.types.RenderData | webob.Response[source]
org.views.reservation.adjust_reservation_from_ticket(self: onegov.org.models.ticket.ReservationTicket, request: onegov.org.request.OrgRequest, form: onegov.org.forms.ReservationAdjustmentForm, layout: onegov.org.layout.TicketLayout | None = None) → onegov.core.types.RenderData | webob.Response | None[source]
org.views.reservation.edit_kaba(self: onegov.reservation.Reservation, request: onegov.org.request.OrgRequest, form: onegov.org.forms.KabaEditForm, view_ticket: onegov.org.models.ticket.ReservationTicket | None = None, layout: onegov.org.layout.ReservationLayout | onegov.org.layout.TicketLayout | None = None) → onegov.core.types.RenderData | webob.Response[source]
org.views.reservation.edit_kaba_from_ticket(self: onegov.org.models.ticket.ReservationTicket, request: onegov.org.request.OrgRequest, form: onegov.org.forms.KabaEditForm, layout: onegov.org.layout.TicketLayout | None = None) → onegov.core.types.RenderData | webob.Response | None[source]