The 1.0 line takes the new admin dashboard out of beta, brings every re:Members role mapping type into the plugin core, and rewrites the Gravity Forms profile write so a partly-failed update can no longer be reported as a success. It also fixes logging out, which could leave members on a WordPress screen they read as an error.
Covers 1.0.0, 1.0.1, 1.0.2 and 1.0.3.
Adds
- [RE:MEMBERS] Membership Type, Committee, Certification, Security Role, Purchase and Event role mapping are part of the plugin core. They no longer require the BETA tester option.
- Role Mapping is fully editable in the new admin interface, with searchable Membership Type and Committee pickers, custom role creation, and a Refresh AMS Data action.
- A Member Lookup page: search by AMS ID, record number, or the email of an existing user, and see which roles the current configuration would grant and which mapping produced each one. Read-only — it creates no user and assigns no role.
- Automatic updates. The plugin checks for new releases and can update itself from the admin, the way a wordpress.org plugin does. Sites managing deployments through Composer or git can switch this off with the
amsc_update_metadata_url filter.
- [RE:MEMBERS] An opt-in mock of the re:Members API for development, so the plugin runs without credentials. It refuses to run on production and is stripped from release builds.
- Pull requests and releases publish a WordPress Playground preview — a disposable site, in the browser, with the branch installed and role mapping configured against demo data.
Changes
- The new admin dashboard is no longer a beta. Turning it on replaces the AMS Connect menu rather than adding a second one beside it, and a "Switch back to v1" link returns the classic screens at any time.
- [RE:MEMBERS] A feed setting controls what happens when a member changes their address: add a new one and make it primary, keeping the previous address, or update the existing one. Updating remains the default, because re:Members implements it as a replace and that is how existing feeds behave.
- [RE:MEMBERS] An updated address keeps the type of the address it supersedes instead of always being filed as Home.
- [RE:MEMBERS] The plugin no longer records a primary-affiliation relationship of its own after setting a member's primary organization. re:Members already does it, and the relationship type names differ per tenant. Sites that need it can switch it back on with the
amsc_gf_remembers_sync_primary_affiliation_relationship filter.
- [RE:MEMBERS] Membership Type role mapping respects the same grace, effective and join dates as Member/Non-Member, including the Honor Effective Date setting. A role mapped to a membership type is granted only while that membership is current.
Fixes
- [RE:MEMBERS] A profile update submitted through Gravity Forms is no longer reported as successful when part of it failed. Every API call the submission makes is recorded separately on the entry, naming what saved and what did not.
- [RE:MEMBERS] Custom field values are checked against the field's own definition before they are sent, and read back afterwards. re:Members answers a custom field write with success whatever it is given and silently discards what it does not recognise, so an answer could disappear with nothing reported anywhere.
- [RE:MEMBERS] One rejected part of a profile update no longer prevents the rest from saving. A rejected affiliation used to stop the address, phone and email from being written at all.
- [RE:MEMBERS] Addresses are sent with all of city, state, ZIP and country, even when a member clears one. Omitting them was accepted and then filled in from the street line, which produced nonsense values.
- [RE:MEMBERS] Profile forms prefill from the member's primary address, phone and email rather than whichever record the API returned first — the two are not the same, and a member could be shown, and correct, an address they never use.
- Logging out returns the member to the site's home page instead of the WordPress login screen, which members read as an error or as having been signed straight back in.
- Every logout link on the site is safe to click, not only the ones this plugin renders — the admin bar's "Log Out", a theme's own link, and any other plugin's. A site wanting WordPress's original behaviour can return false from the
amsc_replace_wp_logout_url filter.
- Signing in again through the AMS keeps the session the member already has instead of adding another beside it. The old session was never ended, so nothing was gained, while every security token already rendered into an open tab or a cached page stopped working.
- SSO login works over plain HTTP. The auth cookie was hard-coded as Secure, so on any non-HTTPS site the user was created and then immediately seen as logged out.
- Turning on the new dashboard no longer hides pages other plugins add to the AMS Connect menu. Those screens were still reachable by URL, but their menu items disappeared.
- WordPress's own admin notices no longer appear squashed inside the new dashboard's header panel.
- [RE:MEMBERS] Custom fields are listed alphabetically when choosing which re:Members field a Gravity Forms field maps to. The list runs to a couple of hundred entries on a real tenant.
- [RE:MEMBERS] Requesting the AMS login before valid credentials are saved redirects home instead of causing a fatal error.
- [RE:MEMBERS] Role mapping rows saved incomplete no longer stay in the stored settings, where they caused a PHP warning on every login, and saving role mapping twice no longer clears the additional mapping types.