From 0ce2490bc2b99f7cc419d023e20e77a6a6b76ded Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=85kre=20Solberg?= <andreas.solberg@uninett.no> Date: Fri, 14 Nov 2008 21:29:50 +0000 Subject: [PATCH] Some sanity check for the statistics module, whether directory and input file exists and is writable git-svn-id: https://simplesamlphp.googlecode.com/svn/trunk@996 44740490-163a-0410-bde0-09ae8108e29a --- modules/statistics/hooks/hook_sanitycheck.php | 40 +++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 modules/statistics/hooks/hook_sanitycheck.php diff --git a/modules/statistics/hooks/hook_sanitycheck.php b/modules/statistics/hooks/hook_sanitycheck.php new file mode 100644 index 000000000..1d7ea71fe --- /dev/null +++ b/modules/statistics/hooks/hook_sanitycheck.php @@ -0,0 +1,40 @@ +<?php +/** + * Hook to do santity checks + * + * @param array &$hookinfo hookinfo + */ +function statistics_hook_sanitycheck(&$hookinfo) { + assert('is_array($hookinfo)'); + assert('array_key_exists("errors", $hookinfo)'); + assert('array_key_exists("info", $hookinfo)'); + + try { + $config = SimpleSAML_Configuration::getInstance(); + $statconfig = $config->copyFromBase('statconfig', 'statistics.php'); + } catch(Exception $e) { + $hookinfo['errors'][] = '[statistics] Could not get configuration: ' . $e->getMessage(); return; + } + + $statdir = $statconfig->getValue('statdir'); + $inputfile = $statconfig->getValue('inputfile'); + + if (file_exists($statdir)) { + $hookinfo['info'][] = '[statistics] Statistics dir [' . $statdir . '] exists'; + if (is_writable($statdir)) { + $hookinfo['info'][] = '[statistics] Statistics dir [' . $statdir . '] is writable'; + } else { + $hookinfo['errors'][] = '[statistics] Statistics dir [' . $statdir . '] is not writable'; + } + } else { + $hookinfo['errors'][] = '[statistics] Statistics dir [' . $statdir . '] does not exists'; + } + + + if (file_exists($inputfile)) { + $hookinfo['info'][] = '[statistics] Input file [' . $inputfile . '] exists'; + } else { + $hookinfo['errors'][] = '[statistics] Input file [' . $inputfile . '] does not exists'; + } +} +?> \ No newline at end of file -- GitLab