New: One Time Passcode (OTP) has been added as a new method of Human Verification. If selected as the method, a [Request Code] button will be show and when clicked will request a passcode from the server to be sent to the user's email address.
Fix: All forms sent from admin email address with reply to the EmailAddress property.
Fix: Block cross-site form spam.
New: Upgrade to security and user access.
Fix: Found reference to code library based stylesheet in HTML editor which may cause problems with Google's algorithm for detecting malicious or unwanted software.
Fix: Due to Google's algorithm change on how it detects malicious or unwanted software, the library based scripts and stylesheets have been moved locally temporarily until the resolve the issue.
Fix: Import script connection string for Excel.
Fix: Upgraded TLS for PayPal integration.
Fix: List of available payment methods included those excluded with expression.
Fix: Error when inserting note when email sent.
Fix: Error when initially setting HTTPS Everywhere.
Update: Allow subscribing new user when email address exists on database only when no payment required.
Fix: Changed how the title meta tag is displayed on article views for categories, tags, etc.
Fix: The SendEmailForm
function did not send the attachments to subsequent recipients, only the first.
Fix: The generated email template now includes viewport and other necessary meta elements for formatting.
New: Application.ResizeImage
can now accept a resize method:
New: When parsing Parameters
in a URL where PageType=MethodView
any missing parameters at the end will be defaulted to the method's parameter default value.
New: In an email or email template, setting the Merge Object Type
to "Application", in a HTML merge expression, will merge these expressions to the application once, rather than for each email's merge object (generally a recipient record). This will speed up the output of campaigns and lessen the load on the server processor.
Fix: Group.SubscribeNewUser
will now subscribe an existing user if no payment required.
Fix: Error when an administrator completes an order.
Fix: Digital items not automatically sending when order completing.
Fix: Form textarea
elements were generated with a space when should be empty.
Fix: Error in LoadHTMLContentInXMLDocument
commented HTML included empty script or textarea elements.
Fix: Unnecessary updates after inserting notes on a user were causing concurrency errors.
Fix: Once an order was processed the promotion was not being cleared and was being applied to the next order.
Fix: Not redirecting to referrer URL after posting a form.
Fix: Concurrency error when installing updates.
New: ShowInTemplate
can be set in custom ASPX page directives.
New: Install Updates
can now redirect to a URL before installing an update.
Fix: When sending an email the list of email pages to select from is filtered to show published only.
Fix: Error when generating site map.
Fix: Article.Publish.On
only set when a moderator is logged in.
New: Modified Order.MakePayment
so it will accept negative amounts for recording refunds.
Fix: The set up for new websites will set the Licensee's record creation date/time to the time of set up.
New: The Default User Country
can now be set via Configure Components. You should only set this if you are only targetting and delivering to users from that country. Leaving this blank will allow the system to auto-detect where the user is located. However, make sure you are either requesting the user's geolocation via the browser they are using or you have the IP Ranges list imported to the database to detect location based on IP address. Without either of these the system will detect the user's browser culture settings which is not always accurate as most browsers come installed with en-US
by default and the user is not asked to confirm it.
New: Can now set how deep to allow search engines to index/follow article list (blog/shop/etc.) combinations of categories, tags, authors, etc. This can be set in Configure Components via property Article View Follow Depth
.
New: The title and description of article list (blog/shop/etc.) groups, categories, tags, etc. are now included as meta tags when listing via the category, tag, etc.
New: Can now set how deep to allow search engines to index/follow directory list combinations of industries, regions, etc. This can be set in Configure Components via property Directory View Follow Depth
.
New: The title and description of directory list groups, industries, regions, etc. are now included as meta tags when listing via the industry, region, etc.
Fix: ServiceBooking.SendConfirmationLetter
and ServiceBooking.SendConfirmationLetter
would allow execute but throw an error when the user's email status was not active.
Fix: ServiceTimes.SpecifyUsers
would throw an error when there was no user (due to guest checkout) or the user's email status was not active.
Fix: Scheduling and running from the correct email collection.
Fix: Default value for Order.PayByOtherMethod.ReceivedOn
now includes time.
Fix: Order.Complete
in some circumstances would not complete due to session timeout or reset.
Fix: TradingItem.GetDiscountPricesFormatted
would only display prices applicable for selected user if one existed.
Fix: Error when listing article comments.
Fix: GenerateHTMLGroupsListForArticleView
and GenerateHTMLGroupsListForDirectoryView
would include all when parent supplied even though there was no subgroup.
Fix: Forms generated from merge fields via Definition.GenerateHTMLForm
had their lists reloaded.
Fix: When outputing a page to a static file the script elements were not included.
Fix: Modified XHTML replace function to better handle empty textarea
and script
element.
Fix: Payment.ReceivedOn
was not storing the time part.
Fix: RSS feed for the shop did not include shipping weight which is needed for import to Google Merchant Center.
Fix: Enhance Workspace
object to standalone from the BusinessApplication
object.
New: Billing and Delivery properties now available for export from orders.
Fix: Error when displaying delivery details in specific circumstances.
Fix: Directory titles were not displaying correctly when a parent directory specified.
Fix: Removed GUID output field from RSS feed as unnecessary and caused problems with import to Google Merchant Center.
Fix: Applied efficiencies to invoice and purchase order output.
Fix: Modified the discount pricing format to make it easier to customise.
New: RSS Feed for products which can be imported to Google's Merchant Centre or Facebook's Marketing API.
New: Product.GoogleCategory
can be set to the ID of one of Google's product categories. This value will be included in the product feed.
New: Toggler classes added to Message elements returned by the server. Add the base script to enable when clicked the message is closed.
Fix: When sending form details in an email to administrator using an invalid email address entered by the user.
Fix: When an error is returned from a submitted form (on the template), the controls returned empty.
New: Use Order.HasBookings
to determine if any of the items are for service bookings.
New: Style classes Past
, Today
and Future
added to calendar view cells.
New: Can now set the default sort order for article and directory views via Configure Components.
New: Can now create a custom registration form and set the URL in Configure Components. For example, register.aspx
.
Fix: Register.SubscribeToEmailMarketing
and CartItems.RequestBillingDetails.SubscribeToEmailMarketing
now default to No.
Fix: Changed wording relating to an order confirmation / invoice to use Application.InvoiceDisplayName
.
Fix: Duplicate Template Scripts and Stylesheets are removed when web page generated.
Fix: If a table column is readonly (due to being computed), it is not added in the update or insert scripts.
Fix: ServiceTimes.SpecifyUsers
business names were returning error stating they were required when not.
Fix: Recreate an index on tax rates making it unique.
Fix: Price on order item storing incorrectly when trading item prices stored in database without tax.
Fix: Timeout for automated tasks increased.
Fix: By default file properties on an item (for example, photograph on user) will not be copied when url is relative.
Fix: Captcha verification code was not a required field on the client side which meant a form could be submitted and sent to the server but would fail validation.
New: Can now set the default sort order for each of the article and directory views.
New: Added function Application.ApplyPromotion
which can be used on the cart before checking out.
Fix: Reworded "Already Registered" error message.
Fix: Updated user import scripts to ignore records with and invalid email address.
Fix: Various problems with HTML editor code source view.
Fix: When receiving an error sending an email campaign the following batches were not sent. System now schedules them.
Fix: Large images in the light box were exceeding screen width and height.
Fix: When selectable values used with mulitple line text property/parameter.
Fix: Allow the trading entity to delete their own order if not payment made.
Fix: Supplies Ordered On is now not editable by default.
Fix: In some circumstances when sending emails relative paths to images, etc. were not updated to the full path including website address and hence could not be shown.
New: Application.Register
now asks for the new user's Password, Confirm Password plus Remember Me.
Fix: Application.Log
only logging when in debug mode.
New: Function Application.HasDeliverableCartItems
.
Fix: Invoice no longer shows payment details when there are no payment methods.
Fix: When an administrator completed an order it would ask a 2nd time to complete.
Fix: Could not set default values for ServiceSchedule.Ocurrences
.
Fix: When specifying attendee details via guest checkout the 1st attendee now defaults to "1st Attendee".
Update: Updated the Users.xls
script to add memberships to existing users that are not a member in any of the groups specified in the import.
Fix: Order.Complete
is now visible to the trading entity if the order has been paid and is incomplete.
New:Function Wrap(Start, Concatenator, Finish)
has been made available for VBScript.
Fix: Error applying trading item discounts when orders were over the maximum quantity specified for that discount.
Fix: When deleting an order and items the related booking was not updated.
New: Function ConvertDateToAge(Date, AsAt)
is made available for VBScript.
Update: Google Tag Manager generated code updated.
Fix: HTML editor not styling correctly.
Fix: Views using inheritance would get an error due to inherited tables not fully loaded.
New: Properties UpdateReleasePhase
and VersionReleasePhase
on the Application
. UpdateReleasePhase
specifies the release phase allowed when installing updates. VersionReleasePhase
is the release phase of the currently installed version. These properties replace IsBetaTestSite
and IsBetaVersion
. The release phases are:
New: Property DebugMode
on the Application
. When true will output debug logs and reference the original (or non-minified) scripts and stylesheets.
Fix: Mispelt property name CustomDefinitionNamesStartWith
.
New: Properties Async
and Defer
on TemplateScript
. When these properties are set to True an attribute of the same name is added to the script element when output to HTML.
New: Property Minify
on TemplateScript
and TemplateStylesheet
. When this property is set to True the systems checks for a file with the same name including ".min" after the file name. If the minified file does not exist or is older than the original file, a new minified file will be created. The minified file will be reference in the output HTML.
New: Base and backend scripts and stylesheets have been bundled, minified and referenced offsite from a common code library.
New: css3-mediaqueries.js
now only loads for IE9 and lower.
New: All scripts have been set to defer with the exception of css3-mediaqueries.js
and html5shiv.js
which only load on IE9 and lower.
New: JQuery core is now referenced from a CDN.
New: A location (i.e. France) can receive deliveries from multiple pickup outlets. To do this, include the location in multiple delivery zones (i.e. Europe from United Kingdom or Europe from Hong Kong). When the user selects a freight rate, the pickup outlet is determined by the delivery zone of that freight rate.
New: You can now see the order related to a service booking where applicable.
Fix: Orders processed with a payment term that does not require payment immediately still asked for payment.
New: Group.SelectSubscription
and ServiceTimes.BookNow
have 2 new hidden parameters ClearCartItems
and ProceedToCheckout
which both default to True, however can be modified via configuration settings.
New: BusinessCollectionItem.RawDataValue([Property])
get or sets the raw data in a table.
Fix: Purchase order delivery details now display pickup outlet address when not dropship.
Fix: When retrieving the pickup outlets for a delivery zone due to no state specified when region was.
Fix: Incorrect column name PaymentTerms.ActionOrderAfter
changed to PaymentTerms.ActionOrderWhen
.
Fix: Error when requesting a BusinessObject.PropertyValue
for an Item's Item. For example, OrderItem.PropertyValue("TradingItem.Supplier")
.
New: JavaScript toggler
function attributes data-off-selector
and data-on-selector
now can accept this
and parent
values.
Fix: Error in Application.ProcessPayment
.
New: When specifying users for a booking it now defaults to 2nd Attendee, 3rd Attendee, etc. for the first and last names, while the business name is set to the business name of the user booking.
Fix: Order completion was not executing when paid in full.
Fix: Error when returning from offsite payment method.
New: Toggler in base.js
now toggles off and on classes for separate selectors with data-off-selector
and data-on-selector
attributes.
New: Function Common.DateAddWorkDays(StartDate As DateTime, Days As Integer)
.
Fix: Error when displaying order status message.
New: Property PaymentTerm.ActionOrderWhen
determines when the order can be actioned for fulfillment (i.e. product dispatched, service booked or group subscribed). It can be one of the following:
Confirmed
DepositReceived
BalanceReceived
New: Property Order.Status
can be one of the following:
Confirmed
Actioned
Completed
New: Parameter Order.Complete.ActionThisOrder
specifies if the fulfillment process starts or not. It's default value is determined by Order.PaymentTerms.ActionOrderWhen
It is editable only by an administrator.
New: Can now set OtherPaymentMethod.Instructions
to nothing. If this property is nothing then the payment method will not be displayed in the payment instructions section of the invoice or order status message.
Fix: Updated configuration settings TradingItem.DefaultViewPropertyNames
and TradingItems.DefaultListColumnNames
.
Fix: Removed Video to Flash conversion.
Fix: Updated setup.aspx with new default servers.
New: Trading Item Discount Prices
have replace Special Price
, Bulk Price
and Member Price 1
to Member Price 5
. This now allows unlimited discount pricing on an item. For example, you may have a price for 10 items or more and another for 20 or more. You can also set a limit to the number of items at a particular discount. For example, gold class members may be allowed up to 2 for free.
New: Related Trading Items
can be used to list all the related products, etc. when viewing a products details.
New: Adding auto-height
to the class of a textarea will allow the height to auto-resize when data entered.
New: When setting a MultipleLineText
property's EditorLines
attribute to zero, the output html textarea will set auto-height
to the class.
Fix: If a LinkingForeignCollection
's LinkingProperty
has a SelectableValuesExpression
it is now executed and used when generating the control.
Fix: Error when opening Configure Components
.
New: New configurations setting CalendarFirstDayOfFinancialYear
.
New: Added TimePeriod.FinancialYear
which is useful for financial reporting purposes.
New: When a pickup outlet is logged in, they can now dispatch orders.
New: ServiceTime.Reschedule
to reschedule a time and send the rescheduled letter to users with reservations when applicable.
New: ServiceTime.Cancel
now asks if the user would like to send the cancellation letters to users with reservations.
New: New base.js function to set default values from a drop-down to adjacent input controls. For example, a drop down may have default date ranges like This Month, Last Month, This Financial Year, etc. and when selected will populate the 2 date input controls next to it with the appropriate values.
Fix: The configuration setting [Collection].ItemTypeName
was being ignored for custom collection definitions.
Fix: Could not insert a new row on a table with only an auto-generated ID column.
New: Now allows bookings on non-published services.
Fix: Calendar allowed past service times to be booked.
New: Payment options on a trading item and recurring payments have been replaced by payment terms on the order. This will allow the order to be paid over time. For example, in "12 monthly payment", "25% deposit with balance due 7 days prior to date required on" or "30 days".
New: The "Other Payment Method" (i.e. cash, cheque, direct deposit) is only selectable by the administrator. However, it will show up in the invoice footer with instructions on how to pay. Once a payment has been received via this method, the administrator can add the payment using this method for reconciliation purposes.
New: Layout changes to confirm order including payment terms.
New: Layout changes to invoice including payments paid/due and payment methods.
New: Layout changes to purchase order.
New: Layout changes to order complete message including payments paid/due and payment methods.
Fix: TotalPaymentReceived
, TotalPaymentUnconfirmed
, PaymentProcessingFee
and PaymentProcessingFeeTaxIncluded
are now displayed in the currency of the order, not the currency of payments.
Fix: Geolocation lookup adjusted to timeout after 3 seconds.
Fix: When a geolocation lookup fails when requesting UserCountry
or GetSelectablePickupOutletsNearDeliveryLocation
.
Fix: Method parameter values passed in a URL no longer conflicts with reserved names like PageType, Method, Collection, etc.
Fix: Updated the ODBC Excel Driver in Import Scripts.
Fix: Orders without deliverable items are now taxed on rates based on the licensee pickup location.
New: Calendar view now includes a month and year selector.
New: PayDock payment gateway now integrated for credit card payments.
Fix: When there are no payment methods, the invoice does not include a link to pay.
Fix: When paying for a service booking at a later date it will now default to the trading entity for the first attendee.
Fix: Errors returned from ZipMoney now displayed correctly.
Fix: Error on ServiceTime.GetAvailableQuantity
.
Fix: When redirecting to HTTPS from root URL, Default.aspx was included in the redirection.
New: CreditCardViaSecurePayPaymentMethod
now supports TLS 1.2.
New: Updated base.js so that attribute data-selector
will accept this
and parent
.
Fix: Updated base.css so to include the pointer cursor on <summary>
elements.
Fix: Billing details defaulting to last order billing details only when required.
Fix: Configuration settings for booking system updated.
New: Query parameters FilterExpression
and SortExpression
are availabe to filter and sort collections on expressions.
New: Function [BusinessCollection].ToHTML(HTMLToMerge, TopCount, Randomise, Page)
is available to merge HTML to a collection. The system looks for an HTML element with an ID of ItemTemplate
and will duplicate and merge the element with each item in the collection. The system also looks for another element with ID NoItemTemplate
and removes it if there are items otherwise leaves it and removes ItemTemplate
if there are no items.
New: Function DateToTodayFormat(DateToFormat, AsAt, AlwaysIncludeYear)
is available to format a date. For example, Today, Tomorrow, Yesterday, Mon 21 Aug, Tue 21 Aug 2018. As per example, it will display Today if same day as in AsAt
and leave the year of if same year as in AsAt
.
Fix: When calculating freight the total item price and weight are now based on deliverable items only.
Fix: User.ReferralBy
and User.ReferralWebsiteAddress
default values can now be changed via configuration settings.
New: You can now set a configuration setting named CustomDefintionNamesStartWith
. If a definition name for a business object, property or method starts with the value specified, the system will remove it from the display name generated. For example, a value of "BV" and a collection named BVGrades would have a display name of Grades.
New: Completed
option added property Status
on Service Time
. The Complete
method was also added, which will change the status but also mark Used
to true on all Service Bookings
where not set.
New: Service Times
can be added directly and the Finish Time
defaults to the Start Time
plus the Duration
specified in the Service
.
Fix: To base.js: Submit button in a control wrapped in a label would not work.
Fix: References to theinternetplatform.com and developer default URL now use HTTPS.
Fix: Google Map references now use HTTPS.
Fix: Reworded description and instructions for Configure Website - Domains.
Fix: Files robots.txt and sitemap.xml were not returning file not found when not available.
New: Can now view the Retrieval Status when requesting the Geolocation or Address with Google Geocode API.
Fix: Due to previous security enhancements the calendar could not be viewed.
Fix: Updated import script for Users.xls.
New: Service Times are now saved to the database and related to Service Bookings. A Service Time has a Status of Open, Closed or Cancelled and can be set by the administrator. When the Calendar
or List Times
is opened, any scheduled times matching the criteria are loaded and saved to the database. The schedules are removed for matching the criteria.
New: New property Maximum Time In Advance
on the Service. This is the amount of time in advance of the current time that service times will be generated from the service schedules.
New: New property Cancellation Time Required
on the Service. This is the amount of time prior to the start time that user cannot cancel a reservation.
New: New property Logged In User Credits
on the Service. If Allow Order Before Booking
then this will show the number of credits the logged in user has purchased and not used for that service.
New: When Cancel Times
on the Service is selected it now prompts to delete all times or only those without RSVPs.
Fix: When administrator logged in and guest checkout is enabled it goes to Select User.
Fix: Changes to who can view certain business object.
Fix: Updated Export for Xero to allow for guests.
New: eWay payment gateway now forces the use of TLS1.2 Security Protocol.
New: When an order is processed using guest checked out, the Trading Entity now displays Guest instead of nothing.
Fix: Order First and Last Names changed to not required.
Fix: ConvertTextToDuration
for negative durations.
Fix: Allow first and last names to be blank on the order billing details.
Fix: Remove old scheduling service status from administration menu.
New: Guest Checkout: when a user is checking out they do not need to create an account. If they would like to create an account while checking out they simply input a password. Guest checkout can be enabled/disabled by setting Allow Guest Checkout
in Configure Components.
New: Billing Details: when a user is checking out the system can now ask for billing details.
New: ZipMoney payment method has been integrated to take payments via buy now / pay later payment gateways: zippay.com.au and zipmoney.com.au.
New: When invoice shows a balance due the payment instructions includes a link to pay.
New: Notes property and Insert Note function on Orders.
New: Payment processing errors are recorded in notes on the order.
Fix: Redirect URLs comparison methods now ignores case.
Fix: Blocked several business objects from being viewed by the public.
Fix: Error on load when attempting to determine user culture code when the user's country can not be determined.
New: Enabled Fraud Guard on SecurePay payment gateway transactions.
Fix: Error when displaying invoice for an order to be picked up.
Fix: Error in TransactionException when no transaction number.
Fix: Start next automated transaction throwing error when finalising.
Fix: Modified the links to filters of article and directory views to tell search engines not to follow. This also helps when producing the sitemap for search engine submission.
Fix: Updated Search Engine Site Map Ping Service URLs.
Fix: Updated Blog Directory Ping Service URLs.
New: You can now select Google reCAPTCHA for the Human Verification Method. You can do this via Configure Form Validation. You will need to sign up for Google reCAPTCHA to get a site key and secret key which can be set in Configure Form Validation. Once configured, forms generated by the system will automatically add Google reCAPTCHA if needed. To manually add to a form add a merge field containing expression: Application.GenerateHTMLHumanVerificationControl(0)
.
New: Shared function created called Web.WebRequest(URL, Method, AcceptType, ContentType, Content, OtherHeaders, Timeout)
which minimized code throughout the system.
Fix: Process would crash without error when submitting a Trading Item. This was due to the relation to Auctions and the RoundToValue
on the definition for Auction.OpeningPrice
was set to 0.01. Although there is nothing wrong with this the run-time did not like it. A temporary work around was put in place using RoundToValueExpression
with same value as a string.
New: Changed the email notification for automated tasks to include the success of the run and a link to the result if results recorded.
Fix: When sending an email campaign an invalid email addresses would halt execution of the batch.
Fix: When Views were reloaded the existing view of the same name was getting an error when unloading.
New: Upgraded web.config targetFramework
to 4.6.1.
New: Added the ability to change the targetFramework
in the web.config when Application.InstallUpdates
is run.
New: New compilation using Visual Studio 2017.
New: Alipay payment gateway integration.
New: New Human Verification Method called Honey Pot.
New: A new URL parameter EndSessionOnComplete
will abandon the session once the request is complete. It has been implemented when running automated tasks.
New: New property added Application.ActiveSessionCount
which can be used to view how many sessions are currently active.
Fix: Will now only show payment methods for the currency the user has selected.
Fix: Removed unused Windows Service functions.
Fix: A method definition created from configuration file had an incorrect qualified name for the returns value.
Fix: A new base.js function to allow you to click on the 2nd and subsequent inputs in a control wrapped with a label.
New: A new Base.js function that detects a click on an element and toggles a class in another element. To acheive this do the following to the clickable element:
toggler
.data-selector
which contains a CSS selector pointing to the element(s) you want to toggle.data-toggle-class
which contains a CSS class you want to toggle (add if not there/remove if is).<span class="button toggler" data-selector="#subscription-form" data-toggle-class="show">Subscribe Now</span>
<span class="button toggler" data-selector="#subscription-form" data-toggle-class="show">Close</span>
New: A new method called Captch Equation for the Human Verification Code will display an equation in the Catcha image for the user to solve.
New: You can now specify multiple language sites. This should be used when duplicating sites for different cultures (language and/or location). It tells the search engines that the content in the other sites is duplicated for another culture. This way the search engines will not penalise you for having duplicate content. Also, visitors will be redirected to the appropriate site based on their default culture (language and current location). To do this follow these steps for every site:
Error: When filtering a collection with a boolean property.
New: New version of the HTML editor.
New: New base.css styles.
Fix: Error when loading the definition inpsector for a custom business collection item after a reset.
Fix: Error when Application.GetView
that inherits another business collection is reloaded.
New: Kosova added to Countries with a temporary ISO code of XK and currency EUR.
New: If an article file name is specified ending with a forward slash (for example, http://yourdomain.com/contact/
), it will be redirected without the ending forward slash (for example, http://yourdomain.com/contact
).
Fix: Services functions List Times
and Open As ICalendar
were not returning all times in some circumstances.
New: Now records the date/time a service booking is booked.
Fix: Open As ICalendar now has correct start and finish times based on the time zone.
Fix: Error in install updates for websites using cart items.
New: Can now set the base time zone for the system.
Fix: When re-emailing a campaign when Not Sent To Recipient For
was other than Ever.
Fix: Could not copy objects with a filename such as articles, categories, tags, industries and groups.
Fix: Digital items were not automatically sending once a client paid in full.
Fix: Problem with already scheduled automated tasks not running due to invalid parameters attribute.
New: You can now to send email campaigns to recipients again after a specified time period. For example, 1 year might be specified for an annual renewal notice.
New: Email campaigns are now sent in batches with an interval between each batch so that the server is not overloaded when sending large campaigns.
New: New scheduler created which runs on the web application which is intended to take over from the current Windows Service. For the scheduler to work, set the Application Pool Start Mode option to AlwaysRunning. If you cannot access this property set the Idle Timeout to zero or a high number, for example, 9800 minutes (7 days). If the application pool expires the application is ended and the cached schedule is removed and never called. Note: Keeping Session timeout to say 20 minutes will not affect this.
New: System-wide errors which have not been caught are now logged.
New: The system log is now output to CSV which can be loaded via spreadsheet and sorted, etc.
New: The payment method for Credit Card via MIGS Offsite's secure hash method was updated to SHA-256.
Fix: Searchable drop down was not aligning up with bottom of input box.
New: Application.GetView
has an additional parameter Inherits
which will allow you to create a view that inherits another Business Collection.
New: You can now specify an ID as the default value of an Item Definition.
Fix: Error when specify postcodes to regions in delivery zones.
Fix: Error placing order for Service Bookings.
New: Now adds meta tags (first
, prev
, next
and last
) for pagination in Directory and Article Views.
Fix: The ServiceBooking.SendConfirmationLetter
would only send when the administrator made the booking for the user.
New: Read-only property DeliveryNote.TrackingURL
generated from Order.DeliveryMethod.TrackingURL
and the TrackingCode
.
Fix: The SetDispatched
function will not ask for TrackingCode
if the Order.DeliveryMethod.TrackingURL
is not set.
Fix: The Available Quantity check returned zero for trading items with options even though the availability was set.
New: Added property FinishTime
to ServiceBooking
and defaulted to StartTime
plus Service.Duration
.
New: Added function OpenAsICalendar
to ServiceBooking
.
New: The following functions will not be executed in the process if AllowExecute
returns False. Also, a new parameter BCCMe
on each function will BCC the administrator if set to True.
DeliveryNote.SendNotification
Membership.SendApprovalNotification
Order.SendInvoice
Order.SendPurchaseOrder
Order.SendThankyouLetter
OrderItem.SendDigitalItem
Payment.SendReceipt
ServiceBooking.SendCancellationLetter
ServiceBooking.SendConfirmationLetter
User.SendActivationRequest
User.SendApprovalNotification
Fix: Delivery Country is now required by default in Request Order Details.
New: Function [Set Delivery Method Or Pickup Outlet]
will enable the client to recalculate the freight based on their selection, prior to checking out.
Fix: Was not finding the correct pickup outlet in some circumstances.
New: You can now create URL redirects for missing files under userfiles folder.
New: You can now create URL redirects for missing files via the content management system.
New: The system will ask if you would like to create a URL redirect when renaming a file such as articles and categories.
Fix: The user rates are now reset after Request Order Details in case the user changes the delivery country.
Fix: On first time setting the user rates with tax inclusive set to database the incorrect tax would be added to the user freight price.
New: Now the system sets the user freight and tax rates only when accessed instead of on load of the website. This allows for faster loading.
New: When the delivery destination is set the pick-up outlets are filtered to show only those in the country or within 1000km and also sorted by nearest to furthest.
Fix: Getting user geo location failed.
New: System configuration option called Show Tax Breakdown On Invoice. Setting Yes will show how much tax on each item. No will only show the total tax.
New: Added tax included on line items and totals on confirm order.
New: System configuration option for Tax Inclusive as follows:
New: Added tax included on line items and totals on tax invoice.
New: Removed freight per product as a system option.
Fix: When search engine robots loaded the website, setting the default user rates would return an error because their are no browser culture settings.
Fix: Rounded currency data to 2 decimal places.
Fix: Correction to country records with special characters.
Fix: HTTPS Everywhere was not working on short-cut URLs.
New: You can now set up Outlets that are either stores (where products are picked up and/or delivered from) or warehouses (where products are only delivered from). You can assign or create a user record as an outlet. By default the licensee user record is set as an outlet (warehouse). If you have one or more stores the visitor will be prompted to select a pickup location (or not) when checking out.
New: You can now set up Delivery Zones (from one pickup region to one or more destination regions). Freight Rates and Tax Rates can be set for each zone. The system will try to detect the region the visitor is at and will set the default freight rates and tax rates based on that region. From the shopping cart, before they check out, the client will be able to change the default region by selecting a country from a drop-down (and state, postcode if necessary to determine the region) which will update the default freight and tax rates – essentially giving them the correct price before proceeding to check out.
New: Freight Calculation Method is no longer system wide. It can be set on each delivery method.
New: Tracking URL can be set on each delivery method.
New: Freight based on weight is now calculated on kilograms instead of grams.
New: HTTPS Everywhere is now available. You must have a current SSL Certificate before setting this option. It can be set under System Configuration - Configure Website.
New: POP3 and SMTP ports now editable. They can be set under System Configuration - Configure Email.
New: The person booking services is added to the property ServiceBooking.User
for each attendee they book.
New: Executing a business object method by submitting a form using method="GET"
can now accept the parameter names in the URL. For example, a method with 2 parameters, Country and Postcode, would accept any of the following:
&Parameters=Australia,4220
&Country=Australia&Postcode=4220
&Country_Control=Australia&Postcode_Control=4220
Fix: Updated the HTML output from Application.DisplayVideo
for YouTube videos.
Fix: Author select field on articles now sorted by last and first name.
Fix: Sending of the delivery notification will now also be sent to administration.
Fix: Error with Google Tag Manager container snippet.
New: Add property Google Tag Manager Container ID
to Templates
. When a container ID is supplied, the Google Tag Manager container snippet is added into the HTML output when that template is used for displaying a page.
Fix: Updated the Google Analytics tracking snippet to latest version.
Fix: Updated the YouTube output code generated from Application.DisplayVideo
to use iframes.
New: A trading item (product, service or subscription) can have a digital item associated to it and when ordered, it is emailed to the trading entity. To do this you must create a page with output type of email and a file name in the format of digital-item-[trading item file name]
. For example, for a product named widget
the email page would be named digital-item-widget
.
New: Can now use mulitple attribute for file inputs in the Email Form. For example, <input type="file" multiple="multiple"/>
.
New: In freight rates when leaving Base Price or Price Per Unit blank will set to Order Freight Price to blank which will display POA - price on application.
New: Card holders name in SecurePay is not a required field but passed anyway.
Fix: Implemented additional response status checks when processing credit cards with SecurePay.
Fix: Implemented tighter security functionality when processing credit cards with SecurePay.
New: Expressions in the Title of a menu item by having the first letter an equals followed by the expression. For example, ="My Cart (" & CartItemsQuantity & ")"
.
New: A function CartItemsQuantity
added to the Application business object. Useful to display in menus as above.
Fix: An error occurred when an order placed but there were no payment methods set up.
Fix: Pages with a dot in the file name would include the dot in the body class attribute. Dots are now replaced with dashes. For example, <body class="cartitems.requestorderdetails">
now becomes <body class="cartitems-requestorderdetails">
.
Fix: Client side script was not validating required checkboxes.
Fix: System could not determine if JavaScript enabled on client browser when the site first loaded via a dynamic file name. For example, www.yourdomain.com/contact-us.
New: Use the function GenerateHTMLSelectMenu([Menu])
on the Application business object to generate a drop down for the menu object of ID passed.
Fix: The window overlay would appear on form submit when form invalid.
Fix: The form validator was not validating some controls correctly.
New: Adding the class disable-window-on-submit
to a form will, when submitted, cover the window with a semi-transparent overlay making it look as if disabled. In the center of the overlay is a spinning arrow indicating to the user the form is being processed.
Fix: View Port setting incorrect on some domains.
New: Added class ellipse
(in base.css) which turns an element into an ellipse shape.
Fix: Added missing styles for new Pick List control in base.css.
Fix: Some styling errors in base.css.
New: JQuery functions added in base.js as follows:
stick-left
, stick-right
, stick-top
and/or stick-bottom
classes to the sticky element.scroll-arrows
class to a scrollable element.toggle
class to a nav element.New: Styles added in base.css as follows:
scrollable-x
sets the element with horizontal scroll bars.scrollable-y
sets the element with vertical scroll bars.hide-scrollbar
hides the scroll bar while still being able to scroll.Fix: Some styling errors in base.css.
Fix: The licensee website address in the email template was adding the full path unnecessarily.
Fix: Credit Card Via SecurePay requires a Purchase Order No. This was not happening via Process Payment on the application.
Fix: When the links in the email template was generated via a merge field it did not include the full path.
New: Added "Delivery Notes" to the administrator's menu.
Fix: When the logo in the email template was generated via a merge field it did not include the full path.
New: "Open As iCalendar" has been added (to the Service Time object) which will allow you to add the event/class/etc to your calendar such as Outlook.
Fix: When a form was submitted with checkboxes selected and an error the form was not repopulating with the submitted data.
Fix: List articles were listing articles not accessible to current user.
Fix: When no groups are included in an email campaign the unsubscribe did not work. Now it will change the email status on the user to blocked.
Fix: Only the first click by a user on a link in an email is recorded.
New: Can now set a business object property to be calculated. On the property definition set the attribute Calculated to true. When a value is requested for a Calculated property the DefaultValueExpression is evaluated and returned.
New: Whenever an email is sent to a user, excluding those from an email campaign, a note is added to the user record stating that an email was sent with the subject.
Fix: Definition Inspector updated with new formatting and styles.
Fix: Properties of type GroupOfValues were getting an error when no property names supplied.
Fix: Was not formatting properties of type GroupOfValues when the Format attribute supplied.
Fix: When generating content, merging expressions is now performed prior to form controls being populated with current object data. This is necessary if the expression generates form controls.
Fix: When booking a service it now displays the start time(s) in the order item additional information.
Fix: GenerateHTMLControl on checkboxes did not generate a label when required. Also, removed required attribute which forces it to be checked.
Fix: Unknown User Initial Access Point when set was getting a type mismatch when loading from configuration settings.
New: The configuration setting for "Unknown User Try Login First" has been changed to "Unknown User Initial Access Point" with 3 options.
New: You can now dispatch part of an order.
Fix: Changed the category list to display the parent category name instead of "All" when used.
Fix: Added an option for label positioning before controls to the function output of GenerateHTMLForm and GenerateHTMLControl.
Fix: Added open graph meta information for the URL in the blog post and product templates.
Fix: More changes to function output of GenerateHTMLForm and GenerateHTMLControl.
Fix: Changes to function output of GenerateHTMLForm and GenerateHTMLControl.
Fix: Changed the default order complete message to only list outstanding payments.
Fix: Replacing form inputs and selects in a custom form failed in some circumstances.
Fix: Issues to Cancel Times and Cancel Reservations for service schedules.
New: Added Open Graph Protocol metadata to website-blog-post-default and website-product-default templates.
New: Added property to template called Metadata. Use this property for custom metadata. You may use merge fields and the resulting metadata is added to the <head>
tag. The auto-generated meta tags based on existing files (added in Update 3.5.23) have now been removed. You can manually add these if required to this new property.
Fix: Removed auto paragraph feature from the HTML editor.
Fix: Added currency code and corrected order info for credit card via MIGS offsite payment method.
Fix: Corrected spelling of Occurrence fields in Schedule tables.
Fix: When booking for a service the order was not complete and the user did not get to specify users.
New: Can now specify a plural display name on the ItemDefinition using CollectionDisplayName and CollectionDisplayNameExpression. If none is specified it uses a built in function called Pluralize.
Fix: When booking for a service not in advance it asks twice for number of attendees.
New: Meta tags for adding web app to device home screens. If the file with the same name is found in the root then the corresponding meta tag is added.
<link rel="manifest" href="manifest.json" />
- for Google Android devices. May become W3C standard. See here for more info.<meta name="msapplication-config" content="msapplication-config.xml" />
- for Microsoft Windows devices. See here for more info.<link rel="apple-touch-icon" sizes="76x76" href="icon-76x76.png" />
- for Apple devices.<link rel="apple-touch-icon" sizes="120x120" href="icon-120x120.png" />
- for Apple devices.<link rel="apple-touch-icon" sizes="152x152" href="icon-152x152.png" />
- for Apple devices.<link rel="apple-touch-icon" sizes="180x180" href="icon-180x180.png" />
- for Apple devices.New: Meta tag for application name: <meta name="application-name" content="My Web Application" />
New: Meta tag for associating an image to an article. Uses open graph protocol developed by Facebook. <meta property="og:image" content="http://www.yoursite.com/myimage.jpg" />
New: Meta tag added to block safari from detecting and formatting what it thinks are phone numbers. If you want phone numbers clickable from your phone then they need to be formatted as follows: <a href="tel:+5555555555">+5 (55) 555 5555</a>
Fix: Updated stylesheets to modify system folders to lower case because robots.txt blocks none lower case access to those folders.
New: Can now pay for a service in advance of booking a time.
Fix: Replace a missing file from the file manager.
New: Function on business objects "ToHTML(HTMLToMerge)" which will merge HTML passed as parameter to the object to output HTML.
New: Function on business collections "ToHTMLArray(ItemHTMLToMerge, TopCount, Randomise, Page)" which will merge HTML passed as parameter to the items in the collect to output an array of HTML.
Fix: Searching collections for text did not filter the results.
New: Can now list all visible articles by using the attribute "PageType=ContentView" or the shortcut path "content/" in your URL. This is useful for listing the results when searching the content of the website.
New: Function GenerateHTMLSearchControlForArticleView which you can use to add a search box to the content, blog, exhibit, guestbook and shop views to search for articles.
New: Function GenerateHTMLSearchControlForDirectoryView which you can use to add a search box to the directory view to search for users.
Update: Removed unused / unnecessary spare properties from Users business object.
New: Added the contact details of the trading entity to the purchase order for the supplier.
Fix: Error when adding a product to the cart due to data being reset prior to checking availability.
Fix: Error when adding a new item with one or more selected from multi select property.
Fix: Supplier purchase orders not emailed to correct email address.
Fix: Supplier purchase orders did not include delivery details of customer when drop shipped.
Fix: Optimised memory and processor usage when reading data from the database.
Fix: Added default value to Product Dropship.
Fix: Error adding auction credit to cart.
Fix: Rewording of properties used for filtering membership emails to make more sense.
Fix: Error when trying to edit a user record due to no auction credit (product).
Fix: Error when trying to set a property to a negative duration. For example, -7 days.
Fix: Error occurred when trying to view an invoice with no payment.
Fix: Additional error checks implemented when processing a SecurePay credit card transaction.
New: When an order is placed by a customer, purchase orders are sent to suppliers of products ordered. If all the products for a supplier are marked for dropshipping then the delivery details of the customer are included on the purchase order for the supplier to ship directly to them. This is only true if all the products purchased for a supplier are marked for dropshipping otherwise the delivery details of the licensee are included on the purchase order.
New: The membership approval notification will now be sent to new members of groups which have automatic approval and where a subscription payment is required.
New: The membership approval notification will now be sent to new members of groups which have automatic approval and where a subscription payment is required.
New: Can now submit your bid prices before logging in and buying auction credits if needed.
New: Can now submit a comment or rating on an article before logging in.
Fix: The human verification code was not showing for application and collection methods when necessary (no one logged in).
Fix: When an email opened via "View in Browser" the links such as "Unsubscribe Me" no longer worked.
New: When sending an email campaign you can now merge to memberships with specific filters on status, expiry, etc. and the recipient will be the member.
New: When sending an email campaign you can now set up a custom merge to any collection item with a property related to a user. For example, merge to payments and the recipient will be the trading entity. This could be used to send out thank you for your payment letters.
New: When sending an email campaign the "View in Browser" has been added to the email output by default.
New: Can now merge the email subject using expressions in the subject. The expressions must be enclosed by ASP code block tags "<%=" and "%>". However, the expression must still be VB Script for now. Here are some examples:
Fix: Unnecessary reloading of HTML for each email sent has been eliminated which will speed up the output and decrease memory and CPU usage.
Fix: When resending an email campaign in the same session it is possible that the recipients will receive it again.
Fix: Modified system folders names in URLs throughout to be in lower case and modified robots.txt to only accept lowercase.
Fix: Robots.txt was blocking scripts and stylesheets from being loaded by the search engines when indexing.
New: Added property Style Classes to Menu Item. This allows you to add CSS classes for styling.
Fix: Found unnecessary recalling of function which would have slowed the application and taken valuable processing power.
Fix: User import scripts received an error.
Fix: Selecting a promotion based on an order when editing a product would cause that promotion to be based on selected items instead.
Update: Rearrange the invoice totals and renamed Total Outstanding Payment to Balance.
Update: Form field attribute names now inline with HTML5 standards.
Update: HTML emails now are sent with an alternative plain text version which is extracted from the HTML.
Fix: Expired members were still getting trading item member pricing due to error in function testing if they were a current member.
Update: Streamlined the "Send Now" action on the Email business object.
Fix: Orders for non-deliverables were including the default freight in the total.
New: Added property "Password Last Updated On" to the User object which is set when the password is changed. Anyone with auto-login set prior to that date will be required to login manually.
Fix: An order with part payment was not correctly processing the balance payment when paid.
Fix: Create Note on User inserted html error into Notes when special character like ampersand was used in the author name.
Fix: Error when setting the Base Culture Code.
New: Added "Set Base Culture" to System Configuration menu.
New: Added display property "Total Payment Outstanding" to the order and invoice.
Fix: The "Pay" action on an order is now available if there is an outstanding payment required.
Fix: The current menu item style was not being set for the home page in some circumstances.
New: Upgraded the HTML editor to the latest version.
New: Property "Is Deliverable" has been added to the product. If only non-deliverable items have been added to the cart then no delivery information is requested during check out.
New: Properties "Dispatched On" and "Delivery Tracking Code" have been added to the order. "Set Dispatched" action on the order will ask for these properties and send the trading entity a notification. A page with Output Type of Email and file name "order.dispatchednotification" is required for the notification to be sent.
New: "Set Received" action on the payment will now send the trading entity a receipt. A page with Output Type of Email and file name "payment.receipt" is required for the receipt to be sent.
New: Can now "Send Email" from an order or payment which will merge with the order or payment and send to the trading entity.
Fix: Change made in previous update to lists that were too wide a horizontal scrollbar appears is reversed due to vertical scrollbar appearing when hover menus appear below bottom of list.
Change: When lists are too wide when viewed on a narrow screen it is now scrollable vertically.
New: Credit card payments can now be processed through SecurePay payment gateway.
Fix: When editing a form on screen 600px or less now has labels above input.
Change: Added a few entries to robots.txt due to entries being case-sensitive.
Change: Properties Required On and Additional Information have been added to the invoice if they have a value.
Change: Start time displayed in booking confirmation screens and emails now hides the time if 12:00am.
Fix: Position property on a ranked object was not defaulting to the next available position.
Fix: Search text was trying to search properties that did not have a column in the database table.
Change: Changed robots.txt to stop the indexing of certain folders.
Change: When the system detects a file not found in certain folders it is immediately returned with the error.
Change: Calendar View now loads Service Times by default.
Fix: Error in Definition Inspector due to upgrade of .Net Framework.
Fix: Error in Service Time object display format.
Change: Start Finish property for a Service Time object now use the upper and lower accuracy values when formatted.
Fix: Error in Users.xls import script.
New: Options on trading items can now include once off fees.
Fix: When a task is assigned to a user, the project will also be assigned to that user, if the project doesn't have a user assigned to it.
Fix: The generic email that is sent when a project or task is assigned, now links directly to the project or task.
Fix: Turned off autocomplete on captcha input fields. This will only affect captcha input fields on auto-generated forms.
Fix: New projects and tasks menu items were only visible to developers.
Fix: Properties or parameters with a drop down list and blank item with No Value Text when selected and submitted returned an error.
Fix: Error occurred after login to access a restricted page.
Fix: Base properties and methods were not available for custom business collections and their items.
New: Import script for exported Outlook (version 2010 or higher) CSV.
Fix: Unable to download CSV file.
New: Task Management System has been added. This system is fully integrated with other systems and requires a license for use.
Fix: Updated the Chilkat library to the latest version 32bit version.
Fix: Updated setup.aspx to redirect to home page instead of Configure Website.
Fix: Updated the Chilkat library to the latest version. The Chilkat library is a third party tool used to sending emails and checking for bounced emails.
New: Any menu items with the same URL as the current page will now have a class="current". This will allow you to style the current menu differently.
Fix: The members price on a trading item is now only used for current members.
New: The class attribute has been added to the HTML tag with a value of either "js" (javascript) or "no-js" (no javascript). This enables alternate styles to be used when javascript is turned off.
New: Class "zoom" added to base.css styles. An element with this class will zoom or enlarge by 150% when hovered over. Using this class with classes "x2", "x3" or "x4" will increase the zoom by that factor.
Fix: When the freight calculation is based on dollars spent it is now calculated after discounts.