/** * Get list of supported languages from the filesystem. * * Storing the values in a static attribute ensures the * filesystem is never parsed more than once per request * * @return array Supported languages */ public function get_supported_languages() { if (isset(self::$languages)) { return self::$languages; } self::$languages = $this->fao->get_list_of_directories($this->locales_location); self::$languages[] = $this->default_language; self::$languages = array_unique(self::$languages); return self::$languages; }
/** * Test that log() returns a string when an object is passed as message. * * @covers Lunr\Feedback\PHPLogger::log */ public function testLogReturnsStringWhenObjectPassedAsMessage() { $object = new MockLogMessage(); $this->datetime->expects($this->once())->method('get_datetime')->will($this->returnValue(self::DATETIME_STRING)); $this->fao->expects($this->once())->method('put_file_content')->with($this->equalTo($this->filename), $this->equalTo("[2011-11-10 10:30:22]: WARNING: Foo\n"), $this->equalTo(TRUE)); $this->class->log(LogLevel::WARNING, $object); }
/** * Get the controller responsible for the request. * * @param String $src Project subfolder to look for controllers in. * @param Array $list List of controller names * @param Boolean $blacklist Whether to use the controller list as blacklist or whitelist * * @return String $controller Fully qualified name of the responsible controller. */ public function get_controller($src, $list = [], $blacklist = TRUE) { $name = $this->request->controller . 'controller'; if ($name == 'controller') { return ''; } if ($blacklist === TRUE && in_array($this->request->controller, $list)) { return ''; } elseif ($blacklist === FALSE && !in_array($this->request->controller, $list)) { return ''; } $matches = $this->fao->find_matches("/^.+\\/{$name}.php/i", $src); if (empty($matches) === TRUE) { return ''; } $search = ['.php', $src, '/']; $replace = ['', '', '\\']; return ltrim(str_replace($search, $replace, $matches[0]), '\\'); }