Bearsampp 2025.8.29
Loading...
Searching...
No Matches
class.tool.perl.php
Go to the documentation of this file.
1<?php
2/*
3 * Copyright (c) 2021-2024 Bearsampp
4 * License: GNU General Public License version 3 or later; see LICENSE.txt
5 * Author: Bear
6 * Website: https://bearsampp.com
7 * Github: https://github.com/Bearsampp
8 */
9
16class ToolPerl extends Module
17{
21 const ROOT_CFG_VERSION = 'perlVersion';
22
26 const LOCAL_CFG_EXE = 'perlExe';
27
31 private $exe;
32
39 public function __construct($id, $type) {
40 Util::logInitClass($this);
41 $this->reload($id, $type);
42 }
43
50 public function reload($id = null, $type = null) {
53
54 $this->name = $bearsamppLang->getValue(Lang::PERL);
55 $this->version = $bearsamppConfig->getRaw(self::ROOT_CFG_VERSION);
56 parent::reload($id, $type);
57
58 if ($this->bearsamppConfRaw !== false) {
59 $this->exe = $this->symlinkPath . '/' . $this->bearsamppConfRaw[self::LOCAL_CFG_EXE];
60 }
61
62 if (!$this->enable) {
63 Util::logInfo($this->name . ' is not enabled!');
64 return;
65 }
66 if (!is_dir($this->currentPath)) {
67 Util::logError(sprintf($bearsamppLang->getValue(Lang::ERROR_FILE_NOT_FOUND), $this->name . ' ' . $this->version, $this->currentPath));
68 }
69 if (!is_dir($this->symlinkPath)) {
70 Util::logError(sprintf($bearsamppLang->getValue(Lang::ERROR_FILE_NOT_FOUND), $this->name . ' ' . $this->version, $this->symlinkPath));
71 return;
72 }
73 if (!is_file($this->bearsamppConf)) {
74 Util::logError(sprintf($bearsamppLang->getValue(Lang::ERROR_CONF_NOT_FOUND), $this->name . ' ' . $this->version, $this->bearsamppConf));
75 }
76 if (!is_file($this->exe)) {
77 Util::logError(sprintf($bearsamppLang->getValue(Lang::ERROR_EXE_NOT_FOUND), $this->name . ' ' . $this->version, $this->exe));
78 }
79 }
80
86 public function setVersion($version) {
87 global $bearsamppConfig;
88 $this->version = $version;
89 $bearsamppConfig->replace(self::ROOT_CFG_VERSION, $version);
90 $this->reload();
91 }
92
98 public function getExe() {
99 return $this->exe;
100 }
101}
global $bearsamppLang
const ERROR_EXE_NOT_FOUND
const ERROR_CONF_NOT_FOUND
const PERL
const ERROR_FILE_NOT_FOUND
const LOCAL_CFG_EXE
setVersion($version)
reload($id=null, $type=null)
const ROOT_CFG_VERSION
__construct($id, $type)
static logError($data, $file=null)
static logInitClass($classInstance)
static logInfo($data, $file=null)
static logReloadClass($classInstance)
global $bearsamppConfig
Definition homepage.php:27