No announcement yet.

Miva PageBuilder (10.05.00) is Now Available

This is a sticky topic.
  • Filter
  • Time
  • Show
Clear All
new posts

    Miva PageBuilder (10.05.00) is Now Available

    Miva 10.05.00 is now available for all merchants. However, it is strongly recommended they install it when it it is right for their business. Merchants will be presented with the following upgrade warning before installing:

    We recommend that you install the update at a time that will least impact your business. Non-Compliance Fees for this update WILL NOT BE CHARGED until April 15, 2023

    We are excited to provide PageBuilder for all customers who are ready, and upon installation you can start using PageBuilder immediately.
    Installing PageBuilder now will not alter or delete any of your existing pages. We recommend that you install the update at a time that will least impact your business.

    Your store will not be considered out of compliance against this update until April 15th, 2023. Therefore, you may choose to postpone until after the new year and start using PageBuilder when the time is right for your business.

    Important: Non-Compliance Fees will not be charged on 10.05.00 until 4/15/2023

    10.05.00 Resources (Release Date: 12/19/2022)New Features & Improvements
    PageBuilder - PageBuilder is Miva’s native visual tool for building, launching, and managing website pages and content. PageBuilder is a marketing-focused content manager which empowers non-technical users to easily create a broad range of beautiful ecommerce site pages, without the need for a developer or knowledge of HTML. PageBuilder Features Include:
    New Shadows Theme
    • Refreshed User Experience including implementing a new Style guide for buttons, fonts and styles
    • Integration with PageBuilder default layouts + components
    • Restructured CSS to support CSS variables
    • Drops Support for IE 11
    Subscription Out of Stock Handling & Notifications
    • Features Include:
      • New store level settings to govern behavior when a subscription is out of stock
      • Scheduled Task will log subscriptions skipped when they are out of stock
      • Override options when subscriptions are processed manually: Override Out of Stock Handling and Process Out of Stock Notifications
      • New Out of Stock Email Template and Trigger
      • Subscription Inventory Projection Report: See projections of future inventory based on existing subscriptions
    Separate Admin URL Domain Setting
    • A new domain setting for "Secure URL for Administration Graphics" has been added. This sets the foundation for in the future to have Miva's admin URL different than runtime.
    • This change isolates the PageBuilder in-admin Live Preview and leverages the web browsers native Cross-Origin security features
    • There is now a new PA-DSS checklist item, verifying that the admin URL is different than runtime
    JSON API Updates
    • OrderItem_Split now returns the id of the newly created line item
    • Cost and Weight are now included in the Parts object of OrderList_Load_Query and QuoteList_Load_Query
    • All JSON functions now output the disp_order (display order) field if available. This allows external systems to read/view the display order of a product assigned to a category for example. This impacts the following public JSON API functions:
      • ProductList_Load_Query
      • ProductImage_Add
      • CategoryProductList_Load_Query
    • Newly Available API Functions:
      • SubscriptionList_Load_Query
      • AllOrderPaymentList_Load_Query
      • CSSResource_Insert
      • CSSResource_Update
      • CSSResource_Delete
      • JavaScriptResource_Update
      • JavaScriptResource_Delete
      • Page_Insert
      • Page_Copy
      • Page_Update
      • Page_Delete
      • ProductVariant_Insert - Standardized to match update function
      • ProductVariant_Update - Standardized to match insert function
    New Runtime APIs for accessing product and category data across any page in Miva. These functions include features such as:
    UPS Worldwide Economy - Both Duties Paid and Duties Unpaid are supported.
    • Ability to add HS Tarif Code and Country of origin both globally and at the product level
    • Supports Real-time rates during checkout and in admin as well as shipping label generation
    • Must be contracted with UPS to show Worldwide Economy rates
    Brand New Development Framework for Miva - Flex Components
    • New architecture for building reusable User Interface components for Miva
    • Native Flex Components are implements as web components, enabling JavaScript as primary development language
    • Leverages flex.json configuration file to define properties
    • Available Properties Include:
      • Textbox, Textarea, Checkbox, Radio, select, color picker, date picker, date & time picker, image selector, product lookup, category lookup, link, text/icon editor, rich text editor, slider, distributed slider, group
    • Flex Components are importable and exportable which enables local development process
    Copy Page & Copy Page Rules
    • Copy any page to a new or existing page or layout
    • Create custom copy page rules to govern what is copied (default everything is copied)
    New Module API Features & Functions
    New Miva Employee Admin User Type
    • Any Miva Employees who creates an Admin user in store now has additional 2-Factor security requirements and will show a visual indicator in the Miva admin to identify them
    • Additional Requirements for these users include:
      • VerifyBrowser may not be disabled
      • Email address cannot be changed, is read only and must end in
      • 2FA cannot be disabled
      • All standard Two-Factor authentication dialogs and controls for Miva Employee accounts are disabled since they are forced though a centralized Miva 2-Factor system
      • A "Miva" badge (Miva logo) is displayed next to user name in User List
    Preview Site & Price Groups at a future date and time
    • Template Branch Widget now allows you to preview any branch at a future date and time
    • This allows you to ensure scheduled components and price groups all work as expected ahead of time
    New Clear Basket Action – CBSK
    External Refund Payment Module – Allows external systems (such has Netsuite) to push refund information back to Miva to ensure accurate revenue reporting from Miva.
    Custom Page Fields – Ability to create/view/update custom field data associated with pages, in addition to new functions to read/write custom page data.
    New Public Custom Field Flag – Determines if custom field is available in new runtime product/category JSON APIs
    Redis Page Caching now supports bzip2 compression for HTML to reduce the overall size of data store in memory (~80% reduction) but adds about ~3ms to each cached page load (to uncompressed the data)
    Runtime_PaymentMethodList_Load now has a helper function in runtime.js to make it easier to call on any page
    Shipping Method Rules now take into account discounts applied to the basket
    If a user with the Administrator privilege is created with an expiration date, that user can no longer self-extend or remove their expiration. Another Administrator user is now required to make such a change.
    As a result of the module API changes added for Store Utility Modules, both Manage Quotes and Review Baskets can be accessed without the admin user having full access to Utilities
    Notable Bugs Fixed
    • l.quote:items array not being reset between iterations on quote reminder/expiration emails
    • TaxJar: Any error returned from TaxJar in the scheduled task causes the scheduled task to exit
    • TaxJar: New transactions created after a refund transaction incorrectly uses the original transaction date
    • Subscriptions yet to be processed are included in the report data
    • PayPal CP – Recalculate taxes and update order total once full address is know
    • PayPal CP – Fixed Orders getting created with Missing address/email/phone information
    • MailChimp - Set MailChimp cookie with Secure flag
    • MailChimp - URL tracking parameters are now registered with Miva Cache Settings upon install so they are ignored from cache key
    • Template Based Feeds - note_count, dt_pwchg, tax_exempt, order_cnt, order_avg, and order_tot fields to the customer feed
    Bugs Fixed
    Bug ID Component Description
    MM-3614 Administrative Interface Adding a product with an attribute code that is too long caused multiple products to be added to the order. (mysql strict mode)
    MM-8584 Administrative Interface Replace legacy page-based lookup screens with lookup dialogs
    MM-11410 Administrative Interface Runtime error: relation "pages" does not exist
    MM-11542 Administrative Interface Incorrect file path when creating a CSS/JS in a store with multiple branches
    MM-11585 Administrative Interface SetEditorSupprtsFullScreenSave_Enabled is misspelled in MMTextEditorCustomElement
    MM-11586 Administrative Interface MMSelectCustomElement can draw multiple MMSelect elements
    MM-11587 Administrative Interface MMSelectCustomElement generates incorrect options
    MM-11802 Administrative Interface MMDialog's does not properly reset auto-height when existing fullscreen
    MM-11814 Administrative Interface Adding a rule from the Copy Page dialog should refresh the list of rules
    MM-11815 Administrative Interface Add implicit Copy Page Rule
    MM-11820 Administrative Interface MMSelectCustomElement does not return created option in "add" function
    MM-11826 Administrative Interface Js error when viewing the shipping label overlay
    MM-11841 Administrative Interface Off by one rounding errors when calculating negative tax value for a basket level discount.
    MM-11967 Administrative Interface Name field of "Add Product" is able to be occupied by more than 100 characters.
    MM-12048 Administrative Interface Opening a runtime context from admin allows window.opener context to be run from runtime, allowing security vulnerabilities
    MM-12110 Administrative Interface MMDialog: SetFullscreenEnabled_MaintainDialogIntegrity does not set fullscreen height on subsequent fullscreen starts
    MM-12162 Administrative Interface MMImagePicker: Close "X" button no longer shows the icon
    MM-12228 Administrative Interface Page Builder Preview Session Verification
    MM-12331 Administrative Interface Create a login specific combined JS feature
    MM-12415 Administrative Interface Users should never be able to update their own expiration date
    MM-12439 Affiliates JSON_EarningList_Load_Query does not properly sort the Voided By column
    MM-11651 Caching Subsystem Flush Cache fails if Store Settings are accessed through universal search
    MM-11809 Copy Product Copy product fails to copy all custom fields in certain scenarios
    MM-11360 Core JSON Content-Type charset in JSON should always be utf-8
    MM-11440 Core JSON Include Part weight in Parts object in the OrderList_Load_Query JSON API response
    MM-11490 Core JSON All JSON functions should output disp_order where supported
    MM-11525 Core JSON JSON_ProductVariant_Insert should validate all user submitted data
    MM-11530 Core JSON Callers of Store_Update_CacheSettings should not update g.Store
    MM-11635 Core JSON JSON_ProductPriceGroupList_Load_Query does not properly sort the "type" column on PostgreSQL
    MM-11834 Core JSON Include Part Cost in Parts object in the OrderList_Load_Query JSON API response
    MM-11852 Core JSON Additional API functions for MMT
    MM-11880 Core JSON JSON_Output should call miva_json_encode
    MM-11922 Core JSON JSON_Search_Filter_Contains_Field does not properly search SUBWHERE fields
    MM-11923 Core JSON Core JSON Custom Field Callback functions need to be updated to allow a list of allowed custom fields to be filtered/queried/sorted on
    MM-11975 Core JSON Custom field plan generators should not limit which modules can use "multitext" custom fields
    MM-12000 Core JSON JSON_OrderItem_OnDemandColumns does not output product_id
    MM-12210 Core JSON Post 10.04.01 merge, JSON_Runtime_Product_Read needs to use Runtime_Product_InventoryFields_Read_WithInventory Settings
    MM-12411 Core JSON JSON_Runtime_ProductList_Load_Query should support outputting subscription settings / terms as an ondemandcolumn
    MM-12431 Core JSON Caching of runtime category and product list JSON function results
    MM-12002 Core Runtime Runtime product list API function facet support
    MM-12215 Core Runtime Move BasketDiscountTotal_Delete_All_Basket to Runtime_Basket_Empty
    MM-12216 Core Runtime Move Basket_Update_SubCount into Runtime_Basket_Empty
    MM-11317 Customers Password Last Changed is no longer visible on the Customer Dashboard
    MM-11407 Customers From the Customer Dashboard tab, deleting the customer with no other customers on the store will produce a blank screen
    MM-11654 Customers When deleting a customer from customer dashboard with other existing customers, admin returns to customer list instead of next customer dashboard
    MM-11786 Customers Admin logging within Action_CustomerAddress_Insert doesn't include the customer record
    MM-11588 Database Layer Screen_StoreUtilityModuleLinkList Should check for an open store
    MM-11772 Database Layer sNN_Basket/OrderDiscountOptions should use the sNN_Basket/OrderOption id column for its unique identifier
    MM-12016 Database Layer DB_Filter_ISNULL should wrap expression in parenthesis when dealing with 2 or more expressions
    MM-12166 Database Layer Add an index to the Bookmarks table that uses the disp_order column
    MM-12286 Database Layer Image_Update_Dimensions fails to notify not_image modules of changed dimensions in certain scenarios
    MM-12302 Database Layer SQL_Query_Index_OrderBy does not properly handle null_integer/number/double/bool columns
    MM-11549 Discounting Subsystem When adding a coupon to a basket via Review Baskets, then adding a qualifying product in runtime, the discount is not removed
    MM-12217 Facets Leakage of loaded facets in FacetList_Load_All_LowLevel_With_Query can result in fatal runtime errors
    MM-9839 JSON API Add AllOrderPaymentList_Load_Query to JSON API whitelist
    MM-11395 JSON API API Insert / Add functions should return the newly created record
    MM-11593 JSON API JSON_StoreCountryList_Load_Query improperly references the result set disp_order value
    MM-12101 JSON API PriceGroup and Coupon should output datetime fields using JSON_DateTime
    MM-12212 JSON API ProductVariant_Insert and ProductVariantList_Load_Query output inconsistent
    MM-11642 MMBatchList JS error in advanced search on the Template history for branch dialog batchlist.
    MM-11875 MMBatchList MMList: Full screen mode is missing the close X on the exit fullscreen button.
    MM-11965 MMDialog Customer payment card add/edit dialog gives generic, unhelpful error messages
    MM-10692 MMList Incorrect Sort order when moving records with drag and drop
    MM-11952 MMList MMList: Viewable Text Area column "View" buttons can be misaligned
    MM-11874 MMMenuButton Runtime Branch Preview: Selection can get stuck in certain circumstances
    MM-11114 Module: avatax AvaTax: When shipping price groups use a discounted charge for discount, a negative tax is applied
    MM-12149 Module: avatax AvaTax advanced search "AvaTax From Country" is unusable
    MM-12130 Module: braintree Mivapay reported error when Braintree credentials are incorrect is unhelpful.
    MM-11550 Module: cmp-cssui-afflink Affiliate Sign-In Link code should only attempt to load the affiliate session if the affiliates program is enabled
    MM-10705 Module: cmp-cssui-prodlist Add custom module validation to prodlist provisioning
    MM-11836 Module: cmp-mv-flex Support for multiple CSS/JS files per flex component
    MM-11837 Module: cmp-mv-flex Naming Terminology Change: Flex "Item" to "Flex Component"
    MM-12343 Module: cmp-mv-flex FlexComponentAdd modifications for use in frameworks
    MM-12345 Module: cmp-mv-flex Allow FlexComponentDelete to retain resources
    MM-12447 Module: cmp-mv-flex Adding a Flex component should support existing inline resources
    MM-12003 Module: cmp-mv-prodctgy-meta Product & Categories Fields should return the custom field type
    MM-12015 Module: cmp-mv-prodctgy-meta sNN_METAXXX value/value_long columns should contain NULLs instead of empty strings
    MM-11830 Module: cmp-mv-sequence Use TemplateManager_DateTime for sequence date comparisons
    MM-11948 Module: customfields Fields set via Product/Category/Customer/OrderField_Value should update the in-memory cache of the existing product
    MM-12030 Module: customfields XXXField_Update does not allow removing the custom field from a group
    MM-12031 Module: customfields XXXField_Update does not allow changing the case of a field code
    MM-12032 Module: customfields XXXField_Update does not delete field options when the field type changes
    MM-12033 Module: customfields JSON_CustomFieldList_Load_Query outputs an unused field option "type" value
    MM-12034 Module: customfields Module_Provision_Store_OrderField_Value incorrectly logs the order ID when an order value is set
    MM-12185 Module: customfields Custom Field page values should be copied when the page is copied
    MM-11504 Module: endicialabels Endicia shipping labels, Sign up for an ELS sandbox account link is dead.
    MM-12360 Module: imagemanagement Check for Updated Images does not refresh image attributes on Image Management screen
    MM-12361 Module: imagemanagement Generated images are not deleted from the server after using "Check for Updated Images"
    MM-10704 Module: mailchimp Set MailChimp cookie with Secure flag
    MM-10898 Module: mailchimp Register MailChimp URL tracking parameters with Miva Cache Settings
    MM-11535 Module: mailchimp MailChimp tracking cookie doesn't set an expiration time
    MM-11957 Module: marketplaces ScheduledTaskOperationList_Load leaks operations across modules
    MM-11200 Module: paypalcp PayPal Commerce Platform: MivaSQL bug causes UNIQUE constraint index error
    MM-11812 Module: paypalcp PaypalCP orders created with missing address information during paypal checkout.
    MM-12104 Module: paypalcp Modify OnApprove behavior to recalculate taxes with full address to fix tax discrepancy
    MM-12369 Module: paypalcp PayPal Commerce Platform unnecessarily patches the PayPal order at checkout
    MM-12372 Module: paypalcp PayPal Commerce Platform: Unable to clear PO box from shipping address once present in basket
    MM-12398 Module: paypalcp PO Box exclusion is not enforced when using PayPal checkout
    MM-11984 Module: productdata The generated custom field plan should not limit multitext custom fields to modules with an API version of 9.08 or higher
    MM-11673 Module: qship ShippingModule_Description returns unencoded method name
    MM-10392 Module: quote Add id column to sNN_QuoteOptions
    MM-11321 Module: quote Manage Quotes: Multiple Quotes per basket should be supported
    MM-11528 Module: quote Store Utility privilege should not be required to use the quoting portions Manage Quotes
    MM-11626 Module: quote l.quote:items array not being reset between iterations on quote reminder/expiration emails
    MM-11773 Module: quote sNN_QuoteOptionDiscounts can have duplicate index errors when multiple custom attributes exist
    MM-11864 Module: quote Include Part Cost in Parts object in the QuoteList_Load_Query JSON response
    MM-11866 Module: quote Manage Quotes should implement the cleanup_store feature
    MM-11868 Module: quote Quote_DummyBasket_Cleanup doesn't correctly delete the QuoteXBasket record
    MM-11869 Module: quote Include Part weight in Parts object in the QuoteList_Load_Query API response
    MM-11882 Module: quote Test Case C377062 - Request Quote tab on ABUS page has a blank template that can't be edited
    MM-12332 Module: quote Shipping method does not persist when reopening dialog in Manage Quotes
    MM-12418 Module: readytheme ReadyTheme should not resize the images if the specified size matches the existing image
    MM-11442 Module: report_geosales report_geosales, Fatal error when running a report with date range set to all dates
    MM-11961 Module: report_sales Y axis labels not properly displaying the lower range in sales report
    MM-11523 Module: report_subscription_metrics Subscriptions metrics report does not work with “every N months” subscriptions.
    MM-11616 Module: report_subscription_metrics Annual Reoccurring Revenue is incorrectly calculated for "Every N Days" subscription term frequency
    MM-11617 Module: report_subscription_metrics Subscriptions yet to be processed are included in the report data
    MM-11529 Module: reviewbaskets Store Utility privilege should not be required to use Review Baskets
    MM-11781 Module: reviewbaskets JSON_ReviewBaskets_ItemList_Load could output an error mid-success response
    MM-11910 Module: shipimport Shipment import, mysql strict error when excluding the optional cost field during import.
    MM-11538 Module: square Square Configuration Dialog is mis-sized when the processing icon is spinning
    MM-11611 Module: stdschtasks Standard Scheduled Tasks: Generate Dashboard Reports: Reports that fail should be logged with an error
    MM-12142 Module: taxjar TaxJar Product / Category custom fields do not sort properly on PostgreSQL
    MM-12348 Module: taxjar Any error returned from TaxJar in the scheduled task causes the scheduled task to exit
    MM-12371 Module: taxjar New transactions created after a refund transaction incorrectly uses the original transaction date
    MM-11486 Module: templatefeed Add note_count, dt_pwchg, tax_exempt, order_cnt, order_avg, and order_tot fields
    MM-11522 Module: templatefeed Template Based Feeds: Customer shipping / billing fields are not retained when in Point + Click mode
    MM-12292 Module: upsxml UPS Developer Kit attempts to insert invalid basket info records in certain scenarios
    MM-12274 Page Builder Add way to preview site at a future date from In admin site preview in Page Builder
    MM-12393 Page Builder Add Title tag to Page Builder Refresh Button
    MM-11943 Payment JSON_CustomerPaymentCardList_Delete has the incorrect Admin Log message
    MM-12068 Payment Payment_reCAPTCHA_Is_Active causes an MvDO error if an invalid module is passed in
    MM-11964 Provisioning PRV_Action_Provision_Store_ProductSubscriptionTerm _Update deletes all term dates even when the Frequency tag is omitted
    MM-12320 Provisioning PRV_Order_Item does not properly handle variant digital downloads
    MM-11603 Setup Script setup.mvc serves up insecure content when run over https
    MM-12229 Shared Core Restrict crossorigin="use-credentials" to clientside resources intended to be used in sandboxed iframes
    MM-10443 Shipping/Packaging Rules Shipping method rule subtotal checks should take into account discounts.
    MM-11630 Shipping/Packaging Rules Packaging Rules: Box Packing selection is not checking to ensure module is active
    MM-11510 Subscriptions Customer Information is missing from the Authorization Failure Log when a Subscription fails to process
    MM-11920 Subscriptions JSON_Subscription_Insert should use the customer's default address when the Customer Address is not specified
    MM-12167 Subscriptions Add an index to the sNN_ProductSubscriptionTerms table that uses the disp_order column
    MM-11573 Template Subsystem Redis page caching should ultilize bzip2 compression
    MM-11610 Template Subsystem Cannot sort or search Linked Pages for Resource by Cache
    MM-11614 Template Subsystem ItemPageList_Load_Query fails to sort/search the Cache column
    MM-11785 Template Subsystem Trim notes for TemplateManager_Page_Update_Settings and TemplateManager_Page_Update_Global_Settings
    MM-11808 Template Subsystem Layouts are not being prevent to be rendered at runtime
    MM-12043 Upsale Checkout with a product that has a sale price and is part of an upsale shows incorrect price when the sale price is greater than the upsale price therefore increasing your order cost
    MM-12458 Utility Library DiscountState_Adjusted_Price should return the product price when product:pgrpcount == 0
    Brennan Heyde
    VP Product
    Miva, Inc.
    [email protected]

    10.05.01 is now available. Below are the release notes:

    Bugs Fixed
    Bug ID Component Description
    MM-12499 Administrative Interface Sorting products within a category doesn't save the sort order
    MM-12503 Administrative Interface Sorting products within Related Products doesn’t save the sort order
    MM-12497 cmp-include-imagetypes cmp-include-imagetypes incorrectly defines ComponentModule_Render_Head
    MM-12501 MMTextEditor Rich Text Editor in Source mode does not display existing content or line
    MM-12498 Module: customfields Non-Facet Custom Fields are displayed as facets at runtime
    MM-12500 Module: sitemap Standard Sitemap Protocol Feed Should Not Output Layout Page Links
    MM-12490 Page Builder Choose a Layout page should support double clicking on a layout to continue
    Brennan Heyde
    VP Product
    Miva, Inc.
    [email protected]


      10.05.02 is now available. Below are the release notes:

      Bugs Fixed
      Bug ID Component Description
      MM-12524 Administrative Interface Administrative HTTPS redirect is not performed when Administration and Runtime share a common secure origin
      Customer Impact

      When a Secure URL to Administration is configured, the following requests will be rejected:
      1. 1. All http:// requests to json.mvc with Session_Type "admin"
      2. 2. Any http:// request to admin.mvc that uses a method other than GET
      3. 3. Any http:// GET request to admin.mvc that specifies the Screen or Action parameters

      These rules may break requests from Synchro, if it is configured to use an http:// URL, or other external integrations that are making non-encrypted calls into admin.mvc. JSON API calls using API authentication should not be impacted.
      Brennan Heyde
      VP Product
      Miva, Inc.
      [email protected]