diff --git a/.github/workflows/phpunit.yml b/.github/workflows/phpunit.yml index 67fe092..3e4e60a 100644 --- a/.github/workflows/phpunit.yml +++ b/.github/workflows/phpunit.yml @@ -3,6 +3,11 @@ name: PHPUnit Plugin Tests on: [push, pull_request] jobs: - lint: - name: Run PHPUnit test suites + phpunit5: + name: Run PHPUnit test suites - Elgg 5 uses: ColdTrick/.github/.github/workflows/phpunit.yml@master + phpunit6: + name: Run PHPUnit test suites - Elgg 6 + uses: ColdTrick/.github/.github/workflows/phpunit.yml@master + with: + elgg_major_version: 6 diff --git a/README.md b/README.md index b487cde..1814778 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ Test Panel ========== -![Elgg 5.0](https://img.shields.io/badge/Elgg-5.0-green.svg) +![Elgg 6.0](https://img.shields.io/badge/Elgg-6.0-green.svg) ![Lint Checks](https://github.com/ColdTrick/test_panel/actions/workflows/lint.yml/badge.svg?event=push) [![Latest Stable Version](https://poser.pugx.org/coldtrick/test_panel/v/stable.svg)](https://packagist.org/packages/coldtrick/test_panel) [![License](https://poser.pugx.org/coldtrick/test_panel/license.svg)](https://packagist.org/packages/coldtrick/test_panel) diff --git a/classes/ColdTrick/TestPanel/EmailHandler.php b/classes/ColdTrick/TestPanel/EmailHandler.php index e65dcd5..e5942fb 100644 --- a/classes/ColdTrick/TestPanel/EmailHandler.php +++ b/classes/ColdTrick/TestPanel/EmailHandler.php @@ -40,7 +40,7 @@ public static function validate(\Elgg\Event $event): ?bool { } $allowed_emails = test_panel_get_panel_members_email_addresses(); - if (empty($allowed_emails) || !is_array($allowed_emails)) { + if (empty($allowed_emails)) { // nobody is allowed (shouldn't happen) return false; } diff --git a/composer.json b/composer.json index a892923..e1645aa 100644 --- a/composer.json +++ b/composer.json @@ -10,6 +10,6 @@ "issues": "https://github.com/ColdTrick/test_panel/issues" }, "conflict": { - "elgg/elgg": "<5.0" + "elgg/elgg": "<6.0" } } diff --git a/composer.lock b/composer.lock index 458f070..89969d7 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "fadb48929e2775b231ac24af524a4696", + "content-hash": "9c1d00dbe6f2cb1caf8b5ba4375dd948", "packages": [], "packages-dev": [], "aliases": [], diff --git a/lib/functions.php b/lib/functions.php index ab49747..c8ca445 100644 --- a/lib/functions.php +++ b/lib/functions.php @@ -3,6 +3,8 @@ * All helper functions are bundled here */ +use Elgg\Database\MetadataTable; +use Elgg\Database\RelationshipsTable; use Elgg\Database\Select; /** @@ -41,12 +43,12 @@ function test_panel_get_panel_members_email_addresses(): array { $result = []; - $select = Select::fromTable('metadata', 'md'); - $select->select('md.value'); - $select->joinEntitiesTable('md', 'entity_guid', 'inner', 'e'); + $select = Select::fromTable(MetadataTable::TABLE_NAME, 'md'); + $select->select("{$select->getTableAlias()}.value"); + $select->joinEntitiesTable($select->getTableAlias(), 'entity_guid', 'inner', 'e'); $select->joinMetadataTable('e', 'guid', null, 'inner', 'mda'); $select->andWhere($select->compare('e.type', '=', 'user', ELGG_VALUE_STRING)); - $select->andWhere($select->compare('md.name', '=', 'email', ELGG_VALUE_STRING)); + $select->andWhere($select->compare("{$select->getTableAlias()}.name", '=', 'email', ELGG_VALUE_STRING)); // admins $ands = $select->merge([ @@ -57,12 +59,12 @@ function test_panel_get_panel_members_email_addresses(): array { // or group member $group_guids = test_panel_get_group_guids(); if (!empty($group_guids)) { - $group_members = $select->subquery('entity_relationships'); + $group_members = $select->subquery(RelationshipsTable::TABLE_NAME); $group_members->select('guid_one') ->where($select->compare('relationship', '=', 'member', ELGG_VALUE_STRING)) ->andWhere($select->compare('guid_two', 'in', $group_guids, ELGG_VALUE_GUID)); - $or = $select->compare('md.entity_guid', 'in', $group_members->getSQL()); + $or = $select->compare("{$select->getTableAlias()}.entity_guid", 'in', $group_members->getSQL()); $ands = $select->merge([$ands, $or], 'OR'); } diff --git a/views/default/plugins/test_panel/settings.php b/views/default/plugins/test_panel/settings.php index 9245b66..5404a8f 100644 --- a/views/default/plugins/test_panel/settings.php +++ b/views/default/plugins/test_panel/settings.php @@ -26,8 +26,7 @@ 'switch' => true, ]); -$title = elgg_echo('test_panel:settings:message'); - +// message to non-test members $content = elgg_view_field([ '#type' => 'text', '#label' => elgg_echo('test_panel:settings:message_title'), @@ -42,4 +41,4 @@ 'value' => $plugin->message_content ?? elgg_echo('limited_access'), ]); -echo elgg_view_module('info', $title, $content); +echo elgg_view_module('info', elgg_echo('test_panel:settings:message'), $content);