From 711726ab8fe7ef788a00e423d554f9cc1cd5002a Mon Sep 17 00:00:00 2001 From: ak4t0sh Date: Fri, 12 Sep 2014 18:29:18 +0200 Subject: [PATCH] initial commit --- plugins/moodle/moodle_users_online.php | 31 +++++++++++ plugins/moodle/moodle_users_total.php | 77 ++++++++++++++++++++++++++ 2 files changed, 108 insertions(+) create mode 100644 plugins/moodle/moodle_users_online.php create mode 100644 plugins/moodle/moodle_users_total.php diff --git a/plugins/moodle/moodle_users_online.php b/plugins/moodle/moodle_users_online.php new file mode 100644 index 00000000..ec9c8291 --- /dev/null +++ b/plugins/moodle/moodle_users_online.php @@ -0,0 +1,31 @@ +#!/usr/bin/php + + * @version 1.0 2014 + * + */ +$db = getenv('db'); +$type = getenv('type'); +$host = getenv('host'); +$user = getenv('user'); +$pass = getenv('pass'); +$port = getenv('port'); +if (!$port) + $port = 3306; \ No newline at end of file diff --git a/plugins/moodle/moodle_users_total.php b/plugins/moodle/moodle_users_total.php new file mode 100644 index 00000000..de529334 --- /dev/null +++ b/plugins/moodle/moodle_users_total.php @@ -0,0 +1,77 @@ +#!/usr/bin/php + + * @version 1.0 2014 + * + */ + +$dbh = null; +$db = getenv('db'); +$type = getenv('type'); +$host = getenv('host'); +$user = getenv('user'); +$pass = getenv('pass'); +$table_prefix = getenv('table_prefix'); +$port = getenv('port'); +if (!$port) + $port = 3306; +$graph_period = getenv('graph_period'); + + +if (count($argv) === 2 && $argv[1] === 'config') { + echo "graph_title Moodle Total Users\n"; + echo "graph_args --base 1000 --lower-limit 0\n"; + echo "graph_vlabel Total Users Count / ${graph_period}\n"; + echo "graph_category Moodle\n"; + echo "graph_scale no\n"; + echo "graph_info Displays the sum of users, as well as active count, in your Moodle site\n"; + + echo "users_total.label total users\n"; + echo "users_active.label active users\n"; + + echo "users_total.min 0\n"; + echo "users_active.min 0\n"; + + exit(0); +} + +try { + $dsn = $type . ':host=' . $host . ';port=' . $port . ';dbname=' . $db; + $dbh = new PDO($dsn, $user, $pass); +} catch (Exception $e) { + echo "Connection failed\n"; + exit(1); +} + + + +//All users +$nbusers = 0; +if (($stmt = $dbh->query("SELECT COUNT(id) FROM {$table_prefix}user")) != false) { + $nbusers = $stmt->fetchColumn(); +} +echo "users_total.value $nbusers\n"; + +//Active users (not deleted or suspended) +$nbusers = 0; +if (($stmt = $dbh->query("SELECT COUNT(id) FROM {$table_prefix}user WHERE deleted=0 AND suspended=0")) != false) { + $nbusers = $stmt->fetchColumn(); + echo "users_active.value $nbusers\n"; +} \ No newline at end of file