HEX
Server: Apache/2.4.41 (Ubuntu)
System: Linux vmi1674223.contaboserver.net 5.4.0-182-generic #202-Ubuntu SMP Fri Apr 26 12:29:36 UTC 2024 x86_64
User: root (0)
PHP: 7.4.3-4ubuntu2.22
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/ojs/lib/pkp/tools/constants.php
<?php

/**
 * @file tools/constants.php
 *
 * Copyright (c) 2014-2021 Simon Fraser University
 * Copyright (c) 2003-2021 John Willinsky
 * Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
 *
 * @class constants
 * @ingroup tools
 *
 * @brief Get the value of application constants.
 */

require(dirname(dirname(dirname(dirname(__FILE__)))) . '/tools/bootstrap.inc.php');

class constants extends CommandLineTool {

	var $value;

	/**
	 * Constructor
	 */
	function __construct($argv = array()) {
		parent::__construct($argv);

		if (isset($argv[1]) && in_array($argv[1], ['--help', '-h'])) {
			$this->usage();
			die;
		}

		if (isset($argv[1])) {
			$this->value = $argv[1];
		}
	}

	/**
	 * Print command usage information.
	 */
	function usage() {
		echo "Get the value of application constants.\n"
			. "\n"
			. "Usage: {$this->scriptName} [value]\n"
			. "[value]      Get the name of constants that match this value.\n"
			. "\n"
			. "This will only match application-wide constants available after the initial bootstrap.\n";
	}

	/**
	 * Generate test metrics
	 */
	function execute() {

		import('lib.pkp.classes.submission.SubmissionFile'); // SUBMISSION_FILE_

		$all = get_defined_constants(true);
		$app = $all['user'];

		if ($this->value) {
			$constants = [];
			foreach ($app as $const => $value) {
				if ($this->value == $value) {
					$constants[] = $const;
				}
			}
			if (empty($constants)) {
				echo "No constants were found with that value. This tool only matches constants loaded in the application bootstrap process and may miss other constants.";
			} else {
				print_r($constants);
			}
		} else {
			print_r($app);
		}
	}
}

$tool = new constants(isset($argv) ? $argv : array());
$tool->execute();