Build 2.0.6.0 (April 30, 2018)

Version 2.0.6 has been released. This branch includes:

  • Responsive Drag-and-Drop Email Builder
  • Templates (user specific)
  • Gallery (shared by all Konvey users)
  • New Image Library & File Management and On-the-fly Image Resizing
  • Social Network Settings

This update took 8 months of full-time development.  This is a very large upgrade.

Check-in's for the 'Templates' Branch:

  • 2018-05-01 - Deployed to production with zero down-time. Several pages had error messages for roughly 90 seconds as SQL changes were put into place. Sending and data collection was not impacted at all because the system was designed to continue running during updates. 
  • 2018-04-27 - Reworked deployment scripts to speed installation.
  • 2018-04-25 - Fixed the bug that cause a 30-minute absolute login expiration for non-Admins. Modified publish profiles to the node_modules folder.
  • 2018-04-24 - Fixed an MJML bug related to fluid vs. fixed height images (MJML used the wrong default value).
  • 2018-04-24 - Reworked Editor for Buttons.
  • 2018-04-24 - Various MJML-related bug fixes.
  • 2018-04-23 - MJML-related functionality is now available to non-Admins. Various bug fixes.
  • 2018-04-23 - MJML-related functionality is now available to non-Admins. Various bug fixes.
  • 2018-04-21 - Merge branch 'templates' of DirigoMail into templates.
  • 2018-04-21 - Fixed a bug in which gallery templates could not be deleted.
  • 2018-04-21 - Bumped version number to 2.0.1
  • 2018-04-20 - Fixed a UI positioning bug related to columns inserted into rows with no columns.
  • 2018-04-20 - Implemeneted dynamic content (mailing/online and Javascript expressions) in the template UI.
  • 2018-04-20 - Designers begin to construct RWD email templates for client use from the gallery.
  • 2018-04-19 - Refactored to fully account for the terminology change from "Shared Templates" to "Gallery Templates".
  • 2018-04-19 - The file browser component now targets a new gallery location for gallery content. Templates now properly support text content and text merging.
  • 2018-04-18 - Added NodeServicesSettings.cs, which had been gitignored.
  • 2018-04-18 - Many template-related fixes and enhancements.
  • 2018-04-17 - Pushed code to QA server so that testing team can test the RWD Builder against a number of templates.
  • 2018-04-17 - Integrated more Builder error messaging into the UI for system Admins.
  • 2018-04-16 - Finished implementation of social media builder in the template UI. Some refactoring of the mailingTemplate.html to prevent nesting of wrappers.
  • 2018-04-12 - More enhancements to the social UI.
  • 2018-04-11 - Changed merge code syntax to use exclamation point instead of percent symbol. Partially implemented Social Network in the template UI.
  • 2018-04-10 - More changes related to the social media builder icon.
  • 2018-04-07 - Implemented all the functionality for social elements in the Builder, except the editing UI.
  • 2018-04-07 - Refactored the new SnippetService component into a non-Angular-service SnippetCache class, because we didn't really want a singleton object.
  • 2018-04-07 - Implemented Snippets in the template-builder UI.
  • 2018-04-05 - Implemented merge/replace options to handle template-level settings and defaults for imported templates.
  • 2018-04-03 - Lots of changes to the Webpack build process and to Typescript imports.
  • 2018-04-02 - Templates can now be drag-and-dropped into other templates, and into mailings.
  • 2018-03-29 - Lots of template editor enhancements.
  • 2018-03-28 - Made many changes to the template class library to reflect new functionality.
  • 2018-03-27 - More Import MJML enhancements, including "strip content" option.
  • 2018-03-25 - Import from MJML functionality is now complete except for global default attributes, for which there's no underlying support.
  • 2018-03-24 - The new Import MJML functionality now provides automatic migration from MJML v3.
  • 2018-03-23 - Implemented partial functionality to import MJML markup to create a new Template.
  • 2018-03-22 - Various fixes related to building and publishing. Push to QA server.
  • 2018-03-21 - Thumbnail images now refresh automatically after editing templates. Added support for ES6 await, async, and iterators.
  • 2018-03-20 - Mailings can now be created from Templates, and Templates can be created from Mailings.
  • 2018-03-16 - Re-enabled the conditional Cache-Control no-cache header in the Web proejct. Miscellaenous bug fixes and template UI enhancements.
  • 2018-03-15 - Full-sized screenshot images of saved templates are no longer being generated (thumbnails still are).
  • 2017-03-14 - Added an Edit icon to the template carousel. Began to modify all methods that use MJML so that they first use the merge engine to resize images automatically. Added an image carousel popup to the template UI.
  • 2017-03-13 - Fully implemented screenshots (and thumbnails) into the template UI.
  • 2017-03-10 - Created a combination C#/NodeJS service that generates thubmnails of templates (hasn't been integrated into the Save process yet, though). We've deployed Google Chrome Puppeteer - a Node library which provides a high-level API to control headless Chromium over the DevTools Protocol to make images from the HTML.
  • 2017-03-09 - Additional implementation of the template-editing UI (and back-end).
  • 2017-03-08 - Started to implement front-end and back-end functionality to create and edit templates (outside of mailings). Lots of refactoring.
  • 2017-03-06 - More ehancements and fixes for the template UI.
  • 2017-02-28 - Webpack now bundles template SVG files. Added optional grab handles to the template UI.
  • 2017-02-22 - Moved the UI for alerts and notifications into Angular directives, and added sticky positioning. Fixed a bug in which mailings couldn't be deleted if any Failed Messages existed (even if no Messages).
  • 2018-02-21 - Refactoring error messages which show up at the top of the screen. The new alert box will be more visible when scrolled lower on any page or pop-up/modal.
  • 2018-02-20 - Added support for Wrapper and Group elements in the template UI. The Wrapper enables a user to wrap multiple sections together. It's especially useful to achieve nested layouts with shared border or background images across sections. The Group element allows an email desigher to prevent columns from stacking on the mobile view. We wrap columns inside a mj-group tag, so they'll stay side by side (columns in a group have width as a percentage, not pixels). Refactored considerably as a result of these changes. Changes are still incomplete.
  • 2018-02-16 - Lots of template editor enhancements. Fixes related to IE-specific VML rendering. New editor icons.
  • 2018-02-16 - Moved rendering from MJML 3.3 framework to MJML 4.0. Added newly designed builder icons to toolbar.
  • 2018-02-13 - Changed the merge engine regex that handles MS conditional comments. Modified IIS Request Filtering in the public-facing web.config. Refactored the node.js template service to run from the root of the Admin application. Minor template bugfixes.
  • 2018-02-10 - Bug fixes and CSS enhancements to the template UI.
  • 2018-02-09 - First build of the 'Templates Branch' is deployed to the testing environment.
  • 2018-02-09 - Templated mailings can now be saved and edited.
  • 2018-02-07 - Completed all the modals for editing template mailing content.
  • 2018-02-06 - Functionality for inputting and rendering default template items is complete.
  • 2018-02-06 - Refactored the template UI to allow template-level default values for all the different content types (styling is not complete yet).
  • 2018-02-03 - Implemented modal dialogs for all template item types except Hero.
  • 2018-02-01 - Font selection UI (supporting external fonts) in the template builder.
  • 2018-02-01 - Refactored the template UI to consolidate shared code and markup. Added new modal popups. Switched WYSIWYG editor from iframe to inline.
  • 2018-01-30 - Started building out modal popups for template rows, columns, and items.
  • 2018-01-29 - Created the KonveyColorPickerDirective Angular directive to encapsulate color picker functionality.
  • 2018-01-26 - Created a UI for adding external fonts to templated mailings (any of the hundreds of Google fonts).
  • 2018-01-25 - Refactored the template UI to support hero sections properly.
  • 2018-01-22 - Template drag-and-drop is now functionally complete.
  • 2018-01-21 - More enhancements to the template drag-and-drop UI.
  • 2018-01-18 - Fefactoring drag-and-drop for new template rows, columns, and items.
  • 2018-01-16 - Fixed a few bugs in MJML rendering.
  • 2018-01-16 - Konvey personalization is now supported within Microsoft conditional comment sections.
  • 2018-01-15 - Server-side script is now encapsulated into an MJML Raw component. Mailing content can now be previewed in JSON form.
  • 2018-01-14 - Finished implemention of Javascript objects that map mailing JSON to MJML.
  • 2018-01-13 - Added back-end support for server-side script in templated mailings. Implemented JS module pattern for server script. Added MJML preview and HTML codemirror support to mailing preview.
  • 2018-01-11 - Created deserialization and rendering methods to convert template objects into MJML.
  • 2018-01-11 - Refactored much of the template system to support MJML. Upgraded .NET Core assemblies. Bumped version numbers.
  • 2018-01-07 - Building MJML-related TypeScript classes.
  • 2018-01-05 - Implemented MJML as a node service to render HTML.
  • 2018-01-03 - A decision is reached to deeply refactor the Konvey builter to allow for use of MJML - MJML is a markup language designed to reduce the pain of coding responsive email. MJML is deployed in such a way that we can rip it out and refactor for Foundation or a number of different approaches.
  • 2018-01-03 - Minor template enhancements and fixes.
  • 2017-12-29 - More enhancements to the template editor.
  • 2017-12-23 - More enhancements to the template editor, including a script editor and CSS reset functionality.
  • 2017-12-15 - Lots of new functionality in the template editor: CSS editing, image properties, HTML source editing, drag-and-drop of cell items.
  • 2017-12-12 - More enhancements to the templated mailing editor UI.
  • 2017-12-11 - Refactored the HTML for the templated mailing editor to use flexbox divs instead of nested tables, and added new buttons and menus.
  • 2017-12-08 - Lots of Typescript refactoring and corresponding template changes.
  • 2017-12-07 - Background colors and images can now be specified for templated mailings at the Table, Row, and Cell levels. Background images using the "background" attribute now get resized during merging.
  • 2017-12-06 - In the File Picker, folders can now be renamed. The template mailing editor now has functionality to edit table properties, and to add rows.
  • 2017-11-30 - Added thread-safe locking to the Cache Service. Implemented column sorting and viewport scrolling in the File Picker UI.
  • 2017-11-24 - Implemented file extension restrictions in the File Picker UI (both client- and server-side) and at the web server level (both IIS and Kestrel). Fixed a few dependency and type resolution issues.
  • 2017-11-22 - More File Picker UI enhancements.
  • 2017-11-20 - Created a standalone "File Management" page that hooks into the existing image/file picker functionality.
  • 2017-11-17 - Implemented Create Folder, Delete Folder, Delete File, and Upload Files in the File Picker modal.
  • 2017-11-14 - More enhancements to the file/image picker. Canceling the Edit Mailing screen now prompts to save changes.
  • 2017-11-10 - Implemented the image and file picker components in the template editor.
  • 2017-11-08 - Implemented automatic image resizing. Modified the FTP project to delete resized images when the original changes. Added support for multiple site hostnames in the Merge Engine and the Edit Mailing screen.
  • 2017-11-02 - Refactored to separate Editor-related code and markup from Mailing stuff. New "Insert > Merge Code" editor dialog.
  • 2017-10-30 - Enhancements to the templated mailing editor.
  • 2017-10-26 - Enhancements to the Angular template and Razor view, along with some back-end refactoring.
  • 2017-10-24 - First draft of the "infrastructure" for templated mailings.
  • 2017-09-18 - Removed some unnecessary .NET Framework dependencies.
  • 2017-09-18 - Added RawFormatter.cs to source control.
  • 2017-09-18 - Fixed configuration for Kestrel URL bindings. Migrated from dirigoSettings.json to applicationsettings.json.
  • 2017-08-31 - Added SmsController to the Service project, for sending SMS messages from internal applications such as PTRG.