Spade
Mini Shell
| Directory:~$ /home/lmsyaran/public_html/joomla4/ |
| [Home] [System Details] [Kill Me] |
home/lmsyaran/public_html/libraries/fof/config/domain/interface.php000064400000002536151156052010021541
0ustar00<?php
/**
* @package FrameworkOnFramework
* @subpackage config
* @copyright Copyright (C) 2010-2016 Nicholas K. Dionysopoulos / Akeeba
Ltd. All rights reserved.
* @license GNU General Public License version 2, or later
* @note This file has been modified by the Joomla! Project and no
longer reflects the original work of its author.
*/
defined('FOF_INCLUDED') or die();
/**
* The Interface of an FOFConfigDomain class. The methods are used to parse
and
* provision sensible information to consumers. FOFConfigProvider acts as
an
* adapter to the FOFConfigDomain classes.
*
* @package FrameworkOnFramework
* @since 2.1
*/
interface FOFConfigDomainInterface
{
/**
* Parse the XML data, adding them to the $ret array
*
* @param SimpleXMLElement $xml The XML data of the component's
configuration area
* @param array &$ret The parsed data, in the form of a
hash array
*
* @return void
*/
public function parseDomain(SimpleXMLElement $xml, array &$ret);
/**
* Return a configuration variable
*
* @param string &$configuration Configuration variables (hashed
array)
* @param string $var The variable we want to fetch
* @param mixed $default Default value
*
* @return mixed The variable's value
*/
public function get(&$configuration, $var, $default);
}
home/lmsyaran/public_html/libraries/fof/database/interface.php000064400000001570151156421260020575
0ustar00<?php
/**
* @package FrameworkOnFramework
* @subpackage database
* @copyright Copyright (C) 2010-2016 Nicholas K. Dionysopoulos / Akeeba
Ltd. All rights reserved.
* @license GNU General Public License version 2 or later; see
LICENSE.txt
*
* This file is adapted from the Joomla! Platform. It is used to iterate a
database cursor returning FOFTable objects
* instead of plain stdClass objects
*/
// Protect from unauthorized access
defined('FOF_INCLUDED') or die;
if (!interface_exists('JDatabaseInterface'))
{
/**
* Joomla Platform Database Interface
*
* @since 11.2
*/
interface JDatabaseInterface
{
/**
* Test to see if the connector is available.
*
* @return boolean True on success, false otherwise.
*
* @since 11.2
*/
public static function isSupported();
}
}
interface FOFDatabaseInterface extends JDatabaseInterface
{
}
home/lmsyaran/public_html/libraries/fof/encrypt/aes/interface.php000064400000006265151156473230021277
0ustar00<?php
/**
* @package FrameworkOnFramework
* @subpackage utils
* @copyright Copyright (C) 2010-2016 Nicholas K. Dionysopoulos / Akeeba
Ltd. All rights reserved.
* @license GNU General Public License version 2 or later; see
LICENSE.txt
*/
// Protect from unauthorized access
defined('FOF_INCLUDED') or die;
/**
* Interface for AES encryption adapters
*/
interface FOFEncryptAesInterface
{
/**
* Sets the AES encryption mode.
*
* WARNING: The strength is deprecated as it has a different effect in
MCrypt and OpenSSL. MCrypt was abandoned in
* 2003 before the Rijndael-128 algorithm was officially the Advanced
Encryption Standard (AES). MCrypt also offered
* Rijndael-192 and Rijndael-256 algorithms with different block sizes.
These are NOT used in AES. OpenSSL, however,
* implements AES correctly. It always uses a 128-bit (16 byte) block. The
192 and 256 bit strengths refer to the
* key size, not the block size. Therefore using different strengths in
MCrypt and OpenSSL will result in different
* and incompatible ciphertexts.
*
* TL;DR: Always use $strength = 128!
*
* @param string $mode Choose between CBC (recommended) or ECB
* @param int $strength Bit strength of the key (128, 192 or 256
bits). DEPRECATED. READ NOTES ABOVE.
*
* @return mixed
*/
public function setEncryptionMode($mode = 'cbc', $strength =
128);
/**
* Encrypts a string. Returns the raw binary ciphertext.
*
* WARNING: The plaintext is zero-padded to the algorithm's block
size. You are advised to store the size of the
* plaintext and trim the string to that length upon decryption.
*
* @param string $plainText The plaintext to encrypt
* @param string $key The raw binary key (will be
zero-padded or chopped if its size is different than the block size)
* @param null|string $iv The initialization vector (for CBC
mode algorithms)
*
* @return string The raw encrypted binary string.
*/
public function encrypt($plainText, $key, $iv = null);
/**
* Decrypts a string. Returns the raw binary plaintext.
*
* $ciphertext MUST start with the IV followed by the ciphertext, even for
EBC data (the first block of data is
* dropped in EBC mode since there is no concept of IV in EBC).
*
* WARNING: The returned plaintext is zero-padded to the algorithm's
block size during encryption. You are advised
* to trim the string to the original plaintext's length upon
decryption. While rtrim($decrypted, "\0") sounds
* appealing it's NOT the correct approach for binary data (zero
bytes may actually be part of your plaintext, not
* just padding!).
*
* @param string $cipherText The ciphertext to encrypt
* @param string $key The raw binary key (will be zero-padded
or chopped if its size is different than the block size)
*
* @return string The raw unencrypted binary string.
*/
public function decrypt($cipherText, $key);
/**
* Returns the encryption block size in bytes
*
* @return int
*/
public function getBlockSize();
/**
* Is this adapter supported?
*
* @param FOFUtilsPhpfunc $phpfunc
*
* @return bool
*/
public function isSupported(FOFUtilsPhpfunc $phpfunc = null);
}home/lmsyaran/public_html/j3/libraries/joomla/database/interface.php000064400000001047151156641310021617
0ustar00<?php
/**
* @package Joomla.Platform
* @subpackage Database
*
* @copyright Copyright (C) 2005 - 2020 Open Source Matters, Inc. All
rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE
*/
defined('JPATH_PLATFORM') or die;
/**
* Joomla Platform Database Interface
*
* @since 1.7.0
*/
interface JDatabaseInterface
{
/**
* Test to see if the connector is available.
*
* @return boolean True on success, false otherwise.
*
* @since 1.7.0
*/
public static function isSupported();
}
home/lmsyaran/public_html/libraries/joomla/observer/interface.php000064400000004032151157232750021370
0ustar00<?php
/**
* @package Joomla.Platform
* @subpackage Observer
*
* @copyright Copyright (C) 2005 - 2020 Open Source Matters, Inc. All
rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE
*/
defined('JPATH_PLATFORM') or die;
/**
* Observer pattern interface for Joomla
*
* A class that wants to observe another class must:
*
* 1) Add: implements JObserverInterface
* to its class
*
* 2) Implement a constructor, that can look like this:
* public function __construct(JObservableInterface $observableObject)
* {
* $observableObject->attachObserver($this);
* $this->observableObject = $observableObject;
* }
*
* 3) and must implement the instantiator function createObserver() below,
e.g. as follows:
* public static function createObserver(JObservableInterface
$observableObject, $params = array())
* {
* $observer = new self($observableObject);
* $observer->... = $params['...']; ...
* return $observer;
* }
*
* 4) Then add functions corresponding to the events to be observed,
* E.g. to respond to event:
$this->_observers->update('onBeforeLoad', array($keys,
$reset));
* following function is needed in the observer:
* public function onBeforeLoad($keys, $reset) { ... }
*
* 5) Finally, the binding is made outside the observable and observer
classes, using:
* JObserverMapper::addObserverClassToClass('ObserverClassname',
'ObservableClassname', array('paramName' =>
'paramValue'));
* where the last array will be provided to the observer instanciator
function createObserver.
*
* @since 3.1.2
*/
interface JObserverInterface
{
/**
* Creates the associated observer instance and attaches it to the
$observableObject
*
* @param JObservableInterface $observableObject The observable
subject object
* @param array $params Params for this
observer
*
* @return JObserverInterface
*
* @since 3.1.2
*/
public static function createObserver(JObservableInterface
$observableObject, $params = array());
}
home/lmsyaran/public_html/j3/libraries/joomla/observable/interface.php000064400000003127151157232760022206
0ustar00<?php
/**
* @package Joomla.Platform
* @subpackage Observer
*
* @copyright Copyright (C) 2005 - 2020 Open Source Matters, Inc. All
rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE
*/
defined('JPATH_PLATFORM') or die;
/**
* Observable Subject pattern interface for Joomla
*
* To make a class and its inheriting classes observable:
* 1) add: implements JObservableInterface
* to its class
*
* 2) at the end of the constructor, add:
* // Create observer updater and attaches all observers interested by
$this class:
* $this->_observers = new JObserverUpdater($this);
* JObserverMapper::attachAllObservers($this);
*
* 3) add the function attachObserver below to your class to add observers
using the JObserverUpdater class:
* public function attachObserver(JObserverInterface $observer)
* {
* $this->_observers->attachObserver($observer);
* }
*
* 4) in the methods that need to be observed, add, e.g. (name of event,
params of event):
* $this->_observers->update('onBeforeLoad', array($keys,
$reset));
*
* @since 3.1.2
*/
interface JObservableInterface
{
/**
* Adds an observer to this JObservableInterface instance.
* Ideally, this method should be called from the constructor of
JObserverInterface
* which should be instantiated by JObserverMapper.
* The implementation of this function can use JObserverUpdater
*
* @param JObserverInterface $observer The observer to attach to $this
observable subject
*
* @return void
*
* @since 3.1.2
*/
public function attachObserver(JObserverInterface $observer);
}
home/lmsyaran/public_html/libraries/fof/download/interface.php000064400000005073151157626320020647
0ustar00<?php
/**
* @package FrameworkOnFramework
* @subpackage dispatcher
* @copyright Copyright (C) 2010-2016 Nicholas K. Dionysopoulos / Akeeba
Ltd. All rights reserved.
* @license GNU General Public License version 2 or later; see
LICENSE.txt
*/
// Protect from unauthorized access
defined('FOF_INCLUDED') or die;
interface FOFDownloadInterface
{
/**
* Does this download adapter support downloading files in chunks?
*
* @return boolean True if chunk download is supported
*/
public function supportsChunkDownload();
/**
* Does this download adapter support reading the size of a remote file?
*
* @return boolean True if remote file size determination is supported
*/
public function supportsFileSize();
/**
* Is this download class supported in the current server environment?
*
* @return boolean True if this server environment supports this
download class
*/
public function isSupported();
/**
* Get the priority of this adapter. If multiple download adapters are
* supported on a site, the one with the highest priority will be
* used.
*
* @return boolean
*/
public function getPriority();
/**
* Returns the name of this download adapter in use
*
* @return string
*/
public function getName();
/**
* Download a part (or the whole) of a remote URL and return the
downloaded
* data. You are supposed to check the size of the returned data. If
it's
* smaller than what you expected you've reached end of file. If
it's empty
* you have tried reading past EOF. If it's larger than what you
expected
* the server doesn't support chunk downloads.
*
* If this class' supportsChunkDownload returns false you should
assume
* that the $from and $to parameters will be ignored.
*
* @param string $url The remote file's URL
* @param integer $from Byte range to start downloading from. Use
null for start of file.
* @param integer $to Byte range to stop downloading. Use null to
download the entire file ($from is ignored)
* @param array $params Additional params that will be added before
performing the download
*
* @return string The raw file data retrieved from the remote URL.
*
* @throws Exception A generic exception is thrown on error
*/
public function downloadAndReturn($url, $from = null, $to = null, array
$params = array());
/**
* Get the size of a remote file in bytes
*
* @param string $url The remote file's URL
*
* @return integer The file size, or -1 if the remote server
doesn't support this feature
*/
public function getFileSize($url);
}home/lmsyaran/public_html/libraries/fof/hal/render/interface.php000064400000001171151157755250021063
0ustar00<?php
/**
* @package FrameworkOnFramework
* @subpackage hal
* @copyright Copyright (C) 2010-2016 Nicholas K. Dionysopoulos / Akeeba
Ltd. All rights reserved.
* @license GNU General Public License version 2 or later; see
LICENSE.txt
*/
defined('FOF_INCLUDED') or die;
/**
* Interface for HAL document renderers
*
* @package FrameworkOnFramework
* @since 2.1
*/
interface FOFHalRenderInterface
{
/**
* Render a HAL document into a representation suitable for consumption.
*
* @param array $options Renderer-specific options
*
* @return void
*/
public function render($options = array());
}
home/lmsyaran/public_html/libraries/fof/platform/interface.php000064400000041020151160043730020644
0ustar00<?php
/**
* @package FrameworkOnFramework
* @subpackage platform
* @copyright Copyright (C) 2010-2016 Nicholas K. Dionysopoulos / Akeeba
Ltd. All rights reserved.
* @license GNU General Public License version 2 or later; see
LICENSE.txt
* @note This file has been modified by the Joomla! Project and no
longer reflects the original work of its author.
*/
// Protect from unauthorized access
defined('FOF_INCLUDED') or die;
/**
* Part of the FOF Platform Abstraction Layer. It implements everything
that
* depends on the platform FOF is running under, e.g. the Joomla! CMS
front-end,
* the Joomla! CMS back-end, a CLI Joomla! Platform app, a bespoke Joomla!
* Platform / Framework web application and so on.
*
* This is the abstract class implementing some basic housekeeping
functionality
* and provides the static interface to get the appropriate Platform object
for
* use in the rest of the framework.
*
* @package FrameworkOnFramework
* @since 2.1
*/
interface FOFPlatformInterface
{
/**
* Checks if the current script is run inside a valid CMS execution
*
* @return bool
*/
public function checkExecution();
/**
* Set the error Handling, if possible
*
* @param integer $level PHP error level (E_ALL)
* @param string $log_level What to do with the error (ignore,
callback)
* @param array $options Options for the error handler
*
* @return void
*/
public function setErrorHandling($level, $log_level, $options = array());
/**
* Raises an error, using the logic requested by the CMS (PHP Exception
or dedicated class)
*
* @param integer $code
* @param string $message
*
* @return mixed
*/
public function raiseError($code, $message);
/**
* Returns the ordering of the platform class. Files with a lower ordering
* number will be loaded first.
*
* @return integer
*/
public function getOrdering();
/**
* Returns a platform integration object
*
* @param string $key The key name of the platform integration object,
e.g. 'filesystem'
*
* @return object
*
* @since 2.1.2
*/
public function getIntegrationObject($key);
/**
* Forces a platform integration object instance
*
* @param string $key The key name of the platform integration
object, e.g. 'filesystem'
* @param object $object The object to force for this key
*
* @return object
*
* @since 2.1.2
*/
public function setIntegrationObject($key, $object);
/**
* Is this platform enabled? This is used for automatic platform
detection.
* If the environment we're currently running in doesn't seem to
be your
* platform return false. If many classes return true, the one with the
* lowest order will be picked by FOFPlatform.
*
* @return boolean
*/
public function isEnabled();
/**
* Returns the (internal) name of the platform implementation, e.g.
* "joomla", "foobar123" etc. This MUST be the last
part of the platform
* class name. For example, if you have a plaform implementation class
* FOFPlatformFoobar you MUST return "foobar" (all lowercase).
*
* @return string
*
* @since 2.1.2
*/
public function getPlatformName();
/**
* Returns the version number string of the platform, e.g.
"4.5.6". If
* implementation integrates with a CMS or a versioned foundation (e.g.
* a framework) it is advisable to return that version.
*
* @return string
*
* @since 2.1.2
*/
public function getPlatformVersion();
/**
* Returns the human readable platform name, e.g. "Joomla!",
"Joomla!
* Framework", "Something Something Something Framework"
etc.
*
* @return string
*
* @since 2.1.2
*/
public function getPlatformHumanName();
/**
* Returns absolute path to directories used by the CMS.
*
* The return is a table with the following key:
* * root Path to the site root
* * public Path to the public area of the site
* * admin Path to the administrative area of the site
* * tmp Path to the temp directory
* * log Path to the log directory
*
* @return array A hash array with keys root, public, admin, tmp and
log.
*/
public function getPlatformBaseDirs();
/**
* Returns the base (root) directories for a given component. The
* "component" is used in the sense of what we call
"component" in Joomla!,
* "plugin" in WordPress and "module" in Drupal, i.e.
an application which
* is running inside our main application (CMS).
*
* The return is a table with the following keys:
* * main The normal location of component files. For a back-end Joomla!
* component this is the administrator/components/com_example
* directory.
* * alt The alternate location of component files. For a back-end
* Joomla! component this is the front-end directory, e.g.
* components/com_example
* * site The location of the component files serving the public part of
* the application.
* * admin The location of the component files serving the administrative
* part of the application.
*
* All paths MUST be absolute. All four paths MAY be the same if the
* platform doesn't make a distinction between public and private
parts,
* or when the component does not provide both a public and private part.
* All of the directories MUST be defined and non-empty.
*
* @param string $component The name of the component. For Joomla!
this
* is something like "com_example"
*
* @return array A hash array with keys main, alt, site and admin.
*/
public function getComponentBaseDirs($component);
/**
* Return a list of the view template paths for this component. The paths
* are in the format site:/component_name/view_name/layout_name or
* admin:/component_name/view_name/layout_name
*
* The list of paths returned is a prioritised list. If a file is
* found in the first path the other paths will not be scanned.
*
* @param string $component The name of the component. For Joomla!
this
* is something like "com_example"
* @param string $view The name of the view you're looking
a
* template for
* @param string $layout The layout name to load, e.g.
'default'
* @param string $tpl The sub-template name to load (null by
default)
* @param boolean $strict If true, only the specified layout will
be
* searched for. Otherwise we'll fall
back to
* the 'default' layout if the
specified layout
* is not found.
*
* @return array
*/
public function getViewTemplatePaths($component, $view, $layout =
'default', $tpl = null, $strict = false);
/**
* Get application-specific suffixes to use with template paths. This
allows
* you to look for view template overrides based on the application
version.
*
* @return array A plain array of suffixes to try in template names
*/
public function getTemplateSuffixes();
/**
* Return the absolute path to the application's template overrides
* directory for a specific component. We will use it to look for template
* files instead of the regular component directorues. If the application
* does not have such a thing as template overrides return an empty
string.
*
* @param string $component The name of the component for which to
fetch the overrides
* @param boolean $absolute Should I return an absolute or relative
path?
*
* @return string The path to the template overrides directory
*/
public function getTemplateOverridePath($component, $absolute = true);
/**
* Load the translation files for a given component. The
* "component" is used in the sense of what we call
"component" in Joomla!,
* "plugin" in WordPress and "module" in Drupal, i.e.
an application which
* is running inside our main application (CMS).
*
* @param string $component The name of the component. For Joomla!
this
* is something like "com_example"
*
* @return void
*/
public function loadTranslations($component);
/**
* By default FOF will only use the Controller's onBefore* methods to
* perform user authorisation. In some cases, like the Joomla! back-end,
* you also need to perform component-wide user authorisation in the
* Dispatcher. This method MUST implement this authorisation check. If you
* do not need this in your platform, please always return true.
*
* @param string $component The name of the component.
*
* @return boolean True to allow loading the component, false to halt
loading
*/
public function authorizeAdmin($component);
/**
* This method will try retrieving a variable from the request (input)
data.
* If it doesn't exist it will be loaded from the user state,
typically
* stored in the session. If it doesn't exist there either, the
$default
* value will be used. If $setUserState is set to true, the retrieved
* variable will be stored in the user session.
*
* @param string $key The user state key for the variable
* @param string $request The request variable name for the
variable
* @param FOFInput $input The FOFInput object with the request
(input) data
* @param mixed $default The default value. Default: null
* @param string $type The filter type for the variable
data. Default: none (no filtering)
* @param boolean $setUserState Should I set the user state with the
fetched value?
*
* @return mixed The value of the variable
*/
public function getUserStateFromRequest($key, $request, $input, $default =
null, $type = 'none', $setUserState = true);
/**
* Load plugins of a specific type. Obviously this seems to only be
required
* in the Joomla! CMS.
*
* @param string $type The type of the plugins to be loaded
*
* @return void
*/
public function importPlugin($type);
/**
* Execute plugins (system-level triggers) and fetch back an array with
* their return values.
*
* @param string $event The event (trigger) name, e.g.
onBeforeScratchMyEar
* @param array $data A hash array of data sent to the plugins as
part of the trigger
*
* @return array A simple array containing the results of the plugins
triggered
*/
public function runPlugins($event, $data);
/**
* Perform an ACL check. Please note that FOF uses by default the Joomla!
* CMS convention for ACL privileges, e.g core.edit for the edit
privilege.
* If your platform uses different conventions you'll have to
override the
* FOF defaults using fof.xml or by specialising the controller.
*
* @param string $action The ACL privilege to check, e.g. core.edit
* @param string $assetname The asset name to check, typically the
component's name
*
* @return boolean True if the user is allowed this action
*/
public function authorise($action, $assetname);
/**
* Returns a user object.
*
* @param integer $id The user ID to load. Skip or use null to
retrieve
* the object for the currently logged in user.
*
* @return JUser The JUser object for the specified user
*/
public function getUser($id = null);
/**
* Returns the JDocument object which handles this component's
response. You
* may also return null and FOF will a. try to figure out the output type
by
* examining the "format" input parameter (or fall back to
"html") and b.
* FOF will not attempt to load CSS and Javascript files (as it
doesn't make
* sense if there's no JDocument to handle them).
*
* @return JDocument
*/
public function getDocument();
/**
* Returns an object to handle dates
*
* @param mixed $time The initial time
* @param null $tzOffest The timezone offset
* @param bool $locale Should I try to load a specific class
for current language?
*
* @return JDate object
*/
public function getDate($time = 'now', $tzOffest = null,
$locale = true);
public function getLanguage();
/**
* @return FOFDatabaseDriver
*/
public function getDbo();
/**
* Is this the administrative section of the component?
*
* @return boolean
*/
public function isBackend();
/**
* Is this the public section of the component?
*
* @return boolean
*/
public function isFrontend();
/**
* Is this a component running in a CLI application?
*
* @return boolean
*/
public function isCli();
/**
* Is AJAX re-ordering supported? This is 100% Joomla!-CMS specific. All
* other platforms should return false and never ask why.
*
* @return boolean
*/
public function supportsAjaxOrdering();
/**
* Performs a check between two versions. Use this function instead of PHP
version_compare
* so we can mock it while testing
*
* @param string $version1 First version number
* @param string $version2 Second version number
* @param string $operator Operator (see version_compare for valid
operators)
*
* @deprecated Use PHP's version_compare against JVERSION in your
code. This method is scheduled for removal in FOF 3.0
*
* @return boolean
*/
public function checkVersion($version1, $version2, $operator);
/**
* Saves something to the cache. This is supposed to be used for
system-wide
* FOF data, not application data.
*
* @param string $key The key of the data to save
* @param string $content The actual data to save
*
* @return boolean True on success
*/
public function setCache($key, $content);
/**
* Retrieves data from the cache. This is supposed to be used for
system-side
* FOF data, not application data.
*
* @param string $key The key of the data to retrieve
* @param string $default The default value to return if the key is
not found or the cache is not populated
*
* @return string The cached value
*/
public function getCache($key, $default = null);
/**
* Clears the cache of system-wide FOF data. You are supposed to call this
in
* your components' installation script post-installation and
post-upgrade
* methods or whenever you are modifying the structure of database tables
* accessed by FOF. Please note that FOF's cache never expires and is
not
* purged by Joomla!. You MUST use this method to manually purge the
cache.
*
* @return boolean True on success
*/
public function clearCache();
/**
* Returns an object that holds the configuration of the current site.
*
* @return mixed
*/
public function getConfig();
/**
* Is the global FOF cache enabled?
*
* @return boolean
*/
public function isGlobalFOFCacheEnabled();
/**
* logs in a user
*
* @param array $authInfo authentication information
*
* @return boolean True on success
*/
public function loginUser($authInfo);
/**
* logs out a user
*
* @return boolean True on success
*/
public function logoutUser();
public function logAddLogger($file);
/**
* Logs a deprecated practice. In Joomla! this results in the $message
being output in the
* deprecated log file, found in your site's log directory.
*
* @param string $message The deprecated practice log message
*
* @return void
*/
public function logDeprecated($message);
public function logDebug($message);
/**
* Returns the root URI for the request.
*
* @param boolean $pathonly If false, prepend the scheme, host and
port information. Default is false.
* @param string $path The path
*
* @return string The root URI string.
*/
public function URIroot($pathonly = false, $path = null);
/**
* Returns the base URI for the request.
*
* @param boolean $pathonly If false, prepend the scheme, host and
port information. Default is false.
* |
* @return string The base URI string
*/
public function URIbase($pathonly = false);
/**
* Method to set a response header. If the replace flag is set then
all headers
* with the given name will be replaced by the new one (only if the
current platform supports header caching)
*
* @param string $name The name of the header to set.
* @param string $value The value of the header to set.
* @param boolean $replace True to replace any headers with the
same name.
*
* @return void
*/
public function setHeader($name, $value, $replace = false);
/**
* In platforms that perform header caching, send all headers.
*
* @return void
*/
public function sendHeaders();
}
home/lmsyaran/public_html/j3/htaccess.back/fof/platform/interface.php000064400000041020151161207660021705
0ustar00<?php
/**
* @package FrameworkOnFramework
* @subpackage platform
* @copyright Copyright (C) 2010-2016 Nicholas K. Dionysopoulos / Akeeba
Ltd. All rights reserved.
* @license GNU General Public License version 2 or later; see
LICENSE.txt
* @note This file has been modified by the Joomla! Project and no
longer reflects the original work of its author.
*/
// Protect from unauthorized access
defined('FOF_INCLUDED') or die;
/**
* Part of the FOF Platform Abstraction Layer. It implements everything
that
* depends on the platform FOF is running under, e.g. the Joomla! CMS
front-end,
* the Joomla! CMS back-end, a CLI Joomla! Platform app, a bespoke Joomla!
* Platform / Framework web application and so on.
*
* This is the abstract class implementing some basic housekeeping
functionality
* and provides the static interface to get the appropriate Platform object
for
* use in the rest of the framework.
*
* @package FrameworkOnFramework
* @since 2.1
*/
interface FOFPlatformInterface
{
/**
* Checks if the current script is run inside a valid CMS execution
*
* @return bool
*/
public function checkExecution();
/**
* Set the error Handling, if possible
*
* @param integer $level PHP error level (E_ALL)
* @param string $log_level What to do with the error (ignore,
callback)
* @param array $options Options for the error handler
*
* @return void
*/
public function setErrorHandling($level, $log_level, $options = array());
/**
* Raises an error, using the logic requested by the CMS (PHP Exception
or dedicated class)
*
* @param integer $code
* @param string $message
*
* @return mixed
*/
public function raiseError($code, $message);
/**
* Returns the ordering of the platform class. Files with a lower ordering
* number will be loaded first.
*
* @return integer
*/
public function getOrdering();
/**
* Returns a platform integration object
*
* @param string $key The key name of the platform integration object,
e.g. 'filesystem'
*
* @return object
*
* @since 2.1.2
*/
public function getIntegrationObject($key);
/**
* Forces a platform integration object instance
*
* @param string $key The key name of the platform integration
object, e.g. 'filesystem'
* @param object $object The object to force for this key
*
* @return object
*
* @since 2.1.2
*/
public function setIntegrationObject($key, $object);
/**
* Is this platform enabled? This is used for automatic platform
detection.
* If the environment we're currently running in doesn't seem to
be your
* platform return false. If many classes return true, the one with the
* lowest order will be picked by FOFPlatform.
*
* @return boolean
*/
public function isEnabled();
/**
* Returns the (internal) name of the platform implementation, e.g.
* "joomla", "foobar123" etc. This MUST be the last
part of the platform
* class name. For example, if you have a plaform implementation class
* FOFPlatformFoobar you MUST return "foobar" (all lowercase).
*
* @return string
*
* @since 2.1.2
*/
public function getPlatformName();
/**
* Returns the version number string of the platform, e.g.
"4.5.6". If
* implementation integrates with a CMS or a versioned foundation (e.g.
* a framework) it is advisable to return that version.
*
* @return string
*
* @since 2.1.2
*/
public function getPlatformVersion();
/**
* Returns the human readable platform name, e.g. "Joomla!",
"Joomla!
* Framework", "Something Something Something Framework"
etc.
*
* @return string
*
* @since 2.1.2
*/
public function getPlatformHumanName();
/**
* Returns absolute path to directories used by the CMS.
*
* The return is a table with the following key:
* * root Path to the site root
* * public Path to the public area of the site
* * admin Path to the administrative area of the site
* * tmp Path to the temp directory
* * log Path to the log directory
*
* @return array A hash array with keys root, public, admin, tmp and
log.
*/
public function getPlatformBaseDirs();
/**
* Returns the base (root) directories for a given component. The
* "component" is used in the sense of what we call
"component" in Joomla!,
* "plugin" in WordPress and "module" in Drupal, i.e.
an application which
* is running inside our main application (CMS).
*
* The return is a table with the following keys:
* * main The normal location of component files. For a back-end Joomla!
* component this is the administrator/components/com_example
* directory.
* * alt The alternate location of component files. For a back-end
* Joomla! component this is the front-end directory, e.g.
* components/com_example
* * site The location of the component files serving the public part of
* the application.
* * admin The location of the component files serving the administrative
* part of the application.
*
* All paths MUST be absolute. All four paths MAY be the same if the
* platform doesn't make a distinction between public and private
parts,
* or when the component does not provide both a public and private part.
* All of the directories MUST be defined and non-empty.
*
* @param string $component The name of the component. For Joomla!
this
* is something like "com_example"
*
* @return array A hash array with keys main, alt, site and admin.
*/
public function getComponentBaseDirs($component);
/**
* Return a list of the view template paths for this component. The paths
* are in the format site:/component_name/view_name/layout_name or
* admin:/component_name/view_name/layout_name
*
* The list of paths returned is a prioritised list. If a file is
* found in the first path the other paths will not be scanned.
*
* @param string $component The name of the component. For Joomla!
this
* is something like "com_example"
* @param string $view The name of the view you're looking
a
* template for
* @param string $layout The layout name to load, e.g.
'default'
* @param string $tpl The sub-template name to load (null by
default)
* @param boolean $strict If true, only the specified layout will
be
* searched for. Otherwise we'll fall
back to
* the 'default' layout if the
specified layout
* is not found.
*
* @return array
*/
public function getViewTemplatePaths($component, $view, $layout =
'default', $tpl = null, $strict = false);
/**
* Get application-specific suffixes to use with template paths. This
allows
* you to look for view template overrides based on the application
version.
*
* @return array A plain array of suffixes to try in template names
*/
public function getTemplateSuffixes();
/**
* Return the absolute path to the application's template overrides
* directory for a specific component. We will use it to look for template
* files instead of the regular component directorues. If the application
* does not have such a thing as template overrides return an empty
string.
*
* @param string $component The name of the component for which to
fetch the overrides
* @param boolean $absolute Should I return an absolute or relative
path?
*
* @return string The path to the template overrides directory
*/
public function getTemplateOverridePath($component, $absolute = true);
/**
* Load the translation files for a given component. The
* "component" is used in the sense of what we call
"component" in Joomla!,
* "plugin" in WordPress and "module" in Drupal, i.e.
an application which
* is running inside our main application (CMS).
*
* @param string $component The name of the component. For Joomla!
this
* is something like "com_example"
*
* @return void
*/
public function loadTranslations($component);
/**
* By default FOF will only use the Controller's onBefore* methods to
* perform user authorisation. In some cases, like the Joomla! back-end,
* you also need to perform component-wide user authorisation in the
* Dispatcher. This method MUST implement this authorisation check. If you
* do not need this in your platform, please always return true.
*
* @param string $component The name of the component.
*
* @return boolean True to allow loading the component, false to halt
loading
*/
public function authorizeAdmin($component);
/**
* This method will try retrieving a variable from the request (input)
data.
* If it doesn't exist it will be loaded from the user state,
typically
* stored in the session. If it doesn't exist there either, the
$default
* value will be used. If $setUserState is set to true, the retrieved
* variable will be stored in the user session.
*
* @param string $key The user state key for the variable
* @param string $request The request variable name for the
variable
* @param FOFInput $input The FOFInput object with the request
(input) data
* @param mixed $default The default value. Default: null
* @param string $type The filter type for the variable
data. Default: none (no filtering)
* @param boolean $setUserState Should I set the user state with the
fetched value?
*
* @return mixed The value of the variable
*/
public function getUserStateFromRequest($key, $request, $input, $default =
null, $type = 'none', $setUserState = true);
/**
* Load plugins of a specific type. Obviously this seems to only be
required
* in the Joomla! CMS.
*
* @param string $type The type of the plugins to be loaded
*
* @return void
*/
public function importPlugin($type);
/**
* Execute plugins (system-level triggers) and fetch back an array with
* their return values.
*
* @param string $event The event (trigger) name, e.g.
onBeforeScratchMyEar
* @param array $data A hash array of data sent to the plugins as
part of the trigger
*
* @return array A simple array containing the results of the plugins
triggered
*/
public function runPlugins($event, $data);
/**
* Perform an ACL check. Please note that FOF uses by default the Joomla!
* CMS convention for ACL privileges, e.g core.edit for the edit
privilege.
* If your platform uses different conventions you'll have to
override the
* FOF defaults using fof.xml or by specialising the controller.
*
* @param string $action The ACL privilege to check, e.g. core.edit
* @param string $assetname The asset name to check, typically the
component's name
*
* @return boolean True if the user is allowed this action
*/
public function authorise($action, $assetname);
/**
* Returns a user object.
*
* @param integer $id The user ID to load. Skip or use null to
retrieve
* the object for the currently logged in user.
*
* @return JUser The JUser object for the specified user
*/
public function getUser($id = null);
/**
* Returns the JDocument object which handles this component's
response. You
* may also return null and FOF will a. try to figure out the output type
by
* examining the "format" input parameter (or fall back to
"html") and b.
* FOF will not attempt to load CSS and Javascript files (as it
doesn't make
* sense if there's no JDocument to handle them).
*
* @return JDocument
*/
public function getDocument();
/**
* Returns an object to handle dates
*
* @param mixed $time The initial time
* @param null $tzOffest The timezone offset
* @param bool $locale Should I try to load a specific class
for current language?
*
* @return JDate object
*/
public function getDate($time = 'now', $tzOffest = null,
$locale = true);
public function getLanguage();
/**
* @return FOFDatabaseDriver
*/
public function getDbo();
/**
* Is this the administrative section of the component?
*
* @return boolean
*/
public function isBackend();
/**
* Is this the public section of the component?
*
* @return boolean
*/
public function isFrontend();
/**
* Is this a component running in a CLI application?
*
* @return boolean
*/
public function isCli();
/**
* Is AJAX re-ordering supported? This is 100% Joomla!-CMS specific. All
* other platforms should return false and never ask why.
*
* @return boolean
*/
public function supportsAjaxOrdering();
/**
* Performs a check between two versions. Use this function instead of PHP
version_compare
* so we can mock it while testing
*
* @param string $version1 First version number
* @param string $version2 Second version number
* @param string $operator Operator (see version_compare for valid
operators)
*
* @deprecated Use PHP's version_compare against JVERSION in your
code. This method is scheduled for removal in FOF 3.0
*
* @return boolean
*/
public function checkVersion($version1, $version2, $operator);
/**
* Saves something to the cache. This is supposed to be used for
system-wide
* FOF data, not application data.
*
* @param string $key The key of the data to save
* @param string $content The actual data to save
*
* @return boolean True on success
*/
public function setCache($key, $content);
/**
* Retrieves data from the cache. This is supposed to be used for
system-side
* FOF data, not application data.
*
* @param string $key The key of the data to retrieve
* @param string $default The default value to return if the key is
not found or the cache is not populated
*
* @return string The cached value
*/
public function getCache($key, $default = null);
/**
* Clears the cache of system-wide FOF data. You are supposed to call this
in
* your components' installation script post-installation and
post-upgrade
* methods or whenever you are modifying the structure of database tables
* accessed by FOF. Please note that FOF's cache never expires and is
not
* purged by Joomla!. You MUST use this method to manually purge the
cache.
*
* @return boolean True on success
*/
public function clearCache();
/**
* Returns an object that holds the configuration of the current site.
*
* @return mixed
*/
public function getConfig();
/**
* Is the global FOF cache enabled?
*
* @return boolean
*/
public function isGlobalFOFCacheEnabled();
/**
* logs in a user
*
* @param array $authInfo authentication information
*
* @return boolean True on success
*/
public function loginUser($authInfo);
/**
* logs out a user
*
* @return boolean True on success
*/
public function logoutUser();
public function logAddLogger($file);
/**
* Logs a deprecated practice. In Joomla! this results in the $message
being output in the
* deprecated log file, found in your site's log directory.
*
* @param string $message The deprecated practice log message
*
* @return void
*/
public function logDeprecated($message);
public function logDebug($message);
/**
* Returns the root URI for the request.
*
* @param boolean $pathonly If false, prepend the scheme, host and
port information. Default is false.
* @param string $path The path
*
* @return string The root URI string.
*/
public function URIroot($pathonly = false, $path = null);
/**
* Returns the base URI for the request.
*
* @param boolean $pathonly If false, prepend the scheme, host and
port information. Default is false.
* |
* @return string The base URI string
*/
public function URIbase($pathonly = false);
/**
* Method to set a response header. If the replace flag is set then
all headers
* with the given name will be replaced by the new one (only if the
current platform supports header caching)
*
* @param string $name The name of the header to set.
* @param string $value The value of the header to set.
* @param boolean $replace True to replace any headers with the
same name.
*
* @return void
*/
public function setHeader($name, $value, $replace = false);
/**
* In platforms that perform header caching, send all headers.
*
* @return void
*/
public function sendHeaders();
}
home/lmsyaran/public_html/j3/htaccess.back/fof/database/interface.php000064400000001570151161504420021625
0ustar00<?php
/**
* @package FrameworkOnFramework
* @subpackage database
* @copyright Copyright (C) 2010-2016 Nicholas K. Dionysopoulos / Akeeba
Ltd. All rights reserved.
* @license GNU General Public License version 2 or later; see
LICENSE.txt
*
* This file is adapted from the Joomla! Platform. It is used to iterate a
database cursor returning FOFTable objects
* instead of plain stdClass objects
*/
// Protect from unauthorized access
defined('FOF_INCLUDED') or die;
if (!interface_exists('JDatabaseInterface'))
{
/**
* Joomla Platform Database Interface
*
* @since 11.2
*/
interface JDatabaseInterface
{
/**
* Test to see if the connector is available.
*
* @return boolean True on success, false otherwise.
*
* @since 11.2
*/
public static function isSupported();
}
}
interface FOFDatabaseInterface extends JDatabaseInterface
{
}
home/lmsyaran/public_html/j3/htaccess.back/fof/download/interface.php000064400000005073151161713350021676
0ustar00<?php
/**
* @package FrameworkOnFramework
* @subpackage dispatcher
* @copyright Copyright (C) 2010-2016 Nicholas K. Dionysopoulos / Akeeba
Ltd. All rights reserved.
* @license GNU General Public License version 2 or later; see
LICENSE.txt
*/
// Protect from unauthorized access
defined('FOF_INCLUDED') or die;
interface FOFDownloadInterface
{
/**
* Does this download adapter support downloading files in chunks?
*
* @return boolean True if chunk download is supported
*/
public function supportsChunkDownload();
/**
* Does this download adapter support reading the size of a remote file?
*
* @return boolean True if remote file size determination is supported
*/
public function supportsFileSize();
/**
* Is this download class supported in the current server environment?
*
* @return boolean True if this server environment supports this
download class
*/
public function isSupported();
/**
* Get the priority of this adapter. If multiple download adapters are
* supported on a site, the one with the highest priority will be
* used.
*
* @return boolean
*/
public function getPriority();
/**
* Returns the name of this download adapter in use
*
* @return string
*/
public function getName();
/**
* Download a part (or the whole) of a remote URL and return the
downloaded
* data. You are supposed to check the size of the returned data. If
it's
* smaller than what you expected you've reached end of file. If
it's empty
* you have tried reading past EOF. If it's larger than what you
expected
* the server doesn't support chunk downloads.
*
* If this class' supportsChunkDownload returns false you should
assume
* that the $from and $to parameters will be ignored.
*
* @param string $url The remote file's URL
* @param integer $from Byte range to start downloading from. Use
null for start of file.
* @param integer $to Byte range to stop downloading. Use null to
download the entire file ($from is ignored)
* @param array $params Additional params that will be added before
performing the download
*
* @return string The raw file data retrieved from the remote URL.
*
* @throws Exception A generic exception is thrown on error
*/
public function downloadAndReturn($url, $from = null, $to = null, array
$params = array());
/**
* Get the size of a remote file in bytes
*
* @param string $url The remote file's URL
*
* @return integer The file size, or -1 if the remote server
doesn't support this feature
*/
public function getFileSize($url);
}home/lmsyaran/public_html/j3/htaccess.back/fof/hal/render/interface.php000064400000001171151164633620022111
0ustar00<?php
/**
* @package FrameworkOnFramework
* @subpackage hal
* @copyright Copyright (C) 2010-2016 Nicholas K. Dionysopoulos / Akeeba
Ltd. All rights reserved.
* @license GNU General Public License version 2 or later; see
LICENSE.txt
*/
defined('FOF_INCLUDED') or die;
/**
* Interface for HAL document renderers
*
* @package FrameworkOnFramework
* @since 2.1
*/
interface FOFHalRenderInterface
{
/**
* Render a HAL document into a representation suitable for consumption.
*
* @param array $options Renderer-specific options
*
* @return void
*/
public function render($options = array());
}