diff --git a/.github/workflows/publish-release.yml b/.github/workflows/publish-release.yml index f6860275..44494b7c 100644 --- a/.github/workflows/publish-release.yml +++ b/.github/workflows/publish-release.yml @@ -47,5 +47,5 @@ jobs: SVN_USERNAME: ${{ secrets.SVN_USERNAME }} SVN_PASSWORD: ${{ secrets.SVN_PASSWORD }} BUILD_DIR: release/${{ inputs.version }} - ASSETS_DIR: .wporg + ASSETS_DIR: .wporg/assets VERSION: ${{ inputs.version }} diff --git a/.wporg/assets/blueprints/blueprint.json b/.wporg/assets/blueprints/blueprint.json new file mode 100644 index 00000000..623a4197 --- /dev/null +++ b/.wporg/assets/blueprints/blueprint.json @@ -0,0 +1,34 @@ +{ + "landingPage": "/chatrix-regular-mode/", + "preferredVersions": { + "php": "8.0", + "wp": "latest" + }, + "steps": [ + { + "step": "login", + "username": "admin", + "password": "password" + }, + { + "step": "setSiteOptions", + "options": { + "permalink_structure": "/%year%/%monthnum%/%day%/%postname%/" + } + }, + { + "step": "installPlugin", + "pluginZipFile": { + "resource": "wordpress.org/plugins", + "slug": "chatrix" + } + }, + { + "step": "runPHP", + "code": "

Below you can see \"Chatrix\" block in action. You can add it anywhere using either /chatrix or by looking up chatrix when choosing which block to insert.

Chatrix can also run in single room mode.

';\n\n$chatrix_block_2col = <<\n

Below you can see “Chatrix” block in action. You can add it anywhere using either /chatrix or by looking up chatrix when choosing which block to insert.

\n\n\n\n
\n\n
\n\n

Edit this page to specify what room should Chatrix run in as, single-room mode. By default, it loads up:

\n\n\n
#matrix:matrix.org
\n\n\n

You would need to select Chatrix block to reveal its settings on the right side panel.

\n\n
\n\n\n
\n\n
\n\n
\n\nCHATRIXBLOCK2COLUMNS;\n\n$sample_page_post_id = 2;\n\nwp_update_post( array(\n 'ID' => $sample_page_post_id,\n 'post_title' => 'Chatrix [Regular]',\n 'post_name' => 'chatrix-regular-mode',\n 'post_content' => $chatrix_block_simple\n) );\n\nwp_insert_post( array(\n 'ID' => 3,\n 'post_title' => 'Chatrix [Single Room Mode]',\n 'post_name' => 'chatrix-single-room-mode',\n 'post_type' => 'page',\n 'post_status' => 'publish',\n 'post_content' => $chatrix_block_2col\n) );\n\nwp_insert_post( array(\n 'ID' => 4,\n 'post_title' => 'Chatrix [Popup]',\n 'post_name' => 'chatrix-in-popup-mode',\n 'post_type' => 'page',\n 'post_status' => 'publish',\n 'post_content' => '

On this page, you can see the popup widget at the bottom right of your screen. Click on it to show Chatrix.

'\n) );\n\nupdate_option( 'chatrix_settings', array(\n 'homeserver' => 'matrix.org',\n 'room' => '#matrix:matrix.org',\n 'show_on' => 'specific',\n 'pages' => array(\n 0 => '4'\n )\n) );", + "progress": { + "caption": "Setting Chatrix instances" + } + } + ] +} diff --git a/.wporg/assets/readme.md b/.wporg/assets/readme.md new file mode 100644 index 00000000..624f8ad9 --- /dev/null +++ b/.wporg/assets/readme.md @@ -0,0 +1,3 @@ +Run `update_blueprint.sh` after making changes in `blueprint_runphp_step_code.php` so that `.wporg/assets/blueprints/blueprint.json` is updated. + +[See blueprint in action on playground](https://playground.wordpress.net/?blueprint-url=https://raw.githubusercontent.com/automattic/chatrix/main/.wporg/assets/blueprints/blueprint.json) diff --git a/.wporg/screenshot-1.png b/.wporg/assets/screenshot-1.png similarity index 100% rename from .wporg/screenshot-1.png rename to .wporg/assets/screenshot-1.png diff --git a/.wporg/screenshot-2.png b/.wporg/assets/screenshot-2.png similarity index 100% rename from .wporg/screenshot-2.png rename to .wporg/assets/screenshot-2.png diff --git a/.wporg/screenshot-3.png b/.wporg/assets/screenshot-3.png similarity index 100% rename from .wporg/screenshot-3.png rename to .wporg/assets/screenshot-3.png diff --git a/.wporg/screenshot-4.png b/.wporg/assets/screenshot-4.png similarity index 100% rename from .wporg/screenshot-4.png rename to .wporg/assets/screenshot-4.png diff --git a/.wporg/screenshot-5.png b/.wporg/assets/screenshot-5.png similarity index 100% rename from .wporg/screenshot-5.png rename to .wporg/assets/screenshot-5.png diff --git a/.wporg/blueprint_runphp_step_code.php b/.wporg/blueprint_runphp_step_code.php new file mode 100644 index 00000000..67cd10c9 --- /dev/null +++ b/.wporg/blueprint_runphp_step_code.php @@ -0,0 +1,70 @@ +

Below you can see "Chatrix" block in action. You can add it anywhere using either /chatrix or by looking up chatrix when choosing which block to insert.

Chatrix can also run in single room mode.

'; + +$chatrix_block_2col = << +

Below you can see “Chatrix” block in action. You can add it anywhere using either /chatrix or by looking up chatrix when choosing which block to insert.

+ + + +
+ +
+ +

Edit this page to specify what room should Chatrix run in as, single-room mode. By default, it loads up:

+ + +
#matrix:matrix.org
+ + +

You would need to select Chatrix block to reveal its settings on the right side panel.

+ +
+ + +
+ +
+ +
+ +CHATRIXBLOCK2COLUMNS; + +$sample_page_post_id = 2; + +wp_update_post( array( + 'ID' => $sample_page_post_id, + 'post_title' => 'Chatrix [Regular]', + 'post_name' => 'chatrix-regular-mode', + 'post_content' => $chatrix_block_simple +) ); + +wp_insert_post( array( + 'ID' => 3, + 'post_title' => 'Chatrix [Single Room Mode]', + 'post_name' => 'chatrix-single-room-mode', + 'post_type' => 'page', + 'post_status' => 'publish', + 'post_content' => $chatrix_block_2col +) ); + +wp_insert_post( array( + 'ID' => 4, + 'post_title' => 'Chatrix [Popup]', + 'post_name' => 'chatrix-in-popup-mode', + 'post_type' => 'page', + 'post_status' => 'publish', + 'post_content' => '

On this page, you can see the popup widget at the bottom right of your screen. Click on it to show Chatrix.

' +) ); + +update_option( 'chatrix_settings', array( + 'homeserver' => 'matrix.org', + 'room' => '#matrix:matrix.org', + 'show_on' => 'specific', + 'pages' => array( + 0 => '4' + ) +) ); diff --git a/.wporg/update_blueprint.sh b/.wporg/update_blueprint.sh new file mode 100644 index 00000000..a2304576 --- /dev/null +++ b/.wporg/update_blueprint.sh @@ -0,0 +1,16 @@ +#!/usr/bin/env bash + +if ! command -v jq &> /dev/null ; then + echo "jq is not installed. Please install jq (https://jqlang.github.io/jq/) before running this script." +fi + +# Get the directory of the script +script_dir="$(dirname "$(readlink -f "$0")")" + +blueprint_location="$script_dir/assets/blueprints/blueprint.json" +phpsrc_location="$script_dir/blueprint_runphp_step_code.php" + +jq --arg newCode "$(cat $phpsrc_location)" '.steps[] |= if .step == "runPHP" then .code = $newCode else . end' $blueprint_location > updated_blueprint.json + +rm $blueprint_location +mv updated_blueprint.json $blueprint_location diff --git a/README.md b/README.md index 0381c93a..330b4551 100644 --- a/README.md +++ b/README.md @@ -18,11 +18,11 @@ Easily add a [Matrix](https://matrix.org) client to WordPress pages, either thro If you have any feedback or questions about Chatrix, please do talk to plugin maintainers at [#chatrix:matrix.org](https://matrix.to/#/#chatrix:matrix.org). ## Screenshots -![Block - Login](.wporg/screenshot-1.png) -![Block - Room List](.wporg/screenshot-2.png) -![Block - Timeline](.wporg/screenshot-3.png) -![Popup - Settings](.wporg/screenshot-4.png) -![Popup - Timeline](.wporg/screenshot-5.png) +![Block - Login](.wporg/assets/screenshot-1.png) +![Block - Room List](.wporg/assets/screenshot-2.png) +![Block - Timeline](.wporg/assets/screenshot-3.png) +![Popup - Settings](.wporg/assets/screenshot-4.png) +![Popup - Timeline](.wporg/assets/screenshot-5.png) ## Frequently Asked Questions ### How can I install this plugin on my site?