File modules/util/Code.class.php

Last commit: Sat Sep 26 12:20:43 2020 +0200	Jan Dankert	Refactoring: No global variables like $SESS  any more. All constants are capsulated by classes.
1 <?php 2 // OpenRat Content Management System 3 // Copyright (C) 2002-2012 Jan Dankert, cms@jandankert.de 4 // 5 // This program is free software; you can redistribute it and/or 6 // modify it under the terms of the GNU General Public License 7 // as published by the Free Software Foundation; either version 2 8 // of the License, or (at your option) any later version. 9 // 10 // This program is distributed in the hope that it will be useful, 11 // but WITHOUT ANY WARRANTY; without even the implied warranty of 12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 // GNU General Public License for more details. 14 // 15 // You should have received a copy of the GNU General Public License 16 // along with this program; if not, write to the Free Software 17 // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 18 19 namespace util; 20 use util\FileUtils; 21 use logger\Logger; 22 use util\Macro; 23 24 /** 25 */ 26 class Code extends Macro 27 { 28 public $code; 29 30 function execute() 31 { 32 if (substr($this->code, 0, 2) != '<?') 33 $this->code = "<?php\n" . $this->code . "\n?>"; 34 35 Logger::trace('code: Executing PHP Code: ' . "\n" . $this->code); 36 $tmp = FileUtils::getTempDir() . '/openratMacro'; 37 $tmp .= '.code.php.tmp'; 38 39 $f = fopen($tmp, 'w'); 40 fwrite($f, $this->code); 41 fclose($f); 42 43 require($tmp); // Ausfuehren des temporaeren PHP-Codes 44 45 unlink($tmp); 46 } 47 }
Download modules/util/Code.class.php
History Sat, 26 Sep 2020 12:20:43 +0200 Jan Dankert Refactoring: No global variables like $SESS any more. All constants are capsulated by classes. Sun, 23 Feb 2020 00:03:40 +0100 Jan Dankert Refactoring: Namespaces for modules 'logger' and 'language' Sat, 22 Feb 2020 23:58:02 +0100 Jan Dankert Refactoring: Namespacing for module 'util'. Sun, 10 Nov 2019 22:38:49 +0100 Jan Dankert Log a warning, if code execution is requested, but disabled by configuration. Sat, 16 Dec 2017 23:21:31 +0100 Jan Dankert Eigenes Modul für alle Util-Klassen.