SOLO Server release notes

This file was last updated on November 16, 2018.

This document contains release notes for SoftwareKey SOLO Server. Information in this document is more current than that in the installed manual or online help.

Important!

If you are upgrading SOLO Server, please refer to the Important Upgrade Notes section prior to performing the upgrade. This section is a supplement to the release notes containing information which must be considered when upgrading SOLO, including configuration changes, merging of changes into user customizable files, and other additional steps which may be required outside of running the installer. Failure to review these notes prior to upgrading may result in SOLO not functioning properly after the upgrade is complete.

Release Notes

This section contains details on the incremental changes included with each new release of SOLO Server.
SOLO Server 1.18.1.7
Released November 16, 2018

-Administrative Interface Enhancements/Fixes

  • The manual has been updated with additional information regarding using bundles along with payment plans.
  • The manual topic on priority codes has been updated to clarify that one time use priority codes are enabled on Instant SOLO Shared/Custom URL and must be enabled on Instant SOLO Dedicated URL or standalone instances.
  • Fix for an issue with customer search results where the company name would always appear as UNREGISTERED if the customer was marked unregistered, even if the company name was populated.
  • The license details page has been reworked to render the customer address details the same way they are rendered on the customer details page.
  • The author email notification page used by Softwarekey internally to send email notifications to authors has been updated to display the last login date for the selected author account below the author drop down.
  • Instant SOLO Server now includes a link to our system status page in the Help menu.
  • The billing details page for Instant SOLO Server Shared URL now includes additional information in the administrative email and note that is logged when there is an error processing the credit card.
  • The monthly reports now include further details on API transaction usage.

-Web Services Enhancements

  • Usage logging support has been added for the following web service endpoints:
    • getlicenseinfo1.asp
    • stringpost.asp
    • countpost.asp
    • updatecheck.asp
    • XmlLicenseService.InfoCheck
    • XmlLicenseService.UpdateCheck
    • All endpoints requiring authentication through AuthorID/UserID/UserPassword.
    • All activation endpoints, with separate logging for live activations, test activations, and rejected activations.
  • Authenticated web service methods requiring authentication via AuthorID/UserID/Password can now be accessed using a system generated API User ID and Password. To facilitate this, a new Integration User setting has been added to the user account page. When this new setting is set, the system will automatically generate an API User ID and API User Password, which can then be passed to the authenticated web methods UserID and UserPassword parameters for authentication. In addition, accounts marked as an Integration User cannot log in to the administrative interface.
  • The XmlNetworkFloatingService web service now restricts access by domain for Instant SOLO Shared and Custom URL instances.
  • Additional logging has been implemented for error 5000 for cloud controlled network floating licensing.
  • The XmlLicenseService.InfoCheck web method now supports authentication using a serial number and ProductID.

-Other Enhancements/Fixes

  • A new Remove Cart Item option has been added to the upsell configuration. When this option is enabled, the existing cart item will be removed when adding the upsell to the cart.
  • The OfferSettings column has been dropped from the CartOptions table, as it has been relocated to the PrivacyOptions table.
  • Fix for an issue where a license with an expiration date of 12/31/9999 would cause an overflow exception on the customer license portal license history page.
  • The downloads and renewals and upgrades listings in the customer license portal now list the latest licenses first, and the recurring payments page now lists by next payment date.
  • The Order Complete Standard Cart mailing now supports a new [varInvoiceNo] search/replace parameter for the Invoice No.
  • Product option level one time use priority codes now support bundled items.

SOLO Server 1.18.1.6
Released October 18, 2018

-Enhancements/Fixes

  • Updated several assemblies that were not digitally signed with signed versions.

SOLO Server 1.18.1.5
Released October 16, 2018

-Privacy Enhancements

  • The Privacy & GDPR Settings page now has several new options as follows:
    • Privacy & Terms HTML - HTML markup regarding privacy policy and/or terms and conditions. When specified, this will be displayed on the customer registration pages for new customers or customers that have not yet agreed alongside a checkbox which must be checked in order for the customer to continue, and acceptance will be recorded on the customer record once the customer proceeds.
    • Enable Offer Checkboxes - Whether to enable the Offer Product and Offer Partners checkboxes on the customer registration pages. This has been moved from the Cart Options page.
    • Offers Default Checked - Whether to check the Offer Product and Offer Partners checkboxes for new customers on the customer registration pages. This has been move from the Cart Options page.
    • Offer Product HTML -HTML markup for the label for the Offer Product checkbox displayed on customer registration pages. When specified, this will override the default label of "Notify me of product updates related to my purchase".
    • Offer Partners HTML - HTML markup for the label for the Offer Partners checkbox displayed on customer registration pages. When specified, this will override the default label of "Notify me of new products and other special offers".
  • On the customer details page, when applicable, the date and time the customer accepted the Privacy & Terms is now displayed, and the Notify Product and Notify Partners settings now display additional detail on when and who last opted in or out.
  • The error handling logic in SOLO Server no longer automatically sends email notifications to soloerrors@softwarekey.com for self hosted installations of SOLO Server.

-Customer License Portal Enhancements

  • Several improvements to the license history page:
    • The "Status" column has been relabeled "Status/Expiration", and the license Download Until date is now displayed if applicable, colored in red if past expiration. In addition, the status is now colored green if OK and red if not to match the rendering on the license details page.
    • The licensee details are now displayed in the Product column below the product name to free up horizontal space.
    • The "Date Issued" column has been relabeled "Issued" to free up horizontal space.
  • Several improvements to the customer details page:
    • The page has been broken up into separate sections for Customer Information, Choose a Password (for new customers), and Select Email Notifications similar to the shopping cart registration page.
    • For new customers or customers who have not yet accepted, support has been added to display and require acceptance of the Privacy and Terms HTML.
    • Support has been added to display the Offer Product and Offer Partners HTML content in place of the default content for the email notification checkbox labels.
  • The license details page now supports new search/replace fields for the user defined fields in the product and option level Order Confirm and Customer License Portal HTML.

-Shopping Cart/Order Processing Enhancements/Fixes

  • On the customer registration page, for new customers or customers who have not yet accepted, support has been added to display and require acceptance of the Privacy and Terms HTML.
  • On the customer registration page, support has been added to display the Offer Product and Offer Partners HTML content in place of the default content for the email notification checkbox labels.
  • The logic for adding a cart item has been updated to prevent circular upsells from occurring.
  • Fix for an issue where the cart description on the PayPal site would appear with encoding after some changes made by PayPal.
  • Fix for an issue with the Network Merchants integration where decline and error results weren't being properly handled.

-Other Enhancements/Fixes

  • Numerous updates to the manual, including a significant rework of the documentation on custom mailings, daily processes, product option rules, and reports.
  • Search/replace parameters for the license user defined fields are now available for the product and option level Order Confirm HTML and Customer License Portal HTML fields.
  • The XmlLicenseService.UpdateActivationFields web method now supports a new SerialNumberText parameter, which when provided will overwrite the value on the license Serial Number Text field.
  • The component for sending emails now offers enhanced error logging functionality.
  • Licensing for Cloud Controlled Network Floating Licensing is now enforced for self-hosted instances of SOLO. In addition, for Instant SOLO, the logic has been reworked to support caching the results for increased efficiency.
  • Fix for an issue with the monthly summary report not properly handling monthly fees when running in all authors mode.

SOLO Server 1.18.1.3
Released June 26, 2018

-New Privacy Options and GDPR Module

  • A new Privacy and GDPR Options page is now available for users with manage account permission, and can be reached from a new Configure / Privacy & GDPR Options menu entry.
  • A new GDPR Module is now available on the new Privacy & GDPR Options page for all Instant SOLO Server customers (both shared, custom, and dedicated URL) to assist customers in achieving GDPR compliance.
    • Upon first reaching the Privacy & GDPR Options page, you will be prompted to review and agree to the Data Processing Addendum, which is an extension to the standard Terms of Service outlining the obligations between SoftwareKey and your organization regarding the GDPR.
    • Upon reviewing and accepting the Data Processing Addendum, SoftwareKey will be notified and will contact the customer within 2 business days regarding enabling the module.
    • Once the module is enabled, the new Privacy & GDPR Options page will expose additional fields related to GDPR compliance, which must then be filled out for our records.
  • For customers hosting SOLO Server themselves on their own infrastructure, no Data Processing Addendum is needed, and the Privacy & GDPR Options are always available to be populated for your records.

-Other Enhancements/Fixes

  • A link to our blog post on the Multi-Tenant Catalog Mode feature has been added to the manual topic on that feature.
  • Fix for a broken link to the Protection PLUS 5 manual in the topic on adding a product and option.
  • Users with master user permission have a new Export all Customer Data option on the customer details page, which will generate a spreadsheet containing all data records relating to the customer.
  • A new stored procedure which will clear all potentially personally identifying information for a given customer has been added to the database. This allows manually handling GDPR right to be forgotten requests.
  • The hosted account options page used internally by SoftwareKey now displays the status of the GDPR module.

SOLO Server 1.18.1.2
Released May 23, 2018

-Custom License Parameters Enhancements/Fixes

  • Several enhancements to the custom parameter configuration page:
    • For the boolean data type, the Required field has been relabeled as Always Include, with a tooltip describing that this controls whether a false value will be omitted or included in the xml blob.
    • For the boolean data type, the Default Value has been relabeled Default Checked, and the tooltip updated accordingly.
    • Several other improvements to the the remaining tooltips.
  • Fix for a rendering issue when viewing boolean type custom parameters.
  • Fixed an issue where an integer or float custom parameter default value of 0 would render as "None Configured" when viewing a custom parameter.
  • Fix for an issue where the default sample xml when adding a new custom parameter did not include a value.
  • Fix for a rendering issue with customer parameters on the add multiple licenses confirmation page where numeric values which are omitted are rendered as NaN.

-Other Enhancements/Fixes

  • Several updates to the monthly summary report used internally by SoftwareKey for billing.
  • Customization hooks have been added to the SOLO_CreateSynchronizedProduct, SOLO_SynchronizeProduct and SOLO_GetChildAuthorCatalog stored procedures.
  • Corrected an issue with the customization hook in the SOLO_GetAuthorSession stored procedure.
  • A new HTTP Module is now included with SOLO Server which when enabled and used in conjunction with IIS Advanced/Custom logging allows logging only masked IP addresses in the IIS logs to reduce GDPR exposure.
  • The FastSpring integration now supports sending a customer welcome mailing to new customers when processing an Order Completed event.
  • Several tweaks to the rendering on the multi-tenant catalog mode synchronization pages.
  • The export licenses report can now be run against a single customer. For users with report access permission, a new Export Licenses button will appear above the license listing on the customer details page.

SOLO Server 1.18.1.1
Released April 12, 2018

-Custom License Parameters Enhancements/Fixes

  • Global custom parameter sets which are available to all author accounts on a given SOLO Server instance are now supported.
  • Custom parameters now allow specifying that a parameter value is required when adding or editing licenses.
  • Custom parameters now allow specifying a default value which is pre-populated when adding new licenses.
  • Custom license mailings now support search/replaces for custom license parameters.
  • On the custom parameter set listing page, the number of product options associated with each parameter set is now displayed, and you can no longer attempt to delete parameter sets associated with one or more options.
  • The Tag Name and Required fields are now listed in the custom parameter listings.
  • The products export now includes the custom parameter set name for the option.
  • The help icon/text on the configuration pages has been resized.
  • Fix for an issue where deleting the last custom parameter in a custom parameter set would result in a 404 error after the deletion.

-Administrative Interface Enhancements/Fixes

  • When running in Multi-Tenant Catalog Mode, users on child author accounts can now only grant permissions which they have been granted.
  • The product catalog synchronization page for Multi-Tenant Catalog Mode now includes the product status in the listing.
  • Fixes to a few typos in the new manual topic on Multi-Tenant Catalog Mode.
  • The session timeout security setting is now limited to a maximum of four digits.
  • Fixed an issue where a script error would occur on the product option configuration page if cloud controlled network floating licensing was not enabled.
  • The PDF version of the manual is now installed and a new link to this version has been added to the menu.
  • Fix for an issue where server side validation could incorrectly fail when editing a product option.
  • The options to send the customer welcome mailing when adding or viewing a customer are now no longer displayed if the welcome mailing is marked disabled.
  • When adding a new administrative user account, a welcome mailing can now be selected to send the new user an email regarding their new account.
  • When adding or editing an administrative user account, the Force Password Change and User Cannot Change Password options can no longer both be enabled at the same time.

-Other Enhancements/Fixes

  • For new customers, the state/province and postal code fields on the shopping cart and customer license portal registration pages now default to not required until a country is selected, at which point they will toggle to required based on the selected country, eliminating confusion for customers whose country does not require state/province and/or postal code.
  • A new Require Phone option is now available in both the cart options and customer license portal options. These new settings control whether the customer is required to enter a phone number on the shopping cart and customer license portal registration pages.
  • The installer now deletes the SOLO_CreateModifyCustomer and SOLO_RegisterCustomer stored procedures, which are no longer in use and generate errors when upgrading an existing SOLO Server instance.
  • A customization hook has been added to the SOLO_Trig_InsertLicense trigger.
  • A customization hook has been added to the SOLO_AddAuthor stored procedure.

SOLO Server 1.18.1.0
Released March 8, 2018

-New Custom License Parameters Feature

  • A new Custom License Parameters feature is now available, allowing you to define unlimited custom licensing parameters which are then included in the Protection PLUS 5 SDK license file. The parameters can be used for any number of uses such as:
    • Limiting which features are available in an application.
    • Controlling time limited features in an application.
    • Limiting a feature by a counter, for example, limiting the number of concurrent application instances can be run.
  • On the product listing page, users with appropriate permissions will now see a new Configure Custom Parameter Sets option in the Actions menu.
  • Clicking this option will take the user to a new page which will allow configuring custom parameter sets.
  • Each custom parameter set can have any number of custom parameters, which are each defined by four main properties as follows:
    • Display Name: The friendly name for the parameter. This is used for labeling in the administrative interface and customer license portal.
    • Tag Name: The name for the tag in the XML blob that will be injected into the Protection PLUS 5 license file.
    • Data Type: Boolean, Date, Float, Integer, String. Used to determine how to validate and display the parameter.
    • Display In Customer License Portal: Whether to display the parameter on the customer license portal license details page.
  • Once custom parameter sets are defined, they can then be associated with a product option through a new Custom Parameter Set option on the product option configuration page.
  • For options associated with a custom parameter set, when adding, viewing, or editing a license, a new custom parameters section will be displayed.
    • When viewing a license, the current values of all custom parameters on the license will be shown.
    • When adding or editing a license, a dynamically generated form will be displayed allowing configuration of each custom parameter. When saving, the values will be serialized to XML and stored in the License Custom Data field on the license, which is included in the Protection PLUS 5 license file.
  • When a license with custom parameters is viewed in the customer license portal, any custom parameters set to display in the portal will be listed.

-New Multi-Tenant Catalog Mode Feature

  • A new Multi-Tenant Catalog Mode feature is now available, allowing a "master" product catalog to be maintained on a "parent" author account, and then be selectively replicated to "child" author accounts.
  • This is intended for scenarios involving subsidiaries or distributors, where the customers and licenses for each subsidiary/distributor should be segregated, but product catalog maintenance is done on a master catalog, and the software is built against the product data from the master catalog.
  • In this mode, a master catalog is maintained on a parent author account. Each child author account then inherits a selective copy of the master catalog, which can be resynchronized after any changes to the parent catalog.
  • When this mode of SOLO Server is enabled:
    • When viewing the product listing for a child author, users with appropriate permissions will now see a new Synchronize Catalog option in the Actions menu. Clicking this option will take the user to a new page, which will list out all products on the parent catalog, as well as whether each product has been replicated to the child catalog, and the last replication details for those products that have been replicated. A checkbox for each product allows selectively replicating\synchronizing the parent catalog to the child catalog.
    • When viewing the product details for a product on the parent author, users with appropriate permissions will now see a new Synchronize Catalog option in the Actions menu. Clicking this option will take the user to a new page, which will list out all child authors, as well as whether the given product has been replicated to the child author, and the last replication details for those authors the product has been replicated to. A checkbox for each author allows selectively replicating\synchronizing the parent product to the child authors.
    • Any web endpoints which verify the Product ID or Product Option ID will validate against the values of the parent product/product option, and the encryption key of the parent author will be used. This allows maintaining a single software build which will work across all child authors.
    • Similarly, the download page in the customer license portal will use the parent author's ESD directory, allowing a single download to be maintained.

-Administrative Interface Enhancements/Fixes

  • Custom license mailings sent through the Email Customer option on the license details page now support the following additional search replace variables:
    • [varSalesEMail]
    • [varSupportEMail]
    • [varWebSite]
    • [varSupportSite]
  • If a Customer Welcome Mailing is specified on the cart or customer license portal options:
    • When adding a new customer, a new Send Welcome Mailing option is now available which, when checked, will send the welcome mailing to the customer after creating the account.
    • When viewing a customer, a new Send Welcome Mailing option is now available to resend the welcome mailing to the customer.
  • On the customer details page, the buttons in the heading have been converted into an Actions drop down menu.
  • Validation improvements on the product and product option configuration pages.
  • On the add prepaid license page, the distributor field is now a drop down.
  • Fix for an issue with the product wizard where the trigger code number would not be properly populated in the form after copying from an existing option.
  • On the product listing page, the "Add New Option" buttons now link to the bundled product option configuration page for bundled products.
  • On the product and option configuration pages, the license labels option is shown even when no labels are defined so the user sees the option along with the button to configure the labels.
  • The Upgrade From and Upgrade To fields on the product option configuration page are no longer displayed unless a value is already set.
  • The licenses export report now includes the customer and license activation passwords.
  • The bulk modify license page now supports modifying the Download Until date.
  • Minor updates to the manual regarding payment plan instances.
  • The product wizard has been updated to address an issue where attempting to copy from an option with a Minimum Activation URL set would fail.
  • Fixed some inconsistencies in the breadcrumbs on the customer and license details pages.
  • When adding a prepaid license to a customer, a custom license mailing can now optionally be sent to the customer.
  • Fix for a potential Angular injection issue on the login page.
  • The manual has been updated with clarifications as to how the number or retries on payment plan instances works.

-Other Enhancements/Fixes

  • The administration page for adding/editing customers, along with the registration pages on the cart and in the customer license portal have been updated to properly store the EU VAT number with the country prefix.
  • Fix for an issue where performing an online activation of a volume license could return error 5013 (No Remaining Activations).
  • The copyright year has been updated to 2018.
  • The SOLOBuildHelper application has been updated to pull release notes data through the Manuscript API.
  • Fixed a typo in the customization hook in the SOLO_Rpt_LicensesByCustomer stored procedure.
  • Fix for an issue with the PayPal processor where certain error notification emails would not be sent to the PayPal email address if no users were granted Notify Errors permission.
  • The Postman collections used internally for testing API endpoints have been refactored to use nested folders.
  • The billing process for Instant SOLO Shared URL authors now populates the EU VAT number on the invoice if present on the author customer record.
  • Fix for an issue where the payment status page the user is returned to after completing an order on PayPal could throw an exception if the author support URL contained certain characters.

SOLO Server 1.17.1.6
Released December 20, 2017

-Administrative Interface Enhancements/Fixes

  • The product wizard now notes that child records will not be copied when copying from an existing product/option.
  • Fix for an issue where entering an invoice with existing transaction details would not retain the selected merchant account when saving.
  • Corrected several typos related to author notes.
  • Fix for an issue on the settlements report where the selected merchant accounts would not be properly read from the request when generating the report, causing the report to always run against the default merchant account.
  • When configuring cloud controlled network floating options, a warning message is now displayed when the poll frequency is set below five minutes.
  • Several updates to the documentation on trial tracking.
  • The manual topic on cloud controlled network floating licensing no longer notes the feature is in preview.

-Shopping Cart/Order Processing Enhancements/Fixes

  • Fix for an issue which would prevent PayPal decline notification emails from being sent in certain error scenarios.
  • The default invoice templates have been updated to simplify how refunds are displayed, as well as to address some inconsistencies in how negative values are displayed.
  • The PayPal Payments Standard integration now passes the Cart ID in the invoice field, which allows the "block multiple payments per invoice ID" feature of PayPal to properly function.
  • The shopping cart now properly handles the Cart Campaign Only option on author level priority codes.

-Other Enhancements/Fixes

  • Password validation in updatecheck.asp is now case insensitive.
  • The XmlActivationService.ActivateInstallation/ActivateInstallationLicenseFile and XmlLicenseFileService.GetLicenseFile web methods now return the ProductID and ProdOptionID of the parent product/option when applicable.
  • When using Network mail delivery with an EMailPickupDirectory specified, any errors will be now be logged to the Errors subdirectory of the EmailPickupDirectory so they can be differentiated when also using email logging.
  • Bug fix for an issue where a constraint violation could occur when attempting to check out a cloud controlled network floating session on an expired license.
  • Fix for an issue where a cloud controlled network floating sessions could not be checked out on perpetual licenses.
  • New database stored procedures have been added for replicating a master product catalog to other author accounts.

SOLO Server 1.17.1.5
Released November 10, 2017

-Administrative Interface Enhancements/Fixes

  • Several links in the menu have been updated to be root relative.
  • A date picker has been added to every date field which did not have one.
  • The license notes field is no longer limited to 255 characters.
  • The add product wizard no longer copies over the product or option image when copying from an existing product or option, which would result in multiple products or options linked to the same image in the database.
  • When an error occurs loading the data on the home page, a more descriptive error message is now shown.
  • On the activation details page, the Last Status Check Exception is now correctly displayed below the Last Status Check Result Code.
  • The settlements report has been restyled to render more nicely within the new interface.
  • The plugin listing page now includes the plugin type.
  • The manual has been updated to clarify that when test licenses are purged, any customer records that are only associated with a test license will also be deleted.
  • The Require Source cart option has been clarified in the manual.
  • The documentation on the XmlActivationService.CheckInstallationStatus has been updated to more clearly document the optional usage logging feature.
  • The IP address search now has validation ensuring that a valid IP is entered.
  • Updates to the manual topics on configuring PayPal Standard to reflect changes in PayPal's interface.

-Other Enhancements/Fixes

  • A new customer license portal option to allowing editing the installation name in the customer license portal has been added.
  • A new Allow Expired Licenses setting has been added to the cloud controlled network floating options. When set, the check to ensure the license has not expired is bypassed.
  • When checking out a cloud controlled network floating session, sessions can no longer be checked out past the license expiration if not allowing expired license sessions.
  • The XmlLicenseService.UpdateActivationFields web method no longer requires that ActivationsLeft left be greater than or equal to 0.
  • Extended fraud screening now supports the Reject action on filters which support this, resulting in any order that fails a filter with a Reject action to be declined.
  • Improvements to the plugin processing error handling in the order processor.
  • SQL Server 2017 is now supported.
  • AngularJS has been updated from version 1.6.3 to 1.6.6.
  • ChartJS has been upgraded from version 2.5.0 to 2.7.0.
  • Consoft.dll has been retired and is no longer installed.
  • Support for reverting to the legacy database connection logic in the classic ASP/COM based portions of SOLO through the UseLegacyOpenDataConnection application variable has been removed.
  • Support to fall back to the legacy Consoft.Mailer emailing object in the classic ASP/COM based portions of SOLO Server through the UseLegacyMailer App.config entry has been removed.
  • Support for reverting to the legacy shipping stored procedures in the classic ASP/COM based portions of SOLO through the ASPUseLegacyShipping application variable has been removed.
  • Several internal updates to support upcoming multi-tenancy features in the following implementations:
    • Products and ProdOptions database tables
    • XmlActivationService web service
    • XmlLicenseFileService web service
    • XmlLicenseService web service
    • Electronic Software Delivery

SOLO Server 1.17.1.4
Released September 29, 2017

-Administrative Interface Enhancements/Fixes

  • When searching by IP address, the search results now only include the first 100 matches similar to the other search types.
  • Several minor tweaks and corrections to the manual.
  • The network floating session history export now includes TotalSessionDurationMinutes, TotalSessionDurationHours, and TotalCheckoutDurationHours, and TotalCheckoutDuration has been renamed TotalCheckoutDurationMinutes.
  • IP address lookup links now point to whois.arin.net since network-tools.com no longer supports direct linking. This can be overridden by a new IPAddressLookup web.config entry.
  • The logic for rendering the tabs along the bottom of several pages has been moved to SOLOCOMInteropServer.dll.
  • On the invoice details page, the merchant account name displayed to master users now links to the merchant account details page in a new tab/window.
  • When issuing a refund as a store credit, the store credit expiration date is now defined by the user rather than defaulting to 90 days in the future. In addition, the mailing now supports [varStoreCreditAmount] and [varStoreCreditExpiration] search/replace variables for the store credit amount and expiration.
  • The manual topic on editing customers now notes that the reserved string MAKENULL can be used to clear any notes from a customer record.
  • The customer search results page now shows the summary data at both the top and bottom of the listing. In addition, the wording of the summary data has been updated to correctly reflect that the results are limited to the first 100 results for all search types.
  • The validation on the add multiple licenses page now ensures the quantity is greater than 0.
  • The loading icon used in the administrative interface has been updated.
  • The FileUltimate control used for managing files on the server has been updated to version 5.13.0 (previously version 4.4.5).
  • Author note mailings now support a [varLastActivationDate] search/replace field for the date/time of the last license activation for the given author.
  • The rendering of the critical note count in the "You are currently managing..." heading for global access and master users has been updated.
  • The author home page now includes the last activation date in the administrative information section visible to master users.
  • The product wizard has been updated to hide non-applicable options when there are no available products and/or options to copy from.
  • On the add product wizard, when navigating back to the licensing client selection page, the prior selection is now retained.
  • The linked Author IDs are now exposed to global access users on the customer details page.
  • A new Licenses by Customer report is now available. This report returns the same data as the existing Licenses by Product report, but groups things by customer rather than product.
  • The mailing drop downs on the invoice chargeback page now only include mailings with text content, since this page only supports text only mailings.
  • The activation/installation details page now includes a breadcrumb back to the customer details page.
  • The expired licenses report now includes a breadcrumb back to the reports page.
  • The View Cust Lic Page link on the license details page has been relabeled View in License Portal to match the naming used in the Actions / License drop down.
  • The manual has been updated to better describe the Notify Product and Notify Partners customer settings.
  • The activation data xml shown on the activation details page is now formatted with indentation and line breaks.

-Customer License Portal Enhancements/Fixes

  • The recurring payment listing and details pages now include the card expiration date if available.
  • The daily computer listing on the cloud controlled network floating history page is now displayed in a scrollable section of the page to prevent huge page heights when a large number of computers are in use.
  • The text on the offer checkbox labels on the customer registration page has been updated.
  • The cloud controlled network floating history page now shows a loading icon when the chart is loading, and now better handles the scenario where the chart fails to load.
  • The legacy Protection PLUS 4 offline activation page now supports version number validation.

-Shopping Cart/Order Processing Enhancements/Fixes

  • The catalog pages have been updated to better support the product level storefront when in single order mode. Now if the cart is in single order mode, the storefront from the product being viewed will be displayed.
  • The text on the offer checkbox labels on the registration page has been updated.

-Instant SOLO Shared URL Enhancements/Fixes

  • Evaluation accounts can now access the add multiple licenses page and add up to 5 licenses.
  • The customer billing page for Instant SOLO now supports billing against an author reference transaction through the Linked Customer ID.
  • A new Close Account option is now available in the author switcher search results for administrative users.

-Other Enhancements/Fixes

  • Support for legacy invoices generated through the ConSoft.NotificationEngine COM object has been removed.
  • The MultipleDays computed column has been dropped from the NetworkFloatingHistory table as it is no longer needed.
  • Several files related to the older database installation and upgrade process that are no longer needed have been removed.
  • The database connection logic for the classic ASP/COM based portions of SOLO Server as well as the installer now defaults to SQL Server Native Client 11 if installed, falling back to SQL OLE DB Client if not.
  • Emails sent through classic ASP portions of SOLO are now sent through the .NET emailing logic through a new COM interop interface.
  • The cross product marketing daily process now supports a FilterOfferPartners configuration parameter which when set will only send notifications to customers with the Notify Partners setting enabled.
  • Fix for a typo in the customization hook in the SOLO_GetCrossProductMarketingData stored procedure.
  • Trial tracking functionality is now included in non eCommerce versions of SOLO Server.
  • Fix for an issue with the script to install the SOLO_GetShippingNotificationData stored procedure which would cause the permissions to not be properly set.
  • The database indexes for the cloud controlled network floating licensing report now specify a fillfactor of 100.
  • Support for the UseLegacyPayPalIPNPostback application variable to revert to the legacy implementation for PayPal callbacks has been removed.
  • A new CloneProduct.sql script has been added to the Database\UtilityScripts folder which can be used to clone all options form one product to another, setting a new trigger code seed and offline activation key in the process.
  • A new IPLookupURL web.config entry is now available to override the default location of IP address lookup links. This supports a [varIPAddress] search/replace string, into which the IP address will be injected.

SOLO Server 1.17.1.2
Released August 10, 2017

-Administrative Interface Enhancements/Fixes

  • Several minor back end enhancements to the new home page.
  • Several optimizations to the queries which gather data for the new home page.
  • The new home page now includes the SOLO Server version information at the bottom of the page.
  • For users with Master User permission, the "you are managing" heading along the top displayed for users with Global Access permission now displays the number of critical notes on the current session author in a link button to the notices page.
  • Corrected an incorrect URL in the manual topic on the DownloadFile.aspx PLUS automation client script.
  • The billing page used internally to bill Instant SOLO Shared URL authors has been updated to allow optionally not sending the email notification.
  • Fix for a potential XSS issue on the login page.
  • Text areas in the administrative interface have been updated to span the full available width.
  • Changes to several reporting stored procedures to prevent potential overflow issues, as well as address issues where a NULL first or last name would result in no contact name to be returned.
  • The administrative summary notifications for a majority of the daily processes which send customer notifications now contain additional information.
  • Several daily process customer notification mailings now support the [varCustomerID] and [varCompanyName] search/replace fields.

-Other Enhancements/Fixes

  • Client side URL validation now allows a + character in the URL.
  • Client side email validation now allows apostrophes in the local portion of the email.
  • The payment processor now uses SOLOCOMInteropServer.dll rather than SOLO.dll for encryption/decryption functionality.
  • Mastercard 2-series BINs are now supported.
  • Fix for an issue where error messages were not being properly displayed on the shopping cart.
  • For users with Global Access permission on SOLO instances with multiple authors, the user is now prompted when attempting to send the forgot password email to a customer to help prevent sending the email in the context of the wrong author.
  • A new EmailAlwaysLogToQueue web.config entry is now supported, which when set to true and using Network delivery, will cause all emails to be logged to the EmailPickupDirectory in addition to being sent. This can be used to recover from a failure with a 3rd party email provider. Note that this is currently only supported for emails sent through portions of SOLO using the .NET. Framework.
  • The XmlCustomerService.GetCustomerDataByAuthor web method will now return the Password as SECURED if it was chosen by the customer and the user account does not have View Password permission.
  • Updated the database upgrade script to install the original index on the NetworkFloatingSessions table to also check for the existence of the new index which replaced it before running the update.

SOLO Server 1.17.1.1
Released July 3, 2017

-Administrative Interface Enhancements/Fixes

  • The author home page has been redesigned, and now includes a getting started wizard for new accounts, a monthly activity graph, and quick search functionality.
  • A new Add Product wizard has been added to allow quickly creating products and options with the most common settings.
  • The existing add product wizard has been deprecated, and has been updated with a message to note this which includes a link to it's replacement.
  • The Sales with Invoice Details report has been rewritten in .NET and now prints nicely in all major browsers.
  • Fix for an exception that could occur when searching on a license user defined field.
  • Fix for an issue where a script error was generated when editing a license for a product option which has issue license disabled.
  • A new Get Ordering URLs link has been added to the Actions menu on the bundled product option configuration page.
  • In the actions menu on the invoice details page, the current "Add Multiple Licenses" option has been renamed to "Add Multiple Unregistered Licenses", and a new "Add Multiple Licenses" option has been added which will auto-populate both the Invoice No and Customer ID on the add multiple licenses page.
  • The "Reset All Activations" button on the customer details page has been relabeled "Reset Activations Left on all Licenses", and the confirmation prompt has been updated to note that prior activations will not be deactivated.
  • Files used to generate the menu in the older administrative interface have been removed as they are no longer used.
  • Web font files can now be uploaded to the storefront directory.
  • The author listing page has been reworked to better render in the new interface.
  • Several styling changes to the product listing page.
  • Fixes for some rendering issues with the author switching dialog.
  • The add test license page now supports pre-selection of the product through the ProdOptionID querystring parameter.
  • Users with Add Products or Edit Products permission can now upload files to the ESD directory.
  • Minor changes to the labeling for the Option Type setting on the product option configuration page.
  • The linked AuthorIDs are now exposed to global access users on the customer details page.
  • Changed the label for the "Order Complete Mailing" cart option to "Single Order Complete Mailing" to better clarify this applies to the cart when in single order mode.
  • The product option configuration page now includes file picker functionality for setting the File to D/L field from uploaded ESD files.
  • The monthly summary report now excludes test licenses.
  • The product option rule configuration page has been restyled to look better in the new interface.
  • Fixes for some printing issues with the Sales with Invoice Details report.
  • A Clear button has been added to the customer search dialog to address an issue with validation in Firefox.
  • A new page for viewing/editing FastSpring integration options can now be found through the Store / FastSpring Options menu entry. The existing FastSpring related options from the Advanced Account Options page have been moved here.

-User Manual Enhancements/Fixes

  • The video tutorials topic has been updated to point to newer tutorial videos.
  • The system requirements have been updated to note changes to the requirements:
    • SQL Server 2008 and 2008 R2 are no longer supported
    • SQL Server 2016 is now supported
    • Windows Server 2008 is no longer supported
    • Windows Server 2016 is now supported.
    In addition, the topic on installing on Windows Server 2012 has been updated to also cover Windows Server 2016, which has a few minor differences.
  • The topic on creating custom mailings has been updated to correct some missing search/replace fields for several mailings.
  • The topic for the customer details page now includes information on the expiration in the license listing, which was missing.
  • Fixed a missing space in the input XML for UpdateUserDefinedFields in the XmlLicenseService topic.
  • The topic on editing customers now notes that the reserved string MAKENULL can be used to clear any notes from a customer record.
  • A missing error result code for the XmlLicenseService.UpdateCheck web method has been added.
  • The manual has been updated to note that in a future version of SOLO Server, the [varPassword] search/replace field will be replaced with an empty value for customers who have chosen their own password.
  • Removed a reference to a screen shot that is no longer applicable from the Windows Server 2008 R2 install instructions.
  • Numerous other minor updates.

-Instant SOLO Shared URL Enhancements/Fixes

  • The hosted SOLO account options page used internally used by SoftwareKey to manage accounts now includes a new Author Plan ID and Custom Url Domain settings.
  • Support for a new HostedEvaluationScript web.config entry has been added to allow easily injecting custom scripts for evaluation users.
  • Fix for an issue for SoftwareKey administrators where the link to activate an author in the author switcher dialog did not work.
  • A new stored procedure has been added to get the maximum concurrent cloud controlled network floating sessions for a given author in a given month.

-Customer License Portal Enhancements/Fixes

  • If the email is already found in the system when attempting to register a new customer, a more friendly error message is now displayed with a button to go to the forgot password page along with a button to return to the login page.
  • The renewals and upgrades page now displays non-payment plan renewal options if the license has an inactive maintenance renewal payment plan instance.
  • Fix for a rendering issue in certain scenarios with the recurring payment details on the license details page.

-Shopping Cart/Order Processing Enhancements/Fixes

  • If the email is already found in the system when attempting to log in as a new user in the shopping cart, a more friendly error message is now displayed with a button to go to the forgot password page along with a button to return to the login page.
  • When reached from the shopping cart, the Continue to Log In button on the forgot password page in the customer license portal will return the user to the cart login page rather than the customer license portal login page.
  • SOLO Server now integrates with FastSpring contextual store Web Hooks.
  • The PayPal Standard integration now supports PayPal's TLS 1.2 requirement without a need to apply a Microsoft hotfix and registry update on Windows Server 2008 R2 and Windows Server 2012.
  • Fix for an issue where a script error was thrown on the login page when also logged in to the administrative interface.
  • The logic for identifying common shipping items across cart items has been simplified, making configuring shipping significantly easier. Now, items are matched only on Short Name. For the remaining items that previously needed to match, string values will default to the first value found, while true/false settings will default to the most restrictive setting.

-Cloud Controlled Network Floating Licensing Enhancements/Fixes

  • The XmlNetworkFloatingService web methods will now return a result of 5033 - Account Closed on closed accounts on Instant SOLO Server Shared URL.
  • A new Allow Checkout Extension setting has been added to the network floating options configuration. Enabling this setting will allow subsequent calls to CheckoutSession to extend the check out period.
  • The network session history graph has been improved to better scale with larger numbers of concurrent sessions.
  • Further optimization to the cloud controlled network floating history query.
  • Several changes to the network session history page to better handle scenarios with large numbers of computers.

-Other Enhancements/Fixes

  • A customization hook to been added to the SOLO_Get_LostPW2 stored procedure.
  • Several JavaScript dependencies have been updated:
    • AngularJS from 1.5.8 to 1.6.3
    • Bootstrap Datepicker 1.6.1 to 1.6.4
    • ChartJS 2.4.0 to 2.5.0
    • FontAwesome 4.6.3 to 4.7.0
    • Lodash 4.15.0 to 4.17.4
    • Restangular 1.5.2 to 1.6.1
  • External links in the release notes now use https.
  • The ProdOptions.OptionDescrip field in the database is now nullable, and the option configuration pages have been updated to set the value to NULL for an empty value.
  • The Serial Number Text field on the license now supports up to 50 characters.
  • A Postman collection was created for testing the new authors API.
  • The SOLO_DailyMaintenance stored procedure has been removed as it is no longer in use.
  • A new LicensingClient column has been added to the ProdOptions table to store the licensing client being used for licensing the option.
  • Fix for an issue with the database installation script throwing errors while setting permissions on SQL 2016.
  • The stored procedure used to gather the data for rendering invoices now includes the customer password source.
  • Updates to the index for author note counts to prevent key lookups on the author session and home page queries.
  • The XmlLicenseService.UpdateActivationFields web method now supports new LicenseCounter and LicenseCounterIncrement input elements which to either set the License Counter to an absolute value or increment the License Counter by a given value.
  • An index has been added on Invoices.AuthorID.

SOLO Server 1.17.1.0
Released March 7, 2017

-Customer License Portal Enhancements/Fixes

  • The license history page now includes the number of activations left.
  • A new page is now available to allow users to view and optionally close active network floating sessions for licenses configured for cloud controlled network floating licensing.
  • A new page is now available to allow users to view historical usage data for licenses configured for cloud controlled network floating licensing.
  • The number of records per page on Added a new optional CustomerServiceListingRecordCount web.config entry to allow overriding the default number of records on the customer license portal listing pages supporting pagination.
  • Fix for an issue where the heading columns in the listing pages would be rendered with too much whitespace when the labels wrapped.
  • A customization hook has been added to the SOLO_GetCustomerServiceInstallationHistory2012 database stored procedure.
  • The query to gather data for the manage installations page have been optimized for better performance against large histories when run on SQL 2012 or above.
  • On the edit customer information page, state/province is no longer required for Belgium.

-Administrative Interface Enhancements/Fixes

  • Several minor styling updates to several reports to make them more printer friendly.
  • When the Report Type is set to Adobe Acrobat for any reports supporting this format, Save to Disk is now automatically checked.
  • Fix for an issue with the issue where datepicker popups on certain reports would fall behind the top navigation bar, making it impossible to change the month or year.
  • Fix for an issue where inline report output was not properly rendered.
  • The Licenses by Product report now includes the Promo Code from the invoice when run in csv or xml format.
  • The Sales with Invoice Details report now includes the total amount charged in the summary data at the top.
  • The Activation Data Export report now allows filtering by date when running against a specific license.
  • The queries to gather data for the activation and installation log pages have been optimized for better performance against large histories when run on SQL 2012 or above.
  • Update to the directive scripts for the new author interface to support the maxlength attribute on string edit fields.
  • The customer billing page now allows selecting the merchant account rather than using the default account from web.config.
  • The actions drop down on the product option configuration page now includes a "Get Ordering URLs" option.
  • The mall configuration page now includes links to manage the mall catalog.
  • Fix for a bug on the merge customers page where an exception would be thrown if a value of 0 was entered for either the from or to CustomerID.
  • A new Network Session History Enabled customer license portal option has been added which controls whether access to the new network session history page is available in the customer license portal.
  • The JSON used to store the user session data on the client side for the new administrative interface is now properly encoded.
  • Several styling updates to hide buttons from being rendered when printing.
  • The order level field is now required on the user configuration page, which addresses an issue where an exception is thrown if this field is submitted with no value.
  • A new export network floating history report has been added to allow exporting network floating history data for a license.
  • The company name on the author contact details page is now editable by non-master users.
  • The author switcher dialog now displays a unique error message when the user session validation has failed.
  • On the add multiple licenses page, the List Customer ID option has been relabeled to List Customer Details, and when not checked, the customer password will no longer be included in the output.
  • When adding bulk licenses, the CustomerID is now always included in the results when adding a bundle item with no CustomerID specified. In addition, the customer password will now no longer be included when adding licenses to an existing customer if the current user does not have view password permission and the password was created by the customer.
  • Fix for a typo in the Promo Code label on the invoice details page.
  • The author notes and notices pages now support read only permission.
  • A new SwitchAuthorMode web.config entry has been added to allow overriding the default behavior of the author switching dialog. Setting this to None will hide the functionality, while setting this to AutoSearch will cause the dialog to automatically perform a search upon opening the dialog.
  • Reworked the angularJS integration to prevent multiple duplicate controllers being created.
  • On the product and option configuration pages, several fields which point to related records have been converted to links to allow quickly viewing the details on the related record.

-Instant SOLO Shared URL Enhancements/Fixes

  • The manual topic on software integration and signup has been updated to reflect the updated Instant SOLO trial process.
  • On the internal page used by SoftwareKey administrative users for billing, non fee items are now included in the option drop down when filtering is disabled.
  • When updating billing details on an author account, the authorization amount used to verify the credit card has been changed from $9.99 to $1.00.
  • A new AuthorPlan table has been added to the database for use with upcoming billing enhancements.
  • For SoftwareKay administrators, a new Activate Account link is now available in the admin menu when managing an account that is not closed or fully activated.
  • The monthly summary report used internally for billing has been restyled to render nicely in the new administrative interface.

-Other Enhancements/Fixes

  • When extended fraud screening is enabled, the shopping cart payment processor now passes the customer IP address to Authorize.NET, enabling use of Authorize.NET's IP address based fraud screening features.
  • On the shopping cart registration page and shipping details pages, state/province is no longer required for Belgium.
  • The LastPollDate column on the NetworkFloatingRejection table has been removed and replaced with a RejectionDate column which defaults to the current UTC date/time.
  • Check constraints have been added to the NetworkFloatingHistory and NetworkFloatingSession tables ensuring AllocatedUntilDate >= AllocatedDate.
  • Cloud Controlled Network Floating Licensing now supports optionally passing up the computer name to the OpenSession method, which is then saved to the session to allow it to be used to help identify the session in the customer license portal.
  • A new BCCAdminEmails configuration option has been added to most of the daily processes which send customer email notifications. When set to True, the customer notifications will be BCC'd to all of the AdminEmail email addresses.
  • A customization hook has been added to the SOLO_GetLicenseFileData stored procedure used to generate license files.
  • Customization hooks have been added to the SOLO_GetAuthorSession and SOLO_IncrementServiceUsageCounter stored procedures.
  • An index has been added to the AuthorID column on the CustomerServiceOptions table.
  • Fix for an issue where invalid product version values were not being caught by the validation in several web service methods.
  • The copyright dates throughout SOLO Server have been updated to 2017.

SOLO Server 1.16.2.2
Released December 6, 2016

-Enhancements/Fixes

  • The quick search dialog is now reachable through the hotkey combination Ctrl+Alt+Q, and the switch author dialog is now reachable through the hotkey combination Ctrl+Alt+W.
  • The icons on on the activation and installation history logs are now color coded.
  • The number and string post logs on the license details page now sort newest to oldest.
  • For users with global access, the "You are currently managing..." message is now always displayed at the top of the page regardless of whether the current author matches the user author. In addition, when the current author does not match the user author, a new button to switch back to the user's author is now displayed.
  • Updates to the default web.config file and the installer to properly set up the UrlRoutingModule only for paths it is required for.
  • The Sales with Invoice Details Report has been reworked to render nicely within the new administrative interface.
  • Fix for an issue with Cloud Controlled Network Floating Licensing where an exception would be thrown if a second attempt is made to close a session.
  • The reports menu link in the administrative interface now uses a root relative URL so it works in custom pages outside of the authors directory.
  • For Instant SOLO Shared URL, the listing in the switch author dialog now labels trial account status as either "Evaluation" or "Pending Activation" depending on whether activation has been requested or not.
  • When clicking the Bill button on the invoices & refunds section of the customer details page, if the current user account has global access permission and more than one author is present in the system, the user will now be prompted to confirm they want to bill against the current author account.

SOLO Server 1.16.2.1
Released November 16, 2016

-Author Administration Interface Redesign

The administrative interface of SOLO Server has been completely redesigned. Some highlights of the new design include:
  • Responsive Layout: The prior fixed-width design has been replaced with a responsive design which works much better with smartphones, tablets, and high resolution displays.
  • Improved Menu: The menu system has been greatly simplified, and now works on touch devices like smartphones and tablets.
  • Modernized Technologies: The new design is underpinned using modern technologies, which will be leveraged going forward to allow us to further improve the user interface.

See our blog post for more details on these changes. In addition, a menu transition guide is now available through Help / Menu Transition Guide to assist transitioning to the new, simplified menu system.

-Administrative Interface Enhancements/Fixes

  • The email customer functionality on the license details page now supports the [varCompanyName] search/replace in the subject of the email, as well as a new [varUserPONumber] search/replace for the invoice User PO Number field in both the subject and body of the email.
  • The add license page has been updated to note which fields are only applicable when processing the order through the shopping cart.
  • Fix for an issue with the monthly report where an exception would be thrown if the billing start date on the author account was in the future.
  • The customer Nickname field has been renamed to External Reference, now allows up to 100 characters, and no longer requires values to be unique.
  • The import product serial numbers page now disallows access to users marked read only.
  • When adding a new PayPal Payments Standard merchant account, a new button will now allow automatically populating the default PayPal URLs.
  • The email sent when an administrative user changes a customer's password has been updated, and is now generated through a template which is customizable at the server level.
  • The CVV2 and AVS messages on several pages which display a credit card form now render in larger text and are now displayed below the form field in the right column rather spanning both columns.
  • The manage inventory page now enforces read only permission.
  • The audit listing on the customer details page now includes the password column for all users rather than just those with View Password permission. For users without View Password permission, the password will be output as SECURED if it was chosen by the customer.
  • Fix for an issue where the Additional Activation Days setting was not properly saved when creating a new product option.
  • The fraud control settings pages now display a read-only view for users who are marked read only.
  • The plugin configuration page now enforces read only permission.
  • The product and option configuration pages have been updated to address several permissions issues where links/buttons were appearing when they should not.
  • The priority code configuration page and manual topic have been updated to indicate that one time use priority codes are enabled on Instant SOLO Server Shared URL.
  • The ExcludeUpgradeLicenses parameter for the customer subscription notification daily process is now documented in the manual.
  • The manual topic on configuring FastSpring integrations has been updated with some clarifications on configuring the product options in SOLO Server.
  • Several links pointing to the old location of the online manual have been updated to their new locations so they no longer need to be handled by redirect logic.
  • Links to posts on the SoftwareKey blog within the manual have been updated to reflect the new blog location.
  • A new topic has been added to the manual summarizing all shared error codes returned by web service endpoints.
  • Hosted SOLO Server Management Enhancements (applicable only to SofwareKey.com users on Instant SOLO Shared and Dedicated URL instances):
    • The Trial Tracking Enabled account setting has been moved from the account options page to the hosted account options page.
    • The Hosted SOLO options page now has a new Hosted Account Type field, and the Contract Received, Signup Complete, and Account Closed fields have been removed and replaced with a single Account Status field.
    • For Instant SOLO Shared URL, when accessing the encryption key data page, Protection PLUS 5 functionality within SOLO will be automatically enabled if not already if the linked customer has any valid Protection PLUS 5 SDK licenses on their account.

-Customer License Portal Enhancements/Fixes

  • Fix for an issue where an invalid LicenseID on the manual activation page would result in an exception being thrown.
  • The customer forgot password email now lists the license activation password with each license rather than the customer password.
  • The CVV2 and AVS messages on the update recurring payment page now render in larger text and are now displayed below the form field in the right column rather spanning both columns.
  • The download license file page now ensures that the license author matches the current session author.
  • Fix for an issue on the download page where an exception would be thrown if the file to download was locked due to being in the process of being uploaded.
  • The renewals and upgrades page now supports displaying extended pricing.

-Shopping Cart/Order Processing Enhancements/Fixes

  • When an order from FastSpring is processed, a notification email is now sent to users with Notify Orders permission.
  • Fix for an issue where the PayPal processor would throw an exception and fail to send a declined order notification if the order violated a product option rule.
  • The CVV2 and AVS messages on the credit card details page now render in larger text and are now displayed below the form field in the right column rather spanning both columns.

-Other Enhancements/Fixes

  • A foreign key to the Licenses table has been added to the NetworkFloatingSession table.
  • Logic for the integration with DotNetBB forums has been removed from the code base.
  • The SOLO_DisablePaymentPlanInstance stored procedure now contains a customization hook.
  • Session history and rejection logging has been added to Cloud Controlled Network Floating Licensing in preparation for future reporting features.

SOLO Server 1.16.2.0
Released September 2, 2016

-Enhancements/Fixes

  • Fix for an issue with the manual's new HTML5 skin where topics reached directly did not contain a link to view with navigation.
  • Fix for an issue with the table of contents in the manual where the link for the customers export report was incorrectly pointing to the license export report.
  • The web services section in the table of contents in the manual now includes a link to each web method for each web service.
  • Fix for an issue with the update script from 1.16.1.3 to update the check constraint on DailyProcesses.ProcessType.
  • The monthly summary report used internally for Instant SOLO billing now includes the total monthly fees collected and the number of active accounts in the summary section at the bottom.
  • Support for logging in by nickname has been removed from the customer license portal.
  • Support to search by nickname on the customer license portal forgot and reset password pages has been removed.

SOLO Server 1.16.1.3
Released August 24, 2016

-Administrative Interface Enhancements/Fixes

  • The user configuration page no longer allows creating user accounts using system reserved User IDs.
  • Fix for an issue where duplicating a product option with the duplicate rules option selected did not properly duplicate the Expired Maintenance Start Date option on the the rule.
  • The author session implementation now includes the SOLO instance type as well as whether the instance type is managed.
  • Changes to user records are now audited, and audit information is now available through a new View Audit History button on the user configuration page. In addition, exporting user audit data is now supported through the Reports / Auditing / Users menu entry.
  • A new Merge Customers page is now available in the administrative interface through the Customers / Merge Customers menu entry, allowing users with Manage Records permission to merge child records from one customer account to another.
  • A new customer export report is now available through the Reports / Customers / Export menu entry for users with report access permission.
  • Users with manage records permission can now edit the Customer ID on an invoice.
  • Failure notification emails from the forgot password page are now sent to the email specified by the EmailAdminAddr web.config entry, rather than to users with Notify Forgot PW permission (which is meant for customer forgot password failures).
  • The feedback page now uses the values from EmailAdminName and EmailAdminAddr web.config entries for the from name and email address.
  • The 15 character limit on user account passwords has been removed.
  • The SOLO manual has been updated to use the new HTML5 output from Flare.
  • The manual and product option configuration page have been updated to clarify that network floating options refer to Cloud-Controlled network floating licensing.
  • Documentation on configuring sales tax has been improved.
  • Improvements to the documentation on the the Affiliate URL distributor option.
  • The manual topics on installing SOLO Server have been updated to note that .NET 4.6.1 is required.
  • The manual topics on configuring PayPal merchant accounts have been updated.
  • The DailyProcessor.exe.config file is now documented in the manual.
  • Several updates to the manual related to the new Instant SOLO Shared Custom URL instance option.
  • Several updates to the manual topic on configuring FastSpring.
  • Minor changes to the documentation for the XmlLicenseService.UpdateUserDefinedFields web method.

-Customer License Portal Enhancements/Fixes

  • All license specific pages can now be accessed using a license based session. Support for this was added to the following pages:
    • License Details
    • License Agreement
    • Download
    • Download License File
    • Manual Activation
    • Installation History
  • Several improvements to the manual activation activation page.
  • When reaching the change password page with an expired reset link, the AuthorID included in the link is now maintained when continuing on to generate a new reset request.
  • Several improvements to the change password page to address some UI issues with form validation.
  • After updating recurring payment details, a confirmation message is now displayed indicating that the update was successful.
  • The renewals and upgrades page now displays the correct pricing based on quantity for rules configured with a one-to-one match quantity mode.
  • If a post login redirect page is specified during login and the customer is forced to register due to the Require Registration customer license portal option being set, the user will now be redirected to the redirect page after successful registration. Previously, they would be taken to the home page.
  • Fix to the customer license portal session implementation to prevent unnecessary database calls when session validation data is not present.
  • The product registration page now verifies the license belongs to the current session author as well as whether the given author has product registration enabled. In addition, when moving the license to the customer, the Modified By and Modified Date fields are now updated.
  • On the reset password page, when duplicate records are found when searching by email, the message displayed to the customer now simply indicates that if the email was found, they will receive an email, preventing email disclosure.
  • The license details page now displays recurring payment information when applicable.

-Shopping Cart Enhancements/Fixes

  • The login page now displays a single New/Existing Customer login form with just an email input when reached while logged into the author interface.
  • The shopping cart now supports logging in to an existing cart.
  • Invoices sent by email now use the LicenseID and ActivationPassword in the links to the customer license portal license details page so that users can manage their licenses directly from the link without having to log in to the customer license portal.
  • The label and icon for the phone and mail order options on the shopping cart payment page can now be overridden through new Phone Order Label, Phone Order Icon HTML, Mail Order Label, and Mail Order Icon HTML merchant account settings.

-Other Enhancements/Fixes

  • The SOLO Server system requirements have been updated to drop support for SQL 2005.
  • The installation instructions have been updated with additional details on size and growth settings for the SOLO database, as well as with additional information specific to using an Express version of SQL Server.
  • All fields storing URLs have been standardized to accept up to 255 characters.
  • Plugins can now be configured as either a .NET assembly or a database stored procedure, and order processing now supports the database stored procedure plugin type. This greatly simplifies configuring order processing plugins, and these generally only require a stored procedure call and previously required coding .NET logic in order to make a single database call.
  • jQuery has been downgraded to 1.12.4 for compatibility with the Instant Protection PLUS 3 wizard.
  • A new stored procedure to recursively get the Replaced By LicenseID for a given license has been added to the database.
  • The XmlCustomerService.GetCustomerDataByAuthor web method now returns RemainingActivations and RemainingDeactivations for each license, as well as LicenseCounter for licenses with it populated.
  • All default constraints have been removed from the DeletedLicenses table.
  • The SOLO_GetCreditCardBillingReminderData stored procedure used to gather data for the Credit Card Billing Reminder daily process now includes a customization hook.
  • SOLO Server is now compatible with application pools running in Integrated Managed Pipeline mode.
  • Minor refactoring of the SOLO_DeactivateInstallation stored procedure.

SOLO Server 1.16.1.2
Released June 30, 2016

-Administrative Interface Enhancements/Fixes

  • Fix for an issue on the resend invoice page where spaces in the an email list would cause validation to fail.
  • The xml and csv output of the Licenses By Product Report now includes the new External Reference fields.
  • The activation/installation details page now includes a breadcrumb back to the activation/installation log page.
  • Fix for a rendering issue on the customer details page for refund invoices which include shipping.
  • When adding a prepaid license, the Download Until field is no longer displayed for product options configured for perpetual download (Days to D/L of 0).
  • Fix for an issue where the Resend Invoice functionality would fail to properly validate the license ownership when reached from the license details page by a non-master or non-global user.

-Other Enhancements/Fixes

  • A new Require Registration Customer License Portal setting has been added, which when set will force any customer marked as Unregistered to register their customer information in the customer license portal.
  • The table for the [varRenewals] search/replaced field on the Pending Payment Plan Notification daily process now lists all licenses and includes a View/Cancel link to the recurring payment page in the customer license portal.
  • The XmlCustomerService.CustomerLogin web method now returns the CustomerID in the result on success. In addition, login using License ID and license Activation Password is now supported.
  • A customization hook has been added to the SOLO_DeactivateInstallation stored procedure.
  • The order processing logic which redirects back to the payment page if the credit card details have been cleared now redirects back to the Payment.aspx page if using the .NET shopping cart.
  • The recurring payment page in the customer license portal now displays a listing of licenses associated with the recurring payment.
  • Merged in some changes to CustomerPage.xml.pt-br resource file that were overlooked in the prior build.
  • Fix for an issue where the getlicensestatus.asp script would throw an exception when provided an invalid LicenseID.
  • The default invoice templates now use LicenseID and ActivationPassword in links to the customer license portal recurring payment page when included in an email, which allows users to access the recurring payment details pages in the license portal without needing to fully log in.
  • All SOLO Server .NET assemblies now target .NET Framework version 4.6.1.
  • The SOLO Server installer is now built using InnoSetup 5.5.8 (previously 5.5.6).
  • The SOLO Server build process now uses SmartAssembly v6.9.0.114 (previously v6.8.0.121).
  • The SOLO manual is now build using Flare version 12 (previously version 11).

SOLO Server 1.16.1.1
Released June 13, 2016

-Customer License Portal Enhancements/Fixes

  • The customer session management logic now supports a limited access session based on LicenseID and Activation Password.
  • The recurring billing pages are now accessible via License ID/Activation Password.
  • On the recurring payments page, the payment plan name is now included in the listing rather than the product name. In addition, the payment plan name now links to the recurring billing page where more details can be reviewed.
  • The recurring payment page rendering has been completely reworked to better match the look and feel of the rest of the portal. In addition, the product name, next payment date, and payment method are now displayed.
  • Fix for an issue where adding an upgrade or renewal item to a cart on the renewals and upgrades page while also logged into the administrative interface would not automatically log the customer into the shopping cart.
  • Fix for an issue on the license details page where Chrome would incorrectly select additional content when double clicking the License ID or Activation Password.
  • On the select account page, the phone number is now displayed for each account, and the rendering has been updated to correct an issue with the formatting being thrown off when the company name is long.
  • The change password page which supports the reset mechanism has been updated to support setting the password source.

-Administrative Interface Enhancements/Fixes

  • The monthly summary report to now defaults the date range to month to date when accessed through the Sales/Monthly menu option.
  • The tickets menu entry as well as the ticket listing on the customer details page are now only shown if the author account has tickets enabled. Previously these were also shown if the user had master user permissions regardless of whether the author had tickets enabled.
  • When adding a new merchant account, the contact details for are now pre-populated with the contact details of the current author.
  • The ability to block a customer's credit card and email address from future purchases through the shopping cart when refunding or voiding an order is now available only to master users.
  • The option for master users to block a customer's email and credit card from future online purchases when refunding or voiding an order is no longer displayed if the invoice uses the test credit card number.
  • The notification permissions Notify Hard Declines and Notify Soft Declines no longer require Master User permissions to access.
  • A new "User Cannot Change Password" setting has been added to the user configuration page. In addition, the existing "Change Password" setting has been relabeled "Force Password Change".
  • ActiveReports has been upgraded from version 7 to version 10 Service Pack 1.
  • The Email Customer on Installment option on the payment plan and payment plan instance configuration pages is no longer restricted to master users only.
  • Minor changes to the rendering on the customer details, license details, and invoice details pages to address some copy/paste issues with IDs and passwords.
  • The Adobe Spry framework is no longer loaded.
  • The Affiliate URL distributor option now allows up to 255 characters.

-Instant SOLO Shared URL Enhancements/Fixes

  • For authors who are on a prepaid plan, a new Purchase Credits link is now available on in the Plan & Billing Information section on the home page to allow purchasing additional credits.
  • Several changes to the QuickBooks export used internally for monthly billing.
  • The page used internally for billing has been updated to include additional products in the product drop down.
  • The manual topic for Hosted SOLO options has been removed from the manual since this is only applicable to SoftwareKey users on Instant SOLO.
  • Activations are no longer allowed for author accounts which have been closed.
  • The monthly summary report used internally for billing now contains a total count of service usage counters for each author.

-Other Enhancements/Fixes

  • The XmlLicenseService.InfoCheck web method now returns the LicenseCounter value in the result xml.
  • The FastSpring integration has been updated to support ordering multiple products in the same order, and several issues which could inadvertently cause hash validation to fail have been fixed.
  • The Important Update Notes section of the release notes has be reformatted, and additional information on the new View Password permission has been included at the top of the section.
  • The database stored procedure for searching on licenses is now marked WITH RECOMPILE to force a query plan be recompiled for each set of search parameters to address performance issues due to parameter sniffing.
  • A new IsTestLicense bit has been added to the Licenses table to flag that a license is a test license and SOLO has been updated to set this field appropriately when adding licenses to the system.
  • New service usage counters have been added for calls to XmlActivationService.CheckInstallationSattus, XmlActivationService.DeactivateInstallation, XmlLicenseFileService.GetLicenseFile, getlicensestatus.asp, and license_return.asp.
  • A new method has been added to SOLOCOMInteropServer to allow posting to a URL using TLS 1.2 from non .NET code.
  • Added some images to the SOLOServer project which were in source control but not included in the project.
  • A new database utility function to format a string for a CSV file has been added for use in custom reporting queries.
  • A new x86 build configuration has been added to the SOLO solution and project configurations.

SOLO Server 1.16.1.0
Released April 11, 2016

-Enhancements/Fixes

  • Access to the customer nickname field has been restored on the customer add/edit page in the administrative interface.
  • The FastSpring integration now allows specifying either single line or multi line output for license generation.
  • The customer email notification sent when an author changes a customer's password and checks the Notify Customer by Email checkbox has been updated to link to the customer license portal login page rather than the administrative interface login page.
  • Fix for a issue on the author change customer password page where when script is disabled, the form is submitted with a random password selected and also a password specified, or the form is submitted with no selected password source and no password, an exception would be thrown.
  • The manual topic on product option fields has been updated with clarifications on the Days to D/L field.
  • Fix for a issue on the customer license portal change password page where when an author session is present, script is disabled, and the form is submitted with a random password selected and also a password specified, an exception would be thrown.
  • Fix for an issue where editing a customer in the customer license portal could result in an exception being thrown if the customer license portal is running in global mode.
  • Fix for the upgrade script for 1.15.2.4 which migrated affiliate storefront HTML to the CustomMarkup table to properly set the ModifiedBy user to Upgrade when updating the author record.
  • The licenses by distributor report now uses the distributor contact name if the company name is not set.
  • Several changes to the QuickBooks export used for billing for Instant SOLO.
  • The SOLO_CreateModifyCustomer stored procedure has been removed as it is no longer in use.

SOLO Server 1.15.2.4
Released March 29, 2016

-New Customer Password Source Tracking

  • A new PasswordSource column has been added to the Customers and CustomersAudit database tables. This is used to track the source of the customer password. The source can be any of the following:
    • Author Unknown - The password was entered by an administrative user, however it is unknown if it was randomly generated. This is a default value for pre-existing customers where sufficient data is not available to differentiate.
    • Author User - The password was entered by an administrative user, and was not randomly generated.
    • Author Random - The password was randomly generated by an administrative user.
    • Customer - The password was entered by the customer.
  • Existing customers will have this new field set through an update script which uses the available audit data to accurately set this value on all Customers and CustomersAudit records.
  • Users with Master User permission can now view the password source on the customer details page, including in the audit history.
  • Users without View Password permission will no longer be able to view any passwords which were entered by the customer. The password will display as SECURED. Passwords entered by or generated by administrative users will continue to be visible. This applies to the following pages in the administrative interface:
    • Customer details
    • License details
    • Metering wizard license pool details
    • Activate license
  • When adding a new customer, a new Password Source option will be displayed with the option to randomly generate the customer password or enter a user defined value, and the password source field will now be set accordingly when creating the new customer.
  • A new page in the administrative interface has been added to allow changing a customer's account password with either a randomly generated value or a user defined value, and the password source will now be set accordingly when updating the password. In addition, this new page offers the option to send the customer a notification email. The customer password is no longer editable on the customer details page.
  • The metering wizard add department page now allows generating a random password or specifying a password, and sets the customer password source accordingly when creating the new customer.
  • When adding a test license, adding multiple (bulk) licenses, as well as when creating a customer through the LicenseServer.AddLicenseAndUnregisteredCustomer web method, the password source on the new customer record is now set to the Author Random password source.
  • The XmlLicenseService.Add web method now omits the customer password from the result xml for customer created passwords if the calling user does not have view password permission.
  • The customer search (both through the administrative interface as well as the XmlCustomerService.CustomerSearch web method) now supports searching on customer password for users without view password permission, however, when searching, only customer records where the customer has not specified their own password will be matched. In addition, for users without view password permission, the customer password will now be output as SECURED if it was entered by the customer.
  • The invoice license export has been converted to .NET and updated to support the customer password source. For users without view password permission, the password will now be output as SECURED if it was entered by the customer.
  • When accessed by a logged in administrative user, the .NET shopping cart registration page now displays a new Password Source field with options to randomly generate the customer password or enter a user defined value, and the password source field will now be set accordingly when creating the new customer.
  • When accessed by a logged in administrative user, the .NET customer license portal registration page now displays a new Password Source field with options to randomly generate the customer password or enter a user defined value, and the password source field will now be set accordingly when creating the new customer.
  • When accessed by a logged in administrative user, the .NET customer license portal change password page now displays a new Password Source field with options to randomly generate the customer password or enter a user defined value, and the password source field will now be set accordingly when creating the new customer.

-Storefront Template Enhancements

  • All custom storefront templates for the shopping cart, customer license portal, and affiliate portal are now configured through the custom markup templates configuration page, which was previously only used for configuring the customer license portal templates. This is reachable through the Authors / Storefront & Files / Custom Markup Template and Logo Image menu entry.
  • All existing template data stored on the author, product, and distributor records will be automatically migrated to the CustomMarkup table.
  • The cart options, distributor, product, and distributor options configuration pages now include a new Storefront Template option to allow selecting a template from a drop down.
  • The custom markup configuration page now supports uploading a logo image.
  • Auditing support for the CustomMarkup table has been added.
  • On the customer license portal options configuration page, "Template" has been relabeled "Storefront Template", and when no template is set or selected, "None" is now used rather than "SOLO Server Default Template".
  • The logic in the customtop.asp script to get the storefront markup from the database has been updated to use the SOLO_GetProductsCustomTopHTML stored procedure to match the implementation in the standard shopping cart pages.
  • The name field for custom markup templates now allows up to 150 characters.
  • The manual topics on configuring the storefront have been consolidated into a single topic and completely reworked.
  • The author, distributor, and product exports now include data on storefront templates.

-Shopping Cart Enhancements/Fixes

  • Fix for an issue with the rendering template for the shopping cart which resulted in whitespace appearing in the HTML attribute values for the update button.
  • Invoices will now display a link to the license details page in the customer license portal for downloading the software if either the File to D/L or D/L Page is configured on the product option. Previously this was only displayed if File to D/L was configured.
  • For PayPal orders, the wording on the page which PayPal redirects the user back to in SOLO Server has been updated, and the page now refreshes automatically every 10 seconds.
  • After an existing customer logs in, the cart will now detect if a customer has multiple customer accounts with the same email/password combination and offer the customer the ability to choose which account to check out with.
  • Removed the setfocusfield client side script block from the default ProductsTopNET.htm storefront template file since this is no longer used.
  • On the product option details page, default focus is now set to the quantity field.
  • On the declined order page, default focus is now set to the continue button.
  • On the payment redirect page in the shopping cart for PayPal, DIBS Debitech Web, and WorldPay, default focus is now set to the continue button.
  • The support message displayed in the cart when a credit card is declined will now display a link to the merchant account order support URL if specified. In addition, the text on this page is now left aligned rather than centered.
  • On the login page, whitespace is now trimmed from the new customer email prior to validation on the client side.
  • The license agreement and cart pages have been updated to retain the Google Analytics _ga querystring parameter when redirecting, which allows the Google Analytics scripts to link the user's session to the session from the site being linked from.
  • Fix for an issue where the legacy classic ASP shopping cart was calling the database stored procedure to retrieve the storefront markup incorrectly.

-Customer License Portal Enhancements/Fixes

  • On the renewals and upgrades page, maintenance renewals are no longer shown for licenses which are configured for automated maintenance renewal through a payment plan.
  • Manual activations performed through the ManualRequest.aspx page now have a unique Activation Source so they can be distinguished from online activations through the XmlActivationService web service.
  • For licenses using Cloud Controlled Network Floating Licensing through SOLO Server, the license details page will now display the number of network seats currently in use along with the number of allowed network seats.
  • The logic for the ESD download functionality in the customer license portal has been updated with additional validation to ensure the file system path is valid.
  • After an existing customer logs in, when duplicate accounts with the same email and password are detected, the user now has the option to switch between accounts.
  • The license history page now orders the license listing by License ID rather than entered date.
  • License IDs on the downloads page as well as the renewals and upgrades page now link to the license details page.
  • Fix for an issue on product registration page where registering a license from an unregistered customer record with child records could result in a database exception attempting to the delete the unregistered customer record.
  • Improvements to serial number support on the license details page.
  • Fix for an issue where entering an invalidly formatted License ID on the product registration page would result in an exception being thrown.
  • Fix for an issue with the login page where string login value could be incorrectly interpreted as an integer, resulting in a SQL exception attempting to parse the string as an integer.

-Administrative Interface Enhancements/Fixes

  • On the metering wizard license pool details page, the customer password is no longer editable.
  • The activate license page now displays the license activation password.
  • When adding a test license, the customer password is now always randomly generated, and the option to specify a password is no longer available.
  • The author home page will now display the amount of remaining credit in the Plan & Billing Information section if the author's fee payment method is Prepaid or the credit value is non-zero.
  • Updates to rptmonthy.asp to be more printer friendly.
  • The author session data now includes the currency prefix and postfix from the cart options for the author.
  • For Instant SOLO shared and dedicated instance types, a new Network Floating Access option is now available on the Hosted SOLO Options page which controls whether the network floating licensing features of the XmlNetworkFloatingService web service are enabled.
  • Fixed a few minor issues on the bulk modify license page.
  • When viewing audit records for the Authors, Licenses, Products, or ProdOptions tables, the audit records are now listed from newest to oldest.
  • The product export now includes the Network Floating Options.
  • The monthly summary report now displays credit data for authors who prepay fees or have non-zero fees, and credit can be decremented directly from the report.
  • The hosted SOLO options page now allows negative values for credit left, and will display the negative credit in red and positive credit in green in view mode.
  • The version downloaded is now included in the CSV and XML outputs of the ESD Download Log Report.
  • The customer details page now orders the license listing by License ID rather than entered date.
  • For Instant SOLO, when a refund is processed for an invoice which was processed through the Concept Software PayPal account, the notification email is sent to paypal@softwarekey.com rather than help@softwarekey.com.
  • Fix for an issue in the classic ASP author session management logic for Instant SOLO where the grace period for account lockout due to a declined credit card was not being honored.
  • The customer billing page now supports AVS and CVV2 verification when charging a new credit card.
  • Fix for an issue on the customer license portal options page where no error would be displayed if server side validation of the Storefront Template field failed.
  • Custom license mailings sent through the Email Customer button on the license details page now support new [varSalePrice] and [varDownloadPage] search/replace variables for the license sale price and product option D/L Page, respectively.
  • Updated several places where a distributor name is displayed to fall back to the distributor contact name when the company name is not specified.
  • The settlements report now includes the author company name from the invoice, as well as the Customer ID, with the Customer ID linking to the customer details page in a new tab.
  • For licenses using Cloud Controlled Network Floating Licensing through SOLO Server, the license details page will now display the number of network seats currently in use.
  • The manual topic on creating custom mailings now documents several search/replace strings for the custom license mailings which were missing.
  • The online manual now includes highlight.js for use styling code snippets.
  • Several minor updates to the product configuration topic in the manual.
  • The manual has been updated to note that the [varPassword] search/replace field will be removed in a future version of SOLO Server.

-Other Enhancements/Fixes

  • The shared, common logic used throughout SOLO Server to create and update customer records has been refactored.
    • The existing logic to automatically merge any duplicate customer records with the same email and password combination has been removed.
    • The create and update logic have been separated.
    • The unused Customer.CreateUnregisteredCustomer method has been removed.
    The following places in SOLO Server have been updated to use the new, refactored logic:
    • The LicenseServer.RegisterLicense, LicenseServer.UpdateLicenseRegistration, XmlLicenseService.Register, XmlLicenseService.UpdateRegistation, and CustomerServer.CreateCustomer web methods.
    • The customer license portal registration and customer details pages. In addition, the legacy classic ASP customer details page no longer allows editing the password or nickname fields.
    • The shopping cart registration page. In addition, the legacy classic ASP customer details page no longer allows editing the password or nickname fields.
    • The postregdata.asp script for posting customer registration data.
    • The legacy Protection PLUS 4 offline activation page.
    • The customer details page in the administrative interface. In addition, the nickname field is no longer editable.
  • License activation passwords now use uppercase rather than lowercase letters.
  • The LicenseAgreementUrl returned by the XmlLicenseService.UpdateCheck web method will now use the license activation password if the password used to authenticate is from a customer audit record.
  • The order confirm and customer service HTML fields on the product and product option now support a new [varSalePrice] search/replace variable which will be replaced with the license sale price.
  • The names of several columns, indexes, and foreign key constraints on the Products table have been updated to better follow standard naming conventions.
  • SOLO Server is now integrated with FastSpring eCommerce.
  • A new AutoCryptSL activation source has been added for use with an upcoming AutoCrypt integration.
  • The SOLO_UpdateLicenseUserdefinedFields stored procedure used by the XmlLicenseService.UpdateUserDefinedFields web method now includes a customization hook.
  • The copyright dates throughout SOLO Server have been updated to 2016.
  • A new Add method which takes a comma or semicolon delimited list of emails had been added to the EmailList class.

SOLO Server 1.15.2.3
Released November 10, 2015

-Web Services Enhancements/Fixes

  • The XmlLicenseService.UpdateCheck web method and legacy updatecheck.asp script now use the license activation password in the returned URLFile field when the product update is configured for License ID and Password authentication and the password has been validated against a customer audit record.
  • The XmlLicenseService.UpdateCheck web method now returns the license Download Until date in a NoMoreDL element when the license option is configured for expiration, as well as a new LicenseAgreementUrl element containing the URL to view the license agreement.
  • For PLUS Activation Code with Days Left option types, if the license is expired, activation will now fail as follows:
    • XmlActivationService.ActivateInstallation and XmlActivationService.ActivateInstallationLicenseFile will now return ResultCode 5019.
    • ActivationServer.ActivateLicense will now return ErrorCode 450.
    • getcode.asp will now return Error Response 310.
  • The license file returned by the XmlActivationService.ActivateInstallationLicenseFile and XmlLicenseFileService.GetLicenseFile web methods now includes a SerialNumber element if a serial number is defined on the license.
  • The xml documentation files for the XmlNetworkFloatingService web service are now properly installed, and a copy/paste error in the manual topic has been corrected.

-Customer License Portal Enhancements/Fixes

  • When editing a stored payment which contains full or partial credit card data, if the existing card is expired, the expiration date is no longer pre-populated.
  • The downloads page now supports filtering by Product ID.
  • Manually activated installations can no longer be deactivated.
  • The license agreement page now supports being reached directly without a logged in customer session through the L/Pw request parameters, which support both the customer account password and the license activation password.
  • The license agreement page now supports a view-only mode which displays only the content of the EULA without any storefront markup, nor the agreement checkbox and buttons at the bottom.
  • The legacy Protection PLUS 4 offline activation now includes the license activation password in the activation data file.
  • The manage installations page now supports filtering by active or deactivated installations.

-Administrative Interface Enhancements/Fixes

  • When editing a stored payment which contains full or partial credit card data, if the existing card is expired, the expiration date is no longer pre-populated.
  • The add multiple licenses page now supports the LongRunningQueryTimeout web.config parameter.
  • Manually activated installations can no longer be deactivated.
  • Users without report access permission are now allowed to export the activation and installation history for a license.
  • Fix for an issue where the client side validation of checkout duration minimum/maximum fields on the network floating options configuration page would incorrectly fail for certain values.
  • Fix for an issue where updating a note on a shopping cart would generate an exception.
  • When non-critical notices are present on an author account, accessing the product wizard through Instant Protection PLUS 3 no longer displays these notices.
  • A confirmation message is now displayed after resetting all activations on the customer details page.
  • The customer details page now supports sending the customer the forgotten password notification email through a new Email Forgotten Password button.
  • Numerous enhancements to the new customer billing page.
  • The product serial number export no longer includes the EncPassword and Password columns, which are currently unused.
  • Master users with global access can now delete customer/author links on the customer details page if the given customer has no child records on the given author.
  • Redeemed store credit information is now included on the customer details page, and the invoice details page now lists out individual store credits with a link to view them rather than the sum of all store credits.
  • When saving a product option configured with network floating options, a confirmation warning is now displayed if the license counter source is not specified.
  • On the license details page, if the license option is configured with network floating options, the License Counter filed is now labeled "Allowed Network Seats", and the field is required.
  • The help links on the product and product option configuration pages now point to the manual topics explaining the fields rather than the topic on adding new products and options.
  • The automatic redirect to the notices page when logging in when undismissed notices are present now supports the P= redirect page querystring parameter so after continuing or dismissing all notes, the user ends up on the specified redirect page rather than the author home page.
  • The custom license mailing sent through the Email Customer button on the license details now supports the following additional search/replace variables:
    • [varOptionDescription] - The product option Option Description field.
    • [varLicenseeName] - The licensee name from the license.
    • [varLicenseeEmail] - The licensee email from the license.
  • The Custom Data field on the product option configuration is now documented in the manual.
  • The daily processes help topic in the manual has been updated to note that negative values can be specified for the DaysToExpiration parameter for subscription expiration processes to send notifications after expiration.
  • The manual has been updated to note the limitations on the license counter value when used with an Activation Code with License Counter option type.
  • Numerous updates and enhancements to the manual.

-Other Enhancements/Fixes

  • For PayPal orders, the wording on the page which PayPal redirects the user back to in SOLO Server has been updated, and the page now refreshes automatically every 15 seconds.
  • Updates the the .NET error handling logic to prevent exceptions in scenarios where null values are present in the AllKeys property of the Request.Querystring, Request.Form, or Request.Cookies collections.

SOLO Server 1.15.2.2
Released October 2, 2015

-License Activation Password Enhancements

  • The existing customer login message on the shopping cart and customer license portal now emphasizes that license activation passwords cannot be used for login in bold red, and the login failure messages now also note that activation passwords cannot be used for logging in.
  • Conditional code for falling back to the customer password when the license activation password is not populated has been removed now that license activation passwords are non-nullable.
  • When resetting a license activation password, a confirmation prompt is now displayed noting that changing the password will prevent usage of the existing password for future activations, and may cause existing installations to become deactivated.
  • When adding multiple licenses, a new "Use Password Rules for License Activation Password" checkbox option is now available. When checked, the Password Prefix, Password Length, and Numeric Password settings are used to generate the license activation password rather than the default logic.
  • The default invoice templates have been updated to label the activation password as "License Activation Password", and to display the License ID, License Activation Password, and Expiration on separate lines to avoid wrapping.
  • The license activation password is now returned by the XmlActivationService.ActivateInstallation and XmlActivationService.ActivateInstallationLicenseFile web methods. In addition the activation password is now included in the license file returned by the XmlActivationService.ActivateInstallationLicenseFile and XmlLicenseFileService.GetLicenseFile web methods.

-Customer License Portal Enhancements/Fixes

  • When searching by email for a forgotten password, the search result heading no longer indicates if a match was found since this isn't necessarily the case.
  • The message displayed to new customers when selecting a password as well as existing customers when changing their password has been updated to emphasize storing the chosen password in a safe place.
  • Fix for an issue where in certain scenarios the redirect to the login page due to an invalid session would lose the session AuthorID causing the portal to revert to global mode.
  • The license history page now supports displaying serial numbers, and the logic on the license details page has been updated to better support certain serial number scenarios.

-Shopping Cart/Order Processing Enhancements/Fixes

  • The message displayed to new customers when selecting a password as well as existing customers when changing their password has been updated to emphasize storing the chosen password in a safe place.
  • Extended pricing now allows specifying up to 6 digits for the minimum and maximum quantity.
  • The top level error message when login fails on the shopping cart is now left aligned rather than center aligned.
  • Fix for an issue in the legacy classic ASP shopping cart where the distributor discount could be incorrectly applied when the distributor was associated with multiple authors.
  • Fix for an issue with the .NET order processor where international orders through PayPal would incorrectly be flagged with an IP address/country mismatch.
  • The Carry Download Expiration product option rule has been renamed to Download Expiration Carryover, and now offers three options:
    • None - No carryover. This will behave the same the the checkbox previously being unchecked.
    • Carry over - The expiration on the existing license is carried over to the new license. This will behave the same as the checkbox previously being checked.
    • Increment - The expiration on the existing license is carried over and incremented by the Days to D/L setting on the product option.
    Note that the Carry over and Increment options will only apply if the original license is not yet expired.

-Administrative Interface Enhancements/Fixes

  • Product option level priority codes are now managed through the new .NET based priority code configuration page.
  • The password message when a user without view password permission creates a test license has been updated to better explain the need to record the customer password.
  • The password message when a user without view password permission adds a new customer through the customer details page or metering wizard has been updated to better explain the need to record the customer password.
  • The add license page has been reformatted to make better use of the available space and avoid the need for things to wrap across multiple lines.
  • When viewing activation or installation history for a license, the License ID is now displayed in the separator at the top of the page.
  • On the customer details page, the Licenses & Other Items section can now be filtered to show all items, only licenses, or only other items.
  • Fix for an issue where changing the author for an author note would not save the change.
  • On the account options page, the Merchant ID is now displayed as a link to the view merchant account page.
  • The Resend Invoice functionality on the invoice and license details pages now allows specifying multiple To, CC, and BCC addresses to send the notification email to.
  • The expired licenses report now contains a customization hook, allowing additional fields to be returned for the CSV and XML output formats.
  • The licenses by product report now includes the store credit amount and marketing source name from the invoice in the CSV and XML output formats.
  • The customer search results now include a new Enabled column indicating whether the customer record is enabled or not.

-Web Service Enhancements

  • The XmlNetworkFloatingService web method is now documented in the SOLO manual.
  • The XmlNetworkFloatingService web method now uses the License Counter rather than the Quantity Ordered from the license record to determine the number of allowed network seats. This provides several benefits:
    • The quantity of allowed network seats can now be adjusted without causing invoices to become unbalanced.
    • Network floating licenses can now be sold in either a fixed number of seats or on a per seat basis using the Specified Value or Quantity options for License Counter Source setting on the product option configuration.
    • Through the rules engine's Update License Counter option, upgrades can now be offered through the customer license portal to allow customers to purchase additional network seats for existing licenses.
  • A new covering index has been added to the NetworkFloatingSession table to cover the XmlNetworkFloatingService query for non-expired sessions for a given LicenseID.
  • The SOLO_GetNetworkSession stored procedure has been optimized to eliminate a table scan which resulted in performance issues under load.
  • A new threshold activation plugin to allow using legacy Computer ID threshold matching while also using the Issue Installation ID feature is now available.

-Miscellaneous Enhancements/Fixes

  • All pages which support the LongRunningQueryTimeout web.config parameter have been updated to also set the ScriptTimeout to the LongRunningQueryTimeout plus 30 seconds to prevent script timeout errors when LongRunningQueryTimeout exceeds the default request timeout of 90 seconds.
  • The SOLO_CheckString stored procedure now contains a customization hook.
  • The SOLO build process has been updated to use Visual Build 9 (previously 8).
  • The installer is now generated using InnoSetup 5.5.6 (previously 5.5.5).
  • The SOLO_AddPrepaidLicense stored procedure now supports specifying a serial number when adding a license.

SOLO Server 1.15.2.1
Released August 11, 2015

-New License Activation Password Feature - Phase 2

  • The new license activation password is now exposed to all users, and the password can now be reset by users with edit licenses permission.
  • The password message on the cart registration page for new customers no longer notes that the password is required for activation since the activation password is now available for this.
  • The CSV and Text outputs for the licenses export now include the license activation password, the customer password has been relabeled "Customer Password", and will now only include the customer password if the user has view password permission. In addition, the Import format now uses the license activation password rather than the customer password.
  • When adding multiple customers and licenses, the final output now includes the license activation password.
  • New password reset functionality has been added to the customer license portal, intended to replace the current password recovery mechanism in the future.
  • The messaging on the customer license portal change password and product registration page has been updated to reflect the new license activation password.
  • The new license activation password is now automatically populated with a random value when adding a new license.
  • The existing customer login message on both the shopping cart and customer license portal login pages has been updated to note that license activation passwords are not valid for logging in.
  • A new Activation Password Length security setting has been added which controls the length of system generated license activation passwords.
  • A new script to populate all licenses with an activation password and mark the column non-nullable has been created. This must be run manually after upgrading SOLO.

-Shopping Cart/Order Processing Enhancements/Fixes

  • Fix for an issue where an existing customer updating their contact details on the shopping cart registration page would truncate any existing notes on the customer record to 1000 characters.
  • The PayPal processor now deletes the cart record after performing plugin processing, allowing plugins access to the cart data if needed.
  • The search/replaces for the product and product option order confirm HTML in the invoice templates now properly support distributor orders where the license customer does not match the invoice customer.
  • A new page to allow master users to easily test changes to the PayPal processor is now available.
  • PayPal processing now supports using the .NET order processor for order processing steps from adding store credits to the invoice onward.
  • The .NET order processor now only applies store credits to the invoice when the order processor is configured to do so.
  • The order completion mailing functionality in the legacy, classic ASP based order processing code now supports several search/replace parameters which were previously not supported.
  • The PayPal processor now correctly detects an eCheck pending refund as an unsupported transaction type.
  • The PayPal processor now allows allows logged in author users to bypass request validation with PayPal to allow more easily testing changes to the PayPal processor.

-Customer License Portal Enhancements/Fixes

  • The forgot password and change password pages have been updated to better display the top level error message in error conditions.
  • The customer license portal forgot password page has been reworked for better usability. In addition, the default support email for non-author specific searches now uses EmailOrderError rather than EmailAdminAddr from web.config.

-Administrative Interface Enhancements/Fixes

  • Fix for an issue where a client side script error would be raised when adding a new group.
  • When editing author level settings through pages based on the WebComponentPages framework, global/master users will now be warned if the session author has changed since page load resulting in the form being submitted against a different author than intended.
  • On the author login page, Login ID has been relabeled to User ID.
  • Global warehouses can now only be configured by users with master user or global access permissions.
  • Fix for an issue where a script error would be thrown when a user without view password permission edited a customer record.
  • The resend invoice functionality on the invoice details page no longer requires that the invoice has been processed through the shopping cart.
  • When deactivating an installation through the activation log or activation details pages, when the license product option is configured to allow reactivation on the same computer, the installation can now either be permanently banned from reactivating, or simply deactivated.
  • Several updates and enhancements to the online manual.

-Instant SOLO Administrative/Billing Enhancements

  • When activating an author account, the linked CustomerID is now editable on the contact details page, and after editing the Instant SOLO options, the page now redirects to the billing page with the Instant SOLO setup fee automatically populated.
  • The email author page now includes the option to send to the billing contact.
  • The customer billing page now allows entering a new credit card as a form of payment with the option of storing the details in a stored payment.
  • The new customer billing page now allows selecting a product option, and when selected, will create a single license for the given option on the invoice with a price matching the charge amount. In addition, the CVV2 number is now optional when billing against a new credit card.

-Network Floating Licensing Enhancements/Fixes

  • Network floating options are now configured at the author level rather than globally, and a new page to configure network floating options is now available. In addition, a new Network Floating Options setting has been added to the product option configuration to allow specifying a set of network floating options on a given option.
  • The XmlNetworkFloatingService will now send an error notification email to an administrator if an open request is made against an option without network floating options configured.
  • Usage of the XmlNetworkFloatingService web service is now logged to a new ServiceUsage table in the database.

-Other Enhancements/Fixes

  • Debugging of xslt stylesheets is now enabled in debug builds.
  • Fix for an issue where certain web methods could generate an exception if accessed using a null string for the userID or password argument.
  • New global AuthorCount and ActiveAuthorCount properties have been added to SOLO for use in future development.
  • Several changes to the xml resource files since build 1.15.1.0 have been merged into the translated versions of the files.
  • DownloadFile.aspx now works with SK_FileDownload.
  • The default URL for Authorize.NET has been updated to https://secure2.authorize.net/gateway/transact.dll, which is a new endpoint run through Akamai Networks.

SOLO Server 1.15.2.0
Released June 30, 2015

-Instant SOLO Administrative/Billing Enhancements

  • The author billing page used internally for billing Instant SOLO author fees now clears the Credit Card Declined flag after successful billing if it was previously set.
  • The Instant SOLO billing details page now allows users without manage account permission to update the billing details.
  • A new page has been added to allow master users to more easily bill customers an arbitrary amount.
  • A new MasterAuthorNoteID column has been added to the AuthorNotes table, and the notes administration pages have been updated to disallow viewing or editing any note with this column set with the exception of master users on Instant SOLO.

-Order Processing Enhancements/Fixes

  • The PayPal processor now correctly moves the original querystring from the cart to the invoice.
  • Request validation on the PaymentStatus.aspx page has been disabled to prevent validation errors when reached from a translated version of the PayPal confirmation page.
  • A new Expired Maintenance Start Date setting is now available on the product option rules. For maintenance renewals, this controls whether the new expiration date is incremented from the current date or the existing expiration date when the license being renewed has already expired.

-Customer License Portal Enhancements/Fixes

  • The renewals and upgrades page now includes the Date Issued for each license. In addition, on the license details page, "Date Ordered" has been relabeled to "Date Issued" for consistency.
  • The renewals and upgrades page now properly alternates the row styles in the listings, as well as allows pricing of $1000 or greater to be displayed without causing the Add to Cart button to wrap.
  • When editing a customer, updating a stored payment, cancelling a payment plan instance, or deactivating an installation in the customer license portal while also logged into the administrative interface, the author UserID is used when setting the Modified By field rather than "WebServer".
  • When linking directly to the customer license portal with auto-login parameters, the LoginMethod parameter value is no longer case sensitive.
  • The getlicensestatus.asp and getlicensestatus2.asp scripts now support using the ProdID parameter for the ProductID.

-Administrative Interface Enhancements/Fixes

  • Corrections for a few typos in the encryption key page and manual topic.
  • The payment plan instance history page now sorts descending rather than ascending so the latest payments show up first.
  • The login page now disables client side validation of the password field when the browser is Chrome. This works around an issue outlined in Chromium issue 398805 which would cause client side validation to fail and clear the password when it was auto-filled by Chrome.
  • For products using assigned from list serial numbers, the product configuration page now supports exporting all or all unused serials. In addition, users with Master User permission can now purge all unused serials.

-Web Service Enhancements/Fixes

  • The XmlLicenseService.Add web method no longer returns the customer password unless the user account calling the web method has View Password permission.
  • The web methods on the XmlNetworkFloatingService web service no longer include the customer password as part of the network session data.
  • The web methods for customer registration now use unique Modified By UserID strings as follows:
    • LicenseServer.RegisterLicense - WSLicReg
    • LicenseServer.UpdateLicenseRegistration - WSLicUpd
    • XmlLicenseService.Register - XWSLicReg
    • XmlLicenseService.UpdateRegistration - XWSLicUpd

-New License Activation Password Feature - Phase 1

  • Currently, software activation and other interactions between protected applications and SOLO Server is performed using the License ID along with the password on the customer account for authentication. This poses numerous security risks. In an effort to eliminate these risks and enable the end goal of eliminating any exposure of the customer account password throughout SOLO Server, a new License Activation Password feature is being introduced which will essentially decouple the license from the customer account with regards to interactions between protected applications and SOLO Server. In summary:
    • A new Activation Password field is being added, stored on the license record. This will eliminate the need for the customer account owner to expose the account password to end users in scenarios where the end user is not the account owner.
    • The new password can only be set to a random value, eliminating the risk of a customer reusing the same password they use on other sites.
    • The new password can be used for all interactions between protected applications and SOLO Server, however it cannot be used to log in to the customer license portal or shopping cart.
    • For backwards compatibility, the customer account password will still be supported for all interactions between protected applications and SOLO Server.
  • For the first phase of this implementation, the following changes have been made:
    • A new ActivationPassword column has been added the the Licenses table. For Phase 1, this field is nullable and will not be automatically populated with a random value.
    • All web endpoints used for interaction with protected applications have been updated to support the activation password. This includes the following scripts and web methods:
      • ActivationServer.ActivateLicense
      • LicenseServer.RegisterLicense
      • LicenseServer.UpdateLicenseRegistration
      • LicenseServer.ValidateLicenseRegistration
      • XmlActivationService.ActivateInstallation
      • XmlActivationService.ActivateInstallationLicenseFile
      • XmlLicenseService.InfoCheck
      • XmlLicenseService.Register
      • XmlLicenseService.UpdateCheck
      • XmlLicenseService.UpdateRegistration
      • XmlLicenseService.UpdateUserDefinedFields
      • XmlLicenseService.ValidateRegistration
      • XmlNetworkFloatingService.OpenSession
      • LicenseInfoCheck.aspx
      • LicenseUpdateCheck.aspx
      • getregdata.asp
      • license_return.asp
      • licensechk.asp
      • getlicenseinfo1.asp
      • postregdata.asp
      • updatecheck.asp
      • getcode.asp
      • getinvoicelicenseidlist.asp
    • The LicenseServer.AddLicenseAndUnregisteredCustomer web method now returns the license Activation Password. Note that will currently return an empty value as auto-populating the activation password will not be implemented until phase 2.
    • The XmlLicenseService.Add web method now returns the license activation password. Note that will currently return an empty value as auto-populating the activation password will not be implemented until phase 2.
    • The XmlCustomerService.GetCustomerDataByAuthor web method now includes the license ActivationPassword in each license node when defined for the given license.
    • The product registration page in the customer license portal now supports using the license activation password to register a license with the customer account.
    • The license details page in the customer license portal will now display the license activation password when it is defined.
    • ESD download functionality now supports the license activation password.
    • The invoice templates now support displaying the license activation password when it is defined, and will display a different default activation message in this case.
    • The PLUS 4 offline activation page (offact.asp) now supports the license activation password.
    • Users with Master User permission can now view and set/reset the license activation password on the license details page and the metering wizard.
    • Support for a new [varActivationPassword] search/replace has been added to the following:
      • Product and Product Option Order Confirm and Customer Service HTML.
      • Email license mailing.
      • The single order mode order complete mailing.
      • The first activation follow up daily process mailing.
      • The subscription expiration notification daily process mailing.
    • The license search now supports searching by license activation password.
    • The Licenses by Product Report now includes the license activation password.

SOLO Server 1.15.1.4
Released May 19, 2015

-Instant SOLO Administrative/Billing Enhancements/Fixes

  • Several bug fixes for minor issues with the author note administration pages.
  • Author notes now support specifying an expiration date.
  • A new Bill Start Date field has been added to the hosted SOLO options to control when to commence billing for new accounts, and the monthly summary report now excludes authors with this date set in the future.
  • The author billing details page now enters an author note when the authorization fails, and no longer BCCs master users on success unless the author has any critical notes.
  • Fix for an issue with the client side dismissal logic on the notices page which would cause a redirect back to the home page after dismissing the last dismissible note even when non-dismissible notes were still present.
  • Author notes are now dismissed on a user level rather than an author level.
  • The monthly summary report has been updated to better display the author notes.
  • The author notes system now supports global notes.
  • Numerous improvements to the author billing page and monthly summary report used internally for billing Instant SOLO author fees.
  • After marking an author note as deleted, the user is now returned to the notes listing page.
  • The queries for note counts on the author home page have been updated to account for supporting dismissal at the user level.
  • Functionality to set a reminder date as well as dismiss/undismiss a note has been removed from the note configuration page.
  • The author notes listing is now sorted so notes visible to users are displayed at the top of the listing.

-Administrative Interface Enhancements/Fixes

  • The SOLO manual has been upgraded to use Flare v11 (previously v10).
  • Several broken links in the manual to Protection PLUS 4 related topics have been fixed.
  • The topic on installing SOLO on Windows Server 2003 has been removed from the manual.
  • The FileUltimate control used for managing storefront and ESD files has been upgraded to version 4.4.5 (previously version 4.4.0.3).
  • When manually activating a license through the PLUS 4 manual activation page, you can now specify an Installation Name to identify the installation being activated.
  • Fix for an issue where the links for Post Counters and Post Strings results in the IP address search results did not contain the LicenseID in the querystring.
  • The Generate Ordering URLs functionality on the author catalog page now includes links to the EULA, view cart, and checkout pages, and the URLs are now displayed as links so they can be copied to the clipboard easily by simply right clicking the link and using the browser's copy link functionality.
  • The customer license portal options page now includes the author specific link to the portal home page in view mode.
  • Validation of URLs has been loosened to allow use of localhost as a domain in testing and development.
  • The import serials page now handles the case of a serial exceeding the maximum length by displaying a friendly error message rather than throwing an exception.
  • The Jump to Author functionality on the author home page has been moved to a separate panel on the page which is now available to users with global access permission.
  • Fix for a validation issue with the discount value on the upsell configuration page.
  • The Save to Disk checkbox is now default checked on all reports.
  • The product option description field is no longer limited to 255 characters.

-Order and Payment Plan Processing Enhancements/Fixes

  • Duplicate order checking now includes a check to see if an existing invoice is present with the CartID.
  • When an author session is present, the SWKCustInvoiceNo and SWKCustInvoicePw cookies are no longer set during order processing or on the PaymentStatus.aspx, and instead the user is redirected the order confirmation page with the InvoiceNo in the querystring.
  • The PayPal Payments Pro integration now supports specifying the currency code for transactions.
  • The payment plan processor now sends author administrative notification emails using a from name and address specified by constants rather than using the support email address of the payment plan author.
  • The customer password is no longer included in declined order or payment plan payment decline email notifications.
  • When the merchant account is configured to store partial credit card information, the partial data is now stored on any stored payments.

-Other Enhancements/Fixes

  • The customer subscription expiration notification daily process now supports a new ExcludeActivePaymentPlanLicenses parameter which determines whether to exclude licenses associated with an active payment plan instance.
  • When updating the licensee fields on a license through either the customer license portal or through the XmlLicenseService Register or UpdateRegistration methods, the Modified By and Modified Date fields are now updated on the license record.
  • Customer notification related daily processes now support a new OverrideOfferProduct optional input parameter. When omitted or false, emails will only be sent to eligible customers who have the Notify Product setting enabled on their customer record, while when set to true, emails will be sent to all eligible customers regardless of the Notify Products setting.
  • Auditing of changes on the Authors, Products, and ProdOptions table is now enabled by default.
  • The foreign key on DeclinedOrders.CartID has been removed, and the CartID is now kept on the DeclinedOrder record even after the cart is successfully processed.
  • The UseOldAuthorWebServiceSessionAuthentication web.config entry and temporary code to allow reverting to the old web service author session authentication logic has been removed.
  • A new ExcludeUpgradeLicenses parameter is now available in the customer subscription expiration notification daily process. When set to true, any licenses with Upgrade status will be excluded regardless of the upgrade behavior specified on the product option.

SOLO Server 1.15.1.3
Released April 3, 2015

-Payment Plan Enhancements/Fixes

  • The payment plan processor has been updated to use a new shared stored procedure to identify the license(s) each payment plan instance applies to with regards to checking existing license status and updating the license status on failure or expiration date on success.
  • When updating the license status on the final decline, only licenses directly associated with the payment plan instance are set to Check/Validate status by the payment plan processor. Previously, all licenses on the original invoice would be updated.
  • Fix for an issue with the payment plan processor where in certain scenarios a priority code would be incorrectly applied to the invoice.
  • The payment plan processor will now set the Disabled By and Disabled Date fields when disabling a payment plan instance due to a non-OK license status or a final decline.
  • The payment plan processor has been updated so that any persisted priority code discount with a discount expiration date set will expire the day after the expiration date rather than the day of the expiration date.
  • The payment plan instance configuration page now displays details on the licenses associated with the payment plan.
  • New Enable functionality has been added to the payment plan instance configuration page to allow quickly re-enabling a disabled payment plan instance, with the option to also reset the status on any licenses associated with the payment plan instance with a non-OK status.
  • When editing a payment plan instance which has licenses with a non-OK status, users with edit licenses permission will be given the option to reset the status to OK on any applicable licenses when resetting the status of the payment plan instance to active.
  • The payment plan section of the manual now includes information on sending automated billing reminder emails.
  • Fix for an issue where the discount expiration date would not appear in view mode on the payment plan instance configuration page.

-Shopping Cart Enhancements/Fixes

  • Two new cart options are now available to control the behavior of the offer related checkboxes on the shopping cart registration page and customer license portal customer page. A new Enable Offer Checkboxes setting allows enabling or disabling the checkboxes from being displayed, while a new Offers Default Checked option allows specifying whether the checkboxes are checked by default for new customers when they are enabled.
  • The payment gateway integration has been updated to better handle timeouts.
  • Fix for an issue where the response from Authorize.NET would not parse properly when the billing name or address fields contained a pipe character.
  • Authorize.NET processing now considers Response Code/Response Reason Code 3/78 as an invalid CVV2 number decline rather than an error.
  • The cart order complete mailing now supports a new [varCompanyName] search/replace for the customer company name, and the existing [varContactName] search/replace now always uses the customer first/last name.
  • Fix for an issue where adding an item to the cart and specifying an invalid RuleLicenseID, UpsellProdOptionID, or UpgradingFromLicenseID would cause an exception to be thrown.
  • Flat product priority codes are now limited in value to the line item price (including quantity) rather than to the item unit price.
  • When a duplicate order attempt is detected, the invoice session cookies are now set rather than exposing the customer password in the querystring.
  • The Currency Prefix/Postfix advanced cart options are now supported in the search/replaces for monetary values in the following areas:
    • Author Order Confirm HTML
    • Distributor Order Confirm HTML
    • Single Order Complete Mailings
    • Author Order Notifications
  • The invoice templates have been updated to display the default activation message for Protection PLUS 4 and 5 Activation Code with Days Left and Activation Code with License Counter option types. In addition, Protection PLUS 5 Volume License and Downloadable License with Trigger Code Validation option types will now display instructions and a link to download the license file.

-Administration Interface Enhancements/Fixes

  • The old classic ASP based customer details page has been decommissioned and replaced with the new, .NET based version of the page.
  • Date field validation on .NET based pages now ensures the entered value does not exceed the limits of the SQL Server datetime data type.
  • Amazon S3 synchronization for ESD files now supports synchronizing folder level changes.
  • The Replaced By field has been removed from the product configuration as it is not used.
  • The FileUltimate control used for managing storefront and ESD files has been upgraded to version 4.4.0.3 (previously 3.6). This version of the control has a completely reworked user interface.
  • Priority codes now support a new description field.
  • The feedback button at the top of the author interface is now displayed for non-master users on classic ASP based pages.
  • The author notifications page has been completely rewritten and simplified.
  • Fix for an issue where an exception would be thrown loading the AuthorServer.Author object if the author credit card number was not a valid card number.
  • Fix for a rendering issue on the distributor add/edit page which would result in the HTML text areas not posting back to the server properly.
  • When initially changing the password on the default Master user account after installing SOLO and logging in for the first time, the password change notification email is no longer sent since the default email address is not valid.
  • The mailing configuration page now properly handles deleting a mailing configured as the Customer Welcome Mailing on the Customer License Portal Options.
  • For Instant SOLO, users with Access Financials reporting permission will now see a link to their monthly statement on the home page as well as the reports menu.
  • The manual activation page now supports the view password permission, hiding the license password from users who are not allowed to view passwords.
  • The metering wizard now supports the view password permission, and several incorrect breadcrumb links within the wizard have been corrected.
  • The manual topic on the daily processes has been updated with more details on the customer subscription expiration notification process, including a screenshot of the table which is inserted into the mailing.
  • Several broken links in the manual have been corrected, and unreferenced topics have been removed.
  • The manual topic regarding the SOLO database jobs has been cleaned up.
  • Links to the Creating Custom Mailings topic in the manual now link directly to the specific mailing type where applicable.

-Reporting Enhancements/Fixes

  • The reports now strip any HTML markup from product and option names.
  • The licenses export report no longer includes the Save to Disk option and now always outputs to disk.
  • The licenses export report now allows specifying whether to filter by a date range or export all data.
  • The declined orders report has been updated to correct several minor issues with rendering the IP address.
  • Fix for an issue with the .NET based reports where a missing or malformed date value would be redisplayed as 1/1/0001 after failing server side validation. A blank value will now be displayed in this scenario.
  • CSV reports now properly escape string values containing both comma and quote characters so the value is properly displayed in Excel.
  • Several updates to the manual topics on the licenses by product report and the license export report.

-Other Enhancements/Fixes

  • The release notes have been restyled.
  • The authentication in web service methods requiring author user credentials now requires the user AuthorID to match the passed in AuthorID for user accounts with global access permission.
  • Updates to the error handling logic for classic ASP based pages to prevent a recursive error condition with certain SMTP errors causing the IIS worker process to crash.
  • The SOLO_IP2C_GetCountryName stored procedure used for country lookups by IP address has been updated to convert the country name to uppercase since the database now uses mixed case.
  • The XmlActivationService.ActivateInstallationLicenseFile and XmlLicenseService.GetLicenseFile web methods no longer migrate the installation to the Replaced By LicenseID when this value is populated.
  • The Notify Registrations notification permission has been implemented in the .NET customer license portal.
  • The CustomerServiceNetRedirect web.config entry controlling whether to automatically redirect from the older classic ASP based customer license portal pages to the new .NET based versions is now set to true by default for fresh installations.
  • Fix for an issue on the customer license portal login page where an exception would be thrown attempting to log in using a large numeric value greater than SQL Server's maximum integer value.
  • Installation instructions are now included in the zip file when downloading SOLO Server.

SOLO Server 1.15.1.0
Released January 7, 2015

-Enhancements/Fixes

  • References to Instant PLUS in the manual have been updated to specify Instant Protection PLUS 3.
  • The date range restriction has been removed from the new license export report.
  • The installer has been updated to correctly install additional assemblies required by the daily processor to support custom plugins.
  • Corrected an issue with the install script for the new SOLO_Rpt_ExportLicenses stored procedure which caused the permissions on the object to not be correctly set.
  • The copyright year in the SOLO installer and build scripts has been updated to 2015.
  • The ability to search by customer password on the customer search page and the XmlCustomerService.CustomerSearch/CustomerSearchS web methods has been restored for users with the View Password permission. In addition, the web methods and export results will also include the password.
  • The build process has been updated so that XML documentation files are generated for several assemblies that were missing documentation files.
  • The legacy PLUS 4 offline activation page has been updated with improved screenshots and instructions.
  • The "Save Page State" button on the new customer details page has been relabeled "Save Page Layout".
  • The SOLO_IP2C_GetCountryName stored procedure used for country lookups by IP address has been updated to convert the country name to uppercase since the database now uses mixed case.
  • Corrected the DailyProcesses table install script to specify that the new PluginID column is nullable.
  • The timeout value when communicating with the Authorize.NET payment gateway has been increased to 90 seconds.

SOLO Server 1.14.2.4
Released December 22, 2014

-Enhancements/Fixes

  • A new licenses export report is now available, accessed through the Licenses->Export reports menu entry.
  • The default invoice templates have been updated to allow displaying the remaining store credit on custom invoice implementations.
  • The default invoices, the customer license portal, and several pages in the author interface have been updated to properly support HTML markup in the product and product option names.
  • Fix for an issue on the customer details page where the confirmation prompt when clicking the add invoice button would fail to appear when the current author company name contained an apostrophe.
  • Fix for an issue with the legacy PLUS 4 offline activation page where certain non-expiring licenses were incorrectly identified as expiring licenses.
  • The shopping cart now redirects back to itself after performing any actions to prevent refreshes from prompting the user to resubmit and reapply the actions.
  • The author links listing displayed to master users with global access on the customer details page is now sorted alphabetically.
  • The bundled product option configuration page now includes the No Invoice Discounts and Error Message properties.
  • The daily processor has been updated to support custom plugins. In addition, the daily process configuration now supports specifying a specific plugin from a drop rather than specifying the assembly and interface names.

SOLO Server 1.14.2.3
Released November 26, 2014

-Enhancements to Customer Password Security

  • The customer and license details pages now support the new View Password user/group permission, and the customer password will no longer be displayed or editable by users without permission.
  • The customer search page and XmlCustomerService.CustomerSearch/CustomerSearchS web methods no longer support searching by password. In addition, the web methods and export results no longer include the password.
  • The shopping cart order confirmation page has been updated to no longer require the customer password when being viewed by a user logged in to the administration interface, and the View Order Confirm buttons on the invoice and license details page no longer include the password in the querystring.
  • When creating a cart through the add license page in the authors interface, the customer password is no longer exposed in the querystring when creating the cart.
  • The customer password has been removed from all reports and exports which previously included it.
  • The installation script to insert the default data for a fresh database install now properly handles the new view password user/group permission.
  • The session implementation in the customer license portal has been updated to no longer rely on the customer password when an author session is present, and all links from the authors interface to the customer license portal have had the password removed.
  • On the user/group configuration pages, the new view password checkbox is now included in the check/uncheck all functionality.
  • When adding a test license not associated with a specific customer, the password must now be specified, and users without view password permission will be shown a note regarding recording the password as it will not be retrievable later.
  • The LicenseServer.AddLicenseAndUnregisteredCustomer web method now generates an alphanumeric password for the customer rather than an all numeric password.

-Enhancements to the Customer License Portal

  • Fixed a few typos on the company selection page.
  • The home page will now display the amount of remaining store credit when the customer has valid store credits.
  • The legacy Protection PLUS 4 offline activation page no longer verifies the download expiration date is not in the past for options of type Protection PLUS 4 and 5 Activation Code.
  • The legacy Protection PLUS 4 offline activation page no longer attempts to perform an activation and instead logs a rejection if the license download expiration date is in the past.

-Enhancements to the Shopping Cart

  • The forgot password link on the default invoice templates has been moved from the default activation message to alongside the LicenseID so it is still visible for products/options which have order confirm HTML specified to override the default activation message.
  • The rendering templates and resource files for the default invoices have been updated for backwards compatibility with certain invoice customizations.
  • The changes to to the choose password message on the registration page from SOLO version 1.14.2.2 have been merged into the language specific resource files.
  • The changes on the default invoices for no longer displaying the password from SOLO version 1.14.2.2 have been merged into the language specific resource files.
  • The default invoice templates have been updated to use an absolute rather than a relative URL for the forgot password link.
  • The shopping cart will now display the amount of store credit remaining when the available store credit covers the entire cost of the shopping cart.
  • Fix for an issue on the shopping cart where pricing could be incorrectly calculated when both store credit and a distributor discount are present.
  • The shopping cart now supports specifying a cart item lock level when adding an item to the cart.
  • The manual topic on the cart querystring parameters has been updated to include the RuleLicenseID in the "Adding an Item to the Cart (Advanced)" section.
  • The registration page now properly handles the scenario where an existing customer's password is not valid by requiring the user to choose a new password.
  • Store credits and priority codes now expire on the day following the expiration date rather than on the expiration date itself.

-Other Enhancements/Fixes

  • The change password page in the authors interface now offers functionality to generate a random password as well as to view and hide the password fields.
  • Fix for an issue with the .NET customer details page where the warning prompt shown to global access users when adding an invoice would sometimes display the incorrect company name.
  • The Export CSV List button on the list all authors page now links to the new .NET based version of the export.
  • The notification email sent when author contact details are updated now includes the support phone, description, and support HTML.
  • The SOLOBuildHelper has been updated to output the differential files in a file structure matching the SOLO installation directory.
  • The view catalog and add license pages in the author interface now allow a quantity value up to six digits.
  • The table of contents in the manual has been updated for the rebranding of the customer service portal to the customer license portal.
  • The SOLO Server terms and conditions page no longer displays the terms and conditions in a container with a scrollbar, forcing the user to scroll through the entire agreement in order to accept it.

SOLO Server 1.14.2.2
Released October 7, 2014

-Enhancements to the Customer License Portal

  • The Customer Service Portal has been rebranded and is now referred to as the Customer License Portal.
  • The forgot password page now displays a generic message when searching on email address rather than indicating success or failure to prevent email address discovery.
  • The customer signup and change password pages now offer functionality to generate a random password as well as to view and hide the password fields. When generating a random password, the password fields are now made visible so that the random password can be recorded.
  • The license details page now shows the correct breadcrumb back to the payment history page when reached from the payment history page.
  • The password is no longer displayed on the license details page.
  • Several extra closing div tags have been removed from the default storefront.
  • The confirmation and error message on the license agreement page prior to download have been updated and the download button relabeled "Accept & Download".
  • The legacy Protection PLUS 4 offline activation page now includes the customer company name in the license.
  • On Instant SOLO, a warning message is now displayed for users logged into the administrative interface and viewing a customer record linked to the Concept Software account noting that a filter is in place and the user must log out of the administrative interface to view their Protection PLUS licenses.

-Enhancements to the Shopping Cart and Order Processing

  • The license agreement page now includes a checkbox confirming acceptance which must be checked in order to continue.
  • Invoices no longer contain the customer password and instead offer a link to recover a forgotten password.
  • On the registration page for new customers, the message regarding choosing a password has been updated, and the ability to view and hide the password fields has been added. When generating a random password, the password fields are now made visible so that the random password can be recorded.
  • The temporary cookie used to store the credit card CVV2 number during checkout is now marked secure and http only.
  • Functionality for adding store credits to the invoice has been migrated to the COM callable .NET order processor.
  • Added support for a new NETOrderProcessorStepOverride web.config entry, which allows overriding the current step on a per instance basis while using a default step through the NETOrderProcessorStep web.config entry in a shared configuration file.
  • The order processor has been updated to verify the validity of any UpgradingFrom LicenseID on the cart item before attempting to pull the expiration date from the existing license.
  • The PayPal processor has been updated to detect eCheck refunds as an unsupported transaction type and send an email notification to an administrator.

-Enhancements to the New .NET Customer Details Page

  • A new "Save Page State" button has been added which will save the current page state with regards to which sections are expanded/contracted. Subsequent visits to the page will display with the sections in the same expanded/contracted state.
  • Viewing audit records is now supported.
  • The "Licenses" and "Orders" sections have been relabeled "Licenses & Other Items" and "Orders & Refunds".
  • For non license option types, the License ID is no longer displayed in the listings.
  • The product and option names are now links to the license details page.
  • In the Orders & Refunds" section, the License ID now links directly to the license details page rather than to the license row in the "Licenses & Other Items" section.
  • The custom customer options now supports a new <!--NoRowClass--> HTML comment, which when present will render the markup without the default background css class. This allows more cleanly embedding certain custom content.
  • The manual topics on viewing, adding, and editing customer records has been updated to reflect the new version of the page.

-Other Enhancements/Fixes

  • The confirmation message on the author terms and conditions page has been updated.
  • The second generation WebComponentPage rendering templates now support displaying a checkbox specific "Please check the checkbox to proceed" error message for checkboxes that are required.
  • The ActivationInstallationLicenseData xml constructor and ToXml method now support the new LicenseCounter property.
  • The AuthorListComponentPage implementation has been updated to use root relative redirects in error conditions so it can be used in custom implementations.
  • Fixed a rendering issue on the customer search page with Google Chrome where the second column would spill out of it's container.
  • The author reset password page now displays a generic message on submission rather than indicating success or failure to prevent email address discovery.
  • SOLO.dll has been removed from SOLO as it is no longer used.
  • Updated the installer to label the release notes and EULA in the menu as specific to SOLO server.
  • All links within the author interface to existing shopping carts no longer include the password in the querystring when the cart author is configured to use the .NET shopping cart.
  • The manual topic on manual activation has been updated to note that SOLO is also an alternative to generating activation codes through Instant PLUS and License Manager.
  • A new View Password permission has been added to the user and group configuration pages. Note that the remaining implementation of this new permission is still a work in progress.
  • For Instant SOLO, a confirmation message is now displayed prior to adding a test license warning the user that test licenses are for development and integration testing only and will be deleted at the first of the month.
  • The SOLO Server installer now uses InnoSetup 5.5.5 (previously 5.5.4).
  • Fix for an issue where a script error was generated when submitting the author reset password form.
  • Corrected an issue with the build and install scripts where the incorrect version of PLUS4Compatibility.dll was being installed.
  • Several updates to the SOLO Server End User License Agreement (EULA).
  • The documentation for the XmlActivationService web service now include details on the ExtendedResultCode and ExtendedErrorMessage output fields used when plugin processing fails in the ActivateInstallation or ActivateInstallationLicenseFile web methods.

SOLO Server 1.14.2.1
Released August 21, 2014

-Enhancements/Fixes

  • All non-3rd party exe and dll files are now digitally signed.
  • A new Activation code with License Counter product option type is now available. This type provides a single Protection PLUS Trigger Code, along with additional numeric Event Data with the value from the License Counter field on the license.
  • When adding a new stored payment, the customer contact details are now automatically populated from the customer record.
  • The sections in the General Activity and Commerce Activity panels on the author home page now only link to the corresponding report if the user has permission to view the report.
  • The author, distributor, and product exports have been converted to the .NET export framework. In addition, the users export has been reworked to follow the standard .NET export naming convention.
  • SOLO has been upgraded to use PLUSManaged 5.14.2.0 for licensing.
  • The customer add/edit page in the customer license portal now uses the functions in CustomerServer for extended validation rather than duplicating code.
  • The customer edit page in the customer license portal now correctly handles the scenario where two customer records are merged due to a matching email/password combination.
  • The DNS reverse lookup functionality in TCPIP.dll has been moved to SOLOCOMInteropServer.dll and TCPIP.dll has been removed.
  • A missing company name attribute was added to SOLO.dll.
  • The cryptographic functionality in SOLO.dll used by the classic ASP portions of SOLO has been moved to SOLOCOMInteropServer.dll.
  • The legacy Protection PLUS 4 offline activation functionality has been rewritten in .NET.
  • Fixed an issue where the warning message in the author order notification email regarding the order exceeding the cost ceiling was displaying the item count ceiling rather than the total cost ceiling.
  • The Screen Shot field on the product has been marked in the manual as no longer in use.
  • Minor updates to the manual topic on product option rules.
  • Corrected some broken links to .NET framework downloads in the manual topics on installing SOLO.
  • The manual has been updated to note that a US English version of Windows is required.
  • The Server 2008 and Server 2012 install topics in the manual now include HTTP Redirection in the list of Role Services which must be installed.

SOLO Server 1.14.2.0
Released August 8, 2014

-New Features/Major Enhancements

  • All dates displayed to customers on invoices and within the customer license portal now use dates formatted in MMM dd yyyy format.
  • New [varExpirationDate] and [varEnteredDate] search/replace variables are now supported in the Order Confirm and Customer License Portal HTML fields on products and product options.
  • New GetLicenseCustomData and UpdateLicenseCustomData web methods are now available on the XmlLicenseService web service for programmatically retrieving and updating the license Custom Data field.
  • New, improved, .NET based versions of the customer details and customer edit pages are now available for preview in the administration interface.
  • A new page to submit feedback to the SOLO Server development team is now available in the administrative interface. This is reached through a new Feedback button at the top of the page.
  • The Forums link in the heading of the administrative interface has been replaced with a Support link to the SoftwareKey support portal.
  • All links in headings and separators throughout the administrative interface have been restyled as buttons.
  • A new Allow Customer Signup customer license portal option has been added to allow specifying whether customer sign up is allowed through the portal.
  • A new Customer Welcome Mailing customer license portal option has been added to allow specifying a mailing to send to new customers who sign up through the portal.
  • The licenses by product report now includes the user defined fields from the license for CSV and XML report types.
  • The rules engine now supports a new Increment Activation Count feature. When enabled, during order processing, the activations left on the original license will be incremented based on the Unlocks per U/M setting of the product option. This can be used to offer customers the ability to purchase additional activations for existing licenses.

-Customer License Portal Enhancements/Fixes

  • All currency formatting in the rendering layer is now done using the new .NET based formatting functionality.
  • The rendering template for the license details page now uses the new .NET based search/replace methodology for the Order Confirm/Customer License Portal HTML.
  • The renewals and upgrades page no longer displays upgrades configured for transitioning to automated maintenance renewal if a maintenance plan is already associated with the license, and the license expiration date is no longer displayed for non-expiring licenses.
  • Fix for an issue with currency formatting not working properly on the recurring payment page.
  • The manual request page now supports displaying only the text or file upload methods based on a new "method" querystring parameter which accepts values of "text" or "file".

-Shopping Cart/Order Processor Enhancements/Fixes

  • The rendering templates for the mail and phone payment pages now use the new .NET based search/replace methodology.
  • On the select payment page, the PayPal option now includes a note that PayPal will accept most major credit/debit cards and does not require a PayPal account.
  • Fixed an issue where the extended fraud screening country match check would return false positives for non-shippable orders.
  • The address match checking for extended fraud screening now excludes the first and last name.
  • Links to the customer license portal in invoices will now link to the .NET customer license portal if the CustomerServiceNetRedirect web.config entry is enabled. In addition, the link formatting has been updated to address some whitespace issues.
  • Fix for an issue where the credit card transaction amount would not take store credits into account when using extended fraud screening.
  • The single order mailing code in the .NET order processor no longer requires the SOLODirRoot web.config entry to be present.

-Administration Interface Enhancements/Fixes

  • The license details page now displays the Original License ID with a link to the license for licenses processed through the rules engine.
  • In preparation for phasing out the ticketing system, all ticket related information is now hidden by default for non-master users. Access can be restored through a new Enable Tickets setting on the account options.
  • The author note email functionality now supports a new [varTotalNumberOfActivationsEntered] search/replace variable for the total number of activations for the given author.
  • Fix for an issue where the [varAuthorTruncatedCardNumber] search/replace in author note emails was incorrectly replacing the value with an empty string.
  • Issue Store Credit permission is no longer required to view a store credit.
  • Images uploaded for the product, product option, or storefront now retain the image format for gif, jpg, and png images.
  • The license bulk add functionality now permanently uses the new COM exposed .NET component which better handles large quantities of licenses.
  • Links to support.softwarekey.com have been updated throughout SOLO in preparation for upgrading the SoftwareKey customer support portal.
  • Several changes have been made to the reporting framework to allow more easily creating custom reports.
  • The assembly path for plugins now allows up to 200 characters.
  • Customer audit data is now visible by non-master users.
  • The licenses by product report now includes the OriginalLicenseID field for licenses processed through the rules engine which contains the LicenseID of the original license purchased against.

-Online Manual Enhancements/Fixes

  • The manual is now generated using MadCap Flare version 10 (previously using version 9).
  • A new topic on installing SOLO on Windows Server 2012 has been added, while the existing topic on installing on Windows Server 2008 has been updated and improved.
  • Several updates regarding system requirements and merchant account limitations with payment plans.
  • The topics on installing SOLO Server now reference setting up Request Filtering rather than URLScan.
  • The section on offering subscription/maintenance renewals in the product option rule topic has been updated.
  • The license counter related settings on the product option and product option rule topics have been updated to include a link to the blog post on using a license counter.

-Other Enhancements/Fixes

  • Official support for Windows Server 2003 has been dropped.
  • SOLO Server has been verified under the .NET Framework 4.5.2.
  • A new library of .NET based utility functions is now available for use in the SOLO XSLT rendering templates.
  • The default web.config for new SOLO installations now includes entries for the ASP.NET 4.0 wildcard script mapping as well as the 500.100 error handler in the custom directory.
  • The SOLO build script has been updated for compatibility with the new build server.
  • The build process has been upgraded to Visual Build 8.6 (previously 8.4).
  • The daily processor has been updated to better handle errors when sending administrator summary notification emails.
  • Corrected an issue with the build processor where rollback files for emergency rollback to the prior build were not being correctly pulled from source control.
  • The AddressUserComponent implementation in the WebComponentPages framework has been updated with support to override whether state/province and postal code are required based on the current country.

SOLO Server 1.14.1.2
Released May 8, 2014

-Enhancements/Fixes to the Default Invoice Templates

  • The time zone and time zone offset are now included along with the date.
  • Fix for a spacing issue in the payment plan subscription message.
  • Fix to address an issue where the merchant details were not rendering correctly for PayPal orders.
  • The vendor and merchant details sections have been reworked to ensure that long support site and/or email address values will wrap and will not throw off the formatting of the entire invoice.

-Enhancements/Fixes to the Shopping Cart and Order processor

  • The product details page now updates the Hit Count on the product.
  • The cart and catalog now allow quantities up to 6 digits.
  • A new Custom Registration Page advanced cart option has been added to allow overriding the default shopping cart registration page with a customized version.
  • The payment selection page is now bypassed for $0 prepaid orders.
  • Extended fraud screening can now be enabled on the cart options and merchant account options, as well as globally.
  • Order processing has been updated to treat license expiration as expiring after rather than on the expiration date when processing the carry download expiration rule option.
  • The .NET order processor default customer mailing now aligns the invoice to the left along with the default message when no author order confirm HTML is present.
  • The .NET order processor now supports including any extended fraud screening information in the author notification email.
  • The [varProductID], [varProductName], [varProdOptionID], [varProdOptionName], and [varDistributorID] search/replace variables in the product and product option order confirm HTML are now supported within the single order customer order notification email in the .NET order processor.

-Other Enhancements/Fixes

  • Enhancements/fixes to the customer license portal:
    • The change password page rendering template now disables output escaping for the password change message, allowing markup to be used in custom versions of the xml resource file.
    • Fix for an issue where an exception would be thrown on the PLUS activation page if reached with no LicenseID in the querystring.
  • The MailingEngine assembly used for sending emails in .NET portions of SOLO now supports attachments.
  • The Licenses.SalePrice column in the database is now non-nullable.
  • The audit trigger on the Products table no longer audits updates to the HitCount field.
  • The add bulk license functionality has been updated to optionally use a COM exposed .NET implementation to add the licenses which more efficiently handles large quantities of licenses. This is a beta feature and will become the standard implementation once verified in production.
  • When authorizing the credit card when updating a stored payment, the customer email is now sent to the payment gateway.
  • The pipe character is no longer allowed in product and product option names as this causes issues syncing with Instant PLUS.
  • The product option rule configuration page now disallows enabling the Update License Counter option unless the Require License ID option is enabled.
  • The Instant PLUS synchronization script now filters out options not accessible to the user by the Order Level Req field.
  • Update to the WebComponentPages framework to support client side validation of required checkboxes as well as updated the error message for required checkboxes to read "Please check the checkbox to proceed."
  • The settlement report stored procedures have been cleaned up and updated to temporarily handle orders entered through the author billing page with no SalePrice set.
  • The author billing page used internally to bill Instant SOLO customers now sets the SalePrice field when adding the license.
  • When cross author promotions are enabled, products from disabled authors are no longer included in the drop down when adding products to a bundle.
  • Minor changes to the recent orders and settlement reports in calculating pricing for non shopping cart orders.

SOLO Server 1.14.1.1
Released April 2, 2014

-Enhancements/Fixes

  • The Payment Plans Overview manual topic now notes that PayPal Payments Standard and WorldPay are not compatible with payment plans, as well as that Authorize.NET requires storing full credit card numbers.
  • Several enhancements/fixes to search/replace field support in the .NET shopping cart:
    • The Order Confirm HTML on the cart options now supports a [varLicenseID] search/replace which is replaced with a comma separated list of LicenseIDs.
    • The Order Confirm HTML on the distributor configuration now supports the existing [varLicenseID] search/replace, which is replaced with a comma separated list of LicenseIDs, as well as the existing [varCustomerEmail] search/replace which is replaced with the customer email address.
  • The Terms drop down on the add/edit invoice page now has a default "Please Select" option.
  • The product and product option Order Confirm and Customer License Portal HTML now support the following new search/replace fields:
    • [varDistributorID]
    • [varProductID]
    • [varProductName]
    • [varProdOptionID]
    • [varProdOptionName]
  • Fixed some inconsistencies in how the [varMerchantDispName] search/replace field is handled on invoices and in the customer license portal for PayPal and non credit card orders.
  • For compatibility with some EU based accounts, the Authorize.NET integration now passes the customer email to Authorize.NET for authorization and sale transactions.
  • The order processor now supports the Update License Counter rule setting when used in conjunction with the Require License ID setting.
  • Several fixes/enhancements to the new .NET order processor:
    • The email customer functionality has been updated to correctly set the [varMerchantDispName] search/replace field for the mailings based on the payment method.
    • The email customer functionality has been refactored such that the logic to generate the customer order notification email is now standalone and no longer dependent on the shopping cart, allowing it to be used outside of order processing to resend order notifications to customers.
    • The resend invoice functionality on the invoice and license details pages has been updated to use this new implementation for generating the emails when SOLO is configured to use the .NET order processor to send customer email notifications.
    • The plugin processing functionality has been updated with some additional code to more easily allow testing error conditions.
    • The SOLO_GetOrderCompleteHTMLForProdOption stored procedure has been added to SOLO. This was overlooked in the prior build.
    • The single order confirmation mailing now supports the existing [varLatestVersion], [varLicenseCounter], and [varOriginalLicenseID] search/replace fields.

SOLO Server 1.14.1.0
Released March 20, 2014

-Enhancements/Fixes

  • The fatal error handler for the PayPal processing page now returns a 500 error to PayPal so that PayPal will retry the transaction.
  • A C# sample application is now available to demonstrate accessing the reports programmatically.
  • CustomerServiceServer.dll and WebObjects.dll are now installed with the daily processor as part of the database installation.
  • The order confirmation page no longer shows the Payment Information section when the payment method is PayPal.

SOLO Server 1.13.3.4
Released February 19, 2014

-Enhancements/Fixes

  • SOLO has been updated to target the .NET 4.0 framework.
  • The FileVista control used on the file management page has been replaced with the newer FileUltimate control, which is compatible with Internet Explorer 10 and up. Note that this newer version no longer supports Internet Explorer 6.
  • The ActiveReports component used for report generation has been upgraded from version 6 to version 7.
  • The product serial number check daily process now excludes disabled products.
  • A new Pending Payment Plan Notification daily process has been implemented which will send notifications to customers who have payment plan instances due to be billed in the near future.
  • A new .NET based printable invoice page has been added to the customer license portal which is integrated with the customer session implementation. All links to the old printable invoice pages have been updated, and redirects have been implemented on the old invoice pages.
  • The Activation Data Export Report now correctly includes the IP address for rejections.
  • The XmlLicenseService.InfoCheck web method now only returns licensee data when a password is provided.
  • The SOLO_GetCustomerServiceRenewalsAndUpgrades stored procedure used to gather upgrade/renewal options in the customer license portal has been updated to allow optionally returning upgrades with Display Upgrade set to false for use in custom integrations.
  • The update check functionality (updatecheck.asp and XmlLicenseService.UpdateCheck) now returns update data when supplied with only a ProductID to allow update checks to be performed for trials.
  • The XmlLicenseService.UpdateCheck web method now returns the values parsed from the existing URLFile element in separate elements to eliminate the need to parse the URLFile string.
  • The add product wizard now defaults the Issue Installation ID checkbox to checked.
  • Fix for an issue which would cause an overflow exception when adding a manual license if the ProdOptions table has been reseeded past a 16 bit integer value.
  • The build script has been updated to remove reference to the ASP Session object from the generated VB code.
  • The zip files used to distribute the SOLO installers now include a copy of the current blankWeb.config template file, allowing users to diff and merge in changes into web.config prior to upgrading SOLO.
  • Several fixes/enhancements to the payment plan processor:
    • When updating the original license expiration date on success or updating the original license status on failure, the Modified By and Modified Date fields are now set.
    • "Transitioned" payment plans created by purchasing an online renewal which ties a payment plan to the original license are now supported.
    • The processor now detects if any of the original licenses tied to the payment plan has a non OK status. When detected, the payment is not attempted, an email notification is sent to an administrator, and the payment plan instance is disabled.
  • Several fixes/enhancements to the author billing pages used internally for billing Instant SOLO monthly fees:
    • The old classic ASP monthly summary report has been removed and replaced with the newer .NET version of the report.
    • The expiration date on the placeholder license for the monthly fees is now correctly set to the current date without the time component.
    • The email content is now pulled from the mailing specified by a new BillingMailingID web.config entry.
    • Fix for an issue parsing the first/last name from the billing contact name.
    • The shipping information is no longer populated on invoices, while the credit card first/last name now are (when available).
    • Fix for an issue where an exception would occur if the billing amount contained a comma.
  • The classic ASP error handling now optionally supports detecting corrupted database connections in the ASP connection pool, logging an event to the application event log when this condition is detected. Corrupted connections can occur when connectivity issues with the database server sever a connection in the ASP connection pool, however ASP does not detect this condition, leaving the corrupted connection in the connection pool and resulting in ongoing connection failures. This requires advanced configuration and should only be enabled if experiencing this condition and per instructions from Concept Software support.
  • The code to send the customer and author email notifications as well as perform plugin processing has been migrated to the new COM callable order processor.

SOLO Server 1.13.3.3
Released December 16, 2013

-Enhancements/Fixes

  • The registration page and change password page in the customer license portal now display a message urging the user to choose a random password as it will be visible to support personnel.
  • The delete license and invoices step of the daily maintenance process has been updated to purge cart items associated with any licenses to be deleted through the RuleLicenseID.
  • The view catalog/cart icons/links in the default cart storefront are now hidden for printing.
  • Audit data for Authors, Licenses, Products, and Product Options can now be viewed and exported through the SOLO authors interface when auditing is enabled.
  • During order processing, the rules engine will now copy over any licensee information from the existing license to the new license when a RuleLicenseID is present.
  • The database logic for the getlicensestatus.asp script has been optimized.
  • The SOLO_CreateRejectedActivation stored procedure has been dropped as it is no longer used.
  • The XmlLicenseService Add, Register, UpdateRegistration, InfoCheck, and ValidateRegistration web methods now support the new licensee email and licensee name fields.
  • Support has been added for a SOLO scalable cloud license type which can be installed on any number of servers.
  • The stored procedure and database indexes used by the activation velocity checks have been refined for better performance.
  • Numerous corrections and enhancements to SOLO server's internal licensing code.
  • The installer now configures the web.config file to allow 300MB uploads to the storefront and ESD directories on fresh installs.
  • Fix for a broken link to the topic on the XML License File Service topic in the Web Services Overview topic of the manual.
  • The XmlLicenseFileService.GetLicenseFile web method now correctly returns error 5022 if the license is expired and fails system clock validation.
  • The license agreement for self hosted versions of SOLO has been updated. After upgrading, users will be required to accept the new EULA at first login.
  • A new topic on the installed SOLO components has been added to the manual.
  • Protection PLUS 5 license files now include the LicenseeEmail and LicenseName elements when they are populated.
  • Extended error messages regarding correct formatting of postal codes has been added for countries which have extended postal code validation. When the format is incorrect, users can now click a More Info link with details as to the proper format for the given country.
  • Fixed the check in the upgrade script to convert ProdOptionRule.VerifyDownloadExpiration date to an int to ensure this only runs when not already applied.
  • The customer registration/edit page in the customer license portal now displays additional information regarding the EU VAT Number.
  • The HttpErrorHandler component which handles errors which occur on ASP.NET based pages now ignores 404 Not Found errors unless the new EnableNotFoundErrors entry in the configuration file is enabled.
  • The One to One Match rule option has been renamed to Quantity Mode and now offers three options:
    • None - No quantity validation is done, and the customer can purchase any quantity regardless of the quantity of required licenses they own.
    • Limit to Quantity - The customer can only purchase up to the quantity of required licenses they own.
    • One to One Match - The customer must purchase exactly the quantity of required they own.
  • The customer license portal renewals and upgrades page now specifies a quantity matching the original license quantity when adding the cart item if the rule specifies an exact one to one match.
  • Enhancements to the new .NET based order processor:
    • A new COM callable .NET order processor has been created. This will allow introducing the .NET code on the classic ASP side of things rather than requiring a redirect, which was causing issues in certain scenarios.
    • The code to finalize processing (deleting the cart, updating the cookies, and redirecting to order completion) has been refactored on both the ASP and .NET side of things to work with the new COM callable architecture.
    • The code to send distributor notification emails has been migrated to the new COm callable processor.
    • The installer has been updated to install the proper .NET assemblies to the DLLS subdirectory of the install location.

SOLO Server 1.13.3.2
Released October 31, 2013

-Enhancements/Fixes

  • Corrected an incorrect file name for the new SOLO_GetCustomerInstallationHistory stored procedure script.
  • The advanced cart options manual topic now notes the HTML escape sequences to use for the currency prefix for pound sterling, euro, and yen.
  • Corrected some syntax issues in the manual topics on the xml web services which arose after upgrading to Flare version 9.
  • Several updates to the customer license portal section of the manual.
  • During activation, if pre-activation plugin processing fails, the extended error message is now logged to the rejection log.
  • The exception handling in the EncryptedWebMethod implementation now properly passes along the inner exception details to the error handler.
  • Extended client side validation has been implemented for the email and phone number fields on the .NET customer license portal edit customer page.
  • Fix for an issue on the customer license portal license details page where the manage installations button would fail to appear unless at least one other button was present.
  • The unit test configuration for SOLO Server has been upgraded to the Visual Studio 2012 format.
  • A new LoggingServer class library for text file logging has been added to the SOLOServer solution.
  • The SOLO Server installer is now built using InnoSetup v5.5.4 (prior version was 5.5.3).
  • The SOLO Server manual is now built using Flare v9.1.2 (prior version was 9.1.1).
  • Extended pricing now works across multiple line items of the same option.
  • On the .NET shopping cart registration page, a message has been added suggesting to users that they choose a randomized password, and a new "Generate Random Password" link is displayed to allow auto-generating a random password.

SOLO Server 1.13.3.1
Released October 15, 2013

-Enhancements/Fixes

  • New Installations and Installation Name settings have been added to the customer license portal options to control customer access to viewing installation data, deactivating installations, and viewing the installation name.
  • A new page for viewing license installation history and deactivating installations has been added to the customer license portal. This can be reached from the license details page through a new Manage Installations button when the customer license portal options are set to allow viewing installation data and the given license is for an option with Issue Installation ID set.
  • The .NET order processor has been updated to properly handle exceptions generated during the DNS reverse lookup for the author order notification email.
  • The "Verify Download Expiration" product option rule option has been changed to a "Download Expiration Availability" Option. This updated option now allows upgrades renewals to be available always, only when the original license is non-expired, or only when the original license is expired (taking the expiration grace period into account).
  • The primary key of the FraudEmail table now uses a clustered index rather than a nonclustered index.
  • Options with a quantity mode of multiple activations are now supported with payment plans. Previously, while you could use this quantity mode with payment plans, SOLO would treat the option as multiple licenses quantity mode during checkout and order processing.
  • Fixed an issue where in some cases the customer license portal options page would display the incorrect custom markup in view mode and default select the incorrect custom markup in edit mode.
  • Fixed an issue in the .NET customer license portal where editing an existing customer causes the template to revert to the default on the redirect to the customer home page.
  • URL validation now allows bracket characters to support search/replace strings.
  • Updated the .NET order processor to properly display the message at the top of the default customer notification email for prepaid orders.
  • The ASP shopping cart now supports cross author carts when the AllowCrossAuthorPromotions configuration entry is enabled.
  • The XmlLicenseService.InfoCheck web method now includes RemainingDeactivations in the result document.

SOLO Server 1.13.3.0
Released September 18, 2013

-Enhancements/Fixes

  • Fix to the build script to properly generate the differential folder containing user customizable files that have changed.

SOLO Server 1.13.2.3
Released September 13, 2013

-Enhancements/Fixes

  • The step to send the customer email notification during order processing has been rewritten in .NET.
  • Several changes to the build script to automate the process of generating a base upgrade package as well as eliminate the use of version numbers in the file naming conventions.
  • A customization hook has been added to the SOLO_GetCustomerSubscriptionExpirationNotificationData stored procedure.
  • The configuration entry controlling the maximum upload size when managing Storefront/ESD files has moved from the authors/FileVistaControl folder to the root web.config file.
  • The ESD feature is now partially integrated with Amazon S3. When managing ESD files in the author interface, the files can be optionally mirrored to an Amazon S3 bucket.
  • Bug fix for an issue with the .NET order processor where the author email notification would not contain the invoice if no confirm email invoice template was configured on the cart options.
  • The WebComponentPages rendering and client side framework have been updated to support displaying a More Info link on custom error messages which when moused over will display additional information on the error.
  • Master users can now specify creating new shopping carts in single mode on the view catalog page.
  • Fix to the network session implementation to address an issue where passwords greater than 10 characters were being truncated.
  • The manual topics on the product and product option configuration have been updated to clarify that the Order Confirm HTML will be displayed on the customer license portal license details page unless overridden by the Customer License Portal HTML.
  • The manual topic on the payment plan fields has been updated to note that for PayPal Payments Pro, if not storing full credit card numbers, the reference transaction will be invalidated after one year, and in this scenario a yearly plan should be configured a few days short of a full year to allow for retries.
  • Several Enhancements to the manual topic on managing storefront and ESD files.

SOLO Server 1.13.2.2
Released August 21, 2013

-Enhancements/Fixes

  • On fresh installs, the default daily maintenance process is now automatically configured in the database.
  • Several web.config entries that are no longer in use have been removed.
  • Database indexes have been added for the RuleLicenseID column on the CartItems and Licenses tables.
  • The EmailList.Add method now checks if the name/email combination already exists in the list before adding to the list.
  • The default invoice templates have been updated to correct some rendering issues in certain browsers.
  • The authorization code on invoices and returned from the InvoiceServer.GetInvoiceXml web method no longer has the last 3 characters masked.
  • Email address validation throughout SOLO has been adjusted so that certain valid email addresses previously blocked as invalid are now properly validated.
  • The portions of the shopping cart order processor to send the author notification email, the distributor/affiliate notification email, and to clean up the cart and redirect to order completion have been rewritten in .NET.

SOLO Server 1.13.2.1
Released July 17, 2013

-.NET Customer License Portal Enhancements/Fixes

  • Fix for an issue where changes to a back end class shared by both the license details and manual activation pages broke the manual activation page.
  • When downloading a Protection PLUS 5 volume or downloadable license for the first time, the initial activation to generate the installation record for the license no longer decrements the activation count, and the activation record is flagged with the LICDL exception to indicate this in the activation history.
  • A new "Filter history on Issue License" customer license portal option has been implemented. When this option is set, the license history page will only display licenses for product options with the Issue License option set. This will default to true (the current behavior) for all existing accounts.
  • The license details page now supports displaying Assigned from List and Auto Increment serial numbers.
  • The upgrades and renewals page now sorts the upgrade/renewal options by the Option Order setting of the product options.
  • Fix for an issue with the upgrades and renewal page where the license option would appear as an upgrade rather than the option with Upgrade From set to the license option.
  • The license details page no longer displays the password unless the license option has Issue License enabled.
  • The license history page now supports displaying the licensee fields when populated and viewing is enabled.
  • The license details page no longer displays activation/deactivation counts for option types with no activation (downloadable/shipped goods, transaction/service fees).
  • The login mechanism now validates the passed in AuthorID is valid and the author is enabled with an open account before attempting to repair any missing database links between the customer and author records.
  • The log in and new customer creation mechanisms in have been updated to bypass updating the last login fields on the customer record when an author session is present, as well as to set these fields when a new customer is created.

-.NET Shopping Cart Enhancements/Fixes

  • The product option details page no longer requires the option to have For New Customers enabled.
  • The PayPal PayFlow Pro integration now supports passing the PayPal Partner BN Code to PayPal through a new PayFlowBNCode web.config entry.
  • When PayPal is the only available payment method, the payment page is now bypassed and the user is taken straight to the confirmation page. In addition, the "Place Order" button has been updated to read "Proceed to Payment" in this scenario.
  • Fix for an issue where shipping would still appear on the cart and order confirmation pages after removing all shippable items from the cart.
  • The AllowCrossAuthorPromotions web.config entry now also controls whether items from multiple authors can be added to the shopping cart. When disabled, the shopping cart will now disallow mixing items from different authors. When an item from a different author is added the the cart, the cart will now be cleared of all existing items and changed to use the author of the newly added item.
  • The log in and new customer creation mechanisms have been updated to bypass updating the last login fields on the customer record when an author session is present, as well as to set these fields when a new customer is created.
  • Fix for an issue where logging into the shopping cart as a distributor user while also logged in as an author user would fail.

-Other Enhancements/Fixes

  • The purchasing URLs page no has been updated to display links for the .NET customer license portal login page and the .NET shopping cart EULA page. In addition, links to the older FAQ page have been removed as this functionality is deprecated.
  • The daily maintenance daily process now supports a new PurgeAuthorLoginAudit step which optionally purges all author LoginAudit records which are no longer in the scope of the author login velocity check.
  • When accessing reports programmatically, the ReportType parameter is no longer case sensitive.
  • The dates displayed on the author home page are now displayed as blank values when not yet populated rather than 1/1/0001.
  • The web methods on the XmlNetworkFloatingService web service now return the error message in the ErrorMessage element.
  • The customer search page has been updated to support searching for licenses on the new licensee name and email fields.
  • A new ManagedAddAuthors web.config entry has been added for hosted SOLO instances which controls whether new authors can be added to SOLO.
  • A new Use NET Processor option has been added to the account options page which controls whether the account uses the new .NET order processor (currently in development).
  • The payment plan processor has been updated to properly handle payment plans associated with multiple licenses through being sold as a bundle.
  • All references in code to the ConfigurationManager.AppSettings object have been replaced with calls to the appropriate method on the ObjectDataAccess.ConfigrationDataMethods class.
  • The manage groups page now displays a warning when a user attempts to set their current user group to read only.
  • Unit tests have been implemented for the DataAccess.DataMethods, DataAccess.SQLDataAccess classes.
  • Unit tests have been created for the ObjectDataAccess.ConfigurationDataMethods class.
  • The upload image form for author, product, and product option images has been updated with improved security measures.
  • Fix for an issue with parsing the form data on the knowledge base search page.
  • The original querystring which is logged during shopping cart creation for online orders can now be viewed by master users on the invoice details page.
  • The customer export feature on the customer search page now requires Report Access permission.
  • A new COM interop .NET class has been added for generating invoice markup for use in classic ASP based pages. To enable this, set the undocumented UseInteropInvoice application variable in global.asa to true. Note that this is still in beta, and should not yet be used in production.
  • The ConfigurationDataMethods class now supports overriding the default AppSettings collection with a custom built collection or a collection loaded from a specified configuration file.
  • Client side validation of the state/province and postal code address fields now ensures no invalid foreign characters are present.
  • The HttpErrorHandler has been updated with a new SOAP extension for catching errors in the SOAP pipeline.
  • When no payment details are stored, the invoice details page no longer defaults the payment name/address to the values from the customer record in view/edit mode.
  • The AllowCrossAuthorPromotions web.config entry is now optional and will default to false when omitted.
  • The SOLOServer development project has been upgraded to Visual Studio 2012.
  • The installer is now built using InnoSetup version 5.5.3 and the installer project has been converted to use InnoSetup Studio.
  • The manual is now built using Flare version 9.1.1. In addition, several changes were made to the manual to prevent compiler warnings building the PDF version with the latest Flare version.
  • The build process has been upgraded to Visual Build 8.4.
  • The build process now uses SmartAssembly version 6.8.0.121 for the obfuscation step.

SOLO Server 1.13.2.0
Released May 24, 2013

-Enhancements/Fixes

  • Fix to the monthly summary report to address an issue where the monthly processing fee was being incorrectly applied.
  • The monthly processing fee is now included in the monthly processing QuickBooks export.
  • The SWKeyFileWatcher and SslCertificateExpirationNotification applications have been moved from the SOLOServer project to an internal project as they aren't SOLO specific.
  • Error handling has been updated to return a 500 Error response on the PayPal processing script so that PayPal will retry in the event of a fatal error.
  • The manual topic for the XmlLicenseService web service has been updated to specify an empty namespace on the root element of the all sample input xml fragments.
  • Fix to address an issue where the rules engine on the .NET shopping cart was not correctly verifying the existing license expiration date.
  • Fix to address an issue where certain SOLO instances were missing a CustomerValue record, resulting in foreign key constraint violations.
  • The Licenses by Product report now returns the new LicenseeName and LicenseEmail fields on the License record as LicenseLicenseeName and LicenseLicenseeEmail.
  • A new Ping.aspx page in the webservices directory is now available for use by Protection PLUS 5 server connectivity tests.
  • The customtop.asp and customerrorhandler.asp scripts have been updated to correctly reference the new SOLOCOMInteropServer object.
  • The XmlCustomerService.GetCustomerDataByAuthor web method now supports returning the customer password with the customer data.
  • The SOLOBuildHelper has been updated to gather files required for an emergency rollback.
  • The section on the manual outlining payment plans has been revised.
  • The EULA displayed by the installer has been updated to the latest version.

SOLO Server 1.12.2.1
Released May 8, 2013

-Instant SOLO Enhancements/Fixes

  • For the Instant SOLO shared instance, when adding an invoice, global or master users will now be prompted to confirm they want to add the invoice to the current author in order to help prevent accidentally adding an invoice to the incorrect author.
  • The envelope expiration date field on the hosted SOLO options page is now hidden for Instant SOLO Dedicated URL instances. For the Instant SOLO shared instance, this is now hidden when viewing the options if Protection PLUS 5 Access is enabled, while when Protection PLUS 5 Access is disabled, the value will be displayed red or green based on whether the date is expired.
  • When editing billing details in Instant SOLO, updating the credit card details is now optional unless the account is locked out due to a decline of the credit card on file.
  • The SWKeyFileWatcher service has been updated with improved exception handling to prevent crashes due to System.IO.FileNotFoundException exceptions.
  • On Instant SOLO, Protection PLUS 5 product option types are now available in the drop down on the product option configuration page during the Protection PLUS 5 evaluation period.

-New Licensee Fields on Licenses

  • New Licensee Name and Licensee Email fields have been added to the license settings to store licensee information for licenses used by someone other than the license owner.
  • These new fields are now viewable/editable on the licensed details page in the authors interface.
  • A new Licensee Fields setting has been added to the customer license portal options to control whether customers can view and/or edit the new License Name and Email fields on their licenses.
  • The customer license portal license now allows customers to view/edit the licensee details based on the access level set in the customer license portal options.
  • The subscription expiration notification daily process now supports new [varLicenseeName] and [varLicenseeEmail] search/replace strings for the new fields on the license.

-Authors Interface Enhancements/Fixes

  • A missing Customer ID label has been added to the manual activation page in the authors interface.
  • When editing their own account on the user configuration page, users will now be prompted for confirmation when changing a setting which may potentially lock them out of SOLO.
  • The add author page has been reworked and no longer shares logic with the Instant SOLO signup page. In addition, the page now includes a check to ensure that an author cannot be added if adding the author would exceed the number of authors allowed by the SOLO Server license.
  • Links on the product edit page to the mailing configuration page now open in a new window.
  • The AuthorContactInfo business object has been updated to use the correct EmailAddressUserProperty and PhoneNumberUserProperty types for the phone and email fields, as well as StringSelectUserProperty for the country.
  • Links on the product edit page to the mailing configuration page now open in a new window.
  • The warning message on the product option configuration page regarding the fact that Issue Installation ID must be checked if using Protection PLUS 5 is now displayed at all times rather than based on the Protection PLUS 5 Access setting of the author (which only pertains to hosted instances going forward).
  • Fix to address an issue where the listing of product level mailing associations was incorrect when attempting to delete a mailing associated with multiple products.
  • Fix to address an issue with the sales tax configuration page where a global tax rule would not appear in the list if no other country specific tax rules were specified.
  • Fix for an issue on the bundled product configuration page where all labels would display in red if server side validation failed.
  • Fix for an issue where the manage files page was incorrectly requiring the SOLODirRoot web.config entry and throwing exceptions when it was missing.
  • A new [varLatestVersion] search/replace for the product latest version field is now supported for custom license mailings.
  • The Order Confirm HTML and Customer License Portal HTML fields on both products and product options now support a new [varOriginalLicenseID] search/replace parameter. Intended for use with upgrade or renewal licenses purchased through the rules engine, this is replaced with the original LicenseID that was used to purchase the upgrade or renewal.
  • HTML markup is now allowed in the content of author notes.
  • Fix for an issue on the mall catalog product option editing page where changing the price of an option contained within one or more bundles was not properly updating the pricing on the bundles.

-Reporting Enhancements/Fixes

  • Fix for an issue where the jQuery date picker on the unshipped orders report did not work correctly.
  • The sources report now includes source values from the free form text field.
  • The activation data export now includes the customer email address when generated in XML or CSV format.
  • The monthly summary report has been converted to .NET.
  • Drop down options on several .NET based reports have been changed to radio button arrays.

-.NET Customer License Portal Enhancements/Fixes

  • The customer license portal login and forgot password pages have been updated to better handle scenarios where a customer associated with one author attempts to log in or retrieve their password under the context of a different author.
  • Fixed a few rendering issues with the Order Confirm HTML and Customer License Portal HTML custom markup on the license details page.
  • The ManualRequest.aspx page in the customer license portal has been updated to work behind a hardware load balancer/SSL offloading appliance.
  • When reached with an AuthorID in the querystring, the customer license portal manual request page will now maintain the AuthorID on post back so the author storefront markup is maintained after submitting the page.
  • The text inputs for the "Login Name or ID" and "Email Address" fields on the customer license portal log in page have been widened. In addition the "Login" button now reads "Log In" for consistency with other areas in SOLO.
  • Fix for a rendering issue with certain versions of Internet Explorer 8 and lower on the customer license portal log in page.
  • Several typos on the customer license portal manual request page have been corrected.
  • The license details page now supports displaying Assigned from List and Auto Increment serial numbers.

-Shopping Cart Enhancements/Fixes

  • A new Sales Tax Label cart option is now available for the .NET shopping cart which allows specifying the label used on the shopping cart and invoices for sales tax.
  • The .NET shopping cart registration page now uses a unique ID attribute on the table elements for "Select Email Notifications" as well as the email notification message at the bottom so they can be hidden through CSS.
  • Fix for an issue in Chrome and Internet Explorer where the hidden submit button on the checkout pages in the .NET shopping cart used to ensure pressing the Enter key submits the to the next rather than previous page was appearing with certain storefront markup.
  • Fix for an issue in the classic ASP cart where a $0 priority code would generate an exception when pricing the cart.
  • When only global tax rules are configured, the .NET shopping cart will now calculate and display the sales tax prior to the customer logging in or creating an account.
  • Fix for an issue where an author using PayPal Payments Pro as the merchant account would incorrectly be identified has not being configured to accept recurring payments on the classic ASP cart.
  • A check has been added to the PayPal processor to send an error email notification for Instant Payment Notifications for transaction types and payment statuses that are not currently supported.
  • The .NET shopping cart now allows directly linking to the product and option catalog pages for hidden products.
  • Fix for an issue on the .NET shopping cart where the product option unit price is displayed rather than the override unit price when an override unit price is specified.
  • Fix for an issue in the order processor where receipt generation failure would incorrectly attempt to create a declined order record.

-Activation Enhancements/Fixes

  • When activation through the ActivateInstallation or ActivateInstallationLicenseFile fails with result code 5016 (Deactivated Installation), the deactivated Installation ID is now logged in the exception details.
  • When activation through the ActivateInstallation or ActivateInstallationLicenseFile fails with result code 5022 (Invalid System Time), the client date/time is now logged in the exception details.
  • Fix to address an issue with ActivateInstallationLicenseData class not property loading the activation history when used with an activation plugin.
  • Fix to address an issue with ActivateInstallationLicenseData class throwing an exception when no activation data is present when used with an activation plugin.
  • Updates the activation implementation to more efficiently determine if the activation is the first activation on the license.

-Web Service Enhancements/Fixes

  • The updatecheck.asp script as well as the XmlLicenseService.UpdateCheck/UpdateCheckS web methods no longer verify download expiration for non-expiring options (Days to Download of 0), regardless of whether the VerifyDaysToDL parameter is set to true.
  • The XmlNetworkFloatingService web service now supports returning the passed up SessionCode for client side validation.
  • The ActivateInstallationLicenseFile and GetLicenseFile web methods now support enabling/disabling encryption of the license file content through a new EncryptLicenseFiles setting on the AuthorEncryptionKey table. This is an advanced option, and is enabled by default. To disable encryption, this must be manually overridden by directly updating the database.
  • The XmlCustomerService.GetCustomerDataByAuthor web method now supports a new LicenseID input parameter to allow looking up customer data by LicenseID rather than CustomerID.
  • The stringpost.asp script has been updated to truncate string values greater than the maximum length of 100 characters rather than generating an exception.
  • The demo_status.asp script has been updated to validate the passed in ProductID and display a failure result code if the ProductID is invalid rather than throwing an exception for an invalid ProductID.
  • The XmlCustomerService.CustomerSearch web method now supports a new Global input parameter which when set to True will perform a global rather than author specific search if the user account used to access the web method has global access permission.
  • Added missing exception handling to the XmlCustomerService CustomerSearch and CustomerLogin web methods.
  • A new Ping.aspx page in the webservices directory is now available for use by Protection PLUS 5 server connectivity tests.

-Daily Processing Enhancements/Fixes

  • A new Customer Subscription Expiration Notification daily process is now available to send consolidated license expiration notifications on a per customer basis.
  • Fix for an issue with the product serial number check daily process where notifications would no longer be sent after the number of remaining serials reached zero.
  • The payment plan processor now supports setting the Activations Left on the newly added license to the Activations per U/M of the installment option.
  • Several daily processes now offer the option to either send or not send the administrative summary email if no emails are sent. By default, emails will no longer be sent if no data is found.

-SOLO Server Licensing Enhancements/Fixes

  • Fix for an issue where an improper redirect could be issued when SOLO Server license validation failed.
  • When SOLO is not yet activated, the License ID on the activation page now defaults to a blank value rather than 0.
  • The server license page no longer displays the signature date when SOLO is not activated.
  • When verifying the SOLO Server license, references to the registry are now explicitly closed.
  • The SOLO Server license page now displays the expiration date for trial licenses.
  • The "PLUSManaged Support" label on the server license page has been changed to read "Protection PLUS 5 Support".

-Database Enhancements/Fixes

  • A customization hook has been added to the SOLO_GetCrossProductMarketingData stored procedure.
  • The SOLO_UpdateCartOptionsByAuthorID stored procedure has been removed as it is no longer used.
  • A composite primary key on AuthorID/DistributorID has been added to the AuthorDistributorLink table.
  • An index on the AuthorEncryptionKey.AuthorID column has been added to speed up encryption key look ups by AuthorID.
  • Unused code in the SOLO_GetCustomerServiceLicenseHistory stored procedure which was resulting in query timeouts has been removed.
  • A covering index has been added to the AuthorNotes table for queries on note counts on the author home page and the SOLO_GetAuthorSession stored procedure.
  • A covering index for the login velocity check has been added to the LoginAudit table.
  • A customization hook has been added to the SOLO_ValidateCustomerLogin stored procedure.
  • The old CreateSOLODatabase.sql script which previously was used to install the database schema has been removed.
  • An output parameter has been added to the SOLO_DuplicateProdOption stored procedure to enable this to be more easily used from custom scripts.
  • The SOLO_PurgeSessions stored procedure used to purge expired AuthorSession records during daily maintenance no longer rebuilds the indexes on the AuthorSession table after the purge as it is not necessary.
  • The rebuild full text index step has been removed from the daily maintenance process. This is no longer needed as the index is configured with automatic change tracking.
  • The portion of the daily maintenance daily process which deletes licenses and invoices marked for deletion has been updated to only attempt to perform the deletions if applicable records are found. Previously, this would attempt deletions regardless, which would result in unnecessary table locks which could in turn result in database timeouts from the SOLO web application.
  • Triggers to enable one time use priority codes starting with the prefix "#" are now installed to disk by the installer. These must be manually installed on the database.

-Auditing Enhancements/Fixes

  • Support for auditing changes to the Products and ProdOptions table has been added.
  • The audit export report now supports exporting product and product option audit data.
  • The view audit page now supports product and product option audits.
  • The auditing triggers for the Authors, Products, and ProdOptions tables now support multi-row updates.
  • The view audit page now supports list mode with paging.
  • Fixed several incorrect redirects for error conditions on the view audit and audit export pages.
  • Fix to the display audit page to display an error message rather than throw an exception if an invalid ID is passed in.
  • Several updates to the online manual regarding auditing features.
  • Fix to the Authors, Products, and ProdOptions audit triggers to correct an issue where the Windows username would be truncated to 10 characters when auditing changes made through SSMS.
  • Several author audit events have been corrected to properly log the UserID making the change as well as to prevent creating duplicate audit records.
  • The audit trigger on the Products table now filters out updates which only increment the HitCountDemo column.
  • Fix for an issue on the view audit page where an exception would be thrown if a text column within the audit changed from a blank to a non-blank value and vice versa.
  • All actions which modify a Products or ProdOptions record now record the Modified By user and Modified Date for use with the new auditing functionality.
  • Fix for an issue with the trial sign up script and the new audit trigger on the Products table not working together correctly and generating exceptions.

-Installer Enhancements/Fixes

  • For fresh database installs, the install script no longer calls the now removed SOLO_AuthorSignup stored procedure to add the default author, logins, and groups and instead directly inserts the records.
  • Fix to correct an issue with the database installer failing to authenticate when using SQL authentication.
  • The SOLOInstallHelper.exe helper application used by the installer to install/upgrade the SOLO database has been updated to reflect some file extension changes after the move of the SOLO source code to a new SubVersion repository.
  • The SOLOInstallHelper has been updated to build file and directory paths using Path.Combine rather than string concatenation.
  • Fix to the installer to address an issue where the impersonation element in web.config was not set properly on fresh installs.
  • The database installation/upgrade process has been updated to eliminate false positive warnings/errors from being logged. Warnings due to dependent stored procedures not yet being installed when installing the stored procedures are now suppressed, and the stored procedure install scripts for stored procedures used with the integrated SOLO forum have been updated to only grant execute permission to the Forum user if the user is present in the database.
  • The installer no longer displays the system databases in the drop down when prompting for the database details.
  • The 7/2012 security update patch has been updated to correctly handle the scenario where the installer registry key is missing by prompting the user for the SOLO root directory.

-Online Manual Enhancements/Fixes

  • Numerous updates to the installation and system requirements topics in the online manual.
  • The manual topic on merging customer records has been upgraded to note that the customer information from the customer being edited will be retained. In addition, the instructions on customers adding a license to their account have been updated to reflect the process on the new .NET customer license portal.
  • The manual has been updated to note that when using IE 10, the Manage Files page requires running in compatibility mode to function. A warning is also displayed on the Manage Files page regarding this when accessed through IE10 when not in compatibility mode.
  • The manual topic on the XmlLicenseService.Add web method has been updated to note that UnitPrice, Quantity, ActivationCount, and DeactivationCount are required rather than optional.
  • The manual topics on installing SOLO have been updated to note the the files will be installed in a SOLO subdirectory of the selected installation location.
  • All references to the deprecated mailing list functionality have been removed from the manual.
  • The manual topic on author contact details now contains information on the Support HTML field.
  • The manual topics for the XmlActivationService, XmlCustomerService, and XmlLicenseService web services have been updated to specify an empty namespace on the root element of the sample input xml fragments.
  • The installation instructions for Windows Server 2008 no longer specify installing the directory browsing HTTP feature.
  • The manual has been updated with additional information on file size limits for ESD uploads.
  • The manual has been updated to remove all references to the legacy ASP shopping cart, as support for this will be discontinued in the near future.

-Other Enhancements/Fixes

  • The HttpErrorHandler HttpModule used to handle errors on the .NET based pages has been updated to detect request validation errors and display a friendlier message for these error types.
  • The styling for error messages specific to form inputs on WebComponentPages framework based pages has been updated for modern browsers (Opera, Safari, FireFox, Chrome, and Internet Explorer 9 and above).
  • Support for specifying an SMTP username and password has been added, allowing SOLO to use external SMTP services such as Amazon SES.
  • Fix for an issue where special characters were not properly encoded in calls to the payment gateway in both the SOLO web application and the payment plan processor.
  • The HttpRequestValidatorModule has been updated to apply a request filter to correct web service URLs generated incorrectly by ASP.NET when running behind an SSL offloading appliance.
  • Server side email address validation in the ASP portion of SOLO is now done using a regular expression rather than the 3rd party InaEmailCheck component.
  • Fix for an issue where falling back to the specified pickup directory after a network email delivery failure would generate an exception if SMTP was configured to use SSL.
  • The SOLO Server solution file has been updated to ensure all projects are displayed alphabetically.
  • The ProdCertificates table has been dropped from the database and all references in code have been removed. This feature was only partially implemented before the project was abandoned.
  • Support for WebTrends has been removed.
  • The classic ASP error handler has been updated to return a status of 200 OK rather than 500 Error so that the SOLO error message is displayed rather than the IIS 500 error page in IIS 7 and greater.
  • Fix to address some client side scripting issues which occurred in Internet Explorer 8 and and lower.
  • The second generation WebComponentPages rendering templates have been updated to support overriding the size of text type form fields.
  • The build process has been updated to use InnoSetup version 5.5.1.
  • The logic to retrieve the client IP address has been improved to support multiple X-Forwarded-For request headers (returning the first non private address), as well as to handle the inclusion of the port in the headers.
  • Numerous changes to the build process as well as the installer to account for moving the source code to a new SubVersion repository.

SOLO Server 1.12.2.0
Released August 6, 2012

-Bug Fixes

  • Updated Brazilian Portuguese translations for the .NET customer license portal login page.
  • The online manual topic on Accessing Reports Programmatically is now correctly located in the table of contents under Reports & Exporting Data rather than at the root level.
  • Bug fix to the database install to address an issue where the daily maintenance SQL Agent job did not install correctly on SQL Server 2012.
  • A new repair script to repair data corruption caused by a known issue in certain versions of SQL Server 2005 when upgrading through SOLO version 1.12.1.2 is now installed, and the release notes have been updated to note that this script must be run manually if the SOLO database is running on a SQL Server 2005 instance.
  • Bug fix to address an issue where the XmlCustomerService.CustomerLogin web method threw exceptions due to changes in the SOLO_CustomerLogin stored procedure.

SOLO Server 1.12.1.2
Released July 25, 2012

-Online Manual Updates

  • Source code for the manual has been moved to a new SubVersion repository.
  • Several changes to the build script have been made as a result of the move of the source code to the new SubVersion repository.
  • A new topic has been added for the email license page, and a context sensitive help link has been added to the page itself.
  • A new topic on calling .NET based reports programmatically has been added.
  • The topic on the database schema has been removed.
  • Several corrections/clarifications have been made to the topic on the product option configuration.
  • The topics on web services have been reworked and improved.
  • The section on the SOLODirRoot option in the topic on the web.config file options has has been updated to make note of the fact that cookie paths are case sensitive and this value should take this into account.
  • All references to PayPal have been updated to reflect PayPal's new naming conventions of PayPal Payments Standard (formerly Website Payments Standard) and PayPal Payments Pro (formerly Website Payments Pro or Website Payments Pro, PayFlow Edition).
  • The topic on the .NET shopping cart querystring parameters has been updated to correctly document the parameters to return to an existing shopping cart.
  • The topics on installing SOLO Server now include additional information on the importance of correctly configuring database maintenance plans.
  • The topics on payment plans and payment plan instances has been improved.
  • The topics for XML based web services have been updated to note that ResultCode -2 indicates malformed xml input was passed to the string version of each web method.

-Protection PLUS 5 Updates

  • Several tweaks to the format of the Protection PLUS 5 XML license file returned by the XmlActivationServer.ActivateInstallationLicenseFile and XmlLicenseFileServer.GetLicenseFile web methods.
  • Bug fix for an issue with the XmlLicenseFileService.GetLicenseFile web method not properly handling certain error conditions.
  • The XmlLicenseFileService.GetLicenseFile web method has been updated to remove some unreachable code.
  • A new Custom Data field has been added to the product option configuration to allow specifying custom data on the option level, and this field is now included in Protection PLUS 5 license files obtained through the XmlActivationService.ActivateInstallationLicenseFile and XmlLicenseFileServer.GetLicenseFile web methods.
  • Support for Protection PLUS 5 trial functionality has been added to the authors interface:
    • The PLUS Managed Access setting on the account options page has been moved to the hosted account options page and renamed Protection PLUS 5 Access.
    • A new Envelope Expiration Date field has been added to the hosted options page to store the trial expiration date for Instant SOLO users.
    • The encryption key data page has been updated to either disallow generating a Protection PLUS 5 encryption key envelope or to generate an expiring envelope based on the hosted account settings for SoftwareKey managed SOLO instances, and based on the SOLO Server license for self managed instances.
  • Support for Protection PLUS 5 trial functionality has been added to the XmlActivationService and XmlLicenseFileService web services:
    • For SoftwareKey managed SOLO instances, calls to the XmlActivationService.ActivateInstallationLicenseFile and XmlLicenseFileService.GetLicenseFile web methods will be accepted or rejected based on the Protection PLUS 5 Access and Envelope Expiration Date settings on the hosted account options page.
    • For self managed SOLO instances, these calls will be accepted or rejected based on the SOLO Server license.

-Reporting Enhancements/Fixes

  • The license audit export report now includes the customer company name in the output when not run against a specific License ID.
  • The Adobe Acrobat and Excel versions of the activations report now include additional hyperlinks on the columns containing the counts to allow exporting activation data specific to the given product/product option and column.
  • The licenses by product report restricts the value of the status check days back setting to the value of the MaximumReportingDays web.config setting when this value is set.
  • The metering summary report now supports the global access permission when being run for a specific customer.
  • The activation log page now includes an Export link, which links to a new mode of the activation data export report. When reached from this link, the activation data export hides the start/end date fields as well as the product drop down, and returns all data for the given License ID.
  • ActiveReports has been updated to use the latest version, which fixes an issue with Excel reports failing Office file validation when the report contains hyperlinks.
  • The new audit export report now correctly sorts the audit records by modified date.
  • When calling .NET reports programmatically as a web method, details of any error conditions are now returned to the caller in an XML document.

-Web Service Enhancements/Fixes

  • The web methods in the XmlActivationService, XmlLicenseFileService, and XmlNetworkFloatingService have been updated to perform the system time check validations as the last rather than first validation step so as not to mask more important error conditions.
  • Bug fix to the XmlLicenseService.UpdateCheck web method to fix an issue where licenses were being considered expired one day early.
  • Bug fix for an issue with the XmlNetworkFloatingService web service to address an issue where result code 5000 (Invalid Encryption Key ID) was being returned in cases where the LicenseID/Password combination or the SessionID was invalid rather than the correct result code of 5005 (Invalid Parameters).
  • Bug fix for an issue with the XmlNetworkFloatingService web service OpenSession web method to address an issue where a session was incorrectly opened on the server when encryption key validation fails.
  • Bug fix to the XmlNetworkFloatingService web service CheckoutSession and CheckinSession web methods to address an issue where encryption key validation was not being performed.

-Database Enhancements/Fixes

  • The database installer has been updated to support SQL 2012.
  • Workarounds for SQL 2000 support have been removed.
  • Several corrections to the schema scripts used to create the database during a fresh install.
  • The stored procedures used to purge test transactions and delete licenses and invoices marked for deletion have been updated to also purge any audit records for licenses to be deleted.
  • Bug fix to the delete licenses and invoices portion of the daily maintenance process to address an issue with a foreign key violation with payment plans.
  • Bug fix to the delete licenses and invoices portion of the daily maintenance process to address an issue with a foreign key violation with refunded licenses.
  • All database columns of the text data type have been changed to use the varchar(max) data type.

-WebComponentPages Framework Enhancements/Fixes

  • Compiled XSLT transforms used for rendering web pages are now cached in the HttpRuntime.Cache object rather than the HttpApplicationState object. In addition, the objects in the cache are now associated with their respective file on disk so they are automatically removed from the cache when the file changes.
  • Bug fix to address an issue in the framework where client side validation of decimal and double values would incorrectly consider a blank value invalid when a value is not required.
  • Rendering of radio arrays has been updated to support giving each radio button a unique ID with which to tie the field the the corresponding label element.
  • The css used for styling radio arrays on WebComponentPages framework based pages has been moved from inline css to the UserComponentPage.css file.

-SSL Offload Support Enhancements/Fixes

  • Bug fix for an issue in the customer license portal where the redirect to the login page for an expired/invalid session did not work properly when SOLO was running behind an SSL offloading appliance.
  • Bug fix for an issue in the authors interface where the menu was incorrectly generating certain links when SOLO was running behind an SSL offloading appliance.
  • Bug fix to address an issue where detection of a secure connection did not work properly when SOLO was running behind an SSL offloading appliance.
  • Bug fix to address an issue with the .NET shopping cart where the redirect to correct the case of the path when incorrect did not work properly when SOLO was running behind an SSL offloading appliance.
  • Bug fix for an issue in the authors interface where the redirect to the login page for an expired/invalid session did not work properly when SOLO was running behind an SSL offloading appliance.

-Shopping Cart Enhancements/Fixes

  • Bug fix to the to address a rendering issue in the .NET shopping cart where the previous/next buttons were not properly centered.
  • Bug fix to the PayPal Payments Standard processing script to address an issue where an exception would be raised for unsupported transaction types rather than being handled cleanly.
  • The shipping page of the .NET shopping cart now correctly formats shipping prices using the currency prefix/postfix advanced cart options when they are specified, as well as properly formats $0 options as $0.00.
  • The .NET shopping cart catalog and order confirmation pages now force a secure (https) connection when reached non-securely through http.
  • Bug fix to address an issue with the PayPal Payments Standard and PayPal Payments Pro payment gateways where transactions would fail in cases where the tax amount was greater than the subtotal due to store credits covering a portion of the pre-tax total.

-Customer License Portal Enhancements/Fixes

  • The .NET customer license portal log in page no longer displays the option to select a login method. Instead, the user is now asked for either an Email or a Login ID (which can be a Customer ID, License ID, or Invoice Number), and then determines which value to search on dynamically.
  • The .NET customer license portal login page now supports a new LoginValue querystring parameter which when passed in will auto-populate the login value field on the login form.
  • Bug fix to address an issue with a deprecated server script left in place for backwards compatibility.
  • The lookup charge page now prompts for email address and posts to the forgot password page, which will send an email containing all invoice and license history to the customer.

-Other Enhancements/Fixes

  • The payment plan instance configuration page now allows the distributor currently associated with the instance to be selected even when the distributor is marked as disabled or inactive.
  • The old classic ASP merchant account configuration page has been removed.
  • The merchant account configuration page has been updated to allow selecting the accepted card types through checkboxes rather than requiring building a delimited string.
  • The SOLOInstanceType web.config entry used by SoftwareKey hosted SOLO instances has been updated to support a new InstantManaged instance type. Instances configured with this type will have access to the Hosted SOLO Options configuration page for master users which are not SoftwareKey support accounts.
  • A new User Defined Fields Writable property has been added to the product option configuration which controls whether the user defined fields on licenses for the given option can be written to by the application through the XmlLicenseServer.UpdateUserDefinedFields web method. When not set, it is now required to pass up the AuthorID as well as UserID and UserPassword of a SOLO user to access the web method.
  • All labeling within SOLO has been updated to reflect PayPal's new naming conventions of PayPal Payments Standard (formerly Website Payments Standard) and PayPal Payments Pro (formerly Website Payments Pro or Website Payments Pro, PayFlow Edition).
  • The popup confirmation/warning message displayed when deactivating an installation through the activation history page has been reworded to note that the license will only be permanently banned from activation if the product option is configured to allow re-activation on the same computer.
  • SOLO's licensing implementation has been enhanced as well as updated to use the latest version of PLUSManaged.
  • Reactivating or refreshing the SOLO Server license now clears the the license object stored in the cache.
  • The product option rule configuration page now disables any of the options which require actions during order processing when the simultaneous purchase checkbox is checked. If any are selected when simultaneous purchase is checked, a warning is displayed alerting the user to this and allowing the user to either cancel or continue with the change.
  • The author signup page now forces a secure (https) connection when reached non-securely through http.
  • Forward/back functionality has been added to the new view audit page to allow quickly stepping through the audit history.
  • Both .svg and .webp images types can now be uploaded to the storefront folder.
  • Support for mailing lists has been completely removed from SOLO.
  • The bulk modify license page now allows selecting Upgrade status for all users with permission to access the page, as well as Void, Returned, and Delete status for master users.
  • The license email page now supports a new [varAuthorSerialNumTxt] search/replace variable in the body of the email, replaced with the Author S/N Text field from the license.
  • Initial support for auditing changes to author records has been added.
  • When updating contact or billing information, the automatically generated author note now includes a link to the audit record recording the change when author auditing is enabled.
  • Bug fix to the SOLOBuildHelper.exe used during the build process to address an issue where files added to source control after the current build number would cause the application to fail with an "Version not found" error.
  • Code for generating merchant account drop down lists on ASP.NET based pages has been consolidated and enhanced.
  • The installer now installs AuthorServer.dll with the DailyProcessor.exe.
  • The SOLO authors interface now includes support for Internet Explorer 9 web site pinning.

SOLO Server 1.12.1.1
Released April 30, 2012

-New SOLOInstanceType web.config Entry

  • A new SOLOInstanceType web.config entry has been added. This is used with Instant SOLO and Instant SOLO Dedicated URL instances to enable/disable certain features specific to these instances, and does not apply to self hosted instances.
  • Several features of the author home page specific to Instant SOLO and Instant SOLO Dedicated URL instances have been updated to display based on the new SOLOInstanceType web.config entry:
    • The Bill/Apply Fees, Activate Author quick links, billing information panel, and last credit card test results are now only shown for Instant SOLO.
    • The Edit Instant SOLO Options quick link has been relabeled "Edit Hosted SOLO Options", and is now displayed only for SoftwareKey support accounts on Instant SOLO and Instant SOLO Dedicated URL instances.
  • The author signup page now uses the new SOLOInstanceType web.config entry to determine whether the instance is Instant SOLO. When not Instant SOLO, the new author is created with all options enabled rather than those that are default disabled for Instant SOLO.
  • For Instant SOLO Dedicated URL instances, the server licensing pages are now blocked based on the new SOLOInstanceType web.config entry rather than the BlockServerLicensePages entry, which has been removed.
  • Several features in the author menu specific to Instant SOLO and Instant SOLO Dedicated URL instances are now controlled using the new SOLOInstanceType web.config entry:
    • The Bill Author and Billing Details entries in the Authors Administration menu are now displayed only for Instant SOLO.
    • The Account Options (ISOLO) entry in the Authors Administration menu has been renamed "Account Options (Hosted)", and is now only available for SoftwareKey support accounts on Instant SOLO and Instant SOLO Dedicated URL instances.
  • The redirect to the billing details page for authors with declined credit cards on Instant SOLO is now controlled by the new SOLOInstanceType web.config entry.
  • The user configuration page now uses the new SOLOInstanceType web.config entry to determine whether to disallow viewing/editing/deleting of SoftwareKey support accounts for Instant SOLO Dedicated URL instances.
  • The product configuration page now uses the new SOLOInstanceType web.config entry to determine whether to display the message regarding enabling trial tracking functionality for Instant SOLO.
  • The .NET shopping cart now uses the new SOLOInstanceType web.config entry to determine whether to display the SoftwareKeyInfo.com processor message at the bottom of the page for Instant SOLO authors using SoftwareKey processed payments.
  • Several Instant SOLO and Instant SOLO Dedicated URL specific features are now enabled or blocked based on the new SOLOInstanceType web.config entry:
    • The activate author wizard and billing details pages are now only available for Instant SOLO.
    • The Hosted SOLO Options page is now only available to SoftwareKey support accounts for Instant SOLO or Instant SOLO Dedicated URL instances.
  • Code no longer used after the introduction of the new SOLOInstanceType web.config entry has been removed. In addition, the following web.config entries have been removed:
    • EnableInstantSOLOOptions
    • BlockServerLicensePages
    • AdminEmailDomain

-XmlActivationService and XmlLicenseFileService Enhancements

  • The LicenseFile implementation has been refactored to simplify the code and increase maintainability.
  • The ActivateInstallation implementation has been refactored to consolidate all threshold check logic in a single method.
  • The ProductVersion input parameter validation in the ActivateInstallation implementation has been refactored.
  • The ActivateInstallation and ActivateInstallationLicenseFile implementations have been merged to reduce code duplication.
  • A new database function with a customization hook to retrieve author encryption key data by ProductID has been added. All web method stored procedures which return encryption key data have been updated to use this new function.
  • The XmlActivationService.CheckInstallationStatus and XmlLicenseFileService.GetLicenseFile web methods now update the Last Status Update fields on the license record.
  • Additional details are now logged during activation for several rejection types and are now displayed in the activation log as Exception Details.
  • Protection PLUS 5 xml license files returned by the XmlActivationService.ActivateInstallationLicenseFile and XmlLicenseFileService.GetLicenseFile web methods now include the LicenseUpdate field from the license and now use the license entered date as the EffectiveStartDate.
  • Bug fix to correct an incorrect property implementation in the RejectionLogEntry class.

-Reporting Enhancements

  • The customer statistics report (accessible from the Reports->Customers->New/Repeat menu option) now filters out unregistered customers.
  • Bug fix for a broken link on the Sales by Invoice report in the link to "View all Licenses in Excel Format".
  • The framework for all .NET based reports has been updated to support calling each report as a web service method without the need to be logged into the author interface.
  • Bug fix to remove an unused local variable in the cart report which was conflicting with an author session variable of the same name.
  • The License Counter field is now included in the CSV and XML versions of the licenses by product report.
  • Bug fix to address an incorrect customization hook in the SOLO_Rpt_LicensesByProduct stored procedure.
  • The licenses by product report now includes an additional Status Check Days Back parameter as well as a new ActiveInstallationsPhonedHome field in the CSV and XML report types. The new parameter specifies the number of days back to search active installations which have phoned home to perform a status check, and the new report field contains this count.
  • The .NET reporting framework has been updated to disable caching when viewing the report inline to address an issue with Internet Explorer 9 displaying cached results.

-Shopping Cart Enhancements

  • The .NET shopping cart log in page no longer displays the option to select a login method. Instead, the user is now asked for either an Email or a Login ID (which can be a Customer ID, License ID, or Invoice Number), and then determines which value to search on dynamically.
  • The .NET shopping cart has been updated to eliminate cookie issues due to incorrect upper/lowercase characters in the path by detecting when the path to the page is using incorrect case and redirecting back to the page with the correct path when this is the case.
  • The .NET shopping cart registration page now displays the marketing source list ("Heard From") as a radio button array when the list contains five or less items.
  • The .NET shopping cart shipping page will now display the shipping options as a radio button array when there are five or less options.
  • The Cart.CreateDate field in the database is no longer nullable.
  • Logged in author users can only use any of the Prepaid options on the shopping cart if they have both the Add License and Add Invoice permissions.

-Other Enhancements/Fixes

  • Bug fix to address an issue with the manual activation page where a rejection for Result Code 5029 did not show the error message.
  • SOLO now supports running behind an SSL offloading appliance/server. An new CustomSSLPortEquivalent web.config entry has been added. When populated, requests on this port will be considered secure regardless of whether the connection is actually secure. When configuring an SSL offload appliance, users should choose a unique port number (other than the default of 80) to route inbound SSL traffic to the web server on, and then update the new web.config entry with this value.
  • The author home page no longer displays the Quick Links panel on the right when the user permissions result in no links being available.
  • Bug fix to the edit license page to address an issue where distributors associated with multiple authors would appear twice in the list. In addition, a disabled distributor will now appear in the list if it is already associated with the license.
  • Bug fix to use address several unneeded queries on the product option configuration and license details pages.
  • Bug fix for an issue where country names containing an apostrophe would result in an exception being thrown when trying to look up the country ISO code by country name.
  • The license email page now supports CC and BCC fields, and all email fields now support multiple emails in a comma or semicolon separated list. In addition, breadcrumbs have been added to the page and the continue link has been converted into a button.
  • The author advanced options page now display the Default License Tab setting as a radio button array rather than a drop down list when editing. In addition, the Activation Log option has been removed.
  • The PostEvalData.asp script has been removed as it was never implemented.
  • The messages displayed on the invoice refund confirmation page when the refund must also be processed off site through the merchant interface have been improved.
  • For Instant SOLO users using SoftwareKey processed payments, when refunding a PayPal order, SOLO will now notify our accounting department to issue the refund through PayPal, and the user will see a confirmation message stating the refund will be processed through PayPal within one business day.
  • The sales tax configuration page now displays the Tax Rule Type and Tax Type properties as radio button arrays rather than drop down lists when editing. In addition, the page has been updated to show/hide inapplicable fields based on the currently selected Tax Rule Type, Country, and Tax Type values.
  • The max length of the User ID on the user configuration page has been updated to correct value of 10 (previously 15).
  • The license search on the customer search page now supports searching on the character, integer, float, and date user defined fields. Previously, only the character fields would be included in the search.
  • The License File Name product option configuration setting now supports a [varLicenseID] search/replace variable.
  • When viewing a user on the user configuration page, the last login IP field now links to a URL to perform a lookup on the IP address.
  • The product configuration page has been reworked to allow users with global access permission to easily switch to the product author when the current session author does not match the owner of the given product.
  • The Email Customer functionality available from the "Email Customer" button on the license details page now supports the [varLicenseCounter] search/replace variable, which will be replaced by the value of the License Counter property of the license.
  • The license details page no longer displays the Activation Log tab along the bottom. This has been replaced with the activation history page.
  • The cart options configuration page now displays the Shipping Calculation Method, Tax Calculation Method, Country Match Mode, AVS Security Level, and CVV2 Security Level properties as radio button arrays rather than drop down lists when editing.
  • Bug fix to multiple configuration pages in the authors interface to better handle invalid input data.
  • The new author file archiving daily process now logs an author note after archiving and ignores any authors which already have this note associated with them.
  • The Order Confirm HTML field on the cart options now supports the following new search/replace fields:
    • [varEmail] - Customer email address
    • [varEmailURLEncoded] - URL encoded customer email address
    • [varDateEntered] - Invoice entered date
    • [varDateEnteredURLEncoded] - URL encoded invoice entered date
  • The Coupon/Udef tab on the license details page has been relabeled as "User Defined Fields", along with the corresponding Default License Tab option on the author advanced options configuration page.
  • Obfuscated assemblies are now obfuscated using SmartAssembly 6.6.4.95 rather than 6.1.0.48.
  • The cart options and advanced cart options now include links to each other in the header to allow navigating between the two pages without using the menu.
  • New methods have been added the the XmlBuilderMethods static helper classes which allow controlling how empty elements should be output.
  • The Save Credit Card Info option on the merchant account configuration page is now displayed as a radio button array rather than a drop down list when editing.
  • The payment plan instance configuration page now displays the Recurrence Type, Frequency Interval, Declined Action, and Discount Type properties as radio button arrays rather than drop down lists when editing. In addition, the Fulfillment Action is no longer displayed as it is currently not used. The page has also been updated to show/hide inapplicable fields based on the currently selected Recurrence Type, Discount Type, and Increment License Expiration values.
  • The author level priority code configuration page now displays the Discount Type property as a radio button array rather than a drop down list when editing.
  • The payment plan configuration page now displays the Recurrence Type, Frequency Interval, and Declined Action properties as radio button arrays rather than drop down lists when editing. In addition, the Fulfillment Action is no longer displayed as it is currently not used. The page has also been updated to show/hide inapplicable fields based on the currently selected Recurrence Type, and Increment License Expiration values.
  • Bug fix for several broken links to the online manual on the get ordering URLs page.
  • The license, invoice, and IP address searches now all use the value specified in the LongRunningQueryTimeout web.config entry as the command timeout when running the query.
  • The SOLO online help system is now built using MadCap Flare version 8 rather than version 7.
  • The SOLO build process has been updated to use Visual Build version 8 from version 7.7.
  • The first generation Web Component Pages rendering templates now render the label text for radio array buttons within label elements vertically aligned to the middle.
  • The product option configuration page has been reworked to allow users with global access permission to easily switch to the product author when the current session author does not match the owner of the given product.
  • SOLO now supports running behind an SSL offloading appliance/server which supports the X-Forwarded-For request header. When determining the client IP address, SOLO will first look for the client IP address from the X-Forwarded-For request header before falling back to the standard header.
  • The email notification sent when a duplicate PayPal order for the same shopping cart is detected has been improved to specifically state the order is a duplicate and now includes the invoice number of the successfully processed order.
  • The query used to gather data for the merchant account listing page has been reworked to address slowness issues on high volume SOLO instances.
  • Bug fix to address an issue where adding an author to a mall would also cause the currently selected author to be switched to that author.
  • When deleting a plugin, any product options, distributors, warehouses, or cart options associated with the plugin are now disassociated from the plugin prior to deletion, and the confirmation message now states this.
  • Bug fix to address a rounding issue with the invoice total in the credit card billing reminder daily process.
  • The merchant account configuration page now uses the new client side EnableAndShowRow and DisableAndHideRow functions to show/hide fields based on the selected merchant account type.
  • The author manual activation page now includes a breadcrumb back to the view customer page.
  • Bug fix for an issue where deleting a PayPal merchant account tied to a primary non-PayPal merchant account would result in a foreign key violation rather than being disallowed.
  • The Hosted SOLO Options page (formerly Instant SOLO Options) now displays the Payment Mode, Commission Paid By, and Fees Paid By properties as radio button arrays rather than drop down lists when editing.
  • Bug fix to address an issue where activations through the legacy getcode.asp script would fail when the product author had not yet generated encryption key data for use with the newer XmlActivationService activation interface.
  • Bug fix to the the author manual activation page to correct an issue where the page would display a decremented activation count after a rejected activation when in fact the activation count had not changed due to the rejection.
  • The product order complete mailing now supports a [varLicenseID] search/replace field in the subject.
  • The first generation Web Component Pages framework rendering templates now include support to display SelectUserProperty properties as radio button arrays rather than drop down lists.
  • The trial teaser notification daily process now supports a multiple teaser mode which allows configuring multiple teasers to be sent rather than the current limit of one.
  • The get ordering URLs page now properly displays Instant SOLO/SOLO Server in the title and page text based on the new SOLOInstanceType web.config entry.
  • New license auditing feature:
    • Support for auditing changes made by logged in author users to license records has been added. Note that this is an optional feature and must be manually configured.
    • A new License Audit Export has been added to export change audit history for a given License ID or product.
    • A new ReasonForChange column has been added to the Licenses table to record the reason for change to a given license record. The license details page has also been updated to display this value when populated.
  • The stored procedure used for the customer search functionality has been updated to include the WITH RECOMPILE hint to address an issue where an inefficient query plan was being cached.

SOLO Server 1.12.1.0
Released February 20, 2012

-Enhancements/Fixes

  • The private server key is no longer included in the new envelope format for the author encryption key data.
  • The code to generate the new envelope format for the author encryption key data has been relocated to the SOLOLicensingServer.dll assembly and obfuscated.
  • Fixed a broken link to the manual topic on the merchant account configuration page.
  • Bug fix to remove maximum lengths from the phone and mail order instructions fields on the merchant account configuration page.
  • The manual topic on configuring merchant accounts has been updated to explain how the page works when javascript is disabled.
  • The update script which updates the Licenses table with the LicenseCounter field has been updated to not generate syntax errors when run against a database with this change already applied.
  • The base schema install script for the ProdOptions table now includes the new LicenseFileName column.
  • The install script which installs all of the default data into the database during fresh installs has been updated to take into account recent changes to the MerchantAccount table.
  • A popup warning regarding setting a unit price of $0 has been added to the duplicate product option page.
  • Validation improvements to the add prepaid license and add bulk licenses pages.
  • Fixed a typo on the product option configuration page.
  • The Activate button in the .NET customer license portal is now visible for Protection PLUS 5 downloadable license types.
  • The PayPal processor no longer automatically refunds the invoice and marks the licenses as Fraud when a reversal IPN is received.
  • A new [varLatestVersion] search/replace parameter which is replaced with the Latest Version field of the product is now supported in the following places:
    • The product Order Confirm HTML, Customer License Portal HTML, Trial URL, Trial Text HTML, as well as the Trial Welcome Mailing content.
    • The product option Order Confirm HTML, Customer License Portal HTML, and D/L Page.

SOLO Server 1.11.3.3
Released February 10, 2012

-WorldPay Integration Enhancements

  • Support for the WorldPay Shopper Response feature has been added to the WorldPay integration. This feature allows WorldPay to display the SOLO invoice to the user while they are still on WorldPay's site.
  • The .NET shopping cart now includes customer name, email, address, phone, and fax information in the data posted to WorldPay.
  • The .NET shopping cart now supports test mode for the WorldPay payment gateway.
  • A new subchapter has been added to the manual's "Setting up Shopping Cart, Payment Plans, Marketing Features" chapter titled "Configuring Your Payment Gateway", with a new topic on Configuring WorldPay.
  • The web.config entries for the WorldPay payment gateway live and test URLs (WorldPayLiveUrl and WorldPayTestUrl) have been updated.

-Merchant Account Configuration Enhancements

  • The merchant account configuration page has been completely rewritten in .NET.
  • All unsupported and .NET specific merchant account types have been removed.
  • The ICVerify Merchant, Previous/Last Settlement, and Auto Settle Time fields which are specific to ICVerify have been removed (ICVerify is no longer supported).
  • The configuration interface has been reworked to show/hide and appropriately label fields based on the currently selected account type.

-.NET Customer License Portal Enhancements/Fixes

  • The warning displayed when cancelling a payment plan has been updated to note that software "may cease to operate after the next scheduled billing date" rather than simply "cease to operate".
  • The downloads page no longer displays the License ID for product options which do not have the Issue License ID setting set.
  • Several changes to the license details page:
    • Deactivations left is no longer be displayed for product options which do not allow deactivation.
    • If the license status does not allow activation, the download and activate buttons will no longer appear.
    • If reactivation is allowed, the activate button will be active regardless of remaining activations.

-Shopping Cart Enhancements/Fixes

  • Bug fix to the order processor for an issue where creating a declined order in cases where no cart was found would cause an exception.
  • The .NET shopping cart will no longer pre-populate the CVV2 number with a masked value loaded from the cookie if no card number is present on the cart.
  • The .NET shopping cart no longer automatically defaults the country drop down to the United States for new customers.
  • Bug fix to the PayPal processor to address an issue where an email error notification was not sent when a duplicate charge was detected.
  • When a PayPal order is declined, the PayPal processor will now send a standard error notification email containing the form fields to the error email address.
  • The PayPal manual resubmission page now supports parsing the form fields from the error notification email from the previous point.
  • Added error handling to the DNS reverse lookup performed during order processing to prevent fatal errors from halting order processing.

-New Protection PLUS 5 Volume License Option Types

  • To support volume licensing scenarios, the concept of a volume license has been introduced through two new product option types:
    • Protection PLUS 5 Volume License - Used to provide a downloadable volume license file not tied to a particular installation which can be used to distribute to client machines to allow the software to run without activation.
    • Protection PLUS 5 Volume License with Trigger Code Validation - This is the same as a Volume License, except a trigger code activation is required to allow the software to run.
  • The product option configuration page has been updated as follows:
    • The new options have been added to the option type drop down.
    • The option type drop down has been reorganized and the existing options have been given clearer names.
    • A new License File Name field has been added to store the file name of the generated license file when downloaded from the .NET customer license portal.
  • The activation logic has been updated to support these new option types. For these option types, the passed up activation data containing the system identifier information is overridden and replaced with a volume license identifier.
  • The .NET customer license portal license details page has been updated to support these new option types. For these option types, a new Download License File button will be displayed allowing the user to download the volume license file. In addition, activations/deactivations left will not be displayed as they are not applicable.

-Web Service Enhancements/Fixes

  • The XmlActivationService.ActivateInstallationLicenseFile web method now logs a rejection when the activation fails due to PLUS Managed access not being enabled.
  • The LicenseServer.AddLicenseAndUnregisteredCustomer web method now supports the Global Access permission. Users with this permission can now add licenses from any author.
  • The XmlActivationService.CheckInstallationStatus and XmlLicenseFileServier.GetLicenseFile web methods will no longer overwrite the current version stored on the installation if the value passed in the request is in an invalid format.
  • The XmlActivationService.ActivateInstallation and XmlActivationService.ActivateInstallationLicenseFile web methods now support specifying multiple ProductID elements in the input xml. When multiple elements are present, the license ProductID will be verified against the list of ProductIDs.
  • Bug fix for an issue where product options configured with a post activation plugin would cause an exception when activated through the XmlActivationService.ActivateInstallationLicenseFile web method.
  • The license file returned by the XmlActivationService.ActivateInstallationLicenseFile and XmlLicenseFileService.GetLicenseFile web methods now includes the option type, as well as distributor information (when applicable).
  • Corrected the License Server manual topic to note that the SerialNumber returned from the AddLicenseAndUnregisteredCustomer is a string rather than an int.
  • Fixed some broken links in the XML Activation Service and XML License File Service pages of the SOLO Server manual.

-Other Enhancements/Fixes

  • Support for specifying an Activation Threshold Plugin has been added to the product option configuration. Activation Threshold Plugins are intended to perform customized activation threshold checking to determine if the activating machine matches an existing installation when allowing reactivation on the same computer.
  • Custom license mailings now support the [varLicenseID] search/replace variable for the License ID in the email subject and a new [varSerialNumber] search/replace variable for the license serial number in the email body.
  • Bug fix to the metering wizard to address an exception which could occur when adding a license for an option configured for assigned from list serial numbers which had no serials remaining.
  • The metering wizard now copies the product version from the product to the license when creating a new license.
  • Support for the new Envelope format for the encryption key data used by Protection PLUS 5.12.1.0 and later has been added to the encryption key data page.
  • A topic in the manual on the encryption key data page has been added.
  • The installer is now built using InnoSetup v5.4.3.
  • Bug fix for an issue where the installer was not properly installing *.htm files into the products subdirectory.
  • The author license details page now validates the LicenseID for users with global access permission.
  • Bug fix for an issue where the author merchant account information was loaded rather than the invoice merchant account information on the invoice and license details pages.
  • All references to 3rd party components that are no longer in use have been completely removed.
  • Bug fix to address and issue with the validation on the add prepaid license page which prevented mall authors from adding licenses from authors in the mall which were not the mall author.
  • Corrected the product option fields manual topic to note that a Days to D/L of 0 indicates perpetual download.
  • Bug fixes to address issues where product version numbers over 15 characters long were being truncated when being copied from the product to the license when add adding new licenses in the following places:
    • Adding a test license
    • Adding bulk licenses
    • LicenseServer.AddLicenseAndUnregisteredCustomer web method
    • XmlLicenseService.Add/AddS web methods
  • The monthly summary report now includes the last billing date and amount next to the Fees Due for authors configured to pay by credit card.
  • Updated the trial teaser notification daily process to include the email address in the summary notification email, as well as omit the first/last name if they are not populated.
  • Fixed a bug where the trial teaser notification daily process would incorrectly mark the trial record as having had an email notification sent when the mailing was marked inactive and no email was actually sent.
  • When editing a license, it is now possible to change the product option the license is associated with to any non bundle option.
  • The product option configuration page now omits bundle product options from the Upgrade From and Upgrade To drop downs.
  • Bug fix for an issue creating a bundled product where cancelling the warning message regarding leaving the page resulted in an exception adding the next product to the bundle.
  • Update to the SOLO_GetAuthorSummaryData stored procedure to fix an issue where incorrect counts of licenses and invoices were being returned.
  • A new Author File Archiving daily process to archive Storefront/ESD files from disabled author accounts has been implemented.
  • Updated the First Atlantic Commerce (FAC) payment gateway integration to strip any apostrophes from the name/address strings sent to FAC, as these characters cause exceptions to be thrown on FAC's end.
  • Miscellaneous updates the the manual.
  • Bug fix for an issue where management of storefront files did not work correctly when SOLO is installed in the web root.

SOLO Server 1.11.3.2
Released December 12, 2011

-Enhancements/Bug Fixes

  • The .NET shopping cart registration page has been updated to improve how additional information is displayed regarding the EU VAT number:
    • The default message displayed below the form field has been shortened to simply mention omitting the two character country code from the beginning of the VAT number.
    • The More Info link has been replaced with a question mark icon which when clicked will display the message previously displayed in a new window/tab below the default message. When script is disabled, this will fall back to opening the new window/tab as previously.
  • Bug fix for an issue where the XmlLicenseFileService.GetLicenseFile web method would incorrectly return result code 5023 (PLUSManaged Access Not Enabled) in the case of an invalid InstallationID.
  • The purge test transactions page now uses the LongRunningQueryTimout web.config entry to set the query timeout value when specified.
  • The ErrorSupportURL web.config entry is now optional.
  • Bug fix for an issue where the Instant SOLO author billing page fails when the billing contact name contains no spaces.
  • The XmlLicenseFileService.GetLicenseFile web method now updates the installation with the last status check date and result code for all error conditions if the installation is found.
  • All web methods on the XmlActivationService web service now return the SessionCode element in the response if it is provided in the request.
  • A new Update License Counter option is now available on the product option rule configuration. When this option is set, the License Counter on the original license will be updated during order processing based on the License Counter Source and License Counter Value specified on the upgrade product option. NOTE: Changes to the order processing logic to support this new option are not yet in place and will be added in the next build of SOLO.
  • The XmlActivationService.CheckInstallationStatus web method now updates the installation with the last status check date and result code for all error conditions if the installation is found.
  • The XML license file returned by the XmlActivationServer.ActivateInstallationLicenseFile and XmlLicenseFileService.GetLicenseFile web methods now returns additional customer contact/address data.
  • The Instant SOLO author billing page now disables the Yes button on the confirmation page after first click to prevent duplicate form submissions.
  • When using the EU VAT tax calculation method on the .NET shopping cart, the EU VAT number is now optional for all EU countries rather than just those outside of the author country.
  • The XML license file returned by the XmlActivationServer.ActivateInstallationLicenseFile and XmlLicenseFileService.GetLicenseFile web methods now omits xml elements for empty string values.
  • The Brazilian Portuguese translations for the .NET customer license portal forgot password page have been updated.
  • The SOLO_GetNetworkSession stored procedure now contains a customization hook.
  • Bug fix for an issue with the SelectPropertyParams xslt rendering template not working correctly when using a combination of an external static data file and dynamically generated xml values.
  • When editing a product, a Configure License Labels link now appears to the right of the license labels drop down.
  • Bug fix to the XmlLicenseService.Add web method to address an issue where when the product was configured for AFL serial numbers and no serials were available, the web method would throw an exception. Now ResultCode 6 is returned in this case.
  • Bug fix for an error which occurred when attempting to add/edit an option when no other product options were defined.
  • The PHP version of the sample affiliate tracking script now sets cookies at the root.
  • The new License Counter field is now supported in the following places:
    • Add License page
    • Add Test License page
    • Add Multiple Customers & Licenses page
    • Metering Wizard Add License Pool page
    • LicenseServer.AddLicenseAndUnregisteredCustomer web method
    • XmlLicenseService.Add web method
  • The web methods on the XmlActivationService, XmlLicenseFileService, and XmlNetworkFloatingService web services now verify the EncryptionKeyID against the author and will return ResultCode 5000 (Invalid EncryptionKeyID) if there is a mismatch.
  • The affiliate login page now trims the form values before querying the database.
  • Bug fix to the daily processor where the processor would attempt to send an summary notification email to a blank email address when no emails were configured in the AdminEmails App.config entry.
  • A workaround in the .NET customer license portal download page has been implemented to address an issue with Internet Explorer incorrectly interpreting the querystring when the file extension is .dll or .exe.
  • The WebComponentPages framework now uses Request.FilePath rather than Request.Path to determine the current path when building the paths to the xml and xslt resource files.
  • The company name is no longer required when editing customer details in the .NET customer license portal.

SOLO Server 1.11.3.1
Released November 18, 2011

-New License Counter License Field

  • Support for a new License Counter field on the License record has been implemented. This new field can be used to store an integer counter variable on a license without using a custom user defined field, with additional options on how to initialize this value when adding new licenses. For example, when using network floating licensing, this value can be used to store the allowed number of concurrent users on a given license.
    • New License Counter Source and License Counter Value options have been added to the product option configuration to control how the new License Counter field is initialized when adding licenses. The License Counter Source can take one of 3 values:
      • None - The License Counter will be left uninitialized when adding a new license.
      • Specified Value - The License Counter will be set to the quantity multiplied by the specified License Counter Value when adding a new license.
      • Quantity - The License Counter will be set to the license quantity when adding a new license.
    • The ModulesOrdered column on the Licenses table (which is currently not used) has been renamed to LicenseCounter and any existing non-null values have been set to NULL. In addition, the license view/edit page has been updated to support viewing/editing this field.
    • Online order processing has been updated to support initializing the new License Counter field on new licenses based on the new product option settings.
    • Search/replace support for the new License Counter field is now supported through the [varLicenseCounter] search/replace parameter on both the product and product option Order Confirm HTML and Customer License Portal HTML fields.
    • The license file returned by the XmlActivationService.ActivateInstallationLicenseFile and XmlLicenseFileServer.GetLicenseFile web methods now contains the new LicenseCounter field when it is populated on the license.

-New Custom Data License Field

  • Support for a new Custom Data field on the License record has been implemented. This field can be used to store user defined data in either text or xml format.
    • A new LicenseCustomData field has been added to the Licenses table, and the license view/edit page has been updated to support viewing/editing this new field.
    • The existing Custom Data field has been relabeled to Cart Custom Data, and has been made read-only for non master users.
    • The license file returned by the XmlActivationService.ActivateInstallationLicenseFile and XmlLicenseFileServer.GetLicenseFile web methods now contains the new LicenseCustomData field when it is populated on the license.

-.NET Customer License Portal Enhancements/Bug Fixes

  • The edit recurring payment page now supports displaying either the merchant account Order Support Email, Order Support Site, or both depending on the which are populated on the merchant account configuration. Previously, only the Order Support Email was supported.
  • A notification email is now sent to users with Notify Final Declined Payment Plan Payments permission when a customer cancels a payment plan.
  • When a customer updating a stored payment receives a decline on the test authorization, users with Notify Declined Payment Plan Payments permission now receive email notifications.
  • Bug fix to the home page to fix an issue where submitting an invalidly formatted email in the new customers form would cause the page to revert to non-author specific mode (which does not display the new customer form).
  • Numerous improvements to the forgot password page:
    • Success and failure messages now support displaying both a support email as well as support web site.
    • When the search is successful but the found customer record has an invalid email address, failure notifications are now sent to users with Notify Forgot PW permission.
    • When the search returns a customer linked to only one author or is limited to one author, the success email sent to the customer no longer duplicates the support information for every license, instead displaying it once below the license listing.
    • When the page is run against a specific AuthorID:
      • The search is filtered on customers associated with the given AuthorID.
      • Any success or failure messages will now display the author specific Support Email and/or Support Site rather server wide values from the web.config file.
      • On failure, a notification is now sent to all users on the author with Notify Forgot PW permission.

-Shopping Cart and Order Processing Enhancements/Bug Fixes

  • The .NET shopping cart now supports automatically linking newly created carts to a distributor through the cookie set by the trial signup as well as the info.asp tracking script, as well as setting this cookie when a DistributorID is passed in.
  • The credit card payment page in the .NET shopping cart now supports displaying either the merchant account Order Support Email, Order Support Site, or both depending on the which are populated on the merchant account configuration. Previously, only the Order Support Email was supported.
  • Bug fix for an issue where order level Flat Per Unit priority codes were incorrectly calculated in the .NET shopping cart.
  • Bug fix for an issue with the online order processor not properly handling products configured for Auto Increment serial numbers when the product is within a bundle.
  • Bug fix to the online order processor to address an issue where the deactivations left on newly created licenses was set improperly for options configured with unlimited deactivations and a Quantity Mode of Multiple Activations.
  • If populated the RuleLicenseID is now moved from the CartItem record to the new License record during online order processing.
  • Several enhancements and bug fixes to the extended fraud screening system (still in beta):
    • Bug fix for an issue with the credit card velocity check incorrectly querying against declined orders.
    • The credit card number velocity check now supports searching on masked credit card numbers.
    • The credit card number, email address, and IP address velocity checks have system been updated to use minutes rather than days for duration.

-Online Manual Converted to MadCap Flare

  • The online manual has been migrated from Adobe RoboHelp to Madcap Software Flare:
    • Help topics previously located in subfolders off of the root directory have been moved to the root directory.
    • All links within SOLO to the online manual have been updated to point to the new locations.
    • Context sensitive help links to page specific topics now open the new window with the table of contents and navigation options enabled.
    • The SOLO build script and installer have been updated accordingly.

-Other Enhancements/Bug Fixes

  • The WebSite and SupportURL columns on the Authors table have been cleansed of empty URLs (values of just http:// and https://).
  • The defaults have been removed from the ConfirmInvoiceStyle, ConfirmEmailInvoiceStyle, and ViewInvoiceStyle columns of the Cart table.
  • The CustomerAuthorLink.Author column is now non nullable, and any existing records with a null value have been deleted.
  • The FormatCurrency xslt rendering template has been updated to support optionally displaying negative values using parenthesis rather than displaying a negative number.
  • The code used in the .NET portions of SOLO to model credit card fields (card number, CVV2, and expiration month/year) has been consolidated from the rendering to the business logic layer and improved. The card number and CVV2 are now always displayed in masked format except when being re-displayed after a form submission fails with errors (with the exception of author users who have View CC Numbers permission within the authors interface).
  • Credit card number validation in .NET based portions of SOLO has been updated to include a check for a valid length.
  • The Upgrade From and Upgrade To fields on the product option configuration page are now displayed as drop downs. In addition, these drop downs as well as the Replaced By drop down now indicate hidden and disabled products/options.
  • The store credit configuration page no longer allows editing store credits which have already been redeemed.
  • The Instant SOLO author billing page now disables the Yes button on the confirmation page after first click to prevent duplicate form submissions.
  • The Instant SOLO monthly summary report now excludes author in test mode.
  • The trial download log report now sorts the records by the download date, with the latest downloads first.
  • The XmlLicenseService.Add web method now returns the customer password in the Password element of the output xml document.
  • Bug fix to correct an issue with the CustomerServer.CreateCustomer web method not setting the Nickname field on the new customer record. In addition, when a nickname is specified, the web method will now return a ResultCode of -2 if the nickname already exists.
  • When editing a product option, a Configure License Labels link now appears to the right of the license labels drop down.
  • Duplicating a product option now supports duplicating the Pre-Activation Plugin, Post-Activation Plugin, and Upgrade Behavior settings.
  • The invoice details page will now display a popup warning when the invoice is marked for deletion but one or more licenses is not marked for deletion.
  • The confirmation message which appears when deactivating an installation through the activation history page now notes that this will permanently ban the computer from reactivating until it is reactivated through the same interface.
  • The product export has been reworked to better format the output and several missing fields have been added.
  • Numerous miscellaneous updates to the online manual.
  • The web service documentation in the manual has been updated to clearly warn that web methods requiring AuthorID, UserID, and UserPassword input should only be called by internal applications and not used in client applications distributed to customers.

SOLO Server 1.11.3.0
Released September 19, 2011

-Enhancements/Bug Fixes

  • A new EnableCartErrorNotifications web.config entry is now available to toggle detailed cart error notifications on/off. When omitted, this is assumed to be false.
  • The XmlActivationService.ActivateInstallationLicenseFile web method now returns ResultCode 5014 (Invalid Option Type) when the product option does not have Issue Installation ID enabled.
  • The LF Password field on the product configuration page now allows entering up to 1024 characters.
  • Bug fix for an issue where credit card type stored payments were being incorrectly labeled as reference type stored payments when updating credit card details.
  • The customer license portal manual request page now better handles situations where the server response is unencrypted due to an error condition.
  • Bug fix for rendering issues with the paging icons on the activation log, payment plan instance history, declined orders report, and unshipped orders report pages.
  • The customer license portal recurring payment page now omits the merchant support email from the heading message when this is not populated. In addition, when authorization fails, an additional message with an email link to the merchant account support email is displayed when the email is populated.
  • The customer license portal recurring payments page now better displays reference transactions with no card number data.
  • All valid subnet mask values can now be entered in the outside access setting on the user/group configuration pages, as well as the allowed activation IPs field on the license details page.
  • The maintenance message displayed when the database is disabled for maintenance is now only displayed for files in SOLO specific directories.
  • The customer license portal recurring payment page now displays a message when the merchant account is incorrectly configured for reference transactions.
  • When accessed by a logged in author user, the .NET cart no longer sets any customer specific cookies, and no longer attempts to automatically log the user in from customer specific cookies.
  • A new Admin Fees author transaction type has been added.
  • The trial welcome mailing body now supports the following additional search/replace variables which echo values posted in the input form:
    • [varDistributorID]
    • [varCompanyName]
    • [varEmail]
    • [varAddress1]
    • [varAddress2]
    • [varCity]
    • [varStateProvince]
    • [varPostalCode]
    • [varCountry]
    • [varPhone]
    • [varSource]
    • [varMisc1] to [varMisc7]

SOLO Server 1.11.2.3
Released August 25, 2011

-.NET Shopping Cart Enhancements

  • The Item Description column is now displayed as the left-most column, and thumbnail images are now displayed to the right of the item name rather than the left.
  • The Quantity column has been moved to the left of the Total column.
  • A new Price column which displays the unit price has been added between the Item Description and Quantity columns.
  • The red X delete icon has been replaced with a trash can icon.
  • The discount, tax, shipping, and store credit rows now align to the right in dark gray text.
  • Bundle details are now displayed in a bulleted list.
  • The Apply and Update buttons have been removed from the priority code entry row and replaced with a single Update button between the Continue Shopping and Checkout buttons.
  • The priority code entry is row has been moved to just above the button row and the message displayed here has been updated.
  • The item and order level priority discount labels now read "Item Priority Code Discount - XXXX" and "Order Priority Code Discount - XXXX".
  • The Combo Discount label has been reworded to Related Item Discount.
  • Colons have been replaced with dashes for priority code and shipping line items.
  • Upsells defined on a mall are now supported when running in mall mode. In addition, the upsells are now sorted properly.
  • Thumbnail images are now supported for upsell items.
  • The Replaced By field on the product option is now supported on the product option and license agreement pages.
  • The shipping option drop down on the shipping page no longer includes a default "Please Select" option, and instead defaults to the least expensive shipping option.
  • The order confirmation page now disables the Place Order button after the first click to prevent duplicate form submissions.
  • The references to CSS files in the default invoice are now absolute rather the relative, allowing the files to be properly loaded when the invoice is viewed in an email.
  • Several hard coded strings in the default invoice template have been moved to the proper location in the xml resource file.

-.NET Customer License Portal Enhancements

  • When editing a reference type recurring payment which has no credit card name/address data stored, the name and address data will be populated with the values from the customer record.
  • The recurring payment page now supports properly displaying support information from the author record rather than hard coded values from the xml resource file.
  • When editing a recurring payment, AVS and CVV2 verification is now performed.
  • The templates used to generate drop down lists have been updated to support translation of the default option as well as the ability to omit the default option.
  • A Brazilian Portuguese translation is now available which can be enabled through the LanguageCode=br-pt querystring parameter.
  • The manual request page has been updated to better handle uploaded files which are either in the incorrect format or contain malformed xml. In addition, some unused code was removed.
  • The license agreement page now properly handles invalid LicenseID values.

-Standardized Perpetual Download/Download Expiration

  • A code audit revealed some inconsistencies in determining when a given license has expired as well as whether a given product option is configured for perpetual download/no expiration. Going forward, a license is not considered expired until the day following the No More D/L value on the license, and a Days to D/L setting of zero or less on the product option indicates perpetual download/no expiration. The following places within SOLO have been updated to use the new standards:
    • XmlActivationService.ActivationInstallation and XmlActivationService.ActivateInstallationLicenseFile web methods.
    • XmlLicenseFileService.GetLicenseFile web method.
    • All web methods on the XmlNetworkFloatingService web service.
    • All customer download features in both the new .NET customer license portal as well as the legacy customer license portal pages.
    • The default invoice templates.
    • The expired licenses report.
    • In addition, all product options which previously specified a Days to D/L of 99999 to specify perpetual download have been updated with a Days to D/L value of zero.

-Database Enhancements

  • SQL Server user defined functions and stored procedures are now segregated. Previously they were stored together in the Database\StoredProcedures folder and the database install/upgrade process would process these together. Now the user defined functions are installed to a new Database\Functions folder and processed separately during the database install/upgrade process.
  • A new SQL Server user defined function to strip time from a date which is date format independent has been implemented. All stored procedures which previously used this functionality have been updated to use the new function.
  • The user defined function currently used to generate the proper end date for reporting has been updated to be date format independent.
  • Several changes to the database install script to enable features on the default author record which were previously incorrectly disabled.
  • Several database schema changes inadvertently undone by subsequent upgrades have been re-applied.
  • The SOLO_UpdateLicenseForUpdgrade stored procedure has been dropped as it is not used.
  • A new index has been added to the RejectedActivationLog table which greatly improves the performance of the Licenses By Product report.
  • The database install/upgrade helper executable has been updated to be able to log data changes.

-Other Enhancements/Bug Fixes

  • Storefront and Electronic Software Delivery (ESD) files stored on the server are now managed using the FileUltimate control, which works similarly to Windows Explorer.
  • A new HttpModule to verify a valid author session for the new FileUltimate file management control has been added.
  • A new Support HTML field has been added to both the author contact details and merchant account configuration pages. When set, this markup will be inserted into online invoices in place of the default content for the vendor/merchant support contact information.
  • The invoice templates now support displaying the new Support HTML field in place of the default support information for both the author and merchant account.
  • When editing a reference type stored payment in the authors interface which has no credit card name/address data stored, the name and address data will be populated with the values from the customer record.
  • When adding a new product option, the Trigger Code Seed and RegKey2 Seed values are now automatically randomized.
  • Updated the help topic on the payment plan fields to note that the Persist Discount Information option only applies to product option level priority code discounts.
  • Bug fix for an issue where the text fields on the distributor configuration page were incorrectly limited to 255 characters.
  • All ActiveReports based reports now use Excel 95 format for the Excel report type. This is a temporary workaround for a known issue with ActiveReports and introduced by a Windows Update where using the Excel 97-2003 format causes Excel to flag some report files as malformed.
  • The invoice templates now display the message "You will be contacted and provided with a serial number" for licenses with no serial number associated with a product with the Author S/N Type set to Assigned From List.
  • A confirmation message is now displayed after clicking the Reset All Activations link on the customer details page.
  • Numerous corrections to spacing issues on pages generated from xslt templates.
  • Validation of Brazilian state codes and postal code format is now supported when editing addresses.
  • A confirmation message is now displayed when adding/editing a product option when the U/M Price is set to $0 warning the user that this will allow customers to purchase the option through the shopping cart without using a credit card.
  • Corrections to the help topic on creating custom mailings.
  • Common code between the author and .NET customer license portal stored payment editing pages has been consolidated in a shared implementation.
  • Bug fix for an issue validating the Additional Value field on the product wizard.
  • PayPal has been added as a Fees Paid By option on the Instant SOLO account options configuration page.
  • The shipping notification daily process has been updated to omit invoices with no licenses.
  • Bug fix for a foreign key violation which could occur during author signup when the DefaultTestMerchantAcctID web.config entry contains an invalid value.
  • The payment plan configuration page now displays a message warning the user that the first installment payment will be made with the next run of the payment plan processor when the Recurrence Type is set to Scheduled and the Days Until Start is set to zero.
  • Fixed a typo in the default invoice templates where the author mailing address was being incorrectly referenced.
  • The help topics on installing SOLO have been updated to properly describe the initial steps after first logging in.
  • The invoice details page now supports exporting license details in two additional formats. A new "Import" format contains only LicenseID and Password, and is intended for import into an external system in text format. A second "Text" format contains additional fields in a similar format.
  • The Last Login Date on the view distributor page now includes the time.
  • Several corrections to the help topic on the CustomerServer.CreateCustomer web method.
  • Changes to the copy on the author signup page.
  • The EffectiveStartDate and EffectiveEndDate fields in the license file returned by XmlLicenseFileServer.GetLicenseFile and XmlActivationServer.ActivateInstallationLicense file no longer contain the time component.
  • The custom username and custom password fields are now properly disabled/enabled during the page load when editing a product update.
  • For Instant SOLO, a friendly message is now displayed when a non-master user accesses the author signup page while logged into the authors interface explaining they must log out before signing up for another account.
  • Obfuscation of the SOLOLicenseingServer.dll assembly is now done using SmartAssembly 6 rather than SmartAssembly 5.
  • Several efficiency tweaks to the author session management implementation.
  • The assigned cart report has been updated to address some performance issues when run over larger date ranges.
  • Updated documentation on the MaximumImageUploadBytes web.config setting.
  • Fixed a bug in the delete licenses and invoices portion of the daily maintenance process where a foreign key violation on RejectedActivationLog.RelatedInstallation could prevent proper deletion of licenses.
  • Legacy files for exporting license/order data which have since been replaced by the Licenses By Product report have been removed.

SOLO Server 1.11.2.1
Released June 17, 2011

-Database Changes/Enhancements

  • The base database schema has been rescripted using new scripting conventions, and the installer and database install helper application have been updated accordingly.
  • IMPORTANT NOTE: Due to the the new scripting conventions, you must first install SOLO version 1.11.2.0 prior to installing this version in order for prior database updates to be applied properly.
  • All stored procedures used by the VBScript jobs which have been replaced by .NET DailyProcess implementations and are not used elsewhere have been removed.
  • The check constraint on Invoices.Terms now includes MAESTRO.
  • Added missing foreign keys on ProdOptions.UpgradeFrom and ProdOptions.UpgradeTo.

-Other Enhancements/Fixes

  • The error message displayed in the cart for authors with credit card processing disabled has been updated.
  • The monthly and monthly summary reports now correctly calculate the amount due when only other fees are present.
  • Bug fix for an issue with the .NET ESD download page not sending the filename in quotes.
  • Fix to the sample php script for affiliate tracking to correctly pass the DistributorID to SOLO.
  • Bug fix for an issue with the monthly details report where licenses with Assigned From List serial numbers would cause the report to fail.
  • Image uploads for products and options as well as the author logo image for the storefront are now limited to 2MB by default. This can be overridden by a new MaximumImageUploadBytes web.config entry.

SOLO Server 1.11.2.0
Released May 31, 2011

-Bug Fixes

  • Bug fix to address an issue where the database update script to enlarge IP address columns to allow storage of IPv6 addresses failed to apply the changes to the RejectedActivationLog table.
  • Bug fix for an issue where IPv4 addresses were incorrectly identified as IPv6 within the Outside Access check during author login, causing login to fail for valid IPv4 addresses.

SOLO Server 1.11.1.1
Released May 23, 2011

-Reporting Enhancements/Fixes

  • A new Require Minimum Monthly Fee setting has been added to the Instant SOLO Options configuration page. When set, the minimum monthly fee will be charged on the monthly reports regardless of whether there is any account activity during the month.
  • The monthly report now uses the new consolidated SOLO_Rpt_AuthorMonthlySummary stored procedure to retrieve summary data. In addition, when run in details mode, it uses a new SOLO_Rpt_AuthorMonthlySummaryDetails stored procedure to retrieve detail data in a single database call as opposed to the multiple database calls previously used.
  • Bug fix to the QB check export to include non refund fees for PaymentMode greater than 0.
  • Bug fix to the QB check export to include authors who only incur monthly fees in the output.
  • Bug fix to the monthly summary reports where refund invoices were being included when calculating credit card order details.
  • The monthly summary report now includes activation totals regardless of whether there are activation fees incurred.
  • The trial download log report has a new "Include Repeat Requests" option which will cause the report to also return data from trials which redownloaded during the date range.

-IPv6 Support

  • SOLO can now be run on IPv6, either on a single IPv6 IP address or alongside an IPv4 address.
  • All database columns storing an IP address have been resized to allow storing IPv6 addresses.
  • All database stored procedures which accept an IP address now support IPv6 addresses and accept the input as a varchar rather than a char.
  • Outside access IP checking during author user logins will now temporarily reject IPv6 addresses when restrictions are in place.
  • FraudIP list checking and IP geographic lookups during order processing are now temporarily bypassed for IPv6 addresses.
  • Allowed activation IP checking during activation processing now temporarily rejects any IPv6 addresses when restrictions are in place.
  • The previous 3 limitations will be addressed in a future version of SOLO.
  • Links to nwtools.com for IP lookups will not function for IPv6 addresses (nwtools.com does not yet support IPv6).

-Daily Processing Enhancements/Fixes

  • The trial teaser notification process now only includes records entered within 5 days of the look back date to prevent sending emails to customers who downloaded the trial far before the product was configured for teasers.
  • Bug fix to the non-activated license daily process to fix an issue where notifications were being sent to activated license customers on notifications past the first notification.
  • The first activation follow up daily process now includes customers without Notify Product set who were last updated through postregdata.asp (UserID "WebPost") so that users who activated/registered through Instant PLUS receive notifications.

-Shopping Cart Enhancements/Fixes

  • The ASP and .NET shopping carts now update the Last Login Date and IP address on the customer record during customer login. In addition, the .NET cart also handles updating these fields on the distributor login.
  • When processing a shopping cart order while the author is in test mode, the auth code will now be set to "TestCard" for all invoices regardless of payment method to ensure the order is purged.
  • The shipping address used for PayPal orders now comes from the data entered in the SOLO shopping cart shipping address page rather than the shipping address returned by PayPal. This addresses two issues:
    • Users currently enter two shipping addresses when using PayPal - one in SOLO and one in PayPal. It's not clear which address is actually used.
    • PayPal uses full string for the state/province for several countries rather than using the postal abbreviation. This causes truncation errors for certain state/province values where SOLO's address fields are not large enough.

-Installer, Customization, and Configuration Changes

  • Major changes have been made to the way SOLO installs and locates the following types of customizable template files:
    • Custom HTML Templates - HTML template files used to generate the default header and footer in each section of SOLO.
    • Custom XSL Templates - XSLT template files used to generate html markup from XML data (such as online invoices).
    • Custom XML Resource Files - XML resource files used to store static data used to generate markup (such as the generating the menu in the authors interface).
  • The previous implementation for these types of files worked as follows:
    • On initial install, all files were installed to their default subfolder in the install directory, as well as into a Default subfolder within the default folder. For example, Custom HTML templates would be installed into %InstallDir%\SOLO\DLLS\Custom HTML\ and %InstallDir%\SOLO\DLLS\Custom HTML\Default\.
    • Initial installation also configured SOLO to reference the files in their root location (e.g. %InstallDir%\SOLO\DLLS\Custom HTML\).
    • The file system path SOLO uses to reference each type of file was configured through a separate configuration file entry for each file type.
    • On subsequent upgrades, the installer would not overwrite the files in the root location to prevent overwriting any customizations, instead writing to the Default subfolder.
    • For a majority of SOLO installs with no customizations, this was problematic, as it required either changing the configuration to reference the files in the Default subfolder, or manually copying updated files from the Default subfolder to the root after performing the upgrade.
  • The new implementation works as follows:
    • On initial install, the files are installed into their install root directory. The Default subdirectory is no longer created.
    • The file system path used by SOLO to locate these files no longer requires specifying a configuration entry for each file type. Instead, a new SOLOCustomRootDir web.config entry has been added which stored the path to the parent folder of all the the root folders.
    • During installation, the individual web.config entries are no longer configured - instead the new SOLOCustomRootDir entry is populated with the path the parent directory of all template folders.
    • To determine the file system path, SOLO now first looks for a value in the type specific web.config entry and uses this if present. If not present, it will fall back to the default install directory determined from the new SOLOCustomRootDir configuration entry.
    • Best practice for customizing these files is now to create a Custom subdirectory off of the root and override the configuration entry.
    • To prevent overwriting any customizations in the transition, the default directory names have been updated to no longer include a space (e.g. Custom HTML has changed to CustomHTML).

-Other Enhancements/Fixes

  • The author signup page no longer displays store options.
  • The user configuration page has been updated to disallow editing/deleting Concept Software support accounts for hosted SOLO instances.
  • The validation of the email campaign options on the advanced cart options page has been improved.
  • Non hosted SOLO instances now require all users to accept a default EULA before continuing.
  • The help topic on Product Option fields now more clearly explains that setting the Days to D/L parameter to 99999 indicates a perpetual license.
  • The documentation on the XmlCustomerService.CustomerSearch web method now more clearly explains how wildcards are used in the search.
  • The installer is now built using InnoSetup v5.4.2.
  • Drop down lists of mailings now include disabled mailings (marked as disabled) on the cart options, advanced cart options, distributor options, and ticket options configuration pages.
  • The mailing configuration page now displays the Mailing ID.
  • Bug fix for an issue where 75 character serial numbers could not be imported.
  • All bit fields in the database which were nullable or missing a default have been repaired to be non-nullable as well as have a default constraint.
  • The author home page now omits plan information for newly signed up authors.
  • ActiveFile is no longer used for downloading exports and other files. Instead files are now delivered using built in ASP functionality.
  • Author session cookies are now marked Http Only.
  • All mailing drop downs on classic ASP pages in the authors interface are now loaded using SOLO_GetAuthorMailingIDs.
  • The distributor configuration page now requires a Customer ID when Require Cart Login is checked.
  • Customer searches, both through the authors interface and the XmlCustomerService.Search web method, now support the "-%" escape sequence which disables wildcard matching.
  • The XmlCustomerService.CustomerSearch web method now uses the proper "Customers" document element name when returning an error result.
  • The logic for assigning "Assigned From List" serial numbers to licenses has been consolidated into a single stored procedure. In addition, a bug in this logic which didn't take the Product ID into account when issuing the serial has been fixed.
  • Corrected some inaccuracies in the help topics on the XmlCustomerService and XmlLicenseService web services.
  • The product update configuration page now retains values when the action is changed to None.
  • The DownloadFile.aspx page in the .NET customer license portal now includes automation client errors in the markup.
  • The custom html template for the author signup page has been updated to prevent SSL warnings.
  • The add license page now uses the common SOLO_AddPrepaidLicense stored procedure to add the license.
  • The product wizard page now properly uses CheckNumber rather than CheckString when updating the AltData2/3/4 fields.
  • The add multiple licenses page now includes serial number information when adding licenses for a bundle which contains serial number products.
  • A new GetAuthorWebServiceSession function is now available in customtop.asp.
  • The getcode.asp activation script has been updated to better handle internal communications errors with the XmlActivationService web service.
  • Add multiple licenses now supports bundles which contain more than one of the same product option.
  • Bug fix to the .NET customer license portal upgrades page to address an issue where upgrades for licenses whose product option was disabled/hidden were not appearing.
  • The author signup email no longer contains the checklist.
  • The maximum length for the user defined date and user defined float fields on the license details page has been increased to 25.
  • The new PLUS activation page now supports displaying error messages for plugin processing failures.
  • The new PLUS activation page has been reworked to be more user friendly. In addition, a new Activate License menu entry has been added for users with Activate Licenses permission to reach this page and enter a License ID to start the activation process.

SOLO Server 1.11.1.0
Released March 14, 2011

-Enhancements

  • Bug fix to the .NET customer license portal home page to fix an issue where a specified relative redirect would cause an exception.
  • Help updates regarding the new daily processor and daily processes.
  • Bug fix to the job install script to correctly configure the failure steps.
  • A customization hook has been added to SOLO_GetNonActivatedLicenseNotificationData.

SOLO Server 1.10.4.5
Released March 7, 2011

-.NET Customer License Portal Fixes/Enhancements

  • The upgrade and renewal options are now filtered to exclude options which violate the the purchase rules.
  • A new page has been added to allow customers to manually generate PLUS activation codes when the allow manual activations customer license portal option is enabled.
  • Bug fix for a null reference exception on the .NET customer license portal customer add/edit page when in add mode.
  • All pages now verify a passed in AuthorID is valid prior to attempting to set the session AuthorID.
  • The license agreement page no longer automatically sets focus to the checkbox.
  • Bug fix for an issue where the login page would incorrectly redirect onward with an invalid password.

-Shopping Cart/Order Processing Enhancements

  • The .NET shopping cart now applies any priority codes and quantity updates when clicking the checkout button.
  • Bug fix for an issue in order processing where an order paid for exactly by store credit would improperly generate a $0 partial use store credit for unused credit.
  • Fixed a bug where a non-global access author user could use the test credit card number on a shopping cart on another author.
  • Updated the order processing check against country of IP address to include an exception for a mismatch between the US and Puerto Rico.

-Monthly Processing and Reporting Enhancements

  • The monthly summary report and export, QuickBooks check export, and monthly sales report now use a consolidated monthly reporting stored procedure.
  • The old monthly summary stored procedures that have been replaced by the new consolidated stored procedure have been removed.
  • A new All by Payment Method sort option has been added to the monthly summary report, and the existing All option has been renamed to All by Payment Method. In addition, filtering on the Metering payment mode is now supported.
  • The old version of the monthly summary report has been decommissioned.
  • The monthly summary report now includes the refund count for each author.
  • Monthly reporting now includes the invoice terms COD, Comp, Wire, and Consign as prepaid terms.
  • Bug fix for an issue with the monthly summary report where authors with a NULL payment method were being included in the results when filtering on a specific payment method.

-License Management Enhancements

  • A new page has been added to the author interface to allow users with activate licenses permission to to manually generated PLUS activation codes. This page can be reached from a new link on the license details page.
  • The edit link is no longer displayed on the license details page when the user is read only.
  • Non-master users can no longer set the license status to Void or Returned, and can no longer edit the status of licenses with a current status of Void or Returned.

-Invoice Management Enhancements

  • The edit link is no longer displayed on the invoice details page when the user is read-only.
  • Non-master users can no longer set the invoice status to Void or Refund, and can no longer edit the status of invoice with a current status of Void or Refund.
  • When voiding or refunding an order which includes a payment plan item, users are now warned about the presence of the payment plan(s) and given links to view/disable the payment plan instance(s).
  • Bug fix to address a rounding error on the tax when refunding an invoice.

-Author Home Page Enhancements

  • jQuery is now used for pane animations.
  • For Instant SOLO, plan and billing information is now displayed for users with manage account permissions.
  • The update contact/billing information quick links have been removed and replaced with edit buttons in the contact and plan and billing information panels.
  • The author agreement download quick link has been removed.
  • Several markup enhancements have been implemented for browser compatibility.
  • Bug fix for an issue where pressing enter in the return to cart text field failed to submit the form.

-Other Author Interface Enhancements

  • The product option configuration page now warns users whose author record has PLUSManaged enabled when unchecking the Issue Installation ID checkbox that PLUSManaged requires having Issue Installation ID set.
  • ActiveReports assemblies have been updated to Service Pack 2.
  • A new Manual Activations Enabled customer license portal setting has been added which controls whether customers are allowed to perform manual PLUS activations through the new page in the .NET customer license portal area.
  • The server license page now shows a friendly error message rather than redirecting to the access denied page when reached by a user without master user permission.
  • CSS updates to no longer display the full URL for links when printing.
  • All date fields on WebComponentPages based .NET pages now include a jQueryUI date picker.
  • All address fields are now optional on the distributor configuration page.
  • All code and web pages involving the old PDF based author agreements has been removed.
  • The AuthorMenu.xslt transform used to generate the author menu is now cached after first compilation.
  • Bug fix for a broken link to the help topic on the author advanced options page.
  • Several tweaks to fix various rendering issues in the author interface.
  • Bug fix for an issue with the sales tax rule configuration validation where country wide tax rules were failing validation because the country in question requires a state/province in mailing addresses.
  • Help update to the cart overview to include proper instructions on enabling the .NET shopping cart.
  • Bug fix for unclosed anchor tags in the tabbed areas at the bottom of the product and product option configuration pages.
  • Help updates regarding database collation and server regional settings when installing SOLO.
  • Updated several internal http calls to use https (SSL) rather than http.
  • A new Trial Teaser Days Back option has been added to the product configuration for specifying the number of days after trial download the teaser email notification should be sent.
  • For Instant SOLO, when trial tracking is not enabled for the author a message is now displayed on the product configuration page notifying the user that trail tracking is not enabled with instructions to contact us to enroll.

-Other Miscellaneous Enhancements

  • Bug fix for an issue where payment plan instances and stored payments were not being migrated when merging customer records.
  • SOLOLicensingServer.dll is now obfuscated.
  • A new PropertyGroup property has been added to the BaseUserProperty class of the WebComponentPages framework.
  • The HttpRequestValidator now supports validating and bypassing validation on default documents.
  • The SOLO_PurgeOrphanedCarts stored procedure now clears the CartID from any StoreCredit records associated with carts to be purged. In addition, carts marked Payment Pending are no longer purged.
  • Changed the 1010004001_01_AddNetworkFloatingTables.sql script file from UTF-8 to ANSI encoding so it will run properly from the installer.
  • Bug fix to the SOLO_Rpt_SalesByTerms stored procedure to address a syntax issue which made stored procedure invalid at database compatibility of SQL 2005 or above.
  • The ShortMessage column has been dropped from the ProdUpdates table as it is no longer used.

-New Database Install/Upgrade Process and Database Install/Upgrade Enhancements

  • The old batch file/vbscript based process used by the installer to install/upgrade the database has been replaced by a .NET executable.
  • The new exe reduces install/upgrade time from several minutes to under a minute in most instances.
  • The new exe logs all errors and warnings from SQL server, addressing an issue with the old install process where only the last error/warning was logged for scripts that contained several batches.
  • On new installs, a SOLOServer database mail account and profile are now created using the SMTP and email settings entered in the installer dialogs. In addition, the SQL jobs are now configured to use this database mail account/profile for error notifications on fresh installs.
  • On new installs, a placeholder merchant account record is now created and associated with the default author record.

-New DailyProcessor Application

  • A new .NET DailyProcessor application has been implemented to run daily processes such as customer notification, database maintenance, etc. This results in greatly simplified administration and configuration:
    • Only one SQL Agent job needs to be configured (with the exception of the payment plan processor, which has yet to be migrated).
    • Merging changes into VBScript files (due to the configuration parameters being located within the script) is no longer necessary. All configuration options are now specified through an app.config file and the installer will now automatically update the assemblies while leaving the configuration file untouched.
    • Configuration is now performed through a web page, and the configuration is now stored in the database.
  • All existing VBScript based jobs with the exception of the payment plan processor as well as the abandoned cart processor have been migrated to this new implementation.
  • A new page accessible to master users has been implemented to allow configuring the daily processes run by the DailyProcessor. This is reachable from the Daily Processes admin menu option.
  • For the VBScript jobs converted to daily processes, all search/replace fields are now supported in both the email subject and body where applicable.
  • All stored procedures used by the VBScript jobs which have been replaced by .NET DailyProcess implementations and are not used elsewhere have been removed.
  • Enhancements/changes during migration to the DailyProcessor architecture:
    • The abandoned cart process now sends a summary notification email to author sales email address, and the return to cart links in the emails are now compatible with the .NET shopping cart.
    • The shipping notification daily process now requires specifying a DaysBack parameter.
    • The product serial number check process can now be run globally or for a specific author.
    • The daily maintenance daily process is automatically configured in the database during the install/upgrade process if no existing processes are currently configured.
  • New daily processes:
    • Cross Product Marketing - This process allows sending cross product marketing emails for a specified product to customers a specified number of days after purchasing a specified product.
    • Customer Follow Up - This process allows sending follow up emails to customers a specified number of days after the customer record is created or a specified number of days after the purchase of specified product(s).
    • Trial Teaser Notification (Global) - This process will send trial teaser notifications for all authors with trial tracking enabled for all products with trial teasers configured.
    • Non Activated License Notification - This process allows sending email notifications to customers who have not activated their license for specified product(s) every X days after purchase for a specified number of notifications.

SOLO Server 1.10.4.4
Released January 20, 2011

-Monthly Summary Report Enhancements

  • A single, consolidated stored procedure for monthly processing to be shared by the author monthly report, the monthly summary report, as well as the monthly summary export has been created.
  • The report has been updated to allow generating the report against both the legacy (v1) and the new shared stored procedure (v2).
  • The new monthly processing fee is now supported in the v2 version of the report.
  • Bug fix for a rounding issue causing things to be off by a penny in some cases on the monthly summary report (only fixed for v2 ).

-Other Enhancements

  • Support has been added to require users to accept service terms and conditions prior to accessing the authors interface.
  • A new CustomerLogin web method has been added to the XmlCustomerService web service for use in verifying customer login information.
  • The licensing check which verifies that the maximum allowed number of authors has been exceeded now excludes author accounts marked as closed.
  • Support has been added to increase the allowed query execution time through a new LongRunningQuertTimout web.config entry for .NET reports and the customer details search so timeouts can be avoided on very large databases.
  • The author login page now sets focus to the Login ID or Password field automatically.
  • A new PaymentGatewayTimeout web.config option has been added to allow extending the default timeout waiting for a response from the PaymentServer web service when performing payment processing (to prevent timeouts when the payment gateway is responding slowly).
  • .NET based pages using the WebComponentPages framework have been updated to better set focus. When initially displaying an add/edit page, focus will be automatically set to the first form field. When redisplaying the page after failed server side validation as well as after failed client side validation, focus is automatically set to the first field in error.
  • A new QBBankName web.config entry has been added which allows specifying the default bank name used in the QuickBooks deposit and check exports.
  • The Products.LFPassword column has been increased in size from 15 to 1024 characters.
  • Old stored procedures used by the old author login/session management system have been removed.
  • A new Execution Index property has been added to the daily process configuration.
  • The Flat/Percentage columns on the AuthorPriorityCodes/ProdPriorityCodes tables are now nullable so when not applicable they do not need to contain placeholder values.
  • Bug fix for an issue in the .NET customer license portal where newly created customers were not properly being associated with the author they were signing up under.
  • Updated the order processing check against country of IP address to include an exception for a mismatch between the US and Puerto Rico.
  • All links from the online invoice to the customer license portal now include the A= querystring parameter with the invoice AuthorID.
  • All legacy customer license portal pages which have redirects to the .NET customer license portal now support the A= querystring parameter for AuthorID which is then passed on in the redirect to the corresponding .NET page.
  • Bug fix for an issue with the activation data export where licenses entered prior to the date range were being improperly filtered from the results.
  • Bug fix for a null reference exception in the .NET customer license portal which occurred when the user had an invalid author session.
  • Bug fix for an issue on the author fees page where an exception is thrown attempting to set the default date range during the month of January.
  • Bug fix to the user configuration page to address an issue where order level was not being saved properly.
  • Bug fix to the WebComponentPages framework to make the check for the xml/xslt files case insensitive.
  • The .NET customer license portal forgot password page now verifies the email on file is a valid email address prior to sending the customer notification.
  • Bug fix for an issue where payment plan descriptions could not be specified longer than 30 characters.

Important Upgrade Notes

This section contains details on the customizable file changes included with each new release of SOLO Server.

This section lists files which are user customizable which have changed in each release for the purposes of identifying any changes which must be merged during an upgrade. Each release is broken up into several sections:

  • Configuration File Changes - Any new, changed, or removed configuration file entries will be listed here. For the web.config file, a blankWeb.config template file is included in the zip file containing the installer. This contains the current web.config contents with blank/default values which can be used with a diff/merge tool to upgrade the production web.config file.
  • Customizable Template/Resource File Changes - Any new or changed customizable templates/resource files will be listed here.
  • Customizable Stored Procedure Changes - Any changed database stored procedures which contain customization hooks will be listed here.
  • Other Changes/Manual Steps - Any additional changes or manual steps which need to be taken before, during, or after an upgrade are listed here. Pay special attention to this section, as this may contain instructions which if not followed could lead to SOLO not working properly after the upgrade.

Instructions for merging in changes to customizable files are beyond the scope of this document. For further information, contact support@softwarekey.com.

Important!
  • Upgrades from any version of SOLO prior to 1.16.2.1 to version 1.16.2.1 or later will require changing the application pool SOLO is running under to use Integrated Managed Pipeline Mode, as well as making several changes to SOLO's configuration file in order for SOLO to function properly after the upgrade.
  • Upgrades from any version of SOLO prior to 1.16.1.2 to version 1.16.1.2 or later will require installing the .NET 4.6.1 framework if not already installed.
  • Starting with version 1.14.2.2, we have introduced a new View Password user/group permission, which controls access to view the customer account password throughout SOLO. Since access to view the customer password may be necessary for customer support reasons, please note the following:
    • By default, the new View Password permission will be disabled at both the user and group level. After upgrading, customer password access can be re-enabled by editing the user or group and enabling the View Password permission. Note that this can only be edited by users with Master User permission.
    • As of the current version of SOLO, this works in conjunction with the password source tracking introduced in version 1.15.2.4 as follows:
      • When View Password permission is enabled, the customer account password is always visible.
      • When View Password permission is not enabled, the customer account password will be displayed as SECURED if the password was selected or changed by the customer, while it will remain visible if the password was either randomly generated or set by an administrative user.
  • Upgrades from any version of SOLO prior to 1.13.3.4 to version 1.13.3.4 or later will requiring updating the IIS configuration for SOLO from the .NET 2.0 framework to the .NET 4.0 framework. Please see the Upgrade Notes for version 1.13.3.4 for instructions on performing this upgrade.
  • Upgrades from any version of SOLO prior to 1.11.2.0 to version 1.11.2.0 or later will requiring first upgrading through version 1.11.2.0. Contact support@softwarekey.com for access to the 1.11.2.0 installer and further instructions.
  • Upgrades from any version of SOLO prior to 1.10.4.2 to version 1.10.4.2 or later will require reactivation due to changes in the way SOLO Server is licensed. Prior to upgrading:
    • Log in to our customer license portal at http://www.softwarekey.com by clicking on the Customer Login link at the top of the page and logging in.
    • Once logged in, click Licenses & Activations and locate your SOLO license. Click the License ID to view the license details.
    • On the license details page, verify that there are activations remaining on the license. If there are no activations left, or if you are running multiple web servers and there are not enough activations to activate all servers, contact us at support@softwarekey.com to request additional activations.
    • During the upgrade process, be sure to have your License ID and Password available in order to perform the reactivation. After performing the upgrade, log into the author administrative interface and you will be automatically prompted to reactivate through a new web page.

SOLO Server 1.18.1.7
Released November 16, 2018

-Configuration File Changes

  • Web.config (refer to the blankWeb.config template file included in the zip file to merge in these changes).
    • EnableAuthenticatedWebServiceLogging - New optional entry. Set to True or False to enable/disable usage logging for web service endpoints requiring user authentication.

-Customizable Template/Resource File Changes

  • CustomHTML/AuthorsAdmin.htm
  • CustomHTML/AuthorsTop.htm
  • CustomHTML/AuthorsTopNET.htm
  • CustomHTML/AuthorsTopNETComponent.htm
  • WebComponentPages/Xml/Authors/ProductUpsell.xml
  • WebComponentPages/Xml/Authors/RptMonthlySummary.xml
  • WebComponentPages/Xml/Authors/Users.xml
  • WebComponentPages/Xslt/Authors/AuthorUserPermissions.xslt
  • WebComponentPages/Xslt/Authors/FindCustomers.xslt
  • WebComponentPages/Xslt/Authors/ProductUpsell.xslt
  • WebComponentPages/Xslt/Authors/RptMonthlySummary.xslt
  • WebComponentPages/Xslt/Products/Cart.xslt

-Customizable Database Object Changes

  • SOLO_GetAuthorSession
  • SOLO_IncrementServiceUsageCounter

SOLO Server 1.18.1.6
Released October 18, 2018

No Changes


SOLO Server 1.18.1.5
Released October 16, 2018

-Configuration File Changes

  • Web.config (refer to the blankWeb.config template file included in the zip file to merge in these changes).
    • EMailErrorLogPath - Remove the file name from this entry, as it is no longer needed as logging is now one file per error and each log includes the email content.
    • SOLOErrorEmail - This entry has been removed.
  • DailyProcessor.exe.config
    • EMailErrorLogPath - Remove the file name from this entry, as it is no longer needed as logging is now one file per error and each log includes the email content.
    • ErrorEmails - New entry. Populate with a comma or semicolon separated list of emails to receive notifications of any errors during processing.

-Customer License Portal CSS Changes

  • If using custom CSS in the customer license portal derived from the default customersNET.css file, please contact us for further details, as several changes will need to be merged into this file.

-Customizable Template/Resource File Changes

  • WebComponentPages/Xml/Authors/CartOptions.xml
  • WebComponentPages/Xml/Authors/CustomerDetails.xml
  • WebComponentPages/Xml/Authors/NetworkFloatingOptions.xml
  • WebComponentPages/Xml/Customers/Customer.xml
  • WebComponentPages/Xml/Customers/LicenseHistory.xml
  • WebComponentPages/Xml/Products/PayPalRedirect.xml
  • WebComponentPages/Xml/Products/PayPalRedirect.xml.de
  • WebComponentPages/Xml/Products/PayPalRedirect.xml.es
  • WebComponentPages/Xml/Products/PayPalRedirect.xml.fr
  • WebComponentPages/Xml/Products/PayPalRedirect.xml.it
  • WebComponentPages/Xslt/Authors/CartOptions.xslt
  • WebComponentPages/Xslt/Authors/CustomerDetails.xslt
  • WebComponentPages/Xslt/Authors/NetworkFloatingOptions.xslt
  • WebComponentPages/Xslt/Common/UserProperties/UserProperties.xslt
  • WebComponentPages/Xslt/Common2/UserProperties/UserProperties.xslt
  • WebComponentPages/Xslt/Customers/Customer.xslt
  • WebComponentPages/Xslt/Customers/License.xslt
  • WebComponentPages/Xslt/Customers/LicenseHistory.xslt
  • WebComponentPages/Xslt/Products/PayPalRedirect.xslt
  • WebComponentPages/Xslt/Products/Register.xslt

-Customizable Database Object Changes

  • SOLO_GetCustomerServiceLicense
  • SOLO_GetInvoiceForForXMLNotification
  • SOLO_GetNetworkSession
  • SOLO_UpdateInstallation - A customization hook has been added to this stored procedure.

-Database Changes

  • If using the payment plan processor:
    • Prior to performing the upgrade, rename %InstallDir%\Database\Jobs\VBScripts\ProcessPaymentPlans.vbs.
    • Open the renamed file in Notepad, and adjust the existing
      MAILER_LOGPATH
      constant on line 11, removing the file name, which is no longer needed as logging is now one file per error and each log includes the email content.
    • After the upgrade, copy the constants from the top of the renamed file. Next, open the new version of the ProcessPaymentPlans.vbs file in Notepad and paste the constants copied previously over the default values.

SOLO Server 1.18.1.3
Released June 26, 2018

-Customizable Template/Resource File Changes

  • CustomHTML/AuthorsAdmin.htm
  • CustomHTML/AuthorsTop.htm
  • CustomHTML/AuthorsTopNET.htm
  • CustomHTML/AuthorsTopNETComponent.htm
  • WebComponentPages/Xml/Authors/InstantSOLOOptions.xml
  • WebComponentPages/Xslt/Authors/CustomerDetails.xslt
  • WebComponentPages/Xslt/Authors/InstantSOLOOptions.xslt

-Customizable Database Object Changes

  • SOLO_AuthorAdd

SOLO Server 1.18.1.2
Released May 23, 2018

-Configuration File Changes

  • Web.config (refer to the blankWeb.config template file included in the zip file to merge in these changes).
    • New optional HttpIPAddressMasker module entry. Used in conjunction with IIS Advanced/Custom Logging to allow logging a masked IP address rather than the full IP address.
    • MonthlyFeesMode - New optional entry used internally by SoftwareKey for Instant SOLO billing. Does not apply to self-hosted instances of SOLO Server.

-Customizable Template/Resource File Changes

  • WebComponentPages/Xslt/Authors/CustomerDetails.xslt
  • WebComponentPages/Xslt/Authors/RptMonthlySummary.xslt

-Customizable Database Object Changes

  • SOLO_GetAuthorSession
  • SOLO_CreateSynchronizedProduct - A customization hook has been added to this stored procedure.
  • SOLO_GetChildAuthorCatalog - A customization hook has been added to this stored procedure.
  • SOLO_SynchronizeProduct - A customization hook has been added to this stored procedure.

SOLO Server 1.18.1.1
Released April 12, 2018

-Customizable Template/Resource File Changes

  • CustomHTML/AuthorsAdmin.htm
  • CustomHTML/AuthorsTop.htm
  • CustomHTML/AuthorsTopNET.htm
  • CustomHTML/AuthorsTopNETComponent.htm
  • WebComponentPages/Xml/Authors/CartOptions.xml
  • WebComponentPages/Xml/Authors/CustomerServiceOptions.xml
  • WebComponentPages/Xml/Authors/Groups.xml
  • WebComponentPages/Xml/Authors/Users.xml
  • WebComponentPages/Xslt/Authors/AuthorUserPermissions.xslt
  • WebComponentPages/Xslt/Authors/Groups.xslt
  • WebComponentPages/Xslt/Authors/ProductList.xslt
  • WebComponentPages/Xslt/Authors/Users.xslt

-Customizable Database Object Changes

  • SOLO_AddAuthor - A customization hook has been added to this stored procedure.
  • SOLO_GetCustomerServiceLicense
  • SOLO_Trig_InsertLicense A customization hook has been added to this trigger.

SOLO Server 1.18.1.0
Released March 8, 2018

-Configuration File Changes

  • SOLO.Config
    • HttpRequestValidatorConfiguration. The following exceptions must be added:
      • authors/addliclicrec.asp
      • authors/licensebulkadd.asp
  • Web.config (refer to the blankWeb.config template file included in the zip file to merge in these changes.)
    • New location element for the authors API which overrides request filtering and enables PUT and DELETE HTTP verbs. If using the recommended request filtering configuration, this must be uncommented. For upgrades, the location path attribute will need to be adjusted if SOLO Server is installed in a subdirectory.
    • ParentCatalogAuthorID - New optional entry which specifies the parent catalog Author ID when running in Multi-Tenant Catalog mode.

-Customizable Template/Resource File Changes

  • WebComponentPages/Xml/Authors/CustomerDetails.xml
  • WebComponentPages/Xml/Authors/CustomerEdit.xml
  • WebComponentPages/Xml/Customers/License.xml
  • WebComponentPages/Xslt/Authors/CustomerDetails.xslt
  • WebComponentPages/Xslt/Authors/ProductList.xslt
  • WebComponentPages/Xslt/Customers/License.xslt

-Customizable Stored Procedure Changes

  • SOLO_GetCustomerServiceLicense
  • SOLO_RptLicensesByCustomer
  • SOLO_RptLicensesByProduct

SOLO Server 1.17.1.6
Released December 20, 2017

-Customizable Template/Resource File Changes

  • CustomXSL/invoices/StandardCartInvoiceTemplates.xslt
  • CustomXSL/invoices/StandardInvoiceTemplates.xslt
  • WebComponentPages/Xml/Authors/NetworkFloatingOptions.xml
  • WebComponentPages/Xml/Authors/RptMonthlySummary.xml
  • WebComponentPages/Xml/Products/Invoice.xml
  • WebComponentPages/Xslt/Authors/NetworkFloatingOptions.xslt
  • WebComponentPages/Xslt/Authors/RptMonthlySummary.xslt
  • WebComponentPages/Xslt/Products/PayPalRedirect.xslt

-Customizable Stored Procedure Changes

  • SOLO_GetLicenseDataForActivation
  • SOLO_GetLicenseFileData
  • SOLO_GetNetworkSession

SOLO Server 1.17.1.5
Released November 10, 2017

-Configuration File Changes

  • Global.asa
    • UseLegacyMailer - This undocumented feature flag entry has been removed as it is no longer supported.
    • UseLegacyOpenDataConnection - This undocumented feature flag entry has been removed as it is no longer supported.

-Customizable Template/Resource File Changes

  • CustomHTML/AuthorsAdmin.htm
  • CustomHTML/AuthorsTop.htm
  • CustomHTML/AuthorsTopNET.htm
  • CustomHTML/AuthorsTopNETComponent.htm
  • WebComponentPages/Xml/Authors/CustomerServiceOptions.xml
  • WebComponentPages/Xml/Authors/FindCustomers.xml
  • WebComponentPages/Xml/Authors/LicenseDetails.xml
  • WebComponentPages/Xml/Authors/LicenseEdit.xml
  • WebComponentPages/Xml/Authors/NetworkFloatingOptions.xml
  • WebComponentPages/Xml/Customers/InstallationHistory.xml
  • WebComponentPages/Xslt/Authors/ConfigurePlugins.xslt
  • WebComponentPages/Xslt/Authors/FindCustomers.xslt
  • WebComponentPages/Xslt/Authors/LicenseDetails.xslt
  • WebComponentPages/Xslt/Authors/LicenseEdit.xslt
  • WebComponentPages/Xslt/Customers/InstallationHistory.xslt

-Customizable Stored Procedure/Function Changes

  • SOLO_GetAuthorEncryptionKeyForProduct
  • SOLO_GetLicenseDataForActivation
  • SOLO_GetNetworkSession

SOLO Server 1.17.1.4
Released September 29, 2017

-IMPORTANT NOTE

  • All upgrades require manually applying a database update after upgrading.
    • This update script can be long running on instances using cloud controlled network floating licensing with a large number of history records.
    • To minimize the downtime while IIS is stopped while running the installer, the update script is not run by the installer.
    • After the upgrade is completed, follow these steps to apply the updates:
      • Open %InstallDir%\SOLO\Database\Updates\ 1017001003_01_UpdateNetworkFloatingReportingIndexes.sql.MANUAL.txt in notepad and copy the contents to the clipboard.
      • Open SQL Server Management Studio, then open a new query window targeting the SOLO database. Paste the content copied in the prior step into the query window.
      • Execute the script. Depending on the number of records, the script may be long running.

-Configuration File Changes

  • Web.config
    • SWKeyProd_ConnectionTimeout - This entry has been removed.
    • SWKeyProd_CommandTimeout - This entry has been removed.
    • ConnectionProvider - New optional entry used to override the data provider for ADO in the COM based portions of SOLO Server. Leave blank to use the default of SQLNCLI11 or SQLOLEDB.1 based on availability.
    • IPLookupURL - New optional entry used to override the default IP address lookup URL of whois.arin.net for IP address lookups. Use use [varIPAddress] as a placeholder for the IP address.

-Customizable Template/Resource File Changes

  • CustomHTML/AuthorsAdmin.htm
  • CustomHTML/AuthorsBottom.htm
  • CustomHTML/AuthorsBottomNET.htm
  • CustomHTML/AuthorsBottomNETComponent.htm
  • CustomHTML/AuthorsTop.htm
  • CustomHTML/AuthorsTopNET.htm
  • CustomHTML/AuthorsTopNETComponent.htm
  • CustomHTML/CustomersTopNET.htm
  • CustomXSL/Mailings/AuthorOrderNotification.xslt
  • WebComponentPages/Xml/Authors/CustomerBill.xml
  • WebComponentPages/Xml/Authors/LicenseDetails.xml
  • WebComponentPages/Xml/Authors/RptLicensesByCustomer.xml
  • WebComponentPages/Xml/Customers/Customer.xml
  • WebComponentPages/Xml/Products/Register.xml
  • WebComponentPages/Xslt/Authors/ActivationDetail.xslt
  • WebComponentPages/Xslt/Authors/ActivationLog.xslt
  • WebComponentPages/Xslt/Authors/AuthorHome.xslt
  • WebComponentPages/Xslt/Authors/AuthorUserPermissions.xslt
  • WebComponentPages/Xslt/Authors/CustomerBill.xslt
  • WebComponentPages/Xslt/Authors/CustomerDetails.xslt
  • WebComponentPages/Xslt/Authors/Distributors.xslt
  • WebComponentPages/Xslt/Authors/FindCustomers.xslt
  • WebComponentPages/Xslt/Authors/InvoiceDetails.xslt
  • WebComponentPages/Xslt/Authors/LicenseDetails.xslt
  • WebComponentPages/Xslt/Authors/RptDeclinedOrders.xslt
  • WebComponentPages/Xslt/Authors/RptLicensesByCustomer.xslt
  • WebComponentPages/Xslt/Customers/NetworkSessionHistory.xslt
  • WebComponentPages/Xslt/Customers/RecurringPayment.xslt
  • WebComponentPages/Xslt/Customers/RecurringPayments.xslt

-Customizable Stored Procedure Changes

  • SOLO_GetCrossProductMarketingData
  • SOLO_GetCustomerServicePaymentHistory - A customization hook has been added to this stored procedure.
  • SOLO_Rpt_LicensesByCustomer - New stored procedure which includes a customization hook.
  • SOLO_Rpt_LicensesByProduct

-Database Changes

  • If using the payment plan processor:
    • Prior to performing the upgrade, rename %InstallDir%\Database\Jobs\VBScripts\ProcessPaymentPlans.vbs.
    • Open the renamed file in Notepad, and below the existing MAILER_PASSWORD constant on line 14, add a constant
      Const MAILER_ALWAYSLOGTOQUEUE = False
      and optionally set the value to True to enable all emails sent through network delivery to also be logged to the email queue directory.
    • After the upgrade, copy the constants from the top of the renamed file. Next, open the new version of the ProcessPaymentPlans.vbs file in Notepad and paste the constants copied previously over the default values.

-Other Changes

  • If using the cloud controlled network floating history page in the customer license portal along with a custom storefront
    • In the custom storefront HTML, add a reference to [SOLODirRoot]/Dependencies/font-awesome/css/font-awesome.min.css to the storefront HTML ([SOLODirRoot] is a placeholder which SOLO will replace with the correct path).
    • If not using the default customersNET.css file, merge in the #network-floating-details-overlay style from customersNET.css into your own css file and adjust as needed.

SOLO Server 1.17.1.2
Released August 10, 2017

-Configuration File Changes

  • Web.config and DailyProcessor.exe.config (refer to the blankWeb.config template file included in the zip file to merge in these changes.)
    • EmailAlwaysLogToQueue - New optional True/False entry. When set to True and using Network delivery, this will cause all emails to be logged to the EmailPickupDirectory in addition to being sent. This can be used to recover from a failure with a 3rd party email provider. Note that this is currently only supported for emails sent through portions of SOLO using the .NET. Framework.

-Customizable Template/Resource File Changes

  • CustomHTML/AuthorsAdmin.htm
  • CustomHTML/AuthorsTop.htm
  • CustomHTML/AuthorsTopNET.htm
  • CustomHTML/AuthorsTopNETComponent.htm
  • WebComponentPages/Xslt/Authors/AccountOptions.xslt
  • WebComponentPages/Xslt/Authors/ActivationDetail.xslt
  • WebComponentPages/Xslt/Authors/AdvancedCartOptions.xslt
  • WebComponentPages/Xslt/Authors/AuthorAdvancedOptions.xslt
  • WebComponentPages/Xslt/Authors/AuthorContactDetails.xslt
  • WebComponentPages/Xslt/Authors/AuthorEncryptionKey.xslt
  • WebComponentPages/Xslt/Authors/CartOptions.xslt
  • WebComponentPages/Xslt/Authors/CustomerDetails.xslt
  • WebComponentPages/Xslt/Authors/CustomerEdit.xslt
  • WebComponentPages/Xslt/Authors/CustomMarkup.xslt
  • WebComponentPages/Xslt/Authors/DailyProcesses.xslt
  • WebComponentPages/Xslt/Authors/Default.xslt
  • WebComponentPages/Xslt/Authors/Distributors.xslt
  • WebComponentPages/Xslt/Authors/ImportProductSerialNumbers.xslt
  • WebComponentPages/Xslt/Authors/InvoiceDetails.xslt
  • WebComponentPages/Xslt/Authors/LicenseDetails.xslt
  • WebComponentPages/Xslt/Authors/LicenseEdit.xslt
  • WebComponentPages/Xslt/Authors/Mailings.xslt
  • WebComponentPages/Xslt/Authors/MerchantAccounts.xslt
  • WebComponentPages/Xslt/Authors/PaymentPlanInstance.xslt
  • WebComponentPages/Xslt/Authors/PaymentPlans.xslt
  • WebComponentPages/Xslt/Authors/PriorityCodes.xslt
  • WebComponentPages/Xslt/Authors/ServerLicenseManualRequest.xslt
  • WebComponentPages/Xslt/Authors/SubmitFeedback.xslt
  • WebComponentPages/Xslt/Authors/TicketOptions.xslt
  • WebComponentPages/Xslt/Authors/Transactions.xslt
  • WebComponentPages/Xslt/Authors/Warehouses.xslt

-Customizable Stored Procedure Changes

  • SOLO_GetAuthorSession
  • SOLO_GetCreditCardBillingReminderData
  • SOLO_GetCrossProductMarketingData
  • SOLO_GetCustomerSubscriptionExpirationNotificationData
  • SOLO_GetNonActivatedLicenseNotificationData
  • SOLO_Rpt_ExpiredLicenses
  • SOLO_RptLicensesByProduct

-Database Changes

  • If using the payment plan processor, prior to performing the upgrade, rename %InstallDir%\Database\Jobs\VBScripts\ProcessPaymentPlans.vbs. After the upgrade, open the renamed file in Notepad and copy the constants from the top of the file. Next, open the new version of the ProcessPaymentPlans.vbs file in Notepad and paste the constants copied previously over the default values.

SOLO Server 1.17.1.1
Released July 3, 2017

-Configuration File Changes

  • web.config (refer to the blankWeb.config template file included in the zip file to merge in these changes.)
    • DisableNewAuthorHomePage - new optional True/False entry which will disable the new author home page and revert to the previous version.

-Customizable Template/Resource File Changes

  • CustomHTML/AuthorsAdmin.htm
  • CustomHTML/AuthorsBottom.htm
  • CustomHTML/AuthorsBottomNET.htm
  • CustomHTML/AuthorsBottomNETComponent.htm
  • CustomHTML/AuthorsTop.htm
  • CustomHTML/AuthorsTopNET.htm
  • CustomHTML/AuthorsTopNETComponent.htm
  • WebComponentPages/Xml/Authors/AuthorAdvancedOptions.xml
  • WebComponentPages/Xml/Authors/CartOptions.xml
  • WebComponentPages/Xml/Authors/FastSpringOptions.xml
  • WebComponentPages/Xml/Authors/InstantSOLOOptions.xml
  • WebComponentPages/Xml/Authors/NetworkFloatingOptions.xml
  • WebComponentPages/Xml/Authors/ProductList.xml
  • WebComponentPages/Xml/Authors/RptRecorders.xml
  • WebComponentPages/Xml/Customers/Customer.xml
  • WebComponentPages/Xml/Products/Login.xml
  • WebComponentPages/Xslt/Authors/AuthorHome.xslt
  • WebComponentPages/Xslt/Authors/CustomerDetails.xslt
  • WebComponentPages/Xslt/Authors/FastSpringOptions.xslt
  • WebComponentPages/Xslt/Authors/InvoiceDetails.xslt
  • WebComponentPages/Xslt/Authors/NetworkFloatingOptions.xslt
  • WebComponentPages/Xslt/Authors/ProductList.xslt
  • WebComponentPages/Xslt/Authors/RptRecorders.xslt
  • WebComponentPages/Xslt/Customers/Customer.xslt
  • WebComponentPages/Xslt/Customers/ForgotPassword.xslt
  • WebComponentPages/Xslt/Customers/ResetCustomerPassword.xslt
  • WebComponentPages/Xslt/Products/Login.xslt

-Customizable Stored Procedure Changes

  • SOLO_Get_LostPW2 - A customization hook has been added to this stored procedure.
  • SOLO_GetAuthorSession
  • SOLO_GetCustomerServiceNetworkSessionHistoryData
  • SOLO_GetInvoiceForXMLNotification
  • SOLO_GetNetworkSession

SOLO Server 1.17.1.0
Released March 7, 2017

-Configuration File Changes

  • web.config (refer to the blankWeb.config template file included in the zip file to merge in these changes.)
    • Add a new UrlRoutingModule-4.0-CustomersAPI to the system.webServer\handlers section.
    • CustomerServiceListingRecordCount - new optional entry which overrides the default of 15 items per page in the listing pages in the customer license portal.
    • SwitchAuthorMode - new optional entry which controls the behavior of the author switching dialog. This can be set to None to disable the dialog, or AutoSearch to have the dialog automatically display all open author accounts upon being opened.

-Customizable Template/Resource File Changes

  • CustomHTML/AuthorsBottom.htm
  • CustomHTML/AuthorsBottomNET.htm
  • CustomHTML/AuthorsBottomNETComponent.htm
  • CustomHTML/AuthorsTop.htm
  • CustomHTML/AuthorsTopNET.htm
  • CustomHTML/AuthorsTopNETComponent.htm
  • WebComponentPages/Xml/Authors/AuthorCCDetails.xml
  • WebComponentPages/Xml/Authors/CustomerServiceOptions.xml
  • WebComponentPages/Xml/Authors/RptExportNetworkFloatingHistory.xml
  • WebComponentPages/Xml/Authors/RptMonthlySummary.xml
  • WebComponentPages/Xml/Common/Countries.xml
  • WebComponentPages/Xml/Customers/License.xml
  • WebComponentPages/Xml/Customers/LicenseHistory.xml
  • WebComponentPages/Xml/Customers/NetworkSessionHistory.xml
  • WebComponentPages/Xml/Customers/NetworkSessionHistory.xml.pt-br
  • WebComponentPages/Xml/Customers/NetworkSessions.xml
  • WebComponentPages/Xslt/Authors/AuthorComponentPage.xslt
  • WebComponentPages/Xslt/Authors/AuthorComponentPageTemplates.xslt
  • WebComponentPages/Xslt/Authors/AuthorReportComponentPage.xslt
  • WebComponentPages/Xslt/Authors/CustomerBill.xslt
  • WebComponentPages/Xslt/Authors/CustomerServiceOptions.xslt
  • WebComponentPages/Xslt/Authors/Default.xslt
  • WebComponentPages/Xslt/Authors/LicenseDetails.xslt
  • WebComponentPages/Xslt/Authors/Malls.xslt
  • WebComponentPages/Xslt/Authors/MwFindCustomer.xslt
  • WebComponentPages/Xslt/Authors/MwSelectCustomerLicense.xslt
  • WebComponentPages/Xslt/Authors/RptExportNetworkFloatingHistory.xslt
  • WebComponentPages/Xslt/Authors/RptMonthlySummary.xslt
  • WebComponentPages/Xslt/Authors/ServerLicense.xslt
  • WebComponentPages/Xslt/Customers/License.xslt
  • WebComponentPages/Xslt/Customers/LicenseHistory.xslt
  • WebComponentPages/Xslt/Customers/NetworkSessionHistory.xslt
  • WebComponentPages/Xslt/Customers/NetworkSessions.xslt

-Customizable Stored Procedure Changes

  • SOLO_GetAuthorSession - A customization hook has been added to this stored procedure.
  • SOLO_GetCustomerServiceLicense
  • SOLO_GetCustomerServiceNetworkSessionHistory - new stored procedure with a customization hook.
  • SOLO_GetCustomerServiceNetworkSessionHistoryData - new stored procedure with a customization hook.
  • SOLO_GetCustomerServiceInstallationHistory2012 - new stored procedure with a customization hook.
  • SOLO_GetLicenseFileData - A customization hook has been added to this stored procedure.
  • SOLO_PurgeTestTransactions
  • SOLO_Rpt_LicensesByProduct

SOLO Server 1.16.2.2
Released December 6, 2016

-Configuration File Changes

  • web.config (refer to the blankWeb.config template file included in the zip file to merge in these changes.)
    • After the release of SOLO Server 1.16.2.1, it was found that the new administrative interface did not work properly with certain IIS configurations.
    • To address this, the web.config file needs to be updated to properly load the UrlRouting module for the required paths. To do so, merge in the new system.webServer/handlers section into the web.config file, adjusting the path attribute of each entry if running SOLO Server in a subdirectory.

-Customizable Template/Resource File Changes

  • CustomHTML/AuthorsTop.htm
  • CustomHTML/AuthorsTopNET.htm
  • CustomHTML/AuthorsTopNETComponent.htm
  • WebComponentPages/Xslt/Authors/ActivationLog.xslt
  • WebComponentPages/Xslt/Authors/CustomerDetails.xslt

SOLO Server 1.16.2.1
Released November 16, 2016

-IMPORTANT NOTES

  • New features in this version of SOLO require running SOLO Server in an application pool using Integrated Managed Pipeline Mode. As a result, as part of the upgrade, it is required to upgrade both the IIS and web site configuration accordingly.
  • During the SOLO Server upgrade, you should follow these additional instructions to ensure that the application pool is configured correctly, as well as to prepare an updated configuration file to swap in after the upgrade.
    • To minimize downtime during and after the upgrade, it is recommended to merge in the required changes to the web.config file into a copy of the file ahead of time which can be quickly swapped in after the upgrade is complete. Follow the instructions below in the "Configuration File Changes" section below on a copy of the web.config file.
    • Run the SOLO Server installer and upgrade SOLO.
    • Once the upgrade is complete, open IIS Manager and locate the application pool SOLO Server is running under. Right click on the application pool and choose Advanced Settings...
    • In the dialog, locate the Managed Pipeline Mode setting in the General section, and change this to Integrated if not already set to this. Click OK to save the change.
    • Finally, swap in the updated web.config file.

-Configuration File Changes

  • web.config (refer to the blankWeb.config template file included in the zip file to merge in most of these changes. Unless otherwise noted, the new entries can simply be merged in directly from this file.)
    • Changes related to moving to using an application pool using Integrated Managed Pipeline Mode:
      • Remove the httpModules node from the system.web node, and replace it with a new modules section in the system.webServer node.
      • If present, remove the <validation validateIntegratedModeConfiguration="false" /> element from the system.WebServer node.
    • Changes related to enabling new SOLO Server functionality:
      • Add a targetFramework="4.6.1" attribute to the system.web/httpRuntime node.
      • Add a new staticContent section to the system.webServer node defining the MIME mappings for the .woff and .woff2 file extensions, which are not defined by default on certain versions of Windows Server.
      • Add a new runtime element defining the assembly bindings for several new SOLO Server dependencies.
      • Add a new connectionStrings element with the database connection string to be used with new, Entity Framework based functionality. Replace the first 3 parameters in the connection string (Integrated Security=SSPI;Initial Catalog=;Data Source=.;) with the value of the existing ConnectionString entry under appSettings.
      • Add a new <add key="ValidationSettings:UnobtrusiveValidationMode" value="None" /> element to the appSettings element to enable compatibility for several older, ASP.NET WebForms based pages.

-Customizable Template/Resource File Changes

  • CustomHTML/AuthorsBottom.htm
  • CustomHTML/AuthorsBottomNET.htm
  • CustomHTML/AuthorsBottomNETComponent.htm
  • CustomHTML/AuthorsTop.htm
  • CustomHTML/AuthorsTopNET.htm
  • CustomHTML/AuthorsTopNETComponent.htm
  • CustomXML/Mailings/CustomerChangePasswordNotification.xml
  • CustomXML/Mailings/FastSpringAuthorOrderNotification.xml
  • CustomXSL/Mailings/CustomerChangePasswordNotification.xslt
  • CustomXSL/Mailings/FastSpringAuthorOrderNotification.xslt
  • WebComponentPages/Xml/Authors/AccountOptions.xml
  • WebComponentPages/Xml/Authors/ActivationLog.xml
  • WebComponentPages/Xml/Authors/AuthorCCDetails.xml
  • WebComponentPages/Xml/Authors/AuthorHome.xml
  • WebComponentPages/Xml/Authors/CustomerDetails.xml
  • WebComponentPages/Xml/Authors/CustomerEdit.xml
  • WebComponentPages/Xml/Authors/Default.xml
  • WebComponentPages/Xml/Authors/Distributors.xml
  • WebComponentPages/Xml/Authors/FindCustomers.xml
  • WebComponentPages/Xml/Authors/InstantSOLOOptions.xml
  • WebComponentPages/Xml/Authors/LicenseDetails.xml
  • WebComponentPages/Xml/Authors/MerchantAccounts.xml
  • WebComponentPages/Xml/Authors/MergeCustomers.xml
  • WebComponentPages/Xml/Authors/PaymentPlans.xml
  • WebComponentPages/Xml/Authors/PriorityCodes.xml
  • WebComponentPages/Xml/Authors/ProductList.xml
  • WebComponentPages/Xml/Authors/RptActivationDataExport.xml
  • WebComponentPages/Xml/Authors/RptAllSalesSummary.xml
  • WebComponentPages/Xml/Authors/RptCustomerStats.xml
  • WebComponentPages/Xml/Authors/RptDownloadDemoStats.xml
  • WebComponentPages/Xml/Authors/RptDownloadTrialLog.xml
  • WebComponentPages/Xml/Authors/RptESDDownloadLog.xml
  • WebComponentPages/Xml/Authors/RptEuropeanUnionVAT.xml
  • WebComponentPages/Xml/Authors/RptExportCustomers.xml
  • WebComponentPages/Xml/Authors/RptExportLicenses.xml
  • WebComponentPages/Xml/Authors/RptOnlineSalesSummary.xml
  • WebComponentPages/Xml/Authors/RptPriorityCodes.xml
  • WebComponentPages/Xml/Authors/RptReturnReasons.xml
  • WebComponentPages/Xml/Authors/RptSources.xml
  • WebComponentPages/Xml/Authors/RptUnitCompareByDistributor.xml
  • WebComponentPages/Xml/Authors/RptUnitCompareByOption.xml
  • WebComponentPages/Xml/Authors/RptUnshippedOrders.xml
  • WebComponentPages/Xml/Authors/StoredPaymentInfo.xml
  • WebComponentPages/Xml/Authors/SubmitFeedback.xml
  • WebComponentPages/Xml/Authors/Transactions.xml
  • WebComponentPages/Xml/Authors/ViewCatalog.xml
  • WebComponentPages/Xml/Common/UserComponents/CreditCardUserComponent.xml
  • WebComponentPages/Xml/Common/UserComponents/UserComponent.xml
  • WebComponentPages/Xml/Common/UserComponents/UserComponent.xml.de
  • WebComponentPages/Xml/Common/UserComponents/UserComponent.xml.es
  • WebComponentPages/Xml/Common/UserComponents/UserComponent.xml.fr
  • WebComponentPages/Xml/Common/UserComponents/UserComponent.xml.it
  • WebComponentPages/Xml/Common/UserComponents/UserComponent.xml.pt-br
  • WebComponentPages/Xml/Customers/Customer.xml
  • WebComponentPages/Xslt/Authors/ActivationDetail.xslt
  • WebComponentPages/Xslt/Authors/ActivationLog.xslt
  • WebComponentPages/Xslt/Authors/AuthorCCDetails.xslt
  • WebComponentPages/Xslt/Authors/AuthorComponentPage.xslt
  • WebComponentPages/Xslt/Authors/AuthorComponentPageTemplates.xslt
  • WebComponentPages/Xslt/Authors/AuthorEncryptionKey.xslt
  • WebComponentPages/Xslt/Authors/AuthorHome.xslt
  • WebComponentPages/Xslt/Authors/AuthorPagingTemplates.xslt
  • WebComponentPages/Xslt/Authors/AuthorPanelTemplates.xslt
  • WebComponentPages/Xslt/Authors/AuthorReportComponentPage.xslt
  • WebComponentPages/Xslt/Authors/AuthorUserPermissions.xslt
  • WebComponentPages/Xslt/Authors/ChangeUserPassword.xslt
  • WebComponentPages/Xslt/Authors/CustomerDetails.xslt
  • WebComponentPages/Xslt/Authors/CustomerEdit.xslt
  • WebComponentPages/Xslt/Authors/CustomMarkup.xslt
  • WebComponentPages/Xslt/Authors/Default.xslt
  • WebComponentPages/Xslt/Authors/Distributors.xslt
  • WebComponentPages/Xslt/Authors/DistributorTypes.xslt
  • WebComponentPages/Xslt/Authors/FindCustomers.xslt
  • WebComponentPages/Xslt/Authors/Groups.xslt
  • WebComponentPages/Xslt/Authors/InstantSOLOOptions.xslt
  • WebComponentPages/Xslt/Authors/InvoiceDetails.xslt
  • WebComponentPages/Xslt/Authors/LicenseDetails.xslt
  • WebComponentPages/Xslt/Authors/Mailings.xslt
  • WebComponentPages/Xslt/Authors/MerchantAccounts.xslt
  • WebComponentPages/Xslt/Authors/MergeCustomers.xslt
  • WebComponentPages/Xslt/Authors/MwFindCustomer.xslt
  • WebComponentPages/Xslt/Authors/MwSelectCustomerLicense.xslt
  • WebComponentPages/Xslt/Authors/Notices.xslt
  • WebComponentPages/Xslt/Authors/PaymentPlanInstance.xslt
  • WebComponentPages/Xslt/Authors/PaymentPlans.xslt
  • WebComponentPages/Xslt/Authors/PriorityCodes.xslt
  • WebComponentPages/Xslt/Authors/ProductList.xslt
  • WebComponentPages/Xslt/Authors/RptAuditExport.xslt
  • WebComponentPages/Xslt/Authors/RptExportCustomers.xslt
  • WebComponentPages/Xslt/Authors/RptExportLicenses.xslt
  • WebComponentPages/Xslt/Authors/RptLicensesByProduct.xslt
  • WebComponentPages/Xslt/Authors/RptMonthlySummary.xslt
  • WebComponentPages/Xslt/Authors/ServerLicense.xslt
  • WebComponentPages/Xslt/Authors/StoredPaymentInfo.xslt
  • WebComponentPages/Xslt/Authors/SubmitFeedback.xslt
  • WebComponentPages/Xslt/Authors/Transactions.xslt
  • WebComponentPages/Xslt/Authors/Users.xslt
  • WebComponentPages/Xslt/Authors/ViewCatalog.xslt
  • WebComponentPages/Xslt/Common/UserComponents/UserComponent.xslt
  • WebComponentPages/Xslt/Common/UserProperties/TextProperties.xslt
  • WebComponentPages/Xslt/Common/UserProperties/UserProperties.xslt
  • WebComponentPages/Xslt/Common2/UserComponents/UserComponent.xslt
  • WebComponentPages/Xslt/Customers/Customer.xslt

-Customizable Stored Procedure Changes

  • SOLO_CheckString
  • SOLO_DisablePaymentPlanInstance - A customization hook has been added to this stored procedure.
  • SOLO_FastSpringNewLicense
  • SOLO_GetCustomerServiceHome
  • SOLO_GetNetworkSession
  • SOLO_PurgeTestTransactions
  • SOLO_Rpt_LicensesByProduct

SOLO Server 1.16.2.0
Released September 2, 2016

-Customizable Template/Resource File Changes

  • WebComponentPages/Xml/Authors/RptMonthlySummary.xml
  • WebComponentPages/Xml/Customers/Default.xml
  • WebComponentPages/Xml/Customers/Default.xml.pt-br
  • WebComponentPages/Xml/Customers/ForgotPassword.xml
  • WebComponentPages/Xml/Customers/ForgotPassword.xml.pt-br
  • WebComponentPages/Xml/Customers/ResetCustomerPassword.xml
  • WebComponentPages/Xml/Customers/ResetCustomerPassword.xml.pt-br
  • WebComponentPages/Xslt/Authors/RptMonthlySummary.xslt
  • WebComponentPages/Xslt/Customers/Default.xslt

-Customizable Stored Procedure Changes

  • SOLO_ValidateCustomerLogin

SOLO Server 1.16.1.3
Released August 24, 2016

-Configuration File Changes

  • UPDATE: As of version 1.16.2.1, use of Integrated Managed Pipleline Mode is now a requirement. These instructions have been replaced by the instructions for version 1.16.2.1, and can be ignored if upgrading to version 1.16.2.1 or greater.
  • SOLO Server can now be run in an application pool configured to use Integrated Managed Pipeline Mode. No changes should be needed for existing installations. If you would like to change to Integrated Managed Pipeline Mode, the following changes need to be made to the web.config file:
    • Copy the httpModules node from the system.web node, and paste this into the system.webServer node. Once copied, rename the httpModules node to modules.
    • Add the following element to the top of the system.webServer node:
      • <validation validateIntegratedModeConfiguration="false" />

-Customizable Template/Resource File Changes

  • CustomXML/authors/AuthorMenu.xml
  • CustomXSL/invoices/StandardCartInvoiceTemplates.xslt
  • CustomXSL/invoices/StandardInvoiceTemplates.xslt
  • WebComponentPages/Xml/Authors/AuditDisplay.xml
  • WebComponentPages/Xml/Authors/BaseReportProperties.xml
  • WebComponentPages/Xml/Authors/ChangeUserPassword.xml
  • WebComponentPages/Xml/Authors/ConfigurePlugins.xml
  • WebComponentPages/Xml/Authors/CustomerDetails.xml
  • WebComponentPages/Xml/Authors/CustomMarkup.xml
  • WebComponentPages/Xml/Authors/DailyProcesses.xml
  • WebComponentPages/Xml/Authors/MerchantAccounts.xml
  • WebComponentPages/Xml/Authors/MergeCustomers.xml
  • WebComponentPages/Xml/Authors/RptExportCustomers.xml
  • WebComponentPages/Xml/Authors/Users.xml
  • WebComponentPages/Xml/Customers/AddLicense.xml
  • WebComponentPages/Xml/Customers/DownloadFile.xml
  • WebComponentPages/Xml/Customers/DownloadFile.xml.pt-br
  • WebComponentPages/Xml/Customers/DownloadLicenseFile.xml
  • WebComponentPages/Xml/Customers/DownloadLicenseFile.xml.pt-br
  • WebComponentPages/Xml/Customers/InstallationHistory.xml
  • WebComponentPages/Xml/Customers/InstallationHistory.xml.pt-br
  • WebComponentPages/Xml/Customers/License.xml
  • WebComponentPages/Xml/Customers/License.xml.pt-br
  • WebComponentPages/Xml/Customers/LicenseAgreement.xml
  • WebComponentPages/Xml/Customers/LicenseAgreement.xml.pt-br
  • WebComponentPages/Xml/Customers/PLUSActivation.xml
  • WebComponentPages/Xml/Customers/PLUSActivation.xml.pt-br
  • WebComponentPages/Xml/Customers/RecurringPayment.xml
  • WebComponentPages/Xml/Customers/RecurringPayment.xml.pt-br
  • WebComponentPages/Xml/Customers/RecurringPayments.xml
  • WebComponentPages/Xml/Customers/RecurringPayments.xml.pt-br
  • WebComponentPages/Xml/Customers/ResetCustomerPassword.xml
  • WebComponentPages/Xml/Customers/ResetCustomerPassword.xml.pt-br
  • WebComponentPages/Xml/Products/Login.xml
  • WebComponentPages/Xml/Products/Login.xml.de
  • WebComponentPages/Xml/Products/Login.xml.es
  • WebComponentPages/Xml/Products/Login.xml.fr
  • WebComponentPages/Xml/Products/Login.xml.it
  • WebComponentPages/Xslt/Authors/AuditDisplay.xslt
  • WebComponentPages/Xslt/Authors/AuthorComponentPage.xslt
  • WebComponentPages/Xslt/Authors/AuthorComponentPageTemplates.xslt
  • WebComponentPages/Xslt/Authors/AuthorHome.xslt
  • WebComponentPages/Xslt/Authors/AuthorReportComponentPage.xslt
  • WebComponentPages/Xslt/Authors/AuthorUserPermissions.xslt
  • WebComponentPages/Xslt/Authors/ConfigurePlugins.xslt
  • WebComponentPages/Xslt/Authors/CustomerDetails.xslt
  • WebComponentPages/Xslt/Authors/InvoiceDetails.xslt
  • WebComponentPages/Xslt/Authors/MerchantAccounts.xslt
  • WebComponentPages/Xslt/Authors/MergeCustomers.xslt
  • WebComponentPages/Xslt/Authors/MwFindCustomer.xslt
  • WebComponentPages/Xslt/Authors/MwSelectCustomerLicense.xslt
  • WebComponentPages/Xslt/Authors/RptAuditExport.xslt
  • WebComponentPages/Xslt/Authors/RptExportCustomers.xslt
  • WebComponentPages/Xslt/Authors/ServerLicense.xslt
  • WebComponentPages/Xslt/Authors/Users.xslt
  • WebComponentPages/Xslt/Customers/AddLicense.xslt
  • WebComponentPages/Xslt/Customers/ChangeCustomerPassword.xslt
  • WebComponentPages/Xslt/Customers/ChangePassword.xslt
  • WebComponentPages/Xslt/Customers/CustomerPage.xslt
  • WebComponentPages/Xslt/Customers/License.xslt
  • WebComponentPages/Xslt/Customers/PLUSActivation.xslt
  • WebComponentPages/Xslt/Customers/RecurringPayment.xslt
  • WebComponentPages/Xslt/Customers/RecurringPayments.xslt
  • WebComponentPages/Xslt/Customers/ResetCustomerPassword.xslt
  • WebComponentPages/Xslt/Products/Login.xslt
  • WebComponentPages/Xslt/Products/Payment.xslt

-Customizable Stored Procedure Changes

  • SOLO_DeactivateInstallation
  • SOLO_GetCreditCardBillingReminderData - A customization hook has been added to this stored procedure.

SOLO Server 1.16.1.2
Released June 30, 2016

-IMPORTANT NOTES

  • This version of SOLO has been updated to target the .NET 4.6.1 framework. Previous versions of SOLO targeted the .NET 4.0 framework.
  • Prior to upgrading to this version of SOLO, you should ensure that the .NET 4.6.1 framework is installed on both the web and database server(s).
  • To verify that the .NET 4.6.1 framework is installed, simply run the SOLO Server installer. If the .NET 4.6.1 framework is not installed, the installer will display an error message.

-Configuration File Changes

  • Web.Config
    • The targetFramework attribute of the system.web\compilation element needs to be updated to 4.6.1.

-Customizable Template/Resource File Changes

  • CustomXSL/invoices/StandardCartInvoiceTemplates.xslt
  • CustomXSL/invoices/StandardInvoiceTemplates.xslt
  • WebComponentPages/Xml/Authors/CustomerServiceOptions.xml
  • WebComponentPages/Xml/Customers/Customer.xml
  • WebComponentPages/Xml/Customers/CustomerPage.xml.pt-br
  • WebComponentPages/Xml/Customers/License.xml
  • WebComponentPages/Xml/Customers/License.xml.pt-br
  • WebComponentPages/Xml/Customers/RecurringPayment.xml
  • WebComponentPages/Xml/Customers/RecurringPayment.xml.pt-br
  • WebComponentPages/Xml/Products/Payment.xml
  • WebComponentPages/Xml/Products/Payment.xml.de
  • WebComponentPages/Xml/Products/Payment.xml.es
  • WebComponentPages/Xml/Products/Payment.xml.fr
  • WebComponentPages/Xml/Products/Payment.xml.it
  • WebComponentPages/Xslt/Authors/ActivationDetail.xslt
  • WebComponentPages/Xslt/Authors/ActivationLog.xslt
  • WebComponentPages/Xslt/Authors/EmailInvoice.xslt
  • WebComponentPages/Xslt/Customers/Customer.xslt
  • WebComponentPages/Xslt/Customers/RecurringPayment.xslt

-Customizable Stored Procedure Changes

  • SOLO_DeactivateInstallation - A customization hook has been added to this stored procedure.
  • SOLO_Rpt_LicensesByProduct
  • SOLO_ValidateCustomerLogin

SOLO Server 1.16.1.1
Released June 13, 2016

-Customizable Template/Resource File Changes

  • CustomHTML/AuthorsTopNETComponent.htm
  • CustomXML/authors/AuthorMenu.xml
  • WebComponentPages/Xml/Authors/AuthorHome.xml
  • WebComponentPages/Xml/Authors/ChangeUserPassword.xml
  • WebComponentPages/Xml/Authors/InstantSOLOOptions.xml
  • WebComponentPages/Xml/Authors/LicenseDetails.xml
  • WebComponentPages/Xml/Authors/PLUSActivation.xml
  • WebComponentPages/Xml/Authors/RptMonthlySummary.xml
  • WebComponentPages/Xml/Authors/Users.xml
  • WebComponentPages/Xml/Customers/ChangeCustomerPassword.xml
  • WebComponentPages/Xml/Customers/CustomerPage.xml
  • WebComponentPages/Xml/Customers/License.xml
  • WebComponentPages/Xml/Customers/License.xml.pt-br
  • WebComponentPages/Xml/Customers/PaymentInfo.xml
  • WebComponentPages/Xml/Customers/PaymentInfo.xml.pt-br
  • WebComponentPages/Xml/Customers/RecurringPayment.xml
  • WebComponentPages/Xml/Customers/RecurringPayment.xml.pt-br
  • WebComponentPages/Xml/Customers/RecurringPayments.xml
  • WebComponentPages/Xml/Customers/RecurringPayments.xml.pt-br
  • WebComponentPages/Xslt/Authors/AuthorHome.xslt
  • WebComponentPages/Xslt/Authors/AuthorUserPermissions.xslt
  • WebComponentPages/Xslt/Authors/ChangeUserPassword.xslt
  • WebComponentPages/Xslt/Authors/CustomerDetails.xslt
  • WebComponentPages/Xslt/Authors/LicenseDetails.xslt
  • WebComponentPages/Xslt/Authors/RptMonthlySummary.xslt
  • WebComponentPages/Xslt/Customers/ChangeCustomerPassword.xslt
  • WebComponentPages/Xslt/Customers/CustomerPage.xslt
  • WebComponentPages/Xslt/Customers/License.xslt
  • WebComponentPages/Xslt/Customers/RecurringPayment.xslt
  • WebComponentPages/Xslt/Customers/RecurringPayments.xslt
  • WebComponentPages/Xslt/Customers/RenewalsAndUpgrades.xslt
  • WebComponentPages/Xslt/Customers/SelectAccount.xslt

-Customizable Stored Procedure Changes

  • SOLO_FastSpringNewLicense
  • SOLO_GetCustomerServiceLicense
  • SOLO_GetLicenseDataForActivation
  • SOLO_PurgeTestTransactions

-Other Changes/Manual Steps:

  • After the installation, remove the following files from the web site bin directory that are no longer in use (these are automatically removed from the installation directory, however the installer currently does not support removing from the web site directory):
    • GrapeCity.ActiveReports.*.v7.dll

SOLO Server 1.16.1.0
Released April 11, 2016

No Changes


SOLO Server 1.15.2.4
Released March 29, 2016

-IMPORTANT NOTES

  • All upgrades require manually applying several database updates after upgrading.
    • These update scripts can be long running on instances with a large number of license or customer records.
    • To minimize the downtime while IIS is stopped while running the installer, these update scripts are not run by the installer.
    • After the upgrade is completed, follow these steps to apply the updates:
      • Open %InstallDir%\SOLO\Database\Updates\ 1015002004_03_UpdateLicenseActivationPasswordToUppercase.sql.MANUAL.txt in notepad and copy the contents to the clipboard.
      • Open SQL Server Management Studio, then open a new query window targeting the SOLO database. Paste the content copied in the prior step into the query window.
      • Execute the script. Depending on the number of licenses, the script may be long running. To help alleviate potential locking and blocking, the script will update the existing licenses in batches rather than in a single update.
      • Open %InstallDir%\SOLO\Database\Updates\ 1015002004_14_InitializePasswordSource.sql.MANUAL.txt in notepad and copy the contents to the clipboard.
      • Paste the content copied in the prior step into the query window in SQL Server Management Studio.
      • Execute the script. Depending on the number of customers, the script may be long running. To help alleviate potential locking and blocking, the script performs the majority of its work against temporary staging tables, and only performs one bulk update of live data.

-Configuration File Changes

  • SOLO.Config
    • HttpRequestValidatorConfiguration. The following exceptions can be removed:
      • affiliate/custpageedit.asp
      • authors/custaffpageedit.asp
      • authors/custpageedit.asp
      • authors/custprodpageedit.asp

-Customizable Template/Resource File Changes

  • CustomHTML/ProductsTopNET.htm
  • CustomXML/authors/AuthorMenu.xml
  • CustomXSL/invoices/StandardCartInvoiceTemplates.xslt
  • CustomXSL/invoices/StandardInvoiceTemplates.xslt
  • WebComponentPages/Xml/Authors/ActivationLog.xml
  • WebComponentPages/Xml/Authors/AuditDisplay.xml
  • WebComponentPages/Xml/Authors/AuthorAdvancedOptions.xml
  • WebComponentPages/Xml/Authors/AuthorHome.xml
  • WebComponentPages/Xml/Authors/CartOptions.xml
  • WebComponentPages/Xml/Authors/ChangeCustomerPassword.xml
  • WebComponentPages/Xml/Authors/CustomerBill.xml
  • WebComponentPages/Xml/Authors/CustomerDetails.xml
  • WebComponentPages/Xml/Authors/CustomerEdit.xml
  • WebComponentPages/Xml/Authors/CustomerServiceOptions.xml
  • WebComponentPages/Xml/Authors/CustomMarkup.xml
  • WebComponentPages/Xml/Authors/DistributorOptions.xml
  • WebComponentPages/Xml/Authors/Distributors.xml
  • WebComponentPages/Xml/Authors/FindCustomers.xml
  • WebComponentPages/Xml/Authors/InstantSOLOOptions.xml
  • WebComponentPages/Xml/Authors/LicenseDetails.xml
  • WebComponentPages/Xml/Authors/LicenseEdit.xml
  • WebComponentPages/Xml/Authors/MwAddCustomer.xml
  • WebComponentPages/Xml/Authors/MwViewCustomerLicense.xml
  • WebComponentPages/Xml/Authors/PLUSActivation.xml
  • WebComponentPages/Xml/Authors/RptMonthlySummary.xml
  • WebComponentPages/Xml/Customers/ChangePassword.xml
  • WebComponentPages/Xml/Customers/Customer.xml
  • WebComponentPages/Xml/Customers/CustomerHome.xml
  • WebComponentPages/Xml/Customers/CustomerHome.xml.pt-br
  • WebComponentPages/Xml/Customers/License.xml
  • WebComponentPages/Xml/Customers/License.xml.pt-br
  • WebComponentPages/Xml/Customers/SelectAccount.xml
  • WebComponentPages/Xml/Customers/SelectAccount.xml.pt-br
  • WebComponentPages/Xml/Products/OrderDecline.xml
  • WebComponentPages/Xml/Products/OrderDecline.xml.de
  • WebComponentPages/Xml/Products/OrderDecline.xml.es
  • WebComponentPages/Xml/Products/OrderDecline.xml.fr
  • WebComponentPages/Xml/Products/OrderDecline.xml.it
  • WebComponentPages/Xml/Products/PaymentStatus.xml
  • WebComponentPages/Xml/Products/PaymentStatus.xml.de
  • WebComponentPages/Xml/Products/PaymentStatus.xml.es
  • WebComponentPages/Xml/Products/PaymentStatus.xml.fr
  • WebComponentPages/Xml/Products/PaymentStatus.xml.it
  • WebComponentPages/Xml/Products/Register.xml
  • WebComponentPages/Xml/Products/Register.xml.de
  • WebComponentPages/Xml/Products/Register.xml.es
  • WebComponentPages/Xml/Products/Register.xml.fr
  • WebComponentPages/Xml/Products/Register.xml.it
  • WebComponentPages/Xml/Products/SelectAccount.xml
  • WebComponentPages/Xml/Products/SelectAccount.xml.de
  • WebComponentPages/Xml/Products/SelectAccount.xml.es
  • WebComponentPages/Xml/Products/SelectAccount.xml.fr
  • WebComponentPages/Xml/Products/SelectAccount.xml.it
  • WebComponentPages/Xslt/Authors/ActivationLog.xslt
  • WebComponentPages/Xslt/Authors/AuditDisplay.xslt
  • WebComponentPages/Xslt/Authors/AuthorComponentPageTemplates.xslt
  • WebComponentPages/Xslt/Authors/AuthorHome.xslt
  • WebComponentPages/Xslt/Authors/CartOptions.xslt
  • WebComponentPages/Xslt/Authors/ChangeCustomerPassword.xslt
  • WebComponentPages/Xslt/Authors/CustomerBill.xslt
  • WebComponentPages/Xslt/Authors/CustomerDetails.xslt
  • WebComponentPages/Xslt/Authors/CustomerEdit.xslt
  • WebComponentPages/Xslt/Authors/CustomerServiceOptions.xslt
  • WebComponentPages/Xslt/Authors/CustomMarkup.xslt
  • WebComponentPages/Xslt/Authors/DistributorOptions.xslt
  • WebComponentPages/Xslt/Authors/Distributors.xslt
  • WebComponentPages/Xslt/Authors/FindCustomers.xslt
  • WebComponentPages/Xslt/Authors/InstantSOLOOptions.xslt
  • WebComponentPages/Xslt/Authors/InvoiceDetails.xslt
  • WebComponentPages/Xslt/Authors/LicenseDetails.xslt
  • WebComponentPages/Xslt/Authors/MwAddCustomer.xslt
  • WebComponentPages/Xslt/Authors/MwViewCustomerLicense.xslt
  • WebComponentPages/Xslt/Authors/PLUSActivation.xslt
  • WebComponentPages/Xslt/Authors/RptMonthlySummary.xslt
  • WebComponentPages/Xslt/Customers/ChangePassword.xslt
  • WebComponentPages/Xslt/Customers/Customer.xslt
  • WebComponentPages/Xslt/Customers/CustomerHome.xslt
  • WebComponentPages/Xslt/Customers/Downloads.xslt
  • WebComponentPages/Xslt/Customers/License.xslt
  • WebComponentPages/Xslt/Customers/RenewalsAndUpgrades.xslt
  • WebComponentPages/Xslt/Customers/SelectAccount.xslt
  • WebComponentPages/Xslt/Products/Login.xslt
  • WebComponentPages/Xslt/Products/OrderDecline.xslt
  • WebComponentPages/Xslt/Products/PaymentRedirect.xslt
  • WebComponentPages/Xslt/Products/PayPalRedirect.xslt
  • WebComponentPages/Xslt/Products/ProductOption.xslt
  • WebComponentPages/Xslt/Products/Register.xslt
  • WebComponentPages/Xslt/Products/SelectAccount.xslt
  • WebComponentPages/Xslt/Products/ShoppingCart.xslt

-Customizable Stored Procedure Changes

  • SOLO_CreateModifyCustomer - This stored procedure is no longer in use.
  • SOLO_FastSpringNewLicense - This is a new stored procedure which contains a customization hook.
  • SOLO_FastSpringSubscriptionDeactivated - This is a new stored procedure which contains a customization hook.
  • SOLO_GetCustomerServiceLicense
  • SOLO_GetNetworkSession
  • SOLO_UpdateLicenseUserDefinedFields - A customization hook has been added to this stored procedure.
  • SOLO_ValidateCustomerLogin

SOLO Server 1.15.2.3
Released November 10, 2015

-Customizable Template/Resource File Changes

  • WebComponentPages/Xml/Authors/CustomerBill.xml
  • WebComponentPages/Xml/Authors/CustomerDetails.xml
  • WebComponentPages/Xml/Authors/LicenseDetails.xml
  • WebComponentPages/Xml/Authors/LicenseEdit.xml
  • WebComponentPages/Xml/Authors/NetworkFloatingOptions.xml
  • WebComponentPages/Xml/Authors/PLUSActivation.xml
  • WebComponentPages/Xml/Authors/StoreCredit.xml
  • WebComponentPages/Xml/Customers/Downloads.xml
  • WebComponentPages/Xml/Customers/Downloads.xml.pt-br
  • WebComponentPages/Xml/Customers/InstallationHistory.xml
  • WebComponentPages/Xml/Customers/InstallationHistory.xml.pt-br
  • WebComponentPages/Xml/Customers/PLUSActivation.xml
  • WebComponentPages/Xml/Customers/PLUSActivation.xml.pt-br
  • WebComponentPages/Xml/Products/PaymentStatus.xml
  • WebComponentPages/Xml/Products/PaymentStatus.xml.de
  • WebComponentPages/Xml/Products/PaymentStatus.xml.es
  • WebComponentPages/Xml/Products/PaymentStatus.xml.fr
  • WebComponentPages/Xml/Products/PaymentStatus.xml.it
  • WebComponentPages/Xslt/Authors/ActivationDetail.xslt
  • WebComponentPages/Xslt/Authors/ActivationLog.xslt
  • WebComponentPages/Xslt/Authors/CustomerBill.xslt
  • WebComponentPages/Xslt/Authors/CustomerDetails.xslt
  • WebComponentPages/Xslt/Authors/InvoiceDetails.xslt
  • WebComponentPages/Xslt/Authors/LicenseDetails.xslt
  • WebComponentPages/Xslt/Authors/LicenseEdit.xslt
  • WebComponentPages/Xslt/Authors/NetworkFloatingOptions.xslt
  • WebComponentPages/Xslt/Authors/Notices.xslt
  • WebComponentPages/Xslt/Authors/StoreCredit.xslt
  • WebComponentPages/Xslt/Customers/CustomerPage.xslt
  • WebComponentPages/Xslt/Customers/Downloads.xslt
  • WebComponentPages/Xslt/Customers/InstallationHistory.xslt

SOLO Server 1.15.2.2
Released October 2, 2015

-IMPORTANT NOTES

  • XmlNetworkFloatingLicense web service users require a manual update prior to running the installer to upgrade.
    • If using network floating licensing through the XmlNetworkFloatingService web service, a database update must be applied manually prior to running the installer. Failing to do so may cause the XmlNetworkFloating service web service to fail to work properly after the upgrade.
    • If you are unsure whether network floating licensing is being used, the following query can be run against the SOLO database in SQL Server Management Studio:
      • SELECT COUNT(*) FROM dbo.NetworkFloatingOptions
    • If this query returns a result greater than 0, the manual database updates must be applied prior to running the SOLO installer. Contact support@softwarekey.com for instructions on applying the update.

-Customizable Template/Resource File Changes

  • CustomXSL/invoices/StandardCartInvoiceTemplates.xslt
  • CustomXSL/invoices/StandardInvoiceTemplates.xslt
  • WebComponentPages/Xml/Authors/ActivationLog.xml
  • WebComponentPages/Xml/Authors/CustomerDetails.xml
  • WebComponentPages/Xml/Authors/CustomerEdit.xml
  • WebComponentPages/Xml/Authors/EmailInvoice.xml
  • WebComponentPages/Xml/Authors/FindCustomers.xml
  • WebComponentPages/Xml/Authors/LicenseDetails.xml
  • WebComponentPages/Xml/Authors/MwAddCustomer.xml
  • WebComponentPages/Xml/Authors/MwViewCustomerLicense.xml
  • WebComponentPages/Xml/Customers/ChangeCustomerPassword.xml
  • WebComponentPages/Xml/Customers/ChangePassword.xml
  • WebComponentPages/Xml/Customers/ChangePassword.xml.pt-br
  • WebComponentPages/Xml/Customers/Customer.xml
  • WebComponentPages/Xml/Customers/Customer.xml.pt-br
  • WebComponentPages/Xml/Customers/Default.xml
  • WebComponentPages/Xml/Customers/Default.xml.pt-br
  • WebComponentPages/Xml/Customers/ForgotPassword.xml
  • WebComponentPages/Xml/Customers/ForgotPassword.xml.pt-br
  • WebComponentPages/Xml/Customers/LicenseHistory.xml
  • WebComponentPages/Xml/Customers/ResetCustomerPassword.xml
  • WebComponentPages/Xml/Customers/ResetCustomerPassword.xml.pt-br
  • WebComponentPages/Xml/Products/Invoice.xml
  • WebComponentPages/Xml/Products/Invoice.xml.de
  • WebComponentPages/Xml/Products/Invoice.xml.es
  • WebComponentPages/Xml/Products/Invoice.xml.fr
  • WebComponentPages/Xml/Products/Invoice.xml.it
  • WebComponentPages/Xml/Products/Login.xml
  • WebComponentPages/Xml/Products/Login.xml.de
  • WebComponentPages/Xml/Products/Login.xml.es
  • WebComponentPages/Xml/Products/Login.xml.fr
  • WebComponentPages/Xml/Products/Login.xml.it
  • WebComponentPages/Xml/Products/Register.xml
  • WebComponentPages/Xml/Products/Register.xml.de
  • WebComponentPages/Xml/Products/Register.xml.es
  • WebComponentPages/Xml/Products/Register.xml.fr
  • WebComponentPages/Xml/Products/Register.xml.it
  • WebComponentPages/Xslt/Authors/AccountOptions.xslt
  • WebComponentPages/Xslt/Authors/ActivationLog.xslt
  • WebComponentPages/Xslt/Authors/AuthorComponentPage.xslt
  • WebComponentPages/Xslt/Authors/CustomerDetails.xslt
  • WebComponentPages/Xslt/Authors/EmailInvoice.xslt
  • WebComponentPages/Xslt/Authors/FindCustomers.xslt
  • WebComponentPages/Xslt/Authors/InvoiceDetails.xslt
  • WebComponentPages/Xslt/Authors/LicenseDetails.xslt
  • WebComponentPages/Xslt/Authors/MwViewCustomerLicense.xslt
  • WebComponentPages/Xslt/Customers/Customer.xslt
  • WebComponentPages/Xslt/Customers/Default.xslt
  • WebComponentPages/Xslt/Customers/License.xslt
  • WebComponentPages/Xslt/Customers/LicenseHistory.xslt
  • WebComponentPages/Xslt/Products/Login.xslt

-Customizable Stored Procedure Changes

  • SOLO_GetCustomerServiceLicense
  • SOLO_GetLicenseDataForActivation
  • SOLO_GetNetworkSession
  • SOLO_Rpt_LicensesByProduct

SOLO Server 1.15.2.1
Released August 11, 2015

-IMPORTANT NOTES

  • XmlNetworkFloatingLicense web service users require a manual update prior to running the installer to upgrade.
    • If using network floating licensing through the XmlNetworkFloatingService web service, a database update must be applied manually prior to running the installer. Failing to do so will cause a portion of the database upgrade to fail.
    • If you are unsure whether network floating licensing is being used, the following query can be run against the SOLO database in SQL Server Management Studio:
      • SELECT COUNT(*) FROM dbo.NetworkFloatingOptions
    • If this query returns a result greater than 0, the manual database update must be applied prior to running the SOLO installer. Contact support@softwarekey.com for instructions on applying the update.
  • All upgrades require manually applying an update after upgrading.
    • The update script to populate the new ActivationPassword column on existing licenses can be long running on instances with a large number of license records.
    • To minimize the downtime while IIS is stopped while running the installer, this update script is not run by the installer.
    • After the upgrade is completed, follow these steps to apply the update:
      • Open %InstallDir%\SOLO\Database\Updates\ 1015002001_04_InitializeLicenseActivationPasswordAndMakeNonNullable.sql.MANUAL.txt in notepad and copy the contents to the clipboard.
      • Open SQL Server Management Studio, then open a new query window targeting the SOLO database. Paste the content copied in the prior step into the query window.
      • Execute the script. Depending on the number of licenses, the script may be long running. To help alleviate potential locking and blocking, the script will update the existing licenses in batches rather than in a single update.

-Configuration File Changes

  • Web.Config
    • AuthorizeNETServer - Optionally update this to https://secure2.authorize.net/gateway/transact.dll, which is a new endpoint URL using Akamai Networks for greater availability.
    • NETPayPalOrderProcessorStep - The processing step to transfer processing from the older ASP PayPal processor to the new .NET based order processor.
    • NETPayPalOrderProcessorStepOverride - Meant for QA testing purposes. Allows overriding the step specified by NETPayPalOrderProcessorStep on a per instance basis while using a default step through the NETPayPalOrderProcessorStep web.config entry in a shared configuration file.
    • EnableNETCustomerPasswordReset - New True/False temporary "feature flag" entry. Set to true to change the customer license portal forgot password page to use a new implemenation which only allows resetting the customer password and does not expose the existing password.

-Customizable Template/Resource File Changes

  • CustomXML/authors/AuthorMenu.xml
  • CustomXSL/invoices/StandardCartInvoiceTemplates.xslt
  • CustomXSL/invoices/StandardInvoiceTemplates.xslt
  • WebComponentPages/Xml/Authors/ActivationDetail.xml
  • WebComponentPages/Xml/Authors/ActivationLog.xml
  • WebComponentPages/Xml/Authors/AuthorContactDetails.xml
  • WebComponentPages/Xml/Authors/CustomerBill.xml
  • WebComponentPages/Xml/Authors/Default.xml
  • WebComponentPages/Xml/Authors/NetworkFloatingOptions.xml
  • WebComponentPages/Xml/Authors/SecuritySettings.xml
  • WebComponentPages/Xml/Authors/Users.xml
  • WebComponentPages/Xml/Customers/AddLicense.xml
  • WebComponentPages/Xml/Customers/AddLicense.xml.pt-br
  • WebComponentPages/Xml/Customers/ChangeCustomerPassword.xml
  • WebComponentPages/Xml/Customers/ChangePassword.xml
  • WebComponentPages/Xml/Customers/ChangePassword.xml.pt-br
  • WebComponentPages/Xml/Customers/Default.xml
  • WebComponentPages/Xml/Customers/Default.xml.pt-br
  • WebComponentPages/Xml/Customers/ForgotPassword.xml
  • WebComponentPages/Xml/Customers/ForgotPassword.xml.pt-br
  • WebComponentPages/Xml/Customers/License.xml.pt-br
  • WebComponentPages/Xml/Customers/RenewalsAndUpgrades.xml.pt-br
  • WebComponentPages/Xml/Customers/ResetCustomerPassword.xml
  • WebComponentPages/Xml/Customers/ResetCustomerPassword.xml.pt-br
  • WebComponentPages/Xml/Products/Invoice.xml.de
  • WebComponentPages/Xml/Products/Invoice.xml.es
  • WebComponentPages/Xml/Products/Invoice.xml.fr
  • WebComponentPages/Xml/Products/Invoice.xml.it
  • WebComponentPages/Xml/Products/Login.xml
  • WebComponentPages/Xml/Products/Login.xml.de
  • WebComponentPages/Xml/Products/Login.xml.es
  • WebComponentPages/Xml/Products/Login.xml.fr
  • WebComponentPages/Xml/Products/Login.xml.it
  • WebComponentPages/Xml/Products/Register.xml
  • WebComponentPages/Xml/Products/Register.xml.de
  • WebComponentPages/Xml/Products/Register.xml.es
  • WebComponentPages/Xml/Products/Register.xml.fr
  • WebComponentPages/Xml/Products/Register.xml.it
  • WebComponentPages/Xslt/Authors/ActivationDetail.xslt
  • WebComponentPages/Xslt/Authors/ActivationLog.xslt
  • WebComponentPages/Xslt/Authors/AuthorComponentPageTemplates.xslt
  • WebComponentPages/Xslt/Authors/AuthorContactDetails.xslt
  • WebComponentPages/Xslt/Authors/AuthorUserPermissions.xslt
  • WebComponentPages/Xslt/Authors/CustomerBill.xslt
  • WebComponentPages/Xslt/Authors/CustomerEdit.xslt
  • WebComponentPages/Xslt/Authors/LicenseDetails.xslt
  • WebComponentPages/Xslt/Authors/MwViewCustomerLicense.xslt
  • WebComponentPages/Xslt/Authors/NetworkFloatingOptions.xslt
  • WebComponentPages/Xslt/Authors/SecuritySettings.xslt
  • WebComponentPages/Xslt/Customers/AddLicense.xslt
  • WebComponentPages/Xslt/Customers/ChangeCustomerPassword.xslt
  • WebComponentPages/Xslt/Customers/ChangePassword.xslt
  • WebComponentPages/Xslt/Customers/ForgotPassword.xslt
  • WebComponentPages/Xslt/Customers/ResetCustomerPassword.xslt

-Customizable Stored Procedure Changes

  • SOLO_GetInvoiceForXMLNotification
  • SOLO_GetLicenseDataForActivation
  • SOLO_GetNetworkSession

SOLO Server 1.15.2.0
Released June 30, 2015

-Customizable Template/Resource File Changes

  • CustomXSL/invoices/StandardCartInvoiceTemplates.xslt
  • CustomXSL/invoices/StandardInvoiceTemplates.xslt
  • WebComponentPages/Xml/Authors/AuthorEncryptionKey.xml
  • WebComponentPages/Xml/Authors/CustomerBill.xml
  • WebComponentPages/Xml/Authors/FindCustomers.xml
  • WebComponentPages/Xml/Authors/LicenseDetails.xml
  • WebComponentPages/Xml/Authors/MwViewCustomerLicense.xml
  • WebComponentPages/Xml/Customers/License.xml
  • WebComponentPages/Xml/Customers/RenewalsAndUpgrades.xml
  • WebComponentPages/Xml/Products/Invoice.xml
  • WebComponentPages/Xslt/Authors/CustomerBill.xslt
  • WebComponentPages/Xslt/Authors/CustomerDetails.xslt
  • WebComponentPages/Xslt/Authors/Default.xslt
  • WebComponentPages/Xslt/Authors/LicenseDetails.xslt
  • WebComponentPages/Xslt/Authors/MwViewCustomerLicense.xslt
  • WebComponentPages/Xslt/Customers/License.xslt
  • WebComponentPages/Xslt/Customers/RenewalsAndUpgrades.xslt

-Customizable Stored Procedure Changes

  • SOLO_GetCustomerServiceLicense
  • SOLO_GetInvoiceForXMLNotification
  • SOLO_GetLicenseDataForActivation
  • SOLO_GetLicenseInfoFromSerialNumber
  • SOLO_GetNetworkSession
  • SOLO_Rpt_LicensesByProduct

SOLO Server 1.15.1.4
Released May 19, 2015

-Configuration File Changes

  • Web.Config
    • SOLOAuditingOptions - This has been removed as it is no longer in use.
    • EnableLicenseAudits - New True/False entry specifying whether auditing is enabled on the Licenses table.
    • UseOldAuthorWebServiceSessionAuthentication - This temporary "feature flag" entry has been removed, as it is no longer in use.

-Customizable Template/Resource File Changes

  • CustomXML/authors/AuthorMenu.xml
  • WebComponentPages/Xml/Authors/AuthorHome.xml
  • WebComponentPages/Xml/Authors/CustomerServiceOptions.xml
  • WebComponentPages/Xml/Authors/InstantSOLOOptions.xml
  • WebComponentPages/Xml/Authors/LicenseDetails.xml
  • WebComponentPages/Xml/Authors/LicenseUserDefinedFieldsEdit.xml
  • WebComponentPages/Xml/Authors/PLUSActivation.xml
  • WebComponentPages/Xml/Authors/RptMonthlySummary.xml
  • WebComponentPages/Xml/Authors/ViewCatalog.xml
  • WebComponentPages/Xslt/Authors/AuthorHome.xslt
  • WebComponentPages/Xslt/Authors/CustomerServiceOptions.xslt
  • WebComponentPages/Xslt/Authors/InvoiceDetails.xslt
  • WebComponentPages/Xslt/Authors/LicenseDetails.xslt
  • WebComponentPages/Xslt/Authors/LicenseEdit.xslt
  • WebComponentPages/Xslt/Authors/LicenseUserDefinedFieldsEdit.xslt
  • WebComponentPages/Xslt/Authors/MerchantAccounts.xslt
  • WebComponentPages/Xslt/Authors/Notices.xslt
  • WebComponentPages/Xslt/Authors/ProductUpsell.xslt
  • WebComponentPages/Xslt/Authors/RptDeclinedOrders.xslt
  • WebComponentPages/Xslt/Authors/RptMonthlySummary.xslt
  • WebComponentPages/Xslt/Authors/ViewCatalog.xslt

-Customizable Stored Procedure Changes

  • SOLO_GetCrossProductMarketingData
  • SOLO_GetCustomerSubscriptionExpirationNotificationData
  • SOLO_GetNonActivatedLicenseNotificationData
  • SOLO_Order_CheckDupeByCartAmount

-Database Changes

  • If using the payment plan processor, prior to performing the upgrade, rename %InstallDir%\Database\Jobs\VBScripts\ProcessPaymentPlans.vbs. After the upgrade, open the renamed file in Notepad and copy the constants from the top of the file. Next, open the new version of the ProcessPaymentPlans.vbs file in Notepad and paste the constants copied previously over the default values.

SOLO Server 1.15.1.3
Released April 3, 2015

-Configuration File Changes

  • Web.Config
    • FileUltimate:DisableVideoThumbnails - New entry controlling whether the FileUltimate control used for managing storefront and ESD files should disable the video thumbnails feature. This feature can cause IIS to crash in some scenarios, and setting the value of this entry to 1 will disable the feature and eliminate the IIS crash issue.
    • CustomerServiceNETRedirect - This existing entry now defaults to true on fresh installations. For existing installations using the older, classic ASP based customer license portal, it is strongly recommended to configure the .NET based customer license portal, and then update this value to true to automatically transition your customers to the newer version.
    • EnableNETCustomerDetailsPage - This temporary "feature flag" entry has been removed, as it is no longer in use.
    • EnableNETLicenseDetailsPage - New, temporary "feature flag" entry controlling whether the preview mode of the rewritten .NET based license details page is enabled. For internal use by Concept Software.
    • UseOldAuthorWebServiceSessionAuthentication - New, temporary "feature flag" entry controlling the author user session validation method for web methods requiring authentication. For internal use by Concept Software.

-Customizable Template/Resource File Changes

  • CustomHTML/AuthorsTop.htm
  • CustomHTML/AuthorsTopNET.htm
  • CustomHTML/AuthorsTopNETComponent.htm
  • CustomXML/authors/AuthorMenu.xml
  • CustomXSL/invoices/StandardCartInvoiceTemplates.xslt
  • CustomXSL/invoices/StandardInvoiceTemplates.xslt
  • WebComponentPages/Xml/Authors/AuthorHome.xml
  • WebComponentPages/Xml/Authors/BaseReportProperties.xml
  • WebComponentPages/Xml/Authors/CartOptions.xml
  • WebComponentPages/Xml/Authors/CustomerDetails.xml
  • WebComponentPages/Xml/Authors/CustomerEdit.xml
  • WebComponentPages/Xml/Authors/InvoiceDetails.xml
  • WebComponentPages/Xml/Authors/LicenseDetails.xml
  • WebComponentPages/Xml/Authors/LicenseEdit.xml
  • WebComponentPages/Xml/Authors/Mailings.xml
  • WebComponentPages/Xml/Authors/MwAddCustomer.xml
  • WebComponentPages/Xml/Authors/Notices.xml
  • WebComponentPages/Xml/Authors/PaymentPlanInstance.xml
  • WebComponentPages/Xml/Authors/PriorityCodes.xml
  • WebComponentPages/Xml/Authors/RptDeclinedOrders.xml
  • WebComponentPages/Xml/Products/Invoice.xml
  • WebComponentPages/Xml/Products/Invoice.xml.de
  • WebComponentPages/Xml/Products/Invoice.xml.es
  • WebComponentPages/Xml/Products/Invoice.xml.fr
  • WebComponentPages/Xml/Products/Invoice.xml.it
  • WebComponentPages/Xml/Products/OrderDecline.xml
  • WebComponentPages/Xml/Products/OrderDecline.xml.de
  • WebComponentPages/Xml/Products/OrderDecline.xml.es
  • WebComponentPages/Xml/Products/OrderDecline.xml.fr
  • WebComponentPages/Xml/Products/OrderDecline.xml.it
  • WebComponentPages/Xslt/Authors/AuthorHome.xslt
  • WebComponentPages/Xslt/Authors/AuthorReportComponentPage.xslt
  • WebComponentPages/Xslt/Authors/CartOptions.xslt
  • WebComponentPages/Xslt/Authors/CustomerDetails.xslt
  • WebComponentPages/Xslt/Authors/Distributors.xslt
  • WebComponentPages/Xslt/Authors/FindCustomers.xslt
  • WebComponentPages/Xslt/Authors/InstantSOLOOptions.xslt
  • WebComponentPages/Xslt/Authors/InvoiceDetails.xslt
  • WebComponentPages/Xslt/Authors/LicenseDetails.xslt
  • WebComponentPages/Xslt/Authors/LicenseEdit.xslt
  • WebComponentPages/Xslt/Authors/MwAddCustomer.xslt
  • WebComponentPages/Xslt/Authors/Notices.xslt
  • WebComponentPages/Xslt/Authors/PaymentPlanInstance.xslt
  • WebComponentPages/Xslt/Authors/PLUSActivation.xslt
  • WebComponentPages/Xslt/Authors/PriorityCodes.xslt
  • WebComponentPages/Xslt/Authors/RptDeclinedOrders.xslt
  • WebComponentPages/Xslt/Authors/RptExportLicenses.xslt
  • WebComponentPages/Xslt/Authors/RptUnshippedOrders.xslt
  • WebComponentPages/Xslt/Common/UserProperties/UserProperties.xslt
  • WebComponentPages/Xslt/Products/OrderComplete.xslt
  • WebComponentPages/Xslt/Products/OrderDecline..xslt
  • WebComponentPages/Xslt/Products/Register.xslt
  • WebComponentPages/Xslt/Scripts/UtilityScripts.xslt

-Customizable Stored Procedure Changes

  • SOLO_ValidateCustomerLogin

-Database Changes

  • If using the payment plan processor, prior to performing the upgrade, rename %InstallDir%\Database\Jobs\VBScripts\ProcessPaymentPlans.vbs. After the upgrade, open the renamed file in Notepad and copy the constants from the top of the file. Next, open the new version of the ProcessPaymentPlans.vbs file in Notepad and paste the constants copied previously over the default values.

SOLO Server 1.15.1.0
Released January 7, 2015

-Customizable Template/Resource File Changes

  • WebComponentPages/Xml/Authors/FindCustomers.xml
  • WebComponentPages/Xslt/Authors/CustomerDetails.xslt

SOLO Server 1.14.2.4
Released December 22, 2014

-Customizable Template/Resource File Changes

  • CustomXML/authors/AuthorMenu.xml
  • CustomXSL/invoices/StandardCartInvoiceTemplates.xslt
  • CustomXSL/invoices/StandardInvoiceTemplates.xslt
  • WebComponentPages/Xml/Authors/DailyProcesses.xml
  • WebComponentPages/Xml/Authors/RptExportLicenses.xml
  • WebComponentPages/Xslt/Authors/AuthorComponentPageTemplates.xslt
  • WebComponentPages/Xslt/Authors/CustomerDetails.xslt
  • WebComponentPages/Xslt/Authors/DailyProcesses.xslt
  • WebComponentPages/Xslt/Authors/InvoiceDetails.xslt
  • WebComponentPages/Xslt/Authors/LicenseDetails.xslt
  • WebComponentPages/Xslt/Authors/Mailings.xslt
  • WebComponentPages/Xslt/Authors/ProductList.xslt
  • WebComponentPages/Xslt/Authors/RptExportLicenses.xslt
  • WebComponentPages/Xslt/Common/UserProperties/SelectProperties.xslt
  • WebComponentPages/Xslt/Customers/CompanySelection.xslt
  • WebComponentPages/Xslt/Customers/License.xslt
  • WebComponentPages/Xslt/Customers/PaymentInfo.xslt
  • WebComponentPages/Xslt/Customers/RecurringPayments.xslt
  • WebComponentPages/Xslt/Customers/RenewalsAndUpgrades.xslt

-Customizable Stored Procedure Changes

  • SOLO_GetInvoiceForXMLNotification

SOLO Server 1.14.2.3
Released November 26, 2014

-Customizable Template/Resource File Changes

  • CustomXSL/invoices/StandardCartInvoiceTemplates.xslt
  • CustomXSL/invoices/StandardInvoiceTemplates.xslt
  • WebComponentPages/Xml/Authors/ChangeUserPassword.xml
  • WebComponentPages/Xml/Authors/CustomerEdit.xml
  • WebComponentPages/Xml/Authors/FindCustomers.xml
  • WebComponentPages/Xml/Authors/RptDeclinedOrders.xml
  • WebComponentPages/Xml/Customers/CompanySelection.xml
  • WebComponentPages/Xml/Customers/CustomerHome.xml
  • WebComponentPages/Xml/Customers/CustomerHome.xml.pt-br
  • WebComponentPages/Xml/Products/Invoice.xml
  • WebComponentPages/Xml/Products/Invoice.xml.de
  • WebComponentPages/Xml/Products/Invoice.xml.es
  • WebComponentPages/Xml/Products/Invoice.xml.fr
  • WebComponentPages/Xml/Products/Invoice.xml.it
  • WebComponentPages/Xml/Products/Register.xml
  • WebComponentPages/Xml/Products/Register.xml.de
  • WebComponentPages/Xml/Products/Register.xml.es
  • WebComponentPages/Xml/Products/Register.xml.fr
  • WebComponentPages/Xml/Products/Register.xml.it
  • WebComponentPages/Xml/Products/ShoppingCart.xml
  • WebComponentPages/Xml/Products/ShoppingCart.xml.de
  • WebComponentPages/Xml/Products/ShoppingCart.xml.es
  • WebComponentPages/Xml/Products/ShoppingCart.xml.fr
  • WebComponentPages/Xml/Products/ShoppingCart.xml.it
  • WebComponentPages/Xslt/Authors/AuthorUserPermissions.xslt
  • WebComponentPages/Xslt/Authors/ChangeUserPassword.xslt
  • WebComponentPages/Xslt/Authors/CustomerDetails.xslt
  • WebComponentPages/Xslt/Authors/CustomerEdit.xslt
  • WebComponentPages/Xslt/Authors/InvoiceDetails.xslt
  • WebComponentPages/Xslt/Authors/LicenseDetails.xslt
  • WebComponentPages/Xslt/Authors/RptUnshippedOrders.xslt
  • WebComponentPages/Xslt/Customers/CustomerHome.xslt
  • WebComponentPages/Xslt/Products/Register.xslt
  • WebComponentPages/Xslt/Products/ShoppingCart.xslt

-Customizable Stored Procedure Changes

  • SOLO_GetCustomerServiceHome
  • SOLO_Rpt_LicensesByProduct

SOLO Server 1.14.2.2
Released October 7, 2014

-Customizable Template/Resource File Changes

  • CustomHTML/CustomersBottomNET.htm
  • CustomHTML/CustomersTopNET.htm
  • CustomXML/authors/AuthorMenu.xml
  • CustomXSL/invoices/StandardCartInvoiceTemplates.xslt
  • CustomXSL/invoices/StandardInvoiceTemplates.xslt
  • WebComponentPages/Xml/Authors/CustomerDetails.xml
  • WebComponentPages/Xml/Authors/CustomerEdit.xml
  • WebComponentPages/Xml/Authors/CustomerServiceOptions.xml
  • WebComponentPages/Xml/Authors/CustomMarkup.xml
  • WebComponentPages/Xml/Authors/Groups.xml
  • WebComponentPages/Xml/Authors/ResetUserPassword.xml
  • WebComponentPages/Xml/Authors/TermsAndConditions.xml
  • WebComponentPages/Xml/Authors/Users.xml
  • WebComponentPages/Xml/Customers/AddLicense.xml
  • WebComponentPages/Xml/Customers/ChangePassword.xml
  • WebComponentPages/Xml/Customers/ChangePassword.xml.pt-br
  • WebComponentPages/Xml/Customers/CompanySelection.xml
  • WebComponentPages/Xml/Customers/Customer.xml
  • WebComponentPages/Xml/Customers/Customer.xml.pt-br
  • WebComponentPages/Xml/Customers/CustomerHome.xml
  • WebComponentPages/Xml/Customers/CustomerPage.xml
  • WebComponentPages/Xml/Customers/CustomerPage.xml.pt-br
  • WebComponentPages/Xml/Customers/Default.xml
  • WebComponentPages/Xml/Customers/DownloadFile.xml
  • WebComponentPages/Xml/Customers/DownloadLicenseFile.xml
  • WebComponentPages/Xml/Customers/Downloads.xml
  • WebComponentPages/Xml/Customers/ForgotPassword.xml
  • WebComponentPages/Xml/Customers/ForgotPassword.xml.pt-br
  • WebComponentPages/Xml/Customers/InstallationHistory.xml
  • WebComponentPages/Xml/Customers/License.xml
  • WebComponentPages/Xml/Customers/LicenseAgreement.xml
  • WebComponentPages/Xml/Customers/LicenseHistory.xml
  • WebComponentPages/Xml/Customers/ManualRequest.xml
  • WebComponentPages/Xml/Customers/PaymentHistory.xml
  • WebComponentPages/Xml/Customers/PaymentInfo.xml
  • WebComponentPages/Xml/Customers/PLUSActivation.xml
  • WebComponentPages/Xml/Customers/RecurringPayment.xml
  • WebComponentPages/Xml/Customers/RecurringPayments.xml
  • WebComponentPages/Xml/Customers/RenewalsAndUpgrades.xml
  • WebComponentPages/Xml/Products/Invoice.xml
  • WebComponentPages/Xml/Products/LicenseAgreement.xml
  • WebComponentPages/Xml/Products/LicenseAgreement.xml.de
  • WebComponentPages/Xml/Products/LicenseAgreement.xml.es
  • WebComponentPages/Xml/Products/LicenseAgreement.xml.fr
  • WebComponentPages/Xml/Products/LicenseAgreement.xml.it
  • WebComponentPages/Xml/Products/Register.xml
  • WebComponentPages/Xml/Products/Register.xml.de
  • WebComponentPages/Xml/Products/Register.xml.es
  • WebComponentPages/Xml/Products/Register.xml.fr
  • WebComponentPages/Xml/Products/Register.xml.it
  • WebComponentPages/Xslt/Authors/CustomerDetails.xslt
  • WebComponentPages/Xslt/Authors/FindCustomers.xslt
  • WebComponentPages/Xslt/Authors/ResetUserPassword.xslt
  • WebComponentPages/Xslt/Authors/RptDeclinedOrders.xslt
  • WebComponentPages/Xslt/Common2/UserProperties/UserProperties.xslt
  • WebComponentPages/Xslt/Customers/ChangePassword.xslt
  • WebComponentPages/Xslt/Customers/Customer.xslt
  • WebComponentPages/Xslt/Customers/CustomerPage.xslt
  • WebComponentPages/Xslt/Customers/ForgotPassword.xslt
  • WebComponentPages/Xslt/Customers/License.xslt
  • WebComponentPages/Xslt/Customers/LicenseHistory.xslt
  • WebComponentPages/Xslt/Customers/PaymentHistory.xslt
  • WebComponentPages/Xslt/Products/LicenseAgreement.xslt
  • WebComponentPages/Xslt/Products/Register.xslt

SOLO Server 1.14.2.1
Released August 21, 2014

-Customizable Template/Resource File Changes

  • CustomXML/authors/AuthorMenu.xml
  • WebComponentPages/Xslt/Authors/AuthorHome.xslt
  • WebComponentPages/Xslt/Authors/AuthorPanelTemplates.xslt
  • WebComponentPages/Xslt/Authors/CustomerDetails.xslt
  • WebComponentPages/Xslt/Authors/Users.xslt

-Customizable Stored Procedure Changes

  • SOLO_GetLicenseDataForActivation

SOLO Server 1.14.2.0
Released August 8, 2014

-Configuration File Changes

  • Web.Config
    • A new system.WebServer section has been added which configures the ASP.NET 4.0 wildcard mapping for IIS 7 and above to route all requests through the ASP.NET pipeline for extended validation. Existing installations should already have this entry present through manual configuration per the SOLO installation instructions.
    • A new location element pointing to the custom directory has been added. Within this is a child system.WebServer element configuring a 500.100 error handler for handling classic ASP errors. Existing installations should already have this configured within the custom directory per the SOLO installation instructions.
    • The "Order Processor Settings" section of entries has been relabeled "New Feature Settings".
    • EnableNETCustomerDetailsPage - New entry. Controls whether the new .NET based customer view/edit pages are enabled in the administrative interface.

-Customizable Template/Resource File Changes

  • CustomHTML/AuthorsTop.htm
  • CustomHTML/AuthorsTopNET.htm
  • CustomHTML/AuthorsTopNETComponent.htm
  • CustomXML/authors/AuthorMenu.xml
  • CustomXSL/invoices/StandardCartInvoice.xslt
  • CustomXSL/invoices/StandardCartInvoiceReverse.xslt
  • CustomXSL/invoices/StandardCartInvoiceTemplates.xslt
  • CustomXSL/invoices/StandardInvoice.xslt
  • CustomXSL/invoices/StandardInvoiceReverse.xslt
  • CustomXSL/invoices/StandardInvoiceTemplates.xslt
  • CustomXSL/Scripts/UtilityScripts.xslt
  • WebComponentPages/Xml/Authors/AccountOptions.xml
  • WebComponentPages/Xml/Authors/AuthorCCDetails.xml
  • WebComponentPages/Xml/Authors/AuthorHome.xml
  • WebComponentPages/Xml/Authors/CustomerDetails.xml
  • WebComponentPages/Xml/Authors/CustomerEdit.xml
  • WebComponentPages/Xml/Authors/CustomerServiceOptions.xml
  • WebComponentPages/Xml/Authors/LicenseDetails.xml
  • WebComponentPages/Xml/Authors/MwFindCustomer.xml
  • WebComponentPages/Xml/Authors/MwSelectCustomerLicense.xml
  • WebComponentPages/Xml/Authors/ProductList.xml
  • WebComponentPages/Xml/Authors/SubmitFeedback.xml
  • WebComponentPages/Xml/Common/UserComponents/AddressUserComponent.xml
  • WebComponentPages/Xml/Customers/ManualRequest.xml
  • WebComponentPages/Xml/Customers/ManualRequest.xml.pt-br
  • WebComponentPages/Xml/Products/Payment.xml
  • WebComponentPages/Xml/Products/Payment.xml.de
  • WebComponentPages/Xml/Products/Payment.xml.es
  • WebComponentPages/Xml/Products/Payment.xml.fr
  • WebComponentPages/Xml/Products/Payment.xml.it
  • WebComponentPages/Xslt/Authors/ActivationLog.xslt
  • WebComponentPages/Xslt/Authors/AdvancedCartOptions.xslt
  • WebComponentPages/Xslt/Authors/AuditDisplay.xslt
  • WebComponentPages/Xslt/Authors/AuthorComponentPageTemplates.xslt
  • WebComponentPages/Xslt/Authors/AuthorHome.xslt
  • WebComponentPages/Xslt/Authors/AuthorUserPermissions.xslt
  • WebComponentPages/Xslt/Authors/CartOptions.xslt
  • WebComponentPages/Xslt/Authors/CustomerDetails.xslt
  • WebComponentPages/Xslt/Authors/CustomerEdit.xslt
  • WebComponentPages/Xslt/Authors/Distributors.xslt
  • WebComponentPages/Xslt/Authors/Groups.xslt
  • WebComponentPages/Xslt/Authors/InvoiceDetails.xslt
  • WebComponentPages/Xslt/Authors/LicenseDetails.xslt
  • WebComponentPages/Xslt/Authors/MwFindCustomer.xslt
  • WebComponentPages/Xslt/Authors/MwSelectCustomerLicense.xslt
  • WebComponentPages/Xslt/Authors/MwViewCustomerLicense.xslt
  • WebComponentPages/Xslt/Authors/PaymentPlanInstance.xslt
  • WebComponentPages/Xslt/Authors/ProductList.xslt
  • WebComponentPages/Xslt/Authors/RptMonthlySummary.xslt
  • WebComponentPages/Xslt/Authors/ServerLicense.xslt
  • WebComponentPages/Xslt/Authors/SubmitFeedback.xslt
  • WebComponentPages/Xslt/Authors/Users.xslt
  • WebComponentPages/Xslt/Authors/Warehouses.xslt
  • WebComponentPages/Xslt/Common/UserComponents/UserComponent.xslt
  • WebComponentPages/Xslt/Customers/Customer.xslt
  • WebComponentPages/Xslt/Customers/Default.xslt
  • WebComponentPages/Xslt/Customers/Downloads.xslt
  • WebComponentPages/Xslt/Customers/InstallationHistory.xslt
  • WebComponentPages/Xslt/Customers/License.xslt
  • WebComponentPages/Xslt/Customers/LicenseHistory.xslt
  • WebComponentPages/Xslt/Customers/ManualRequest.xslt
  • WebComponentPages/Xslt/Customers/PaymentHistory.xslt
  • WebComponentPages/Xslt/Customers/RecurringPayment.xslt
  • WebComponentPages/Xslt/Customers/RecurringPayments.xslt
  • WebComponentPages/Xslt/Customers/RenewalsAndUpgrades.xslt
  • WebComponentPages/Xslt/Products/Payment.xslt
  • WebComponentPages/Xslt/Products/PaymentMail.xslt
  • WebComponentPages/Xslt/Products/PaymentPhone.xslt
  • WebComponentPages/Xslt/Scripts/UtilityScripts.xslt

-Customizable Stored Procedure Changes

  • SOLO_GetInvoiceForXMLNotification
  • SOLO_Rpt_LicensesByProduct

SOLO Server 1.14.1.2
Released May 8, 2014

-Configuration File Changes

  • Web.Config
    • A new Order Processor Settings section has been added with options to control new order processor features as they are incrementally introduced into production use. These settings should be left alone unless instructed otherwise by SoftwareKey support. These do not need to be merged in during upgrades, and are being documented here for completeness. The new options are as follows:
      • EnableExtendedFraudScreeningGlobal - True/False as to whether to enable extended fraud screening during order processing on a global basis.
      • NETOrderProcessorEnableGlobal - True/False as to whether to enable the new .NET based order processor on a global basis.
      • NETOrderProcessorStep - The processing step to transfer processing from the older ASP processor to the new .NET based order processor.
      • NETOrderProcessorBCCList - Meant for QA testing purposes. A comma separated list of email addresses to BCC on all email notifications sent by the .NET order processor.
      • NETOrderProcessorPluginTestMode - Meant for QA testing purposes. The result to be returned by when testing plugin processing in the .NET order processor (Success, Error, or Exception).
  • global.asa
    • UseFullFraudScreening - This has been removed as it is no longer used.

-Customizable Template/Resource File Changes

  • CustomXSL/invoices/StandardCartInvoice.xslt
  • CustomXSL/invoices/StandardCartInvoiceTemplates.xslt
  • CustomXSL/invoices/StandardInvoice.xslt
  • CustomXSL/invoices/StandardInvoiceTemplates.xslt
  • WebComponentPages/Xml/Authors/AdvancedCartOptions.xml
  • WebComponentPages/Xml/Authors/CartOptions.xml
  • WebComponentPages/Xml/Authors/MerchantAccounts.xml
  • WebComponentPages/Xml/Common/ErrorStrings.xml
  • WebComponentPages/Xml/Products/Invoice.xml
  • WebComponentPages/Xslt/Common/UserProperties/UserProperties.xslt
  • WebComponentPages/Xslt/Customers/ChangePassword.xslt
  • WebComponentPages/Xslt/Products/ProductOption.xslt
  • WebComponentPages/Xslt/Products/ShoppingCart.xslt

-Customizable Stored Procedure Changes

  • SOLO_GetInvoiceForXMLNotification

-Other Manual Steps

  • If auditing is enabled on the Products table, manually run the %InstallDir%\Database\Triggers\Auditing\dbo.SOLO_TRIG_ProductsUpdate.sql script against the SOLO database in SQL Server Management Studio.

SOLO Server 1.14.1.1
Released April 2, 2014

-Customizable Template/Resource File Changes

  • WebComponentPages/Xslt/Customers/License.xslt

-Customizable Stored Procedure Changes

  • SOLO_GetInvoiceForXMLNotification
  • SOLO_GetCustomerServiceLicense

SOLO Server 1.14.1.0
Released March 20, 2014

-Customizable Template/Resource File Changes

  • WebComponentPages/Xslt/Products/ConfirmOrder.xslt

SOLO Server 1.13.3.4
Released February 19, 2014

-IMPORTANT NOTES

  • This version of SOLO has been updated to target the .NET 4.0 framework (versions 4.0, 4.5, or 4.5.1). Previous versions of SOLO targeted the .NET 2.0 framework.
  • Prior to upgrading to this version of SOLO, you should ensure that the .NET 4.0, 4.5, or 4.5.1 framework is installed on both the web and database server(s), as well as configured with IIS on the web server(s).
  • See the server specific instructions below for steps to verify/install .NET 4.0 and configure IIS and SOLO to run against the .NET 4.0 framework.
  • While SOLO has been tested against the all three versions of the .NET 4.0 framework, it is recommended to run against the latest, 4.5.1 version on Windows Server 2008 and above (Windows Server 2003 supports only the 4.0 version).

-.NET 4.0 Upgrade Instructions - Windows Server 2003

  • Prior to installing SOLO:
    • Determine whether the .NET 4.0 framework is installed. To do so, simply attempt to run the SOLO Server installer. This will display an error message if .NET 4.0 is not installed.
    • If .NET 4.0 is not present, it can be downloaded and installed from Microsoft at http://www.microsoft.com/en-us/download/details.aspx?id=17851. Be sure to run Windows Updates after installing and install any framework updates.
    • Next, ensure .NET 4.0 is registered and enabled in IIS:
      • Open IIS Manager.
      • Click on the Web Service Extensions folder on the left.
      • On the right, ensure ASP.NET v4.0.30319 is allowed. If not, allow it.
      • If ASP.NET v4.0.30319 does not show up in the list, it must be registered with IIS:
        • To perform the registration, from a command prompt, run C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i
        • Close IIS Manager, and then repeat the prior 3 steps.
    • Next, grant the web site user Full Control permissions to the .NET 4.0 Temporary ASP.NET files folder at C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\. This is usually the IISAnonymous user, but may be a different user depending on how SOLO is configured in IIS.
  • Copy the existing web.config file to a temporary location, create a backup, and then merge in the changes outlined below.
  • Run the SOLO installer.
  • After installation is complete:
    • Copy the updated configuration file from the temporary location to the web site root directory.
    • In IIS Manager, right click the web site and choose Properties.
    • In the dialog, choose the ASP.NET tab, and then change the ASP.NET version to 4.0.30319 and click Apply. Click OK when prompted to restart the W3SVC.
    • Next, change to the Home Directory tab in the dialog and click the Configuration button in the Application Settings section.
    • On the lower half of the dialog, there should be one wildcard mapping pointing to C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll. Edit this mapping and change the v2.0.50727 folder to v4.0.30319 and save the change.

-.NET 4.0 Upgrade Instructions - Windows Server 2008 and Above

  • Prior to installing SOLO:
    • Determine whether the .NET 4.0 framework is installed. To do so, simply attempt to run the SOLO Server installer. This will display an error message if .NET 4.0 is not installed.
    • If .NET 4.0 is not present, install the latest version through Windows updates. Be sure to run Windows Updates again after installing and install any further framework updates.
    • Next, ensure .NET 4.0 is registered and enabled in IIS:
      • Open the IIS Manager.
      • Navigate to the server level on the left, and then double click the ISAPI and CGI Restrictions icon on the right.
      • Ensure the 32 bit version of ASP.NET v4.0.30319 is allowed. If not, allow it.
      • If ASP.NET v4.0.30319 does not show up in the list, it must be registered with IIS:
        • To perform the registration, from an administrator command prompt, run C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i
        • Close IIS Manager, and then repeat the prior 3 steps.
    • Next, grant the web site user Full Control permissions to the .NET 4.0 Temporary ASP.NET files folder at C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\. This is usually the IISAnonymous user, but may be a different user depending on how SOLO is configured in IIS.
  • Copy the existing web.config file to a temporary location, create a backup, and then merge in the changes outlined below.
  • Run the SOLO installer.
  • After installation is complete:
    • Copy the updated configuration file from the temporary location to the web site root directory.
    • In IIS Manager, update the application pool which SOLO is running under and change the .NET framework version to v4.0.30319.

-Configuration File Changes

  • Changes related to the .NET 4.0 framework upgrade:
    • In the system.web\compilation node, add the following attribute: targetFramework="4.0"
    • In the system.web\pages node:
      • Remove the controls child node
      • Add the following new attributes:
        • controlRenderingCompatibility="3.5"
        • clientIDMode="AutoID"
    • In the system.web\httpModules node, remove the entry for FileVistaControl.UploadModule
    • Add a new httpRunTime node as a child of the system.web node, and add the following attribute to this node: requestValidationMode="2.0"
    • Update the path attribute in the location node for the upload settings to fileuploader.ashx
    • If using Windows Server 2008 and greater, there should be a system.webserver\handlers\add node with a scriptProcessor attribute pointing to "%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll". Update the scriptProcessor attribute to specify the v4.0.30319 folder rather than the v2.0.50727 folder, as well as update the preCondition attribute to specify runtimeVersionv4.0.
  • Other changes:
    • CorruptedConnectionDetectionEnabled - New optional boolean value. Specifies whether to enable detection and event logging of corrupted connections in the classic ASP application pool. Corrupted connections can occur when connectivity issues with the database server sever a connection in the ASP connection pool, however ASP does not detect this condition, leaving the corrupted connection in the connection pool and resulting in ongoing connection failures. This requires advanced configuration and should only be enabled if experiencing this condition and per instructions from Concept Software support.
    • BillingMailingID - New entry applicable only to SoftwareKey hosted Instant SOLO. Specifies the Mailing ID to use when sending billing notifications.

-Customizable Template/Resource File Changes

  • CustomXML/authors/AuthorMenu.xml
  • WebComponentPages/Xml/Authors/DailyProcesses.xml
  • WebComponentPages/Xml/Customers/Invoice.xml
  • WebComponentPages/Xml/Customers/Invoice.xml.pt-br
  • WebComponentPages/Xslt/Authors/CustomerDetails.xslt
  • WebComponentPages/Xslt/Authors/InvoiceDetails.xslt
  • WebComponentPages/Xslt/Authors/RptUnshippedOrders.xslt
  • WebComponentPages/Xslt/Customers/Invoice.xslt
  • WebComponentPages/Xslt/Customers/License.xslt
  • WebComponentPages/Xslt/Customers/PaymentHistory.xslt

-Customizable Stored Procedure Changes

  • SOLO_ProdSerialNumberCheck

-Database Changes

  • If using the payment plan processor, prior to performing the upgrade, rename %InstallDir%\Database\Jobs\VBScripts\ProcessPaymentPlans.vbs. After the upgrade, open the renamed file in Notepad and copy the constants from the top of the file. Next, open the new version of the ProcessPaymentPlans.vbs file in Notepad and paste the constants copied previously over the default values.

-Other Changes/Manual Steps:

  • After the installation, remove the following files/folders from the web site directory that are no longer in use (these are automatically removed from the installation directory, however the installer currently does not support removing from the web site directory):
    • authors\FileVistaControl folder
    • bin\ActiveReports*.dll
    • bin\GleamTech.IO.dll
    • bin\GleamTech.Utility.dll
    • bin\GleamTech.Web.Controls.FileVistaControl.dll
    • bin\GleamTech.Web.FileTransfer.dll
    • bin\ICSharpCode.SharpZipLib.dll

SOLO Server 1.13.3.3
Released December 16, 2013

-Configuration File Changes

  • Web.Config
    • If using request filtering, add a new child element to the location element pointing to the authors/FileVistaControl folder specifying the maxAllowedContentLength for request filtering.
    • SOLOAuditingOptions - New optional entry. Specifies which auditing options are enabled in the database.
  • SOLO.Config
    • HttpErrorHandlerConfiguration/EnableNotFoundErrors - New optional boolean value. When set to true, 404 errors will be handled by the HttpErrorHandler, otherwise they will be ignored and handled by the default IIS 404 error handling.

-Customizable Template/Resource File Changes

  • CustomHTML/ProductsTopNET.htm
  • CustomXML/authors/AuthorMenu.xml
  • CustomXSL/Mailings/AuthorOrderNotification.xslt
  • WebComponentPages/Xml/Authors/AuditDisplay.xml
  • WebComponentPages/Xml/Authors/InvoiceDetails.xml
  • WebComponentPages/Xml/Authors/RptAuditExport.xml
  • WebComponentPages/Xml/Authors/ServerLicense.xml
  • WebComponentPages/Xml/Common/UserComponents/AddressUserComponent.xml
  • WebComponentPages/Xml/Common/UserComponents/AddressUserComponent.xml.de
  • WebComponentPages/Xml/Common/UserComponents/AddressUserComponent.xml.es
  • WebComponentPages/Xml/Common/UserComponents/AddressUserComponent.xml.fr
  • WebComponentPages/Xml/Common/UserComponents/AddressUserComponent.xml.it
  • WebComponentPages/Xml/Common/UserComponents/AddressUserComponent.xml.pt-br
  • WebComponentPages/Xml/Customers/ChangePassword.xml
  • WebComponentPages/Xml/Customers/Customer.xml
  • WebComponentPages/Xslt/Authors/LicenseDetails.xslt
  • WebComponentPages/Xslt/Authors/ServerLicense.xslt
  • WebComponentPages/Xslt/Authors/ServerLicenseRefresh.xslt
  • WebComponentPages/Xslt/Common/UserComponents/UserComponent.xslt
  • WebComponentPages/Xslt/Common/UserProperties/UserProperties.xslt
  • WebComponentPages/Xslt/Common2/UserComponents/UserComponent.xslt
  • WebComponentPages/Xslt/Common2/UserProperties/UserProperties.xslt
  • WebComponentPages/Xslt/Customers/ChangePassword.xslt
  • WebComponentPages/Xslt/Customers/Customer.xslt

-Customizable Stored Procedure Changes

  • SOLO_GetInvoiceForXMLNotification

SOLO Server 1.13.3.2
Released October 31, 2013

-Customizable Template/Resource File Changes

  • WebComponentPages/Xml/Products/Register.xml
  • WebComponentPages/Xml/Products/Register.xml.de
  • WebComponentPages/Xml/Products/Register.xml.es
  • WebComponentPages/Xml/Products/Register.xml.fr
  • WebComponentPages/Xml/Products/Register.xml.it
  • WebComponentPages/Xslt/Customers/Customer.xslt
  • WebComponentPages/Xslt/Customers/License.xslt
  • WebComponentPages/Xslt/Products/Register.xslt

SOLO Server 1.13.3.1
Released October 15, 2013

-Customizable Template/Resource File Changes

  • WebComponentPages/Xml/Authors/CustomerServiceOptions.xml
  • WebComponentPages/Xml/Customers/InstallationHistory.xml
  • WebComponentPages/Xml/Customers/InstallationHistory.xml.pt-br
  • WebComponentPages/Xml/Customers/License.xml
  • WebComponentPages/Xml/Customers/License.xml.pt-br
  • WebComponentPages/Xslt/Authors/CustomerServiceOptions.xslt
  • WebComponentPages/Xslt/Common2/UtilityTemplates.xslt
  • WebComponentPages/Xslt/Customers/InstallationHistory.xslt
  • WebComponentPages/Xslt/Customers/License.xslt

-Customizable Stored Procedure Changes

  • SOLO_GetCustomerServiceLicense

SOLO Server 1.13.3.0
Released September 18, 2013

No Changes


SOLO Server 1.13.2.3
Released September 13, 2013

-Configuration File Changes

  • Web.Config:
    • The configuration entry controlling the maximum upload size when managing Storefront/ESD files has moved from the authors/FileVistaControl folder to the root web.config file. After upgrading, follow these steps:
      • Open the default configuration file located at %InstallDir%/SOLO/HTML in a text editor.
      • Locate the section in the file labeled "Maximum upload size for storefront/ESD files". Copy the content of the entire "location" element to the clipboard.
      • Open the SOLO web site web.config file in a text editor and paste the copied content to the same location in the file.
      • If you are running SOLO from a subdirectory off of the root, adjust the path in the location element accordingly.
      • Finally, adjust the maxRequestLength setting in the new section as needed (the value is in KB).
    • Optionally enable Amazon S3 mirroring for ESD files as follows:
      • Open the default configuration file located at %InstallDir%/SOLO/HTML in a text editor.
      • Locate the section in the file labeled "AMAZON WEB SERVICE SETTINGS". Copy the content of the entire section to the clipboard.
      • Open the SOLO web site web.config file in a text editor and paste the copied content to the same location in the file.
      • Finally, set the values on the new entries.

-Customizable Template/Resource File Changes

  • WebComponentPages/Xml/Authors/ViewCatalog.xml
  • WebComponentPages/Xslt/Common/UserComponents/UserComponent.xslt
  • WebComponentPages/Xslt/Common/UserComponents/UserComponentPage.xslt
  • WebComponentPages/Xslt/Common/UserProperties/UserProperties.xslt
  • WebComponentPages/Xslt/Common2/UserComponents/UserComponent.xslt
  • WebComponentPages/Xslt/Common2/UserComponents/UserComponentPage.xslt
  • WebComponentPages/Xslt/Common2/UserProperties/UserProperties.xslt

-Customizable Stored Procedure Changes

  • SOLO_GetNetworkSession

SOLO Server 1.13.2.2
Released August 21, 2013

-Configuration File Changes

  • Web.Config - The following entries have been removed as they are no longer in use:
    • SWKeyProd_CursorLocation
    • WebSiteName
    • HomeURL
    • EnableAuthorSignup
    • AuthorSignupMailingID
    • AuthorSignupSKMMailingID
    • QBDefaultAccount
    • QBDefaultClassPrefix
    • QBDefaultShippingAcct
    • QBDefaultSalesTaxItem
    • QBDefaultSalesTaxPct
    • QBIntegratedSalesTaxAcct
    • DNSServerAddr
    • DefaultSettingsAuthorID

-Customizable Template/Resource File Changes

  • CustomXSL/invoices/StandardCartInvoice.xslt
  • CustomXSL/invoices/StandardCartInvoiceReverse.xslt
  • CustomXSL/invoices/StandardCartInvoiceTemplates.xslt
  • CustomXSL/invoices/StandardInvoice.xslt
  • CustomXSL/invoices/StandardInvoiceReverse.xslt
  • CustomXSL/invoices/StandardInvoiceTemplates.xslt

SOLO Server 1.13.2.1
Released July 17, 2013

-Configuration File Changes

  • Web.Config
    • PayFlowBNCode - New optional entry. Specifies the PayPal partner BN code to pass with transactions through the PayPay Payments Pro (PayFlow) gateway.
    • ManagedAddAuthors - New optional entry applicable only to SOLO instances hosted by Concept Software. Specifies whether additional authors can be added by master users.
    • AllowCrossAuthorPromotions - Existing entry. This now also controls whether items from multiple authors are allowed on a cart, and may need to be adjusted.

-Customizable Template/Resource File Changes

  • WebComponentPages/Xml/Authors/AccountOptions.xml
  • WebComponentPages/Xml/Authors/CustomerServiceOptions.xml
  • WebComponentPages/Xml/Authors/FindCustomers.xml
  • WebComponentPages/Xml/Authors/InvoiceDetails.xml
  • WebComponentPages/Xml/Customers/Customer.xml
  • WebComponentPages/Xml/Customers/LicenseHistory.xml
  • WebComponentPages/Xml/Products/ConfirmOrder.xml
  • WebComponentPages/Xml/Products/ConfirmOrder.xml.de
  • WebComponentPages/Xml/Products/ConfirmOrder.xml.es
  • WebComponentPages/Xml/Products/ConfirmOrder.xml.fr
  • WebComponentPages/Xml/Products/ConfirmOrder.xml.it
  • WebComponentPages/Xslt/Authors/AuthorUserPermissions.xslt
  • WebComponentPages/Xslt/Authors/FindCustomers.xslt
  • WebComponentPages/Xslt/Authors/InvoiceDetails.xslt
  • WebComponentPages/Xslt/Customers/License.xslt
  • WebComponentPages/Xslt/Customers/LicenseHistory.xslt
  • WebComponentPages/Xslt/Customers/RenewalsAndUpgrades.xslt
  • WebComponentPages/Xslt/Products/ConfirmOrder.xslt
  • WebComponentPages/Xslt/Products/ProductOption.xslt
  • WebComponentPages/Xslt/Products/ShoppingCart.xslt

-Database Changes

  • If using the payment plan processor, prior to performing the upgrade, rename %InstallDir%\Database\Jobs\VBScripts\ProcessPaymentPlans.vbs. After the upgrade, open the renamed file in Notepad and copy the constants from the top of the file. Next, open the new version of the ProcessPaymentPlans.vbs file in Notepad and paste the constants copied previously over the default values.

SOLO Server 1.13.2.0
Released May 24, 2013

-IMPORTANT NOTES

  • Prior to the upgrade, you must rename the %InstallDir%\SOLO\Database folder to DatabaseArchive or something similar so the installer installs a fresh copy of the Database folder rather than overwriting the existing folder.
  • When the upgrade is complete, you must copy the DailyProcessor.exe.config file from the DatabaseArchive folder to the new %InstallDir%\SOLO\Database\Jobs\DailyProcessor\ folder created by the upgrade, and optionally delete the archive folder.

-Customizable Template/Resource File Changes

  • WebComponentPages/Xml/Authors/RptMonthlySummary.xml
  • WebComponentPages/Xslt/Authors/RptMonthlySummary.xslt

-Customizable Stored Procedure Changes

  • SOLO_Rpt_LicensesByProduct

SOLO Server 1.12.2.1
Released May 8, 2013

-Configuration File Changes

  • Web.Config
    • SMTPUser - New optional entry. Specifies the SMTP user name.
    • SMTPPassword - New optional entry. Specifies the SMTP password.
    • EMailDomainCheckBypass - Removed
    • WebTrendsServer - Removed
  • DailyProcessor.exe.config
    • SMTPUser - New optional entry. Specifies the SMTP user name.
    • SMTPPassword - New optional entry. Specifies the SMTP password.

-Customizable Template/Resource File Changes

  • CustomHTML/AuthorsTopNET.htm
  • CustomXML/authors/AuthorMenu.xml
  • CustomXML/Mailings/DistributorOrderNotification.xml
  • CustomXSL/Common/UtilityTemplates.xslt
  • CustomXSL/invoices/StandardCartInvoiceTemplates.xslt
  • CustomXSL/Mailings/DistributorOrderNotification.xslt
  • WebComponentPages/Xml/Authors/AddAuthor.xml
  • WebComponentPages/Xml/Authors/AuditDisplay.xml
  • WebComponentPages/Xml/Authors/AuthorAdvancedOptions.xml
  • WebComponentPages/Xml/Authors/AuthorCCDetails.xml
  • WebComponentPages/Xml/Authors/AuthorContactDetails.xml
  • WebComponentPages/Xml/Authors/BaseReportProperties.xml
  • WebComponentPages/Xml/Authors/CartOptions.xml
  • WebComponentPages/Xml/Authors/CustomerServiceOptions.xml
  • WebComponentPages/Xml/Authors/DailyProcesses.xml
  • WebComponentPages/Xml/Authors/PLUSActivation.xml
  • WebComponentPages/Xml/Authors/RptAuditExport.xml
  • WebComponentPages/Xml/Authors/RptMonthlySummary.xml
  • WebComponentPages/Xml/Authors/ServerLicense.xml
  • WebComponentPages/Xml/Common/UserComponents/UserComponent.xml
  • WebComponentPages/Xml/Customers/License.xml
  • WebComponentPages/Xml/Customers/License.xml.pt-br
  • WebComponentPages/Xml/Customers/ManualRequest.xml
  • WebComponentPages/Xml/Products/Register.xml
  • WebComponentPages/Xslt/Authors/AddAuthor.xslt
  • WebComponentPages/Xslt/Authors/AuditDisplay.xslt
  • WebComponentPages/Xslt/Authors/AuthorAdvancedOptions.xslt
  • WebComponentPages/Xslt/Authors/AuthorCCDetails.xslt
  • WebComponentPages/Xslt/Authors/AuthorComponentPageTemplates.xslt
  • WebComponentPages/Xslt/Authors/AuthorContactDetails.xslt
  • WebComponentPages/Xslt/Authors/AuthorReportComponentPage.xslt
  • WebComponentPages/Xslt/Authors/AuthorUserPermissions.xslt
  • WebComponentPages/Xslt/Authors/CustomerDetails.xslt
  • WebComponentPages/Xslt/Authors/Default.xslt
  • WebComponentPages/Xslt/Authors/InstantSOLOOptions.xslt
  • WebComponentPages/Xslt/Authors/RptAuditExport.xslt
  • WebComponentPages/Xslt/Authors/RptMeteringConcurrency.xslt
  • WebComponentPages/Xslt/Authors/RptMonthlySummary.xslt
  • WebComponentPages/Xslt/Authors/SalesTaxRules.xslt
  • WebComponentPages/Xslt/Authors/ServerLicense.xslt
  • WebComponentPages/Xslt/Common/UserComponents/UserComponent.xslt
  • WebComponentPages/Xslt/Common/UserComponents/UserComponentPage.xslt
  • WebComponentPages/Xslt/Common/UserProperties/SelectProperties.xslt
  • WebComponentPages/Xslt/Common/UserProperties/TextProperties.xslt
  • WebComponentPages/Xslt/Common/UserProperties/UserProperties.xslt
  • WebComponentPages/Xslt/Common2/UserComponents/UserComponentPage.xslt
  • WebComponentPages/Xslt/Common2/UserProperties/SelectProperties.xslt
  • WebComponentPages/Xslt/Common2/UserProperties/TextProperties.xslt
  • WebComponentPages/Xslt/Common2/UserProperties/UserProperties.xslt
  • WebComponentPages/Xslt/Customers/Default.xslt
  • WebComponentPages/Xslt/Customers/License.xslt
  • WebComponentPages/Xslt/Customers/ManualRequest.xslt
  • WebComponentPages/Xslt/Products/Register.xslt
  • WebComponentPages/Xslt/Products/ShoppingCart.xslt

-Customizable Stored Procedure Changes

  • SOLO_CreateModifyCustomer
  • SOLO_GetCrossProductMarketingData?
  • SOLO_GetCustomerServiceLicense
  • SOLO_GetInvoiceForXMLNotification
  • SOLO_GetLicenseDataForActivation
  • SOLO_ProdSerialNumberCheck
  • SOLO_PurgeTestTransactions
  • SOLO_ValidateCustomerLogin

-Database Changes

  • If using the payment plan processor, prior to performing the upgrade, rename %InstallDir%\Database\Jobs\VBScripts\ProcessPaymentPlans.vbs. After the upgrade, open the renamed file in Notepad and copy the constants from the top of the file. Next, open the new version of the ProcessPaymentPlans.vbs file in Notepad and paste the constants copied previously over the default values. Note that there are two new constants for the SMTP user name an password which you can optionally merge in as well.
  • If you have the DailyProcessor.exe installed in a non-standard location or are running the installer from the web server with the database residing on a separate server, copy all but the configuration file from %InstallDir\SOLO Server\Database\Jobs\DailyProcessor to the DailyProcessor location.
  • Optionally add the new SMTPUser and SMTPPassword entries to the DailyProcessor.exe.config file.
  • If using either of the existing auditing triggers on the Authors or Licenses tables, manually run the appropriate scripts in the %InstallDir%\Database\Triggers\Auditing subfolder against the database.
  • Optionally run the appropriate scripts in the %InstallDir%\Database\Triggers\Auditing subfolder to enable auditing for the Products and ProdOptions tables.

SOLO Server 1.12.2.0
Released August 6, 2012

-Customizable Template/Resource File Changes

  • WebComponentPages\Xml\Customers\Default.xml.pt-br

SOLO Server 1.12.1.2
Released July 25, 2012

-IMPORTANT NOTES

  • If the SOLO Server database is located on a SQL Server 2005 instance, you must manually run the script noted in the Other Changes/Manual Steps section below. Certain versions of SQL Server 2005 contain a bug which affects the database upgrade for this version of SOLO, and the script will correct the issue.

-Configuration File Changes

  • SOLO.Config
    • Remove the File entry for authors/merchantacct.asp
  • Web.Config
    • CacheCompiledTransforms - Removed

-Customizable Template/Resource File Changes

  • CustomHTML\AuthorSignupSKMTop.htm
  • CustomHTML\AuthorSignupTop.htm
  • CustomHTML\AuthorsTop.htm
  • CustomHTML\AuthorsTopNET.htm
  • CustomHTML\AuthorsTopNETComponent.htm
  • CustomXML\authors\AuthorMenu.xml
  • WebComponentPages\Xml\Authors\AccountOptions.xml
  • WebComponentPages\Xml\Authors\ActivationLog.xml
  • WebComponentPages\Xml\Authors\AuditDisplay.xml
  • WebComponentPages\Xml\Authors\AuthorContactDetails.xml
  • WebComponentPages\Xml\Authors\AuthorEncryptionKey.xml
  • WebComponentPages\Xml\Authors\CustomerDetails.xml
  • WebComponentPages\Xml\Authors\InstantSOLOOptions.xml
  • WebComponentPages\Xml\Authors\InvoiceDetails.xml
  • WebComponentPages\Xml\Authors\LicenseDetails.xml
  • WebComponentPages\Xml\Authors\Mailings.xml
  • WebComponentPages\Xml\Authors\MerchantAccounts.xml
  • WebComponentPages\Xml\Authors\RptAuditExport.xml
  • WebComponentPages\Xml\Authors\RptLicensesByProduct.xml
  • WebComponentPages\Xml\Authors\ServerLicense.xml
  • WebComponentPages\Xml\Customers\Default.xml
  • WebComponentPages\Xml\Products\PayPalRedirect.xml
  • WebComponentPages\Xslt\Authors\ActivationLog.xslt
  • WebComponentPages\Xslt\Authors\AuditDisplay.xslt
  • WebComponentPages\Xslt\Authors\AuthorComponentPageTemplates.xslt
  • WebComponentPages\Xslt\Authors\AuthorContactDetails.xslt
  • WebComponentPages\Xslt\Authors\AuthorEncryptionKey.xslt
  • WebComponentPages\Xslt\Authors\AuthorHome.xslt
  • WebComponentPages\Xslt\Authors\AuthorReportComponentPage.xslt
  • WebComponentPages\Xslt\Authors\CustomerDetails.xslt
  • WebComponentPages\Xslt\Authors\Distributors.xslt
  • WebComponentPages\Xslt\Authors\InvoiceDetails.xslt
  • WebComponentPages\Xslt\Authors\LicenseDetails.xslt
  • WebComponentPages\Xslt\Authors\MerchantAccounts.xslt
  • WebComponentPages\Xslt\Authors\RptAuditExport.xslt
  • WebComponentPages\Xslt\Authors\RptLicensesByProduct.xslt
  • WebComponentPages\Xslt\Authors\ServerLicense.xslt
  • WebComponentPages\Xslt\Common\UserComponents\UserComponent.xslt
  • WebComponentPages\Xslt\Common\UserProperties\SelectProperties.xslt
  • WebComponentPages\Xslt\Customers\Default.xslt
  • WebComponentPages\Xslt\Products\PayPalRedirect.xslt

-Customizable Stored Procedure Changes

  • SOLO_CreateModifyCustomer
  • SOLO_GetLicenseDataForActivation
  • SOLO_GetNetworkSession
  • SOLO_PurgeTestTransactions
  • SOLO_Rpt_ActivationsExport

-Other Changes/Manual Steps:

  • If the SOLO database is located on SQL Server 2005 instance, after the upgrade is complete, run %InstallDir%\SOLO\Database\UtilityScripts\CorrectNullVarcharMaxColumns.sql against the SOLO database in SQL Server Management Studio.
  • This script repairs data corruption introduced by a known issue in SQL Server 2005 where altering a column from the text to varchar(max) data type can sometimes result in NULL values being converted to empty strings.
  • Though the known issue is reported to be resolved with Service Pack 2 Cumulative Update 13, we have witnessed this behavior on later SQL Server 2005 builds, so to be on the safe side this should be run regardless of the current version of SQL Server 2005. If no corruption is detected, the script will do nothing.

SOLO Server 1.12.1.1
Released April 30, 2012

-Configuration File Changes

  • Web.Config
    • SOLOInstanceType - New entry applicable only to SoftwareKey hosted Instant SOLO and Instant SOLO Dedicated URL instances.
    • CustomSSLPortEquivalent - New optional entry. Specifies the port SSL traffic is routed to SOLO on when running behind a SSL offloading appliance.
    • EnableInstantSOLOOptions - Removed
    • AdminEmailDomain - Removed
    • BlockServerLicensePages - Removed

-Customizable Template/Resource File Changes

  • CustomXML\authors\AuthorMenu.xml
  • CustomXSL\authors\AuthorMenu.xslt
  • WebComponentPages\Xml\Authors\ActivationLog.xml
  • WebComponentPages\Xml\Authors\AdvancedCartOptions.xml
  • WebComponentPages\Xml\Authors\AuthorAdvancedOptions.xml
  • WebComponentPages\Xml\Authors\AuthorHome.xml
  • WebComponentPages\Xml\Authors\CartOptions.xml
  • WebComponentPages\Xml\Authors\CustomerDetails.xml
  • WebComponentPages\Xml\Authors\FindCustomers.xml
  • WebComponentPages\Xml\Authors\Malls.xml
  • WebComponentPages\Xml\Authors\PLUSActivation.xml
  • WebComponentPages\Xml\Authors\RptLicenseAuditExport.xml
  • WebComponentPages\Xml\Authors\RptLicensesByProduct.xml
  • WebComponentPages\Xml\Authors\Users.xml
  • WebComponentPages\Xml\Products\Login.xml
  • WebComponentPages\Xml\Products\Login.xml.de
  • WebComponentPages\Xml\Products\Login.xml.es
  • WebComponentPages\Xml\Products\Login.xml.fr
  • WebComponentPages\Xml\Products\Login.xml.it
  • WebComponentPages\Xslt\Authors\ActivationLog.xslt
  • WebComponentPages\Xslt\Authors\AdvancedCartOptions.xslt
  • WebComponentPages\Xslt\Authors\AuthorComponentPageTemplates.xslt
  • WebComponentPages\Xslt\Authors\AuthorHome.xslt
  • WebComponentPages\Xslt\Authors\AuthorUserPermissions.xslt
  • WebComponentPages\Xslt\Authors\CartOptions.xslt
  • WebComponentPages\Xslt\Authors\ConfigurePlugins.xslt
  • WebComponentPages\Xslt\Authors\CustomerDetails.xslt
  • WebComponentPages\Xslt\Authors\FindCustomers.xslt
  • WebComponentPages\Xslt\Authors\Malls.xslt
  • WebComponentPages\Xslt\Authors\MerchantAccounts.xslt
  • WebComponentPages\Xslt\Authors\PaymentPlanInstance.xslt
  • WebComponentPages\Xslt\Authors\PaymentPlans.xslt
  • WebComponentPages\Xslt\Authors\PriorityCodes.xslt
  • WebComponentPages\Xslt\Authors\RptLicenseAuditExport.xslt
  • WebComponentPages\Xslt\Authors\RptLicensesByProduct.xslt
  • WebComponentPages\Xslt\Authors\SalesTaxRules.xslt
  • WebComponentPages\Xslt\Authors\Users.xslt
  • WebComponentPages\Xslt\Common\UserProperties\SelectProperties.xslt
  • WebComponentPages\Xslt\Products\CartPageTemplates.xslt
  • WebComponentPages\Xslt\Products\CatalogPage.xslt
  • WebComponentPages\Xslt\Products\ConfirmOrder.xslt
  • WebComponentPages\Xslt\Products\Login.xslt
  • WebComponentPages\Xslt\Products\Register.xslt

-Customizable Stored Procedure Changes

  • SOLO_GetLicenseDataForActivation
  • SOLO_GetNetworkSession
  • SOLO_Rpt_LicensesByProduct

SOLO Server 1.12.1.0
Released February 20, 2012

-Customizable Template/Resource File Changes

  • WebComponentPages\Xml\Authors\MerchantAccounts.xml
  • WebComponentPages\Xslt\Customers\License.xslt

-Customizable Stored Procedure Changes

  • SOLO_GetInvoiceForXMLNotification
  • SOLO_GetCustomerServiceLicense

SOLO Server 1.11.3.3
Released February 10, 2012

-Configuration File Changes

  • Web.Config
    • WorldPayLiveUrl - Update to https://secure.worldpay.com/wcc/.
    • WorldPayTestUrl - Update to https://secure-test.worldpay.com/wcc/
  • SOLO.config
    • Remove the File entry for authors/explore.asp

-Customizable Template/Resource File Changes

  • WebComponentPages\Xml\Authors\AuthorEncryptionKey.xml
  • WebComponentPages\Xml\Authors\MerchantAccounts.xml
  • WebComponentPages\Xml\Authors\MwAddCustomerLicense.xml
  • WebComponentPages\Xml\Customers\DownloadLicenseFile.xml
  • WebComponentPages\Xml\Customers\DownloadLicenseFile.xml.pt-br
  • WebComponentPages\Xml\Customers\License.xml
  • WebComponentPages\Xml\Customers\License.xml.pt-br
  • WebComponentPages\Xml\Customers\RecurringPayment.xml
  • WebComponentPages\Xml\Customers\RecurringPayments.xml
  • WebComponentPages\Xslt\Authors\AuthorEncryptionKey.xslt
  • WebComponentPages\Xslt\Authors\MerchantAccounts.xslt
  • WebComponentPages\Xslt\Authors\MwAddCustomerLicense.xslt
  • WebComponentPages\Xslt\Common\UserProperties\UserProperties.xslt
  • WebComponentPages\Xslt\Common2\UserProperties\UserProperties.xslt
  • WebComponentPages\Xslt\Customers\DownloadLicenseFile.xslt
  • WebComponentPages\Xslt\Customers\Downloads.xslt
  • WebComponentPages\Xslt\Customers\License.xslt
  • WebComponentPages\Xslt\Products\PaymentRedirect.xslt

-Customizable Stored Procedure Changes

  • SOLO_GetCustomerServiceLicense
  • SOLO_GetLicenseDataForActivation

-Database Changes

  • If using the payment plan processor, prior to performing the upgrade, rename %InstallDir%\Database\Jobs\VBScripts\ProcessPaymentPlans.vbs. After the upgrade, open the renamed file in Notepad and copy the constants from the top of the file. Next, open the new version of the ProcessPaymentPlans.vbs file in Notepad and paste the constants copied previously over the default values.
  • If you have the DailyProcessor.exe installed in a non-standard location or are running the installer from the web server with the database residing on a separate server, copy all but the configuration file from %InstallDir\SOLO Server\Database\Jobs\DailyProcessor to the DailyProcessor location.
  • If necessary, configure the new configuration file entries for the author file archiving daily process and configure an archiving process through the SOLO interface.

SOLO Server 1.11.3.2
Released December 12, 2011

-Configuration File Changes

  • Web.Config
    • OmitEncryptionKeyIDValidation - new optional entry. Specifies whether the web methods on the XmlActivationService, XmlLicenseFileService, and XmlNetworkFloatingService web services omit the verification of the EncryptionKeyID against the AuthorID. When omitted, this is assumed to be false.

-Customizable Template/Resource File Changes

  • WebComponentPages\Xml\Customers\ForgotPassword.xml.pt-br
  • WebComponentPages\Xml\Products\Register.xml
  • WebComponentPages\Xml\Products\Register.xml.de
  • WebComponentPages\Xml\Products\Register.xml.es
  • WebComponentPages\Xml\Products\Register.xml.fr
  • WebComponentPages\Xml\Products\Register.xml.it
  • WebComponentPages\Xslt\Common\UserProperties\SelectProperties.xslt
  • WebComponentPages\Xslt\Common2\UserProperties\SelectProperties.xslt
  • WebComponentPages\Xslt\Products\Register.xslt

-Customizable Stored Procedure Changes

  • SOLO_GetLicenseDataForActivation
  • SOLO_GetNetworkSession

SOLO Server 1.11.3.1
Released November 18, 2011

-Configuration File Changes

  • SOLO.Config
    • Add a new File child entry to the authors Folder entry for orderdetail.asp in the HttpRequestValidatorConfiguration section

-Customizable Template/Resource File Changes

  • WebComponentPages\Xml\Authors\AccountOptions.xml
  • WebComponentPages\Xml\Authors\AuthorAdvancedOptions.xml
  • WebComponentPages\Xml\Authors\AuthorCCDetails.xml
  • WebComponentPages\Xml\Authors\CustomerDetails.xml
  • WebComponentPages\Xml\Authors\Distributors.xml
  • WebComponentPages\Xml\Authors\PriorityCodes.xml
  • WebComponentPages\Xml\Authors\StoreCredit.xml
  • WebComponentPages\Xml\Authors\StoredPaymentInfo.xml
  • WebComponentPages\Xml\Common\UserComponents\CreditCardUserComponent.xml
  • WebComponentPages\Xml\Common\UserComponents\CreditCardUserComponent.xml.de
  • WebComponentPages\Xml\Common\UserComponents\CreditCardUserComponent.xml.es
  • WebComponentPages\Xml\Common\UserComponents\CreditCardUserComponent.xml.fr
  • WebComponentPages\Xml\Common\UserComponents\CreditCardUserComponent.xml.it
  • WebComponentPages\Xml\Common\UserComponents\CreditCardUserComponent.xml.pt-br
  • WebComponentPages\Xml\Customers\ForgotPassword.xml
  • WebComponentPages\Xml\Customers\PaymentInfo.xml
  • WebComponentPages\Xml\Customers\PaymentInfo.xml.pt-br
  • WebComponentPages\Xml\Products\PaymentCreditCard.xml
  • WebComponentPages\Xml\Products\PaymentCreditCard.xml.de
  • WebComponentPages\Xml\Products\PaymentCreditCard.xml.es
  • WebComponentPages\Xml\Products\PaymentCreditCard.xml.fr
  • WebComponentPages\Xml\Products\PaymentCreditCard.xml.it
  • WebComponentPages\Xslt\Authors\AuthorCCDetails.xslt
  • WebComponentPages\Xslt\Authors\AuthorComponentPage.xslt
  • WebComponentPages\Xslt\Authors\AuthorComponentPageTemplates.xslt
  • WebComponentPages\Xslt\Authors\AuthorHome.xslt
  • WebComponentPages\Xslt\Authors\CustomerDetails.xslt
  • WebComponentPages\Xslt\Authors\MwFindCustomer.xslt
  • WebComponentPages\Xslt\Authors\MwSelectCustomerLicense.xslt
  • WebComponentPages\Xslt\Authors\ServerLicense.xslt
  • WebComponentPages\Xslt\Authors\StoreCredit.xslt
  • WebComponentPages\Xslt\Authors\StoredPaymentInfo.xslt
  • WebComponentPages\Xslt\Common\UserComponents\UserComponent.xslt
  • WebComponentPages\Xslt\Common\UserProperties\SelectProperties.xslt
  • WebComponentPages\Xslt\Common\UtilityTemplates.xslt
  • WebComponentPages\Xslt\Common2\UserComponents\UserComponent.xslt
  • WebComponentPages\Xslt\Common2\UserProperties\SelectProperties.xslt
  • WebComponentPages\Xslt\Common2\UtilityTemplates.xslt
  • WebComponentPages\Xslt\Customers\Default.xslt
  • WebComponentPages\Xslt\Customers\ForgotPassword.xslt
  • WebComponentPages\Xslt\Customers\License.xslt
  • WebComponentPages\Xslt\Customers\PaymentInfo.xslt
  • WebComponentPages\Xslt\Products\ConfirmOrder.xslt
  • WebComponentPages\Xslt\Products\PaymentCreditCard.xslt

-Customizable Stored Procedure Changes

  • SOLO_CreateModifyCustomer
  • SOLO_GetCustomerServiceLicense
  • SOLO_GetInvoiceForXMLNotification
  • SOLO_PurgeTestTransactions

-Other Changes/Manual Steps:

  • If desired, remove the files from the old online manual by deleting the authors/authman and authors/srvman folders from the web site directory. These have been automatically deleted from the install directory
  • Optionally, you can also set up automatic redirects from the old online manual to the new manual. Contact support@softwarekey.com for more information.

SOLO Server 1.11.3.0
Released September 19, 2011

-Configuration File Changes

  • Web.Config
    • EnableCartErrorNotifications - New optional entry. Specifies whether detailed email error notifications are enabled for the .NET shopping cart. When omitted, this is assumed to be false.

-Customizable Template/Resource File Changes

  • WebComponentPages\Xml\Authors\Transactions.xml
  • WebComponentPages\Xml\Customers\PaymentInfo.xml
  • WebComponentPages\Xml\Customers\PaymentInfo.xml.pt-br
  • WebComponentPages\Xslt\Authors\ActivationLog.xslt
  • WebComponentPages\Xslt\Authors\AuthorPagingTemplates.xslt
  • WebComponentPages\Xslt\Authors\PaymentPlanInstanceHistory.xslt
  • WebComponentPages\Xslt\Authors\RptDeclinedOrders.xslt
  • WebComponentPages\Xslt\Authors\RptUnshippedOrders.xslt
  • WebComponentPages\Xslt\Customers\PaymentInfo.xslt
  • WebComponentPages\Xslt\Customers\RecurringPayments.xslt

SOLO Server 1.11.2.3
Released August 25, 2011

-Configuration File Changes

  • Several changes to the Web.config file must be applied after the upgrade to properly enable and secure the new FileUltimate control used to manage Storefront/ESD files. Once the upgrade is complete, open the %InstallDir%\SOLO\HTML\web.config file and copy the following to the live Web.config file:
    • In the system.web/httpModules section, copy the "FileVistaControl.UploadModule" and "AuthorFileManagerValidator" entries.
    • In the system.web section, copy the entire <pages><controls> section (or merge the contents into the live Web.config section in cases where you already have this section present).
    • Depending on your SOLO configuration, it may be necessary to adjust the src property of the "FileVistaControl" entry in the <pages><controls> section. The "~/solo" prefix in the attribute value should be updated to match the SOLODirRoot web.config entry.

-Customizable Template/Resource File Changes

  • CustomXML\authors\AuthorMenu.xml
  • CustomXSL\authors\AuthorSignupNotification.xslt
  • CustomXSL\invoices\StandardCartInvoice.xslt
  • CustomXSL\invoices\StandardCartInvoiceTemplates.xslt
  • CustomXSL\invoices\StandardInvoice.xslt
  • CustomXSL\invoices\StandardInvoiceTemplates.xslt
  • WebComponentPages\Xml\Authors\AuthorContactDetails.xml
  • WebComponentPages\Xml\Authors\AuthorHome.xml
  • WebComponentPages\Xml\Authors\DailyProcesses.xml
  • WebComponentPages\Xml\Authors\InstantSOLOOptions.xml
  • WebComponentPages\Xml\Authors\MerchantAccounts.xml
  • WebComponentPages\Xml\Authors\PaymentPlans.xml
  • WebComponentPages\Xml\Authors\Signup.xml
  • WebComponentPages\Xml\Common\Countries.xml
  • WebComponentPages\Xml\Common\ErrorStrings.xml.pt-br
  • WebComponentPages\Xml\Common\UserComponents\AddressUserComponent.xml
  • WebComponentPages\Xml\Common\UserComponents\AddressUserComponent.xml.de
  • WebComponentPages\Xml\Common\UserComponents\AddressUserComponent.xml.es
  • WebComponentPages\Xml\Common\UserComponents\AddressUserComponent.xml.fr
  • WebComponentPages\Xml\Common\UserComponents\AddressUserComponent.xml.it
  • WebComponentPages\Xml\Common\UserComponents\AddressUserComponent.xml.pt-br
  • WebComponentPages\Xml\Common\UserComponents\CreditCardUserComponent.xml.pt-br
  • WebComponentPages\Xml\Common\UserComponents\UserComponent.xml.pt-br
  • WebComponentPages\Xml\Customers\AddLicense.xml.pt-br
  • WebComponentPages\Xml\Customers\ChangePassword.xml.pt-br
  • WebComponentPages\Xml\Customers\CompanySelection.xml.pt-br
  • WebComponentPages\Xml\Customers\Customer.xml.pt-br
  • WebComponentPages\Xml\Customers\CustomerHome.xml.pt-br
  • WebComponentPages\Xml\Customers\CustomerPage.xml.pt-br
  • WebComponentPages\Xml\Customers\Default.xml.pt-br
  • WebComponentPages\Xml\Customers\DownloadFile.xml.pt-br
  • WebComponentPages\Xml\Customers\Downloads.xml.pt-br
  • WebComponentPages\Xml\Customers\ForgotPassword.xml.pt-br
  • WebComponentPages\Xml\Customers\License.xml.pt-br
  • WebComponentPages\Xml\Customers\LicenseAgreement.xml.pt-br
  • WebComponentPages\Xml\Customers\LicenseHistory.xml.pt-br
  • WebComponentPages\Xml\Customers\ManualRequest.xml.pt-br
  • WebComponentPages\Xml\Customers\PaymentHistory.xml.pt-br
  • WebComponentPages\Xml\Customers\PaymentInfo.xml
  • WebComponentPages\Xml\Customers\PaymentInfo.xml.pt-br
  • WebComponentPages\Xml\Customers\PLUSActivation.xml.pt-br
  • WebComponentPages\Xml\Customers\RecurringPayment.xml.pt-br
  • WebComponentPages\Xml\Customers\RecurringPayments.xml.pt-br
  • WebComponentPages\Xml\Customers\RenewalsAndUpgrades.xml.pt-br
  • WebComponentPages\Xml\Products\Invoice.xml
  • WebComponentPages\Xml\Products\Invoice.xml.de
  • WebComponentPages\Xml\Products\Invoice.xml.es
  • WebComponentPages\Xml\Products\Invoice.xml.fr
  • WebComponentPages\Xml\Products\Invoice.xml.it
  • WebComponentPages\Xml\Products\ShoppingCart.xml
  • WebComponentPages\Xml\Products\ShoppingCart.xml.de
  • WebComponentPages\Xml\Products\ShoppingCart.xml.es
  • WebComponentPages\Xml\Products\ShoppingCart.xml.fr
  • WebComponentPages\Xml\Products\ShoppingCart.xml.it
  • WebComponentPages\Xslt\Authors\ActivationLog.xslt
  • WebComponentPages\Xslt\Authors\AuthorCategories.xslt
  • WebComponentPages\Xslt\Authors\AuthorCCDetails.xslt
  • WebComponentPages\Xslt\Authors\AuthorComponentPage.xslt
  • WebComponentPages\Xslt\Authors\AuthorComponentPageTemplates.xslt
  • WebComponentPages\Xslt\Authors\AuthorContactDetails.xslt
  • WebComponentPages\Xslt\Authors\AuthorHome.xslt
  • WebComponentPages\Xslt\Authors\AuthorListComponentPage.xslt
  • WebComponentPages\Xslt\Authors\AuthorPanelTemplates.xslt
  • WebComponentPages\Xslt\Authors\AuthorReportComponentPage.xslt
  • WebComponentPages\Xslt\Authors\AuthorUserPermissions.xslt
  • WebComponentPages\Xslt\Authors\Billing.xslt
  • WebComponentPages\Xslt\Authors\ChangeUserPassword.xslt
  • WebComponentPages\Xslt\Authors\ConfigureLicenseLabels.xslt
  • WebComponentPages\Xslt\Authors\ConfigurePlugins.xslt
  • WebComponentPages\Xslt\Authors\CustomerDetails.xslt
  • WebComponentPages\Xslt\Authors\CustomerServiceOptions.xslt
  • WebComponentPages\Xslt\Authors\CustomMarkup.xslt
  • WebComponentPages\Xslt\Authors\DailyProcesses.xslt
  • WebComponentPages\Xslt\Authors\Default.xslt
  • WebComponentPages\Xslt\Authors\Distributors.xslt
  • WebComponentPages\Xslt\Authors\DistributorTypes.xslt
  • WebComponentPages\Xslt\Authors\FindCustomers.xslt
  • WebComponentPages\Xslt\Authors\Groups.xslt
  • WebComponentPages\Xslt\Authors\ImportProductSerialNumbers.xslt
  • WebComponentPages\Xslt\Authors\InstantSOLOOptions.xslt
  • WebComponentPages\Xslt\Authors\Mailings.xslt
  • WebComponentPages\Xslt\Authors\Malls.xslt
  • WebComponentPages\Xslt\Authors\MarketingSources.xslt
  • WebComponentPages\Xslt\Authors\MerchantAccounts.xslt
  • WebComponentPages\Xslt\Authors\MwAddCustomer.xslt
  • WebComponentPages\Xslt\Authors\MwAddCustomerLicense.xslt
  • WebComponentPages\Xslt\Authors\MwFindCustomer.xslt
  • WebComponentPages\Xslt\Authors\MwSelectCustomer.xslt
  • WebComponentPages\Xslt\Authors\MwSelectCustomerLicense.xslt
  • WebComponentPages\Xslt\Authors\MwSelectProduct.xslt
  • WebComponentPages\Xslt\Authors\PaymentPlanInstance.xslt
  • WebComponentPages\Xslt\Authors\PaymentPlanInstanceHistory.xslt
  • WebComponentPages\Xslt\Authors\PaymentPlans.xslt
  • WebComponentPages\Xslt\Authors\PLUSActivation.xslt
  • WebComponentPages\Xslt\Authors\PriorityCodes.xslt
  • WebComponentPages\Xslt\Authors\ProductList.xslt
  • WebComponentPages\Xslt\Authors\ProductShipping.xslt
  • WebComponentPages\Xslt\Authors\ProductUpdate.xslt
  • WebComponentPages\Xslt\Authors\ProductUpsell.xslt
  • WebComponentPages\Xslt\Authors\ResetUserPassword.xslt
  • WebComponentPages\Xslt\Authors\ReturnReasons.xslt
  • WebComponentPages\Xslt\Authors\RptDeclinedOrders.xslt
  • WebComponentPages\Xslt\Authors\RptUnshippedOrders.xslt
  • WebComponentPages\Xslt\Authors\SalesTaxRules.xslt
  • WebComponentPages\Xslt\Authors\ServerLicense.xslt
  • WebComponentPages\Xslt\Authors\ServerLicenseActivate.xslt
  • WebComponentPages\Xslt\Authors\Signup.xslt
  • WebComponentPages\Xslt\Authors\SignupComplete.xslt
  • WebComponentPages\Xslt\Authors\StoreCredit.xslt
  • WebComponentPages\Xslt\Authors\StoredPaymentInfo.xslt
  • WebComponentPages\Xslt\Authors\TermsAndConditions.xslt
  • WebComponentPages\Xslt\Authors\TicketCategories.xslt
  • WebComponentPages\Xslt\Authors\Transactions.xslt
  • WebComponentPages\Xslt\Authors\Users.xslt
  • WebComponentPages\Xslt\Authors\ViewCatalog.xslt
  • WebComponentPages\Xslt\Authors\Warehouses.xslt
  • WebComponentPages\Xslt\Common\UserComponents\UserComponent.xslt
  • WebComponentPages\Xslt\Common\UserProperties\UserProperties.xslt
  • WebComponentPages\Xslt\Common\UtilityTemplates.xslt
  • WebComponentPages\Xslt\Common2\UserComponents\UserComponent.xslt
  • WebComponentPages\Xslt\Common2\UserProperties\SelectProperties.xslt
  • WebComponentPages\Xslt\Common2\UserProperties\TextProperties.xslt
  • WebComponentPages\Xslt\Common2\UserProperties\UserProperties.xslt
  • WebComponentPages\Xslt\Common2\UtilityTemplates.xslt
  • WebComponentPages\Xslt\Customers\ChangePassword.xslt
  • WebComponentPages\Xslt\Customers\CompanySelection.xslt
  • WebComponentPages\Xslt\Customers\Customer.xslt
  • WebComponentPages\Xslt\Customers\CustomerHome.xslt
  • WebComponentPages\Xslt\Customers\CustomerPage.xslt
  • WebComponentPages\Xslt\Customers\Downloads.xslt
  • WebComponentPages\Xslt\Customers\ForgotPassword.xslt
  • WebComponentPages\Xslt\Customers\License.xslt
  • WebComponentPages\Xslt\Customers\LicenseHistory.xslt
  • WebComponentPages\Xslt\Customers\ManualRequest.xslt
  • WebComponentPages\Xslt\Customers\PaymentHistory.xslt
  • WebComponentPages\Xslt\Customers\PaymentInfo.xslt
  • WebComponentPages\Xslt\Customers\PLUSActivation.xslt
  • WebComponentPages\Xslt\Customers\RecurringPayment.xslt
  • WebComponentPages\Xslt\Customers\RecurringPayments.xslt
  • WebComponentPages\Xslt\Customers\RenewalsAndUpgrades.xslt
  • WebComponentPages\Xslt\Products\Cart.xslt
  • WebComponentPages\Xslt\Products\CatalogPage.xslt
  • WebComponentPages\Xslt\Products\ConfirmOrder.xslt
  • WebComponentPages\Xslt\Products\DistributorLogin.xslt
  • WebComponentPages\Xslt\Products\Error.xslt
  • WebComponentPages\Xslt\Products\LicenseAgreement.xslt
  • WebComponentPages\Xslt\Products\Login.xslt
  • WebComponentPages\Xslt\Products\OrderDecline.xslt
  • WebComponentPages\Xslt\Products\Payment.xslt
  • WebComponentPages\Xslt\Products\PaymentCreditCard.xslt
  • WebComponentPages\Xslt\Products\PaymentMail.xslt
  • WebComponentPages\Xslt\Products\PaymentPhone.xslt
  • WebComponentPages\Xslt\Products\PaymentStatus.xslt
  • WebComponentPages\Xslt\Products\Product.xslt
  • WebComponentPages\Xslt\Products\ProductOption.xslt
  • WebComponentPages\Xslt\Products\Register.xslt
  • WebComponentPages\Xslt\Products\ShoppingCart.xslt

-Customizable Stored Procedure Changes

  • SOLO_GetInvoiceForXMLNotification
  • SOLO_GetNonActivatedLicenseNotificationData
  • SOLO_Rpt_ActivationsExport
  • SOLO_Rpt_LicensesByProduct

-Database Changes

  • The SQL Server stored procedure and user defined function scripts have been segregated. Prior to the install, it is necessary to delete the following user defined function files from the %InstallDir%\SOLO\Database\StoredProcedures directory to prevent them from overwriting the new versions in the Functions folder during the upgrade:
    • SOLO_ConvertDelimitedStringToTable.PRC
    • SOLO_CheckIPAddress.PRC
    • SOLO_GetColumnLength.PRC
    • SOLO_GetDate.PRC
    • SOLO_GetEndDate.PRC
    • SOLO_GetMaskedCreditCardNumber.PRC
    • SOLO_WrapWildcards.PRC

SOLO Server 1.11.2.1
Released June 17, 2011

-IMPORTANT NOTES

  • Due to changes in the way the database is scripted, you MUST install SOLO version 1.11.2.0 prior to installing this version in order for the previous database updates to be applied properly.
  • In addition, prior to the upgrade, you must rename the %InstallDir%\SOLO\Database folder to DatabaseArchive or something similar so the installer installs a fresh copy of the Database folder rather than overwriting the existing folder.
  • Finally, when the upgrade is complete, you must copy the DailyProcessor.exe.config file from the DatabaseArchive folder to the new %InstallDir%\SOLO\Database\Jobs\DailyProcessor\ folder created by the upgrade.

-Configuration File Changes

  • Web.Config
    • MaximumImageUploadBytes - New optional entry. Specifies the maximum upload file size in bytes for image uploads for products/options and the storefront logo image. If omitted or set to 0, a default value of 2MB is used.

-Customizable Template/Resource File Changes

  • WebComponentPages\Xml\Products\Error.xml

SOLO Server 1.11.2.0
Released May 31, 2011

No Changes


SOLO Server 1.11.1.1
Released May 23, 2011

-Configuration File Changes

  • Web.Config
    • AdminEmailDomain - New optional entry - see release notes for more details.
    • SOLOCustomRootDir - New required entry. Must be added and pointed to the %InstallDir%\SOLO\DLLS\ directory prior to upgrade. Also see additional notes below.
    • SOLOCustomHTMLDir - Now optional - see additional notes below.
    • SOLOCustomXMLDir - Now optional - see additional notes below.
    • SOLOCustomXSLDir - Now optional - see additional notes below
    • WebComponentPagesRoot - Now optional - see additional notes below

-Customizable Template/Resource File Changes

  • CustomHTML\AuthorSignupSKMTop.htm
  • CustomHTML\AuthorSignupTop.htm
  • CustomXML\authors\AuthorMenu.xml
  • CustomXSL\authors\AuthorSignupNotification.xslt
  • WebComponentPages\Xml\Authors\AuthorHome.xml
  • WebComponentPages\Xml\Authors\Distributors.xml
  • WebComponentPages\Xml\Authors\InstantSOLOOptions.xml
  • WebComponentPages\Xml\Authors\Mailings.xml
  • WebComponentPages\Xml\Authors\PLUSActivation.xml
  • WebComponentPages\Xml\Authors\RptDownloadTrialLog.xml
  • WebComponentPages\Xml\Authors\Users.xml
  • WebComponentPages\Xml\Customers\DownloadFile.xml
  • WebComponentPages\Xml\Products\Register.xml
  • WebComponentPages\Xml\Products\Register.xml.de
  • WebComponentPages\Xml\Products\Register.xml.es
  • WebComponentPages\Xml\Products\Register.xml.fr
  • WebComponentPages\Xml\Products\Register.xml.it
  • WebComponentPages\Xslt\Authors\AdvancedCartOptions.xslt
  • WebComponentPages\Xslt\Authors\AuthorComponentPageTemplates.xslt
  • WebComponentPages\Xslt\Authors\AuthorHome.xslt
  • WebComponentPages\Xslt\Authors\AuthorUserPermissions.xslt
  • WebComponentPages\Xslt\Authors\CustomerDetails.xslt
  • WebComponentPages\Xslt\Authors\Distributors.xslt
  • WebComponentPages\Xslt\Authors\Mailings.xslt
  • WebComponentPages\Xslt\Authors\PLUSActivation.xslt
  • WebComponentPages\Xslt\Authors\Users.xslt
  • WebComponentPages\Xslt\Customers\Default.xslt
  • WebComponentPages\Xslt\Customers\DownloadFile.xslt
  • WebComponentPages\Xslt\Products\PayPalRedirect.xslt
  • WebComponentPages\Xslt\Products\Register.xslt

-Customizable Stored Procedure Changes

  • SOLO_GetNonActivatedLicenseNotificationData

-Other Changes/Manual Steps

  • Prior to upgrading, you will need to add the new SOLOCustomRootDir web.config entry into the File System Settings section of web.config. This should point to the %InstallDir%\SOLO\DLLS\ directory on the file system.
  • Major changes have been made to the way SOLO installs and locates the following types of customizable template files:
    • Custom HTML Templates - HTML template files used to generate the default header and footer in each section of SOLO.
    • Custom XSL Templates - XSLT template files used to generate html markup from XML data (such as online invoices).
    • Custom XML Resource Files - XML resource files used to store static data used to generate markup (such as the generating the menu in the authors interface).
  • The previous implementation for these types of files worked as follows:
    • On initial install, all files were installed to their default subfolder in the install directory, as well as into a Default subfolder within the default folder. For example, Custom HTML templates would be installed into %InstallDir%\SOLO\DLLS\Custom HTML\ and %InstallDir%\SOLO\DLLS\Custom HTML\Default\.
    • Initial installation also configured SOLO to reference the files in their root location (e.g. %InstallDir%\SOLO\DLLS\Custom HTML\).
    • The file system path SOLO uses to reference each type of file was configured through a separate configuration file entry for each file type.
    • On subsequent upgrades, the installer would not overwrite the files in the root location to prevent overwriting any customizations, instead writing to the Default subfolder.
    • For a majority of SOLO installs with no customizations, this was problematic, as it required either changing the configuration to reference the files in the Default subfolder, or manually copying updated files from the Default subfolder to the root after performing the upgrade.
  • The new implementation works as follows:
    • On initial install, the files are installed into their install root directory. The Default subdirectory is no longer created.
    • The file system path used by SOLO to locate these files no longer requires specifying a configuration entry for each file type. Instead, a new SOLOCustomRootDir web.config entry has been added which stored the path to the parent folder of all the the root folders.
    • During installation, the individual web.config entries are no longer configured - instead the new SOLOCustomRootDir entry is populated with the path the parent directory of all template folders.
    • To determine the file system path, SOLO now first looks for a value in the type specific web.config entry and uses this if present. If not present, it will fall back to the default install directory determined from the new SOLOCustomRootDir configuration entry.
    • Best practice for customizing these files is now to create a Custom subdirectory off of the root and override the configuration entry.
    • To prevent overwriting any customizations in the transition, the default directory names have been updated to no longer include a space (e.g. Custom HTML has changed to CustomHTML).
    • Also note that while the WebComponentPages Template/Resource Files were previously working in the manner the other files have been updated to, the WebComponentPagesRoot implementations has also been tweaked so that the web.config root entry is no longer required.
  • While the changes are backwards compatible, it's recommended to upgrade the SOLO installation to use the new best practices with regards to these files after upgrading.
  • To perform the migration, follow these steps:
    • First, determine if you have customized any of these files on your current installation
    • To determine if any Custom HTML/XSL templates or XML resource files have been customized:
      • Determine the current location where these files are being referenced by opening the web.config file and locating the value of the SOLOCustomXXXDir entry.
      • Most likely this will be the default install location %InstallDir\SOLO\DLLS\Custom XXXX\. If this is not the case contact support.
      • Using a directory diff tool, diff the files in the folder against those in the Default subfolder. If any files have different content then they have been customized - make note of which files have differences.
    • To determine if any WebComponentPages templates or resource files have been customized:
      • Determine the current location where these files are being referenced by opening the web.config file and locating the value of the WebComponentPagesRoot entry.
      • If there are no customizations, this will point to the default install location %InstallDir%\SOLO\DLLS\WebComponentPages. If this points to a subdirectory of this location, customizations are in place.
    • If no customizations were found, follow these steps to upgrade to the latest install conventions:
      • Open the %InstallDir%\SOLO\HTML\Web.config file - this contains a blank sample of the most current Web.Config contents which can be used for reference.
      • Edit the Web.Config file in notepad or another text editor (be sure to run as administrator on Server 2008).
      • Clear the values from the SOLOCustomHTMLDir, SOLOCustomXMLDir, SOLOCustomXSLDir, and WebComponentPagesRoot entries. This will cause SOLO to use the default subdirectories located in the directory specified in the new SOLOCustomRootDir web.config entry.
      • In Windows Explorer, delete the old folders which will no longer be used:
        • %InstallDir%\SOLO\DLLS\Custom HTML\
        • %InstallDir%\SOLO\DLLS\Custom XML\
        • %InstallDir%\SOLO\DLLS\Custom XSL\
        • NOTE:Be sure to delete the folders with a space in the name and NOT the folders without a space. The new default locations do not contain a space - this was done to prevent overwriting any customizations in the old location during the upgrade.
    • If customizations were found for the Custom HTML, XML, or XSL template/resource files:
      • For file types with no customizations - make the same changes as listed in above, except only for the given file type.
      • For file types with customizations, create a new Custom subfolder off of the default directory at %InstallDir%\SOLO\DLLS\CustomXXX\ (note no space in the folder name).
      • Copy the existing files from the old root directory at %InstallDir%\SOLO\DLLS\Custom XXX\ (note the space in the folder name) to the new Custom subfolder create in the previous step.
      • Update the SOLOCustomXXXDir web.config entry to point to the new Custom subfolder.
      • Once complete, delete the old folders as noted above.
    • If customizations were found for the WebComponentPages templates/resource files. Leave things as is. If no customizations are found, clear the value from the WebComponentPagesRoot web.config entry so SOLO uses the default location.

SOLO Server 1.11.1.0
Released March 14, 2011

No Changes


SOLO Server 1.10.4.5
Released March 7, 2011

-Customizable Template/Resource File Changes

  • CustomHTML\AuthorSignupBottom.htm
  • CustomHTML\AuthorSignupSKMBottom.htm
  • CustomHTML\AuthorSignupSKMTop.htm
  • CustomHTML\AuthorSignupTop.htm
  • CustomHTML\AuthorsTopNETComponent.htm
  • WebComponentPages\Xml\Authors\AuthorAdvancedOptions.xml
  • WebComponentPages\Xml\Authors\AuthorHome.xml
  • WebComponentPages\Xml\Authors\CustomerServiceOptions.xml
  • WebComponentPages\Xml\Authors\DailyProcesses.xml
  • WebComponentPages\Xml\Authors\PLUSActivation.xml
  • WebComponentPages\Xml\Customers\License.xml
  • WebComponentPages\Xml\Customers\PLUSActivation.xml
  • WebComponentPages\Xslt\Authors\AuthorComponentPage.xslt
  • WebComponentPages\Xslt\Authors\AuthorComponentPageTemplates.xslt
  • WebComponentPages\Xslt\Authors\AuthorHome.xslt
  • WebComponentPages\Xslt\Authors\AuthorPanelTemplates.xslt
  • WebComponentPages\Xslt\Authors\CustomerServiceOptions.xslt
  • WebComponentPages\Xslt\Authors\DailyProcesses.xslt
  • WebComponentPages\Xslt\Authors\PLUSActivation.xslt
  • WebComponentPages\Xslt\Common\UserProperties\TextProperties.xslt
  • WebComponentPages\Xslt\Common\UtilityTemplates.xslt
  • WebComponentPages\Xslt\Customers\Default.xslt
  • WebComponentPages\Xslt\Customers\License.xslt
  • WebComponentPages\Xslt\Customers\LicenseAgreement.xslt
  • WebComponentPages\Xslt\Customers\PLUSActivation.xslt
  • WebComponentPages\Xslt\Products\ShoppingCart.xslt

-Customizable Stored Procedure Changes

  • SOLO_GetCustomerServiceLicense
  • SOLO_CreateModifyCustomer

-Other Changes/Manual Steps

  • All existing VBScript jobs with the exception of the payment plan processor and the abandoned cart processor have been migrated to a new .NET based DailyProcessor.exe application.
  • This new system simplifies configuration as it requires only one SQL Agent job step to be configured, and the remaining configuration can be done through a web page.
  • After upgrading, it is necessary to migrate over to the new system.
  • To perform the migration, follow these steps:
    • Create a new SOLOServer database mail account and profile:
      • From SSMS (SQL Server Management Studio) on the database server, open the %INSTALLDIR%\SOLO\Database\Jobs\CreateSOLOServerDatabaseMailProfile.sql script file.
      • Starting on line 15 are several lines of commented out code declaring local variables and setting values on these variables.
      • Uncomment these lines of code, then set the values of the variables, and then run the script to create the account and profile.
      • Note that the script assumes default values (port 25, anonymous access, etc.), so you should test that database mail is able to send an email and adjust settings as needed.
      • Alternately, manually create both a database mail account and profile both using the name "SOLOServer".
    • Create the SOLO Daily Processing job in SQL Agent:
      • From SSMS on the database server, open the %INSTALLDIR%\SOLO\Database\Jobs\DailyProcessor.sql script file.
      • Starting on line 9 are several lines of commented out code declaring local variables and setting values on these variables.
      • Uncomment these lines of code, then set the values of the variables, and then run the script to create the SQL agent job.
    • Update the daily processor configuration file at %INSTALLDIR%\SOLO\Database\Jobs\DailyProcessor\DailyProcessor.exe.config. You can reference the web site web.config file for most settings here.
    • Determine which SOLO jobs are currently configured in SQL Agent:
      • In SSSM on the database server, view the SQL Agent jobs.
      • Identify any SOLO jobs which are enabled. All SOLO specific jobs are named using the "SOLO Job Name" naming convention for easy identification.
      • For each job found, copy/paste the details of each job step (excluding the failure step) into a text file. This will be used later on for reference when configuring the new daily processes.
    • Next, configure the new daily processes to replace to old VBScript jobs:
      • Log in to SOLO and choose the Daily Processes option from the Admin menu (you must have Master User permission).
      • You should see a Daily Maintenance process already configured which was added by the installer during the upgrade with the default settings.
      • If the existing SOLO Daily Maintenance job specified "EXEC SOLO_DailyMaintenance" (referencing the text file created above)with no additional input parameters, the existing job is configured with the defaults. Simply edit the process and check the Active checkbox and save the changes.
      • If additional parameters are found, click edit, adjust the values in the Input Xml field to match the override inputs to the existing job, and then check the Active checkbox and save the changes.
      • Next, configure a process for each of the existing jobs (excluding the Process Payment Plans job, which has yet to be migrated to the new system) as follows:
        • For each existing job step, click Add New from the listing page. Enter a unique name and a description, and then choose the appropriate process type.
        • Click the Load Default Template link below the Input Xml text area. This will load an xml configuration snippet for the chosen process type into the text area. Note that some process types do not require any inputs, and in these cases nothing will populate the text area.
        • Set values for each xml element in the Input Xml based on the parameters passed in the existing job step. If necessary, click the help link for reference on how things map between the old VBScript inputs and the new daily process inputs.
        • Set the Execution Index to 1 or higher for all processes. 0 is reserved for the Daily Maintenance process to ensure that it runs prior to any other processes.
        • Check the Active checkbox and save the changes.
      • NOTE: The Send Demo Teaser Emails VBScript job has been replaced with the Trial Teaser Notification (Global) process, which no longer requires configuring a separate step for each product.
        • Instead of creating a separate Trial Teaser Notification process for each of the steps from the existing SQL job, instead configure on Trial Teaser Notification (Global) process.
        • Next, edit each product which currently has a step and set the new Trial Teaser Days Back field to the DaysBack used by the old job step.
        • Finally, for the notification email each old job step, see if there is currently a SOLO user with that email, and if so, set Notify Trials on that user if not set. Otherwise, create a new user with this email and set Notify Trials on the user so they continue to receive notifications.
    • Once everything is configured, enable the new SOLO Daily Processing job in SQL Agent, and disable all other SOLO SQL Agent jobs except the SOLO Process Payment Plan Payments.
    • Monitor the summary reports sent to the addresses specified in the AdminEmails configuration entry in the DailyProcessor.exe.config for several days to ensure things are running smoothly.
    • Once everything is verified to be working, remove all SOLO SQL Agent jobs except for SOLO Process Payment Plan Payments.

SOLO Server 1.10.4.4
Released January 20, 2011

-Customizable Template/Resource File Changes

  • WebComponentPages\Xml\Authors\PLUSActivation.xml
  • WebComponentPages\Xml\Customers\PLUSActivation.xml
  • WebComponentPages\Xslt\Authors\Default.xslt
  • WebComponentPages\Xslt\Authors\PLUSActivation.xslt
  • WebComponentPages\Xslt\Customers\PLUSActivation.xslt

Contact Information

Find out how to contact us for questions, comments, and technical support.

Concept Software, Inc.

Contact us through our web site: http://www.softwarekey.com/contact/

Online Support

We have several online support options available to you, including:

  • Online Searchable Knowledgebase
  • News History and Newsletter signup
  • Downloads

Online support can be reached at http://www.softwarekey.com/support/

Downloading updates and renewing subscriptions

Both downloading updates and renewing subscriptions may be done online in the Customer License Portal.

  • Go to www.SoftwareKey.com
  • Click Customer Login at the top.
  • Once logged in, click on the Downloads button to download software updates.
  • To renew software maintenance, click Renewals & Upgrades button. Choose either the appropriate software maintenance renewal or an upgrade option. Review the EULA and complete the purchase via the Shopping Cart facility.