November 25, 2020 - version 2.20.74 - Ongoing maintenance and feature updates
Here you go!
- Make it clear to the developer (me) that we aren’t using the bundled meeting js
- Improve the pre-meeting notes so it doesn’t break stuff
- Clean up the special-case logic for a google_event PATCH of the meeting source at the meetings resource URL
- Fix the JS error when clicking on the meeting template agenda tabs.
- Auto-update the Record tab on the meeting home.
- Update locally-added agenda items in Notes tab -- no more blank items
- Update Notes tab on meeting home based on incoming changes
- Wrap a try/catch around the lucid_api_v1_events routine.
- Super minor tweak on meeting report.
- Correct path to windows timezone mapper in a few module_load_include calls
- Slight tweak to API to only show organization rooms you can access.
October 22, 2020 - version 2.20.70 - Ongoing maintenance and feature updates
Let's see what we've been up to over the past several weeks. Overall I'd say these are mostly about improving the UX flow to remove friction points. There are a couple of minor features, but they all fall under the "make it easy for people" rubric.
- Simplify the signin process for people invited to meetings via Outlook (primarily)
- Fix a preventDefault issue I introduced with late-loading tables of people in rooms and accounts.
- Restore AIs to the meeting record agenda items, treat note and AI display more uniformly, tighten up spacing.
- Work to remove double encoding of meeting names on the calendar displays.
- Restore correct descriptive string to Outlook add-in manifest, v 2.2.1
- Add Outlook add-in version 2.2.1
- Some tightening / cleaning up of the meeting record.
- In meeting tweak for the prev/next buttons.
- Add a Notes tab to pending (not started) meetings.
September 25, 2020 - version 2.20.64 - Ongoing maintenance and feature updates
This is mainly a quality of service update, with improvements to the global site activity reporting, restoration of some user-critical paths for action item interaction, and some UX optimization.
* Quality tweaks on the AI Edit button styling and single quote removal on the calendars.
* Tweak the display of action item status badge (tags) with a bit of top margin.
* Restore edit-in-place for dashboard AIs, plus a couple tweaks.
* Allow enterprise admins to replace or add guides to the support menu.
* Do not present inactive rooms for user role assignment.
* Do not present inactive rooms as viable scheduling targets.
* Add documents to the site-level charts in the site manager.
* More improvements to the site activity charts.
* WIP on site manager activity graphs.
* WIP on site activity reports -- add timeframe selector.
* WIP on improving site activity charts.
September 21, 2020 - version 2.20.59 - Ongoing maintenance and feature updates
The most notable improvements in this update are:
1) Better results for SOLR full-text document searching
2) Mute Turbobridge callers by default when joining a meeting call
3) A few updates to the Site Manager for enterprise admins
The details:
* Convert system usage charts from monthly to weekly and set the timeframe to 60 days.
* Allow enterprise admins to get/set the site email address.
* Extended the muted-by-default to update existing bridges when the meeting starts.
* Make the full-text search results more forgiving in the case of invalid unicode and the like (case 11151)
* Use multibyte-safe substr when creating abstracts in full text search (case 11151)
* Fix malformed html textarea markup that caused the recess widget to fail on D6.54
* Mute Turbobridge callers by default when they join a conference.
* Updates to o365 addin icons per MS review
* Improve our modifications to the HTML5 elements module.
* Clean up the logging of SOLR errors in the case of a 403 from s3.
* Indexing improvements
* Simplify indexer's access to s3 by using s3_key field.
* Do not redirect anonymous users to the login page (user page instead).
* Fix some to/from specifiers for Pandoc.
September 6, 2020 - version 2.20.56 - Ongoing maintenance and feature updates
Summary:
* Brandable meeting record exports (PDF) with custom headers and logo
* Improve the first-time user experience
* Improve client-side validation for various user interactions
* Miscellaneous bug fixes and improvements
Change details:
* Restore the ability to toggle notes and action items between each type.
* Terminology update.
* Move note and todo delete onto the object view.
* A bit more to transition a few links from nouns to verbs.
* Improve the room filter display for user global records.
* Remove vestiges of the click-to-edit for notes, etc.
* Allow site managers to change the site name.
* Slight style tweak to accommodate dark mode.
* In-meeting display tweaks.
* Slight lucifier optimization tweak for dashboard event calendars.
* Make the user Tag records display consistent with the Notes display.
* Fix some to/from specifiers for pandoc.
* Needed to add a can_add_organization gate on a couple links.
* Some logos are shorter than 90px, so don’t force the height to 90 (use max-height).
* Add messaging about upgrading to a paid account for logo-branded records.
* Wording tweak for the Teams / Individual Plan.
* Some billing plan name swizzling.
* Make it easier for new users to add their first meeting.
* Do not notify myself if I’ve just muted myself (case 11141).
* Fix improper string comparison to use === instead of == (case 11140).
* Fix a typo in the account pdf export settings.
* Merge
* Get fallback defaults properly on account pdf settings form
* Fix a 500 error that occurred when a user rescheduled a meeting series so all events were in the past.
* Create a replace-drupal-core script that does what it says.
* Create patches for the bootstrap.inc check_plain() changes.
* Itsy bitsy bling on the signin page.
* Apply wordsmithing changes to the sign-in and password reset pages.
* Just a slight wording tweak on sign in page.
* I accidentally put a few default English strings in Spanish on my dev site. Oops.
* Fixed some wording and behaviorial consistency on the password reset page.
* Let’s try adding HTML5 client-side validation for required fields.
* Slight messaging tweak on the sign in page.
* Tweaks to the sign-in, sign-up, password reset language on those pages.
* Starting to work on the new Guest log-in issue.
* Remove the first_name token from the new user activation email because we often don’t have a first name and the fallback is ugly.
* Very minor WIP on pandoc conversion to XXX (pdf).
* Added a user display option that allows people to set their own DB query limit.
* Add a comment so I remember why we did a certain thing.
* Hide the actions column on phone for user note and tag records.
August 19, 2020 - version 2.20.53 - Ongoing maintenance and feature updates
This update includes a handful of small changes and a re-enabling of screen sharing by Glance in some browsers. Glance is now supported on Mac OS and Windows in chromium-based browsers (including the new Microsoft Edge), and in IE 11.
- Replaced the word "View" with "Visit" in links to rooms or meetings.
- Temporarily disable edit in-place for notes and action items in various large listings.
- Add room selection to the pagination widget for the user records list.
- Fix bug that prevented non-manager meeting facilitators from starting a meeting.
- Sort some lists by time of item creation, rather than update time.
- Update the Glance screen-share integration, and restore the "Set up screen sharing" button within a meeting, for presenters and facilitators using supported browsers.
August 10, 2020 - version 2.20.51 -- Ongoing maintenance and feature updates
This update is primarily focused on improved interactivity with larger data sets (of all sorts of data). Lots of attention on loading data as called for, vs. preloading for quicker user interaction, simplification of some data displays, and some additional data views. In addition you'll find the usual set of minor fixes and polishing.
- Move meeting change-date logic into model. Prep for case 11002
- WIP on rework of meeting reschedule (case 11002)
- Slight tweak to room tagged notes.
- WIP on the room notes tab.
- Restore the past meetings pager (for history page) and a couple other cleanups.
- Remove unnecessarily scary warning class on a couple form fields.
- Use new meeting reschedule routines in UI change date form (case 11002)
- Polishing the apple on the room notes tab.
- Apply meeting move restrictions to room calendar (case 11002)
- Apply meeting move restrictions to dashboard and full calendar (case 11002)
- Apply meeting move restrictions to API meeting PATCH (case 11002)
- Merge changes restricting move of a meeting past another meeting in its series
- Merge changes restricting move of a meeting past another meeting in its series
- More apple polishing for the room home, etc.
- Bug fix: meeting->changeSchedule would set timezone_name to null when not pro
- WIP on room information tabs.
- Remove room-mapping code for synchronizer (case 11114)
- API: update meeting series documentation to clarify that duration must be supplied
- Use meeting->changeSchedule in ajax resize routine
- Stringify a few LM_DATE and LM_TIME constants
- Darken the hover for dark mode.
- Flex the page size for large data sets on the org room and people tabs.
- Establish a user item limit of 350 rows for footable data (for now).
- Fix bug in getting the size of data for rooms and people in an org
- Correction in form validation for scheduling a meeting
August 5, 2020 - version 2.20.49 -- Ongoing maintenance and feature updates
- Slight tweak to limit who can download motions.
- WIP on room view for observers and org members with view-only access.
- Improve the read-only nature of the room Observer role.
- Remove pager div from unpaginated past meetings table
- Guard against member-less todo (note)
- Delay people tab rendering until tab click.
- Delay room tab rendering until tab click.
- SIDR update to the latest released version.
- WIP on UI performance for the user meeting records page.
- Allow any member who can schedule in a room to start meetings in that room.
- Minor markup change to meeting source notice on attendees tab
- Some WIP on reducing individual calls to Lucifier for meeting state
- Give variable_get that second argument it so strongly desires
- Let's not suggest "API Reader" as the name for a read/write token.
- Don't auto-delete api_hooks when api_token is deleted; do auto-delete both when
- Add a little bit of space at the bottom of the sidebar nav.
- More WIP on reducing calls to Lucifier by getting multiple entities at once.
- API: Add ability to filter collection of hooks by target_url (case 11127)
- API: return result of delete()
- API: don't create duplicate hooks (case 11127)
- API: make the "exact match" test for a hook more exact (case 11127)
- Mostly meaningless commit after work on sidr performance this morning.
- Fix and unflashed white color while loading the sidebar menu.
- Allow calls to getRecordedConferencesForMeeting to omit the second parameter
- Add a loading indicator for footables taking their own sweet time about rendering.
- Ensure that lucid_admin_templates is an array before trying to implode() it.
July 31, 2020 - version 2.20.48 -- Ongoing maintenance and feature updates
Besides the usual quality fixes, the main development theme remains pulling all the Office 365 synchronizer pieces into place.
* Big WIP on loading room tabbed content on click, rather than preload.
* Add version 2.1.9 Outlook add-in
* merge akf into default (Rework "Edit Meeting Series Schedule" form)
* Performance tuning while looking at data fetches from Lucifier.
* Disable the FC global drag listener so we can properly edit dashboard notes and AIs.
* Remove the cache prefetch initialization.
* Lucifier: only preload the core entities updated within the past 90 days on startup.
* Ensure we can save an AI when editing from the dashboard page.
* Restored CTRL+b as it should be in our ckeditor keybindings.
* Make dashboard notes and AIs editable in place.
* More dashboard notes improvements.
* Do a better job with notes that are locked from editing.
* Fixes for the hook cleanup. Cut-n-paste silliness.
* WIP on hook cleanup for account downgrades.
* WIP on cascading delete for api hooks.
* Set the synch_organization_created TS on account creation or upgrade.
* Add synchronizer to AppDomains in o365 add-in manifest
* Set higher rate limit for synchronizer user on setup (case 11066)
* Separate can delete docs from can manage room (Sains).
* Looks like canView and canManage attachment access tests were reversed.
* Change the test for a valid account passed into our user_access function.
* Fix access to account_id that wasn't yet set.
* use a placeholder for the app_id in the version 2.1.8 Outlook add-in manifest
July 20, 2020 - version 2.20.44 -- Ongoing maintenance and feature updates
There's a bunch of stuff here, but the main thrust is putting updates in place so we can deploy the two-way synchronizer that keeps Lucid and MS Office 365 Outlook in sync.
* Move the audio mute/unmute from F1 to Shift+Esc
* Some minor WIP on the room past meeting history.
* Fix routine that spreads out priority ordering of meeting templates in a room (case 11117). Bonus fix to room cascade delete.
* Outlook synch crons -- trigger updates on synch server
* Comment out synch crons -- need to generalize target (case 11099)
* WIP on O365 integration deployment (case 11099, case 10981)
* WIP on update to office365 addin
* API: fix bug where meeting_series PATCH would not set until_ts if timezone was not provided.
* API: documentation updates
* Fix an undefined attribute. Wasn't actually breaking anything, just sloppy.
* Make the annual pass effective period more obvious to the purchaser.
* Send fewer unnecessary meeting_series_scheduled notifictions
* Clean up the lazy-load / reset logic in Lucid_Model, some more
* Clean up the lazy-load / reset logic in Lucid_Model
* Add dtstart_ts to recurrence/meeting_series API (case 11112)
* Clear dependent lazy_load attributes when fields they depend on change!
* WIP on correcting the meaning of start_ts in a recurrence (case 11112)
* Calculate true start_ts for a recurrence taking added and excluded dates into account (case 11112)
* Use the correct time when comparing meeting series patterns for potential TB conflicts (case 11112)
* Recurrence Nth Occurrence takes into account start_time may not be time of first occurrence, in case of exceptions.
* Add a first_ts to meeting_series that reflects start of first meeting, even if that meeting has been rescheduled before the start time in the recurrence rule.
* merge o365integration into default (preliminary add-in update)
* Small start to only return paid organizations to the synchronizer.
* If we're gonna have default policies for organizations it makes sense to set them upon creation.
* Change name of the organization_created API hook to indicate it's for orgs that can use the synchronizer only
* Append pinned note tags to the Records droplist
July 5, 2020 - version 2.20.42 -- Turbobridge UI updates
Comments:
We're rolling back some our (purported) improvements and adding a couple others we think will work better. The previous set wasn't quite magical enough, so this puts a bit more control in the hands of the meeting host and provides more info to call participants about what's happening when hosts mute or unmute them.
Changelog:
- Remove TB speaker queue integration and add some user notification about admin muting.
- Turbobridge: Stop using CTRL for push-to-talk and add F1 as mute/unmute toggle.
July 2, 2020 - version 2.20.41 -- Ongoing maintenance and feature updates
Comments:
Most of the changes in this release are the result of our continued performance profiling and work to remove scalability blocks. We also made more update to the Turbobridge UI integration to support calls that only support one call modality (e.g., only web calls permitted or only SIP, etc.). It's a bit of an edge case, but some people prefer to de-feature the number of call options, rather than allow more.
Changelog:
- API: add missing access for synch_outlook_mailboxes
- Remove unique key from lucid_statistics schema; this key was removed via db update in 2014.
- Guard against notes that do not have a room. Was killing the event_ts cron on meet.
- Add a comment about intentionally falling through a switch case.
- Guard against missing content-type header when retrieving files from back-end server
- Tweak the Billing tab display for annual invoice accounts.
- Fix content-type setting for uploaded images, and improve a lucifier error message
- Improve support for Int'l only bridges and for single-audio TB options in general.
June 30, 2020 - version 2.20.40-- Ongoing maintenance and feature updates
Comments:
We've been working to update all our translatable strings, so that's mostly complete. We're also continuing work on the Office 365 synchronizer, which means development-driven API updates. For my part I've been focused pretty tightly on performance at all levels, so there's been a lot of inspection, tracing, and tuning regarding that.
Changelog:
- Add the entity ID to the ACCESS DENIED message logged by the private API.
- Stop auto-linking custom audio because we already do that in-meeting.
- API: accept and convert start and until times for a meeting series when provided as timestamp or date
- API: documentation tweak (case 11068)
- Fix the sorting for audio options.
- Update translatable strings.
- Fix references to undefined arrays in API events.inc (csae 11081).
- Fix a syntax error in events.inc (plus some WIP, currently no-op)
- API: Add via_outlook_synch to events when the triggering action was made by the synchronizer.
- API: provide the via_outlook_synch hint only to hooks requested by the synchronizer user.
- API: Add outlook synch hint to events when the Outlook Add-in OAuth client was used for authentication
- Cronify the rest api event notifier.
- Remove Outlook room mapping for a room when the room is deleted. (case 11083)
- Merge When_cleanup into default (case 11067)
- API: corrections to synch_outlook_room_map (case 11083)
- Correct a couple of things that caused rooms to be left behind when their account was deleted (cas
- Make the room_ids in synch_outlook_room_map be integers.
- Update the phone number in our Goodbye email
- Fix typo in the api docs.
- API: fix erroneous calls to DateTime->setTimezone (case 11085)
- Eliminate excessively long loop to get the next occurrence in a series. Could be better, but it was works
- Save a few cycles when checking whether an occurrence is the last in its series
- Only send attendee_added and invitee_added hook notifications if we've already notified about me
- Removed deferred action for meeting->touchMyself(). This may make way more sense.
- WIP on speeding up meeting startup time.
- Put a link to the meeting history in the room Meetings tab drop-list
- API: WIP on user-mailbox API for Outlook synch
- Correct the cluster_proxy file_manager's behavior on missing S3 file (case 11088)
- Add some caching for access check functions. It's about a 60% to 65% hit rate, which seems worthwhile
- Take "Change Role" and "Remove Attendee" off menu for series invitees in an upcoming meeting;
- Some perf tuning to improve room home loading time when viewing a list of meetings
- Enforce an order on getMeetingsforSeries
- Fix invalid variable reference in access function.
- API: WIP on synch_outlook_mailboxes.
- API: add pagination to synch_outlook_mailboxes
Comments:
We're doing some work on the Turbobridge integration, driven by support conversations. In particular, the ability to mute or unmute all callers and mute integration with the speaker queue. The problem we're addressing is the increase line noise with more people working from home with kids, dogs, etc. People are looking for more controls. We'll probably do a bit more refinement work in a future update.
Changelog:
- Fix bug when adding an action item outside a meeting (close date bug).
- Add mute all and unmute all for TB audio
- Add ctrl key down/up for temporary unmute for TB audio
- Integrate TB audio muting with the speaker queue
- Lengthen bridge.description to 2048 to accommodate Teams URLs
- Translation refresh readiness
- Set per-meeting custom audio via the REST API
- Set per-meeting_series custom audio via the REST API
- Autolink URLs in custom audio
- Improvements to custom audio bridges in general
- Some minor improvements to dark mode
- REST API extensions to support the O365 add-in work
May 17, 2020 - version 2.20.35 -- Ongoing maintenance and feature updates
Comments:
These are just some bug fixes for the calendar synch from Google.
Changelog:
- Google synch: for individual meetings, if there is a meeting_series_id, use the meeting series URL instead of the individual meeting URL.
- Google sync: bug fix (syntax error).
- Google sync: Skip event and unsubscribe from watch when user is not found
May 15, 2020 - version 2.20.33 -- Ongoing maintenance and feature updates
Comments:
- Work on Google sync
- Work on API fixes to support Office 365 integration
- Work on Action Items
- Work on tabular data displays
- Work on meeting series display
- Work on Outlook add-in "do not prompt" ticket
- Work on downloading motions in a room
- Some bug fixes
Changelog:
- Add nginx config for /office365 path -- allow framing
- Prevent google calendar synch from failing on a meeting [series] source for a deleted entity
- Apply extendedProperties to google event when a google meeting_source is created
- Fix a broken meeting delete link action.
- Add extendedProperties to a Google recurring event based on a meeting_series_source
- WIP on google calendar synch
- Recurrence 'events between' window includes start date. Fixes FB 11041
- Fix handling of Until date in meeting schedule form (case 11039)
- Add version 1.1.9 O365 add-in.
- WIP on Google calendar synch: corrects some failures in processing a "split" recurrence.
- WIP on editing AI close dates.
- More WIP on editing an AI close date and some table display improvements.
- Make the notes display consistent with the action items display.
- Add some Invitation Sending restrictions for Outlook meetings.
- Tweak the invitation messages on the meeting attendees page.
- API: fix a bug wherein changes to duration of events in a meeting series weren't updated on alread
- Improve synch of google calendar events.
- WIP on meetings vs. meeting series updates, prompts, and attendees display.
- Add a required $this-> when calling an instance function, duh.
- Tweak the attendees display to remove the No Email Sent message for meetings with invites
- Tweaking various display of personal and room records.
- First pass at motions download in a room.
- Improve the notes and motions room downloads to respect the user's date range filter.
- Google synch: always set extendedProperties when sending meeting updates to Google; ensure e
- Move the meeting series invitees update to the meeting Manager view.
April 28, 2020 - version 2.20.33 -- Ongoing maintenance and feature updates
Changelog:
- API: set triggering_event on deleted meetings when rescheduling a series via the API.
- Versioned office365/addin paths. Update script to be tested via deploy to test
- Restore the office365addin files to version 1.1.5
- Bug fix in rarely-displayed button
- Add Elise's suggestion for an 'End meeting' button on the last agenda item.
April 22, 2020 - version 2.20.31 -- Ongoing maintenance and feature updates
This is all WIP for the continuing Outlook 365 integration project.
Changelog:
- Update en-gb email templates to match the en templates.
- API: give the synchronizer higher usage limits, by decreasing the rate limit timeout
- Bug fix in integration auth; was triggered on delete.
- Minor tweak to increase the number of per-meeting attendees during a trial.
- API: Add outlook_room embed to rooms endpoint. Just for the Outlook add-in
- Minor UI tweak to convert buttons to a drop list on the template list page.
- Add SVG icon display to the template gallery flipcards.
April 5, 2020 - version 2.20.27 -- Ongoing maintenance and feature updates
Comments:
Most of this update was focused on large enterprise needs, primarily in site-level config and scalability, with a couple bug fixes tossed into the mix.
Changelog:
- Do a better job of handling rooms with meetings, but none within the past 12 months.
- Update SameSite-related patch in drupal init script
- API: add triggering_event: meeting_series_scheduled hint to deleted meeting resource
- Add the ability to configure an email footer for outgoing email messages.
- Update en-gb templates to include the new email footer option.
- Tweak the room tab past meetings table to exclude upcoming meetings.
- WIP on email footer: put the site logo after, not before.
- WIP on email templates.
- Fix undefined variable reference bug that surfaced errors to Loggly.
- WIP on org-level note retrieval via the REST API.
- WIP on API retrieval of notes for an organization. Some tag filtering.
March 29, 2020 - version 2.20.25 -- Ongoing maintenance and feature updates
- WIP on Zombie account detection and removal
- Make date-filtered tabular listings more obvious
- WIP on the room meeting history page
- Add SameSite browser checking handle older chrome browsers
March 26, 2020 - version 2.20.24 -- Ongoing maintenance and feature updates
Comments:
More work on the synchronizer API support, plus a number of small support-driven fixes and tweaks. We're also continuing work on UI scalability for very large, long-lived organizations that accrue a lot of data over time.
Changelog:
- Minor behavioral and messaging tweak for the past/recent meetings display.
- WIP on fixing up the room people tables.
- Tweak on meeting list in room
- WIP on improving the past meeting display for rooms.
- Add more logging and handling for the missing member object issue.
- Add a little bling to the See all rooms link.
- Some WIP on footable pagination.
- API: correct an error message in the synch_graph_access_tokens endpoint
- Add a itsy bitsy arrow on the 'See all rooms' link in the left nav.
- Add a link to the API docs on the Authorize New Applications page.
- Make the pagination more sensible for large data sets with large user pagination settings.
- Minor fix to the room and account people upload to allow adding people.
- Prevent observer votes from being recorded server-side
- Don't show observer voting options, and don't facilitator option to record votes for observers
- Restore ability of facilitator to manually record attendee votes
- Quick fix for error on room member that refers to a nonexistent (?) member
- Add some explanatory text and nada to the RSVP boilerplate UI. For site managers that aren't us.
- API: Ensure the action items also allow you to embed tags and update the docs to reflect that.
- Purify the access check functions by removing the exit for lucid/missing redirects.
- Remove the from_api access check param (and the need for it).
- Fix the account missing blank page (now access denied).
- WIP to improve zombie account listing.
- API: update documentation for hooks
- API: add option to filter hooks by organization ID or room ID
- Add a "delete default room" form for synchronizer configuration (case 10985)
- API: allow the synchronizer to create hooks (case 10986)
March 22, 2020 - version 2.20.21 -- Ongoing maintenance and feature updates
Comments:
We're continuing to expand the API to support the full, two-way integration between Lucid Meetings and MS Outlook 365 calendars (for linked meetings).
Changelog:
- Fix SQL ambiguous reference to create_ts.
- API: correct synchronizer access to meeting_series meeting_at and meeting_by_sequence endpoints (case 10986)
- Add a function to revoke API tokens by name, to be used when Google has approved our additional scope
- API: add a 'utility' endpoint to provide plain-text versions of input, for comparison
- API: change "utility" to "transforms," add docs (case 10981)
- API: add access file for "transforms" (case 10981)
- Cleaning up the sidebar nav items.
- Link to the New User Guide in the support nav.
- API: remove a couple of files I thought I'd removed already
- API: add the 'transforms' file, for real (case 10981)
- WIP on putting Chosen on the timezone selector. Still need to re-work the modals though.
- Site manager tweak to include account_member role information when viewing members
- WIP to identify zombie accounts on meet and provide an easier delete path for cleanup.
- WIP on management of synchronizer rooms (case 10985)
- WIP on synchronizer setup UI (case 10985)
- Remove a stray character showing up in cron output (cases 11011, 11013)
- WIP on room mapping editor for Outlook synchronization (case 10985)
- WIP on outlook room config
- First cut at admin UI for outlook synch rooms (case 10985)
- Add the ability to edit meeting attendee company name, if permitted.
- API: endpoint for synch_outlook_rooms, aka "rooms to monitor" (case 10984)
- Create separate links in the left nav for visiting org home vs. room list modal.
- Tweaks to Outlook synchronizer config and API (cases 10984, 10985)
- Add breadcrumbs to admin synchronizer page(s)
- Add (temporary) separate permissions for editing synchronizer room map
- Add synchronizer default_edit form (case 10985)
- Initial filtering of room notes by tag text.
- Minor API doc update for the room notes tag filter.
- Fix typo on left nave calendar link.
- Allow managers to transition private rooms to open rooms.
- API. Switch note tags from a property to an embed. Update docs to match.
March 14, 2020 - version 2.20.18 -- Ongoing maintenance and feature updates
Comments:
The point of pushing this release out now is to get the SameSite=None patch (to support the Outlook add-in) out
Changelog:
* Add patch to add SameSite=None when setting cookie for the user session
* API WIP on retrieving notes in a room.
* Switch out a nada icon.
* Fix the past meetings history page for rooms that have been quiescent for more than 12 months.
March 12, 2020 - version 2.20.17 -- Ongoing maintenance and feature updates
Changelog:
- Remove the optional password field from the add your organization form.
- Updated manifest for Office 365 addin
- Simplify the room listing to facilitate easier browsing and address UI scalability.
- Load the organization room list in a modal.
March 6, 2020 - version 2.20.13 -- Ongoing maintenance and feature updates
Comments:
We put a change in the next release to re-enable editing of a meeting series schedule after the series has ended. Typical scenario being, the user wants to extend the series. It turns out the reason we disabled that was somewhat indirect -- we were removing the ability to mess with a bunch of things on past meetings, prompted by Elise's noticing that when you do that, you don't get prompted to send invitations again.
We added some little improvements -- when you extend an "expired" meeting series you will land on the next upcoming meeting, instead of the past one you started with, and I added a prompt to re-send the series invitations to the success message.
Bug fixes:
User-visible:
* Fix JS error after adding a new member to an organization. I
introduced this when removing footable SPF for some tables.
* Remove the optional password field from the add your organization form.
* Add "Add a URL" to agenda item editor for meeting templates
* Correct the download behavior for link attachments in the meeting template editor
* Fix broken facilitator guide upload for meeting template in a room (case 10999)
* Fix up the Add Meeting list in the top nav. Was missing some.
* Tune the permissions related to who can edit post-meeting content.
* Correct an error in recurrence descriptions, was putting wrong start date in invitation emails.
* Delete integration links when the associated integration_auth is deleted via drupal-side code; corrects a situation where Bascamp mappings were repeatedly lost.
Not user-visible:
* Stop calling the fullcontact API (issue with a google signup).
* Small change to set the member_id before calling fullcontact.
* Fix a bug found by inspection while performance profiling.
* Fix a little array merge bug I just introduced.
* Fix a user_access check.
* Fixed a user delete bug and made related changes associated with cascading deletes.
New features and changes:
* Improve UI for selecting timezone when scheduling or finding a
meeting time. (Add the chosen() widget to the timezone selector
for scheduling or finding a meeting time.)
* Add an attendance download button to the past meetings history page.
* Restore ability to change the schedule of a meeting series that has ended
* Restore the old behavior of account links going to the organization overview page instead of the rooms page.
* Allow meeting participants to edit post-meeting data under more circumstances
Subscriptions and Billing:
* WIP on allowing end users to to change their subscription plan.
* For enterprise billing count organization members instead of room members.
* WIP on showing billing for various org types
* More WIP to integrate the fixed-price business plan
* Cleaning up the personal and business flex upgrade / downgrade paths.
* Loosen up the ability to manage an account in dunning, so people can actually update their credit card.
* Only record active organizer for a meeting starter if that person is a manager in one or more rooms.
Performance:
* Add just a wee bit of manual in-process caching to reduce DB calls.
* More WIP on UI scalability. Create a separate page for large amounts of meeting history.
* WIP on UI scale.
* Minor WIP on performance for larger tables of data. Such as the org home w/tabs.
* Some WIP on UI scalability (footables mostly).
* WIP on the room-level meeting attendance report. A small step forward.
* WIP on user-perceived performance improvements for rendering the room list for an organiztion tab..
* Cache failure to find room member so we don't keep trying during a single page load.
* Remove static caching of access results (now in user.inc).
* Cache user access checks used by the access functions.
* Do not include the delete modal on room meetings page.
* Optimize the getting of followups to-be-sent for large numbers of meetings (room meetings page).
* Cache the results of user access queries in a give page session to reduce excessive user_load() calls.
* Do not check lucid forms for captchas. Excessive SQL queries.
Chrome extension:
* Add the calendar.readonly scope to our Google auth list.
Office add-in
* Update to the Office 365 add-in
* API: Add windows_timezone to recurrence resource fields. (Case 10994)
* Add a routine for getting the Windows zone for an IANA timezone name (case 10994)
* Add a mapping from IANA to Windows time zones. (Case 10994)
* API: Allow Synchronizer user to look up meeting sources by type and ID, or by meeting ID, independent of member_id. (case 10982)
* API: Allow Synchronizer user to look up meeting series sources by type and ID, or by meeting series ID, independent of member_id. (case 10982)
* API: bug fix for synchronizer access to deleted attendee
* API: Extend synchronizer's search for a user to impersonate (case 10982)
* API: Extend synchronizer impersonation; if meeting lacks facilitators, get a room manager.
* API: merge synchronizer access work into default
* API: add source_data to meeting_series_source POST; was not being saved (case 10981)
* merge
* API: Include source_data with embedded meeting_source, meeting_series_source
* Add full meeting_series_source to meeting_series POST
* API: add documentation for including a meeting_source when creating a meeting
* API: quick addition of full meeting_source (with data) to meeting POST
* API: add start_time, end_time to deleted_meetings
Code cleanup:
* Remove an unnecessary reference to global vars.
* More consistent use of account_member::makeXXX functions.
* Minor tweaks while doing some performance review.
* Correct the download behavior for link attachments in the meeting template editor
* Update to the Office 365 add-in
* Add "Add a URL" to agenda item editor for meeting templates
* API: Add windows_timezone to recurrence resource fields. (Case 10994)
* Add a routine for getting the Windows zone for an IANA timezone name (case 10994)
* API: Allow Synchronizer user to look up meeting sources by type and ID, or by meeting ID, independent of member_id. (case 10982)
* API: Allow Synchronizer user to look up meeting series sources by type and ID, or by meeting series ID, independent of member_id. (case 10982)
* API: add source_data to meeting_series_source POST; was not being saved (case 10981)
* Add a mapping from IANA to Windows time zones. (Case 10994)
* API: Include source_data with embedded meeting_source, meeting_series_source * Fix up the Add Meeting list in the top nav. Was missing some.
* Small change to set the member_id before calling fullcontact. * Add an attendance download button to the past meetings history page.
* API: bug fix for synchronizer access to deleted attendee
* Add full meeting_series_source to meeting_series POST
* API: add documentation for including a meeting_source when creating a meeting
* API: quick addition of full meeting_source (with data) to meeting POST
* Add the calendar.readonly scope to our Google auth list.
* Tune the permissions related to who can edit post-meeting content.
* WIP on showing billing for various org types
* Fix broken facilitator upload for meeting template in a room (case 10999)
* More WIP to integrate the fixed-price business plan
* Cleaning up the personal and business flex upgrade / downgrade paths.
* API: add start_time, end_time to deleted_meetings
* Add just a wee bit of manual in-process caching to reduce DB calls.
* More WIP on UI scalability. Create a separate page for large amounts of meeting history.
* WIP on UI scale.
* Remove an unnecessary reference to global vars.
* Minor WIP on performance for larger tables of data. Such as the org home w/tabs.
* Some WIP on UI scalability (footables mostly).
* Restore the old behavior of account links going to the organization overview page instead of the rooms page.
* WIP on the room-level meeting attendance report. A small step forward.
* WIP on user-perceived performance improvements for rendering the room list for an organiztion tab..
* For enterprise billing count organization members instead of room members.
* More consistent use of account_member::makeXXX functions.
* Correct a really boneheaded error in recurrence descriptions.
* Restore ability to change the schedule of a meeting series that has ended (see case 9521)
* API: Extend synchronizer's search for a user to impersonate (case 10982)
* Loosen up the ability to manage an account in dunning, so people can actually update their credit card.
* Minor tweaks while doing some performance review.
* Cache failure to find room member so we don't keep trying during a single page load.
* Remove static caching of access results (now in user.inc).
* Cache user access checks used by the access functions.
* Do not include the delete modal on room meetings page.
* Fix a bug found by inspection while performance profiling.
* Optimize the getting of followups to-be-sent for large numbers of meetings (room meetings page).
* Cache the results of user access queries in a give page session to reduce excessive user_load() calls.
* Do not check lucid forms for captchas. Excessive SQL queries.
* Fix a user_access check.
* Fixed a user delete bug and made related changes associated with cascading deletes.
* API: Extend synchronizer impersonation; if meeting lacks facilitators, get a room manager.
* API: merge synchronizer access work into default
* Allow meeting participants to edit post-meeting data under more circumstances.
* Delete integration links when the associated integration_auth is deleted via drupal-side code (case 10974)
* Only record active organizer for a meeting starter if that person is a manager in one or more rooms.
February 6, 2020 - version 2.20.12 -- Ongoing maintenance and feature updates
Changelog:
- Tighten up the behavior of the magic invitation links to match our documented behavior.
- Fix a hardcoded reference to $19 per month starting cost in the business upgrade page
- Fix the nav and breadcrumb display for room members who are account guests
- Fix an issue when working with collections of all or active members.
- Doing some work to optimize count(collections) in places.
- Get the proper list orgs for a member on the site manager member page.
- Remove the enforced binding between room "member" and account "member"
- Remove the consequences warning for changing org members to guests
- More WIP on the account vs. room roles
- Fix an html injection issue the organization name.
January 28, 2020 - version 2.20.11 -- Ongoing maintenance and feature updates
- Navigation update to segment orgs without menu-visible rooms from org with menu-visible rooms
- Extend the filter/pagination date selection to room notes and motions
- Incidental tweaks to meeting model; meetings can lack an account_id (template meetings)
- De-icon the room list in the menu and the save submit buttons (too cluttered)
UI consistency tweaks on the meeting template manage page.
- More email template cleanup
Improvements to how we determine which tags should be available in a room
Pep up the sickly grey in the daily and weekly emails
Handle emailed RSVPs a bit better
Improve MIME type detection for uploaded files
Add a new org-level policy to restrict who can see the org member roll-up
Work on the O365 add-in (messaging mainly) to support the Microsoft verification process
Miscellaneous bug fixes
- Performance improvements
- Security improvements
- Improved login security
- Improved password construction requirements and enforcement
- Improved auto-logout for inactivity
- Add more output filtering for XSS prevention
- Continued tuning our web application firewall rules
Apart from all the work generally, the notable part here is that we're well into the Office 365 add-in verification process with Microsoft. We've made a few minor suggested changes and have resubmitted for (what we hope to be) the final manual review step.
Stay tuned for next month's update! We hope to be celebrating the new O365 add-in release :)
Cheers,
John