Skip to main content Skip to main navigation Skip to footer

dotSquare Upgrades

Keep track of changes and upgrades to the DotSquare Framework and API

Before upgrading to the newest version of dotSquare, it is recommended that you review all changes we put in place to both the Framework and dotSquare API. These changes may be simple or major in nature, such as variables or structural changes, respectively. Major changes are less frequent.

Change Log

The changelog is a list of backwards-incompatible updates in the dotSquare API and Framework. New additions and forwards-compatible changes don’t need a new version and will not appear in this list. If you are not using the dotSquare Framework, it is your responsibility to thoroughly debug your website.


  • The video feature has been consolidated from 2 into a single feature. To switch between the types of display states, use the variable $preview_type. Accepted values are iframe, lightbox, and post. The CSS classes have changed so be sure to check this in your design.

  • Htaccess files are now database driven. Enter the live & local htaccess code in the partitions table.

  • Navigation item multi-ligual capability has changed. Multiple languages are now stored in JSON rather than multiple rows. In the site_navigation_items table, nav_title has been replaced with nav_title_langs. Example JSON is {"en":"Contact Us","es":"Contáctanos"}


  • Login System Only:

    • Sessions are now closed after initialization file. Search your code for $_SESSION[. If this variable exists in your own code (not DS code) then you will need to start a new session with session_start();. An example may be signup controllers.

    • On signup controllers add the array element 'for_pseg_id'=>NULL to the login areas JSON.


  • Login System Only:

    • Search your code for "INSERT INTO ".FIVEONE_CLIENT_DB.".account_users and...

      • make sure the column access_area_ids and login_areas is added.

      • make sure the column access_code_id_used is removed. Access codes used are now stored in the login_areas column as JSON.

    • The parameters for the function loginAsUser() have changed. The parameters $access_area_id and $obj_id were added.

    • The constant USER_LOGIN_PATH has been replaced with USER_LOGIN_PATHS. This is now an array with keys of the access area ids instead of a simple string.

    • The constant USER_ACCOUNT_PATH has been replaced with USER_ACCOUNT_PATHS. This is now an array with keys of the access area ids instead of a simple string.

    • The variable $loggedin has been replaced with the global variable $GLOBALS["USER_LOGGEDIN_TO_DEFAULT_AA"]. Search for all instances in your code and replace.

  • In 51-configure/data/, added directory cache/.


  • In 51-configure/data/sub-accounts/, added directory temp/.

  • In 51-configure/data/, added a file called site_themes_data.json. This is where themes are stored for site templates.


  • The parameters for the functions getFieldVal() and getFieldData() have changed. The parameter $field_type is no longer needed.

  • For the menus: Blog, Gallery, Videos, Portfolio, SDA, Vendors, Job Postings, Users, User Groups, and Store the media title, media caption, and image linked external url are set to hidden. Manually show these fields in each menu via Developers > DotSquare Setup > Features.


  • The feature setup variables $filter_field_id, $filter_field_check_val, and $filter_field_condition, are replaced by the variable $filter_fields_arr. Search for and replace these variables.


  • The element id #result_container is no longer used for the JavaScript function showAlert(). Echo displayFormMessage()['html']; inside the closest form. If outside the form it will not work with javaScript validations.

  • User support featured matured. Many changes made. Please test.


  • Login System Only:

    • In order to properly log time based user data to be later viewed in DotSquare, the insertUserLog() function must be used when adding, deleting, activating, pausing, approving, rejecting, verifying, or unverifying a user or user group. Most of the time adding and pausing is used.

  • Custom fields no longer use {{ ... }} data formats to store meta data along side the actual data. We now use separate JSON formatted meta_data to store extra info. Custom address fields will no longer function properly.


  • The tables account_user_info and admin_user_info have been dropped. All data in these tables have been moved to account_users and admin_users, respectively. Make the appropriate changes for your custom code.


  • In 51-configure/data/, added directory sub-accounts/. This is where sub-account connection data is stored.

  • In 51-configure/data/, added a file called global_switch.json. This is where sub-account domains are stored to route to the correct connect data in 51-configure/data/sub-accounts/.


  • Site links now automatically determine if a link show open in a new tab or not. Remove all target="_blank" code from site links.


  • An .htacccess file is now in the directory 51-configure/data/.


  • In 51-configure/, added directory editable_files/. This is where you should store all files editable in edit mode.

  • In the table site_images, the any values matching "inc/img/" should be replaced by {{EDITABLE_DIRECTORY}}. This variable equals 51-configure/editable_files/img/.


  • The PHP variable $section_id is no longer used . Replaced with an array called $active_nav_items_arr. You must find if your navigation item is in that array.

  • Its recommended that you check that all getPageNavTitle() functions are returning a value. If a page has no navigation this will be empty. Use the getPageTitleObvious() function instead.


  • The variable $GLOBALS["DS-ECOMM-SELLING-FOR-PARTITION-TYPE-ID"] now must be set. Typically use the line $GLOBALS["DS-ECOMM-SELLING-FOR-PARTITION-TYPE-ID"] = 1


  • The $web_version variable is deprecated. Replaced with database driven constant DS_CACHE_TOKEN

  • JQuery UI is now no longer included by default. You will need to manually turn on JQuery UI in 51-configure/custom_files.php


  • In 51-configure/, added directory data/ with JSON files


  • favicon.png and apple-touch-icon.png meta images have moved to the setup/meta/ directory in the DotSquare uploads folder.


  • The API key is now defined in 51-configure/init.php as a global variable $GLOBALS["DS-API_KEY"]. It was previously defined as the constant API_KEY. The constant API_KEY is now automatically defined from this global variable.

  • The site alerts feature now uses page ids instead of a PHP variable in the Framework. Ensure that the proper page ids are added for each site alert.


  • Login Systems Only: $area_user_login, $area_user, $user_only_area variables are deprecated. This is now controlled on a page level in the database.

  • Login Systems Only: The variable $USER_ID is replaced with the constant USER_ID.


  • Email class has changed to Notifications.


  • In 51-configure/css/, normalize.css, style_custom_bgs.css, style_custom_formatting.css, and style_span.css merged into a new file 51-configure/css/custom_normalize.css.

  • In 51-configure/css/, added directory temp/


  • $nav_id changed. Default navigation ID for Header is 1. Default navigation ID for Footer is 2. Default navigation ID for Mobile Menu is 3.

  • $page_id changed. Please ensure that all page IDs coded into the website are correct.

  • $header_nav_show_home removed as a dotSquare variable.