| 开发者 | pcio |
|---|---|
| 更新时间 | 2026年10月3日 04:01 |
| PHP版本: | 8.1 及以上 |
| WordPress版本: | 7.1 |
| 版权: | GPLv2 or later |
| 版权网址: | 版权信息 |
/vis/boats, access-controlled by the
vis_boat_manage capability (granted to Editor and Administrator on
activation)./vis/harbours — list, create, edit, and delete
harbours on a map, with duplicate-name protection and delete-guard against
harbours still in use.pcio-vis-boat folder to /wp-content/plugins/./vis/boats to start managing the boat register.Go to /vis/boats on the front end. A "Boats" link also appears in the Vis
navigation and as a tile on the /vis/ landing page for users with the
vis_boat_manage capability.
Go to /vis/harbours on the front end. A "Harbours" link appears in the Vis
navigation and as a tile on the /vis/ landing page for users with the
vis_boat_manage capability. A "Vis → Harbours" submenu in wp-admin redirects
there. Harbour names must be unique; existing duplicates are merged on upgrade.
Yes. GET /pcio-vis/v1/boat/member/{member_id} returns the boat registered for
that member's membership number — an empty list when they have none, otherwise
one boat with a crew array listing everyone on that number. The endpoint is
available to administrators and to the member themselves when they are logged
in. Members can also edit their own boat and add or remove crew at
/vis/members → their profile.
No boat, member or order data ever leaves your server. The only outbound requests are the OpenStreetMap and OpenSeaMap map tiles drawn by the harbour map in wp-admin — see External services below for the details.
If they were the only member on their membership number, the boat is deleted. If other members still share that number, the boat is kept and stays with the remaining crew.
[pcio_boat_edit_profile] shortcode alias.GET/POST /pcio-vis/v1/boat/my-boat/{id}/crew and
DELETE /pcio-vis/v1/boat/my-boat/{id}/crew/{member_id} let a boat owner add
and remove crew. A new crew member is created in the core member register,
given a WordPress login and the welcome email; an existing WordPress user
without vis_member is accepted and promoted. Removing a crew member clears
their membership number and revokes vis_member./vis/ landing page, both gated on vis_boat_manage.me_boat_crew table is
gone; every member carrying the boat's membership number is crew on that
boat, so the crew group and the subscription always agree. A boat's owner
column is the membership number and is unique — one boat per membership
number.home_harbour
column is removed from me_boat_boats and the harbour name is resolved by
joining the harbours table, so the same harbour cannot be spelled differently
on two boats. The sign-up form and the boat form now save only the selection;
typing free text without picking a harbour no longer stores a name.me_boat_harbours.name, and any duplicates found on upgrade are
merged — boats are repointed to the surviving harbour before the duplicate rows
are removed.aria-activedescendant, and editing the
text after picking clears the selection so a typo cannot save the wrong
harbour./shop/accepted style confirmation is unchanged, but a crew
member without their own subscription now inherits the shared membership's
status instead of showing an unknown state./vis/harbours (capability vis_boat_manage):
list, create, edit and delete harbours with a Leaflet draggable-marker map.me_boat_harbours.name was added.vis_member capability instead of being public.vis_boat_manage
capability. Harbours added on the map during sign-up are stored only after
membership is confirmed, removing the unauthenticated write path.