From b7bfb1acd888cc3a38b968a3c4a9814b6684d959 Mon Sep 17 00:00:00 2001 From: konrad Date: Tue, 6 Jul 2010 10:46:40 +0000 Subject: [PATCH] splitting the wob files into separate directories, one for each layer (db, class, transaction) git-svn-id: https://silmor.de/svn/softmagic/smoke/trunk@531 6e3c4bff-ac9f-4ac1-96c5-d2ea494d3e33 --- wob/audit.wolf | 18 -- wob/basics.wolf | 69 ----- wob/cart.wolf | 213 -------------- wob/classes/basics.wolf | 16 + wob/classes/cart.wolf | 153 ++++++++++ wob/classes/customer.wolf | 125 ++++++++ wob/classes/event.wolf | 167 +++++++++++ wob/classes/order.wolf | 229 ++++++++++++++ wob/classes/template.wolf | 50 ++++ wob/classes/user.wolf | 47 +++ wob/customer.wolf | 267 ----------------- wob/db/audit.wolf | 18 ++ wob/db/basics.wolf | 23 ++ wob/db/cart.wolf | 58 ++++ wob/db/customer.wolf | 53 ++++ wob/db/db.wolf | 22 ++ wob/db/event.wolf | 86 ++++++ wob/db/order.wolf | 148 ++++++++++ wob/db/template.wolf | 18 ++ wob/db/user.wolf | 67 +++++ wob/event.wolf | 377 ------------------------ wob/magicsmoke.wolf | 49 ++-- wob/order.wolf | 702 -------------------------------------------- wob/template.wolf | 101 ------- wob/transact/basics.wolf | 49 +++ wob/transact/cart.wolf | 21 ++ wob/transact/customer.wolf | 106 +++++++ wob/transact/event.wolf | 142 +++++++++ wob/transact/order.wolf | 342 +++++++++++++++++++++ wob/transact/template.wolf | 51 ++++ wob/transact/user.wolf | 251 ++++++++++++++++ wob/user.wolf | 347 ---------------------- 32 files changed, 2268 insertions(+), 2117 deletions(-) delete mode 100644 wob/audit.wolf delete mode 100644 wob/basics.wolf delete mode 100644 wob/cart.wolf create mode 100644 wob/classes/basics.wolf create mode 100644 wob/classes/cart.wolf create mode 100644 wob/classes/customer.wolf create mode 100644 wob/classes/event.wolf create mode 100644 wob/classes/order.wolf create mode 100644 wob/classes/template.wolf create mode 100644 wob/classes/user.wolf delete mode 100644 wob/customer.wolf create mode 100644 wob/db/audit.wolf create mode 100644 wob/db/basics.wolf create mode 100644 wob/db/cart.wolf create mode 100644 wob/db/customer.wolf create mode 100644 wob/db/db.wolf create mode 100644 wob/db/event.wolf create mode 100644 wob/db/order.wolf create mode 100644 wob/db/template.wolf create mode 100644 wob/db/user.wolf delete mode 100644 wob/event.wolf delete mode 100644 wob/order.wolf delete mode 100644 wob/template.wolf create mode 100644 wob/transact/basics.wolf create mode 100644 wob/transact/cart.wolf create mode 100644 wob/transact/customer.wolf create mode 100644 wob/transact/event.wolf create mode 100644 wob/transact/order.wolf create mode 100644 wob/transact/template.wolf create mode 100644 wob/transact/user.wolf delete mode 100644 wob/user.wolf diff --git a/wob/audit.wolf b/wob/audit.wolf deleted file mode 100644 index 1a8443e..0000000 --- a/wob/audit.wolf +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - - - -
-
\ No newline at end of file diff --git a/wob/basics.wolf b/wob/basics.wolf deleted file mode 100644 index 37c05b0..0000000 --- a/wob/basics.wolf +++ /dev/null @@ -1,69 +0,0 @@ - - - - - - - - - - - - - - - -
- - - - This transaction allows to make a complete database backup. The backup file is replayed into the database via the admin.php interface. - - - - Contains the structured backup data. - - - - - - - - - - - - - - - - Transport class for flags and their descriptions. They are actually stored in the config table. - - - - - - - - - - - - - - - - - - - - - - -
diff --git a/wob/cart.wolf b/wob/cart.wolf deleted file mode 100644 index ca8afb4..0000000 --- a/wob/cart.wolf +++ /dev/null @@ -1,213 +0,0 @@ - - - - - - the cookie for this cart - - - when the cart expires - - ID of the customer connected to this cart. - - - If not null: the address the invoice goes to. - - - If not null: the address the delivery goes to. - If null: assumed to be identical to invoiceaddress. - - customer comments during order process - - pointer to shipping type (none per default, programmatic default is in config) - -
- - - - - - - -
- - - - voucher value in cents -
- - - - - -
- - - - - - - -
- - - - - The tickets can be sold - The event is already over - The event is not yet over, but normal sale is no longer possible, you need the CreateOrder:LateSale privilege - There are not enough tickets for this event - There is an inherent mismatch in the ticket (eg. non-existent event or price category), it can't possibly be sold. - - optional property that can be used by the calling process to distinguish lines in the cart, the server must preserve it unchanged - - - - - - - The cartID as used by the web user interface, this property must not be interpreted while the server attempts to create an order from this cart, the server must preserve it unchanged - - Used in the Web UI only to provide access to price properties - Used in the Web UI only to provide access to event properties - - - this mapping is used by the web user interface to generate the cart object - - - - - - - - - - - - - - - - - - - - - The voucher can be sold - The value is not one of the allowed ones and you do not have the privilege to set an arbitrary one, or the value is negative or zero. - The price is negative, the price property is ignored if you do not have the privilege to chose a price that differs from the value - - optional property that can be used by the calling process to distinguish lines in the cart, the server must preserve it unchanged - - - - - optional property that is used by the web user interface to identify the cart that is handled - - - - - - - - - - - - - - - - The cart as used from the remote (non-web) system, this is a transaction object, it has no equivalent inside the database. - - - The cart has been processed successfully - There are problems with the cart, it cannot be processed - - optional ID for the cart itself, the calling process can use this to distinguish different carts, the server must preserve it between input and output - set by the server to reflect the processing state of the cart - - - - - - - - - - - - - - The cart as used by the web user interface, this maps into the cart tables. This class is never used by the - The cart ID of this session - When the cart will be automatically deleted - The customer of this cart - The address to deliver to (mandatory) - The address to send the invoice to if different from the delivery address (optional) - optional comments from the customer - optional shipping ID - - - The customer of this cart - The address to deliver to (mandatory) - The address to send the invoice to if different from the delivery address (optional) - - tickets inside this cart as seen in the DB - vouchers inside this cart as seen in the DB - shop items inside this cart as seen in the DB - - if shipping is set: the shipping type - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Called from the Web UI only: adds tickets to a specific event - - The cart to add into - The event to buy tickets for - Price category of that event - amount of tickets - - - - -
\ No newline at end of file diff --git a/wob/classes/basics.wolf b/wob/classes/basics.wolf new file mode 100644 index 0000000..76b2bfc --- /dev/null +++ b/wob/classes/basics.wolf @@ -0,0 +1,16 @@ + + + + + Transport class for flags and their descriptions. They are actually stored in the config table. + + + + + diff --git a/wob/classes/cart.wolf b/wob/classes/cart.wolf new file mode 100644 index 0000000..bd025e1 --- /dev/null +++ b/wob/classes/cart.wolf @@ -0,0 +1,153 @@ + + + + + Encapsulates tickets for a specific event in a specific price category as they are stored in the cart. One instance of CartTicket can contain several tickets. This class is used by the client to tell the server about new orders and by the Web UI to actually store its cart. + + The tickets can be sold + The event is already over + The event is not yet over, but normal sale is no longer possible, you need the CreateOrder:LateSale privilege + There are not enough tickets for this event + There is an inherent mismatch in the ticket (eg. non-existent event or price category), it can't possibly be sold. + + optional property that can be used by the calling process to distinguish lines in the cart, the server must preserve it unchanged + + + + + + + The cartID as used by the web user interface, this property must not be interpreted while the server attempts to create an order from this cart, the server must preserve it unchanged + + Used in the Web UI only to provide access to price properties + Used in the Web UI only to provide access to event properties + + + this mapping is used by the web user interface to generate the cart object + + + + + + + + + + + + + + + + + + + + Encapsulates vouchers as they are stored in the cart. Used by the client to tell the server about new orders. Used by the Web UI to actually store its cart. + + The voucher can be sold + The value is not one of the allowed ones and you do not have the privilege to set an arbitrary one, or the value is negative or zero. + The price is negative, the price property is ignored if you do not have the privilege to chose a price that differs from the value + + optional property that can be used by the calling process to distinguish lines in the cart, the server must preserve it unchanged + + + + + optional property that is used by the web user interface to identify the cart that is handled + + + + + + + + + + + + + + + + The cart as used from the remote (non-web) system, this is a transaction object, it has no equivalent inside the database. + + + The cart has been processed successfully + There are problems with the cart, it cannot be processed + + optional ID for the cart itself, the calling process can use this to distinguish different carts, the server must preserve it between input and output + set by the server to reflect the processing state of the cart + + + + + + + + + + + + + + The cart as used by the web user interface, this maps into the cart tables. This class is never used by the remote client. + The cart ID of this session + When the cart will be automatically deleted + The customer of this cart + The address to deliver to (mandatory) + The address to send the invoice to if different from the delivery address (optional) + optional comments from the customer + optional shipping ID + + + The customer of this cart + The address to deliver to (mandatory) + The address to send the invoice to if different from the delivery address (optional) + + tickets inside this cart as seen in the DB + vouchers inside this cart as seen in the DB + shop items inside this cart as seen in the DB + + if shipping is set: the shipping type + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/wob/classes/customer.wolf b/wob/classes/customer.wolf new file mode 100644 index 0000000..0474b9f --- /dev/null +++ b/wob/classes/customer.wolf @@ -0,0 +1,125 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + This class encapsulates the most basic information about a customer. + For more complex tasks the Customer class is used. + + + + + + + + + + + + \ No newline at end of file diff --git a/wob/classes/event.wolf b/wob/classes/event.wolf new file mode 100644 index 0000000..86cbde9 --- /dev/null +++ b/wob/classes/event.wolf @@ -0,0 +1,167 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + calculated property: contains the amount of tickets currently contained in this price, ignored if sent from client + calculated property: contains the amount of tickets currently contained in this price that are actually usable or reserved, ignored if sent from client + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/wob/classes/order.wolf b/wob/classes/order.wolf new file mode 100644 index 0000000..3343275 --- /dev/null +++ b/wob/classes/order.wolf @@ -0,0 +1,229 @@ + + + + + This class encapsulates shipping types. + + + + + + + + + + + + + + + + + + + + This class represents the data of a ticket as stored in the database. + + uniquely identifies the ticket, this ID is automatically generated when the ticket is created by the server + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + used for basic info about items + + + + + + + + + + + + + + + + + + + + + This class represents an order in its entirety, including any items sold in it. + + + + + + + + + + + + + + + + + + amount that has been paid for this order + amount that needs to be paid, negative if too much has been paid + total price for this order (including shipping and all items) + costs for shipping + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + This class represents the main information about an order as shown in lists. + + + + + + + + + + + + + amount that has been paid for this order + amount that needs to be paid, negative if too much has been paid + total price for this order (including shipping and all items) + costs for shipping + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Objects of this class are sent back as response to UseTicket + The ticket, if found. + + The ticket was ok and has been marked as Used + The ticket has not been found or the barcode belongs to a voucher + The ticket belongs to the wrong event. + The ticket has already been used. + The ticket is only reserved or has been given back, it cannot be used. + The order of this ticket has not been paid for yet. + The given event ID is invalid. + + The result of the UseTicket operation + The amount of usable/used tickets in this event + The amount of used tickets in the event (after the operation) + The amount of tickets for the event that have not been used yet. + The amount of tickets for the event that could be used, but are only reserved until now. + + \ No newline at end of file diff --git a/wob/classes/template.wolf b/wob/classes/template.wolf new file mode 100644 index 0000000..a74c5fd --- /dev/null +++ b/wob/classes/template.wolf @@ -0,0 +1,50 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/wob/classes/user.wolf b/wob/classes/user.wolf new file mode 100644 index 0000000..d2a0552 --- /dev/null +++ b/wob/classes/user.wolf @@ -0,0 +1,47 @@ + + + + + This class represents the main information about users: login name plus description. Passwords are never carried towards the client, more detailed info is contained in other classes. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/wob/customer.wolf b/wob/customer.wolf deleted file mode 100644 index b82fda5..0000000 --- a/wob/customer.wolf +++ /dev/null @@ -1,267 +0,0 @@ - - - - - - - - - - -
- - - - - - - - - - -
- - - - - - - - - - - - -
- - - - -
- - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - This class encapsulates the most basic information about a customer. - For more complex tasks the Customer class is used. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
\ No newline at end of file diff --git a/wob/db/audit.wolf b/wob/db/audit.wolf new file mode 100644 index 0000000..1a8443e --- /dev/null +++ b/wob/db/audit.wolf @@ -0,0 +1,18 @@ + + + + + + + + + + +
+
\ No newline at end of file diff --git a/wob/db/basics.wolf b/wob/db/basics.wolf new file mode 100644 index 0000000..0f4e0a2 --- /dev/null +++ b/wob/db/basics.wolf @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + +
+
diff --git a/wob/db/cart.wolf b/wob/db/cart.wolf new file mode 100644 index 0000000..ec12584 --- /dev/null +++ b/wob/db/cart.wolf @@ -0,0 +1,58 @@ + + + + + + the cookie for this cart + + + when the cart expires + + ID of the customer connected to this cart. + + + If not null: the address the invoice goes to. + + + If not null: the address the delivery goes to. + If null: assumed to be identical to invoiceaddress. + + customer comments during order process + + pointer to shipping type (none per default, programmatic default is in config) + +
+ + + + + + + +
+ + + + voucher value in cents +
+ + + + + +
+ + + + + + + +
+
\ No newline at end of file diff --git a/wob/db/customer.wolf b/wob/db/customer.wolf new file mode 100644 index 0000000..2440826 --- /dev/null +++ b/wob/db/customer.wolf @@ -0,0 +1,53 @@ + + + + + + + + + + +
+ + + + + + + + + + +
+ + + + + + + + + + + + +
+ + + + +
+ + + + + +
+
\ No newline at end of file diff --git a/wob/db/db.wolf b/wob/db/db.wolf new file mode 100644 index 0000000..9fe6e9e --- /dev/null +++ b/wob/db/db.wolf @@ -0,0 +1,22 @@ + + + + + + Time at which the change was made. + + + The user name of the user who made the change. + + + The transaction name under which the change was made. + + + + + \ No newline at end of file diff --git a/wob/db/event.wolf b/wob/db/event.wolf new file mode 100644 index 0000000..6efbe2e --- /dev/null +++ b/wob/db/event.wolf @@ -0,0 +1,86 @@ + + + + + Stores rooms that can be used for events. + Name of the room + Amount of people fitting into the room, zero means unlimited, this can be overridden per event. + A short description of the room to help users. Currently not used extensively. + filter flags: defines who can use this room for new events (ignored once it is attached to an event) +
+ + + stores seating arrangements + + the room this seating arrangement belongs to + display name of the seating arrangement + XML representation of the seating arrangements + filter flags: defines who can use this arrangement for new events (ignored once it is attached to an event) +
+ + + + + + + filter flags: defines who can use the category to define a new event (ignored once it is attached to an event) + internal tags: can be used by ticket printing templates or macros to execute certain actions + + + + + + + + + +
+ + + + + + + filter flags: defines who can create events with this artist (ignored once it is attached to an event) + internal tags: can be used by macros and printer routines to change behavior or output +
+ + + + + + + + + + + + + + + + + + filter: who can sell tickets for this event + taxes on this event in hundredth of a percent, this value is actually never used internall, but may be used by printing routines for calculations + internal tags: can be used by macros and printer routines to change behavior or output + + +
+ + + + + + + order in which prices are listet, lowest prio first + filter: who can sell tickets in this category for this event + internal tags: can be used by macros and printer routines to change behavior or output +
+
\ No newline at end of file diff --git a/wob/db/order.wolf b/wob/db/order.wolf new file mode 100644 index 0000000..364f75c --- /dev/null +++ b/wob/db/order.wolf @@ -0,0 +1,148 @@ + + + + + This table contains descriptions of shipping methods, the actual cost can be overridden in each order. + + default cost of this shipping type in cents + flags showing who can use this method + description for the shipping type +
+ + This table contains acceptable payment methods. (Under construction.) + + + + filter: who can log payments with this method + + +
+ + This table contains all orders and sales. + + + + ID of the customer connected to this order. + + + User name of the user who entered it into the system. "_web" for the online system. + + + If not null: the address the invoice goes to. + + + If not null: the address the delivery goes to. + If null: assumed to be identical to invoiceaddress. + + + + Status the order is in right now. + The order has been placed, but not acted upon yet. + The order has been sent out or handed to the customer. + Alias for Sent. Semantically: it is sold if it has been sent and paid. + The order has been cancelled, if anything has been paid, it must be paid back. + The order is just a reservation for a limited time, application logic must determine the timeout. + The order is closed out of the system - the payment status is ignored from now on. Currently not used. + + When the order was created + When the order was sent to the customer + comments made on web form (eg. "urgently needed for dads birthday") + + how much has been paid already (including used vouchers); + this is for comparison with the price fields in ticket and voucher tables + + shipping price; this is not re-imbursed for orders that have been sent and then cancelled + + pointer to shipping type (none per default, programmatic default is in config) + + + + + + + Returns the tickets for this order + Returns the vochers sold by this order + Returns additional sold items for this order +
+ + + a 8-32 char code (code39: case-insensitive letters+digits) for the ticket; + automatically generated + + + + + + + + + + The ticket is reserved for a customer, it blocks the seat, but is not to be paid yet. + + The ticket is ordered/sold and possibly paid for (payment is stored in its order). + + The ticket has been used. + + The ticket has been given back for some reason and needs to be re-imbursed (if paid already). + Alias for Cancelled + + Masking value: if this bit is set the ticket blocks a seat. + + Masking value: if this bit is set the ticket must be paid by the customer. + + Masking value: combines Block+Pay - the ticket can be used to watch a show or is already being used. + + Masking value: if this bit is set the ticket can still be cancelled. + + Masking value: if this bit is set the ticket can still be changed (price, event, etc.). Currently an alias for MaskReturnable. + + + + + +
+ + + + + + + + + + + + + +
+ + + A saleable product other than tickets or vouchers (eg. merchandizing). + This table represents stock. When a product is sold an entry is created in the table item. + + + + + + amount that remains in the inventory, or -1 if it is unlimited + + + usually the EAN code + filter: who can sell this product + +
+ + A sold item other than a ticket or voucher. + + + + + +
+
\ No newline at end of file diff --git a/wob/db/template.wolf b/wob/db/template.wolf new file mode 100644 index 0000000..2a1b5ee --- /dev/null +++ b/wob/db/template.wolf @@ -0,0 +1,18 @@ + + + + + + + + + + filter: who can use this template +
+
diff --git a/wob/db/user.wolf b/wob/db/user.wolf new file mode 100644 index 0000000..79b4284 --- /dev/null +++ b/wob/db/user.wolf @@ -0,0 +1,67 @@ + + + + + + + + + +
+ + + + + + + + +
+ + + + + + + + + + + + + + + + +
+ + + + + + +
+ + + + +
+ + + + +
+ + + + + + +
+
\ No newline at end of file diff --git a/wob/event.wolf b/wob/event.wolf deleted file mode 100644 index fe5ac04..0000000 --- a/wob/event.wolf +++ /dev/null @@ -1,377 +0,0 @@ - - - - - Stores rooms that can be used for events. - Name of the room - Amount of people fitting into the room, zero means unlimited, this can be overridden per event. - A short description of the room to help users. Currently not used extensively. - filter flags: defines who can use this room for new events (ignored once it is attached to an event) -
- - - stores seating arrangements - - the room this seating arrangement belongs to - display name of the seating arrangement - XML representation of the seating arrangements - filter flags: defines who can use this arrangement for new events (ignored once it is attached to an event) -
- - - - - - - filter flags: defines who can use the category to define a new event (ignored once it is attached to an event) - internal tags: can be used by ticket printing templates or macros to execute certain actions - - - - - - - - - -
- - - - - - - filter flags: defines who can create events with this artist (ignored once it is attached to an event) - internal tags: can be used by macros and printer routines to change behavior or output -
- - - - - - - - - - - - - - - - - - filter: who can sell tickets for this event - taxes on this event in hundredth of a percent, this value is actually never used internall, but may be used by printing routines for calculations - internal tags: can be used by macros and printer routines to change behavior or output - - -
- - - - - - - order in which prices are listet, lowest prio first - filter: who can sell tickets in this category for this event - internal tags: can be used by macros and printer routines to change behavior or output -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - properties as requested by user - - - - properties as actually stored - - - - - properties as requested by user - - - - properties as actually stored - - - - - - - - - - - - - - - - calculated property: contains the amount of tickets currently contained in this price, ignored if sent from client - calculated property: contains the amount of tickets currently contained in this price that are actually usable or reserved, ignored if sent from client - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - users with this privilege are allowed to set the iscancelled property and hence cancel or uncancel events - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Returns the event plus all orders concerning it - - - - - - - - - -
\ No newline at end of file diff --git a/wob/magicsmoke.wolf b/wob/magicsmoke.wolf index e14b455..abff883 100644 --- a/wob/magicsmoke.wolf +++ b/wob/magicsmoke.wolf @@ -12,33 +12,36 @@ - - - Time at which the change was made. - - - The user name of the user who made the change. - - - The transaction name under which the change was made. - - - - + - - + + + + + + + + + + - - - - - - - - + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/wob/order.wolf b/wob/order.wolf deleted file mode 100644 index 05ee7f2..0000000 --- a/wob/order.wolf +++ /dev/null @@ -1,702 +0,0 @@ - - - - - This table contains descriptions of shipping methods, the actual cost can be overridden in each order. - - default cost of this shipping type in cents - flags showing who can use this method - description for the shipping type -
- - This table contains acceptable payment methods. (Under construction.) - - - - filter: who can log payments with this method - - -
- - This table contains all orders and sales. - - - - ID of the customer connected to this order. - - - User name of the user who entered it into the system. "_web" for the online system. - - - If not null: the address the invoice goes to. - - - If not null: the address the delivery goes to. - If null: assumed to be identical to invoiceaddress. - - - - Status the order is in right now. - The order has been placed, but not acted upon yet. - The order has been sent out or handed to the customer. - Alias for Sent. Semantically: it is sold if it has been sent and paid. - The order has been cancelled, if anything has been paid, it must be paid back. - The order is just a reservation for a limited time, application logic must determine the timeout. - The order is closed out of the system - the payment status is ignored from now on. Currently not used. - - When the order was created - When the order was sent to the customer - comments made on web form (eg. "urgently needed for dads birthday") - - how much has been paid already (including used vouchers); - this is for comparison with the price fields in ticket and voucher tables - - shipping price; this is not re-imbursed for orders that have been sent and then cancelled - - pointer to shipping type (none per default, programmatic default is in config) - - - - - - - Returns the tickets for this order - Returns the vochers sold by this order - Returns additional sold items for this order -
- - - a 8-32 char code (code39: case-insensitive letters+digits) for the ticket; - automatically generated - - - - - - - - - - The ticket is reserved for a customer, it blocks the seat, but is not to be paid yet. - - The ticket is ordered/sold and possibly paid for (payment is stored in its order). - - The ticket has been used. - - The ticket has been given back for some reason and needs to be re-imbursed (if paid already). - Alias for Cancelled - - Masking value: if this bit is set the ticket blocks a seat. - - Masking value: if this bit is set the ticket must be paid by the customer. - - Masking value: combines Block+Pay - the ticket can be used to watch a show or is already being used. - - Masking value: if this bit is set the ticket can still be cancelled. - - Masking value: if this bit is set the ticket can still be changed (price, event, etc.). Currently an alias for MaskReturnable. - - - - - -
- - - - - - - - - - - - - -
- - - A saleable product other than tickets or vouchers (eg. merchandizing). - This table represents stock. When a product is sold an entry is created in the table item. - - - - - - amount that remains in the inventory, or -1 if it is unlimited - - - usually the EAN code - filter: who can sell this product - -
- - A sold item other than a ticket or voucher. - - - - - -
- - - - This class encapsulates shipping types. - - - - - - - - - - - - - - - - - - - - This class represents the data of a ticket as stored in the database. - - uniquely identifies the ticket, this ID is automatically generated when the ticket is created by the server - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - used for basic info about items - - - - - - - - - - - - - - - - - - - - - This class represents an order in its entirety, including any items sold in it. - - - - - - - - - - - - - - - - - - amount that has been paid for this order - amount that needs to be paid, negative if too much has been paid - total price for this order (including shipping and all items) - costs for shipping - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - This class represents the main information about an order as shown in lists. - - - - - - - - - - - - - amount that has been paid for this order - amount that needs to be paid, negative if too much has been paid - total price for this order (including shipping and all items) - costs for shipping - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - unix timestamp for the oldest order to be returned (compared with ordertime) - - - - - - - - - - - list of event ids to select - unix timestamp for the oldest order to be returned (compared with ordertime) - - - - - - - - - - - customer to select - unix timestamp for the oldest order to be returned (compared with ordertime) - - - - - - - - - - - - - - - - - - - CreateOrder creates orders that are queued to be executed immediately or sales that are marked executed and paid for immediately; they may contain tickets, vouchers, or shopping items - users with this privilege can create vouchers with arbitrary value - users with this privilege can create vouchers with a price (what the customer pays) different from its value (what the customer can buy with it) - users with this privilege can sell/order tickets until the event is over, otherwise a configurable limit applies - users with this privilege can sell tickets for past events - be careful to give this privilege only to very few special users, it is an invitation to mistakes! - users with this privilege may use this transaction to create orders - users with this privilege may use this transaction to create sales - - The cart contents - true if this is a sale, false if this is an order - - - - If successful: the created order - If unsuccessful: the cart with annotations - - - - - Reservations are orders that are not executed right away. They may only contain tickets that block some seats for a limited time. They cannot contain any shopping items or vouchers. - users with this right can make reservations right up to the start of the event, otherwise a configured limit applies - - The cart contents - - - - - If successful: the created order - If unsuccessful: the cart with annotations - - - - This transaction turns a reservation into a regular order - - - - - - - - - - Users with this privilege can also cancel orders that have already been shipped - Users with this privilege can cancel orders with tickets in the past (unless they have been used). - - - - - - - - - - - The order to be paid - amount offered, it must be positive - - - - fresh copy of the order - the amount actually taken, it is between 0 and at maximum the amount due for the order, it is never above the offered amount - - - - - - - - - - - - - - - - - Use a voucher to pay for an order. The system automatically deducts as much as is due for the order or as much as is left on the voucher - whichever is lower. If the voucher is not paid for the transaction will fail. The transaction will never transfer money from an order back to the voucher. - - ID of the order that is to be paid for - ID of the voucher that is to be used for payment - - - - The full order object after the transaction - The full voucher object after the transaction - The amount that was deducted - - - - - Deducts an amount from a voucher - this can be used for items that are not in the MagicSmoke shop repository. Fails if the voucher is not paid for yet. Will not transfer anything if the voucher does not contain enough money. - - ID of the voucher to be used - Amount to be deducted. Must be positive. - - - - The full voucher object after the transaction - The amount actually transferred. Can only be zero (not enough left on the voucher) or the same as above. - - - - - Empties a voucher, makes it invalid for any further use, but also keeps the price tag. - - ID of the voucher - - - - The voucher as it is left after emptying - - - - - - Changes the shipping option and/or price of an order - Users with this privilege can set arbitrary shipping prices, all others are limited to the default price of the shipping method. - - The order to be changed - the new shipping option or -1 if shipping is to be deleted - if the user has the privilege ChangePrice this field overrides the shipping costs, otherwise the default from the shipping table is used - - - - a fresh copy of the changed order - - - - - Users with this privilege can set a time for when the order was shipped, for all others the current time is used. - - The order to be marked - The time when it was shipped. If the user does not have the SetTime privilege or if this property is <=0 the current date/time is set instead. - - - - a fresh copy of the changed order - - - - - Add a comment to the end of the comments field. Most users will only have this right. - - the order to be commented upon - the comment - - - - a fresh copy of the changed order - - - - For privileged users: edit the complete comments field, overwrite it. - - the order to be commented upon - the comments - - - - a fresh copy of the changed order - - - - - Users with this privilege can return tickets for events in the past (if they have not been used yet). All others can only return tickets in the future. - - barcode of the ticket or voucher - - - - the order that owned the returned object, in case this is called from the order window - - - - - users with this privilege can change the price of used tickets - usually a ticket has to be changed before it is used - users with this privilege can change the price for tickets that are for past events - - - - - - - the order that ownes the changed ticket, in case this is called from the order window - - - - users with this privilege can change the price of used tickets - usually a ticket has to be changed before it is used - users with this privilege can change the price for tickets that are for past events - - - - - - - the order that ownes the changed ticket, in case this is called from the order window - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Objects of this class are sent back as response to UseTicket - The ticket, if found. - - The ticket was ok and has been marked as Used - The ticket has not been found or the barcode belongs to a voucher - The ticket belongs to the wrong event. - The ticket has already been used. - The ticket is only reserved or has been given back, it cannot be used. - The order of this ticket has not been paid for yet. - The given event ID is invalid. - - The result of the UseTicket operation - The amount of usable/used tickets in this event - The amount of used tickets in the event (after the operation) - The amount of tickets for the event that have not been used yet. - The amount of tickets for the event that could be used, but are only reserved until now. - - - - The ticket to be used - The event to use it on - - - - - - - - This is a convenience transaction: it returns all events that are likely to be chosen at an entrance barcode scanner; this includes all events starting at max. within the next 24 hours that and that have not ended yet - - - - - -
\ No newline at end of file diff --git a/wob/template.wolf b/wob/template.wolf deleted file mode 100644 index d367a67..0000000 --- a/wob/template.wolf +++ /dev/null @@ -1,101 +0,0 @@ - - - - - - - - - - filter: who can use this template -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
diff --git a/wob/transact/basics.wolf b/wob/transact/basics.wolf new file mode 100644 index 0000000..c8eae21 --- /dev/null +++ b/wob/transact/basics.wolf @@ -0,0 +1,49 @@ + + + + + This transaction allows to make a complete database backup. The backup file is replayed into the database via the admin.php interface. + + + + Contains the structured backup data. + + + + + This transaction returns basic language and formatting settings from the server - it must be used before the client displays any times or monetary values, even if it does not indend to translate any strings. + + The language that the client wants to use, use "C" for no translation. + The translation file format that the client supports: either "ts" for Qt translation XML source files, or "qm" for translated binary Qt translation files. + + + + The Qt translation file to translate string from the server. All strings are found in the virtual class "::php". + + + + + + + + + + + + + + + + + + + + + + diff --git a/wob/transact/cart.wolf b/wob/transact/cart.wolf new file mode 100644 index 0000000..3dee685 --- /dev/null +++ b/wob/transact/cart.wolf @@ -0,0 +1,21 @@ + + + + + Called from the Web UI only: adds tickets to a specific event + + The cart to add into + The event to buy tickets for + Price category of that event + amount of tickets + + + + + \ No newline at end of file diff --git a/wob/transact/customer.wolf b/wob/transact/customer.wolf new file mode 100644 index 0000000..28691aa --- /dev/null +++ b/wob/transact/customer.wolf @@ -0,0 +1,106 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/wob/transact/event.wolf b/wob/transact/event.wolf new file mode 100644 index 0000000..da6d42c --- /dev/null +++ b/wob/transact/event.wolf @@ -0,0 +1,142 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + properties as requested by user + + + + properties as actually stored + + + + + properties as requested by user + + + + properties as actually stored + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + users with this privilege are allowed to set the iscancelled property and hence cancel or uncancel events + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns the event plus all orders concerning it + + + + + + + + + + \ No newline at end of file diff --git a/wob/transact/order.wolf b/wob/transact/order.wolf new file mode 100644 index 0000000..888df3a --- /dev/null +++ b/wob/transact/order.wolf @@ -0,0 +1,342 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + unix timestamp for the oldest order to be returned (compared with ordertime) + + + + + + + + + + + list of event ids to select + unix timestamp for the oldest order to be returned (compared with ordertime) + + + + + + + + + + + customer to select + unix timestamp for the oldest order to be returned (compared with ordertime) + + + + + + + + + + + + + + + + + + + CreateOrder creates orders that are queued to be executed immediately or sales that are marked executed and paid for immediately; they may contain tickets, vouchers, or shopping items + users with this privilege can create vouchers with arbitrary value + users with this privilege can create vouchers with a price (what the customer pays) different from its value (what the customer can buy with it) + users with this privilege can sell/order tickets until the event is over, otherwise a configurable limit applies + users with this privilege can sell tickets for past events - be careful to give this privilege only to very few special users, it is an invitation to mistakes! + users with this privilege may use this transaction to create orders + users with this privilege may use this transaction to create sales + + The cart contents + true if this is a sale, false if this is an order + + + + If successful: the created order + If unsuccessful: the cart with annotations + + + + + Reservations are orders that are not executed right away. They may only contain tickets that block some seats for a limited time. They cannot contain any shopping items or vouchers. + users with this right can make reservations right up to the start of the event, otherwise a configured limit applies + + The cart contents + + + + + If successful: the created order + If unsuccessful: the cart with annotations + + + + This transaction turns a reservation into a regular order + + + + + + + + + + Users with this privilege can also cancel orders that have already been shipped + Users with this privilege can cancel orders with tickets in the past (unless they have been used). + + + + + + + + + + + The order to be paid + amount offered, it must be positive + + + + fresh copy of the order + the amount actually taken, it is between 0 and at maximum the amount due for the order, it is never above the offered amount + + + + + + + + + + + + + + + + + Use a voucher to pay for an order. The system automatically deducts as much as is due for the order or as much as is left on the voucher - whichever is lower. If the voucher is not paid for the transaction will fail. The transaction will never transfer money from an order back to the voucher. + + ID of the order that is to be paid for + ID of the voucher that is to be used for payment + + + + The full order object after the transaction + The full voucher object after the transaction + The amount that was deducted + + + + + Deducts an amount from a voucher - this can be used for items that are not in the MagicSmoke shop repository. Fails if the voucher is not paid for yet. Will not transfer anything if the voucher does not contain enough money. + + ID of the voucher to be used + Amount to be deducted. Must be positive. + + + + The full voucher object after the transaction + The amount actually transferred. Can only be zero (not enough left on the voucher) or the same as above. + + + + + Empties a voucher, makes it invalid for any further use, but also keeps the price tag. + + ID of the voucher + + + + The voucher as it is left after emptying + + + + + + Changes the shipping option and/or price of an order + Users with this privilege can set arbitrary shipping prices, all others are limited to the default price of the shipping method. + + The order to be changed + the new shipping option or -1 if shipping is to be deleted + if the user has the privilege ChangePrice this field overrides the shipping costs, otherwise the default from the shipping table is used + + + + a fresh copy of the changed order + + + + + Users with this privilege can set a time for when the order was shipped, for all others the current time is used. + + The order to be marked + The time when it was shipped. If the user does not have the SetTime privilege or if this property is <=0 the current date/time is set instead. + + + + a fresh copy of the changed order + + + + + Add a comment to the end of the comments field. Most users will only have this right. + + the order to be commented upon + the comment + + + + a fresh copy of the changed order + + + + For privileged users: edit the complete comments field, overwrite it. + + the order to be commented upon + the comments + + + + a fresh copy of the changed order + + + + + Users with this privilege can return tickets for events in the past (if they have not been used yet). All others can only return tickets in the future. + + barcode of the ticket or voucher + + + + the order that owned the returned object, in case this is called from the order window + + + + + users with this privilege can change the price of used tickets - usually a ticket has to be changed before it is used + users with this privilege can change the price for tickets that are for past events + + + + + + + the order that ownes the changed ticket, in case this is called from the order window + + + + users with this privilege can change the price of used tickets - usually a ticket has to be changed before it is used + users with this privilege can change the price for tickets that are for past events + + + + + + + the order that ownes the changed ticket, in case this is called from the order window + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The ticket to be used + The event to use it on + + + + + + + + This is a convenience transaction: it returns all events that are likely to be chosen at an entrance barcode scanner; this includes all events starting at max. within the next 24 hours that and that have not ended yet + + + + + + \ No newline at end of file diff --git a/wob/transact/template.wolf b/wob/transact/template.wolf new file mode 100644 index 0000000..04d83ff --- /dev/null +++ b/wob/transact/template.wolf @@ -0,0 +1,51 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/wob/transact/user.wolf b/wob/transact/user.wolf new file mode 100644 index 0000000..3507064 --- /dev/null +++ b/wob/transact/user.wolf @@ -0,0 +1,251 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ; + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/wob/user.wolf b/wob/user.wolf deleted file mode 100644 index 5f0971d..0000000 --- a/wob/user.wolf +++ /dev/null @@ -1,347 +0,0 @@ - - - - - - - - - -
- - - - - - - - -
- - - - - - - - - - - - - - - - -
- - - - - - -
- - - - -
- - - - -
- - - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - This class represents the main information about users: login name plus description. Passwords are never carried towards the client, more detailed info is contained in other classes. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
\ No newline at end of file -- 1.7.2.5