Courses links

Activities ::: mod_courselinks
Maintained by Anthony Durif
Mod which allows to display links in your course to other courses (to facilitate navigation between courses for example). This mod is displayed in a label.
Latest release:
79 sites
76 downloads
7 fans
Moodle 3.6, 3.7, 3.8, 3.9, 3.10, 3.11

This mod goals are to displays in a course links to others courses in order to have a navigation between several courses.

Display links to others courses according three display types for now:

  • Card: links to courses will be display as cards with their own course image.
  • List : links to courses will be listed one below the other.
  • Navigation menu: links to courses will be displayed on a menu where each course will be a menu item.

Be careful, a link is displayed only for users with access rights to this course !


Screenshots

Screenshot #0

Contributors

Anthony Durif (Lead maintainer)
Please login to view contributors details and/or to contact them

Comments RSS

Show comments
  • Sat, Jul 10, 2021, 4:39 PM
    Hi Anthony. Thanks for creating and sharing this plugin - we're really interested in using it in a number of courses. Unfortunately, when we try to create a Course Links activity we're encountering the following error:

    Warning: require_once(/var/www/html/moodle/vendor/autoload.php): failed to open stream: No such file or directory in /var/www/html/moodle/mod/courselinks/mod_form.php on line 29

    Fatal error: require_once(): Failed opening required '/var/www/html/moodle/vendor/autoload.php' (include_path='/var/www/html/moodle/lib/pear:.:/usr/share/php') in /var/www/html/moodle/mod/courselinks/mod_form.php on line 29

    It looks to be an issue relating to a directory path (/var/www/html/moodle/vendor) which doesn't exist on our system. Do you have any advice re. how to resolve this issue?

    Thanks again.
  • Sun, Jul 11, 2021, 6:14 PM
    Hello Roland. Thanks for your comment.

    A new version of the plugin is now available which is compatible with moodle 3.11. We did some changes and we took advantage of these developments to correct the potential error you encountered. By using this last version you should be able to use the plugin correctly in your platform.
    Feel free to tell me if the problem is still here with it, to do feedbacks or to propose some improvements for the plugin.

    Thanks .
  • Tue, Jul 13, 2021, 9:57 PM
    Saludos Anthony, agradezco el plugin y lo he instalado; sin embargo no me es posible utilizarlo ya que me aparece el mensaje "Imposible crear enlaces a otros cursos porque no tiene derechos de administrador en los cursos, excepto este curso actual.", por favor es posible se me oriente como proceder ya que no logro entender el mensaje y el inconveniente que se me ha presentado. Gracias.
  • Tue, Jul 13, 2021, 11:35 PM
    Hello Mariuxi.

    In the plugin form only courses where you are at least enrolled as teacher are displayed in the list. Maybe you are only teaching in one course, the current course. If you create another course it will appear in the list and you will able to select it to add a link. The plugin does not list all available courses but only courses where the current user has edition rights (i'm checklist the moodle/role:assign capability).
    Do not hesitate to come back to me if your problem is still here. Feel free to participate to the plugin translation, sorry i'm not fluent in spanish (I'm french) and maybe the message was not very clear.

    Thanks.
  • Wed, Jul 14, 2021, 6:59 AM
    Gracias Anthony por la gentil y pronta respuesta, en mi caso tengo el rol de administrador y había instalado el módulo para que los usuarios lo puedan visualizar, al parecer con mi perfil no me es posible. Gracias nuevamente.
  • Thu, Jul 15, 2021, 3:24 PM
    Yes with the platform administrator rights you do not have the display on all courses except you are directly enrolled in some. You maybe can enrol yourself in a course to see the complete functionnality. Besides your users should use it with they are enrolled as teacher or managers on courses. We orignnaly decided to make this choice to not display a large list of courses and limit possible conflicts.
    Thanks for your feedback.
  • Sat, Jul 17, 2021, 5:00 PM
    Hi Anthony. Apologies for the late follow-up, and just to confirm we've now been able to test the latest version of the Course Links, but unfortunately we're still encountering errors when trying to create a Course Link activity. The following is the error we're now seeing:

    QuickForm Error: nonexistent html element Element 'completionunlocked' does not exist in HTML_QuickForm::getElement()
    Backtrace :
    Array
    (
    [0] => Array
    (
    [file] => /var/www/html/moodle2021/lib/pear/HTML/QuickForm.php
    [line] => 1998
    [function] => __construct
    [class] => PEAR_Error
    [type] => -> [args] => Array
    (
    [0] => nonexistent html element
    [1] => -3
    [2] => 16
    [3] => pear_handle_error
    [4] => Element 'completionunlocked' does not exist in HTML_QuickForm::getElement()
    )

    )

    [1] => Array
    (
    [file] => /var/www/html/moodle2021/lib/pear/PEAR.php
    [line] => 543
    [function] => __construct
    [class] => HTML_QuickForm_Error
    [object] => HTML_QuickForm_Error Object
    (
    [error_message_prefix] => QuickForm Error:
    [mode] => 16
    [level] => 1024
    [code] => -3
    [message] => nonexistent html element
    [userinfo] => Element 'completionunlocked' does not exist in HTML_QuickForm::getElement()
    [backtrace] => Array
    *RECURSION*
    [callback] => pear_handle_error
    )

    [type] => -> [args] => Array
    (
    [0] => -3
    [1] => 16
    [2] => pear_handle_error
    [3] => Element 'completionunlocked' does not exist in HTML_QuickForm::getElement()
    )

    )

    [2] => Array
    (
    [file] => /var/www/html/moodle2021/lib/pear/HTML/Common.php
    [line] => 110
    [function] => raiseError
    [class] => PEAR
    [object] => PEAR Object
    (
    [_debug] =>
    [_default_error_mode] =>
    [_default_error_options] =>
    [_default_error_handler] =>
    [_error_class] => PEAR_Error
    [_expected_errors] => Array
    (
    )

    )

    [type] => -> [args] => Array
    (
    [0] =>
    [1] => -3
    [2] => 16
    [3] => pear_handle_error
    [4] => Element 'completionunlocked' does not exist in HTML_QuickForm::getElement()
    [5] => HTML_QuickForm_Error
    [6] => 1
    )

    )

    [3] => Array
    (
    [file] => /var/www/html/moodle2021/lib/pear/HTML/QuickForm.php
    [line] => 760
    [function] => raiseError
    [class] => HTML_Common
    [type] => ::
    [args] => Array
    (
    [0] =>
    [1] => -3
    [2] =>
    [3] => 512
    [4] => Element 'completionunlocked' does not exist in HTML_QuickForm::getElement()
    [5] => HTML_QuickForm_Error
    [6] => 1
    )

    )

    [4] => Array
    (
    [file] => /var/www/html/moodle2021/course/moodleform_mod.php
    [line] => 339
    [function] => getElement
    [class] => HTML_QuickForm
    [object] => MoodleQuickForm Object
    (
    [_types] => Array
    (
    [course] => int
    [coursemodule] => int
    [section] => int
    [module] => int
    [modulename] => plugin
    [instance] => int
    [add] => alphanum
    [update] => int
    [return] => bool
    [sr] => int
    [sesskey] => raw
    [_qf__mod_courselinks_mod_form] => raw
    )

    [_dependencies] => Array
    (
    )

    [_hideifs:protected] => Array
    (
    )

    [_noSubmitButtons] => Array
    (
    )

    [_cancelButtons] => Array
    (
    [0] => cancel
    )

    [_advancedElements] => Array
    (
    )

    [_collapsibleElements] => Array
    (
    )

    [_disableShortforms] =>
    [_use_form_change_checker:protected] => 1
    [_initial_form_dirty_state:protected] =>
    [_formName] => mod_courselinks_mod_form
    [_pageparams] =>
    [_newrepeats:protected] => Array
    (
    )

    [_ajaxformdata:protected] =>
    [clientvalidation:protected] =>
    [_elements] => Array
    (
    [0] => MoodleQuickForm_hidden Object
    (
    [_helpbutton] =>
    [_label] =>
    [_type] => hidden
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => course
    [type] => hidden
    [value] => 4
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [1] => MoodleQuickForm_hidden Object
    (
    [_helpbutton] =>
    [_label] =>
    [_type] => hidden
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => coursemodule
    [type] => hidden
    [value] =>
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [2] => MoodleQuickForm_hidden Object
    (
    [_helpbutton] =>
    [_label] =>
    [_type] => hidden
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => section
    [type] => hidden
    [value] => 0
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [3] => MoodleQuickForm_hidden Object
    (
    [_helpbutton] =>
    [_label] =>
    [_type] => hidden
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => module
    [type] => hidden
    [value] => 27
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [4] => MoodleQuickForm_hidden Object
    (
    [_helpbutton] =>
    [_label] =>
    [_type] => hidden
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => modulename
    [type] => hidden
    [value] => courselinks
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [5] => MoodleQuickForm_hidden Object
    (
    [_helpbutton] =>
    [_label] =>
    [_type] => hidden
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => instance
    [type] => hidden
    [value] =>
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [6] => MoodleQuickForm_hidden Object
    (
    [_helpbutton] =>
    [_label] =>
    [_type] => hidden
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => add
    [type] => hidden
    [value] => courselinks
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [7] => MoodleQuickForm_hidden Object
    (
    [_helpbutton] =>
    [_label] =>
    [_type] => hidden
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => update
    [type] => hidden
    [value] => 0
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [8] => MoodleQuickForm_hidden Object
    (
    [_helpbutton] =>
    [_label] =>
    [_type] => hidden
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => return
    [type] => hidden
    [value] => 0
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [9] => MoodleQuickForm_hidden Object
    (
    [_helpbutton] =>
    [_label] =>
    [_type] => hidden
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => sr
    [type] => hidden
    [value] => 0
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [10] => HTML_QuickForm_html Object
    (
    [_text] =>
    Impossible to create links to other courses because you do not have manager rights on courses except this current course.
    [_label] =>
    [_type] => html
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] =>
    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [11] => MoodleQuickForm_cancel Object
    (
    [primary:protected] =>
    [customclassoverride:protected] =>
    [_label] =>
    [_type] => submit
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => cancel
    [value] => Back to course
    [type] => submit
    [data-skip-validation] => 1
    [data-cancel] => 1
    [onclick] => skipClientValidation = true; return true;
    [class] => btn-cancel
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [12] => MoodleQuickForm_hidden Object
    (
    [_helpbutton] =>
    [_label] =>
    [_type] => hidden
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => sesskey
    [type] => hidden
    [value] => zo4JWEn5b7
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [13] => MoodleQuickForm_hidden Object
    (
    [_helpbutton] =>
    [_label] =>
    [_type] => hidden
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => _qf__mod_courselinks_mod_form
    [type] => hidden
    [value] => 1
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    )

    [_elementIndex] => Array
    (
    [course] => 0
    [coursemodule] => 1
    [section] => 2
    [module] => 3
    [modulename] => 4
    [instance] => 5
    [add] => 6
    [update] => 7
    [return] => 8
    [sr] => 9
    [] => 10
    [cancel] => 11
    [sesskey] => 12
    [_qf__mod_courselinks_mod_form] => 13
    )

    [_duplicateIndex] => Array
    (
    )

    [_required] => Array
    (
    )

    [_jsPrefix] => Invalid information entered.
    [_jsPostfix] => Please correct these fields.
    [_datasource] =>
    [_defaultValues] => Array
    (
    [sesskey] => zo4JWEn5b7
    [_qf__mod_courselinks_mod_form] => 1
    [section] => 0
    [visible] => 1
    [course] => 4
    [module] => 27
    [modulename] => courselinks
    [groupmode] => 0
    [groupingid] => 0
    [id] =>
    [instance] =>
    [coursemodule] =>
    [completion] => 1
    [completionview] => 1
    [introeditor] => Array
    (
    [text] =>
    [format] => 1
    [itemid] => 825480738
    )

    [return] => 0
    [sr] => 0
    [add] => courselinks
    [assessed] => 0
    [ratingtime] => 0
    )

    [_constantValues] => Array
    (
    )

    [_submitValues] => Array
    (
    )

    [_submitFiles] => Array
    (
    )

    [_maxFileSize] => 1048576
    [_freezeAll] =>
    [_rules] => Array
    (
    )

    [_formRules] => Array
    (
    )

    [_errors] => Array
    (
    )

    [_requiredNote] => There are required fields in this form marked .
    [_flagSubmitted] =>
    [_attributes] => Array
    (
    [autocomplete] => off
    [action] => modedit.php
    [method] => post
    [accept-charset] => utf-8
    [id] => mform1_CP2V0v117LspOoC
    [class] => mform
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    [_reqHTML] => [_advancedHTML] =>Advanced element )

    [type] => -> [args] => Array
    (
    [0] => completionunlocked
    )

    )

    [5] => Array
    (
    [file] => /var/www/html/moodle2021/lib/formslib.php
    [line] => 986
    [function] => definition_after_data
    [class] => moodleform_mod
    [object] => mod_courselinks_mod_form Object
    (
    [current:protected] => stdClass Object
    (
    [section] => 0
    [visible] => 1
    [course] => 4
    [module] => 27
    [modulename] => courselinks
    [groupmode] => 0
    [groupingid] => 0
    [id] =>
    [instance] =>
    [coursemodule] =>
    [completion] => 1
    [completionview] => 1
    [introeditor] => Array
    (
    [text] =>
    [format] => 1
    [itemid] => 825480738
    )

    [return] => 0
    [sr] => 0
    [add] => courselinks
    )

    [_instance:protected] =>
    [_section:protected] => 0
    [_cm:protected] =>
    [_course:protected] => stdClass Object
    (
    [id] => 4
    [category] => 1
    [sortorder] => 10001
    [fullname] => New Activities Testing Area
    [shortname] => New Activities Testing Area
    [idnumber] =>
    [summary] =>
    [summaryformat] => 1
    [format] => topics
    [showgrades] => 1
    [newsitems] => 5
    [startdate] => 1626105600
    [enddate] => 1657641600
    [relativedatesmode] => 0
    [marker] => 0
    [maxbytes] => 0
    [legacyfiles] => 0
    [showreports] => 0
    [visible] => 1
    [visibleold] => 1
    [downloadcontent] =>
    [groupmode] => 0
    [groupmodeforce] => 0
    [defaultgroupingid] => 0
    [lang] =>
    [calendartype] =>
    [theme] =>
    [timecreated] => 1626243402
    [timemodified] => 1626243402
    [requested] => 0
    [enablecompletion] => 1
    [completionnotify] => 0
    [cacherev] => 1626511673
    [originalcourseid] =>
    )

    [_features:protected] => stdClass Object
    (
    [groups] =>
    [groupings] =>
    [outcomes] =>
    [hasgrades] =>
    [idnumber] => 1
    [introeditor] => 1
    [defaultcompletion] => 1
    [rating] =>
    [showdescription] => 1
    [gradecat] =>
    [advancedgrading] =>
    [canrescale] =>
    )

    [_customcompletionelements:protected] =>
    [_modname:protected] => courselinks
    [context:protected] => context_course Object
    (
    [_id:protected] => 155
    [_contextlevel:protected] => 50
    [_instanceid:protected] => 4
    [_path:protected] => /1/3/155
    [_depth:protected] => 3
    [_locked:protected] => 0
    )

    [_outcomesused:protected] =>
    [applyadminlockedflags:protected] =>
    [courseformat:protected] => format_topics Object
    (
    [courseid:protected] => 4
    [format:protected] => topics
    [course:protected] => stdClass Object
    (
    [id] => 4
    [category] => 1
    [sortorder] => 10001
    [fullname] => New Activities Testing Area
    [shortname] => New Activities Testing Area
    [idnumber] =>
    [summary] =>
    [summaryformat] => 1
    [format] => topics
    [showgrades] => 1
    [newsitems] => 5
    [startdate] => 1626105600
    [enddate] => 1657641600
    [relativedatesmode] => 0
    [marker] => 0
    [maxbytes] => 0
    [legacyfiles] => 0
    [showreports] => 0
    [visible] => 1
    [visibleold] => 1
    [downloadcontent] =>
    [groupmode] => 0
    [groupmodeforce] => 0
    [defaultgroupingid] => 0
    [lang] =>
    [calendartype] =>
    [theme] =>
    [timecreated] => 1626243402
    [timemodified] => 1626243402
    [requested] => 0
    [enablecompletion] => 1
    [completionnotify] => 0
    [cacherev] => 1626511673
    [originalcourseid] =>
    [hiddensections] => 0
    [coursedisplay] => 0
    )

    [formatoptions:protected] => Array
    (
    [0] => Array
    (
    [hiddensections] => 0
    [coursedisplay] => 0
    )

    )

    )

    [gradedorrated:moodleform_mod:private] =>
    [_formname:protected] => mod_courselinks_mod_form
    [_form:protected] => MoodleQuickForm Object
    (
    [_types] => Array
    (
    [course] => int
    [coursemodule] => int
    [section] => int
    [module] => int
    [modulename] => plugin
    [instance] => int
    [add] => alphanum
    [update] => int
    [return] => bool
    [sr] => int
    [sesskey] => raw
    [_qf__mod_courselinks_mod_form] => raw
    )

    [_dependencies] => Array
    (
    )

    [_hideifs:protected] => Array
    (
    )

    [_noSubmitButtons] => Array
    (
    )

    [_cancelButtons] => Array
    (
    [0] => cancel
    )

    [_advancedElements] => Array
    (
    )

    [_collapsibleElements] => Array
    (
    )

    [_disableShortforms] =>
    [_use_form_change_checker:protected] => 1
    [_initial_form_dirty_state:protected] =>
    [_formName] => mod_courselinks_mod_form
    [_pageparams] =>
    [_newrepeats:protected] => Array
    (
    )

    [_ajaxformdata:protected] =>
    [clientvalidation:protected] =>
    [_elements] => Array
    (
    [0] => MoodleQuickForm_hidden Object
    (
    [_helpbutton] =>
    [_label] =>
    [_type] => hidden
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => course
    [type] => hidden
    [value] => 4
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [1] => MoodleQuickForm_hidden Object
    (
    [_helpbutton] =>
    [_label] =>
    [_type] => hidden
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => coursemodule
    [type] => hidden
    [value] =>
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [2] => MoodleQuickForm_hidden Object
    (
    [_helpbutton] =>
    [_label] =>
    [_type] => hidden
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => section
    [type] => hidden
    [value] => 0
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [3] => MoodleQuickForm_hidden Object
    (
    [_helpbutton] =>
    [_label] =>
    [_type] => hidden
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => module
    [type] => hidden
    [value] => 27
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [4] => MoodleQuickForm_hidden Object
    (
    [_helpbutton] =>
    [_label] =>
    [_type] => hidden
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => modulename
    [type] => hidden
    [value] => courselinks
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [5] => MoodleQuickForm_hidden Object
    (
    [_helpbutton] =>
    [_label] =>
    [_type] => hidden
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => instance
    [type] => hidden
    [value] =>
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [6] => MoodleQuickForm_hidden Object
    (
    [_helpbutton] =>
    [_label] =>
    [_type] => hidden
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => add
    [type] => hidden
    [value] => courselinks
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [7] => MoodleQuickForm_hidden Object
    (
    [_helpbutton] =>
    [_label] =>
    [_type] => hidden
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => update
    [type] => hidden
    [value] => 0
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [8] => MoodleQuickForm_hidden Object
    (
    [_helpbutton] =>
    [_label] =>
    [_type] => hidden
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => return
    [type] => hidden
    [value] => 0
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [9] => MoodleQuickForm_hidden Object
    (
    [_helpbutton] =>
    [_label] =>
    [_type] => hidden
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => sr
    [type] => hidden
    [value] => 0
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [10] => HTML_QuickForm_html Object
    (
    [_text] =>
    Impossible to create links to other courses because you do not have manager rights on courses except this current course.
    [_label] =>
    [_type] => html
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] =>
    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [11] => MoodleQuickForm_cancel Object
    (
    [primary:protected] =>
    [customclassoverride:protected] =>
    [_label] =>
    [_type] => submit
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => cancel
    [value] => Back to course
    [type] => submit
    [data-skip-validation] => 1
    [data-cancel] => 1
    [onclick] => skipClientValidation = true; return true;
    [class] => btn-cancel
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [12] => MoodleQuickForm_hidden Object
    (
    [_helpbutton] =>
    [_label] =>
    [_type] => hidden
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => sesskey
    [type] => hidden
    [value] => zo4JWEn5b7
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [13] => MoodleQuickForm_hidden Object
    (
    [_helpbutton] =>
    [_label] =>
    [_type] => hidden
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => _qf__mod_courselinks_mod_form
    [type] => hidden
    [value] => 1
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    )

    [_elementIndex] => Array
    (
    [course] => 0
    [coursemodule] => 1
    [section] => 2
    [module] => 3
    [modulename] => 4
    [instance] => 5
    [add] => 6
    [update] => 7
    [return] => 8
    [sr] => 9
    [] => 10
    [cancel] => 11
    [sesskey] => 12
    [_qf__mod_courselinks_mod_form] => 13
    )

    [_duplicateIndex] => Array
    (
    )

    [_required] => Array
    (
    )

    [_jsPrefix] => Invalid information entered.
    [_jsPostfix] => Please correct these fields.
    [_datasource] =>
    [_defaultValues] => Array
    (
    [sesskey] => zo4JWEn5b7
    [_qf__mod_courselinks_mod_form] => 1
    [section] => 0
    [visible] => 1
    [course] => 4
    [module] => 27
    [modulename] => courselinks
    [groupmode] => 0
    [groupingid] => 0
    [id] =>
    [instance] =>
    [coursemodule] =>
    [completion] => 1
    [completionview] => 1
    [introeditor] => Array
    (
    [text] =>
    [format] => 1
    [itemid] => 825480738
    )

    [return] => 0
    [sr] => 0
    [add] => courselinks
    [assessed] => 0
    [ratingtime] => 0
    )

    [_constantValues] => Array
    (
    )

    [_submitValues] => Array
    (
    )

    [_submitFiles] => Array
    (
    )

    [_maxFileSize] => 1048576
    [_freezeAll] =>
    [_rules] => Array
    (
    )

    [_formRules] => Array
    (
    )

    [_errors] => Array
    (
    )

    [_requiredNote] => There are required fields in this form marked .
    [_flagSubmitted] =>
    [_attributes] => Array
    (
    [autocomplete] => off
    [action] => modedit.php
    [method] => post
    [accept-charset] => utf-8
    [id] => mform1_CP2V0v117LspOoC
    [class] => mform
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    [_reqHTML] => [_advancedHTML] =>Advanced element )

    [_customdata:protected] =>
    [_ajaxformdata:protected] =>
    [_definition_finalized:protected] => 1
    [_validated:protected] =>
    )

    [type] => -> [args] => Array
    (
    )

    )

    [6] => Array
    (
    [file] => /var/www/html/moodle2021/course/modedit.php
    [line] => 212
    [function] => display
    [class] => moodleform
    [object] => mod_courselinks_mod_form Object
    (
    [current:protected] => stdClass Object
    (
    [section] => 0
    [visible] => 1
    [course] => 4
    [module] => 27
    [modulename] => courselinks
    [groupmode] => 0
    [groupingid] => 0
    [id] =>
    [instance] =>
    [coursemodule] =>
    [completion] => 1
    [completionview] => 1
    [introeditor] => Array
    (
    [text] =>
    [format] => 1
    [itemid] => 825480738
    )

    [return] => 0
    [sr] => 0
    [add] => courselinks
    )

    [_instance:protected] =>
    [_section:protected] => 0
    [_cm:protected] =>
    [_course:protected] => stdClass Object
    (
    [id] => 4
    [category] => 1
    [sortorder] => 10001
    [fullname] => New Activities Testing Area
    [shortname] => New Activities Testing Area
    [idnumber] =>
    [summary] =>
    [summaryformat] => 1
    [format] => topics
    [showgrades] => 1
    [newsitems] => 5
    [startdate] => 1626105600
    [enddate] => 1657641600
    [relativedatesmode] => 0
    [marker] => 0
    [maxbytes] => 0
    [legacyfiles] => 0
    [showreports] => 0
    [visible] => 1
    [visibleold] => 1
    [downloadcontent] =>
    [groupmode] => 0
    [groupmodeforce] => 0
    [defaultgroupingid] => 0
    [lang] =>
    [calendartype] =>
    [theme] =>
    [timecreated] => 1626243402
    [timemodified] => 1626243402
    [requested] => 0
    [enablecompletion] => 1
    [completionnotify] => 0
    [cacherev] => 1626511673
    [originalcourseid] =>
    )

    [_features:protected] => stdClass Object
    (
    [groups] =>
    [groupings] =>
    [outcomes] =>
    [hasgrades] =>
    [idnumber] => 1
    [introeditor] => 1
    [defaultcompletion] => 1
    [rating] =>
    [showdescription] => 1
    [gradecat] =>
    [advancedgrading] =>
    [canrescale] =>
    )

    [_customcompletionelements:protected] =>
    [_modname:protected] => courselinks
    [context:protected] => context_course Object
    (
    [_id:protected] => 155
    [_contextlevel:protected] => 50
    [_instanceid:protected] => 4
    [_path:protected] => /1/3/155
    [_depth:protected] => 3
    [_locked:protected] => 0
    )

    [_outcomesused:protected] =>
    [applyadminlockedflags:protected] =>
    [courseformat:protected] => format_topics Object
    (
    [courseid:protected] => 4
    [format:protected] => topics
    [course:protected] => stdClass Object
    (
    [id] => 4
    [category] => 1
    [sortorder] => 10001
    [fullname] => New Activities Testing Area
    [shortname] => New Activities Testing Area
    [idnumber] =>
    [summary] =>
    [summaryformat] => 1
    [format] => topics
    [showgrades] => 1
    [newsitems] => 5
    [startdate] => 1626105600
    [enddate] => 1657641600
    [relativedatesmode] => 0
    [marker] => 0
    [maxbytes] => 0
    [legacyfiles] => 0
    [showreports] => 0
    [visible] => 1
    [visibleold] => 1
    [downloadcontent] =>
    [groupmode] => 0
    [groupmodeforce] => 0
    [defaultgroupingid] => 0
    [lang] =>
    [calendartype] =>
    [theme] =>
    [timecreated] => 1626243402
    [timemodified] => 1626243402
    [requested] => 0
    [enablecompletion] => 1
    [completionnotify] => 0
    [cacherev] => 1626511673
    [originalcourseid] =>
    [hiddensections] => 0
    [coursedisplay] => 0
    )

    [formatoptions:protected] => Array
    (
    [0] => Array
    (
    [hiddensections] => 0
    [coursedisplay] => 0
    )

    )

    )

    [gradedorrated:moodleform_mod:private] =>
    [_formname:protected] => mod_courselinks_mod_form
    [_form:protected] => MoodleQuickForm Object
    (
    [_types] => Array
    (
    [course] => int
    [coursemodule] => int
    [section] => int
    [module] => int
    [modulename] => plugin
    [instance] => int
    [add] => alphanum
    [update] => int
    [return] => bool
    [sr] => int
    [sesskey] => raw
    [_qf__mod_courselinks_mod_form] => raw
    )

    [_dependencies] => Array
    (
    )

    [_hideifs:protected] => Array
    (
    )

    [_noSubmitButtons] => Array
    (
    )

    [_cancelButtons] => Array
    (
    [0] => cancel
    )

    [_advancedElements] => Array
    (
    )

    [_collapsibleElements] => Array
    (
    )

    [_disableShortforms] =>
    [_use_form_change_checker:protected] => 1
    [_initial_form_dirty_state:protected] =>
    [_formName] => mod_courselinks_mod_form
    [_pageparams] =>
    [_newrepeats:protected] => Array
    (
    )

    [_ajaxformdata:protected] =>
    [clientvalidation:protected] =>
    [_elements] => Array
    (
    [0] => MoodleQuickForm_hidden Object
    (
    [_helpbutton] =>
    [_label] =>
    [_type] => hidden
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => course
    [type] => hidden
    [value] => 4
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [1] => MoodleQuickForm_hidden Object
    (
    [_helpbutton] =>
    [_label] =>
    [_type] => hidden
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => coursemodule
    [type] => hidden
    [value] =>
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [2] => MoodleQuickForm_hidden Object
    (
    [_helpbutton] =>
    [_label] =>
    [_type] => hidden
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => section
    [type] => hidden
    [value] => 0
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [3] => MoodleQuickForm_hidden Object
    (
    [_helpbutton] =>
    [_label] =>
    [_type] => hidden
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => module
    [type] => hidden
    [value] => 27
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [4] => MoodleQuickForm_hidden Object
    (
    [_helpbutton] =>
    [_label] =>
    [_type] => hidden
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => modulename
    [type] => hidden
    [value] => courselinks
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [5] => MoodleQuickForm_hidden Object
    (
    [_helpbutton] =>
    [_label] =>
    [_type] => hidden
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => instance
    [type] => hidden
    [value] =>
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [6] => MoodleQuickForm_hidden Object
    (
    [_helpbutton] =>
    [_label] =>
    [_type] => hidden
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => add
    [type] => hidden
    [value] => courselinks
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [7] => MoodleQuickForm_hidden Object
    (
    [_helpbutton] =>
    [_label] =>
    [_type] => hidden
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => update
    [type] => hidden
    [value] => 0
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [8] => MoodleQuickForm_hidden Object
    (
    [_helpbutton] =>
    [_label] =>
    [_type] => hidden
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => return
    [type] => hidden
    [value] => 0
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [9] => MoodleQuickForm_hidden Object
    (
    [_helpbutton] =>
    [_label] =>
    [_type] => hidden
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => sr
    [type] => hidden
    [value] => 0
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [10] => HTML_QuickForm_html Object
    (
    [_text] =>
    Impossible to create links to other courses because you do not have manager rights on courses except this current course.
    [_label] =>
    [_type] => html
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] =>
    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [11] => MoodleQuickForm_cancel Object
    (
    [primary:protected] =>
    [customclassoverride:protected] =>
    [_label] =>
    [_type] => submit
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => cancel
    [value] => Back to course
    [type] => submit
    [data-skip-validation] => 1
    [data-cancel] => 1
    [onclick] => skipClientValidation = true; return true;
    [class] => btn-cancel
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [12] => MoodleQuickForm_hidden Object
    (
    [_helpbutton] =>
    [_label] =>
    [_type] => hidden
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => sesskey
    [type] => hidden
    [value] => zo4JWEn5b7
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    [13] => MoodleQuickForm_hidden Object
    (
    [_helpbutton] =>
    [_label] =>
    [_type] => hidden
    [_flagFrozen] =>
    [_persistantFreeze] =>
    [_attributes] => Array
    (
    [name] => _qf__mod_courselinks_mod_form
    [type] => hidden
    [value] => 1
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    )

    )

    [_elementIndex] => Array
    (
    [course] => 0
    [coursemodule] => 1
    [section] => 2
    [module] => 3
    [modulename] => 4
    [instance] => 5
    [add] => 6
    [update] => 7
    [return] => 8
    [sr] => 9
    [] => 10
    [cancel] => 11
    [sesskey] => 12
    [_qf__mod_courselinks_mod_form] => 13
    )

    [_duplicateIndex] => Array
    (
    )

    [_required] => Array
    (
    )

    [_jsPrefix] => Invalid information entered.
    [_jsPostfix] => Please correct these fields.
    [_datasource] =>
    [_defaultValues] => Array
    (
    [sesskey] => zo4JWEn5b7
    [_qf__mod_courselinks_mod_form] => 1
    [section] => 0
    [visible] => 1
    [course] => 4
    [module] => 27
    [modulename] => courselinks
    [groupmode] => 0
    [groupingid] => 0
    [id] =>
    [instance] =>
    [coursemodule] =>
    [completion] => 1
    [completionview] => 1
    [introeditor] => Array
    (
    [text] =>
    [format] => 1
    [itemid] => 825480738
    )

    [return] => 0
    [sr] => 0
    [add] => courselinks
    [assessed] => 0
    [ratingtime] => 0
    )

    [_constantValues] => Array
    (
    )

    [_submitValues] => Array
    (
    )

    [_submitFiles] => Array
    (
    )

    [_maxFileSize] => 1048576
    [_freezeAll] =>
    [_rules] => Array
    (
    )

    [_formRules] => Array
    (
    )

    [_errors] => Array
    (
    )

    [_requiredNote] => There are required fields in this form marked .
    [_flagSubmitted] =>
    [_attributes] => Array
    (
    [autocomplete] => off
    [action] => modedit.php
    [method] => post
    [accept-charset] => utf-8
    [id] => mform1_CP2V0v117LspOoC
    [class] => mform
    )

    [_tabOffset] => 0
    [_tab] =>
    [_lineEnd] =>

    [_comment] =>
    [_reqHTML] => [_advancedHTML] =>Advanced element )

    [_customdata:protected] =>
    [_ajaxformdata:protected] =>
    [_definition_finalized:protected] => 1
    [_validated:protected] =>
    )

    [type] => -> [args] => Array
    (
    )

    )

    )
    Exception - Call to undefined method HTML_QuickForm_Error::setValue()
    More information about this error
    Debug info:
    Error code: generalexceptionmessage
    Stack trace:
    line 339 of /course/moodleform_mod.php: Error thrown
    line 986 of /lib/formslib.php: call to moodleform_mod->definition_after_data()
    line 212 of /course/modedit.php: call to moodleform->display()

    This is under Moodle 3.10.3, by the way. Again, if there's any more information I can provide in order to help resolve this issue please do let me know - and many thanks again for any support you can offer.
  • Sat, Jul 17, 2021, 5:07 PM
    Hi again Anthony. Apologies, I think I've just figured out what was causing the error, which was that we were testing with an admin account which was not enrolled as a teacher under any courses. Adding this account as a teacher to a few courses now allows us to create the Course Links activity successfully.

    Thanks again for creating and sharing this plugin!
  • Wed, Jul 21, 2021, 3:01 PM
    Hello Roland, thanks for your feedback.
    Yes if you use the admin account without being enrolled as teacher or manager in some courses you will not be able to add courselinks and you will have a message. It's a choice to display only courses where we are enrolled in order to not have a big list in the form. However you shouldn't see all the backtrace and just have the alert message (maybe you are useing the developer mode ?). Anyway I will see what we can do to avoid this verbose message display.
  • Mon, Aug 9, 2021, 2:26 PM
    Wow, what an excellent plugin. Would it be possible to have an option where the user can choose when setting up, whether the coureses should open in the same window or a new window. At the moment they appear to always open in a new window (tab), but I think it would be better to open in the same window/tab?
  • Mon, Aug 9, 2021, 4:09 PM
    Hello Dave, thanks for your feedback and your suggestion.
    It is an interesting idea of improvment, we will add it to the roadmap to develop it in next versions of the plugin.
  • Thu, Aug 26, 2021, 2:13 AM
    Hello Anthony Durif... Even I cannot use the plugin because an error that later I will show, I want to thank you for your initiative about this feature that should be included in Moodle.
    Well, after installing it and trying to insert the module at the end of a course, I received this error:

    Exception - Call to undefined method HTML_QuickForm_Error:: SetValue ()

    I do not know if it has happened to any other users, but I would like to know if it could be fixed.

    Thanks in advance.
  • Thu, Aug 26, 2021, 8:52 PM
    Hello Milciades Ramirez.
    Thanks for your comment. I'm sorry you cannot use the plugin for now.

    I think a similar error happened when you use the admin account to try to add a mod instance in the course and that the admin account is not enrolled to this course (or any others). If this is the case did you try to enrol him to some courses or try to add the ressource with another user (manager or teacher of the course).
    If the error is still here I will try to do other tests in order to reproduce and correct the bug. Could you precise me the version of your moodle.

    Thanks.
  • Mon, Aug 30, 2021, 9:16 AM
    Hi.. thanks Anthony for your quick response. I did what you suggest. but it seems weird that I have to be enrolled in all the courses to be recommend for my students.

    It worked without the error I sent to you, BUT, I could no see any course cards at the end. No list,, nada...

    I only see the name and no courses. Sorry I could no paste a screen capture for you to see.

    Any ideas?

  • Thu, Sep 9, 2021, 3:15 PM
    Hello. We decided to list only course where the user is enrolled to not have a very long list with all platform courses. Besides it's seems logic to us to do links only to courses where the user has access too. However we can maybe imagine a new feature where the admin have access to all visible courses...

    If you only see the course name it's maybe because you have a specific theme which do not use the bootstrap framework (or inherit from the Boost theme) ? Maybe you can try to paste the screen capture on the github repository of the project creating a new issue.
1 2
Please login to post comments