function tools() { $this->registry =& JFactory::getConfig(); JToolBarHelper::title(JText::_('Diagnostics'), 'install.png'); JToolBarHelper::preferences('com_updater', '550'); JToolBarHelper::help('updaterhelp', true); $model = new UpdaterModel(); $this->manifest = $model->getManifest(); $registry =& JFactory::getConfig(); $isnid = $registry->getValue('com_updater.isnid', null); list($n1, $n2, $n, $key) = explode('-', $isnid); $isnid = "{$n1}-{$n2}"; /* Get phpInfo() */ $info = phpinfo_array(true); /* TEST Permissions */ $config =& JFactory::getConfig(); $target = $config->getValue('config.tmp_path') . DS . md5(time()) . '.php'; file_put_contents($target, 'test'); $finfo2 = testFile($target); unlink($target); $finfo1 = testFile('index.php'); $finfo3 = testFile($config->getValue('config.tmp_path')); $finfo4 = testFile(JPATH_SITE); $finfo5 = testFile(JPATH_SITE . '/' . "libraries/joomla/version.php"); include UPDATER_EVIEWS . 'tools.view.default.html.php'; }
return false; } $file = str_replace('Test.php', '.php', $file); if (preg_match('@.*lib[\\\\/]Cake[\\\\/]@', $file)) { return preg_replace('@.*tests[\\\\/]cases[\\\\/]@', 'lib' . DS . 'Cake' . DS, $file); } return preg_replace('@.*tests[\\\\/]cases[\\\\/]@', '', $file); } return $file; } $files = files(); $filename_pattern = '/\\.(php)$/'; $toTest = array(); $exit_status = 0; foreach ($files as $file) { $file = testFile($file); if (!$file) { continue; } $toTest[$file] = true; } foreach ($toTest as $file) { $output = array(); $cmd = "cake test {$file}"; echo "{$cmd}\n"; exec($cmd, $output, $return); if ($return != 0) { echo implode("\n", $output), "\n"; $exit_status = 1; } }
function scan_directory_recursively($directory, $filter = FALSE, $level = 100) { global $sd_files; $directory_tree = array(); if ($level == 0) { return $directory_tree; } if (substr($directory, -1) == '/') { $directory = substr($directory, 0, -1); } if (!file_exists($directory) || !is_dir($directory)) { return FALSE; } elseif (is_readable($directory)) { $directory_list = opendir($directory); while ($file = readdir($directory_list)) { if ($file != '.' && $file != '..') { $path = $directory . '/' . $file; if (is_readable($path)) { $subdirectories = explode('/', $path); if (is_dir($path)) { $directory_tree[] = array('path' => $path, 'name' => end($subdirectories), 'kind' => 'directory', 'content' => scan_directory_recursively($path, $filter, $level - 1)); if ($filter == FALSE) { $sd_files[] = testFile($path); } } elseif (is_file($path)) { $extension = end(explode('.', end($subdirectories))); if ($filter === FALSE || $filter == $extension) { $file = array('path' => $path, 'name' => end($subdirectories), 'extension' => $extension, 'size' => filesize($path), 'kind' => 'file'); $directory_tree[] = $file; $sd_files[] = testFile($path); } } } } } closedir($directory_list); return $directory_tree; } else { return FALSE; } }