Package 'moodleR'

Title: Helper Functions to Work with 'Moodle' Data
Description: A collection of functions to connect to a 'Moodle' database, cache relevant tables locally and generate learning analytics. 'Moodle' is an open source Learning Management System (LMS) developed by MoodleHQ. For more information about Moodle, visit <https://moodle.org>.
Authors: Aleksander Dietrichson [aut, cre], Chi Square Laboratories [cph], Darko Miletic [ctb], Pablo Pagnone [ctb], Alex Ondrus [ctb]
Maintainer: Aleksander Dietrichson <[email protected]>
License: MIT + file LICENSE
Version: 1.0.1
Built: 2024-11-17 05:26:37 UTC
Source: https://github.com/chi2labs/moodler

Help Index


Check Cached Data

Description

Checks that the cached data is available.

Usage

check_mdl_cache()

Value

invisible(NULL)

Examples

## Not run: 
check_mdl_cache()

## End(Not run)

Example Config yml File

Description

Opens an example config file in the active editor. If you already have a config.yml file cut-and-paste the "moodleR" section, and update the respective fields. Alternatively use "save as" to save this file as config.yml It is recommended that you check the config with config::get()

Usage

example_config_yml()

Value

invisible(TRUE) on success

Examples

## Not run: 
example_config_yml()

## End(Not run)

Moodle Configuration Table

Description

Get the complete moodle configuration table. Different from most mdl_* functions this function calls dplyr::collect() before returning (as a config-table is not going to cause memory overflow).

Usage

mdl_config(con = mdl_get_connection(), tbl_prefix = "mdl_")

Arguments

con

database connection object

tbl_prefix

table prefix

Value

A tibble


Get Courses

Description

Returns a reference to the (cached) course table, with the most relevant columns selected.

Usage

mdl_courses(con = mdl_get_connection(), tbl_prefix = "mdl_")

Arguments

con

a database connection object

tbl_prefix

prefix for tables

Details

For convenience a join with the category table is made, and "category_name" added

Value

A dbplyr reference object.


Creates a Local Cache

Description

Create local cache from a Moodle Database.

Usage

mdl_create_cache(
  con = mdl_get_connection(use_cache = FALSE),
  format = c("sqlite"),
  tbl_prefix = "mdl_",
  output_dir = mdl_get_cache_dir(),
  output_filename = mdl_get_cache_filename()
)

Arguments

con

a database connection (to a moodle database)

format

output format (mysql, csv)

tbl_prefix

Moodle DB table prefix

output_dir

where does the cache go

output_filename

filename (in the case of sqlite output), or prefix (in_case of CSV download)

Value

invisible(NULL)


Get Forum Posts

Description

Returns a reference to the (cached) forum_posts table, with the most relevant columns selected.

Usage

mdl_forum_posts(con = mdl_get_connection(), tbl_prefix = "mdl_")

Arguments

con

a database connection object

tbl_prefix

table prefix

Details

For convenience two additional columns: forum_name and thread_name; are added.

Value

A dbplyr reference object.


Connection to Cached Moodle Data

Description

Connection to Cached Moodle Data

Usage

mdl_get_cache_connection(access = c("RO", "RWC"))

Arguments

access

Specifies RO or RWC access

Value

a DBI connection object


Get the Cache Directory

Description

The cache directory can be set in the config-file (moodleR:->cache_dir:), which is recommended. If it is not present, or no config is found, a tempdir() will be returned.

Usage

mdl_get_cache_dir()

Value

Character vector with path


Get the Cache Filename

Description

The cache filename ("mdl_cache.sqlite" by default), can be set in the config-file((moodleR:->cache_dir:).

Usage

mdl_get_cache_filename()

Value

Character vector with path


Connect to Moodle Data

Description

Returns a connection to a Moodle database or the cached version if available.e

Usage

mdl_get_connection(use_cache = TRUE, config = "default")

Arguments

use_cache

If TRUE (the default) connection to the local cache is returned.

config

Select configuration from config file

Value

a DBI connection object


Get Grades

Description

Returns a reference to the (cached) grades table, with the most relevant columns selected.

Usage

mdl_grades(con = mdl_get_connection(), tbl_prefix = "mdl_")

Arguments

con

database connection object

tbl_prefix

table prefix

Value

A dbplyr reference object

Examples

## Not run: 
# Get the course grades for courseid 52
course_grades <- mdl_grades() %>%
filter(courseid == 52, item_type == "course") %>%
collect()
# Get the other grades items:
grades_items_grades <- mdl_grades() %>%
filter(courseid == 52, item_type != "course") %>%
collect()

## End(Not run)

Access Moodle's Logs

Description

Returns a reference to the log-table.

Usage

mdl_log(con = mdl_get_connection(), tbl_prefix = "mdl_")

Arguments

con

A database connection object

tbl_prefix

table prefix

Value

A dbplyr reference object.


Get Moodle Users

Description

Returns a reference to the (cached) users table, with the most relevant columns selected.

Usage

mdl_users(con = mdl_get_connection(), tbl_prefix = "mdl_")

Arguments

con

database connection object

tbl_prefix

table prefix

Value

A dbplyr reference object


Wordcloud Plot

Description

Create a simple wordcloud plot based on a mdl_posts object.

Usage

## S3 method for class 'mdl_forum_posts'
plot(x, use_base_graphics = FALSE, ...)

Arguments

x

a lazy tbl reference or data.frame.

use_base_graphics

Should base graphics be produces instead of ggplot?

...

passed to ggplot or base graphics

Value

A ggplot


Plot Moodle Grades

Description

Histogram (density) of normalized grades

Usage

## S3 method for class 'mdl_grades'
plot(x, use_base_graphics = FALSE, ...)

Arguments

x

a lazy tbl reference

use_base_graphics

Should base graphics be used (instead of ggplot)

...

passed along to ggplot or base graphic function

Value

A ggplot or base graphic plot


Print Moodle Courses Summary

Description

Overrides generic print function to pretty-print a summary of the course information.

Usage

## S3 method for class 'mdl_courses_summary'
print(x, ...)

Arguments

x

an object used to select a method.

...

further arguments passed to or from other methods.

Value

invisible(x). Typically called for its side effect which is a pretty-print of the relevant information.


Print Moodle Grades Summary

Description

Overrides generic print function to pretty-print a summary of the grades from the gradebook.

Usage

## S3 method for class 'mdl_grades_summary'
print(x, ...)

Arguments

x

an object used to select a method.

...

further arguments passed to or from other methods.

Value

invisible(x). Typically called for its side effect which is a pretty-print of the relevant information.


Print Moodle Forum Post Summary

Description

Overrides generic print function to pretty-print a summary of the Moodle posts.

Usage

## S3 method for class 'mdl_post_summary'
print(x, ...)

Arguments

x

an object used to select a method.

...

further arguments passed to or from other methods.

Value

invisible(x). Typically called for its side effect which is a pretty-print of the relevant information.


Print Moodle Users Summary

Description

Overrides generic print function to pretty-print a summary of the users.

Usage

## S3 method for class 'mdl_users_summary'
print(x, ...)

Arguments

x

an object used to select a method.

...

further arguments passed to or from other methods.

Value

invisible(x). Typically called for its side effect which is a pretty-print of the relevant information.


Summary of mdl_courses Object

Description

Provides summary statistics for moodle courses

Usage

## S3 method for class 'mdl_courses'
summary(object, ...)

Arguments

object

a lazy tbl reference with class mdl_grades

...

currently ignored

Value

a tibble with the summary.


Summary of mdl_forum_posts Object

Description

Provides summary statistics for forum posts.

Usage

## S3 method for class 'mdl_forum_posts'
summary(object, ...)

Arguments

object

a lazy tbl reference with class mdl_grades

...

currently ignored

Value

a tibble with the summary.


Summary of mdl_grades Object

Description

Provides summary statistics for moodle grades

Usage

## S3 method for class 'mdl_grades'
summary(object, ...)

Arguments

object

a lazy tbl reference with class mdl_grades

...

currently ignored

Value

a tibble with the summary.


Summary of mdl_users Object

Description

Provides summary statistics for moodle courses

Usage

## S3 method for class 'mdl_users'
summary(object, ...)

Arguments

object

a lazy tbl reference with class mdl_grades

...

currently ignored

Value

a tibble with the summary.