File Manager

Current Directory: /home/astoriaah/www/old15/components/com_foxcontact/views/loader
Viewing File: /home/astoriaah/www/old15/components/com_foxcontact/views/loader/view.html.php
<?php defined("_JEXEC") or die(file_get_contents("index.html")); // Program: Fox Contact for Joomla // Copyright (C): 2011 Demis Palma // Documentation: http://www.fox.ra.it/forum/2-documentation.html // License: Distributed under the terms of the GNU General Public License GNU/GPL v3 http://www.gnu.org/licenses/gpl-3.0.html jimport('joomla.application.component.view'); class FoxContactViewLoader extends JViewLegacy { protected $Input; public function __construct($config = array()) { parent::__construct($config); $this->Input = JFactory::getApplication()->input; } function display($tpl = null) { // Load component || module parameters. Defaults to component $owner = $this->Input->get("owner", ""); // Only admit lowercase a-z, underscore and minus. Forbid numbers, symbols, slashes and other stuff. preg_match('/^[a-z_-]+$/', $owner) or $owner = ""; $method = "_get_" . $owner . "_params_"; $params = $this->$method(); $type = $this->Input->get("type", ""); // Only admit lowercase a-z, underscore and minus. Forbid numbers, symbols, slashes and other stuff. preg_match('/^[a-z_-]+$/', $type) or $type = ""; $root = $this->Input->get("root", ""); // Only admit "components" and "media" preg_match('/^components|media$/', $root) or $root = "components"; $option = $this->Input->get("option", ""); // Only admit lowercase a-z, underscore and minus. Forbid numbers, symbols, slashes and other stuff. preg_match('/^[a-z_-]+$/', $option) or $option = ""; $view = $this->Input->get("v", ""); // Only admit lowercase a-z, underscore and minus. Forbid numbers, symbols, slashes and other stuff. preg_match('/^[a-z_-]+$/', $view) or $view = ""; $view = $view ? "/views/" . $view : ""; // Import appropriate library jimport("foxcontact.loader." . $type) or die(JText::_("JERROR_LAYOUT_REQUESTED_RESOURCE_WAS_NOT_FOUND")); // Instantiate the loader $classname = $type . "Loader"; $loader = new $classname(); $loader->IncludePath = JPATH_SITE . "/$root/$option" . $view; $loader->Params = & $params; $loader->Show(); } // Owner is empty. No component or module parameters are required private function _get__params_() { // Do nothing return new JRegistry; } private function _get_component_params_() { // @ avoids Warning: ini_set() has been disabled for security reasons in /var/www/libraries/joomla/[...] $application = @JFactory::getApplication('site'); // Needed to get the correct session with JFactory::getSession() below $menu = @$application->getMenu(); $params = $menu->getParams(intval($this->Input->get("id", 0))); return $params; } private function _get_module_params_() { $db = JFactory::getDbo(); jimport("joomla.database.databasequery"); $query = $db->getQuery(true); $query->select($db->quoteName("params")); $query->from($db->quoteName("#__modules")); $query->where($db->quoteName("id") . "=" . intval($this->Input->get("id", 0))); $query->where($db->quoteName("module") . "=" . $db->quote("mod_foxcontact")); $db->setQuery($query); // Load parameters from database $json = $db->loadResult(); // Convert to JRegistry $params = new JRegistry($json); return $params; } }