Dynamicweb 9.3

Release date: 29th of August 2017

Dynamicweb 9.3 has been released with the following exciting new features:

  • Dynamicweb PIM – Product Information Management – lets you manage and enrich your product portfolio from central location, using queries, multi-edit across languages and variants, intuitive language management and much more. Read more here.
  • Customizable Dashboards have been introduced for PIM, Ecommerce & and the Home area. Use customizable widgets to display key data and KPIs – and use the Query widgets to e.g. set up a visual representation of PIM workflows. Read more here.
  • The Deployment tool has been improved, and can now move content (websites, pages, paragraphs & items) from one solution to another. Read more here.

Additionally, Load Balancing has been reintroduced, with support for any number of nodes and full Ecommerce support, new antispam and security measures have been introduced, and view models for the cart and navigation mean a goodbye to XSLT (score!).

The Indexing engine now features a new FileIndexBuilder and a reworked ContentIndexBuilder capable of replacing the Search Weighted app.

Within Ecommerce, BOGO discounts are now possible, gift cards can be cancelled, and the Stripe, QuickPay and Cybersource payment gateways now support refunds and authorization cancellations.

On the UX front, the general UI has been updated with wider trees, a crisper look and a nicer general feel, the Indexing engine has been overhauled so it looks nicer and is easier to use. We’ve also included a beta-version of a Grid engine capable of visually representing e.g. Bootstrap grids when working with content.

Finally, performance has seen significant improvements with a major overhaul of the “content services” for pages, paragraphs and items – and more than 44 bugs, 94 feature requests, and 1300 PBIs are included.

Looking to upgrade? Check out the "Upgrading to Dynamicweb 9" article and consult the bug fixes list before upgrade.

  • Filepublisher update
    Apps\File publishing
    1. Two new loops was created: - "FoldersLoop" - "FilesLoop" 2. Added template for the list with new loops
  • Rename sender field to sender email field
    Apps\Forms for editors
    Forms for Editors -> Paragraph settings -> Email section. "Sender" field has been renamed to "Sender email" field as mail servers expect a valid email in that field and can reject if not present
  • Automatic value in Forms for editors E-mail notifications
    Apps\Forms for editors
  • Support reply to field on Forms for editors
    Apps\Forms for editors
  • Remove maxlength from the description and text fields
    Apps\Forms for editors
  • Add sender name to mail and receipt settings
    Apps\Forms for editors
  • Do not add field id when copying fields
    Apps\Forms for editors
    Only add id to systemname when copying field, not when copying entire form
  • Add multiple attribute (html5 feature) to input fields of type file
    Apps\Forms for editors
    Forms for Editors File field now supports multiple file selection
  • Forms module should work with the Sender name
    Apps\Forms for editors
    Added settings: "ReceiptSenderName", "MailSenderName"
  • Make it possible to deselect default option in Forms for Editors list elements
    Apps\Forms for editors
    Default options in Forms for Editors list fields can now be changed by toggling the default icon
  • Update UI for forms for editors paragraph settings screen
    Apps\Forms for editors
  • Make editors inline instead of pop-ups.
    Apps\Forms for editors
  • Make it possible to toggle the "Default" property value in the "Option" class
    Apps\Forms for editors
    The "Default" property value for the form option can be changed to false using ToggleDefaultOption function
  • Add user custom fields on forum message renderer
    Apps\Forum
  • Disable posting in forum module for anonymous users
    Apps\Forum
    Anoymous posting to the forum module has been disabled for security reasons. From now on an extranet session is required to post. Templates will need adjusting, new default templates are included with 9.3 release
  • ExecutionTableMapper should be changed to only be assigned on BeginApplication instead on each BeginRequest
    Cleanup and refac
    Move SetupExecutionTableMapper from subscribing to BeginRequest to AfterStart.
  • Clean up users objects that are not needed.
    Cleanup and refac
    Deleted unused code.
  • Remove context dependency from Extensibility
    Cleanup and refac\API Refactoring
    No longer uses Context.Current and does not depend upon Dynamicweb.Environment. ConfigureableAddin class: Constructor no longer calls UpdateFromPost. Must be called explicitly, if desired. SetValue no longer stores parameterValue in session. LoadParametersFromXml no longer stores it's parameter in session.
  • Make Admin, Ecom and Host always releaseable
    Cleanup and refac\API Refactoring
  • Make lightweight LimitedUser.vb for authorization/authentication
    Cleanup and refac\API Refactoring
    Split User.vb into two classes: LimitedUser.vb which is a lightweight context.current-independent class and User.vb which inherits from LimitedUser. User.vb effectively exposes exactly the same signature as the old class.
  • Cleanup CodeProviderBase
    Cleanup and refac\API Refactoring
  • Change external reference to owin.dll into a package reference
    Cleanup and refac\API Refactoring
    Replaced an external dlls with a nuget package reference (Owin.dll). NOTE: The missed Owin.dll bug exists with the Dynamicweb.Packaging package if the version is below 1.3.5 So please update Dynamicweb.Packaging to 1.3.5 first
  • LoginHandler changes
    Cleanup and refac\API Refactoring
  • Refactor SimpleTree to fix a soon-to-be bugs
    Cleanup and refac\API Refactoring
    Minor refactoring of SimpleTree.
  • Setup / POC precompile for server
    Cleanup and refac\Performance
  • Remove all threadstatic from solution and fix/TFS all relevant IDisposible warnings
    Cleanup and refac\Performance
  • Make WriterHtmlExtensions non-static and remove usages of ThreadStatic from it
    Cleanup and refac\Performance
    Dynamicweb.Elements.Layouts.Card: BeginRenderCard changed access level from public to protected internal. RenderToolbar changed access level from public to private. BeginRenderCardContent changed access level from public to protected internal. EndRenderCardContent changed access level from public to protected internal. EndRenderCard changed access level from public to protected internal. Dynamicweb.Elements.Layouts.TabbedCard: BeginTabHeader changed access level from public to private. EndTabHeader changed access level from public to private. Dynamicweb.Elements.Layouts.Tab: BeginTab changed access level from public to private. EndTab changed access level from public to private. Dynamicweb.Elements.Layouts.WidgetCard: BeginRenderCard changed access level from public to private. EndRenderCard changed access level from public to private. Dynamicweb.Elements.Layouts.Section: BeginSection changed access level from public to private. EndSection changed access level from public to private. Dynamicweb.Elements.Layouts.Row: BeginRow changed access level from public to private. EndRow changed access level from public to private. Dynamicweb.Elements.Layouts.Cell: BeginCell changed access level from public to private. EndCell changed access level from public to private. Dynamicweb.Elements.Layouts.SidePanel: BeginSidePanel changed access level from public to private. EndSidePanel changed access level from public to private. Dynamicweb.Elements.Layouts.GroupBox: BeginGroupBox changed access level from public to public. EndGroupBox changed access level from public to public. Dynamicweb.Elements.Displays.StaticNode: RenderStaticNode changed access level from public to private. Dynamicweb.Elements.Displays.Label: RenderLabel changed access level from public to private. Dynamicweb.Elements.Displays.Chart: RenderChart changed access level from public to private. Dynamicweb.Elements.Displays.Infobar: RenderInfobar changed access level from public to private. Dynamicweb.Elements.Displays.Teaser: RenderTeaser changed access level from public to private. Dynamicweb.Elements.Displays.Counter: RenderCounter changed access level from public to private. Dynamicweb.Elements.Displays.TileView: RenderTileView changed access level from public to private. Dynamicweb.Elements.Inputs.TextBox: RenderTextBox changed access level from public to public. Dynamicweb.Elements.Inputs.TextArea: RenderTextArea changed access level from public to public. Dynamicweb.Elements.Inputs.Number: RenderNumber changed access level from public to public. Dynamicweb.Elements.Inputs.CheckBox: RenderCheckBox changed access level from public to public. Dynamicweb.Elements.Inputs.CheckBoxGroup: RenderCheckBoxGroup changed access level from public to private. RenderCheckBox changed access level from public to private. EndRenderCheckBoxGroup changed access level from public to private. Dynamicweb.Elements.Inputs.RadioGroup: RenderRadioGroup changed access level from public to private. RenderRadioButtons changed access level from public to private. EndRenderRadioGroup changed access level from public to private. Dynamicweb.Elements.Inputs.RadioButton: RenderRadioButton changed access level from public to public. Dynamicweb.Elements.Inputs.Toggle: RenderToggle changed access level from public to private. Dynamicweb.Elements.Inputs.Color: RenderColor changed access level from public to private. Dynamicweb.Elements.Inputs.SelectPicker: RenderSelectPicker changed access level from public to public. Dynamicweb.Elements.Inputs.SelectPickerOption: RenderSelectPickerOption changed access level from public to private. Dynamicweb.Elements.Inputs.Hidden: RenderHidden changed access level from public to private. Dynamicweb.Elements.Actions.ActionBar: BeginRenderActionBar changed access level from public to private. EndRenderActionBar changed access level from public to private. Dynamicweb.Elements.Actions.Toolbar: RenderToolbar changed access level from public to private. Dynamicweb.Elements.Actions.ActionButton: RenderActionButton changed access level from public to public. Dynamicweb.Elements.Actions.ActionLink: RenderActionLink changed access level from public to private. Dynamicweb.Elements.Actions.ToolbarButton: RenderToolbarButton changed access level from public to private. Dynamicweb.Elements.Actions.ActionIcon: RenderActionIcon changed access level from public to private. Dynamicweb.Elements.Actions.ActionTool: RenderTool changed access level from public to private. Dynamicweb.UI.Elements.Html.WriterHtmlExtensions: RenderEndTag - marked as obsolete WriteTabs - removed RenderAttribute - removed RenderBeginTag - removed New class added Dynamicweb.UI.Elements.Html.ElementHtmlWriter
  • Change Context.ContextMapper into a property instead of a public field
    Cleanup and refac\Performance
    Context.ContextMapper is now a property instead of a public field
  • Dispose IDisposable objects in Core
    Cleanup and refac\Performance
    Dispose IDisposable objects in Core
  • Make FileChangeMonitor dispose of watchers on exception
    Cleanup and refac\Performance
    UniqueId no longer changes Watchers are no properly disposed if exceptions occur.
  • Dispose IDisposable objects in Packaging
    Cleanup and refac\Performance
    Package now disposes of all IDisposable objects
  • Dispose IDisposable objects in Imaging
    Cleanup and refac\Performance
    Properly dispose all IDisposable objects
  • Dispose IDisposable objects in Diagnostics
    Cleanup and refac\Performance
    Dispose IDisposable objects
  • Dispose IDisposable objects in Data
    Cleanup and refac\Performance
    Dispose most IDisposable objects (some legacy prevents completion of this promise, which is now always visible from the documentation)
  • Dispose IDisposable objects in Security
    Cleanup and refac\Performance
    Dispose IDisposable objects
  • Dispose IDisposable objects in Scheduling
    Cleanup and refac\Performance
    Dispose IDisposable objects
  • Dispose IDisposable objects in Mailing
    Cleanup and refac\Performance
    Dispose IDisposable objects
  • Dispose IDisposable objects in Indexing
    Cleanup and refac\Performance
    Dispose IDisposable objects
  • Remove ThreadStatic from Extensibility
    Cleanup and refac\Performance
    ConfigurableAddIn.UpdateFromPost without parameters is deleted.
  • Remove ThreadStatic from Diagnostics
    Cleanup and refac\Performance
    Diagnostics now delegates to Environment.Web, the responsibility of implementing it's datacontainer (IExecutionTableMapper).
  • Extend Diagnostics with an IExecutionTableMapper
    Cleanup and refac\Performance
    Added IExecutionTableMapper
  • Remove Threadstatic from Data
    Cleanup and refac\Performance
    Now uses Diagnostics for debugging instead of internally handling debug-info collection. Also, only collects debugging information, if it is going to be displayed.
  • Change ConfigurableAddIn so that UpdateFromPost now can provide the Form data
    Cleanup and refac\Performance
    Added new method ConfigurableAddIn.UpdateFromPost(form) which takes the form values as input. Obsoleted UpdateFromPost which takes no parameters.
  • Improve readability of AreaService.CopyArea
    Cleanup and refac\Performance
  • Improve maintainance of Group.GetCategoryFieldValue
    Cleanup and refac\Performance
  • Improve efficiency of eCommerce.ProductListEditing.aspx.vb
    Cleanup and refac\Performance
  • Internal item cache
    Cleanup and refac\Performance
  • Setttings UI: Control Panel - News - Custom fields
    Cleanup and refac\UI Rework
    New UI for News custom fields list and edit pages.
  • UI changes in user addresses
    Cleanup and refac\UI Rework
  • UI issues in column selector
    Cleanup and refac\UI Rework
    Change icons in list's and editable list's context menu
  • Remove column selection
    Cleanup and refac\UI Rework
    Column selectors in Settings -> Ecommerce -> Advanced Configuration -> Prices have been removed
  • Minor restyle of selection box control
    Cleanup and refac\UI Rework
    Minor restyle of selection box control, and adding property Label.
  • Get rid of Gui.UserGroupManagerECom method with alternative - SelectionBox control
    Cleanup and refac\UI Rework
    Removed all the code related to Gui.UserGroupManagerECom function and use SelectionBox control.
  • Moving editing of named item list out of pop-ups
    Cleanup and refac\UI Rework
    Editing of named item list is moved out of pop-up into content area.
  • Make "Save As" dialog in file editing to use dw-dialog control
    Cleanup and refac\UI Rework
  • Sticky toolbar in module settings window
    Cleanup and refac\UI Rework
    When module settings are open from the module icon in the paragraph list, you now have a sticky save bar in the window with the settings.
  • UI changes of the named itemlist GUI
    Cleanup and refac\UI Rework
  • Settings UI: Developer - Image handler
    Cleanup and refac\UI Rework
    Ui fixed in Settings - Developer - Image handler
  • Fix indent for info/warning boxes in dialogs
    Cleanup and refac\UI Rework
  • Rework CustomFieldValueEdit control style
    Cleanup and refac\UI Rework
    Old group box in the "CustomFieldValueEdit" control have changed to new collapsable group box
  • Change scheduled icon
    Cleanup and refac\UI Rework
  • Fix layout issues and line break in sql issues in query editor
    Cleanup and refac\UI Rework
  • Settings UI: Logs
    Cleanup and refac\UI Rework
  • Remove EditableListGroupBox control
    Cleanup and refac\UI Rework
    Reimplemented EditableList group boxes for dialog layouts
  • Add "Autofocus" attribute for TextBox
    Cleanup and refac\UI Rework
  • Hide "Parameters" area when there are no parameters
    Cleanup and refac\UI Rework
  • Ecommerce->Product catalog-> edit shop: improve "image patterns" GUI
    Cleanup and refac\UI Rework
  • Translations: make sure the list follows standards elsewhere in the system.
    Cleanup and refac\UI Rework
  • List control: Don't show pagination info when there is just one page
    Cleanup and refac\UI Rework
  • Settings->ecommerce->advanced->images: path should be under image picker, not aligned with the labels.
    Cleanup and refac\UI Rework
  • Ecommerce->order discounts: fixes after review.
    Cleanup and refac\UI Rework
  • Settings->ecommerce->orders->shipping: type should be % or amount (not "$")
    Cleanup and refac\UI Rework
  • Settings->ecomerce->orders-> payments
    Cleanup and refac\UI Rework
  • Ecommerce->loyalty points
    Cleanup and refac\UI Rework
  • Settings->integration->export orders: fix label on "recipient emails"
    Cleanup and refac\UI Rework
  • Settings->repository-> query: change "index" button to "source index"
    Cleanup and refac\UI Rework
  • Add gridview enable tilesview property
    Cleanup and refac\UI Rework
    Added gridview enable tilesview property
  • Fix checkboxes long text labels
    Cleanup and refac\UI Rework
  • Add new property for the EditableList control
    Cleanup and refac\UI Rework
    Added AddNewRowCaption property for EditableList
  • Make the same markup and css of similar box-controls with buttons
    Cleanup and refac\UI Rework
    Make the same markup of similar box-controls with buttons: UserSelector, EditableListBox, CustomListBox, AttachmentListBox and MasterDetailListBox.
  • Implement Checkboxgroup control onlick
    Cleanup and refac\UI Rework
    Implemented Checkboxgroup control onlick property
  • Add "Autofocus" attribute for "dwc:InputText" in ui.controls namespace
    Cleanup and refac\UI Rework
    Added "Autofocus" property for InputText control
  • Make it possible to use checkbox in context menu
    Cleanup and refac\UI Rework
    Added new "UseCheckbox" property for "ContextMenuButton", that allows to render checkbox instead of icon or image for context menu item
  • External accounts: Fix UI in dialog
    Cleanup and refac\UI Rework
  • Increase row count in bootgrid dialogs (files selector)
    Cleanup and refac\UI Rework
    Increase row count in bootgrid dialogs (files) from 12 to 15
  • Increase row count in bootgrid dialogs (paragraph selector) and enable navigation
    Cleanup and refac\UI Rework
    Increase row count in bootgrid dialogs (paragraph selector) from 12 to 15
  • Increase row count in bootgrid dialogs (user selector)
    Cleanup and refac\UI Rework
    Increase row count in bootgrid dialogs (user selector) from 12 to 15
  • Remove useless classes from tables in bootgrid-dialogs
    Cleanup and refac\UI Rework
    Remove useless classes from tables(grids) in bootgrid-dialogs (user selector, paragraph selector)
  • Make InfoBar work with expressions to set visibility
    Cleanup and refac\UI Rework
    Added functionality which makes it possible to use expressions to decide if an Infobar should be visible or hidden
  • Remove the help button from the bottom ribbon
    Cleanup and refac\UI Rework
  • Update the viewed page on click
    Cleanup and refac\UI Rework
  • Checkboxes don't work correctly with multiselect in bootgrid
    Cleanup and refac\UI Rework
  • Colorpicker have wrong position when using in modals
    Cleanup and refac\UI Rework
  • Update UI for item publisher paragraph settings screen
    Cleanup and refac\UI Rework
  • Update UI for user management paragraph settings screen
    Cleanup and refac\UI Rework
  • Update UI for filepublisher paragraph settings screen
    Cleanup and refac\UI Rework
  • Implement gui support for &Background parameter for GetImage.ashx
    Content
    Background colour can now be chosen for transparent png's in Image Handler settings
  • Remove meta data fields from Website settings.
    Content
    Website meta data fields have been removed
  • Change ColorSelect to use label
    Content
  • Unify Paragraph & User selectors
    Content
  • Make the content search work with the installed apps
    Content
  • Implement search and pagination in paragraph selector
    Content
    Implement search and pagination in paragraph selector
  • Remove infobar with "No selected" text (Paragraph picker)
    Content
    Remove infobar with "No selected" text (Paragraph picker)
  • Update checkbox for paragraph list to new version
    Content
  • Update Item icon Selector to be more user friendly.
    Content\Items
    In item type settings the icon selector is changed. It's now possible to search for a name and select a color for the icon.
  • The back-end admin should see the actual label of the Item instead of the ID after the Item is chosen.
    Content\Items
    Now the field name is used instead of the system name in Edit field options in the Value dropdown (when Item type as source).
  • Default editor for for rich text fields on items.
    Content\Items
    If an editor configuration is not selected for an item type backend now selects any configuration specified on the user over the system default
  • Add label to delete item type dialog
    Content\Items
    Add label to delete item type dialog
  • Google fonts ItemType field type
    Content\Items
  • GoogleFont ItemType field UI
    Content\Items
  • Make sure latest version of items are always shown in backend
    Content\Items
  • When item based pages are deleted, also delete item relation list references.
    Content\Items
    When item based pages are deleted, also delete item relation list references.
  • Throw a descriptive exception when items cannot be edited instead of doing a secret redirect.
    Content\Items
    Throw a descriptive exception when items cannot be edited instead of doing a secret redirect.
  • Make published / unpublished pages on slaves independent of pages on master
    Content\Language Management
    New setting in Control panel -> Language management: "Don't copy Published / Unpublished changes to language versions". When activated the publication state of a page on a slage is independent of the master
  • Make it possible to move and copy folders - and be able to move pages to folders.
    Content\Page Tree
    It is now possible to copy and move folders like pages.
  • Add new actions to context menu for the Content area
    Content\Page Tree
    Added three new actions to context menu for the the folders in Content area: Move, Copy, Copy here
  • Add option to see thumbnails in filepicker on paragraph
    Content\Paragraphs
    Added option to see thumbnails in filepicker on paragraph
  • Use EscapeUriString instead or httpcontext
    Content\Paragraphs
  • Implement logging for copy website
    Content\Websites
    If website / language copy fails details of the error can be found in Settings -> Logs -> System -> Log -> AreaService
  • Save website settings/website properties item as a file
    Content\Websites
  • Implement "Search in all fields" in Ecommerce groups
    Ecommerce
  • Ecommerce->Product catalog-> edit shop: remove "..." from button for adding rows
    Ecommerce
  • Raptor: add "ItemClick" tracking
    Ecommerce
  • Number of characters for State/Region in country list
    Ecommerce\Country
    State / Region codes can now be 3 characters to support Australia
  • Add My List details to customer center
    Ecommerce\Customer Center
  • Make it possible to choose context on customer center
    Ecommerce\Customer Center
    Customer center views can now be filtered by order context. This is set in the customer center paragraph settings
  • Customer center context - add "no context" option
    Ecommerce\Customer Center
  • Cancel gift card
    Ecommerce\Gift cards
  • Only set ecom.selectedlang cookie if it is not set.
    Ecommerce\Language
  • Ledger icon
    Ecommerce\Ledger
  • Adding loyalty points from backend does not update the GUI before reload
    Ecommerce\Loyalty Points
  • Make it possible to create a new manufacturer directly from Edit product
    Ecommerce\Manufacturers
  • The new manufacturer button from Edit product should have an aligned "+"
    Ecommerce\Manufacturers
  • You cannot see units on orderlines in order details view
    Ecommerce\Orders
    Unit and Stock location are now show in order details view
  • When we log for orders, we use the order ID which can change.
    Ecommerce\Orders
    Order logging is now based on autoid instead of order id
  • Order log: allow log lines to take up more than one line.
    Ecommerce\Orders
  • Add index for EcomOrders -> OrderDate
    Ecommerce\Orders
    Index for EcomOrders -> OrderDate added to database
  • DIBS have deprecated the HMAC key field
    Ecommerce\Payment
    DIBS have deprecated the HMAC key field. It is no longer present in their backend, so we have removed it as well.
  • Cancel authorization on payment providers
    Ecommerce\Payment
    Implemented cancel authorization on stripe
  • Support TLS 1.2 for Authorize.Net
    Ecommerce\Payment\AuthorizeNet
    support TLS 1.2 for Authorize.Net
  • Support TLS 1.2 for Ogone
    Ecommerce\Payment\AuthorizeNet
    support TLS 1.2 for Ogone
  • New cybersource features
    Ecommerce\Payment\CyberSource
    New AVS validation to handle Cyber Source rejection of cards under specific conditions.
  • Klarna: Make it possible to not include shipping address
    Ecommerce\Payment\Klarna
    Make it possible to not include shipping address
  • New "PIM" top level node.
    Ecommerce\PIM
    We got a new node in areas: PIM
  • PIM: Option to add multiple products to a group
    Ecommerce\PIM
    We are now able to select a number of products, and add them to a group. Each product is be selectable (variants are automatically selected with main product), and by clicking "Add to group" in the Ribbon bar you open a dialog for selecting which group the selected products should belong to. It works the same way as "Add to group" works in the current product catalog list (the products appear in the Related groups list in product edit).
  • PIM: Make it possible to navigate up and down using arrows
    Ecommerce\PIM
    Now it's possible to navigate up and down between the fields in bulk edit in PCM (tabs for left/right navigation).
  • LastUpdated index instance exception
    Ecommerce\PIM
    fixed lastUpdated index instance exception
  • PIM: Make it possible to edit folder names
    Ecommerce\PIM
    It is now possible to edit folder names in the PIM tree. Right-click -> Rename -> Edit name.
  • Implement new Textarea element properties Disabled and Rows
    Ecommerce\PIM
    Implemented: new Textarea element properties - Disabled and Rows
  • Implement InputTextArea control support rows and disabled properties
    Ecommerce\PIM
    Implemented: InputTextArea control support rows and disabled properties
  • PIM: Add "My Queries" and "Shared Queries" to Management.Ecommerce
    Ecommerce\PIM
    Added "My Queries" and "Shared Queries" to PIM Node
  • PIM: Add "Favorites" to PIM
    Ecommerce\PIM
    Now you can add queries as favorites. You can add from your personal queries or the shared queries.
  • PIM - Area: Add "Product catalog" node to PIM area
    Ecommerce\PIM
    Added "Product catalog" node to PIM area. Shops and product groups are listed in default language for each shop. When a group doesn't exist in the default language, it should still be shown - fallback to a random language. When selecting a group, bulk edit page for all products is opened. The group tree is read-only - if the user needs to edit the group tree, they should go to the Ecommerce area to do it.
  • PIM: Add "My Queries" and "Shared Queries" to PIM-Node
    Ecommerce\PIM
    Under the new "PIM"-area, there are added two new subnodes "My Queries" and "Shared Queries". Under "shared Queries" all users can create queries that every user can see and edit. In My queues it is possible for each user to create their own lists based on a smart search.
  • Add "Favorites" node to Management.ECommerce
    Ecommerce\PIM
    Added "Favorites" to PIM Node
  • PIM: Make ViewQuery able to distinguish between if called from indexing or PIM
    Ecommerce\PIM
  • PIM: Update the new bulk-edit to use an indexing query directly instead of a SmartSearch
    Ecommerce\PIM
  • Update file navigator to able provide rename action for smartsearch folders
    Ecommerce\PIM
    Updated: file navigator to able provide rename action for smartsearch folders
  • PIM: Make PIM-tree work with Queries instead of SmartSearches
    Ecommerce\PIM
    Updated PIM-tree to work with index queries instead of SmartSearches
  • PIM: Add additional properties to .query definition
    Ecommerce\PIM
    Added functionality for defining fields and languages on a query, so it can be used in a limit the information shown in a view
  • PIM: Add ViewLanguages to Query
    Ecommerce\PIM
  • PIM: Add ViewFields to Query
    Ecommerce\PIM
  • PIM: Add ViewLanguage selector to QueryEditor
    Ecommerce\PIM
  • PIM: Add ViewField selector to QueryEditor
    Ecommerce\PIM
  • PIM: Add renaming option to QueryEditor
    Ecommerce\PIM
  • Alternate color for each main product
    Ecommerce\PIM
  • PIM: Update query editor to show different input controls depending on field type and operator
    Ecommerce\PIM
  • PIM: Rename smart search to query
    Ecommerce\PIM
  • PIM: Link to query list when clicking on "Shared Queries" or "My Queries"
    Ecommerce\PIM
    Added a view with a list of queries when clicking the "My Queries" and "Shared Queries" node in the PIM-tree
  • PIM: Limit bulk-edit to show 250 products
    Ecommerce\PIM
  • Check html rendering in bulk edit
    Ecommerce\PIM
  • Add field selector to ribbon
    Ecommerce\PIM
  • PIM: Remove "Pim"node from Ecommerce area tree
    Ecommerce\PIM
  • PIM: Tree should not collapse when you add a query to your favorites.
    Ecommerce\PIM
    implemented: PIM: Tree should not collapse when you add a query to your favorites.
  • PIM: add "edit" button to the "tools" area in the ribbon bar.
    Ecommerce\PIM
  • Use new attribute in dwc:GroupBox
    Ecommerce\PIM
    Added new "Expandable" property for Dynamicweb.UI.Controls.GroupBox
  • Implement PIM dashboard as part of the Dynamicweb.Dashboards.Ecommerce package
    Ecommerce\PIM
    Added PIM dashboard as part of the Dynamicweb.Dashboards.Ecommerce package
  • Implement Columns property for ribbon bar group
    Ecommerce\PIM
    Columns property for ribbon bar group
  • Implement Title property for RibbonBarCheckbox control
    Ecommerce\PIM
    Implement Title property for RibbonBarCheckbox control
  • Add 'AllProducts' node to PIM
    Ecommerce\PIM
    Added All products node to PIM product catalog to show all pim products + products without any groups
  • Update PIM tree to refer to a new page
    Ecommerce\PIM
  • Product Images must be shown in both MAIN and Variant section
    Ecommerce\PIM
  • Refactor: Put all PIM pages to the one (only one) folder
    Ecommerce\PIM
    change urls to pim pages
  • Implement FileManager Enabled property support
    Ecommerce\PIM
    Implemented support Enabled property for file manager control
  • Implement DateSelector Enabled property support
    Ecommerce\PIM
  • Implement Gui Filemanager overload for support disabled state
    Ecommerce\PIM
  • EditableList doesn't work as parts of the named container
    Ecommerce\PIM
  • Implement Disabled property for RadioButton element
    Ecommerce\PIM
    Add property Disabled to Dynamicweb.UI.Elements.Inputs.RadioButton class.
  • RadioButton.Enable property is not supported
    Ecommerce\PIM
    Support Enable property of the Dynamicweb.UI.Controls.RadioButton If enable is false it should be disable control in UI.
  • Cleanup in Visible fields list
    Ecommerce\PIM
  • Move sorting list to Dynamicweb.Core and make it generic
    Ecommerce\PIM
    Move sorting list to Dynamicweb.Core and make it generic
  • Implement search in all fields for index query
    Ecommerce\PIM
    Implemented functionality for searching in all index fields
  • Implement FullTextSearchExpression
    Ecommerce\PIM
    Implemented full text search expression for index query
  • ProductInformationNavigator access modificators
    Ecommerce\PIM
    Access modificators for some members in ProductInformationNavigator class was changed to "public": MyQueriesRootNodeId SharedQueriesRootNodeId SmartSearchesRootPath SmartSearchesSharedPath SmartSearchesPersonalRootPath GetPathFromNodeId GetNodeIdFromPath
  • Dim fields (frames) more when disabled
    Ecommerce\PIM
  • Implement GridWidget for Dashboards
    Ecommerce\PIM
  • Release Dynamicweb.Management.Dashboards with GridWidget support
    Ecommerce\PIM
    DashboardController support for GridWidget fetch request
  • Price matrix Variant count
    Ecommerce\Pricing
  • For Printorder template look in the Templates\Design\solutionName\Ecom7\Order folder instead of the Files\Templates\Ecom7\Order
    Ecommerce\Product Catalog
  • Validate fields for required
    Ecommerce\Product Catalog
    In "Create multiple products" it now validates the fields that are set to Required in Settings - Ecom - Advanced - Fields like ind product details.
  • Show default values of facets
    Ecommerce\Product Catalog
  • Implement 'MoreFromSameManufacturer'-loop on product
    Ecommerce\Product Catalog
    Added a new 'MoreFromSameManufactuer'-loop to product details, which returns a maximum of 12 products from the same manufacturer as the current product
  • Function CanDeleteShop very heavy and executed on each request which hits ecom tree performance
    Ecommerce\Product Catalog
  • Update UI for catalog paragraph settings screen
    Ecommerce\Product Catalog
  • Add debugging statements to ecommerce list render
    Ecommerce\Product Catalog
  • New "Do not render" option on category fields and product fields
    Ecommerce\Product Categories
    A "Do not render" option has been added to product fields and product category fields. When set the tag will not be rendered in frontend which can improve performance
  • Support a real loop of custom fields
    Ecommerce\Product Fields
    New loop: CustomFieldValues which resmbles the CustomFields loop - just as a real loop so all fields and values can be made in a simple loop in the template. Tags inside the loop: Product.CustomField.Name Product.CustomField.System Product.CustomField.Template Product.CustomField.Value Product.CustomField.Value.Clean New loop inside: Product.CustomField.Options
  • Add the option to use customer as from sender + sender name
    Ecommerce\RMA
  • Notification for sending RMA mails
    Ecommerce\RMA
    New notification: ReturnMerchandiseAuthorizationEmailConfiguration.SendMail Include notification when the mail is being send - with the message as a property on the argument.
  • Make it possible to use delivery address for GLS parcel shop lookup
    Ecommerce\Shipping\GLS
    New Setting for GLS provider: Use_delivery_address_if_specified
  • Split CartV2 "For customer" mail in two
    Ecommerce\Shopping Cart
  • Make sure a invalid variant combination will throw an exception
    Ecommerce\Shopping Cart
    Adding an invalid variant combination to the cart will throw an exception
  • Update UI for cart paragraph settings screen
    Ecommerce\Shopping Cart
  • Avalara connector: add options and notifications for skipping validation.
    Ecommerce\Taxes\Avalara
  • Implement After order capture notification and posibility to commit taxes using api
    Ecommerce\Taxes\Avalara
  • Rework EditableListColumnFileEditor to use FileManager instead custom control
    Ecommerce\Variants
    Reworked EditableListColumnFileEditor to use FileManager instead custom control Added new property Label to EditableListColumnFileEditor Removed useless class from filemanager markup
  • Add Product Name and Number to Variant list
    Ecommerce\Variants
  • Implement partial variant option search in ImagePatterns
    Ecommerce\Variants
  • Sorting in variant list
    Ecommerce\Variants
  • Voucher code checker
    Ecommerce\Vouchers
    Added sample Voucher code checking code to the api
  • Replace sql queries in voucher.vb code with CommandBuilder
    Ecommerce\Vouchers
  • Make default behavior on filemanager click open or preview the file
    Files
    Clicking an image in Files previews it, similarly clicking a text file opens it
  • Files: make it possible to create a file of any type
    Files
  • Modal dialog form is hidden on a item selecting in the selectpicker drop-down when it's container is outside of "modal-content"
    Files
    fixed: Modal dialog form is hidden on a item selecting in the selectpicker drop-down when it's container is outside of "modal-content"
  • Files: when creating a new file, the user should always select extension
    Files
    Changed: new file dialog action prompts filename including extension without forced extension selecting via dropdown
  • Remove infobar with "No selected" text (Filepicker)
    Files
    Remove infobar with "No selected" text (Filepicker)
  • Handle naming overflow in Files tree
    Files
  • make the thumbs of the filemanager not fuck up....
    Files
  • Missing icons in file publisher module after 9.2 because of removed icons
    Files\File Publishing Module
  • Scheduled tasks in Azure website/web apps
    Integration
  • Insert only option
    Integration\Data Integration
    Add "Insert only new records" option to the EcomProvider
  • UserProvider: add option to "only add groups"
    Integration\Data Integration
    Add "Import users belong exactly import groups" option. When checked imported user will belong exactly to the groups that are included in the import. When not checked will behave as before : user will be added to the new groups from the import but not removed from existing groups
  • "Archive imported data" functionality for XML Provider
    Integration\Data Integration
    Makes it possible to automatically archive XML files after finished import
  • Data Integration: check that files are not changing (being uploaded) when data integration task starts
    Integration\Data Integration
    Add a "stable time" check, that validates that the input file(s) haven't changed in a certain amount of time, before running the import.
  • CRM Integration for Dynamicweb.com: Notification subscriber for unsubscribing users in CRM
    Integration\Data Integration
  • EcomProvider: Performance
    Integration\Data Integration
    The Data Integration Ecom provider has been optimized. In test scenarios doing an import of 650.000 product went from 45 to 6 minutes.
  • OrderProvider: change "don't export carts" to "export completed orders only"
    Integration\Data Integration
    The Order provider option "Don't export carts" has been renamed to "Export completed orders only"
  • UserProvider: "Use email as username" should update existing users if username is empty
    Integration\Data Integration
    UserProvider: "Use email as username"updates existing users if username is empty
  • Make ItemProvider in Data integration handle non existing ids
    Integration\Data Integration
    Make ItemProvider in Data integration handle non existing ids
  • Add ScriptValueForInsert property to the Mapping control
    Integration\Data Integration
    Add ScriptValueForInsert property to the Mapping control
  • Add ScriptValueForInsert to Ecom provider
    Integration\Data Integration
    Add ScriptValueForInsert to Ecom provider
  • Add ScriptValueForInsert to User provider
    Integration\Data Integration
    Add ScriptValueForInsert to User provider
  • Add ScriptValueForInsert to Dynamicweb provider
    Integration\Data Integration
    Add ScriptValueForInsert to Dynamicweb provider
  • Add ScriptValueForInsert to Order provider
    Integration\Data Integration
    Add constant script value for Create Only option to Order provider
  • Dataintegration: import all impersonation users with same customer number
    Integration\Data Integration
    Dataintegration: import all impersonation users with same customer number
  • Remove 'Do not remove a user from Newsletter recipient group' setting from user provider
    Integration\Data Integration
    Remove 'Do not remove a user from Newsletter recipient group' which is only relevant for NewsletterV3 - a module which has been removed in DW9
  • Add ExportIsDone testing functionality to DynamicwebConnector Service
    Integration\Data Integration
    DynamicwebConnector service supports ExportIsDone testing With split input add <tables ExportIsDone="false"> with true in final file Limitation: When you are using "ExportIsDone" feature and want to "delete missing rows from the import" make sure/(must have) that all table mappings are present/(build automatically when auto mapping is used) in the first received XML file. Next Xml files should just update those tables with data. This is needed because destination Dynamicweb or Ecom providers build the table structure and temp tables based on the first Xml file and on the next received xml files they just update the tables with more data
  • Dont delete data not in last file when using exportisdone in ImportDataAddIn
    Integration\Data Integration
  • Dont delete data not in last file when using exportisdone in ImportDataCustomRequestAddIn
    Integration\Data Integration
  • Remove shity fuck UI mess in joblist for integration
    Integration\Data Integration
  • Ecom provider: add handling ParentGroups with values being group names
    Integration\Data Integration
    Handle ParentGroups relations by looking for corresponding IDs by the group names
  • Compile DynamicwebConnectorService for x64
    Integration\Framework
    uploaded it to the doc site DynamicwebConnectorService x64 - 1.0.0.5.zip: http://doc.dynamicweb.com/releases-and-downloads/downloads#4047
  • Data integration: dont delete data not in last file when using exportisdone in batch integration
    Integration\Framework\Batch
    Dont delete data not in last file when using ExportIsDone in batch integration using DynamicwebProvider as destination Limitation: When you are using "ExportIsDone" feature and want to "delete missing rows from the import" make sure/(must have) that all table mappings are present/(build automatically when auto mapping is used) in the first received XML file. Next Xml files should just update those tables with data.
  • Create a Perfion Scheduled task addin: make it possible to import data from multiple perfion queries
    Integration\Framework\Batch
  • Perfion import images addin improvements
    Integration\Framework\Batch
    Features to implement in the Perfion import images add-in: 1) add xslt file selection to be applied on the response from Perfion 2)include some kind of message about the error when Image not found in Perfion(404), e.g. information about productID or image GUID. Then it will be much easier to find the image in Perfion and correct the error. 3)add settings in the batch scheduled task that could define how the requested image should be returned from the Perfion webservice: - image format (jpg, png, gif) - size - resolution. It should be possible to call the Perfion image server with e.g. format and size as URL-parameters.
  • Live integration: Add option to select number formatting when importing numbers.
    Integration\Framework\Live
    New option in default LiveIntegration add-in: Number format culture. Let's you pick the culture for number formats via country code
  • Make a new setting to use productnumber field instead of product id field for price calculations
    Integration\Framework\Live
    New setting: Use productnumber field instead of product id field for price calculations
  • Set up new NAV demo site
    Integration\NAV Integration
  • Make the mandatory "unsubscribe" on email marketing optional
    Marketing\Email Marketing
  • Make it possible to see the log for failed emails directly from sent statistics
    Marketing\Email Marketing
    New Log button in Sent emails view toolbar
  • Cannot get further user info from email statistics when using abandoned cart recipient provider
    Marketing\Email Marketing
    tfs#28831
  • Extra notification about email cannot be sent
    Marketing\Email Marketing
  • Make EmailMarketing handle Scheduling 1 month
    Marketing\Email Marketing
  • Add new property for Email
    Marketing\Email Marketing
    Added a new DisableUnsubscribeTag property for the Dynamicweb.EmailMarketing.Email class
  • Add forum reports to doc site
    Others\Administration tasks
  • Checkout handler for Borgum.is
    Others\External projects
  • Create wrap element and way to mark tree as scrollable
    Others\UI
    added Wrap element
  • Use solution title instead of "Dynamicweb administration" as backend title if available
    Others\UI
    If a Solution title has been set in Settings -> System -> Solution Settings it will be used for the admin tab name in your browser
  • Provide info whether or not OS scheduled task is active
    Platform
    In scheduled task a warning is displayed if the task runner has not been called in the last hour indicating a problem with the serverside scheduled task
  • SMTP test button
    Platform
    "Test mail settings" button added to Settings -> System -> System setup. Verifies that the entered smtp is reachable
  • Install dotless package in Admin + make Website settings compiler and less bundler
    Platform
    Added functionality for generating css based on variables from the settings of a website
  • Add add in to RefactoredTypeMapping list
    Platform
  • Count active sessions using showsessions=true
    Platform
  • Remove override=false from web.config
    Platform
  • Implement httponly, secure cookie settings support
    Platform
    Implemented - httponly, secure cookie settings support
  • Fix html tag in admin (avoid quirks)
    Platform
  • Change debuggin in Pageview - move to seperate class
    Platform
  • Add favicon to backend
    Platform
  • Add new header to all emails going out from the system
    Platform
  • Adjust length of name to new tree width
    Platform
  • Change namespace of Dates class in DefaultMailReceiptTemplate.cshtml
    Platform
  • Make SimpleTree more generic
    Platform
    Added SimpleTreeBase that allows for configuration of what key-type to use in the tree.
  • RefreshNavigatorNodeAction improvements
    Platform
    Added callback for RefreshNavigatorNodeAction
  • Update namespace on CodeProviderBase and DateTimeCodeProvider
    Platform\API
    Updated namespace on CodeProviderBase and DateTimeCodeProvider
  • Remove context dependency from Dynamicweb.Data
    Platform\API
  • Add "OnAreaSaved"-notification to Host
    Platform\API
  • Change the value converter to not have an instance of jsonconverter on all instances.
    Platform\API
  • Dynamicweb.Ecommerce.VariantGroup.GetVariantGroupsWithOptions uses a too large key for Context.Items
    Platform\API
  • Make DataIntegrations threads use HttpContext instead of Context.Current
    Platform\API
    Changed JobQueue to use HttpContext for spawned threads.
  • Create IContextMapper
    Platform\API
    Added IContextMapper
  • Get products by ids independent from language id
    Platform\API
  • Implement AllowUpload property for FileManager control
    Platform\API
    AllowUpload property for FileManager control
  • Update ICacheManager to include new cache methods and mark the old ones as obsolete
    Platform\API
    Updated ICacheManager to reflect the changes to the implementation.
  • Update references in VSIX templates
    Platform\API
  • Fix ConnectorAddin template in Vsix templates
    Platform\API
  • Log inner exception when emailhandler fucks up
    Platform\API
  • Make a helper class for looking up services to help partners
    Platform\API
  • Extranet login errors. Login result
    Platform\API
    Added classes to hold information about the result of the current login attempt
  • Implement ProductInformationNode.GetListNodesDefaultAction to allow pass auxilarry query string parameters
    Platform\API
    1) changed DashboardNode class accessor to public 2) Added new static method ProductInformationNode.GetListNodesDefaultAction
  • Make the Dynamicweb.Core.Maybe obsolete
    Platform\API
    The class Dynamicweb.Core.Maybe was marked as obsolete.
  • Make it possible to replace a node in SimpleTree
    Platform\API
    Added TryReplaceNode to SimpleTree
  • Make PageService support force refresh of index
    Platform\API
    Added ForceRefreshIndex to PageService
  • Make Paragraph Service support force refresh of index
    Platform\API
  • Make GroupNavigation notify about clear
    Platform\API
    GroupNavigation notify about clear
  • Make configuration api support notification on value changing
    Platform\API
  • Make api support notification on item type cache changing
    Platform\API
    Make api support notification on item type cache changing
  • Create notification for clearcache for all variants
    Platform\API
    Implement notification for clearcache for: VariantGroup VariantCombination VariantOption
  • Make api support notification on item type source location changing
    Platform\API
    Make api support notification on item type source location changing
  • Make api support notification on url provider handler and url index reset
    Platform\API
    Make api support notification on url provider handler and url index reset
  • Change IsPrimaryMachine into property
    Platform\API
  • Change scheduled tasks to use new isprimary instead of own implementation.
    Platform\API
    Made Scheduling use ExecutingContext for determining if this is the primarymachine.
  • Make changes to NLB package such that the gui can work
    Platform\API
    Reworked everything related to: Threading Database access Made NLB handle different scenarios for which machine is primary.
  • Make use of new NLB setup in provider configuration of environment
    Platform\API
  • Release update settings package for adding NLB to tree
    Platform\API
    Added NLB node to settings tree
  • Add the default page view and searchable attribute for code first items
    Platform\API
    Added an indexable attribute for Items code first
  • Move caching notification into proper namespace
    Platform\API
    Moved cache notification into a different namespace (Dynamicweb.Caching.Notifications).
  • Create 2 overloads of GetFriendlyUrl to make alternatekey module URL context available
    Platform\Customized URLs
    New overloads for SearchEngineFriendlyURLs.GetFriendlyUrl to make ecommerce language context available.
  • Implement Dashboard page.
    Platform\Dashboard
    Dashboard page
  • actions column formatter support for gridview element
    Platform\Dashboard
    added Actrions property for GridColumn
  • GridViewColumn HeaderAlign & Align property
    Platform\Dashboard
    added GridViewColumn HeaderAlign & Align property
  • Support multiple rows select mode GridView element
    Platform\Dashboard
    Added GridView.EnableMultipleSelection property
  • Support sortable rows mode GridView element
    Platform\Dashboard
    Support sortable rows mode GridView element
  • Add available widgets picker
    Platform\Dashboard
    added Add available widgets picker
  • Implement RowsSortCompleted Triger for GridView element
    Platform\Dashboard
    RowsSortCompleted Triger for GridView element
  • widget configure page
    Platform\Dashboard
    widget configure page
  • Implement remove widget from dashboard configure page
    Platform\Dashboard
    Implemented: remove widget from dashboard configure page
  • SelectionChanged trigger for GridView element
    Platform\Dashboard
    implemented SelectionChanged trigger for GridView element
  • Add Items property for DataListView element
    Platform\Dashboard
    Added Items property for DataListView element
  • add ProductCountWidget widget
    Platform\Dashboard
    Added - ProductCountWidget widget
  • Add OrdersWidget
    Platform\Dashboard
    Added - OrdersWidget
  • Implement Base Dashboard "Graph" widget
    Platform\Dashboard
    ChartWidget is base class for all charts widgets. To create special chart - create class and inherits from ChartWidget and override GetData method
  • implement LastWeekOrdersChart widget
    Platform\Dashboard
    Implement - LastWeekOrdersChart widget
  • Remove Demo widgets and dashboard
    Platform\Dashboard
    subj
  • Create database storage for dashboard and widgets
    Platform\Dashboard
    Create database storage for dashboard and widgets
  • Add OrdersTotalWidget widget
    Platform\Dashboard
    OrdersTotalWidget widget
  • Add VisitsTotalWidget widget
    Platform\Dashboard
  • Add EmailSubscribersTotalWidget widget
    Platform\Dashboard
  • Add UsersTotalWidget widget
    Platform\Dashboard
    subj
  • Add PagestotalWidget widget
    Platform\Dashboard
  • Add OrdersSumWidget widget
    Platform\Dashboard
  • Add LatestVisitsWidget list widget
    Platform\Dashboard
    subj
  • Add LatestUsersWidget list widget
    Platform\Dashboard
    subj
  • Add LatestParagraphsWidget list widget
    Platform\Dashboard
    subj
  • Add LastWeekVisitsChartWidget widget
    Platform\Dashboard
    subj
  • Add LastWeekItemsCreatedChartWidget
    Platform\Dashboard
    Add LastWeekItemsCreatedChartWidget
  • Add LastWeekUsersCreatedChartWidget
    Platform\Dashboard
    subj
  • Add icon annotation attribute to extensibility project
    Platform\Dashboard
    Added icon annotation attribute to extensibility project
  • Remove Widget implementations from Dynamicweb.Management.Content
    Platform\Dashboard
    subj
  • Remove Widget implementations from Dynamicweb.Management.Ecommerce
    Platform\Dashboard
    subj
  • Remove Widget implementations from Dynamicweb.Management.Marketing
    Platform\Dashboard
    subj
  • Remove Widget implementations from Dynamicweb.Management.Users
    Platform\Dashboard
    subj
  • Create Dynamicweb.Dashboards.Content project with dashboard\widgets implementation in Providers solution for Content area
    Platform\Dashboard
    subj
  • Create Dynamicweb.Dashboards.Ecommerce project with dashboard\widgets implementation in Providers solution for Ecommerce area
    Platform\Dashboard
    subj
  • Create Dynamicweb.Dashboards.Marketing project with dashboard\widgets implementation in Providers solution for Marketing area
    Platform\Dashboard
    subj
  • Create Dynamicweb.Dashboards.Users project with dashboard\widgets implementation in Providers solution for Users area
    Platform\Dashboard
    subj
  • Remove all Controllers and Views related dashboard\widgets from Dynamicweb.Management
    Platform\Dashboard
    subj
  • Move Controllers and Views related dashboard\widgets from Dynamicweb.Management to separate new project Dynamicweb.Management.Dashboards
    Platform\Dashboard
    subj
  • Update Dynamicweb.Dashboards package reference for Dynamicweb.Dashboards.Content
    Platform\Dashboard
    use new extensibility for dashboard widgets
  • Update Dynamicweb.Dashboards package reference for Dynamicweb.Dashboards.Ecommerce
    Platform\Dashboard
    subj
  • Update Dynamicweb.Dashboards package reference for Dynamicweb.Dashboards.Marketing
    Platform\Dashboard
    use new extensibility for dashboard widgets
  • Update Dynamicweb.Dashboards package reference for Dynamicweb.Dashboards.Users
    Platform\Dashboard
    subj
  • Implement fallback to Orders list page for admin eccomerce if dashboard page not found
    Platform\Dashboard
    fallback to Orders list page for admin eccomerce if dashboard page not found
  • Dashboard: ui changes to the dashboard
    Platform\Dashboard
    * make sure graphs and lists have same height (probably a problem because there is no header on the graphs ) * elipsis for overflow text on tiles
  • Dashboard: limit column options
    Platform\Dashboard
    Widgets: column options: 3, 4, 6 and 12
  • Dashboard: improvement to counter widgets
    Platform\Dashboard
  • Dashboard: improvement to ecom counter widgets
    Platform\Dashboard
    Dashboard: improvement to ecom counter widgets
  • Dashboard: improvement to marketing counter widgets
    Platform\Dashboard
    Dashboard: improvement to marketing counter widgets
  • Dashboard: improvement to content counter widgets
    Platform\Dashboard
    Dashboard: improvement to content counter widgets
  • Columns dropdown doesn't shown options for Dynamicweb.Dashboards.Content package widgets
    Platform\Dashboard
    Columns dropdown doesn't shown options for Dynamicweb.Dashboards.Content package widgets
  • Columns dropdown doesn't shown options for Dynamicweb.Dashboards.Ecommerce package widgets
    Platform\Dashboard
    Columns dropdown doesn't shown options for Dynamicweb.Dashboards.Ecommerce package widgets
  • Columns dropdown doesn't shown options for Dynamicweb.Dashboards.Marketing package widgets
    Platform\Dashboard
    Columns dropdown doesn't shown options for Dynamicweb.Dashboards.Marketing package widgets
  • Columns dropdown doesn't shown options for Dynamicweb.Dashboards.Repository package widgets
    Platform\Dashboard
    Columns dropdown doesn't shown options for Dynamicweb.Dashboards.Repository package widgets
  • Columns dropdown doesn't shown options for Dynamicweb.Dashboards.Users package widgets
    Platform\Dashboard
    Columns dropdown doesn't shown options for Dynamicweb.Dashboards.Users package widgets
  • Dashboard: Improvements to "Latest created users" list widget
    Platform\Dashboard
    For latest created user widget, if the user has no name, show username. Always show email in parenthesis.
  • Add RowClick action support for GridView
    Platform\Dashboard
    Added OnRowClick property to GridView
  • Implement Contextmenu for WidgetCard element
    Platform\Dashboard
    impelemented posibility to show context menu. Added to WidgetCard element properties: 1) bool ActionsVisible = false 2) string ActionsDataSource = null 3) IEnumerable<Core.UI.Actions.Action> Actions = null
  • Dashboard elements changes
    Platform\Dashboard
    - Added Screen.Css property - property should add css classes to page body tag - Added WidgetCard.RenderGridLayout - when value is false grid system don't render widget card - For Counter element added title html attribute for "counter-title" tag - Added EnableRowHover(bool) property for the DataListView element. when false list is not hovered
  • DW9: Content Dashboard List widget
    Platform\Dashboard
    changed columns for "Latest edited Paragraphs" widget
  • ListViewItem.StatusColor should be present as string not digit in listview data json
    Platform\Dashboard
    added StringEnumConverter json converter for StatusColor enum
  • DW9: Ecommerce Dashboard List widgets
    Platform\Dashboard
    changed "Latest orders" widget presentation
  • DW9: Marketing Dashboard List widget
    Platform\Dashboard
    change columns for "Latest visits" widget
  • DW9: Users Dashboard List widgets
    Platform\Dashboard
    changed columns for "Latest created users" widget
  • Remove paddings from Add widget modal (PIM Dashboard)
    Platform\Dashboard
    Padding removed from Add widget modal
  • DW9: Dashboard: Delete graph "latest created items by last 7 days"
    Platform\Dashboard
    DW9: Dashboard: Delete graph "latest created items by last 7 days"
  • DW9: Dashboard - Add title field to all widgets when configuring
    Platform\Dashboard
    All CartWidgits now have an editable Title.
  • DW9: Improve the placement of the widgets compared to each other
    Platform\Dashboard
    Improve the placement of the widgets after small widgets
  • DW9: Define default dashboard home and ecom
    Platform\Dashboard
    1) Added Home dashboard 2) Changed default widgets for ecommerce
  • Dashboard: Minor changes from review
    Platform\Dashboard
    Dashboard: Minor changes from review
  • Content provider - area
    Platform\Deployment Tool
    beta
  • Show a spinner when you click the test connection button
    Platform\Deployment Tool
    Spinner is now shown when testing connectivity
  • When there are no available destinations, show a warning/info bar and disable "Transfer" button
    Platform\Deployment Tool
  • Clear cache on destination after deployment
    Platform\Deployment Tool
  • Make RenderParagraphContent and RenderPageContent available for viewmodel based templates
    Platform\Frontend pipeline
  • Startup MVC earlier
    Platform\Frontend pipeline
    Improved performance of application startup related to registration of MVC dependencies.
  • Cleanup in Dynamicweb.Licensing
    Platform\License
  • NLB Bugs from tests
    Platform\Load Balancing
    Initial public beta (feature complete for now).
  • Release version of Settings tree where NLB is usable by normal admins
    Platform\Load Balancing
    NLB node in settings tree was added.
  • Release new version of NLB provider that uses the new namespace for notification in Caching
    Platform\Load Balancing
    Made the provider ready for release
  • Packages: Package management should only be available for custom solutions
    Platform\Packages
    Packages is available for all custom solutions now
  • Make TFS build DW-head release and retire Jenkins (for our build of dw9 only)
    Platform\Packages
  • Packages: Implement Update All
    Platform\Packages
    Implemented Update All packages for debugging and testing purposes - not recommended for use on live sites
  • Packages: show spinner when loading lists and details
    Platform\Packages
  • Event log
    Platform\Packages
    A chronological log that give a time stamp for every successfull/failed installations/updates, restoring of packages
  • Packages: "update all" under package manager should be a button
    Platform\Packages
  • Reset Context.Current and execution table after request
    Platform\Performance
    Debugging information moved from globalasaxhandler into an notificationsubscriber in this project.
  • Make cache work for set and get and obsolete the rest
    Platform\Performance
    Change the cache into a Get or Set only cache. Add functionality is removed.
  • Fix double lock in extensibility and add writelock to servicelocator
    Platform\Performance
    Fixed a double-lock, by using lazy<t> instead. Added change internal dictionary to use concurrentdictionary.
  • Remove PageService field from WeightedSearch
    Platform\Performance
    Removed private backing field and updated usage of Dynamicweb.Extensibility.
  • Make release of Dynamicweb.Management.Home
    Platform\Performance
  • Refactoring of index in pageservice
    Platform\Performance
    PageService methods now operate on in-memory data unless otherwise specified in documentation.
  • Create database script needs to be updated after pbi 32866
    Platform\Performance
    The database creation script used by the built-in installer has been updated
  • Implement GetInternalPageIdsFromText in LinkHelper
    Platform\Performance
    Api refactoring: Implement GetInternalPageIdsFromText in LinkHelper
  • Make a tree datastructure
    Platform\Performance
    Added SimpleTree, a datastructure for representing trees in Dynamicweb.
  • Mark all content repositories as protected
    Platform\Performance
  • Move Extensibility down to Core
    Platform\Performance
  • Remove dependency for Caching and Configuration from Extensibility
    Platform\Performance
    Removed dependencies from Extensibility Correct usage of the property AllowAddins now require version Dynamicweb 9.2.16 or greater to work. Otherwise the property is ignored and addins are always allowed.
  • Change AllowAddins from autoproperty into normal writeable property
    Platform\Performance
    -
  • Reduce data shown in Email Marketing
    Platform\Performance
    Reduce data shown in Email Marketing for Sent emails folder
  • Minor API optimization for OMC stuff in ecommerce
    Platform\Performance
  • Release Dynamicweb.Management.Ecommerce
    Platform\Release
    - Added better validation text, when creating a query in PIM - General dialog UI-improvements in PIM
  • Release Epay provider
    Platform\Release
    Fixed a potential redirect error with epay payment window
  • Add fields for impersonation in user index
    Platform\Searching\Indexing
    UserSchemaExtender now contains CanImpersonate and CanBeImpersonatedBy values
  • PIM: update index when saving products in Product Management
    Platform\Searching\Indexing
  • Update ProductIndexBuilder to support 'UpdateWithIds'-Action
    Platform\Searching\Indexing
  • Update CodeExpression in Indexing
    Platform\Searching\Indexing
    Fixed problem with CodeExpressions given exception in frontend product catalog
  • Merge ContainsExtended operator to DW9
    Platform\Searching\Indexing
    Added support for ContainsExtended
  • Add rendering tags to facets
    Platform\Searching\Indexing
    Facets can have a rendering type defined on creating. In frontend this value is available in templates so you can customize rendering
  • File index builder
    Platform\Searching\Indexing
  • Support product category labels for product category fields of type listbox
    Platform\Searching\Indexing
    Now indexing supports product category labels for product category fields of type listbox.
  • Add RenderType to Facets
    Platform\Searching\Indexing
    Added functionality for setting a rendertype on a facets
  • Add "Facet.RenderType" Template tag
    Platform\Searching\Indexing
  • PIM: Move the "Source"-group to a dialog which open from a RibbonButton
    Platform\Searching\Indexing
  • PIM: Change filename of query if the name property has changed
    Platform\Searching\Indexing
  • PIM: Update query editor to use type specific operators
    Platform\Searching\Indexing
  • Add OperatorTypes to DataField
    Platform\Searching\Indexing
    Added functionality in DataField to store information about which operators can be used with this specific field type
  • Let content index builder support document extensions
    Platform\Searching\Indexing
    Content index builder now support document extensions
  • Change layout of Query Editor (Label - Value layout)
    Platform\Searching\Indexing
  • Update QueryPublisher to show facet options with no results depending on a setting
    Platform\Searching\Query Publisher
    Update QueryPublisher, so that it is configurable if FacetOptions is shown if they contain no results
  • Support query count in querypublisher.
    Platform\Searching\Query Publisher
    New template tag for search result: QueryResult.TotalCount
  • Query publisher: add tag to show total count of results.
    Platform\Searching\Query Publisher
    implemented: Query publisher: add tag to show total count of results.
  • Implement notifications for querypublisher
    Platform\Searching\Query Publisher
    Add notification to the querypublisher: Notifications.Querying.BeforeQuery Notifications.Querying.AfterQuery
  • Update UI for Searchweighted paragraph settings screen
    Platform\Searching\Search Weighted
  • Obsolete classes and methods in Dynamicweb.SmartSearch
    Platform\Searching\Smartsearch
    Obsoleted classes and methods
  • Introduce antispam for all forms, i.e. login forms etc.
    Platform\Security
    New tag: UserManagement:User.FormHidden BREAKING Change: If create user and edit user templates do not include the tag "UserManagement:User.FormStart" it will be caught by the antispam feature. To work around it, use the tag or include the UserManagement:User.FormHidden tag insde the custom form.
  • Remove the option to create fake angel users in accessuser database by setting type=0
    Platform\Security
  • Add GetPageIdByNavigationTag method to template base
    Platform\Templates\Razor
  • Add a new minicart view model
    Platform\Templates\View models
  • Extranet login errors. View model.
    Platform\Templates\View models
  • View model: Secondary users
    Platform\Templates\View models
  • DialogLayout named container generates 2 nested form tags
    Platform\UI Components
    fix bug: DialogLayout named container generates 2 nested form tags
  • Update Content pickers to support scrollable wrap for tree
    Platform\UI Components
    update content pickers for tree scroll
  • Update User pickers to support scrollable wrap for tree
    Platform\UI Components
    update user pickers for tree scroll
  • Unit tests: Dynamicweb.Content.Tests.WrapperTests
    Platform\Unit test
  • Dynamicweb.Providers.Tests must be moved and unit tests must be fixed
    Platform\Unit test
  • Information in content area on "empty" nodes
    Settings
    Now the nodes in Settings show the list of sub-items in the content area too.
  • Implement TileView element
    Settings
    Implemented TileView element
  • Implement tree child nodes viewer
    Settings
    Implement tree child nodes viewer
  • Settings UI: Data Integration (dialogs)
    Settings
  • Hide SQL firehose from Admin users
    Settings
    Show "Settings - Integration - SQL Firehose" node only for administrators
  • Change a Management.Files.CreateFile function logic
    Settings
    Allow to save file with custom extension
  • Re-implement settings tree to improve performance
    Settings
    Re-implement settings tree to improve performance
  • Settings-> Logs. Where did the "remove row" button go?
    Settings
  • Avoid autocomplete of username and password in Chrome
    Settings
  • Automatically delete logs that are older than 30 days.
    Settings\Logs
  • Automatic log deletion - add "delete logs automatically" checkbox at the top
    Settings\Logs
    Log deletion can be disabled by unchecking the "Delete logs automatically" setting
  • Update logs retention scheduled task to be dependant of "delete logs automatically" setting
    Settings\Logs
    updated - logs retention scheduled task to be dependant of "delete logs automatically" setting
  • Notification Subscribers on Scheduled tasks start and end
    Settings\Scheduled tasks
    We've added notifications on ScheduledTask start and end.
  • Make sure scheduled tasks created from Data Integration list can only activate integration tasks on the same solution.
    Settings\Scheduled tasks
    Scheduled tasks created from Data Integration list used relative paths, instead of absolut urls when the site referenced is the local site
  • Create "Run SQL" Scheduled task addin
    Settings\Scheduled tasks
    Added an add-in to scheduled tasks that allows you to run an SQL query
  • Scheduled task/batch integration: improve "last run" alert
    Settings\Scheduled tasks
    Warning bar is now only shown if windows task har not run for 1 hour+
  • Fix CA1702 in Scheduling
    Settings\Scheduled tasks
    Obsolete FindTaskLastRunTime method implement FIndTaskLastRunDate instead
  • Add a recover password mail for edit user.
    Users
    In backend user management there is now a "Send recovery mail" for users with encrypted passwords. It requires a link to a page on your website with the Extranet module in login mode as the mail links to that page
  • The user management module should handle "PID" query parameter
    Users
    Implemented: The user management module should handle "PID" query parameter
  • User deleting directly from e-mail validate list
    Users
    In user management and e-mail marketing you can validate e-mails. This typically lists a lot of robot signups. You are now able to delete the user entirely directly from the list in the validate window (and not just the e-mail).
  • Make ID a selectable column in the users grid
    Users
  • It should be possible to create a user using the email address as username
    Users
    Add User email as User name option
  • User management search should also search custom fields
    Users
    User management search now has a checkbox for searching in all fields
  • Change list size for user addresses
    Users\Addresses
  • Remove Facebook.dll reference from Dynamicweb.Content.Social.Adapters.ExternalAuthentication
    Users\External Authentication
    Remove Facebook dependency to fix the Dynamicweb.Content.Social.Adapters.ExternalAuthentication package upgrade