Installing Joomdle in Joomla: Difference between revisions

From Joomdle
Jump to navigationJump to search
No edit summary
 
(30 intermediate revisions by the same user not shown)
Line 7: Line 7:
Before you install Joomdle ensure that Joomla is installed and running correctly.
Before you install Joomdle ensure that Joomla is installed and running correctly.


*Install and configure any third party extensions that you wish to integrate with Joomdle such as CB, Jomsocial, Tienda, Virtuemart, XMAP.  For Integration instructions with third party extensions please refer to [[3rd Party Integration]]
*Complete any [[Prerequisites]] required for Joomdle
*Complete any [[Prerequisites]] required for Joomdle
{{End of Section}}
{{End of Section}}


===Joomla 1.5.x only===
 
In addition, you will need to:
*Activate Joomla's web services through Site -> Global System Configuration, System Tab, System Configuration.
[[Image:joomla_webservices.jpg|340px|joomla_webservices.jpg]]


==Installing Joomdle for Joomla!==
==Installing Joomdle for Joomla!==
The Joomdle for Joomla! extension consists of a Component, 7 Plugins and 8 Modules, refer to the end of this article to see the full list. To install Joomdle for Joomla!, use Joomla!'s Extension Manager and select the Joomdle package called "joomdle-joomla-package.zip". The component, plugins and modules will all be installed as one package simplifying the installation for you.
The Joomdle for Joomla! extension consists of a Component and some modules and plugins. Additionally, you can download many more Joomdle packages from Joomdle website. To install Joomdle for Joomla!, use Joomla!'s Extension Manager and select the Joomdle package called "joomdle-joomla-package.zip". The component, plugins and modules will all be installed as one package simplifying the installation for you.


Note: It also enables all the plugins and creates the modules although they are not published.
Note: It also enables all the plugins and creates the modules although they are not published.


To use the rest of plugins and components, not included in the main package, you will need to install them separately.
To use the rest of plugins and modules, not included in the main package, you will need to install them separately.


{{End of Section}}
{{End of Section}}
Line 27: Line 23:
==Configuring Joomdle for Joomla!==
==Configuring Joomdle for Joomla!==


====Joomdle Component====


Configuring Joomdle for Joomla! is done through the Configuration screen which can be found by choosing Configuration option in the Joomdle Component menu, or through the Joomdle dashboard.
Configuring Joomdle for Joomla! is done through the Configuration screen which can be found by choosing Configuration option in the Joomdle Component menu, or through the Joomdle dashboard.
There are several sections that you can configure, however, only the first is mandatory.
There are several sections that you can configure, however, only some items are mandatory to start.
 
 
====General config====
 
In this section you can configure Joomdle basic settings.


[[Image:r023_joomla_global_configuration_1.jpg|900px|joomla_component_config.jpg]]


{| width="700" border="1" cellspacing="1" cellpadding="1"
[[File:general.png]]
| width="100" valign="top" | '''Section'''
| '''Description '''
|-
| valign="top" | General config
| valign="top" |
* Moodle URL
** Enter the full URL and path of your Moodle installation - this is likely to be http: //www.mydomain.com/moodle assuming you have installed Moodle in a directory called moodle off the Joomla! root.
Remember to add '''http://''' in front of your URL.


* Moodle Version
* '''Moodle URL'''
** Select your Moodle version.
** Enter the full URL and path of your Moodle installation - this is likely to be http: //www.mydomain.com/moodle assuming you have installed Moodle in a directory called moodle off the Joomla! root. Remember to add '''http://''' in front of your URL.


* Moodle 2.0 auth token (Moodle 2.0 only)
* '''Moodle auth token'''
** Enter the [[Preparing_Moodle_20#Create_token | auth token]] you obtained when you configured Moodle web services.
** Enter the [[Preparing_Moodle_20#Get_auth_token_for_Joomdle_config_in_Joomla | auth token]] you obtained when you installed Joomdle on Joomla.


* Connection method
* '''Connection method'''
** Available options are: file_get_contents and cURL. Select the one available on your server.
** Available options are: file_get_contents and cURL. Select the one available on your server.


* Use redirectless SSO
* '''Web services'''
** Available options are: XML-RPC and REST. With XML-RPC, you need to have XML-RPC in your PHP installation. With REST, you don't need any additional libraries.  REST is strongly recommended for new installations.
 
* '''Joomla auth token'''
** This will be auto-generated when you save configuration. You will need to enter this string in Joomdle config in Moodle.
 
* '''Use redirectless SSO'''
** This option only works with cURL and both Moodle and Joomla on the same domain. It makes Joomdle do Single Sign On without redirecting the user back and forward. This is mostly useful for shops, so the purchase process is not broken on user logging.
** This option only works with cURL and both Moodle and Joomla on the same domain. It makes Joomdle do Single Sign On without redirecting the user back and forward. This is mostly useful for shops, so the purchase process is not broken on user logging.


* Use redirectless logout
* '''Use redirectless logout'''
** This option only works when both Moodle and Joomla are on the same domain. It makes Joomdle do Single log out without redirecting the user back and forward.
** This option only works when both Moodle and Joomla are on the same domain. It makes Joomdle do Single log out without redirecting the user back and forward.


* Auto create Moodle users.
* '''Moodle Cookie Path'''
** This option is only needed for redirect-less SSO. You will need to copy here the value that you can find in the Cookie path setting in Moodle->Site Administration->Server->Session Handling.
 
* '''Auto create Moodle users'''
** Set this to "Yes" if you want Joomdle to automatically create new users in Moodle when they register in Joomla!.
** Set this to "Yes" if you want Joomdle to automatically create new users in Moodle when they register in Joomla!.


* Auto delete Moodle users.
* '''Auto delete Moodle users.'''
** Set this to "Yes" if you want Joomdle to automatically delete users in Moodle when they are deleted in Joomla!.
** Set this to "Yes" if you want Joomdle to automatically delete users in Moodle when they are deleted in Joomla!.


* Auto login users at registration
====Links behaviour====
** Set this to "Yes" if you want Joomdle to automatically log in users when they register in Joomla!.


|-
Here you can find links and wrapper configuration.
| valign="top" | Action buttons
| valign="top" |


* Show button for free courses
[[File:links.png]]
*** Enrol into course
*** Go to course
*** Request enrolment


* Show button for paid courses
* '''Open Moodle links in'''
*** Buy course: takes user to the e-commerce extension product page
** The parameter tells Joomdle how to respond when you click on any of the Joomdle links.
*** Paypal: shows Paypal button to sell course via Moodle's Paypal
 
If the user is already enroled in the course, "Go to course" button will be shown regardless of these settings.
Also, buttons will only show if course/shop configuration allows it:
- Enrol button will only be shown when course is available for self-enrol
- Buy course button will only be shown if course if on sell on shop
 
* Go to course button
*** Moodle: takes user to Moodle, as configured in next section
*** Course view: uses Joomdle course view to display Moodle course contents
 
 
|-
| valign="top" | Links behaviour
| valign="top" |
* Open Moodle links in
** The parameter tells Joomdle how to respond when you click on any of the Joomdle links.  This is a Global Joomdle setting and can be over written by setting the same parameters in the individual Joomdle Menu Views.
*** Open in the same window
*** Open in the same window
*** Open in new window
*** Open in new window
*** Open in wrapper
*** Open in wrapper
When you choose to open Moodle in a "Wrapper" you can choose the Wrapper dimensions. This is a Global Joomdle setting and can be over written by setting the same parameters in the individual Joomdle Menu Views.


If you have Moodle and Joomla on different domains (with auto height off), you may need to enable an option in Moodle configuration:
To use this, you may need to enable an option in Moodle configuration:


Site admin->Security->HTTP Security: Allow frame embedding
Site admin->Security->HTTP Security: Allow frame embedding


* Wrapper scroll bars
* '''Wrapper scroll bars'''
* Wrapper width
* Wrapper height
* Autoheight in wrapper


'''NOTE:''' this only works when both Joomla and Moodle are on the same domain.
* '''Wrapper width'''


* Transparent wrapper
* '''Wrapper height'''
* Default Itemid
 
** This lets you specify a default itemid to be associated to all calls to the Moodle wrapper
* '''Autoheight in wrapper'''
* Joomdle Itemid
 
** This lets you specify a default itemid to be associated to all calls to the Joomdle component from Joomdle modules
'''NOTE:''' this only works when both Joomla and Moodle are on the same domain, unless next option is enabled.
* Shop Itemid
** This lets you specify a default itemid to be associated to all calls to the shop component from Joomdle
* Course Itemid
** Item ID for the course view, used for configuring course-related modules


* ''' Cross-domain auto-height '''
** This uses a 3rd party library and requires additional configuration. See [[Crossdomain Wrapper Autoheight]]


* '''Moodle theme for wrapper'''
** You can select a specific Moodle theme to be used with Joomdle wrapper. Set Default to use default Moodle theme.


|- valign="top"
You will need to enable "Allow theme change by URL" in Moodle configuration, in Site Administration->Appearance->Themes->Theme settings
| valign="top" | Data source
| valign="top" |
* Additional Data source
** Select other component to provide additional user information to Joomdle
*** Jomsocial
*** Virtuemart
*** Tienda
*** Ambra
*** Community Builder
*** Hikashop
*** Joomla 1.6 user profiles


If you select Joomla 1.6 user profiles, and use a non-standard profile plugin, you can configure it in the next two fields. Otherwise, leave them blank.
* '''Default Itemid'''
*** 1.6+ User Profile Form Path
** This lets you specify a default itemid to be associated to all calls to the Moodle wrapper
*** J1.6+ Profile plugin


More info on this feature can be found here: [[Field Data Mapping]]
* '''Joomdle Itemid'''
|-
** This lets you specify a default itemid to be associated to all calls to the Joomdle component from Joomdle modules


|- valign="top"
* '''Shop Itemid'''
| valign="top" | Profile Types
** This lets you specify a default itemid to be associated to all calls to the shop component from Joomdle
| valign="top" |
* Use Profile Types
** Select a component to manage profile types
*** Jomsocial
*** Ambra
*** XIPT


More info on this feature can be found here: [[Profile Types]]
* '''Course Itemid'''
|-
** Item ID for the course view, used for configuring course-related modules


|- valign="top"
====Views====
| valign="top" | User points
| valign="top" |
* User points integration
** Select a component to manage user points
*** Jomsocial
*** Ambra
|-


|- valign="top"
[[File:views.png]]
| valign="top" | Mailing lists
| valign="top" |
* Mailing lists integration
** Select a component to manage mailing lists
*** Acymailing


More info on this feature can be found here: [[Acymailing]]
=====Action buttons=====
|-


|- valign="top"
* '''Show button for free courses'''
| valign="top" | Course requests
** Button to show for free courses, in detail and lists views
| valign="top" |
* Max number of requests
** Max number of requests (pending and accepted) a user can have.


When using course requests, you can also configure Joomdle to ask for additional info:
* '''Show button for paid courses'''
* Request motivation: No, Optional, Mandatory
** Button to show for paid courses
* Request experience No, Optional, Mandatory


|-
* '''Go to course button'''
| valign="top" | Shop Integration
** Where to link to with course button
| valign="top" |
Use these parameters if you wish to integrate Joomdle with VirtueMart or Tienda.


* Category ID: The Product Category ID that you wish Moodle Courses to appear under.
=====Topics view=====


* Buy courses for children. Enable this option if you are using the [[Features for parents]]. If not, set it to No.
* '''Show headings'''


* Subject of email: Enter the subject of the email sent when successfully purchasing a Moodle course.
=====Course category view=====


* Body of email: Enter the body of the email sent when successfully purchasing a Moodle course.
* Show category info
* Show action buttons


For more detailed information regarding the Joomdle and Virtuemart integration see the [[VirtueMart]] page.
=====Course view=====
For more detailed information regarding the Joomdle and Tienda integration see the [[Tienda]] page.


* Send bundle emails . Send course welcome emails for all courses in bundles.
* Show headings
* Show topics summary
* Use page view
* Use Kunena forums


|-
=====Back links=====
| valign="top" | Joomla User groups
|
If you want to use the [[Usergroups]] feature, here you can configure the parent groups:
* Teachers group
* Students group


* Show back links


|-
=====Detail view=====
| valign="top" | Detail view
| These options control which info and links should be displayed by default on course details view.
* Show category
* Show category
* Show course summary
* Show course summary
Line 222: Line 155:
* Show number of topics
* Show number of topics
* Show cost
* Show cost
* Show Contents link
* Show Topics link
* Show Topics link
* Show Grading system link
* Show Grading system link
* Show Teachers link
* Show Teachers link
* Show Contents link
 
=====Courses ABC view=====
 
* Show action buttons
 
 
====Shop====
 
Here you can configure Joomdle shop integration, to sell Moodle courses with a Joomla e-commerce extension.
 
[[File:shopconfig.png]]
 
* '''Shop integration'''
** Select e-commerce component to sell courses. You can add more components by downloading specific integration plugins from Joomdle site.
 
* '''Category ID'''
** The Product Category ID that you wish Moodle Courses to appear under.
 
* '''Buy courses for children'''
** Enable this option if you are using the [[Features for parents]]. If not, set it to No.
 
* '''Subject of email'''
** Enter the subject of the email sent when successfully purchasing a Moodle course.
 
* '''Body of email'''
** Enter the body of the email sent when successfully purchasing a Moodle course.
 
* '''Send bundle emails'''
** Send course welcome emails for all courses in bundles.
 
 
====User profiles====
 
This section lets you configure everything related to user profiles and groups.
 
[[File:userprofiles.png]]
 
* '''Additional Data source'''
** Select other component to provide additional user information to Joomdle, You can add more components by downloading specific integration plugins from Joomdle site.
 
If you select Joomla 1.6 user profiles, and use a non-standard profile plugin, you can configure it in the next two fields. Otherwise, leave them blank.
*** 1.6+ User Profile Form Path
*** J1.6+ Profile plugin
 
More info on this feature can be found here: [[Field Data Mapping]]
 
* '''Use Profile Types'''
** Select a component to manage profile types
 
If you want to use the [[Usergroups]] feature, here you can configure the parent groups:
* '''Teachers group'''
* '''Students group'''
 
* '''Activities'''
** Select component for wall activities
 
* '''User points integration'''
** Select a component to manage user points
 
* '''Social extension groups'''
** Select a component to manage social groups.
 
* '''Category for course groups'''
** Group category for course groups
 
 
====Integrations====
 
In this section you can configure additional integrations.




|-
[[File:integrations.png]]
| valign="top" | Topics view
| These options control which info and links should be displayed by default on course topics view.
* Show numbers: show topics numbers


|-
| valign="top" | Course category view
| These options control which info and links should be displayed by default on course category view.
* Show category info
* Show action buttons


* '''Mailing lists integration'''
** Select component for mailing lists integration


|-
* '''Use PDF integration'''
| valign="top" | Course  view
** Show PDF links in some grade views
|
* Show number of topics: show section headers containing section number.
* Show topics summary: show section summary.
* Use page view: use Joomdle page view to show resources of type Page
* Use Kunena forums


|-
* '''Main course forums category'''
| valign="top" | Courses ABC view
** Kunena category for course forums
|
* Show action buttons


|-
====Course requests====
| valign="top" | Show Back links
|
* Show back links: show back links in course pages (detail, course, topics, grading system)
|}


====Joomdle Plugins====
In this section you can configure course requests settings.


The Joomdle plugins do not require any configuration. They are all enabled by default at install time.
[[File:courserequests.png]]


====Joomdle Modules====
* '''Max number of requests'''
** Max number of requests (pending and accepted) a user can have.


During installation of Joomdle for Joomla!, eight new Modules will be installed: mod_joomdle_courses, mod_joomdle_my_courses, mod_joomdle_calendar, mod_joomdle_my_grades, mod_joomdle_mentees, mod_joomdle_abc, mod_joomdle_coursemates, mod_joomdle_coursenavigation.  These modules will automatically be installed and you are required to enable them before they appear on your website.
When using course requests, you can also configure Joomdle to ask for additional info:
* '''Request motivation'''
** No, Optional, Mandatory
* '''Request experience'''
** No, Optional, Mandatory


To know more about modules features and configuration options, check the [[Modules]] page.
{{End of Section}}


==System Health Check==
==System Health Check==
Line 276: Line 264:
{{End of Section}}
{{End of Section}}


==Package Contents==
==Recommended plugins==


Joomdle package contains:
Once you have Joomdle working fine, you should install Joomdle User Check plugin, or Joomdle Jomsocial User check plugin if you are using Jomsocial.
* joomdle-for-joomla package
* moodle packages
* other Joomla packages


The Joomdle for Joomla! package consists of the following:
This plugin will prevent users from using caps and other chars not permitted in Moodle when they register in Joomla. This will avoid user sync errors caused by username mismatch.


'''Component'''<nowiki>: com_joomdle</nowiki>
{{End of Section}}
 
'''6 Plugins'''<nowiki>:</nowiki>
 
* plg_joomdle
* plg_joomdlehooks
* plg_search_courses
* plg_search_coursetopics
* plg_search_coursecategories
* plg_system_joomdlesession
* plg_system_joomdletienda
'''6 Modules'''<nowiki>:</nowiki>
 
* mod_joomdle_courses
* mod_joomdle_my_courses
* mod_joomdle_calendar
* mod_joomdle_my_grades
* mod_joomdle_mentees
* mod_joomdle_abc
* mod_joomdle_coursemates
* mod_joomdle_coursenavigation
 
Also, other separate packages are included:
* xmap-joomdle-plugin
* plg_community_jsbar
* plug_joomdlehookscommunitybuilder
* AEC micro integration
* My certificates module
* Acymailing plugins
* Jomsocial and CB profile plugins
* Content plugin

Latest revision as of 18:59, 20 April 2022

This document applies to Joomdle Release 2.0.0

Preparing Joomla! for Joomdle

Before you install Joomdle ensure that Joomla is installed and running correctly.


.


Installing Joomdle for Joomla!

The Joomdle for Joomla! extension consists of a Component and some modules and plugins. Additionally, you can download many more Joomdle packages from Joomdle website. To install Joomdle for Joomla!, use Joomla!'s Extension Manager and select the Joomdle package called "joomdle-joomla-package.zip". The component, plugins and modules will all be installed as one package simplifying the installation for you.

Note: It also enables all the plugins and creates the modules although they are not published.

To use the rest of plugins and modules, not included in the main package, you will need to install them separately.


.

Configuring Joomdle for Joomla!

Configuring Joomdle for Joomla! is done through the Configuration screen which can be found by choosing Configuration option in the Joomdle Component menu, or through the Joomdle dashboard. There are several sections that you can configure, however, only some items are mandatory to start.


General config

In this section you can configure Joomdle basic settings.


File:General.png

  • Moodle URL
    • Enter the full URL and path of your Moodle installation - this is likely to be http: //www.mydomain.com/moodle assuming you have installed Moodle in a directory called moodle off the Joomla! root. Remember to add http:// in front of your URL.
  • Moodle auth token
    • Enter the auth token you obtained when you installed Joomdle on Joomla.
  • Connection method
    • Available options are: file_get_contents and cURL. Select the one available on your server.
  • Web services
    • Available options are: XML-RPC and REST. With XML-RPC, you need to have XML-RPC in your PHP installation. With REST, you don't need any additional libraries. REST is strongly recommended for new installations.
  • Joomla auth token
    • This will be auto-generated when you save configuration. You will need to enter this string in Joomdle config in Moodle.
  • Use redirectless SSO
    • This option only works with cURL and both Moodle and Joomla on the same domain. It makes Joomdle do Single Sign On without redirecting the user back and forward. This is mostly useful for shops, so the purchase process is not broken on user logging.
  • Use redirectless logout
    • This option only works when both Moodle and Joomla are on the same domain. It makes Joomdle do Single log out without redirecting the user back and forward.
  • Moodle Cookie Path
    • This option is only needed for redirect-less SSO. You will need to copy here the value that you can find in the Cookie path setting in Moodle->Site Administration->Server->Session Handling.
  • Auto create Moodle users
    • Set this to "Yes" if you want Joomdle to automatically create new users in Moodle when they register in Joomla!.
  • Auto delete Moodle users.
    • Set this to "Yes" if you want Joomdle to automatically delete users in Moodle when they are deleted in Joomla!.

Links behaviour

Here you can find links and wrapper configuration.

File:Links.png

  • Open Moodle links in
    • The parameter tells Joomdle how to respond when you click on any of the Joomdle links.
      • Open in the same window
      • Open in new window
      • Open in wrapper

To use this, you may need to enable an option in Moodle configuration:

Site admin->Security->HTTP Security: Allow frame embedding

  • Wrapper scroll bars
  • Wrapper width
  • Wrapper height
  • Autoheight in wrapper

NOTE: this only works when both Joomla and Moodle are on the same domain, unless next option is enabled.

  • Moodle theme for wrapper
    • You can select a specific Moodle theme to be used with Joomdle wrapper. Set Default to use default Moodle theme.

You will need to enable "Allow theme change by URL" in Moodle configuration, in Site Administration->Appearance->Themes->Theme settings

  • Default Itemid
    • This lets you specify a default itemid to be associated to all calls to the Moodle wrapper
  • Joomdle Itemid
    • This lets you specify a default itemid to be associated to all calls to the Joomdle component from Joomdle modules
  • Shop Itemid
    • This lets you specify a default itemid to be associated to all calls to the shop component from Joomdle
  • Course Itemid
    • Item ID for the course view, used for configuring course-related modules

Views

File:Views.png

Action buttons
  • Show button for free courses
    • Button to show for free courses, in detail and lists views
  • Show button for paid courses
    • Button to show for paid courses
  • Go to course button
    • Where to link to with course button
Topics view
  • Show headings
Course category view
  • Show category info
  • Show action buttons
Course view
  • Show headings
  • Show topics summary
  • Use page view
  • Use Kunena forums
Back links
  • Show back links
Detail view
  • Show category
  • Show course summary
  • Show language
  • Show start date
  • Show enrol dates
  • Show enrol period
  • Show number of topics
  • Show cost
  • Show Contents link
  • Show Topics link
  • Show Grading system link
  • Show Teachers link
Courses ABC view
  • Show action buttons


Shop

Here you can configure Joomdle shop integration, to sell Moodle courses with a Joomla e-commerce extension.

File:Shopconfig.png

  • Shop integration
    • Select e-commerce component to sell courses. You can add more components by downloading specific integration plugins from Joomdle site.
  • Category ID
    • The Product Category ID that you wish Moodle Courses to appear under.
  • Buy courses for children
  • Subject of email
    • Enter the subject of the email sent when successfully purchasing a Moodle course.
  • Body of email
    • Enter the body of the email sent when successfully purchasing a Moodle course.
  • Send bundle emails
    • Send course welcome emails for all courses in bundles.


User profiles

This section lets you configure everything related to user profiles and groups.

File:Userprofiles.png

  • Additional Data source
    • Select other component to provide additional user information to Joomdle, You can add more components by downloading specific integration plugins from Joomdle site.

If you select Joomla 1.6 user profiles, and use a non-standard profile plugin, you can configure it in the next two fields. Otherwise, leave them blank.

      • 1.6+ User Profile Form Path
      • J1.6+ Profile plugin

More info on this feature can be found here: Field Data Mapping

  • Use Profile Types
    • Select a component to manage profile types

If you want to use the Usergroups feature, here you can configure the parent groups:

  • Teachers group
  • Students group
  • Activities
    • Select component for wall activities
  • User points integration
    • Select a component to manage user points
  • Social extension groups
    • Select a component to manage social groups.
  • Category for course groups
    • Group category for course groups


Integrations

In this section you can configure additional integrations.


File:Integrations.png


  • Mailing lists integration
    • Select component for mailing lists integration
  • Use PDF integration
    • Show PDF links in some grade views
  • Main course forums category
    • Kunena category for course forums

Course requests

In this section you can configure course requests settings.

File:Courserequests.png

  • Max number of requests
    • Max number of requests (pending and accepted) a user can have.

When using course requests, you can also configure Joomdle to ask for additional info:

  • Request motivation
    • No, Optional, Mandatory
  • Request experience
    • No, Optional, Mandatory


System Health Check

Once you have installed and configure Joomdle, please visit the System Health Check tab to ensure all items have been configured correctly.

Refer to System health check for details with possible issues and associated resolutions.


.

Recommended plugins

Once you have Joomdle working fine, you should install Joomdle User Check plugin, or Joomdle Jomsocial User check plugin if you are using Jomsocial.

This plugin will prevent users from using caps and other chars not permitted in Moodle when they register in Joomla. This will avoid user sync errors caused by username mismatch.


.