Rename marketplace plugin to meetletacbfree (mdl_modules.name limit + CI table prefixes)

This commit is contained in:
2026-09-01 23:24:11 +03:30
parent 555cd725f7
commit d987994ded
77 changed files with 1497 additions and 1322 deletions
+8 -8
View File
@@ -17,7 +17,7 @@
/**
* Capability definitions for MeetLet.
*
* @package mod_meetletacbmarketplace
* @package mod_meetletacbfree
* @copyright 2026 MeetLet
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
@@ -25,7 +25,7 @@
defined('MOODLE_INTERNAL') || die();
$capabilities = [
'mod/meetletacbmarketplace:addinstance' => [
'mod/meetletacbfree:addinstance' => [
'riskbitmask' => RISK_XSS,
'captype' => 'write',
'contextlevel' => CONTEXT_COURSE,
@@ -35,7 +35,7 @@ $capabilities = [
],
'clonepermissionsfrom' => 'moodle/course:manageactivities',
],
'mod/meetletacbmarketplace:view' => [
'mod/meetletacbfree:view' => [
'captype' => 'read',
'contextlevel' => CONTEXT_MODULE,
'archetypes' => [
@@ -47,7 +47,7 @@ $capabilities = [
'manager' => CAP_ALLOW,
],
],
'mod/meetletacbmarketplace:join' => [
'mod/meetletacbfree:join' => [
'captype' => 'read',
'contextlevel' => CONTEXT_MODULE,
'archetypes' => [
@@ -57,7 +57,7 @@ $capabilities = [
'manager' => CAP_ALLOW,
],
],
'mod/meetletacbmarketplace:host' => [
'mod/meetletacbfree:host' => [
'captype' => 'write',
'contextlevel' => CONTEXT_MODULE,
'archetypes' => [
@@ -65,7 +65,7 @@ $capabilities = [
'manager' => CAP_ALLOW,
],
],
'mod/meetletacbmarketplace:presenter' => [
'mod/meetletacbfree:presenter' => [
'captype' => 'write',
'contextlevel' => CONTEXT_MODULE,
'archetypes' => [
@@ -74,7 +74,7 @@ $capabilities = [
'manager' => CAP_ALLOW,
],
],
'mod/meetletacbmarketplace:viewrecordings' => [
'mod/meetletacbfree:viewrecordings' => [
'captype' => 'read',
'contextlevel' => CONTEXT_MODULE,
'archetypes' => [
@@ -84,7 +84,7 @@ $capabilities = [
'manager' => CAP_ALLOW,
],
],
'mod/meetletacbmarketplace:grade' => [
'mod/meetletacbfree:grade' => [
'riskbitmask' => RISK_XSS,
'captype' => 'write',
'contextlevel' => CONTEXT_MODULE,
+1 -1
View File
@@ -17,7 +17,7 @@
/**
* Cache definitions for faster Adobe Connect lookups.
*
* @package mod_meetletacbmarketplace
* @package mod_meetletacbfree
* @copyright 2026 MeetLet
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
+6 -3
View File
@@ -17,7 +17,7 @@
/**
* Post-install: migrate legacy mod_meetletacbmdlrules data when present.
*
* @package mod_meetletacbmarketplace
* @package mod_meetletacbfree
* @copyright 2026 MeetLet <info@meetlet.net>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
@@ -27,8 +27,11 @@ defined('MOODLE_INTERNAL') || die();
/**
* Runs after install.xml on first install of this component.
*/
function xmldb_meetletacbmarketplace_install() {
function xmldb_meetletacbfree_install() {
global $DB;
require_once(__DIR__ . '/upgrade.php');
xmldb_meetletacbmarketplace_migrate_from_mdlrules($DB->get_manager());
$dbman = $DB->get_manager();
xmldb_meetletacbfree_rename_legacy_main_table($dbman);
xmldb_meetletacbfree_migrate_from_mdlrules($dbman);
xmldb_meetletacbfree_migrate_from_market($dbman);
}
+7 -7
View File
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
<XMLDB PATH="mod/meetletacbmarketplace/db" VERSION="2026081912" COMMENT="XMLDB for mod_meetletacbmarketplace"
<XMLDB PATH="mod/meetletacbfree/db" VERSION="2026081912" COMMENT="XMLDB for mod_meetletacbfree"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="../../../lib/xmldb/xmldb.xsd"
>
<TABLES>
<TABLE NAME="meetletacbmarketplace" COMMENT="MeetLet Adobe Connect Bridge activities">
<TABLE NAME="meetletacbfree" COMMENT="MeetLet Adobe Connect Bridge activities">
<FIELDS>
<FIELD NAME="id" TYPE="int" LENGTH="10" NOTNULL="true" SEQUENCE="true"/>
<FIELD NAME="course" TYPE="int" LENGTH="10" NOTNULL="true" DEFAULT="0" SEQUENCE="false"/>
@@ -43,7 +43,7 @@
<INDEX NAME="course" UNIQUE="false" FIELDS="course"/>
</INDEXES>
</TABLE>
<TABLE NAME="meetlet_marketplace_meetings" COMMENT="Adobe meeting sco mapping per group">
<TABLE NAME="meetletacbfree_meetings" COMMENT="Adobe meeting sco mapping per group">
<FIELDS>
<FIELD NAME="id" TYPE="int" LENGTH="10" NOTNULL="true" SEQUENCE="true"/>
<FIELD NAME="instanceid" TYPE="int" LENGTH="10" NOTNULL="true" DEFAULT="0" SEQUENCE="false"/>
@@ -58,14 +58,14 @@
</FIELDS>
<KEYS>
<KEY NAME="primary" TYPE="primary" FIELDS="id"/>
<KEY NAME="fk_instance" TYPE="foreign" FIELDS="instanceid" REFTABLE="meetletacbmarketplace" REFFIELDS="id"/>
<KEY NAME="fk_instance" TYPE="foreign" FIELDS="instanceid" REFTABLE="meetletacbfree" REFFIELDS="id"/>
</KEYS>
<INDEXES>
<INDEX NAME="instanceid_idx" UNIQUE="false" FIELDS="instanceid"/>
<INDEX NAME="groupid_idx" UNIQUE="false" FIELDS="groupid"/>
</INDEXES>
</TABLE>
<TABLE NAME="meetlet_marketplace_recordings" COMMENT="Cached recording / offline status">
<TABLE NAME="meetletacbfree_recordings" COMMENT="Cached recording / offline status">
<FIELDS>
<FIELD NAME="id" TYPE="int" LENGTH="10" NOTNULL="true" SEQUENCE="true"/>
<FIELD NAME="instanceid" TYPE="int" LENGTH="10" NOTNULL="true" DEFAULT="0" SEQUENCE="false"/>
@@ -86,14 +86,14 @@
</FIELDS>
<KEYS>
<KEY NAME="primary" TYPE="primary" FIELDS="id"/>
<KEY NAME="fk_instance" TYPE="foreign" FIELDS="instanceid" REFTABLE="meetletacbmarketplace" REFFIELDS="id"/>
<KEY NAME="fk_instance" TYPE="foreign" FIELDS="instanceid" REFTABLE="meetletacbfree" REFFIELDS="id"/>
</KEYS>
<INDEXES>
<INDEX NAME="instance_rec" UNIQUE="true" FIELDS="instanceid, recordingscoid"/>
<INDEX NAME="meeting_idx" UNIQUE="false" FIELDS="meetingscoid"/>
</INDEXES>
</TABLE>
<TABLE NAME="meetlet_marketplace_license" COMMENT="Optional MeetLet site registration identity and auth cache">
<TABLE NAME="meetletacbfree_license" COMMENT="Optional MeetLet site registration identity and auth cache">
<FIELDS>
<FIELD NAME="id" TYPE="int" LENGTH="10" NOTNULL="true" SEQUENCE="true"/>
<FIELD NAME="installation_id" TYPE="char" LENGTH="128" NOTNULL="true" SEQUENCE="false"/>
+22 -22
View File
@@ -17,7 +17,7 @@
/**
* External services for MeetLet Ajax tabs.
*
* @package mod_meetletacbmarketplace
* @package mod_meetletacbfree
* @copyright 2026 MeetLet
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
@@ -25,60 +25,60 @@
defined('MOODLE_INTERNAL') || die();
$functions = [
'mod_meetletacbmarketplace_get_tab' => [
'classname' => 'mod_meetletacbmarketplace\external\get_tab',
'mod_meetletacbfree_get_tab' => [
'classname' => 'mod_meetletacbfree\external\get_tab',
'methodname' => 'execute',
'description' => 'Load MeetLet activity tab content (info, recordings, content)',
'type' => 'read',
'ajax' => true,
'capabilities' => 'mod/meetletacbmarketplace:view',
'capabilities' => 'mod/meetletacbfree:view',
],
'mod_meetletacbmarketplace_get_meeting_status' => [
'classname' => 'mod_meetletacbmarketplace\external\get_meeting_status',
'mod_meetletacbfree_get_meeting_status' => [
'classname' => 'mod_meetletacbfree\external\get_meeting_status',
'methodname' => 'execute',
'description' => 'Poll MeetLet meeting join status for the activity hero',
'type' => 'read',
'ajax' => true,
'capabilities' => 'mod/meetletacbmarketplace:view',
'capabilities' => 'mod/meetletacbfree:view',
],
'mod_meetletacbmarketplace_get_join_url' => [
'classname' => 'mod_meetletacbmarketplace\external\get_join_url',
'mod_meetletacbfree_get_join_url' => [
'classname' => 'mod_meetletacbfree\external\get_join_url',
'methodname' => 'execute',
'description' => 'Prepare Adobe Connect SSO join URL for the current user',
'type' => 'write',
'ajax' => true,
'capabilities' => 'mod/meetletacbmarketplace:join',
'capabilities' => 'mod/meetletacbfree:join',
],
'mod_meetletacbmarketplace_get_recording_launch_url' => [
'classname' => 'mod_meetletacbmarketplace\external\get_recording_launch_url',
'mod_meetletacbfree_get_recording_launch_url' => [
'classname' => 'mod_meetletacbfree\external\get_recording_launch_url',
'methodname' => 'execute',
'description' => 'Prepare Adobe Connect SSO URL to play or edit a recording',
'type' => 'write',
'ajax' => true,
'capabilities' => 'mod/meetletacbmarketplace:view',
'capabilities' => 'mod/meetletacbfree:view',
],
'mod_meetletacbmarketplace_get_content_launch_url' => [
'classname' => 'mod_meetletacbmarketplace\external\get_content_launch_url',
'mod_meetletacbfree_get_content_launch_url' => [
'classname' => 'mod_meetletacbfree\external\get_content_launch_url',
'methodname' => 'execute',
'description' => 'Prepare Adobe Connect SSO URL to view uploaded meeting content',
'type' => 'write',
'ajax' => true,
'capabilities' => 'mod/meetletacbmarketplace:view',
'capabilities' => 'mod/meetletacbfree:view',
],
'mod_meetletacbmarketplace_search_server_meetings' => [
'classname' => 'mod_meetletacbmarketplace\external\search_server_meetings',
'mod_meetletacbfree_search_server_meetings' => [
'classname' => 'mod_meetletacbfree\external\search_server_meetings',
'methodname' => 'execute',
'description' => 'Search or list recent Adobe Connect meetings for the activity form',
'type' => 'read',
'ajax' => true,
'capabilities' => 'moodle/course:manageactivities,mod/meetletacbmarketplace:addinstance',
'capabilities' => 'moodle/course:manageactivities,mod/meetletacbfree:addinstance',
],
'mod_meetletacbmarketplace_rename_recording' => [
'classname' => 'mod_meetletacbmarketplace\external\rename_recording',
'mod_meetletacbfree_rename_recording' => [
'classname' => 'mod_meetletacbfree\external\rename_recording',
'methodname' => 'execute',
'description' => 'Rename an Adobe Connect recording',
'type' => 'write',
'ajax' => true,
'capabilities' => 'mod/meetletacbmarketplace:host',
'capabilities' => 'mod/meetletacbfree:host',
],
];
+4 -4
View File
@@ -15,9 +15,9 @@
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Scheduled tasks for mod_meetletacbmarketplace.
* Scheduled tasks for mod_meetletacbfree.
*
* @package mod_meetletacbmarketplace
* @package mod_meetletacbfree
* @copyright 2026 MeetLet <info@meetlet.net>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
@@ -26,7 +26,7 @@ defined('MOODLE_INTERNAL') || die();
$tasks = [
[
'classname' => 'mod_meetletacbmarketplace\\task\\sync_recordings',
'classname' => 'mod_meetletacbfree\\task\\sync_recordings',
'blocking' => 0,
'minute' => '*/15',
'hour' => '*',
@@ -35,7 +35,7 @@ $tasks = [
'dayofweek' => '*',
],
[
'classname' => 'mod_meetletacbmarketplace\\task\\registration_heartbeat',
'classname' => 'mod_meetletacbfree\\task\\registration_heartbeat',
'blocking' => 0,
'minute' => '15',
'hour' => '3',
+342 -170
View File
File diff suppressed because it is too large Load Diff