26 Jun 2022 10:39 AMUpdate 5.20.1 Alpha
New: BusinessCollection.Import
can now merge matched rows giving preference to either the imported row or existing row.
New: BusinessCollection.Import
can now import from multiple line fields to one. If the property is of type MultipleLineText then the system will look for a column in the import ending in Line1, Line2, etc. For example, PostalAddressLine1, PostalAddressLine2 and PostalAddressLine3 will be imported into PostalAddress.
New: BusinessCollection.Import
can specify the date format being imported as one of the following:
- Day Month Year
- Month Day Year
- Year Month Day
New: Common.ConvertToDateTime(DateTimeText, GenericDateFormat) has been added to enable manual sorting within the parent group.
New: Group.Position has been added to enable manual sorting within the parent group.
New: All Articles menu item under content management.
New: Many functions on business objects have been modified to return self.
New: All object properties including application and collection now can specify where the Repository is.
Fix: Error when adding a promotion.
Fix: After adding a promotion it returns to the list.
Fix: An object's item and collection properties filter and sort attributes are no longer visible and cannot be edited by the user.
Fix: Group.GetActiveMembershipCount
returns an error when Group.MaximumMemberships
set.
Fix: The actual error when making a payment is now displayed correctly.
Fix: CollectionClassDefintion.GenerteHTML
merge expressions.
18 Jun 2022 10:39 AMUpdate 5.20.0 Alpha
New: BusinessCollection.Import
will now except JSON and XML.
New: BusinessCollection.Import
new excepts two more parameters MatchItemBy
which except a unique column name and UpdateMatches
which specified whether to skip or update rows that match.
New: JSON and XML exports now include both the ID and FileName along with ToString in a sub-element for Item types. When an item's property is referenced (i.e. Country.Code) then the system will create a sub-element for it. When multiple are grouped together (i.e. Country,Country.Code,Country.Name) then they will be grouped in the same sub-elememt.
New: XML export format now uses the definition name as the element name and ID is a sub-element, not an attribute.
Fix: JSON export now has the correct file extension.
New: BusinessCollection.IsExistingItem
and BusinessCollection.Item
now except a dictionary of name value pairs. It will first look for FileName and if not available use ID.
New: BusinessCollection.FilterOnIDFileNameOrUniqueValues
now except a dictionary or array of dictionary of name value pairs. It will first look for FileName and if not available use ID.
New: Common.XMLToObject
converts xml to an array/dictionary the same format as Common.JSONToObject
.
Fix: JSON export now has the correct file extension.
Fix: Submit name in defintion inspector.
13 Jun 2022 11:13 AMUpdate 5.19.0 Alpha
New: ValueDefinitionAttribute.StoreSessionOnly
had been replaced by enumeration ValueDefinitionAttribute.Repository
which indicate where the value is stored:
Database
: stores in a column in the table.More Info
: stores the name and value in a JSON column named More Info.Request
: stores only for the current request.Session
: stores in the user's session state.Application
: stores in the application state.
New: JSON table column MoreInfo
replaces XML table column CustomProperties
to store the custom properties in a name value collection.
New: PaymentMethod.MoreInfo
and Email.MoreInfo
have been created to store the custom properties from the inherited classes. For example, SecurePayPaymentMethod.MerchantID
, OrderEmail.OrderStatus
, etc.
New: A table column has been created for each custom property and the following system properties:
GatewayPaymentMethod.ReconciliationRequired
GatewayPaymentMethod.VerificationRequiredWithStoredPaymentMethod
OrderItem.RegularPrice
ServiceBooking.AdditionalInformation
New: ClassDefinitionAttribute.BaseType
returns one of the following:
- BusinessApplication
- BusinessCollection
- BusinessCollectionItem
New: JavaScript function to create a tabs on the client-side. To use set class="tabs"
on the container element. The same element must have a child element of nav
, to hold the table of contents, and one or more elements with an id
for each content section. For example:
<div class="tabs">
<nav>
<ul>
<li><a href="#content-one"><span>Content Section One</span></a></li>
<li><a href="#content-two"><span>Content Section Two</span></a></li>
<li><a href="#content-three"><span>Content Section Three</span></a></li>
</ul>
</nav>
<div id="content-one">Content section one here...</div>
<div id="content-two">Content section two here...</div>
<div id="content-three">Content section three here...</div>
</div>
New: Definition inspector has been overhauled with a new look. You can also add a collection class or property directly via the inspector and it will add the table or column in the database if need be.
New: The dashboard shop now lists all products to easily add products to the cart without multiple roundtrips to the server to do so. A client-side search and filter by category have also been added to make it easy for the customer to find what they want fast.
New: ItemTypes.InheritsRank
is a calculated column on the table used for sorting.
New: CustomDefinitionNamesStartWith
now defaults to underscore if not provided.
New: ValueDefinitionAttribute.SQLDataType
returns the data type required to store the property value in an SQL table column. For example, HTML = nvarchar(max), ID = int, Money = decimal(19,3), etc.
Fix: Error in MoneyDefinitionAttribute.FormatValue
when round to value is whole number.
Fix: Error in EnumerationDefinitionAttribute.CompareValues
when enumeration name passed.
Fix: GetCollection
now throws an appropriate error if not found.
Fix: To output of ConvertSiteToXHTMLCompliant
.
Fix: To the attributes of the following properties:
AutomatedTask.URL
AutomatedTask.Duration
CourseResult.CompletedOn
Email.FromEmailAddress
Email.ReplyEmailAddress
Email.MergeCollection
Email.MergePropertyForRecipient
Email.MergeFilterExpression
Email.MergeSort
Order.DiscountTaxRate
Order.FreightTaxRate
OrderItem.TaxRate
Payment.ProcessingFeeTaxRate
PaymentMethod.Currency
PaymentMethod.ProcessingFeePercentage
Promotion.DiscountRate
Subscription.AutoRenewDue
Task.URLToRun
Task.PercentageComplete
TaxRate.Rate
User.PasswordLastUpdatedOn
3 May 2022 1:05 PMUpdate 5.18.1 Alpha
Fix: To pricing for selected or logged in user.
Fix: When loading the filter expressions, the filter is reset without unnecessary code.
Fix: Organisation.Region
was required in the database causing an error.
6 Apr 2022 9:10 AMUpdate 5.18.0 Alpha
New: counter.js
function that shows a number incrementing or decrementing to a target value when visible in view port. To use set class="counter"
on an element and the inner text is the target value. Also can use these optional attributes:
data-start
is the starting value. Defaults to 0.data-incremental-pause
is the number of milliseconds to pause between increments. Defaults to 50.data-increments
is the number of increments to perform. Default is 40.data-locale
is the locale to use when formatting the number. Default is en-AU.data-format-options
are the options for formatting the number. Default is{ style: 'decimal', minimumFractionDigits: 0, maximumFractionDigits: 0 }
.
Fix: Menu item not showing as current when URL matched the current URL.
Fix: Parent group property not set when adding a sub group from that parent.
Fix: Processing boolean parameters of a method.
Fix: Display values when filtering a collection with in
operator.
Fix: Dashboard membership summary and order summary clickable totals.
28 Mar 2022 2:41 PMUpdate 5.17.4 Alpha
Fix: Fix to checkout process returning an error due to invalid URL.
26 Mar 2022 12:53 PMUpdate 5.17.3 Alpha
Fix: Fix to freight calculations based on delivery zones.
Fix: Fix when an item in the object is not found the system will check for a redirect. For example, if /blog/my-blog-post
was renamed to /blog/my-renamed-blog-post
.
24 Mar 2022 7:48 AMUpdate 5.17.2 Alpha
Fix: Fix to function that determines if a member can renew automatically to a group.
14 Mar 2022 11:18 AMUpdate 5.17.1 Alpha
Fix: Postmaster email address ignored when checking for bounced emails.
12 Mar 2022 5:25 PMUpdate 5.17.0 Alpha
New: Membership.AutoRenew
now can be set to:
- No
- Maybe: Send me an invoice.
- Yes: Pay via my stored payment method.
New: When an email is generated, prior to sending to the recipients, the system scans the HTML for images that need to be resized, copies and resizes them in the email folder and updates the link.
New: Property data type PhoneNumber
will check if number is compliant. Allows leading +
, 3 to 15 numbers, opening bracket (
with matching closing bracket )
, space and hyphen -
separators. For example, +61 7 5535 8942
, (07) 5535-8942
, etc.
New: The following property was created on the website object to return organisations visible to the current user.
VisibleOrganisations
with filenameorganisations
New: The system only retrieves required table rows when necessary. This can be overridden if you know most rows are going to be accessed, like menu items, and the system will return all so there are less requests to the database. To do this set CollectionDefinition.AlwaysFillWithoutFilters
.
Fix: The search control, clear filter and items per page now include nofollow so search engines don't index.
Fix: When processing an order and notifications, invoice, etc. failed to send the process would stop. Now it continues with a note added to order.
Fix: Error retrieving display value in filter on collection when filtered on a variable like [Today]
.
Fix: Error in GenerateCaptchaImage
.
12 Mar 2022 9:00 AMUpdate 4.18.0
New: ServiceSchedule.AvailableQuantity
and ServiceTime.AvailableQuantity
when blank default to Service.AvailableQuantity
.
Fix: Attachments can now be viewed without going via the primary object if allowed.
6 Jan 2022 6:01 PMUpdate 5.16.2 Alpha
Fix: BusinessObject.GetHTMLBreadCrumbs
to show current object. Also, now will create links to the custom view by default if one exists.
Fix: Modified BusinessCollectionItem.ToString
for new items.
5 Jan 2022 2:49 PMUpdate 5.16.1 Alpha
Fix: Canonical path for pages including home page.
Fix: Canonical path for collections.
Fix: Filter menu for items with sub-items such as categories and sub-categories.
3 Jan 2022 4:01 PMUpdate 5.16.0 Alpha
New: ClassDefinitionAttribute.SubmitDisplayNameExpression
and MethodDefinitionAttribute.SubmitDisplayNameExpression
allow you to set the name of submit button. For example, login method submit button might say "Sign In".