X7ROOT File Manager
Current Path:
/home/cbholdings/pasukulu/admin/cli
home
/
cbholdings
/
pasukulu
/
admin
/
cli
/
📁
..
📄
adhoc_task.php
(5.06 KB)
📄
alternative_component_cache.php
(3 KB)
📄
automated_backups.php
(2.67 KB)
📄
backup.php
(3.97 KB)
📄
build_theme_css.php
(3.35 KB)
📄
cfg.php
(6.5 KB)
📄
check_database_schema.php
(1.89 KB)
📄
checks.php
(4.62 KB)
📄
cron.php
(5.25 KB)
📄
dashboard_reset.php
(1.74 KB)
📄
delete_course.php
(3.58 KB)
📄
emailstop.php
(6.24 KB)
📄
fix_course_sequence.php
(4.28 KB)
📄
fix_deleted_users.php
(3.29 KB)
📄
fix_orphaned_calendar_events.php
(5.23 KB)
📄
fix_orphaned_question_categories.php
(3.45 KB)
📄
generate_key.php
(2.57 KB)
📄
install.php
(31.39 KB)
📄
install_database.php
(6.83 KB)
📄
kill_all_sessions.php
(1.54 KB)
📄
maintenance.php
(3.62 KB)
📄
mysql_collation.php
(12.37 KB)
📄
mysql_compressed_rows.php
(6.53 KB)
📄
purge_caches.php
(2.29 KB)
📄
reset_password.php
(3.17 KB)
📄
restore_backup.php
(3.44 KB)
📄
scheduled_task.php
(5.24 KB)
📄
svgtool.php
(5.05 KB)
📄
uninstall_plugins.php
(6.2 KB)
📄
upgrade.php
(12.82 KB)
Editing: svgtool.php
<?php // This file is part of Moodle - http://moodle.org/ // // Moodle is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation, either version 3 of the License, or // (at your option) any later version. // // Moodle is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with Moodle. If not, see <http://www.gnu.org/licenses/>. /** * This script implements some useful svg manipulation tricks. * * @package core_admin * @subpackage cli * @copyright 2012 Petr Skoda {@link http://skodak.org} * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ define('CLI_SCRIPT', true); require(__DIR__.'/../../config.php'); require_once($CFG->libdir.'/clilib.php'); // Now get cli options. list($options, $unrecognized) = cli_get_params(array('help'=>false, 'ie9fix'=>false, 'noaspectratio'=>false, 'path'=>$CFG->dirroot), array('h'=>'help')); if ($unrecognized) { $unrecognized = implode("\n ", $unrecognized); cli_error(get_string('cliunknowoption', 'admin', $unrecognized)); } // If necessary add files that should be ignored - such as in 3rd party plugins. $ignorelist = array(); $path = $options['path']; if (!file_exists($path)) { cli_error("Invalid path $path"); } if ($options['ie9fix']) { core_admin_recurse_svgs($path, '', 'core_admin_svgtool_ie9fix', $ignorelist); } else if ($options['noaspectratio']) { core_admin_recurse_svgs($path, '', 'core_admin_svgtool_noaspectratio', $ignorelist); } else { $help = "Some svg image tweaks for icon designers. Options: -h, --help Print out this help --ie9fix Adds preserveAspectRatio=\"xMinYMid meet\" to every svg image --noaspectratio Removes preserveAspectRatio from svg files --path=PATH Path to directory or file to be converted, by default \$CFG->dirroot Examples: \$ php svgtool.php --ie9fix \$ php svgtool.php --ie9fix --path=../../../pix \$ php svgtool.php --noaspectratio "; echo $help; die; } exit(0); /** * Fixes SVG images for IE9. * * @param string $file */ function core_admin_svgtool_ie9fix($file) { global $CFG; if (strpos($file, $CFG->dirroot.DIRECTORY_SEPARATOR) === 0) { $relfile = substr($file, strlen($CFG->dirroot)); } else { $relfile = $file; } $content = file_get_contents($file); if (!preg_match('/<svg\s[^>]*>/', $content, $matches)) { echo " skipping $relfile (invalid format)\n"; return; } $svg = $matches[0]; if (strpos($svg, 'preserveAspectRatio') !== false) { return; } if (!is_writable($file)) { echo " skipping $relfile (can not modify file)\n"; return; } $newsvg = rtrim($svg, '>').' preserveAspectRatio="xMinYMid meet">'; $content = str_replace($svg, $newsvg, $content); echo "converting $relfile\n"; file_put_contents($file, $content); } /** * Removes preserveAspectRatio attributes from SVG images. * * @param string $file */ function core_admin_svgtool_noaspectratio($file) { global $CFG; if (strpos($file, $CFG->dirroot.DIRECTORY_SEPARATOR) === 0) { $relfile = substr($file, strlen($CFG->dirroot)); } else { $relfile = $file; } $content = file_get_contents($file); if (!preg_match('/<svg\s[^>]*>/', $content, $matches)) { echo " skipping $relfile (invalid format)\n"; return; } $svg = $matches[0]; if (strpos($svg, 'preserveAspectRatio="xMinYMid meet"') === false) { return; } if (!is_writable($file)) { echo " skipping $relfile (can not modify file)\n"; return; } $newsvg = preg_replace('/ ?preserveAspectRatio="xMinYMid meet"/', '', $svg); $content = str_replace($svg, $newsvg, $content); echo "resetting $relfile\n"; file_put_contents($file, $content); } /** * Recursively works through directories of this theme, finding and fixing SVG images. * * @param string $base * @param string $sub * @param string $filecallback * @param array $ignorelist List of files to be ignored and skipped. */ function core_admin_recurse_svgs($base, $sub, $filecallback, $ignorelist) { if (is_dir("$base/$sub")) { $items = new DirectoryIterator("$base/$sub"); foreach ($items as $item) { if ($item->isDot()) { continue; } $file = $item->getFilename(); core_admin_recurse_svgs("$base/$sub", $file, $filecallback, $ignorelist); } unset($item); unset($items); return; } else if (is_file("$base/$sub")) { if (substr($sub, -4) !== '.svg') { return; } $file = realpath("$base/$sub"); if (in_array($file, $ignorelist)) { return; } $filecallback($file); } }
Upload File
Create Folder