1
0
mirror of https://github.com/dwaxweiler/connector-mobilizon synced 2025-02-28 17:37:49 +01:00

adapt block view

This commit is contained in:
Daniel Waxweiler 2023-05-07 22:12:36 +02:00
parent e69d87187b
commit a8cda32ae3
4 changed files with 27 additions and 10 deletions

View File

@ -41,12 +41,29 @@ class EventsListBlock {
} }
public static function render($block_attributes, $content) { public static function render($block_attributes, $content) {
$classNamePrefix = NAME; $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'] : '';
ob_start(); ob_start();
require dirname(__DIR__) . '/view/events-list.php'; try {
if ($groupName) {
$events = GraphQlClient::get_upcoming_events_by_group_name($url, (int) $eventsCount, $groupName);
} else {
$events = GraphQlClient::get_upcoming_events($url, (int) $eventsCount);
}
$classNamePrefix = NAME;
$locale = get_locale();
$isShortOffsetNameShown = Settings::isShortOffsetNameShown();
$timeZone = wp_timezone_string();
require dirname(__DIR__) . '/view/events-list.php';
} catch (GeneralException $e) {
require dirname(__DIR__) . '/view/events-list-not-loaded.php';
} catch (GroupNotFoundException $e) {
require dirname(__DIR__) . '/view/events-list-group-not-found.php';
}
$output = ob_get_clean(); $output = ob_get_clean();
return $output; return $output;
} }

View File

@ -31,11 +31,10 @@ class EventsListShortcut {
ob_start(); ob_start();
try { try {
if ($groupName) { if ($groupName) {
$data = GraphQlClient::get_upcoming_events_by_group_name($url, (int) $eventsCount, $groupName); $events = GraphQlClient::get_upcoming_events_by_group_name($url, (int) $eventsCount, $groupName);
} else { } else {
$data = GraphQlClient::get_upcoming_events($url, (int) $eventsCount); $events = GraphQlClient::get_upcoming_events($url, (int) $eventsCount);
} }
$events = $data['data']['group']['organizedEvents']['elements'];
$classNamePrefix = NAME; $classNamePrefix = NAME;
$locale = get_locale(); $locale = get_locale();

View File

@ -31,11 +31,10 @@ class EventsListWidget extends \WP_Widget {
try { try {
if ($groupName) { if ($groupName) {
$data = GraphQlClient::get_upcoming_events_by_group_name($url, (int) $eventsCount, $groupName); $events = GraphQlClient::get_upcoming_events_by_group_name($url, (int) $eventsCount, $groupName);
} else { } else {
$data = GraphQlClient::get_upcoming_events($url, (int) $eventsCount); $events = GraphQlClient::get_upcoming_events($url, (int) $eventsCount);
} }
$events = $data['data']['events']['elements'];
$classNamePrefix = NAME; $classNamePrefix = NAME;
$locale = get_locale(); $locale = get_locale();

View File

@ -65,7 +65,8 @@ final class GraphQlClient {
self::checkData($data); self::checkData($data);
// SessionCache.add(sessionStorage, { url, query, variables: { limit } }, data) // SessionCache.add(sessionStorage, { url, query, variables: { limit } }, data)
return $data; $events = $data['data']['events']['elements'];
return $events;
} }
public static function get_upcoming_events_by_group_name(string $url, int $limit, string $groupName): array { public static function get_upcoming_events_by_group_name(string $url, int $limit, string $groupName): array {
@ -115,7 +116,8 @@ final class GraphQlClient {
// return Promise.resolve(data) // return Promise.resolve(data)
// } // }
// ) // )
return $data; $events = $data['data']['group']['organizedEvents']['elements'];
return $events;
} }
private static function checkData($data) { private static function checkData($data) {