diff --git a/admin/tool/log/classes/helper/reader.php b/admin/tool/log/classes/helper/reader.php index 2bff91f79ff..036f874dab5 100644 --- a/admin/tool/log/classes/helper/reader.php +++ b/admin/tool/log/classes/helper/reader.php @@ -33,6 +33,9 @@ defined('MOODLE_INTERNAL') || die(); * @package tool_log * @copyright 2014 onwards Ankit Agarwal * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + * + * @property string $component Frankenstyle plugin name initialised in store trait. + * @property string $store short plugin name initialised in store trait. */ trait reader { /** @@ -62,7 +65,7 @@ trait reader { /** * If the current user can access current store or not. * - * @param \context $context. + * @param \context $context * * @return bool */ diff --git a/admin/tool/log/classes/helper/store.php b/admin/tool/log/classes/helper/store.php index d99b1be395a..f3bf4bb0c9b 100644 --- a/admin/tool/log/classes/helper/store.php +++ b/admin/tool/log/classes/helper/store.php @@ -14,7 +14,6 @@ // You should have received a copy of the GNU General Public License // along with Moodle. If not, see . - /** * Helper trait store. * diff --git a/admin/tool/log/classes/helper/writer.php b/admin/tool/log/classes/helper/writer.php index 5b9754e7ea2..bc85329e30f 100644 --- a/admin/tool/log/classes/helper/writer.php +++ b/admin/tool/log/classes/helper/writer.php @@ -14,7 +14,6 @@ // You should have received a copy of the GNU General Public License // along with Moodle. If not, see . - /** * Helper trait writer * @@ -29,20 +28,20 @@ defined('MOODLE_INTERNAL') || die(); /** * Helper trait writer. Adds buffer support for the store. * \tool_log\helper\store must be included before using this trait. - * + * * @package tool_log * @copyright 2014 onwards Ankit Agarwal * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ trait writer { - /** @var array $buffer buffer of events.*/ + /** @var array $buffer buffer of events. */ protected $buffer = array(); - /** @var array $buffer buffer size of events.*/ + /** @var array $buffer buffer size of events. */ protected $buffersize; - /** @var int $count Counter.*/ + /** @var int $count Counter. */ protected $count = 0; /** diff --git a/admin/tool/log/classes/log/manager.php b/admin/tool/log/classes/log/manager.php index bf0a605e551..47bd41c3f2f 100644 --- a/admin/tool/log/classes/log/manager.php +++ b/admin/tool/log/classes/log/manager.php @@ -33,7 +33,7 @@ class manager implements \core\log\manager { /** @var \tool_log\log\writer[] $writers list of initialised log writers */ protected $writers; - /** @var \tool_log\log\store[] $stores */ + /** @var \tool_log\log\store[] $stores list of all enabled stores */ protected $stores; /** @@ -84,7 +84,8 @@ class manager implements \core\log\manager { try { $writer->write($event, $this); } catch (\Exception $e) { - debugging('Exception detected when logging event '.$event->eventname.' in '.$plugin.': '.$e->getMessage(), DEBUG_NORMAL, $e->getTrace()); + debugging('Exception detected when logging event ' . $event->eventname . ' in ' . $plugin . ': ' . + $e->getMessage(), DEBUG_NORMAL, $e->getTrace()); } } } @@ -146,15 +147,15 @@ class manager implements \core\log\manager { * * NOTE: this is hardcoded to legacy log store plugin, hopefully we can get rid of it soon. * - * @param int $courseid The course id - * @param string $module The module name e.g. forum, journal, resource, course, user etc - * @param string $action 'view', 'update', 'add' or 'delete', possibly followed by another word to clarify. - * @param string $url The file and parameters used to see the results of the action - * @param string $info Additional description information - * @param int $cm The course_module->id if there is one - * @param int|\stdClass $user If log regards $user other than $USER + * @param int $courseid The course id + * @param string $module The module name e.g. forum, journal, resource, course, user etc + * @param string $action 'view', 'update', 'add' or 'delete', possibly followed by another word to clarify + * @param string $url The file and parameters used to see the results of the action + * @param string $info Additional description information + * @param int $cm The course_module->id if there is one + * @param int|\stdClass $user If log regards $user other than $USER */ - public function legacy_add_to_log($courseid, $module, $action, $url='', $info='', $cm=0, $user=0) { + public function legacy_add_to_log($courseid, $module, $action, $url = '', $info = '', $cm = 0, $user = 0) { $this->init(); if (isset($this->stores['logstore_legacy'])) { $this->stores['logstore_legacy']->legacy_add_to_log($courseid, $module, $action, $url, $info, $cm, $user); diff --git a/admin/tool/log/classes/log/writer.php b/admin/tool/log/classes/log/writer.php index 82537ceebde..138dcc48902 100644 --- a/admin/tool/log/classes/log/writer.php +++ b/admin/tool/log/classes/log/writer.php @@ -17,7 +17,7 @@ /** * Log store writer interface. * - * @package core + * @package tool_log * @copyright 2013 Petr Skoda {@link http://skodak.org} * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ diff --git a/admin/tool/log/classes/plugininfo/logstore.php b/admin/tool/log/classes/plugininfo/logstore.php index bfd3854809d..d7e19dbf2bd 100644 --- a/admin/tool/log/classes/plugininfo/logstore.php +++ b/admin/tool/log/classes/plugininfo/logstore.php @@ -39,7 +39,7 @@ class logstore extends base { } $enabled = array_flip(explode(',', $enabled)); - return isset($enabled['logstore_'.$this->name]); + return isset($enabled['logstore_' . $this->name]); } public function get_settings_section_name() { @@ -68,7 +68,7 @@ class logstore extends base { } public static function get_manage_url() { - return new moodle_url('/admin/settings.php', array('section'=>'managelogging')); + return new moodle_url('/admin/settings.php', array('section' => 'managelogging')); } public function is_uninstall_allowed() { @@ -79,7 +79,7 @@ class logstore extends base { $enabled = get_config('tool_log', 'enabled_stores'); if ($enabled) { $enabled = array_flip(explode(',', $enabled)); - unset($enabled['logstore_'.$this->name]); + unset($enabled['logstore_' . $this->name]); $enabled = array_flip($enabled); set_config('enabled_stores', implode(',', $enabled), 'tool_log'); } diff --git a/admin/tool/log/classes/setting_managestores.php b/admin/tool/log/classes/setting_managestores.php index 2e9b8e5f519..bb82a82560b 100644 --- a/admin/tool/log/classes/setting_managestores.php +++ b/admin/tool/log/classes/setting_managestores.php @@ -96,22 +96,22 @@ class tool_log_setting_managestores extends admin_setting { * @param string $query * @return string */ - public function output_html($data, $query='') { + public function output_html($data, $query = '') { global $OUTPUT, $PAGE; // Display strings. - $strup = get_string('up'); - $strdown = get_string('down'); - $strsettings = get_string('settings'); - $strenable = get_string('enable'); - $strdisable = get_string('disable'); + $strup = get_string('up'); + $strdown = get_string('down'); + $strsettings = get_string('settings'); + $strenable = get_string('enable'); + $strdisable = get_string('disable'); $struninstall = get_string('uninstallplugin', 'core_admin'); - $strversion = get_string('version'); + $strversion = get_string('version'); $pluginmanager = core_plugin_manager::instance(); $available = \tool_log\log\manager::get_store_plugins(); - $enabled = get_config('tool_log', 'enabled_stores'); + $enabled = get_config('tool_log', 'enabled_stores'); if (!$enabled) { $enabled = array(); } else { @@ -132,16 +132,16 @@ class tool_log_setting_managestores extends admin_setting { $return .= $OUTPUT->box_start('generalbox loggingui'); $table = new html_table(); - $table->head = array(get_string('name'), $strversion, $strenable, $strup.'/'.$strdown, $strsettings, $struninstall); + $table->head = array(get_string('name'), $strversion, $strenable, $strup . '/' . $strdown, $strsettings, $struninstall); $table->colclasses = array('leftalign', 'centeralign', 'centeralign', 'centeralign', 'centeralign', 'centeralign'); $table->id = 'logstoreplugins'; $table->attributes['class'] = 'admintable generaltable'; - $table->data = array(); + $table->data = array(); // Iterate through store plugins and add to the display table. $updowncount = 1; $storecount = count($enabled); - $url = new moodle_url('/admin/tool/log/stores.php', array('sesskey'=>sesskey())); + $url = new moodle_url('/admin/tool/log/stores.php', array('sesskey' => sesskey())); $printed = array(); foreach ($allstores as $store => $unused) { $plugininfo = $pluginmanager->get_plugin_info($store); @@ -158,21 +158,23 @@ class tool_log_setting_managestores extends admin_setting { // Hide/show links. if (isset($enabled[$store])) { - $aurl = new moodle_url($url, array('action'=>'disable', 'store'=>$store)); + $aurl = new moodle_url($url, array('action' => 'disable', 'store' => $store)); $hideshow = ""; $hideshow .= "pix_url('t/hide') . "\" class=\"iconsmall\" alt=\"$strdisable\" />"; $isenabled = true; $displayname = "$name"; - } else if (isset($available[$store])) { - $aurl = new moodle_url($url, array('action'=>'enable', 'store'=>$store)); - $hideshow = ""; - $hideshow .= "pix_url('t/show') . "\" class=\"iconsmall\" alt=\"$strenable\" />"; - $isenabled = false; - $displayname = "$name"; } else { - $hideshow = ''; - $isenabled = false; - $displayname = ''.$name.''; + if (isset($available[$store])) { + $aurl = new moodle_url($url, array('action' => 'enable', 'store' => $store)); + $hideshow = ""; + $hideshow .= "pix_url('t/show') . "\" class=\"iconsmall\" alt=\"$strenable\" />"; + $isenabled = false; + $displayname = "$name"; + } else { + $hideshow = ''; + $isenabled = false; + $displayname = '' . $name . ''; + } } if ($PAGE->theme->resolve_image_location('icon', $store, false)) { $icon = $OUTPUT->pix_icon('icon', '', $store, array('class' => 'icon pluginicon')); @@ -184,14 +186,14 @@ class tool_log_setting_managestores extends admin_setting { $updown = ''; if ($isenabled) { if ($updowncount > 1) { - $aurl = new moodle_url($url, array('action'=>'up', 'store'=>$store)); + $aurl = new moodle_url($url, array('action' => 'up', 'store' => $store)); $updown .= ""; $updown .= "pix_url('t/up') . "\" alt=\"$strup\" class=\"iconsmall\" /> "; } else { $updown .= "pix_url('spacer') . "\" class=\"iconsmall\" alt=\"\" /> "; } if ($updowncount < $storecount) { - $aurl = new moodle_url($url, array('action'=>'down', 'store'=>$store)); + $aurl = new moodle_url($url, array('action' => 'down', 'store' => $store)); $updown .= ""; $updown .= "pix_url('t/down') . "\" alt=\"$strdown\" class=\"iconsmall\" />"; } else { @@ -203,10 +205,12 @@ class tool_log_setting_managestores extends admin_setting { // Add settings link. if (!$version) { $settings = ''; - } else if ($surl = $plugininfo->get_settings_url()) { - $settings = html_writer::link($surl, $strsettings); } else { - $settings = ''; + if ($surl = $plugininfo->get_settings_url()) { + $settings = html_writer::link($surl, $strsettings); + } else { + $settings = ''; + } } // Add uninstall info. @@ -216,13 +220,13 @@ class tool_log_setting_managestores extends admin_setting { } // Add a row to the table. - $table->data[] = array($icon.$displayname, $version, $hideshow, $updown, $settings, $uninstall); + $table->data[] = array($icon . $displayname, $version, $hideshow, $updown, $settings, $uninstall); $printed[$store] = true; } $return .= html_writer::table($table); - $return .= get_string('configlogplugins', 'tool_log').'
'.get_string('tablenosave', 'admin'); + $return .= get_string('configlogplugins', 'tool_log') . '
' . get_string('tablenosave', 'admin'); $return .= $OUTPUT->box_end(); return highlight($query, $return); } diff --git a/admin/tool/log/db/events.php b/admin/tool/log/db/events.php index ceab58ff147..660f2f612e1 100644 --- a/admin/tool/log/db/events.php +++ b/admin/tool/log/db/events.php @@ -25,8 +25,8 @@ defined('MOODLE_INTERNAL') || die(); -$observers = array ( - array ( +$observers = array( + array( 'eventname' => '*', 'callback' => '\tool_log\log\observer::store', 'internal' => false, // This means that we get events only after transaction commit. diff --git a/admin/tool/log/db/subplugins.php b/admin/tool/log/db/subplugins.php index 4eb8fa6da20..9d1fe6119e5 100644 --- a/admin/tool/log/db/subplugins.php +++ b/admin/tool/log/db/subplugins.php @@ -18,7 +18,8 @@ * Logging subplugins. * * @package tool_log + * @copyright 2013 Petr Skoda {@link http://skodak.org} * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ -$subplugins = array('logstore'=>'admin/tool/log/store'); +$subplugins = array('logstore' => 'admin/tool/log/store'); diff --git a/admin/tool/log/lib.php b/admin/tool/log/lib.php index 32be81b49ca..9db2ee3945f 100644 --- a/admin/tool/log/lib.php +++ b/admin/tool/log/lib.php @@ -22,7 +22,7 @@ * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ -defined('MOODLE_INTERNAL') || die; +defined('MOODLE_INTERNAL') || die(); /** * Execute cron actions. diff --git a/admin/tool/log/settings.php b/admin/tool/log/settings.php index 27c263e45a8..3fee81208dc 100644 --- a/admin/tool/log/settings.php +++ b/admin/tool/log/settings.php @@ -22,7 +22,7 @@ * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ -defined('MOODLE_INTERNAL') || die; +defined('MOODLE_INTERNAL') || die(); if ($hassiteconfig) { $ADMIN->add('modules', new admin_category('logging', new lang_string('logging', 'tool_log'))); diff --git a/admin/tool/log/store/database/classes/helper.php b/admin/tool/log/store/database/classes/helper.php index 7801e0dc083..6c6f884a8fe 100644 --- a/admin/tool/log/store/database/classes/helper.php +++ b/admin/tool/log/store/database/classes/helper.php @@ -23,7 +23,7 @@ */ namespace logstore_database; -defined('MOODLE_INTERNAL') || die; +defined('MOODLE_INTERNAL') || die(); /** @@ -39,12 +39,12 @@ class helper { */ public static function get_drivers() { return array( - 'native/mysqli' => \moodle_database::get_driver_instance('mysqli', 'native')->get_name(), + 'native/mysqli' => \moodle_database::get_driver_instance('mysqli', 'native')->get_name(), 'native/mariadb' => \moodle_database::get_driver_instance('mariadb', 'native')->get_name(), - 'native/pgsql' => \moodle_database::get_driver_instance('pgsql', 'native')->get_name(), - 'native/oci' => \moodle_database::get_driver_instance('oci', 'native')->get_name(), - 'native/sqlsrv' => \moodle_database::get_driver_instance('sqlsrv', 'native')->get_name(), - 'native/mssql' => \moodle_database::get_driver_instance('mssql', 'native')->get_name() + 'native/pgsql' => \moodle_database::get_driver_instance('pgsql', 'native')->get_name(), + 'native/oci' => \moodle_database::get_driver_instance('oci', 'native')->get_name(), + 'native/sqlsrv' => \moodle_database::get_driver_instance('sqlsrv', 'native')->get_name(), + 'native/mssql' => \moodle_database::get_driver_instance('mssql', 'native')->get_name() ); } @@ -55,9 +55,9 @@ class helper { */ public static function get_level_options() { return array( - \core\event\base::LEVEL_TEACHING => get_string('teaching', 'logstore_database'), + \core\event\base::LEVEL_TEACHING => get_string('teaching', 'logstore_database'), \core\event\base::LEVEL_PARTICIPATING => get_string('participating', 'logstore_database'), - \core\event\base::LEVEL_OTHER => get_string('other', 'logstore_database'), + \core\event\base::LEVEL_OTHER => get_string('other', 'logstore_database'), ); } diff --git a/admin/tool/log/store/database/classes/log/store.php b/admin/tool/log/store/database/classes/log/store.php index fad6ac87027..67e8fec39eb 100644 --- a/admin/tool/log/store/database/classes/log/store.php +++ b/admin/tool/log/store/database/classes/log/store.php @@ -29,8 +29,8 @@ class store implements \tool_log\log\writer, \core\log\reader { use \tool_log\helper\store, \tool_log\helper\reader, \tool_log\helper\writer { - dispose as helper_dispose; - } + dispose as helper_dispose; + } /** @var \moodle_database $extdb */ protected $extdb; @@ -57,7 +57,6 @@ class store implements \tool_log\log\writer, \core\log\reader { $levels = $this->get_config('excludelevels', ''); $this->excludeactions = $actions === '' ? array() : explode(',', $actions); $this->excludelevels = $levels === '' ? array() : explode(',', $levels); - } /** @@ -111,7 +110,7 @@ class store implements \tool_log\log\writer, \core\log\reader { /** * Insert events in bulk to the database. * - * @param $events + * @param \core\event\base[] $events */ protected function insert_events($events) { if (!$this->init()) { @@ -125,7 +124,8 @@ class store implements \tool_log\log\writer, \core\log\reader { // Filter events. foreach ($events as $event) { if (in_array($event->crud, $this->excludeactions) || - in_array($event->edulevel, $this->excludelevels)) { + in_array($event->edulevel, $this->excludelevels) + ) { // Ignore event if the store settings do not want to store it. continue; } @@ -159,10 +159,10 @@ class store implements \tool_log\log\writer, \core\log\reader { * Get an array of events based on the passed on params. * * @param string $selectwhere select conditions. - * @param array $params params. - * @param string $sort sortorder. - * @param int $limitfrom limit constraints. - * @param int $limitnum limit constraints. + * @param array $params params. + * @param string $sort sortorder. + * @param int $limitfrom limit constraints. + * @param int $limitnum limit constraints. * * @return array|\core\event\base[] array of events. */ @@ -201,7 +201,7 @@ class store implements \tool_log\log\writer, \core\log\reader { * Get number of events present for the given select clause. * * @param string $selectwhere select conditions. - * @param array $params params. + * @param array $params params. * * @return int Number of events available for the given conditions */ diff --git a/admin/tool/log/store/database/settings.php b/admin/tool/log/store/database/settings.php index 0069b43a64c..bb8e2a1731a 100644 --- a/admin/tool/log/store/database/settings.php +++ b/admin/tool/log/store/database/settings.php @@ -34,32 +34,32 @@ if ($hassiteconfig) { // Database settings. $link = html_writer::link($testurl, get_string('testsettings', 'logstore_database'), array('target' => '_blank')); $settings->add(new admin_setting_heading('dbsettings', get_string('databasesettings', 'logstore_database'), - get_string('databasesettings_help', 'logstore_database', $link))); + get_string('databasesettings_help', 'logstore_database', $link))); $settings->add(new admin_setting_configselect('logstore_database/dbdriver', get_string('databasetypehead', 'install'), '', - '', $drivers)); + '', $drivers)); $settings->add(new admin_setting_configtext('logstore_database/dbhost', get_string('databasehost', 'install'), '', '')); $settings->add(new admin_setting_configtext('logstore_database/dbuser', get_string('databaseuser', 'install'), '', '')); $settings->add(new admin_setting_configpasswordunmask('logstore_database/dbpass', get_string('databasepass', 'install'), '', '')); $settings->add(new admin_setting_configtext('logstore_database/dbname', get_string('databasename', 'install'), '', '')); $settings->add(new admin_setting_configtext('logstore_database/dbtable', get_string('databasetable', 'logstore_database'), - get_string('databasetable_help', 'logstore_database'), '')); + get_string('databasetable_help', 'logstore_database'), '')); $settings->add(new admin_setting_configcheckbox('logstore_database/dbpersist', get_string('databasepersist', - 'logstore_database'), '', '0')); + 'logstore_database'), '', '0')); $settings->add(new admin_setting_configtext('logstore_database/dbsocket', get_string('databasesocket', 'install'), '', - '')); + '')); $settings->add(new admin_setting_configtext('logstore_database/dbport', get_string('databaseport', 'install'), '', '')); $settings->add(new admin_setting_configtext('logstore_database/dbschema', get_string('databaseschema', - 'logstore_database'), '', '')); + 'logstore_database'), '', '')); $settings->add(new admin_setting_configtext('logstore_database/dbcollation', get_string('databasecollation', - 'logstore_database'), '', '')); + 'logstore_database'), '', '')); $settings->add(new admin_setting_configtext('logstore_database/buffersize', get_string('buffersize', 'logstore_database'), get_string('buffersize_help', 'logstore_database'), 50)); // Filters. $settings->add(new admin_setting_heading('filters', get_string('filters', 'logstore_database'), get_string('filters_help', - 'logstore_database'))); + 'logstore_database'))); $settings->add(new admin_setting_configcheckbox('logstore_database/logguests', get_string('logguests', 'logstore_database'), '', '0')); $levels = \logstore_database\helper::get_level_options(); diff --git a/admin/tool/log/store/database/test_settings.php b/admin/tool/log/store/database/test_settings.php index 38bfab46a7e..ce35bc8111b 100644 --- a/admin/tool/log/store/database/test_settings.php +++ b/admin/tool/log/store/database/test_settings.php @@ -22,8 +22,8 @@ * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ -require('../../../../../config.php'); -require_once($CFG->dirroot. '/lib/adminlib.php'); +require_once('../../../../../config.php'); +require_once($CFG->dirroot . '/lib/adminlib.php'); require_login(); $context = context_system::instance(); @@ -88,14 +88,14 @@ if (!in_array($dbtable, $tables)) { echo $OUTPUT->footer(); die(); } -echo $OUTPUT->notification('Table '. $dbtable. ' found.', 'notifysuccess'); +echo $OUTPUT->notification('Table ' . $dbtable . ' found.', 'notifysuccess'); $cols = $db->get_columns($dbtable); if (empty($cols)) { echo $OUTPUT->notification('Can not read external table.', 'notifyproblem'); } else { $columns = array_keys((array)$cols); - echo $OUTPUT->notification('External table contains following columns:
'.implode(', ', $columns), 'notifysuccess'); + echo $OUTPUT->notification('External table contains following columns:
' . implode(', ', $columns), 'notifysuccess'); } $db->dispose(); diff --git a/admin/tool/log/store/database/tests/fixtures/event.php b/admin/tool/log/store/database/tests/fixtures/event.php index 379c4bf46b4..18f992585d1 100644 --- a/admin/tool/log/store/database/tests/fixtures/event.php +++ b/admin/tool/log/store/database/tests/fixtures/event.php @@ -14,8 +14,6 @@ // You should have received a copy of the GNU General Public License // along with Moodle. If not, see . -namespace logstore_database\event; - /** * Fixtures for database log storage testing. * @@ -24,6 +22,8 @@ namespace logstore_database\event; * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ +namespace logstore_database\event; + defined('MOODLE_INTERNAL') || die(); @@ -42,6 +42,6 @@ class unittest_executed extends \core\event\base { } public function get_url() { - return new \moodle_url('/somepath/somefile.php', array('id'=>$this->data['other']['sample'])); + return new \moodle_url('/somepath/somefile.php', array('id' => $this->data['other']['sample'])); } } diff --git a/admin/tool/log/store/database/tests/store_test.php b/admin/tool/log/store/database/tests/store_test.php index 00314fd9d72..02db3e29e80 100644 --- a/admin/tool/log/store/database/tests/store_test.php +++ b/admin/tool/log/store/database/tests/store_test.php @@ -22,9 +22,9 @@ * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ -defined('MOODLE_INTERNAL') || die; +defined('MOODLE_INTERNAL') || die(); -require_once (__DIR__ . '/fixtures/event.php'); +require_once(__DIR__ . '/fixtures/event.php'); class logstore_database_store_testcase extends advanced_testcase { public function test_log_writing() { @@ -40,18 +40,18 @@ class logstore_database_store_testcase extends advanced_testcase { $user1 = $this->getDataGenerator()->create_user(); $user2 = $this->getDataGenerator()->create_user(); $course1 = $this->getDataGenerator()->create_course(); - $module1 = $this->getDataGenerator()->create_module('resource', array('course'=>$course1)); + $module1 = $this->getDataGenerator()->create_module('resource', array('course' => $course1)); $course2 = $this->getDataGenerator()->create_course(); - $module2 = $this->getDataGenerator()->create_module('resource', array('course'=>$course2)); + $module2 = $this->getDataGenerator()->create_module('resource', array('course' => $course2)); // Fake the settings, we will abuse the standard plugin table here... $parts = explode('_', get_class($DB)); - set_config('dbdriver', $parts[1].'/'.$parts[0], 'logstore_database'); + set_config('dbdriver', $parts[1] . '/' . $parts[0], 'logstore_database'); set_config('dbhost', $CFG->dbhost, 'logstore_database'); set_config('dbuser', $CFG->dbuser, 'logstore_database'); set_config('dbpass', $CFG->dbpass, 'logstore_database'); set_config('dbname', $CFG->dbname, 'logstore_database'); - set_config('dbtable', $CFG->prefix.'logstore_standard_log', 'logstore_database'); + set_config('dbtable', $CFG->prefix . 'logstore_standard_log', 'logstore_database'); if (!empty($CFG->dboptions['dbpersist'])) { set_config('dbpersist', 1, 'logstore_database'); } else { @@ -97,7 +97,8 @@ class logstore_database_store_testcase extends advanced_testcase { $this->setCurrentTimeStart(); $this->setUser(0); - $event1 = \logstore_database\event\unittest_executed::create(array('context'=>context_module::instance($module1->cmid), 'other'=>array('sample'=>5, 'xx'=>10))); + $event1 = \logstore_database\event\unittest_executed::create( + array('context' => context_module::instance($module1->cmid), 'other' => array('sample' => 5, 'xx' => 10))); $event1->trigger(); $logs = $DB->get_records('logstore_standard_log', array(), 'id ASC'); @@ -117,7 +118,8 @@ class logstore_database_store_testcase extends advanced_testcase { \core\session\manager::loginas($user1->id, context_system::instance()); $this->assertEquals(2, $DB->count_records('logstore_standard_log')); - $event2 = \logstore_database\event\unittest_executed::create(array('context'=>context_module::instance($module2->cmid), 'other'=>array('sample'=>6, 'xx'=>9))); + $event2 = \logstore_database\event\unittest_executed::create( + array('context' => context_module::instance($module2->cmid), 'other' => array('sample' => 6, 'xx' => 9))); $event2->trigger(); $_SESSION['SESSION'] = new \stdClass(); @@ -157,23 +159,31 @@ class logstore_database_store_testcase extends advanced_testcase { $store = $stores['logstore_database']; $DB->delete_records('logstore_standard_log'); - \logstore_database\event\unittest_executed::create(array('context'=>context_module::instance($module1->cmid), 'other'=>array('sample'=>5, 'xx'=>10)))->trigger(); + \logstore_database\event\unittest_executed::create( + array('context' => context_module::instance($module1->cmid), 'other' => array('sample' => 5, 'xx' => 10)))->trigger(); $this->assertEquals(0, $DB->count_records('logstore_standard_log')); - \logstore_database\event\unittest_executed::create(array('context'=>context_module::instance($module1->cmid), 'other'=>array('sample'=>5, 'xx'=>10)))->trigger(); + \logstore_database\event\unittest_executed::create( + array('context' => context_module::instance($module1->cmid), 'other' => array('sample' => 5, 'xx' => 10)))->trigger(); $this->assertEquals(0, $DB->count_records('logstore_standard_log')); $store->flush(); $this->assertEquals(2, $DB->count_records('logstore_standard_log')); - \logstore_database\event\unittest_executed::create(array('context'=>context_module::instance($module1->cmid), 'other'=>array('sample'=>5, 'xx'=>10)))->trigger(); + \logstore_database\event\unittest_executed::create( + array('context' => context_module::instance($module1->cmid), 'other' => array('sample' => 5, 'xx' => 10)))->trigger(); $this->assertEquals(2, $DB->count_records('logstore_standard_log')); - \logstore_database\event\unittest_executed::create(array('context'=>context_module::instance($module1->cmid), 'other'=>array('sample'=>5, 'xx'=>10)))->trigger(); + \logstore_database\event\unittest_executed::create( + array('context' => context_module::instance($module1->cmid), 'other' => array('sample' => 5, 'xx' => 10)))->trigger(); $this->assertEquals(2, $DB->count_records('logstore_standard_log')); - \logstore_database\event\unittest_executed::create(array('context'=>context_module::instance($module1->cmid), 'other'=>array('sample'=>5, 'xx'=>10)))->trigger(); + \logstore_database\event\unittest_executed::create( + array('context' => context_module::instance($module1->cmid), 'other' => array('sample' => 5, 'xx' => 10)))->trigger(); $this->assertEquals(5, $DB->count_records('logstore_standard_log')); - \logstore_database\event\unittest_executed::create(array('context'=>context_module::instance($module1->cmid), 'other'=>array('sample'=>5, 'xx'=>10)))->trigger(); + \logstore_database\event\unittest_executed::create( + array('context' => context_module::instance($module1->cmid), 'other' => array('sample' => 5, 'xx' => 10)))->trigger(); $this->assertEquals(5, $DB->count_records('logstore_standard_log')); - \logstore_database\event\unittest_executed::create(array('context'=>context_module::instance($module1->cmid), 'other'=>array('sample'=>5, 'xx'=>10)))->trigger(); + \logstore_database\event\unittest_executed::create( + array('context' => context_module::instance($module1->cmid), 'other' => array('sample' => 5, 'xx' => 10)))->trigger(); $this->assertEquals(5, $DB->count_records('logstore_standard_log')); - \logstore_database\event\unittest_executed::create(array('context'=>context_module::instance($module1->cmid), 'other'=>array('sample'=>5, 'xx'=>10)))->trigger(); + \logstore_database\event\unittest_executed::create( + array('context' => context_module::instance($module1->cmid), 'other' => array('sample' => 5, 'xx' => 10)))->trigger(); $this->assertEquals(8, $DB->count_records('logstore_standard_log')); // Test guest logging setting. @@ -184,19 +194,23 @@ class logstore_database_store_testcase extends advanced_testcase { get_log_manager(true); $this->setUser(null); - \logstore_database\event\unittest_executed::create(array('context'=>context_module::instance($module1->cmid), 'other'=>array('sample'=>5, 'xx'=>10)))->trigger(); + \logstore_database\event\unittest_executed::create( + array('context' => context_module::instance($module1->cmid), 'other' => array('sample' => 5, 'xx' => 10)))->trigger(); $this->assertEquals(0, $DB->count_records('logstore_standard_log')); $this->setGuestUser(); - \logstore_database\event\unittest_executed::create(array('context'=>context_module::instance($module1->cmid), 'other'=>array('sample'=>5, 'xx'=>10)))->trigger(); + \logstore_database\event\unittest_executed::create( + array('context' => context_module::instance($module1->cmid), 'other' => array('sample' => 5, 'xx' => 10)))->trigger(); $this->assertEquals(0, $DB->count_records('logstore_standard_log')); $this->setUser($user1); - \logstore_database\event\unittest_executed::create(array('context'=>context_module::instance($module1->cmid), 'other'=>array('sample'=>5, 'xx'=>10)))->trigger(); + \logstore_database\event\unittest_executed::create( + array('context' => context_module::instance($module1->cmid), 'other' => array('sample' => 5, 'xx' => 10)))->trigger(); $this->assertEquals(1, $DB->count_records('logstore_standard_log')); $this->setUser($user2); - \logstore_database\event\unittest_executed::create(array('context'=>context_module::instance($module1->cmid), 'other'=>array('sample'=>5, 'xx'=>10)))->trigger(); + \logstore_database\event\unittest_executed::create( + array('context' => context_module::instance($module1->cmid), 'other' => array('sample' => 5, 'xx' => 10)))->trigger(); $this->assertEquals(2, $DB->count_records('logstore_standard_log')); set_config('enabled_stores', '', 'tool_log'); diff --git a/admin/tool/log/store/database/version.php b/admin/tool/log/store/database/version.php index 7dd6214a6d5..7656dd42a11 100644 --- a/admin/tool/log/store/database/version.php +++ b/admin/tool/log/store/database/version.php @@ -24,6 +24,6 @@ defined('MOODLE_INTERNAL') || die(); -$plugin->version = 2014011900; // The current plugin version (Date: YYYYMMDDXX). -$plugin->requires = 2014011000; // Requires this Moodle version. +$plugin->version = 2014011900; // The current plugin version (Date: YYYYMMDDXX). +$plugin->requires = 2014011000; // Requires this Moodle version. $plugin->component = 'logstore_database'; // Full name of the plugin (used for diagnostics). diff --git a/admin/tool/log/store/legacy/classes/event/legacy_logged.php b/admin/tool/log/store/legacy/classes/event/legacy_logged.php index 4a2a10c90f2..198e27a47c6 100644 --- a/admin/tool/log/store/legacy/classes/event/legacy_logged.php +++ b/admin/tool/log/store/legacy/classes/event/legacy_logged.php @@ -25,7 +25,6 @@ defined('MOODLE_INTERNAL') || die(); * @copyright 2013 Petr Skoda {@link http://skodak.org} * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ - class legacy_logged extends \core\event\base { public function init() { @@ -37,7 +36,7 @@ class legacy_logged extends \core\event\base { } public function get_description() { - return $this->other['module'].' '.$this->other['action'].' '.$this->other['info']; + return $this->other['module'] . ' ' . $this->other['action'] . ' ' . $this->other['info']; } public function get_url() { diff --git a/admin/tool/log/store/legacy/classes/log/store.php b/admin/tool/log/store/legacy/classes/log/store.php index a78c896fc29..ac0d063ec5e 100644 --- a/admin/tool/log/store/legacy/classes/log/store.php +++ b/admin/tool/log/store/legacy/classes/log/store.php @@ -33,13 +33,14 @@ class store implements \tool_log\log\store, \core\log\reader { public function __construct(\tool_log\log\manager $manager) { $this->helper_setup($manager); } + /** @var array list of db fields which needs to be replaced for legacy log query */ protected $standardtolegacyfields = array( - 'timecreated' => 'time', - 'courseid' => 'course', - 'contextinstanceid' => 'cmid', - 'origin' => 'ip' - ); + 'timecreated' => 'time', + 'courseid' => 'course', + 'contextinstanceid' => 'cmid', + 'origin' => 'ip' + ); public function get_events($selectwhere, array $params, $sort, $limitfrom, $limitnum) { global $DB; @@ -60,7 +61,7 @@ class store implements \tool_log\log\store, \core\log\reader { try { $records = $DB->get_records_select('log', $selectwhere, $params, $sort, '*', $limitfrom, $limitnum); } catch (\moodle_exception $ex) { - debugging("error converting legacy event data ". $ex->getMessage() . $ex->debuginfo, DEBUG_DEVELOPER); + debugging("error converting legacy event data " . $ex->getMessage() . $ex->debuginfo, DEBUG_DEVELOPER); } foreach ($records as $data) { @@ -85,7 +86,7 @@ class store implements \tool_log\log\store, \core\log\reader { try { return $DB->count_records_select('log', $selectwhere, $params); } catch (\moodle_exception $ex) { - debugging("error converting legacy event data ". $ex->getMessage() . $ex->debuginfo, DEBUG_DEVELOPER); + debugging("error converting legacy event data " . $ex->getMessage() . $ex->debuginfo, DEBUG_DEVELOPER); return 0; } } @@ -94,7 +95,7 @@ class store implements \tool_log\log\store, \core\log\reader { global $CFG, $DB; // Delete old logs to save space (this might need a timer to slow it down...). - if (!empty($CFG->loglifetime)) { // value in days + if (!empty($CFG->loglifetime)) { // Value in days. $loglifetime = time(0) - ($CFG->loglifetime * 3600 * 24); $DB->delete_records_select("log", "time < ?", array($loglifetime)); mtrace(" Deleted old log records"); @@ -107,12 +108,12 @@ class store implements \tool_log\log\store, \core\log\reader { /** * Legacy add_to_log() code. * - * @param int $courseid The course id - * @param string $module The module name e.g. forum, journal, resource, course, user etc - * @param string $action 'view', 'update', 'add' or 'delete', possibly followed by another word to clarify. - * @param string $url The file and parameters used to see the results of the action - * @param string $info Additional description information - * @param int $cm The course_module->id if there is one + * @param int $courseid The course id + * @param string $module The module name e.g. forum, journal, resource, course, user etc + * @param string $action 'view', 'update', 'add' or 'delete', possibly followed by another word to clarify. + * @param string $url The file and parameters used to see the results of the action + * @param string $info Additional description information + * @param int $cm The course_module->id if there is one * @param int|\stdClass $user If log regards $user other than $USER */ public function legacy_add_to_log($courseid, $module, $action, $url, $info, $cm, $user) { @@ -131,7 +132,7 @@ class store implements \tool_log\log\store, \core\log\reader { if ($user) { $userid = $user; } else { - if (\core\session\manager::is_loggedinas()) { // Don't log. + if (\core\session\manager::is_loggedinas()) { // Don't log. return; } $userid = empty($USER->id) ? '0' : $USER->id; @@ -143,7 +144,7 @@ class store implements \tool_log\log\store, \core\log\reader { } } - $REMOTE_ADDR = getremoteaddr(); + $remoteaddr = getremoteaddr(); $timenow = time(); if (!empty($url)) { // Could break doing html_entity_decode on an empty var. @@ -156,38 +157,42 @@ class store implements \tool_log\log\store, \core\log\reader { // database so that it doesn't cause a DB error. Log a warning so that // developers can avoid doing things which are likely to cause this on a // routine basis. - if(!empty($info) && \core_text::strlen($info)>255) { - $info = \core_text::substr($info,0,252).'...'; - debugging('Warning: logged very long info',DEBUG_DEVELOPER); + if (!empty($info) && \core_text::strlen($info) > 255) { + $info = \core_text::substr($info, 0, 252) . '...'; + debugging('Warning: logged very long info', DEBUG_DEVELOPER); } // If the 100 field size is changed, also need to alter print_log in course/lib.php. - if(!empty($url) && \core_text::strlen($url)>100) { - $url = \core_text::substr($url,0,97).'...'; - debugging('Warning: logged very long URL',DEBUG_DEVELOPER); + if (!empty($url) && \core_text::strlen($url) > 100) { + $url = \core_text::substr($url, 0, 97) . '...'; + debugging('Warning: logged very long URL', DEBUG_DEVELOPER); } - if (defined('MDL_PERFDB')) { global $PERF ; $PERF->logwrites++;}; + if (defined('MDL_PERFDB')) { + global $PERF; + $PERF->logwrites++; + }; - $log = array('time'=>$timenow, 'userid'=>$userid, 'course'=>$courseid, 'ip'=>$REMOTE_ADDR, 'module'=>$module, - 'cmid'=>$cm, 'action'=>$action, 'url'=>$url, 'info'=>$info); + $log = array('time' => $timenow, 'userid' => $userid, 'course' => $courseid, 'ip' => $remoteaddr, + 'module' => $module, 'cmid' => $cm, 'action' => $action, 'url' => $url, 'info' => $info); try { $DB->insert_record_raw('log', $log, false); } catch (\dml_exception $e) { - debugging('Error: Could not insert a new entry to the Moodle log. '. $e->error, DEBUG_ALL); + debugging('Error: Could not insert a new entry to the Moodle log. ' . $e->errorcode, DEBUG_ALL); // MDL-11893, alert $CFG->supportemail if insert into log failed. if ($CFG->supportemail and empty($CFG->noemailever)) { // Function email_to_user is not usable because email_to_user tries to write to the logs table, // and this will get caught in an infinite loop, if disk is full. $site = get_site(); - $subject = 'Insert into log failed at your moodle site '.$site->fullname; - $message = "Insert into log table failed at ". date('l dS \of F Y h:i:s A') .".\n It is possible that your disk is full.\n\n"; + $subject = 'Insert into log failed at your moodle site ' . $site->fullname; + $message = "Insert into log table failed at " . date('l dS \of F Y h:i:s A') . + ".\n It is possible that your disk is full.\n\n"; $message .= "The failed query parameters are:\n\n" . var_export($log, true); $lasttime = get_config('admin', 'lastloginserterrormail'); - if(empty($lasttime) || time() - $lasttime > 60*60*24) { // limit to 1 email per day + if (empty($lasttime) || time() - $lasttime > 60 * 60 * 24) { // Limit to 1 email per day. // Using email directly rather than messaging as they may not be able to log in to access a message. mail($CFG->supportemail, $subject, $message); set_config('lastloginserterrormail', time(), 'admin'); diff --git a/admin/tool/log/store/legacy/db/access.php b/admin/tool/log/store/legacy/db/access.php index 713e828ba6a..1d32982ed19 100644 --- a/admin/tool/log/store/legacy/db/access.php +++ b/admin/tool/log/store/legacy/db/access.php @@ -26,13 +26,13 @@ defined('MOODLE_INTERNAL') || die(); $capabilities = array( 'logstore/legacy:read' => array( - 'riskbitmask' => RISK_PERSONAL, - 'captype' => 'read', + 'riskbitmask' => RISK_PERSONAL, + 'captype' => 'read', 'contextlevel' => CONTEXT_MODULE, - 'archetypes' => array( - 'manager' => CAP_ALLOW, + 'archetypes' => array( + 'manager' => CAP_ALLOW, 'editingteacher' => CAP_ALLOW, - 'teacher' => CAP_ALLOW, + 'teacher' => CAP_ALLOW, ), ), ); diff --git a/admin/tool/log/store/legacy/settings.php b/admin/tool/log/store/legacy/settings.php index 6b385616ab3..0a7149ecb7c 100644 --- a/admin/tool/log/store/legacy/settings.php +++ b/admin/tool/log/store/legacy/settings.php @@ -33,18 +33,18 @@ if ($hassiteconfig) { new lang_string('logguests', 'admin'), new lang_string('logguests_help', 'admin'), 1)); - $options = array(0 => new lang_string('neverdeletelogs'), - 1000 => new lang_string('numdays', '', 1000), - 365 => new lang_string('numdays', '', 365), - 180 => new lang_string('numdays', '', 180), - 150 => new lang_string('numdays', '', 150), - 120 => new lang_string('numdays', '', 120), - 90 => new lang_string('numdays', '', 90), - 60 => new lang_string('numdays', '', 60), - 35 => new lang_string('numdays', '', 35), - 10 => new lang_string('numdays', '', 10), - 5 => new lang_string('numdays', '', 5), - 2 => new lang_string('numdays', '', 2)); + $options = array(0 => new lang_string('neverdeletelogs'), + 1000 => new lang_string('numdays', '', 1000), + 365 => new lang_string('numdays', '', 365), + 180 => new lang_string('numdays', '', 180), + 150 => new lang_string('numdays', '', 150), + 120 => new lang_string('numdays', '', 120), + 90 => new lang_string('numdays', '', 90), + 60 => new lang_string('numdays', '', 60), + 35 => new lang_string('numdays', '', 35), + 10 => new lang_string('numdays', '', 10), + 5 => new lang_string('numdays', '', 5), + 2 => new lang_string('numdays', '', 2)); $settings->add(new admin_setting_configselect('loglifetime', new lang_string('loglifetime', 'admin'), diff --git a/admin/tool/log/store/legacy/tests/fixtures/event.php b/admin/tool/log/store/legacy/tests/fixtures/event.php index 6674e86e2c3..093afa6ecde 100644 --- a/admin/tool/log/store/legacy/tests/fixtures/event.php +++ b/admin/tool/log/store/legacy/tests/fixtures/event.php @@ -14,8 +14,6 @@ // You should have received a copy of the GNU General Public License // along with Moodle. If not, see . -namespace logstore_legacy\event; - /** * Fixtures for legacy logging testing. * @@ -24,6 +22,8 @@ namespace logstore_legacy\event; * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ +namespace logstore_legacy\event; + defined('MOODLE_INTERNAL') || die(); @@ -42,7 +42,7 @@ class unittest_executed extends \core\event\base { } public function get_url() { - return new \moodle_url('/somepath/somefile.php', array('id'=>$this->data['other']['sample'])); + return new \moodle_url('/somepath/somefile.php', array('id' => $this->data['other']['sample'])); } public static function get_legacy_eventname() { @@ -58,6 +58,7 @@ class unittest_executed extends \core\event\base { if ($this->contextlevel == CONTEXT_MODULE) { $cmid = $this->contextinstanceid; } - return array($this->data['courseid'], 'core_unittest', 'view', 'unittest.php?id='.$this->data['other']['sample'], 'bbb', $cmid); + return array($this->data['courseid'], 'core_unittest', 'view', + 'unittest.php?id=' . $this->data['other']['sample'], 'bbb', $cmid); } } diff --git a/admin/tool/log/store/legacy/tests/store_test.php b/admin/tool/log/store/legacy/tests/store_test.php index 594594e5cb2..e1891246c08 100644 --- a/admin/tool/log/store/legacy/tests/store_test.php +++ b/admin/tool/log/store/legacy/tests/store_test.php @@ -22,9 +22,9 @@ * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ -defined('MOODLE_INTERNAL') || die; +defined('MOODLE_INTERNAL') || die(); -require_once (__DIR__ . '/fixtures/event.php'); +require_once(__DIR__ . '/fixtures/event.php'); class logstore_legacy_store_testcase extends advanced_testcase { public function test_log_writing() { @@ -35,9 +35,9 @@ class logstore_legacy_store_testcase extends advanced_testcase { $user1 = $this->getDataGenerator()->create_user(); $user2 = $this->getDataGenerator()->create_user(); $course1 = $this->getDataGenerator()->create_course(); - $module1 = $this->getDataGenerator()->create_module('resource', array('course'=>$course1)); + $module1 = $this->getDataGenerator()->create_module('resource', array('course' => $course1)); $course2 = $this->getDataGenerator()->create_course(); - $module2 = $this->getDataGenerator()->create_module('resource', array('course'=>$course2)); + $module2 = $this->getDataGenerator()->create_module('resource', array('course' => $course2)); // Enable legacy logging plugin. set_config('enabled_stores', 'logstore_legacy', 'tool_log'); @@ -50,11 +50,13 @@ class logstore_legacy_store_testcase extends advanced_testcase { $this->setCurrentTimeStart(); $this->setUser(0); - $event1 = \logstore_legacy\event\unittest_executed::create(array('context'=>context_module::instance($module1->cmid), 'other'=>array('sample'=>5, 'xx'=>10))); + $event1 = \logstore_legacy\event\unittest_executed::create( + array('context' => context_module::instance($module1->cmid), 'other' => array('sample' => 5, 'xx' => 10))); $event1->trigger(); $this->setUser($user1); - $event2 = \logstore_legacy\event\unittest_executed::create(array('context'=>context_course::instance($course2->id), 'other'=>array('sample'=>6, 'xx'=>11))); + $event2 = \logstore_legacy\event\unittest_executed::create( + array('context' => context_course::instance($course2->id), 'other' => array('sample' => 6, 'xx' => 11))); $event2->trigger(); $this->setUser($user2); @@ -126,7 +128,8 @@ class logstore_legacy_store_testcase extends advanced_testcase { set_config('loglegacy', 0, 'logstore_legacy'); get_log_manager(true); - \logstore_legacy\event\unittest_executed::create(array('context'=>\context_system::instance(), 'other'=>array('sample'=>5, 'xx'=>10)))->trigger(); + \logstore_legacy\event\unittest_executed::create( + array('context' => \context_system::instance(), 'other' => array('sample' => 5, 'xx' => 10)))->trigger(); add_to_log($course1->id, 'xxxx', 'yyyy', '', '7', 0, 0); //$this->assertDebuggingCalled(); $this->assertEquals(4, $DB->count_records('log')); @@ -136,7 +139,8 @@ class logstore_legacy_store_testcase extends advanced_testcase { set_config('loglegacy', 1, 'logstore_legacy'); get_log_manager(true); - \logstore_legacy\event\unittest_executed::create(array('context'=>\context_system::instance(), 'other'=>array('sample'=>5, 'xx'=>10)))->trigger(); + \logstore_legacy\event\unittest_executed::create( + array('context' => \context_system::instance(), 'other' => array('sample' => 5, 'xx' => 10)))->trigger(); add_to_log($course1->id, 'xxxx', 'yyyy', '', '7', 0, 0); //$this->assertDebuggingCalled(); $this->assertEquals(4, $DB->count_records('log')); diff --git a/admin/tool/log/store/legacy/version.php b/admin/tool/log/store/legacy/version.php index a10af9ff2a3..c00663c98af 100644 --- a/admin/tool/log/store/legacy/version.php +++ b/admin/tool/log/store/legacy/version.php @@ -24,6 +24,6 @@ defined('MOODLE_INTERNAL') || die(); -$plugin->version = 2014011300; // The current plugin version (Date: YYYYMMDDXX). -$plugin->requires = 2014011000; // Requires this Moodle version. +$plugin->version = 2014011300; // The current plugin version (Date: YYYYMMDDXX). +$plugin->requires = 2014011000; // Requires this Moodle version. $plugin->component = 'logstore_legacy'; // Full name of the plugin (used for diagnostics). diff --git a/admin/tool/log/store/standard/classes/log/store.php b/admin/tool/log/store/standard/classes/log/store.php index 4a82c1f22c0..f3dd893df1c 100644 --- a/admin/tool/log/store/standard/classes/log/store.php +++ b/admin/tool/log/store/standard/classes/log/store.php @@ -116,7 +116,7 @@ class store implements \tool_log\log\writer, \core\log\sql_reader { // NOTE: we should do this only once a day, new cron will deal with this. if ($loglifetime > 0) { - $loglifetime = time() - ($loglifetime * 3600 * 24); // Value in days. + $loglifetime = time() - ($loglifetime * 3600 * 24); // Value in days. $DB->delete_records_select("logstore_standard_log", "timecreated < ?", array($loglifetime)); mtrace(" Deleted old log records from standard store."); } diff --git a/admin/tool/log/store/standard/db/access.php b/admin/tool/log/store/standard/db/access.php index 81e64e5ae4e..774489beb8d 100644 --- a/admin/tool/log/store/standard/db/access.php +++ b/admin/tool/log/store/standard/db/access.php @@ -26,13 +26,13 @@ defined('MOODLE_INTERNAL') || die(); $capabilities = array( 'logstore/standard:read' => array( - 'riskbitmask' => RISK_PERSONAL, - 'captype' => 'read', + 'riskbitmask' => RISK_PERSONAL, + 'captype' => 'read', 'contextlevel' => CONTEXT_MODULE, - 'archetypes' => array( - 'manager' => CAP_ALLOW, + 'archetypes' => array( + 'manager' => CAP_ALLOW, 'editingteacher' => CAP_ALLOW, - 'teacher' => CAP_ALLOW, + 'teacher' => CAP_ALLOW, ), ), ); diff --git a/admin/tool/log/store/standard/settings.php b/admin/tool/log/store/standard/settings.php index 1a2e4c5f201..daa8131781d 100644 --- a/admin/tool/log/store/standard/settings.php +++ b/admin/tool/log/store/standard/settings.php @@ -31,18 +31,18 @@ if ($hassiteconfig) { new lang_string('logguests_help', 'core_admin'), 1)); $options = array( - 0 => new lang_string('neverdeletelogs'), + 0 => new lang_string('neverdeletelogs'), 1000 => new lang_string('numdays', '', 1000), - 365 => new lang_string('numdays', '', 365), - 180 => new lang_string('numdays', '', 180), - 150 => new lang_string('numdays', '', 150), - 120 => new lang_string('numdays', '', 120), - 90 => new lang_string('numdays', '', 90), - 60 => new lang_string('numdays', '', 60), - 35 => new lang_string('numdays', '', 35), - 10 => new lang_string('numdays', '', 10), - 5 => new lang_string('numdays', '', 5), - 2 => new lang_string('numdays', '', 2)); + 365 => new lang_string('numdays', '', 365), + 180 => new lang_string('numdays', '', 180), + 150 => new lang_string('numdays', '', 150), + 120 => new lang_string('numdays', '', 120), + 90 => new lang_string('numdays', '', 90), + 60 => new lang_string('numdays', '', 60), + 35 => new lang_string('numdays', '', 35), + 10 => new lang_string('numdays', '', 10), + 5 => new lang_string('numdays', '', 5), + 2 => new lang_string('numdays', '', 2)); $settings->add(new admin_setting_configselect('logstore_standard/loglifetime', new lang_string('loglifetime', 'core_admin'), new lang_string('configloglifetime', 'core_admin'), 0, $options)); diff --git a/admin/tool/log/store/standard/tests/fixtures/event.php b/admin/tool/log/store/standard/tests/fixtures/event.php index 1e7e7a6b732..efeac2e8c9d 100644 --- a/admin/tool/log/store/standard/tests/fixtures/event.php +++ b/admin/tool/log/store/standard/tests/fixtures/event.php @@ -14,8 +14,6 @@ // You should have received a copy of the GNU General Public License // along with Moodle. If not, see . -namespace logstore_standard\event; - /** * Fixtures for standard log storage testing. * @@ -24,6 +22,8 @@ namespace logstore_standard\event; * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ +namespace logstore_standard\event; + defined('MOODLE_INTERNAL') || die(); @@ -42,6 +42,6 @@ class unittest_executed extends \core\event\base { } public function get_url() { - return new \moodle_url('/somepath/somefile.php', array('id'=>$this->data['other']['sample'])); + return new \moodle_url('/somepath/somefile.php', array('id' => $this->data['other']['sample'])); } } diff --git a/admin/tool/log/store/standard/tests/store_test.php b/admin/tool/log/store/standard/tests/store_test.php index 3b2460a4cd0..94140cdcb87 100644 --- a/admin/tool/log/store/standard/tests/store_test.php +++ b/admin/tool/log/store/standard/tests/store_test.php @@ -22,9 +22,9 @@ * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ -defined('MOODLE_INTERNAL') || die; +defined('MOODLE_INTERNAL') || die(); -require_once (__DIR__ . '/fixtures/event.php'); +require_once(__DIR__ . '/fixtures/event.php'); class logstore_standard_store_testcase extends advanced_testcase { public function test_log_writing() { @@ -36,9 +36,9 @@ class logstore_standard_store_testcase extends advanced_testcase { $user1 = $this->getDataGenerator()->create_user(); $user2 = $this->getDataGenerator()->create_user(); $course1 = $this->getDataGenerator()->create_course(); - $module1 = $this->getDataGenerator()->create_module('resource', array('course'=>$course1)); + $module1 = $this->getDataGenerator()->create_module('resource', array('course' => $course1)); $course2 = $this->getDataGenerator()->create_course(); - $module2 = $this->getDataGenerator()->create_module('resource', array('course'=>$course2)); + $module2 = $this->getDataGenerator()->create_module('resource', array('course' => $course2)); // Enable logging plugin. set_config('enabled_stores', 'logstore_standard', 'tool_log'); @@ -59,7 +59,8 @@ class logstore_standard_store_testcase extends advanced_testcase { $this->setCurrentTimeStart(); $this->setUser(0); - $event1 = \logstore_standard\event\unittest_executed::create(array('context'=>context_module::instance($module1->cmid), 'other'=>array('sample'=>5, 'xx'=>10))); + $event1 = \logstore_standard\event\unittest_executed::create( + array('context' => context_module::instance($module1->cmid), 'other' => array('sample' => 5, 'xx' => 10))); $event1->trigger(); $logs = $DB->get_records('logstore_standard_log', array(), 'id ASC'); @@ -79,7 +80,8 @@ class logstore_standard_store_testcase extends advanced_testcase { \core\session\manager::loginas($user1->id, context_system::instance()); $this->assertEquals(2, $DB->count_records('logstore_standard_log')); - $event2 = \logstore_standard\event\unittest_executed::create(array('context'=>context_module::instance($module2->cmid), 'other'=>array('sample'=>6, 'xx'=>9))); + $event2 = \logstore_standard\event\unittest_executed::create( + array('context' => context_module::instance($module2->cmid), 'other' => array('sample' => 6, 'xx' => 9))); $event2->trigger(); $_SESSION['SESSION'] = new \stdClass(); @@ -119,23 +121,31 @@ class logstore_standard_store_testcase extends advanced_testcase { $store = $stores['logstore_standard']; $DB->delete_records('logstore_standard_log'); - \logstore_standard\event\unittest_executed::create(array('context'=>context_module::instance($module1->cmid), 'other'=>array('sample'=>5, 'xx'=>10)))->trigger(); + \logstore_standard\event\unittest_executed::create( + array('context' => context_module::instance($module1->cmid), 'other' => array('sample' => 5, 'xx' => 10)))->trigger(); $this->assertEquals(0, $DB->count_records('logstore_standard_log')); - \logstore_standard\event\unittest_executed::create(array('context'=>context_module::instance($module1->cmid), 'other'=>array('sample'=>5, 'xx'=>10)))->trigger(); + \logstore_standard\event\unittest_executed::create( + array('context' => context_module::instance($module1->cmid), 'other' => array('sample' => 5, 'xx' => 10)))->trigger(); $this->assertEquals(0, $DB->count_records('logstore_standard_log')); $store->flush(); $this->assertEquals(2, $DB->count_records('logstore_standard_log')); - \logstore_standard\event\unittest_executed::create(array('context'=>context_module::instance($module1->cmid), 'other'=>array('sample'=>5, 'xx'=>10)))->trigger(); + \logstore_standard\event\unittest_executed::create( + array('context' => context_module::instance($module1->cmid), 'other' => array('sample' => 5, 'xx' => 10)))->trigger(); $this->assertEquals(2, $DB->count_records('logstore_standard_log')); - \logstore_standard\event\unittest_executed::create(array('context'=>context_module::instance($module1->cmid), 'other'=>array('sample'=>5, 'xx'=>10)))->trigger(); + \logstore_standard\event\unittest_executed::create( + array('context' => context_module::instance($module1->cmid), 'other' => array('sample' => 5, 'xx' => 10)))->trigger(); $this->assertEquals(2, $DB->count_records('logstore_standard_log')); - \logstore_standard\event\unittest_executed::create(array('context'=>context_module::instance($module1->cmid), 'other'=>array('sample'=>5, 'xx'=>10)))->trigger(); + \logstore_standard\event\unittest_executed::create( + array('context' => context_module::instance($module1->cmid), 'other' => array('sample' => 5, 'xx' => 10)))->trigger(); $this->assertEquals(5, $DB->count_records('logstore_standard_log')); - \logstore_standard\event\unittest_executed::create(array('context'=>context_module::instance($module1->cmid), 'other'=>array('sample'=>5, 'xx'=>10)))->trigger(); + \logstore_standard\event\unittest_executed::create( + array('context' => context_module::instance($module1->cmid), 'other' => array('sample' => 5, 'xx' => 10)))->trigger(); $this->assertEquals(5, $DB->count_records('logstore_standard_log')); - \logstore_standard\event\unittest_executed::create(array('context'=>context_module::instance($module1->cmid), 'other'=>array('sample'=>5, 'xx'=>10)))->trigger(); + \logstore_standard\event\unittest_executed::create( + array('context' => context_module::instance($module1->cmid), 'other' => array('sample' => 5, 'xx' => 10)))->trigger(); $this->assertEquals(5, $DB->count_records('logstore_standard_log')); - \logstore_standard\event\unittest_executed::create(array('context'=>context_module::instance($module1->cmid), 'other'=>array('sample'=>5, 'xx'=>10)))->trigger(); + \logstore_standard\event\unittest_executed::create( + array('context' => context_module::instance($module1->cmid), 'other' => array('sample' => 5, 'xx' => 10)))->trigger(); $this->assertEquals(8, $DB->count_records('logstore_standard_log')); // Test guest logging setting. @@ -146,19 +156,23 @@ class logstore_standard_store_testcase extends advanced_testcase { get_log_manager(true); $this->setUser(null); - \logstore_standard\event\unittest_executed::create(array('context'=>context_module::instance($module1->cmid), 'other'=>array('sample'=>5, 'xx'=>10)))->trigger(); + \logstore_standard\event\unittest_executed::create( + array('context' => context_module::instance($module1->cmid), 'other' => array('sample' => 5, 'xx' => 10)))->trigger(); $this->assertEquals(0, $DB->count_records('logstore_standard_log')); $this->setGuestUser(); - \logstore_standard\event\unittest_executed::create(array('context'=>context_module::instance($module1->cmid), 'other'=>array('sample'=>5, 'xx'=>10)))->trigger(); + \logstore_standard\event\unittest_executed::create( + array('context' => context_module::instance($module1->cmid), 'other' => array('sample' => 5, 'xx' => 10)))->trigger(); $this->assertEquals(0, $DB->count_records('logstore_standard_log')); $this->setUser($user1); - \logstore_standard\event\unittest_executed::create(array('context'=>context_module::instance($module1->cmid), 'other'=>array('sample'=>5, 'xx'=>10)))->trigger(); + \logstore_standard\event\unittest_executed::create( + array('context' => context_module::instance($module1->cmid), 'other' => array('sample' => 5, 'xx' => 10)))->trigger(); $this->assertEquals(1, $DB->count_records('logstore_standard_log')); $this->setUser($user2); - \logstore_standard\event\unittest_executed::create(array('context'=>context_module::instance($module1->cmid), 'other'=>array('sample'=>5, 'xx'=>10)))->trigger(); + \logstore_standard\event\unittest_executed::create( + array('context' => context_module::instance($module1->cmid), 'other' => array('sample' => 5, 'xx' => 10)))->trigger(); $this->assertEquals(2, $DB->count_records('logstore_standard_log')); set_config('enabled_stores', '', 'tool_log'); diff --git a/admin/tool/log/store/standard/version.php b/admin/tool/log/store/standard/version.php index a19fa63833d..93e83d4a762 100644 --- a/admin/tool/log/store/standard/version.php +++ b/admin/tool/log/store/standard/version.php @@ -24,6 +24,6 @@ defined('MOODLE_INTERNAL') || die(); -$plugin->version = 2014013000; // The current plugin version (Date: YYYYMMDDXX). -$plugin->requires = 2014012400; // Requires this Moodle version. +$plugin->version = 2014013000; // The current plugin version (Date: YYYYMMDDXX). +$plugin->requires = 2014012400; // Requires this Moodle version. $plugin->component = 'logstore_standard'; // Full name of the plugin (used for diagnostics). diff --git a/admin/tool/log/stores.php b/admin/tool/log/stores.php index 9f24cd49b81..5b8e7121604 100644 --- a/admin/tool/log/stores.php +++ b/admin/tool/log/stores.php @@ -23,10 +23,10 @@ */ require_once('../../../config.php'); -require_once($CFG->libdir.'/adminlib.php'); +require_once($CFG->libdir . '/adminlib.php'); $action = required_param('action', PARAM_ALPHANUMEXT); -$enrol = required_param('store', PARAM_PLUGIN); +$enrol = required_param('store', PARAM_PLUGIN); $PAGE->set_url('/admin/tool/log/stores.php'); $PAGE->set_context(context_system::instance()); @@ -35,7 +35,7 @@ require_login(); require_capability('moodle/site:config', context_system::instance()); require_sesskey(); -$all = \tool_log\log\manager::get_store_plugins(); +$all = \tool_log\log\manager::get_store_plugins(); $enabled = get_config('tool_log', 'enabled_stores'); if (!$enabled) { $enabled = array(); @@ -43,7 +43,7 @@ if (!$enabled) { $enabled = array_flip(explode(',', $enabled)); } -$return = new moodle_url('/admin/settings.php', array('section'=>'managelogging')); +$return = new moodle_url('/admin/settings.php', array('section' => 'managelogging')); $syscontext = context_system::instance(); diff --git a/admin/tool/log/version.php b/admin/tool/log/version.php index d72972b86bc..0838cd29665 100644 --- a/admin/tool/log/version.php +++ b/admin/tool/log/version.php @@ -24,6 +24,6 @@ defined('MOODLE_INTERNAL') || die(); -$plugin->version = 2014011300; // The current plugin version (Date: YYYYMMDDXX). -$plugin->requires = 2014011000; // Requires this Moodle version. +$plugin->version = 2014011300; // The current plugin version (Date: YYYYMMDDXX). +$plugin->requires = 2014011000; // Requires this Moodle version. $plugin->component = 'tool_log'; // Full name of the plugin (used for diagnostics). diff --git a/lib/classes/log/dummy_manager.php b/lib/classes/log/dummy_manager.php index 98d97987bea..cbfb2fab535 100644 --- a/lib/classes/log/dummy_manager.php +++ b/lib/classes/log/dummy_manager.php @@ -31,6 +31,7 @@ class dummy_manager implements manager { public function get_readers() { return array(); } + public function dispose() { } } diff --git a/lib/classes/log/sql_reader.php b/lib/classes/log/sql_reader.php index d2c5bafc149..6ae8ad88675 100644 --- a/lib/classes/log/sql_reader.php +++ b/lib/classes/log/sql_reader.php @@ -35,8 +35,6 @@ interface sql_reader extends reader { * Note: this table must be used for reading only, * it is strongly recommended to use this in complex reports only. * - * TODO: define the standard log columns - watch out for "level" reserved word! - * * @return string */ public function get_log_table();