diff --git a/.distignore b/.distignore index 471f8fb..4754d34 100644 --- a/.distignore +++ b/.distignore @@ -4,7 +4,6 @@ .wordpress-org .wp-env.json bin -CHANGELOG.md CODE_OF_CONDUCT.md composer.json composer.lock diff --git a/.forgejo/workflows/assets.yml b/.forgejo/workflows/assets.yml new file mode 100644 index 0000000..2541206 --- /dev/null +++ b/.forgejo/workflows/assets.yml @@ -0,0 +1,27 @@ +name: Plugin asset/readme update on WordPress.org + +on: + push: + branches: + - main + +jobs: + trunk: + name: Push assets to trunk on WordPress.org + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: https://code.forgejo.org/actions/checkout@v4 + + - name: Install and cache rsync + uses: https://github.com/awalsh128/cache-apt-pkgs-action@latest + with: + packages: rsync subversion + version: 1.0 + + - name: WordPress.org plugin asset/readme update + uses: https://github.com/10up/action-wordpress-plugin-asset-update@stable + env: + SVN_PASSWORD: ${{ secrets.SVN_PASSWORD }} + SVN_USERNAME: ${{ secrets.SVN_USERNAME }} + SLUG: event-bridge-for-activitypub diff --git a/.forgejo/workflows/deploy.yml b/.forgejo/workflows/deploy.yml new file mode 100644 index 0000000..55e9192 --- /dev/null +++ b/.forgejo/workflows/deploy.yml @@ -0,0 +1,27 @@ +name: Deploy to WordPress.org + +on: + push: + tags: + - "*" + +jobs: + tag: + name: New tag + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: https://code.forgejo.org/actions/checkout@v4 + + - name: Install and cache rsync + uses: https://github.com/awalsh128/cache-apt-pkgs-action@latest + with: + packages: rsync subversion + version: 1.0 + + - name: WordPress Plugin Deploy + uses: https://github.com/10up/action-wordpress-plugin-deploy@stable + env: + SVN_PASSWORD: ${{ secrets.SVN_PASSWORD }} + SVN_USERNAME: ${{ secrets.SVN_USERNAME }} + SLUG: event-bridge-for-activitypub diff --git a/.wordpress-org/acknowledgement-NGI0Entrust.png b/.wordpress-org/acknowledgement-NGI0Entrust.png new file mode 100644 index 0000000..e5e722a Binary files /dev/null and b/.wordpress-org/acknowledgement-NGI0Entrust.png differ diff --git a/.wordpress-org/acknowledgement-NGI0Entrust.svg b/.wordpress-org/acknowledgement-NGI0Entrust.svg new file mode 100644 index 0000000..0d211b3 --- /dev/null +++ b/.wordpress-org/acknowledgement-NGI0Entrust.svg @@ -0,0 +1,121 @@ + + + + diff --git a/.wordpress-org/acknowledgement-NLnet.png b/.wordpress-org/acknowledgement-NLnet.png new file mode 100644 index 0000000..983998b Binary files /dev/null and b/.wordpress-org/acknowledgement-NLnet.png differ diff --git a/.wordpress-org/acknowledgement-NLnet.svg b/.wordpress-org/acknowledgement-NLnet.svg new file mode 100644 index 0000000..7980346 --- /dev/null +++ b/.wordpress-org/acknowledgement-NLnet.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index 5e04324..9bf0705 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,7 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 * Add feature: External Event Sources. -## [0.3.3] - 2024-12-19 +## [0.3.4] - 2024-12-21 * Initial release on WordPress.org diff --git a/README.md b/README.md index 007a0d1..cba30ef 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ **Tags:** events, fediverse, activitypub, calendar **Requires at least:** 6.5 **Tested up to:** 6.7 -**Stable tag:** 0.3.3 +**Stable tag:** 0.3.4 **Requires PHP:** 7.4 **License:** AGPL-3.0-or-later **License URI:** https://www.gnu.org/licenses/agpl-3.0.html @@ -21,20 +21,36 @@ This plugin is not an event managing plugin but an add-on to popular event plugi With the ActivityPub plugin people can follow your website directly and engage with your events just as they would on social media: liking, boosting and even commenting if you enable it. You retain full ownership of your content. By integrating into your existing setup, it ensures no extra work is needed while enhancing your events' visibility across the web. +### Supported Event Plugins ### + +Full supporting including importing events from the Fediverse: + +* [The Events Calendar](https://de.wordpress.org/plugins/the-events-calendar/) +* [VS Event List](https://de.wordpress.org/plugins/very-simple-event-list/) +* [GatherPress](https://gatherpress.org/) + +Basic support (outgoing events): + +* [Events Manager](https://de.wordpress.org/plugins/events-manager/) +* [WP Event Manager](https://de.wordpress.org/plugins/wp-event-manager/) +* [Eventin](https://de.wordpress.org/plugins/wp-event-solution/) +* [Modern Events Calendar Lite](https://webnus.net/modern-events-calendar/) +* [Event Organiser](https://wordpress.org/plugins/event-organiser/) + ### How It Works ### With the Event Bridge for ActivityPub WordPress plugin, sharing your events is effortless and automatic! Once you create an event on your WordPress site, it is seamlessly shared across the decentralized web using the ActivityPub protocol.
- +
Your events can be automatically delivered to platforms that fully support events, such as [Mobilizon](https://joinmobilizon.org/), [Gancio](https://gancio.org), [Friendica](https://friendi.ca), [Hubzilla](https://hubzilla.org), and [Pleroma](https://pleroma.social/). These platforms create public event calendars by pulling in events from various sources, including your website. Any updates you make to your events are synced across these platforms—so you only need to manage your events on your own site, with no extra work required.- +
Even platforms that don't yet fully support events, like [Mastodon](https://joinmastodon.org), will still receive a detailed, well-composed summary of your event. @@ -56,22 +72,6 @@ The Event Federation plugin ensures that users from those platforms are provided This plugin depends on the [ActivityPub plugin](https://wordpress.org/plugins/activitypub/). Additionally, you need to use one of the supported event Plugins. -### Supported Event Plugins ### - -Full supporting including importing events from the Fediverse: - -* [The Events Calendar](https://de.wordpress.org/plugins/the-events-calendar/) -* [VS Event List](https://de.wordpress.org/plugins/very-simple-event-list/) -* [GatherPress](https://gatherpress.org/) - -Basic support (outgoing events): - -* [Events Manager](https://de.wordpress.org/plugins/events-manager/) -* [WP Event Manager](https://de.wordpress.org/plugins/wp-event-manager/) -* [Eventin](https://de.wordpress.org/plugins/wp-event-solution/) -* [Modern Events Calendar Lite](https://webnus.net/modern-events-calendar/) -* [Event Organiser](https://wordpress.org/plugins/event-organiser/) - ## Configuration ## If you're new to the [ActivityPub plugin](https://wordpress.org/plugins/activitypub/), it’s recommended to spend a few minutes reading through its documentation to familiarize yourself with its setup and functionality. @@ -106,14 +106,19 @@ If you know about coding have a look at the documentation of how to add your plu We're always interested in your feedback. Feel free to reach out to us via [E-Mail](https://event-federation.eu/contact/) or create an [issue](https://code.event-federation.eu/Event-Federation/wordpress-event-bridge-for-activitypub/issues). +## Acknowledgement + +[](https://nlnet.nl) +[](https://nlnet.nl/entrust) + +The development of this WordPress plugin was funded through the [NGI0 Entrust](https://NLnet.nl/entrust) Fund, a fund established by [NLnet](https://nlnet.nl) with financial support from the European Commission's [Next Generation Internet](https://ngi.eu) programme, under the aegis of [Communications Networks, Content and Technology](https://commission.europa.eu/about-european-commission/departments-and-executive-agencies/communications-networks-content-and-technology_en) under grant agreement number 101069594. + ## Changelog ## ### Unreleased * Add feature: External Event Sources. -### [0.3.3] 2024-12-19 ### +### [0.3.4] 2024-12-21 ### * Initial release on https://wordpress.org/ - - diff --git a/assets/css/event-bridge-for-activitypub-admin.css b/assets/css/event-bridge-for-activitypub-admin.css index 3240749..f1a0aea 100644 --- a/assets/css/event-bridge-for-activitypub-admin.css +++ b/assets/css/event-bridge-for-activitypub-admin.css @@ -9,6 +9,11 @@ margin-bottom: 1.5em; } +.event-bridge-for-activitypub-settings-page .logo-center { + width: 25%; + margin: 10px 5% 10px 5%; +} + .event-bridge-for-activitypub-settings-page .box ul.event-bridge-for-activitypub-list { margin-left: 0.6em; } diff --git a/event-bridge-for-activitypub.php b/event-bridge-for-activitypub.php index f1ce6b3..72a0a89 100644 --- a/event-bridge-for-activitypub.php +++ b/event-bridge-for-activitypub.php @@ -3,7 +3,7 @@ * Plugin Name: Event Bridge for ActivityPub * Description: Integrating popular event plugins with the ActivityPub plugin. * Plugin URI: https://event-federation.eu/ - * Version: 0.3.3 + * Version: 0.3.4 * Author: André Menrath * Author URI: https://graz.social/@linos * Text Domain: event-bridge-for-activitypub diff --git a/includes/class-settings.php b/includes/class-settings.php index 224dac8..149baea 100644 --- a/includes/class-settings.php +++ b/includes/class-settings.php @@ -14,7 +14,6 @@ namespace Event_Bridge_For_ActivityPub; // Exit if accessed directly. defined( 'ABSPATH' ) || exit; // @codeCoverageIgnore -use Activitypub\Activity\Extended_Object\Event; use Event_Bridge_For_ActivityPub\Integrations\Feature_Event_Sources; /** @@ -204,7 +203,8 @@ class Settings { * @return bool True if allowed, false otherwise. */ private static function is_allowed_event_category( $event_category ): bool { - $allowed_event_categories = Event::DEFAULT_EVENT_CATEGORIES; + require_once EVENT_BRIDGE_FOR_ACTIVITYPUB_PLUGIN_DIR . '/includes/event-categories.php'; + $allowed_event_categories = array_keys( EVENT_BRIDGE_FOR_ACTIVITYPUB_EVENT_CATEGORIES ); return in_array( $event_category, $allowed_event_categories, true ); } } diff --git a/readme.txt b/readme.txt index 217c5a5..f918b17 100644 --- a/readme.txt +++ b/readme.txt @@ -3,7 +3,7 @@ Contributors: andremenrath Tags: events, fediverse, activitypub, calendar Requires at least: 6.5 Tested up to: 6.7 -Stable tag: 0.3.3 +Stable tag: 0.3.4 Requires PHP: 7.4 License: AGPL-3.0-or-later License URI: https://www.gnu.org/licenses/agpl-3.0.html @@ -11,28 +11,32 @@ Integrating popular event plugins with the ActivityPub plugin. == Description == -Make your events more discoverable, expand your reach effortlessly while being independent of other (commercial) platforms, and be a part of the growing decentralized web (the Fediverse). -With the Event Bridge for ActivityPub Plugin for WordPress, your events can be automatically followed, aggregated and displayed across decentralized platforms like [Mastodon](https://joinmastodon.org) or [Gancio](https://gancio.org), without any extra work. -Forget the hassle of managing multiple social media accounts just to keep your audience informed. +Make your events more discoverable, expand your reach effortlessly while being independent of other (commercial) platforms, and be a part of the growing decentralized web (the Fediverse). With the Event Bridge for ActivityPub Plugin for WordPress, your events can be automatically followed, aggregated and displayed across decentralized platforms like [Mastodon](https://joinmastodon.org) or [Gancio](https://gancio.org), without any extra work. Forget the hassle of managing multiple social media accounts just to keep your audience informed. -This plugin is not an event managing plugin but an add-on to popular event plugins. It extends their functionality to fully support the [ActivityPub plugin](https://wordpress.org/plugins/activitypub/). -With the ActivityPub plugin people can follow your website directly and engage with your events just as they would on social media: liking, boosting and even commenting if you enable it. -You retain full ownership of your content. By integrating into your existing setup, it ensures no extra work is needed while enhancing your events' visibility across the web. +This plugin is not an event managing plugin but an add-on to popular event plugins. It extends their functionality to fully support the [ActivityPub plugin](https://wordpress.org/plugins/activitypub/). With the ActivityPub plugin people can follow your website directly and engage with your events just as they would on social media: liking, boosting and even commenting if you enable it. You retain full ownership of your content. By integrating into your existing setup, it ensures no extra work is needed while enhancing your events' visibility across the web. + += Supported Event Plugins = + +* [The Events Calendar](https://de.wordpress.org/plugins/the-events-calendar/) +* [VS Event List](https://de.wordpress.org/plugins/very-simple-event-list/) +* [Events Manager](https://de.wordpress.org/plugins/events-manager/) +* [WP Event Manager](https://de.wordpress.org/plugins/wp-event-manager/) +* [Eventin](https://de.wordpress.org/plugins/wp-event-solution/) +* [Modern Events Calendar Lite](https://webnus.net/modern-events-calendar/) +* [GatherPress](https://gatherpress.org/) +* [Event Organiser](https://wordpress.org/plugins/event-organiser/) = How It Works = -With the Event Bridge for ActivityPub WordPress plugin, sharing your events is effortless and automatic! -Once you create an event on your WordPress site, it is seamlessly shared across the decentralized web using the ActivityPub protocol. +With the Event Bridge for ActivityPub WordPress plugin, sharing your events is effortless and automatic! Once you create an event on your WordPress site, it is seamlessly shared across the decentralized web using the ActivityPub protocol. -![](./.wordpress-org/event-activitypub-publishing.gif) +[vimeo https://vimeo.com/1043105544 ] -Your events can be automatically delivered to platforms that fully support events, such as [Mobilizon](https://joinmobilizon.org/), [Gancio](https://gancio.org), [Friendica](https://friendi.ca), [Hubzilla](https://hubzilla.org), and [Pleroma](https://pleroma.social/). -These platforms create public event calendars by pulling in events from various sources, including your website. Any updates you make to your events are synced across these platforms—so you only need to manage your events on your own site, with no extra work required. +Your events can be automatically delivered to platforms that fully support events, such as [Mobilizon](https://joinmobilizon.org/), [Gancio](https://gancio.org), [Friendica](https://friendi.ca), [Hubzilla](https://hubzilla.org), and [Pleroma](https://pleroma.social/). These platforms create public event calendars by pulling in events from various sources, including your website. Any updates you make to your events are synced across these platforms—so you only need to manage your events on your own site, with no extra work required. -![](./.wordpress-org/decentralized-event-calenders.gif) +[vimeo https://vimeo.com/1043104445 ] -Even platforms that don't yet fully support events, like [Mastodon](https://joinmastodon.org), will still receive a detailed, well-composed summary of your event. -The Event Federation plugin ensures that users from those platforms are provided with all important information about an event. +Even platforms that don't yet fully support events, like [Mastodon](https://joinmastodon.org), will still receive a detailed, well-composed summary of your event. The Event Federation plugin ensures that users from those platforms are provided with all important information about an event. = Features for Your WordPress Events and the Fediverse = @@ -61,7 +65,7 @@ This plugin depends on the [ActivityPub plugin](https://wordpress.org/plugins/ac * [GatherPress](https://gatherpress.org/) * [Event Organiser](https://wordpress.org/plugins/event-organiser/) -== Configuration == += Configuration = If you're new to the [ActivityPub plugin](https://wordpress.org/plugins/activitypub/), it’s recommended to spend a few minutes reading through its documentation to familiarize yourself with its setup and functionality. @@ -95,12 +99,16 @@ If you know about coding have a look at the documentation of how to add your plu We're always interested in your feedback. Feel free to reach out to us via [E-Mail](https://event-federation.eu/contact/) or create an [issue](https://code.event-federation.eu/Event-Federation/wordpress-event-bridge-for-activitypub/issues). +== Acknowledgement == + +The development of this WordPress plugin was funded through the [NGI0 Entrust](https://NLnet.nl/entrust) Fund, a fund established by [NLnet](https://nlnet.nl) with financial support from the European Commission's [Next Generation Internet](https://ngi.eu) programme, under the aegis of [Communications Networks, Content and Technology](https://commission.europa.eu/about-european-commission/departments-and-executive-agencies/communications-networks-content-and-technology_en) under grant agreement number 101069594. + == Changelog == = Unreleased = * Add feature: External Event Sources. -= [0.3.3] 2024-12-19 = += [0.3.4] 2024-12-21 = * Initial release on https://wordpress.org/ diff --git a/templates/welcome.php b/templates/welcome.php index 61bda38..dae3f40 100644 --- a/templates/welcome.php +++ b/templates/welcome.php @@ -236,15 +236,13 @@ WP_Filesystem();- get_contents( EVENT_BRIDGE_FOR_ACTIVITYPUB_PLUGIN_DIR . '/CHANGELOG.md' ); - echo esc_html( substr( $changelog, strpos( $changelog, "\n", 180 ) + 1 ) ); - ?> -+ + +
The development of this plugin was funded through the NGI0 Entrust Fund, a fund established by NLnet with financial support from the European Commission's Next Generation Internet programme, under the aegis of DG Communications Networks, Content and Technology under grant agreement No 101069594.