mirror of
https://github.com/dwaxweiler/connector-mobilizon
synced 2025-06-05 21:59:25 +02:00
Compare commits
13 Commits
Author | SHA1 | Date | |
---|---|---|---|
f0e955aa47 | |||
80abd9a461 | |||
fb1db8e836 | |||
db080657db | |||
979ecbc91f | |||
08e80615c6 | |||
526d57d1b2 | |||
718d66506b | |||
cccd1a78b5 | |||
fa99821ffc | |||
7bc35a3923 | |||
82800a9db3 | |||
46170377af |
@ -1,2 +1,2 @@
|
|||||||
npm test
|
npm test
|
||||||
npx lint-staged
|
lint-staged
|
||||||
|
34
README.md
34
README.md
@ -6,6 +6,8 @@ More details can be found in the [WordPress Plugin Directory](https://wordpress.
|
|||||||
|
|
||||||
The current changelog can be found under [source/changelog.txt](source/changelog.txt).
|
The current changelog can be found under [source/changelog.txt](source/changelog.txt).
|
||||||
|
|
||||||
|
This plugin uses [Mobilizon's GraphQL API](https://docs.joinmobilizon.org/contribute/graphql_api/).
|
||||||
|
|
||||||
## Development
|
## Development
|
||||||
|
|
||||||
### Setup
|
### Setup
|
||||||
@ -22,21 +24,23 @@ The current changelog can be found under [source/changelog.txt](source/changelog
|
|||||||
### Release procedure
|
### Release procedure
|
||||||
|
|
||||||
1. Make sure `changelog.txt` is up-to-date.
|
1. Make sure `changelog.txt` is up-to-date.
|
||||||
2. Use a new version number and copy over the new section into `readme.txt`.
|
2. Create a new section with a new version number.
|
||||||
3. Update `package.json` with the same version number.
|
3. Copy over the new section into `readme.txt`.
|
||||||
4. Update the `package-lock.json`: `npm i --package-lock-only`
|
4. Update `package.json` with the same version number.
|
||||||
5. Build: `npm run build-prod`
|
5. Update the `package-lock.json`: `npm i --package-lock-only`
|
||||||
6. Make sure screenshots are up-to-date.
|
6. Build: `npm run build-prod`
|
||||||
7. Copy the built plugin into `/trunk` of SVN.
|
7. Make sure screenshots are up-to-date.
|
||||||
8. Create a new tag of the new version: `svn cp trunk tags/<version>`
|
8. Copy the built plugin into `/trunk` of SVN.
|
||||||
9. Check the version number occurrences in both folders.
|
9. Create a new tag of the new version: `svn cp trunk tags/<version>`
|
||||||
10. Commit everything together to the release SVN: `svn ci -m "release version <version>"` Make sure to add new files beforehand.
|
10. Check the version number occurrences in both folders.
|
||||||
11. Commit the new version in git with the same message.
|
11. Make sure to handle exclamation and question marks in `svn status`.
|
||||||
12. Tag the new version: `git tag v<version>`
|
12. Commit everything together to the release SVN: `svn ci -m "release version <version>"`
|
||||||
13. Push the new tag to the repository: `git push --tags`
|
13. Commit the new version in git with the same message.
|
||||||
14. Append `-next` to the version number in `package.json`.
|
14. Tag the new version: `git tag v<version>`
|
||||||
15. Update the `package-lock.json`: `npm i --package-lock-only`
|
15. Push the new tag to the repository: `git push --tags`
|
||||||
16. Commit: `git commit -am "prepare next release"`
|
16. Append `-next` to the version number in `package.json`.
|
||||||
|
17. Update the `package-lock.json`: `npm i --package-lock-only`
|
||||||
|
18. Commit: `git commit -am "prepare next release"`
|
||||||
|
|
||||||
### Other commands
|
### Other commands
|
||||||
|
|
||||||
|
9554
package-lock.json
generated
9554
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
34
package.json
34
package.json
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "connector-mobilizon",
|
"name": "connector-mobilizon",
|
||||||
"version": "1.0.0",
|
"version": "1.1.0",
|
||||||
"description": "Display Mobilizon events in WordPress.",
|
"description": "Display Mobilizon events in WordPress.",
|
||||||
"private": true,
|
"private": true,
|
||||||
"type": "module",
|
"type": "module",
|
||||||
@ -24,32 +24,32 @@
|
|||||||
},
|
},
|
||||||
"license": "Apache-2.0",
|
"license": "Apache-2.0",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"graphql": "16.8.1",
|
"graphql": "16.9.0",
|
||||||
"luxon": "3.4.4"
|
"luxon": "3.4.4"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@babel/core": "7.24.4",
|
"@babel/core": "7.24.9",
|
||||||
"@babel/eslint-parser": "7.24.1",
|
"@babel/eslint-parser": "7.24.8",
|
||||||
"@babel/preset-env": "7.24.4",
|
"@babel/preset-env": "7.24.8",
|
||||||
"@babel/preset-react": "7.24.1",
|
"@babel/preset-react": "7.24.7",
|
||||||
"@wordpress/eslint-plugin": "17.12.0",
|
"@wordpress/eslint-plugin": "20.0.0",
|
||||||
"ava": "6.1.2",
|
"ava": "6.1.3",
|
||||||
"babel-loader": "9.1.3",
|
"babel-loader": "9.1.3",
|
||||||
"browser-env": "3.3.0",
|
"browser-env": "3.3.0",
|
||||||
"c8": "9.1.0",
|
"c8": "10.1.2",
|
||||||
"copy-webpack-plugin": "12.0.2",
|
"copy-webpack-plugin": "12.0.2",
|
||||||
"eslint": "8.57.0",
|
"eslint": "8.57.0",
|
||||||
"eslint-plugin-ava": "14.0.0",
|
"eslint-plugin-ava": "14.0.0",
|
||||||
"eslint-plugin-jsx": "0.1.0",
|
"eslint-plugin-jsx": "0.1.0",
|
||||||
"eslint-plugin-react": "7.34.1",
|
"eslint-plugin-react": "7.34.4",
|
||||||
"esm": "3.2.25",
|
"esm": "3.2.25",
|
||||||
"gulp": "4.0.2",
|
"gulp": "5.0.0",
|
||||||
"gulp-replace": "1.1.4",
|
"gulp-replace": "1.1.4",
|
||||||
"husky": "9.0.11",
|
"husky": "9.1.1",
|
||||||
"lint-staged": "15.2.2",
|
"lint-staged": "15.2.7",
|
||||||
"prettier": "3.2.5",
|
"prettier": "3.3.3",
|
||||||
"rimraf": "5.0.5",
|
"rimraf": "5.0.9",
|
||||||
"webpack": "5.91.0",
|
"webpack": "5.93.0",
|
||||||
"webpack-cli": "5.1.4"
|
"webpack-cli": "5.1.4"
|
||||||
},
|
},
|
||||||
"ava": {
|
"ava": {
|
||||||
@ -61,7 +61,7 @@
|
|||||||
"niceName": "Connector for Mobilizon",
|
"niceName": "Connector for Mobilizon",
|
||||||
"phpMinimumVersion": 7.4,
|
"phpMinimumVersion": 7.4,
|
||||||
"wordpressMinimumVersion": 5.6,
|
"wordpressMinimumVersion": 5.6,
|
||||||
"wordpressTestedUpToVersion": "6.5"
|
"wordpressTestedUpToVersion": "6.6"
|
||||||
},
|
},
|
||||||
"lint-staged": {
|
"lint-staged": {
|
||||||
"source/**/*.js": "eslint",
|
"source/**/*.js": "eslint",
|
||||||
|
@ -6,6 +6,15 @@
|
|||||||
#### Fixed
|
#### Fixed
|
||||||
#### Security
|
#### Security
|
||||||
|
|
||||||
|
### [1.1.0]
|
||||||
|
#### Added
|
||||||
|
- Add some spacing between event items
|
||||||
|
#### Changed
|
||||||
|
- Update dependencies
|
||||||
|
- Confirm compatibility with WordPress 6.6
|
||||||
|
#### Fixed
|
||||||
|
- Fix undefined variable $classNamePrefix for both error views
|
||||||
|
|
||||||
### [1.0.0]
|
### [1.0.0]
|
||||||
#### Added
|
#### Added
|
||||||
- Display name of group when it cannot be found
|
- Display name of group when it cannot be found
|
||||||
|
@ -39,6 +39,7 @@ class EventsListBlock {
|
|||||||
$url = Settings::getUrl();
|
$url = Settings::getUrl();
|
||||||
$eventsCount = $block_attributes['eventsCount'];
|
$eventsCount = $block_attributes['eventsCount'];
|
||||||
$groupName = isset($block_attributes['groupName']) ? $block_attributes['groupName'] : '';
|
$groupName = isset($block_attributes['groupName']) ? $block_attributes['groupName'] : '';
|
||||||
|
$classNamePrefix = NAME;
|
||||||
|
|
||||||
ob_start();
|
ob_start();
|
||||||
try {
|
try {
|
||||||
@ -48,7 +49,6 @@ class EventsListBlock {
|
|||||||
$events = GraphQlClient::get_upcoming_events($url, (int) $eventsCount);
|
$events = GraphQlClient::get_upcoming_events($url, (int) $eventsCount);
|
||||||
}
|
}
|
||||||
|
|
||||||
$classNamePrefix = NAME;
|
|
||||||
$locale = get_locale();
|
$locale = get_locale();
|
||||||
$isShortOffsetNameShown = Settings::isShortOffsetNameShown();
|
$isShortOffsetNameShown = Settings::isShortOffsetNameShown();
|
||||||
$timeZone = wp_timezone_string();
|
$timeZone = wp_timezone_string();
|
||||||
|
@ -22,6 +22,7 @@ class EventsListShortcut {
|
|||||||
$url = Settings::getUrl();
|
$url = Settings::getUrl();
|
||||||
$eventsCount = $atts_with_overriden_defaults['events-count'];
|
$eventsCount = $atts_with_overriden_defaults['events-count'];
|
||||||
$groupName = $atts_with_overriden_defaults['group-name'];
|
$groupName = $atts_with_overriden_defaults['group-name'];
|
||||||
|
$classNamePrefix = NAME;
|
||||||
|
|
||||||
ob_start();
|
ob_start();
|
||||||
try {
|
try {
|
||||||
@ -31,7 +32,6 @@ class EventsListShortcut {
|
|||||||
$events = GraphQlClient::get_upcoming_events($url, (int) $eventsCount);
|
$events = GraphQlClient::get_upcoming_events($url, (int) $eventsCount);
|
||||||
}
|
}
|
||||||
|
|
||||||
$classNamePrefix = NAME;
|
|
||||||
$locale = get_locale();
|
$locale = get_locale();
|
||||||
$isShortOffsetNameShown = Settings::isShortOffsetNameShown();
|
$isShortOffsetNameShown = Settings::isShortOffsetNameShown();
|
||||||
$timeZone = wp_timezone_string();
|
$timeZone = wp_timezone_string();
|
||||||
|
@ -23,6 +23,7 @@ class EventsListWidget extends \WP_Widget {
|
|||||||
$url = Settings::getUrl();
|
$url = Settings::getUrl();
|
||||||
$eventsCount = $options['eventsCount'];
|
$eventsCount = $options['eventsCount'];
|
||||||
$groupName = isset($options['groupName']) ? $options['groupName'] : '';
|
$groupName = isset($options['groupName']) ? $options['groupName'] : '';
|
||||||
|
$classNamePrefix = NAME;
|
||||||
|
|
||||||
try {
|
try {
|
||||||
if ($groupName) {
|
if ($groupName) {
|
||||||
@ -31,7 +32,6 @@ class EventsListWidget extends \WP_Widget {
|
|||||||
$events = GraphQlClient::get_upcoming_events($url, (int) $eventsCount);
|
$events = GraphQlClient::get_upcoming_events($url, (int) $eventsCount);
|
||||||
}
|
}
|
||||||
|
|
||||||
$classNamePrefix = NAME;
|
|
||||||
$locale = get_locale();
|
$locale = get_locale();
|
||||||
$isShortOffsetNameShown = Settings::isShortOffsetNameShown();
|
$isShortOffsetNameShown = Settings::isShortOffsetNameShown();
|
||||||
$timeZone = wp_timezone_string();
|
$timeZone = wp_timezone_string();
|
||||||
|
@ -23,6 +23,8 @@ Features
|
|||||||
- Set the URL of the Mobilizon instance in the settings
|
- Set the URL of the Mobilizon instance in the settings
|
||||||
- Toggle adding named offset in brackets after the time in the settings
|
- Toggle adding named offset in brackets after the time in the settings
|
||||||
|
|
||||||
|
This plugin requests the events via Mobilizon's GraphQL API.
|
||||||
|
|
||||||
The source code is available on [Github](https://github.com/dwaxweiler/connector-mobilizon).
|
The source code is available on [Github](https://github.com/dwaxweiler/connector-mobilizon).
|
||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
@ -41,6 +43,15 @@ You have to use their username, e.g. `@nosliensvivants`, and append the name of
|
|||||||
|
|
||||||
## Changelog
|
## Changelog
|
||||||
|
|
||||||
|
### [1.1.0]
|
||||||
|
#### Added
|
||||||
|
- Add some spacing between event items
|
||||||
|
#### Changed
|
||||||
|
- Update dependencies
|
||||||
|
- Confirm compatibility with WordPress 6.6
|
||||||
|
#### Fixed
|
||||||
|
- Fix undefined variable $classNamePrefix for both error views
|
||||||
|
|
||||||
### [1.0.0]
|
### [1.0.0]
|
||||||
#### Added
|
#### Added
|
||||||
- Display name of group when it cannot be found
|
- Display name of group when it cannot be found
|
||||||
|
@ -9,7 +9,7 @@ if (!defined('ABSPATH')) {
|
|||||||
<div class="<?php echo esc_attr($classNamePrefix); ?>_events-list">
|
<div class="<?php echo esc_attr($classNamePrefix); ?>_events-list">
|
||||||
<ul style="list-style-type: none; padding-left: 0;">
|
<ul style="list-style-type: none; padding-left: 0;">
|
||||||
<?php foreach($events as $event) { ?>
|
<?php foreach($events as $event) { ?>
|
||||||
<li>
|
<li style="margin-top: 10px;">
|
||||||
<a href="<?php echo esc_attr($event['url']); ?>"><?php echo esc_html_e($event['title']); ?></a>
|
<a href="<?php echo esc_attr($event['url']); ?>"><?php echo esc_html_e($event['title']); ?></a>
|
||||||
<br>
|
<br>
|
||||||
<?php echo esc_html_e(Formatter::format_date($locale, $timeZone, $event['beginsOn'], $event['endsOn'], $isShortOffsetNameShown)); ?>
|
<?php echo esc_html_e(Formatter::format_date($locale, $timeZone, $event['beginsOn'], $event['endsOn'], $isShortOffsetNameShown)); ?>
|
||||||
|
Reference in New Issue
Block a user