logo

Change Log

February 2nd, 2019

  • deprecating booking attribute for flexibility (first announced in early 2018 to only those that are using our API. Migration guide: https://docs.google.com/document/d/1CPaeOI6qbzV1GO7rA6I1pM4thBrG1vK45F-UVpONBVk/edit?usp=sharing)
  • Quickbooks: Migrate to Oauth 2
  • Special Tax Rate for Customer: tax rate not applied when task creates next booking
  • Upgrade Stripe to current version
  • Create Location: concurrent jobs and teams
  • Multi-Location: When disabled, do not show the Location tag on the Active Bookings page
  • Quote details modal doesn’t show address info
  • Froala: Special Characters in SMS template
  • Cancellation Fee modal: typo

December 14th, 2018

  • Upgrade to latest Stripe
  • View Billing History
  • Liquid tag: remove Revenue line item from {{ booking_changes }} tag
  • Create issue
  • Saved Booking Draft Quote: track which Staff user created it
  • Fix saving of premium booking form designer with changes in extras table
  • Carpet Form Designer: Accordion edit Column and Row fields disappear when switching Service Category
  • Multi-Location: Can’t see list of Locations when Feature is disabled or not on plan
  • Check all Email fields to not allow invalid email and handle error
  • Show warning to users related to “stripe.js v3 will no longer support IE9”

October 13th, 2018

  • json.SyntaxError: invalid character ‘<‘ looking for beginning of value Create issue
  • Add Customer ID to bookings and customers export
  • Do not allow Staff to manually send emails if they do not have the related feature on their plan
  • Zapier: Add Customer ID
  • Extend existing Charge/Hold API endpoint with flag to trigger failed CC email
  • View Saved Quote Modal: Only show properties that we allow to be saved during quote creation
  • Unhandled error using Save and Send Message
  • Edit Booking: Wrong Service Date set in Date field causes issues with saving a Completed Booking
  • Form Designer: if there are validation errors, scroll to the field that has the problem
  • Charges page: make sending failed CC email optional
  • Time Tracking Logs: Add columns for Distance Value and Distance Unit
  • Email Template changes: related to when “Redeem this Gift Card” link that was sent to recipient was broken
  • Time Tracking Reports: Difference in Time Reported vs Time Credited is show as red “-0mins”
  • Quote: Add recurring booking’s Next Booking Price to the saved Quote
  • QuickBooks: Do not sync charges that were put on hold and then released
  • Charges page: Disable Sync to QB and Link to QB options for charges that were put on hold and then released

August 18th, 2018

  • Export Bookings: Cancelled Bookings filtered by Service Date and Cancellation Date
  • Pay Teams Calculation: Do not include Tip of Cancelled Booking with Late Cancellation Fee
  • Download CSV: set cookies to expire after 1 year
  • Team’s Invitation Reply: show actual team reply even if staff already rejected the team
  • Pay Teams Calculation: Do not include Tip of Cancelled Booking with Late Cancellation Fee
  • Increase Mailgun retry limits
  • Support Rating Feedback Email: Add Booking’s Frequency to the message
  • Teams Payment Summary: few teams figures missed from total
  • Tags: create unique constraint on tag_idtaggable_id and taggable_type
  • Upgrade Stripe library
  • Liquid tag: Remove “Old Value” from {{ booking_changes }} in preview mode
  • Editor: Upgrade to new version 2.8.0
  • Update ng-rollbar lib
  • Fix “TypeError: recreateService is not a function”
  • Pay Teams: Main page is requesting summary for All teams when filter on page is only for Active teams
  • Fix “ReferenceError: Stripe is not defined”
  • Typo in Designer: “SMS Remainder Settings”
  • 403 Response Error Page: Improve message based on Custom Error from backend
  • Client Settings Change History: allow admin to see this on Subdomain tab
  • Cannot read property ‘subject’ of undefined

July 7th, 2018

  • Create Zapier triggers for when team(s) are assigned/unassigned
  • Quotes: Share Quote Email
  • Team Payments: Add Standard Wage Adjustment based on Base Amount for each booking
  • Recurring Bookings: “Duplicate” Forecasted bookings being displayed
  • Change History: Track service category changes made to a service
  • Quotes: endpoint for staff API should be extended with quote_uuid
  • Reset booking’s charge_failed when payment method changed from stripe to something else
  • duplicate key value violates unique constraint “invitations_team_id_booking_id_key”
  • Optimize audit_context creation
  • Fix “TypeError: undefined is not an object (evaluating ‘service.availableTeams.assigned’)”
  • Emojis in Rating Text causes CSV to export column values in wrong order
  • Quotes: Pass quote_uuId to back end when creating booking from saved quote
  • Sandbox tab: Server error “Not Found” is displayed if no Sandbox exists
  • Teams: add View History option to main profile options
  • Tags: Track Change History of when tags are linked/unlinked
  • Staff role changed notification via Push notifications
  • Popout Form: Submitting the form does not scroll to missing required field value in Safari
  • Fix “ReferenceError: Stripe is not defined”
  • Check for empty email subject and contents
  • Stripe timeout: net/http: request canceled (Client.Timeout exceeded while awaiting headers)
  • Deleting staff and teams: checked linked > has_created_bookings
  • Email Templates: minor issues
  • HTML Email Templates: Remove primary_text_color from several places
  • Bookings: Add DB column and CSV column for Created By
  • Failed Charge/Hold Emails: Send when the failure happens from a manual attempt

May 28th, 2018

  • GDPR related delete features
  • Zapier: Add triggers for when Saved Quote is created
  • Email and SMS team as soon as they are un/assigned a booking
  • SMS Templates: Booking Rating and Happy Rating Follow-up
  • Discount code: allow remove number of uses restriction
  • Liquid renderer panics when key is not found in the map
  • Printing Schedules: remove restrictions on CanDeliver for Print
  • Stripe: refresh charge before Refunding to avoid stale state
  • Fix unsafe rendering of extras options in booking form designer
  • Fix uploading of customer avatar
  • Rename Sandbox Access tab to API
  • Active Bookings on mobile UI – add sort filter
  • Pricing parameter ranges: Cannot Save Duration
  • Profile pic: Can’t upload staff profile pic
  • Gift Card Form: not rendering same bg as the Default Booking widget
  • Booking Form Designer: Cannot save changes to booking summary header
  • Booking Form Widgets: Scroll to missing required field value does not work on iOS Safari
  • Discount Codes: Issues with removing values when editing a code
  • pq: duplicate key value violates unique constraint “index_form_settings_on_code”
  • Deleted Customers Log: always showing 0 giftcards
  • Discount Code Form: Can’t save percentage amounts with decimals + make body shorter and scrollable
  • Quote form designer: custom background color is not rendered correctly
  • Email Templates: Team Availability emails do not show correct time format specified in Subdomain
  • Team Rating Feedback Email Template: change content
  • Bookings list for team API: sorting does not work

April 27th, 2018

  • Time Tracking Logs: update the assigned teams hours on booking when user “approves” log
  • Allow Notes and Comments to be formatted in Email notifications
  • Discount codes: New Restriction Options for booking discount codes
  • Block Customers to prevent them from Seeing Available Spots and Booking Appointment
  • Company Name for Customer
  • Include Bookings outside of your normal spots against your Availability
  • Referral Rewards: Change rule to allow rewards to be combined with Frequency Discount
  • Pay Teams: Add option to set payment as Draft and to Delete Draft – update this doc, link to doc
  • Send Schedule: minor changes
  • Booking Form: Bring back the old Price Adjustment Recurring Checkbox
  • Zapier: Notify the Customer Updated trigger when customer’s tags change
  • Spots Settings > Daily: use modal-lg for Teams Needed/Jobs Scheduled modal
  • Team Permissions: Add “View Booking’s Final Price” and other edits
  • Dashboard: Add proper comma formatting and 2 decimal places to the amounts
  • Add help icons for different types of notes and comments
  • Manage Customer Addresses: New Address is not added unless it is set to Default Address
  • Tag Enhancements: Display order
  • Scheduler pages: After bookings are refreshed, the keyword filter is lost
  • Customers page: Display Name set to Email address when no First Name value
  • Cancelled Bookings: Remove overflow: hidden
  • Setup Wizard: Add button state to “Launch My Account” button
  • Daily Spots Settings: Show Location label for Bookings in Teams Needed modal
  • New Team Permission: View Booking’s Final Price
  • Customer Profile: Saving Phone causes error “0.label – 0.label: String length must be greater than or equal to 1”
  • Time Tracking Log Export changes
  • delete customer function does not remove records from payment info table
  • Link customer with Stripe Customer ID: remove spaces from Stripe email before email validation
  • Advanced_search_for_teams: add availability_details
  • Time Tracking Log: Add Base Amount column to CSV
  • Check for and skip empty/blank rows in input CSV
  • Handle error responses in gdm.GetDistance and gdm.GetDistanceWithCache
  • Pricing Parameter Ranges: Return a range label to indicate which range was selected
  • Send client “welcome email” in a separate transaction
  • investigate: duplicate key value violates unique constraint “index_business_hours_on_location_and_date”
  • pq: duplicate key value violates unique constraint “index_pending_charges_on_pending_date”
  • SMS notifications default value: deprecate client setting SMS Notifications, use system field default value
  • Customer Import: Enhancements + Column Mapping
  • Smart Scheduler: Dragging Recurring Booking to 2nd team but then cancelling action
  • Scheduler: not warned about “next booking” needs to be created when editing the template booking
  • Time Tracking Log: add help icon and fix CSV request
  • Can’t find variable: fieldset
  • Service Category: Archive+Create New Service after Price change does not add the new service to the category
  • Pricing Parameters: Hide View History button on create New Pricing Parameter form
  • Scheduled Tasks: rename to “Automated Tasks”
  • Multi-Locations: new location is not added to table immediately after modal closes
  • Customer Profile: Strange output in Referral Rewards section
  • Multi-Location: Cannot read property ‘parentNode’ of null
  • Subdomain tab: Cant save “max time each team can work per booking”
  • Daily Spots in Team mode: Bookings scheduled modal errors
  • Add page’s Title into the html title tag of the page
  • Request Time Off shows server error for invalid date range
  • ReferenceError: reloadFrequency is not defined
  • TypeError: Cannot read property ‘stripe’ of undefined
  • Remove hidden-xs from help icons
  • Customer import attempts to create customers with duplicate email addresses
  • Stripe returns UTC that is in the future
  • Time Tracking Logs: add has_saved_team_payments for booking
  • pq: duplicate key value violates unique constraint “time_trackings_booking_id_team_id_key”
  • duplicate key value violates unique constraint “invitations_team_id_booking_id_key”
  • Bookings for Spots Settings selected without from/to date
  • CSS: Remove margin-top from checkbox, radiobuttons etc
  • Premium Form Designer: Content Area editor’s formatting icons not showing
  • Scheduler: Changing Team assignments does not save properly for future bookings
  • Team Invitation: Team’s invitation is being rejected when staff makes non-invite related change to the booking
  • Service Category: Issues with services and “No Category” selected

March 2018

  • Multi-Location – Sync bookings to Location
  • Pricing Parameters should support ranges
  • Save a Booking as a Quote
  • Allow service date and time to be pre-loaded into booking form widgets via querystring
  • Pre-Select Service Categories
  • Add Team’s Phone to liquid tags for customer emails
  • if_modified_func doesn’t restore search_path if nothing was audited
  • Google Calendar: googleapi: Error 403: Forbidden, forbidden
  • Update vendored dependencies
  • Custom Fields in Prem Form Designer: when adding new Checkbox or RadioButton List for first time, the new fields aren’t saved
  • Qty-based Extras on Premium Form: changing value from 3 back to 0 can cause unhandled error
  • Add own URL shortening service
  • Not redirect after Save Booking because of error: Cannot read property ‘share’ of undefined
  • Cannot read property ‘with_fee’ of undefined
  • Fixed on Feb 2 9AM EST: Scheduler: When dragging Booking to new time or assigning team, the Price Adjustment is removed
  • Server error changing Team’s Default Availability
  • Fixed on Feb 2 9AM EST: Price Adjustment not copied over when using Book this Again
  • Show Team’s Full Address in their Profile
  • Service Categories: Separate Archived vs Active Services on Edit Service Category form services list
  • Froala Editor: SMS content renders as HTML
  • Manage Addresses: If customer does not have addresses, disable the Manage Addresses link
  • Multi-Location: Clicking multiple times to edit a Location causes multiple modals to open
  • Time Tracking Logs: add Cancelled label next to booking and tooltip explaining how to remove cancelled booking from list
  • Book this Again page: Frequency is read-only if trying to reschedule from First Booking Exception
  • Team login: View Booking Details modal can’t scroll on iOS Safari
  • Cannot read property hourly of null
  • Change message and prevent selecting of code when “Premium Booking Forms feature is not available on current plan”
  • Save Recurring Booking: DateTime/Frequency changed modal New Dates section is confusing
  • Notify client when email could not be delivered to address
  • A way to cache distance between rounded lat/lon origin and destination
  • Booking SMS notification: validation for system field and default value
  • Invite Teams: Make asynchronous
  • Scheduler: add support for Cancel with Late Fee
  • Froala Editor SMS: chars are being escaped in SMS Preview and delivered SMS
  • Default Form: “Don’t worry text…” text displayed at bottom of form but no way to hide it in settings
  • Embedded Premium Form: If “No Spots Available” selected and you submit form, widget doesn’t scroll to location of error
  • Booking Form: Unchecking SMS Reminder checkbox causes checkbox to disappear completely
  • Reschedule via Cancel Modal: Add more descriptive error for user to add required custom field value *

January 2018

  • Add Multi-step Recurring Booking Save modal to Scheduler
  • Cleaning Booking Form: iOS Safari scrolls to bottom when list of Service Times is clicked
  • Moved SMS opt-in “default” setting from Subdomain tab to Form Designer
  • Add Send Confirm Account email option to Customer, Staff and Team profiles
  • Business Hours for Holidays
  • Booking Extras Validation: do not allow non-quantity-based extra qty be equal to 0
  • Report Carthook errors: “Cart already marked …”
  • Email template staff/request_for_time_off_submitted using deprecated liquid tags
  • Send email alerts about Twilio errors
  • Re-send confirmation email to unconfirmed team, customer or staff user
  • Add advanced date format version of booking.service_date liquid tag
  • Stripe error: Charge XXXXXX has already been captured
  • Spots Change History: Add Support for Business Hours
  • Subdomain tab: Forgetting to set time unit causes error
  • When there are a lot of teams on scheduler day view, the availability is not displayed for the last team in the list
  • Cannot assign to read only property ‘length’ of function ‘function Resource(value){shallowClearAndCopy(value||{},this)}’
  • Test Stripe keys to see if they are valid before saving values
  • TypeError: service.invitations is undefined
  • Daily Spots: Day is Closed in Max settings but is not displayed as Closed in Daily Settings
  • Run time exceptions on Customers page
  • Error adding Extra to Service
  • undefined is not an object (evaluating ‘iframe[0].contentWindow’)
  • Use tag property to ensure only one browser notification is displayed when multiple browsers/tabs opened
  • Email Editor: do not escape the content that is inside Liquid tags
  • Add improved explanation for why Discount Code fields are disabled
  • Catch exceptions on creation of notifications on Android
  • Handle null values in date\datetime custom fields
  • Double-clicking on day event in Team Availability calendar opens two modals
  • Display Staff and Customer Notes fully on Booking Details Modal
  • Active Bookings does not load complete list of bookings after the real-time update refreshes the list
  • Email Preferences for Staff loaded twice
  • Fix requesting of permissions for browser notifications in Safari
  • Forecasted Booking Details modal: Only call Change History endpoint when Changes tab is clicked
  • Remove frontend CSV validation during import of customers
  • If booking is completed, show reason why Frequency cannot be changed
  • Discount Codes page: show bookings/gift cards that used the code
  • Email Editor: Disable ability to Upload Image File
  • Customer Profile: frequency displayed on booking lists is not the Frequency Name
  • Cannot read property ‘_avast_submit’ of undefined
  • [ErrorInterceptor] responseError: (406): account does not support Stripe
  • Liquid tag team_average_rating not rendered in real email
  • Stripe: Platform access may have been revoked.
  • Update Email Template content: use booking.comments_text in Booking Comment Added
  • Team Payment emails: send email when status changed to PAID
  • staff/import: duplicate key value violates unique constraint “idx_users_on_email”
  • parsing time “2018-02-29”: day out of range
  • Create/update tag: extend with possibility to pass changes for tagged items
  • googl error: code 403, message: Rate Limit Exceeded, errors: <nil>
  • Deprecate forecasted_id, it is duplicate for forecasted_from_booking->id
  • Add QuickBooks Customer ID to customer import
  • Customer Import: Enhancements + Column Mapping
  • Add ability to Send Messages to View Booking page
  • Manual Service Date: default the Time to be same open time as day of the week
  • booking.card.validate is not a function
  • Quickbooks Mass Sync: Server errors not displayed at all to user
  • Scheduler: Remember Day/Week/Month view setting
  • Handle CloudFront 502 errors
  • Server error when adding a new Location with zip codes that contain spacesFailed to create Location: postcodes.0 – postcodes.0: String length must be less than or equal to 10
  • Give user option to update upcoming bookings when they change address/phone on customer profile
  • Tax label in booking form should match the Tax label from the Booking Form Widget
  • Cannot read property ‘validate’ of undefined
  • Quickbooks error while renewing tokens: code 270, response: OAuth Token rejected

November 2017

  • Email alerts when cards are declined during Manual and Automated Charge/Hold Task
  • Support minutes for Arrival Window
  • Give Customer option to Reschedule Booking if they try to Cancel it
  • Add Reschedule Button next to each non-Completed booking on Bookings History page
  • Migrate Credit Card fields to Stripe Elements
  • Move link to Scheduler
  • Allow Staff to add new Credit Card for existing Customer via Booking Form
  • Add additional filters to Active Bookings page
  • Give user option to unassign from upcoming bookings when Archiving a Team
  • Add the Discount Code used to the Booking Export
  • Add Frequency of Next Booking to Customer export
  • Remove lowercase styles from each Extra’s name on the Premium Form
  • Add disclaimer about availability to Booking’s Change History when Location is changed
  • Charges list on Customer Profile tab shows “unpaid balance” warning if booking’s Total is paid in multiple charges
  • Prevent User from scheduling any Task after 23:40-00:00
  • Server error setting 0 days as your cancellation policy
  • Impossible to delete Customer Notes from Customer Profile
  • “Team may not view comments” warning should not be displayed
  • Save Changes button in Turn Sales Tax feature On/Off modal does not work
  • Add button loading state to OK button in Charge card modal
  • Froala Email Editor: Disable ability to Upload Image File
  • Froala editor for SMS
  • Friendly error for Invalid URL on Referral Program Url setting
  • Friendly messages for Display Order errors
  • Add Company Phone to Subdomain settings
  • Session.currentUser is undefined
  • Add Recalculate function to Sales Tax Record and modify Change History display
  • Some growl messages do not close when X icon clicked
  • TypeError: null is not an object (evaluating ‘booking.location.id’)
  • If text_message_reminder is true, check the SMS checkbox on Staff Booking Form by default
  • Allow Preview Email data to load cancelled booking data
  • Strange symbol in Credit Card field when using backspace key in FF
  • Failed to construct ‘WebSocket’: The URL ‘undefined’ is invalid
  • Always send auth info in WS ping requests for authenticated users
  • Fix backend error interceptors
  • card object is not cleared from stripe_token
  • Gift Card submit button does not match Default Form styles
  • SMS field centered on smaller devices
  • Do not see SMS checkbox on Customer Booking Form
  • Cannot read property ‘confirmation_required’ of undefined
  • null is not an object (evaluating ‘cacheKey.indexOf’)
  • Stripe error: “type”:”card_error”
  • Server error “preheader: String length must be greater than or equal to 1” previewing master template
  • Date difference calculated incorrectly when period includes daylight saving time
  • Update stored credit card info if Customer deletes CC or does not have CC
  • pq: numeric field overflow
  • Do not accept task “scheduled_at” in 23:45 – 00:00 interval
  • Add Argentina Peso ARS to currency list
  • Bug: if booking not assigned and customer provides feedback we are sending feedback email to all teams
  • When Team is created, send them Welcome email
  • Update updated_at only if some record fields were changed
  • Set maximum limit for re-ordering and update ordering endpoints (99999999)
  • Return duration for service/pp/extra in Services_for_booking public endpoint
  • last_date_updated value on Daily Spots is wrong
  • Unlockable fixed spot with date-specific flexible spot
  • Main spots table does not get updated with new value for “Available Teams”
  • Edit Staff Schedule html template causes issues with liquid tags in real schedule email

September 2017

  • Liquid tag to see which User Cancelled a booking
  • Add Total Active Bookings and Total Cancelled Bookings to Customer Export
  • Add columns to booking export: Booking ID and Customer Full Name
  • Allow staff to search for customer records based on Stripe ID
  • Disable days on Booking Form Datepicker that do not have Availability
  • Backend initiated push notifications
  • Premium Booking Form as popout Widget
  • Edit Future Bookings – Multi-Step Save modal
  • Implement Two Factor Authentication
  • Adding Notes to a Team’s Availability Calendar
  • Allow Teams to be excluded from Spot calculations when in team mode
  • Set custom spot values when Spots Settings is in Team mode
  • Move Enable Sales Tax setting to main Sales Taxes page
  • Incorrect url results in white page of nothing
  • Add preview data for Sales Tax to liquid templates
  • Hide Discount code warning about not being able to combine discount and Frequency
  • Cannot read property ‘options’ of undefined
  • Keep selected date range the same on Pay Team details page if you switch to different team
  • Wrong Endpoints are queried on pages with infinite scroll paging
  • UI changes to Customer Home “Next Booking”
  • Enhancements to Final Price liquid code tag in email templates
  • Change discount code error message  from “Sorry, this code is no longer active” to “Sorry, this code cannot be redeemed.”
  • Add location policy validation to create/update booking
  • Add support for Intercom “identity verification”
  • Return Label or Placeholder text when Custom Field required value is not present so it can be displayed in form validation errors
  • Assign teams modal: Hide Update Duration section when viewing Invited Teams tab
  • Cannot read property ‘digest’ of undefined
  • Cannot create Team Payment for percentage-based wage, only Draft option is available
  • When Sales Tax record is edited, refresh the main sales taxes table
  • History of changes for booking: return friendly description for SMS sent event
  • Make labels on the Send Schedule modal more narrow
  • Remove link from Booking Service Address in Booking Details modal
  • Scheduler horizontal view: cannot drag assigned booking to another team (would change service time accidentally) – fix deployed Aug 23, 2017
  • Scheduler: Dragging and Dropping a Forecasted booking causes the template booking’s date to change – deployed Aug 4, 2017
  • TypeError: Cannot read property ‘trim’ of null
  • Edit Future Booking: Show friendly error for “booking – first recurring policy” when cancelling forecasted booking
  • Edit Booking Form “Save Changes” button state text after click
  • Add meta html tag to prevent indexes from crawling the booking forms and main page (was causing L27 to be ranked in Google…in some cases higher than the business’ website) – deployed Aug 18, 2017
  • Change `text-success` color to #00a651
  • See estimate of team hours for the week on the Team Payments page before the bookings are completed
  • If discount code cannot be applied, show error message underneath Discount field
  • [ngRepeat:dupes] Duplicates in a repeater are not allowed. Use ‘track by’ expression to specify unique keys. Repeater: team in ctrl.availableTeams.assigned | orderBy:’title’ track by team.team_id
  • Unable to get property ‘toFixed’ of undefined or null reference (IE Edge)
  • Unterminated quote at columns 106-107
  • TypeError: oldFrequency is undefined
  • Display Twilio settings error:  “Text Messages cannot be sent from your account because you have not set up your Twilio integration. Please set up Twilio in your account settings.”
  • Teams for booking queried for the wrong date
  • Scheduler: Any booking that is assigned to an archived Team is not displayed in Hor/Vert view
  • Bookings with no ratings are being exported with a value of 0
  • February not being returned in Dashboard data
  • Edit Future Bookings – Create Forecasted Bookings submit button allows multiple clicks and creates duplicate bookings (deployed Aug 6, 2017)
  • Edit Future Bookings – Do not show Recurring Changes modal when changing one-time frequency to recurring frequency

July 2017

  • Starting time is not loaded for Shift when Changing Availability for team for Specific Date
  • Cannot read property ‘start’ of undefined
  • Give option to Staff to Send Non-Credit Card Invoice when Marking Booking as Paid
  • Save button for Stripe trans_id remains disabled even after value is entered
  • Customer Profile does not load charges: Cannot read property ‘code’ of undefined
  • Scheduler: Scroll bar prevents paging on Team availability
  • Change Team Availability Modal: hide Apply To button if only one date is selected
  • Changing Specific time slot Availability for one Team on Spots Settings changes default availability for other teams
  • Saving Changes on Extra creates a brand new identical extra
  • You have reached maximum request limit.”,”status”:429
    undefined is not an object (evaluating ‘model.availabilitiesByTeam[team.id].data.availabilitiesByDates[date][0].dayoff’)\
  • Missing instance data for this datepicker
  • Team Availabilities and New Scheduler page do not show availability for specific dates if default availability is not set up
  • Location lookup displays “prevent booking” message on Staff Booking form too soon
  • New Scheduler: Enhancements to Calendar Normal view
  • Minor Enhancements after refreshing Stripe charges on Charges and Gift Cards Sold page
  • Display Duration value in Change log as hours and minutes
  • Email Preferences for Staff loaded twice
    null is not an object (evaluating ‘bookingService.service.id’)
  • Last Name field placeholder text renders asterisk that cannot be removed by user
  • Add line breaks for Staff/Customer Notes when rendering liquid tags
  • GET endpoints with `payment_method`: deprecate `payment_method`, add `payment_method_info`
  • Remove {{ from }} and {{ to }} from Email preview, add {{ time_off_from }} and {{ time_off_to }}
  • Booking Invitation Reply Received notification is missing booking ID

June 2017

  • Add Location, Team has Key and Team requested to bookings export columns
  • Tip amounts on Team Payment details page different by .01
  • Track the date that a Stripe charge is captured (not just when Charge was first created i.e. place on hold)
  • Mailgun forward: also check “recipient” when looking for client support address to forward to
  • Mailgun bounce handling: ignore “Content-Type isn’t multipart/form-data”
  • Dont log exception: “transport is closing”
  • 10812 <nil>: bug in account status alerts calculation for core settings endpoint
    sql: no rows in result set
  • Handle 429 “You have reached maximum request limit” error
  • Don’t load GA and GTM twice on Form Designer
  • Give option to Staff to Send Non-Credit Card Invoice when Marking Booking as Paid
  • Hide Success messages 2 seconds after transaction is successful on Charge Customers page
  • Spelling error on Hourly Wages report
  • scheduler: Bootstrap tooltip does not always disappear
  • Remove content about Team and Staff Payouts from Stripe tab
  • Add info tooltip for Site Color
  • Hide Old Customize Form Fields nav links
  • Stop using `charged` and use `charged_amount` instead
  • Infinite scroll on Emails Log does not work when browser viewport is very tall
  • Allow Staff to edit comment text of Team and Customer booking comments
  • Assign Teams modal: show more helpful message if 0 teams are found
  • Scheduler List View: Server error when trying to assign bookings that belong to more than one location
  • Tip field does not allow value of 0
  • If user forgets to add http:// or https:// to Company URL, add it for them

May 2017

  • Enhanced Booking Comments
  • Ask for Cancellation Reason when Customer cancels
  • Allow Frequencies and Discount Codes to be eligible only for certain Services and Extras
  • Ability to Combine Discount Code and Frequency Discount
  • QuickBooks: replace email in the Display Name with user_id
  • Enhancements to Create Location Wizard
  • Remove “Discount: applied:” line item from team_info liquid tag
  • Add limit/offset for history of Unsubscriptions
  • Request 50 records of Change History and replace infinite scroll with manual paging
  • Change description for customer/booking_cancellation email template
  • Team API: update booking details endpoint to return data in regular format
  • Make client schema names fixed
  • Team Permissions: change update endpoint to not overwrite setting if not passed
  • Endpoint for grouping teams in Assign Teams function
  • Cannot add new Pricing Parameter via Edit Service page
  • Add archived label next to archived Pricing Parameters on Edit Service page
  • Don’t show archived teams in “Teams Available” window when in Team Availability mode.
  • Assign Teams Modal: Remember collapsed/expanded state of Available and Unavailable panels
  • pq: duplicate key value violates unique constraint “availabilities_dayoff_unique”
  • Remove “Discount: applied:” line item from info_for_team liquid tag
  • Disabled BOOKING UPDATED BY CUSTOMER email is still being sent
  • Spots Settings: add a “Select All” checkbox to the top of the “Apply to” menu
  • Add user email length constraint
  • pq: duplicate key value violates unique constraint “index_pending_charges_on_pending_date”
  • Do not send booking notifications to Archived Teams
  • Allow passing of empty value for Service/Extra icon
  • Renaming references to “Customer Comment” to “Customer Note”
  • Extend assign teams API to change booking duration
  • List of Team Availabilities for a Date Period
  • Update Scheduler page to get Team Availabilities in one call in endpoint
  • Change API to allow update Customer Profile note without changing other customer attributes
  • Issue with UTF-8 validation on Import Customers page
  • Disable UTF-8 validation for Customer Import
  • Add unique client and client_schema IDs
  • Timezone issue with date pickers on Sync Quickbooks modal
  • Make “feature is not active” message more descriptive
  • Add Location name to Spots Settings History Modal
  • New Scheduler – Add Hours and Workers info to List view
  • “Teams Available” window: too many backend calls
  • Daily Spots settings Teams Available modal shows teams that don’t belong to a Location
  • Re-Book Last Service does not work if Multi-Location feature was used for original booking but since been disabled
  • Time zone issue with Expiration Date on Discounts table
  • If you change Service Time via Scheduler, the Price Adjustment amount is removed from the booking
  • Unable to Change Time of Recurring Booking: booking date was 2017-05-08T12:00:00, not 2017-05-08T23:00:00
  • extra is undefined
  • Contents of discount Popover spill outside of container
  • Cannot read property ‘flexibility’ of undefined
  • New Scheduler: Team Availability for Tomorrow is not displayed for GMT -7:00
  • Change wording of Sales Tax notice on Subdomain tab
  • Fix typo on Step 5 of Setup Wizard
  • When you save changes to an existing Frequency, its display order is changed to 0
  • Error trying to Book Again: team (102) cannot be assigned to the booking
  • null is not an object (evaluating ‘$scope.$parent.$parent.bookingCount=data.count’)
  • Enhancements to Create Location Wizard
  • Search: change limit, offset to offset, limit
  • Add limit/offset for history of Unsubscriptions
  • Request 50 records of Change History and replace infinite scroll with manual paging

April 2017

  • Next recurring booking not created when booking linked to redeemed giftcard
  • Import customers with multiple addresses
  • Link email logs to the related Booking’s Change History modal
  • Add new columns for Teams Earnings to the Booking Download: Team Earnings Amount and Team Earnings Summary
  • Deauthorize Google Calendar and send notification email on “Invalid calendar” errors
  • Ordering for extras always returned as 0 in services helper
  • Incorrect number of days returned for spot because of DST
  • {{ service_date_was value }} passed to TEAM BOOKING RESCHEDULED NOTIFICATION is wrong
  • Add missing “schedule_date” to preview data
  • team.title, booking.rating_text, booking.rating_comment not rendered for Rating Feedback email
  • Value for liquid tag service_date_was is incorrect
  • Sort User’s Email and SMS Preferences by Name
  • Add new column for Date Created to the Customer download
  • Price Adjustment Amount field always tries to set value to positive
  • Team Profile does not always show wages records even if Team has them
  • Javascript not being escaped properly on Future Booking modal on active bookings page
  • Display Unpaid Balance for credit card bookings on Customer profile Charges tab
  • Re-Book last service modal opens when you click Enter key in any field
  • Extras are displayed in wrong Display Order on staff and customer portal booking form
  • Team payment page: tries to infinite refresh
  • Browser Back button functionality acting strange
  • New-Scheduler: Team column on Horizontal View is too wide
  • Unhandled error trying to send Manual Confirmation email to different email that is unsubscribed
  • Forecasted recurring booking’s details modal does not show accurate price
  • Back button does not do anything on Gift Card Widget page
  • When user is redirected to different page in customer portal, they are not scrolled back to the top
  • Show message in customer and team portal to user to reload the app if new version of the web app was deployed
  • Info and Success growl messages in team portal should disappear when you visit another page or after 3 seconds
  • Cannot create default availabilities in team portal with all days as ‘day off’ (on setup availability page)

March 2017

  • Add filter to Active Bookings page to hide Completed Bookings
  • Allow Staff to use Book this Again at any time
  • Allow Carpet form accordion panel to show Pricing Parameters , Workers and Hours
  • Change Account Owner Info section on Subdomain to be a dropdown list like in Monitor Profile
  • Minor Changes to Customer Import modal
  • Show message to user to reload the browser if new version of Launch27 was deployed
  • JS error: Cannot read property ‘id’ of undefined
  • undefined is not an object (evaluating ‘settings.address.show_city’)
  • Change Discount Code Percentage validation error
  • Team Profile makes multiple calls to bookings endpoint when scrolling
  • Change Profile Pic buttons
  • JS Error: Cannot read property ‘google_analytics_id’ of undefined
  • Profile Pic not rendering properly for browsers with pixel ratio >= 2
  • Remove profile pics from list of Customers, Teams, Staff
  • Changes Log on Scheduler Booking Details modal does not use correct time format/zone for the Service time
  • If uploaded profile pic is too big, show max size in the error message
  • Add explanation for “Display this Service to Staff only” option on Edit Service form
  • Due amount on Payment Details page is not including the Tip (was including it in actual payment sent to team, but not in the read-only data displayed on the Payment Details summary section)
  • Make Re-Book Last Service button orange on Booking Form
  • JS error: onSpotChanged/onSpotFlexibilityChanged: undefined is not an object and unable to set property of undefined
  • Chrome scrolling bug causes Active Bookings infinite scroll continues to make calls to the API
  • Changes History does not show log for each Extra that is Removed
  • Show error to user if a Customer import is already in progress
  • Booking Details Modal is missing Month from Title in the team login
  • TypeError: historyEndpoint is not a function and Random }} next to amount of Refunded Cancelled Booking on Charges page
  • Edit Cancelled Booking page does not render custom dropdown field option text properly
  • Infinite Scroll issues in Chrome causing too many API calls
  • Charges History button is sometimes calling the wrong endpoint
  • Expression ‘{id: ctrl.booking.id}’ used with directive ‘suiChangeReport’ is non-assignable!
  • Add Team name to Booking Changes History log
  • Add status indicator to Changes Log modal
  • Warn user if currently connected QuickBooks Deposit account is not available anymore
  • Change wording of “spot has been taken” error message on booking form widgets
  • Display Growl Error Messages as relative positioning on Form widgets
  • Date and DateTime field labels need more bottom padding on booking form widgets
  • JS Error in Customer portal: ReferenceError: Can’t find variable: fieldset
  • Add “Create Booking” button to Customer Profile
  • Mark as Paid modal has amount 0 when there is a Late Cancellation Fee
  • “Enter some text…” placeholder is not visible on Premium Form Designer paragraphs
  • Optimize endpoint calls to make Premium booking form widget load faster

February 2017

  • Export Team Payment Data
  • Profile Pics for Teams, Customers and Staff
  •  Render Descriptions for Extras on the Premium Booking forms –
  • Add assigned team(s) to the email sent to Staff when a Customer leaves feedback
  • Import Customers asynchronously to prevent timeouts when there are a lot of records
  • Add booking digest to bookings search
  • Changes QuickBooks SalesReceipts and RefundReceipts to include Service name in line item descriptions
  • Bookings export: renamed “Amount Paid” to “Final Amount” as the name was misleading and really represented the booking’s final amount; added new columns for “Amount Paid by Customer” and “Amount Owed by the Customer”
  • Book this Again form loads the customer’s default address instead of the Booking’s address in the customer login
  • Client’s Google Analytics Tracker not being added correctly each time Booking/Gift Card Form Widgets loaded
  • undefined is not an object (evaluating ‘__gCrWeb.autofill.extractForms’)
  • Booking Summary amounts are inaccurate when Email value not decoded from querystring
  • URL to view Bookings Details modal
  • Cannot read property ‘opener’ of undefined
  • Clicking Add to Address Book for new customer on Booking Form does not work
  • Change validation of Website Url field to require http://
  • hide the Mark as Paid button for non-cc bookings if outstanding amount is $0
  • Email log looks like it has duplicate entries
  • Show async customer import message to customer
  • Add Refresh button to Daily Spots
  • Add View History button to Edit Service, Extra and PP pages
  • Add Service/Extra/PP name to Booking Changes History log
  • Overcharged on-stripe booking not displayed as overcharged
  • Add address fields to Team Edit Contact Info modal
  • Scheduler: Cannot read property ‘data’ of undefined
  • undefined is not an object (evaluating ‘model.settings.features.multiple_locations’)
  • Remember the selected Columns of Exported data so user does not have to select again later
  • Show Count on Customers, Staff and Teams pages

January 2017

  • Add support for Company Website URL Setting
  • Point the Logo Link to the Company URL Setting
  • Completely blocking off a Time Slot
  • Customizable Data Export for Booking and Customer Data
  • Allow to set Default Spots by Day
  • Support for Multiple Addresses
  • Scheduled Task that emails Support if there are Unassigned Bookings for Tomorrow
  • Add Launch27 company address to Client Invoices
  • Bookings missing from Calendar Day view when team has more than 100 bookings for month
  • Move Growl messages a little lower down the page
  • Change Server error message on carpet form when no Service is selected
  • Gift Card widget’s Thank You modal backdrop does not appear immediately after submit button is clicked
  • Login issues on iOS Safari Private Mode related to localStorage
  • Add label to indicate if this is the first booking in a recurring series
  • Growl success message that’s displayed in Setup Wizard after code is sent to developer is misaligned
  • Create Location wizard shows hourly service attributes even when service is not Hourly
  • Pass date, from & to params to the Active Bookings page
  • toState.data.nextState is not a function
  • Ask User to enter Timezone and Currency during Client Setup Wizard
  • Split gcal sync worker in two
  • Allow refund amount less than $0.5
  • Replace booking_url with client.website_url in GIFTCARD RECIPIENT CONFIRMATION email template
  • Improve performance of free-text search sql queries
  • Display ‘-X jobs available’ on Daily Spots page in red instead of green
  • Add More button should only add 1 row instead of 3 rows when editing a list field on the Add/Edit Custom Field page
  • Previewing an SMS template does not render line breaks properly
  • When adding new Custom Quote Field, the field is added to the top of the form
  • Display error when using Save and Send Message modal if selected email template is disabled
  • Customer portal booking form: Change “spot has been taken” error message to say “The time you chose is not available any more. Please choose a new time.” instead
  • mailgunForward: invalid memory address or nil pointer dereference
  • Add Send Invoice option for non-CC bookings on Charges page
  • JS error on Welcome page after cancelling your only booking
  • Remove Requried field asterisk from Discount Code field for new accounts
  • Custom Fields that are hidden on tenant forms are still displayed on the Staff Forms
  • Disabled button feature from the Login page does not always work
  • Display asterisks for required fields on the Premium Form
  • Change Warning message in Change Email modal for Staff users to: “Changing the Staff’s email will change their account status to ‘Unconfirmed’. They must confirm their account again to log into their account. Please make sure that the New Email is a valid email that they can access to confirm their account.”
  • Payment Date issue with marking Non-CC Bookings as paid that is related to timezones
  • Make Team Profile same layout and styles as Customer Profile
  • Clicking ENTER key on Subdomain tab opens the Company Logo file upload modal
  • Premium Form custom field heading visible even if there are no visible fields
  • Quote Form email field does not show client side validation when email is in wrong format
  • Rounding Error in UnPaid Balance of non-CC booking (too many decimal places displayed instead of rounding to two decimal places)
  • Javascript error: Booking cleaning form: Illegal constructor
  • Subdomain page does not scroll to validation errors on submit
  • Issue with Charges page not displaying Stripe API key errors
  • Cannot create booking for existing Customer that is missing First and Last Name
  • Minor changes to how ID’s and timestamps are passed to Zapier for global app review process
  • is_new_customer should be false after first booking is completed
  • Show Other Months in Service Date Datepicker on Customer Booking form
0 found this helpful