本文整理汇总了PHP中AJXP_Plugin类的典型用法代码示例。如果您正苦于以下问题:PHP AJXP_Plugin类的具体用法?PHP AJXP_Plugin怎么用?PHP AJXP_Plugin使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了AJXP_Plugin类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的PHP代码示例。
示例1: frontendsSort
/**
* @param AJXP_Plugin $a
* @param AJXP_Plugin $b
* @return int
*/
public function frontendsSort($a, $b)
{
$aConf = $a->getConfigs();
$bConf = $b->getConfigs();
$orderA = intval($aConf["ORDER"]);
$orderB = intval($bConf["ORDER"]);
if ($orderA == $orderB) {
return 0;
}
return $orderA > $orderB ? 1 : -1;
}
开发者ID:floffel03,项目名称:pydio-core,代码行数:16,代码来源:class.FrontendsLoader.php
示例2: init
function init($options)
{
parent::init($options);
$pServ = AJXP_PluginsService::getInstance();
$aPlugs = $pServ->getActivePlugins();
$accessPlugs = $pServ->getPluginsByType("access");
$this->repository = ConfService::getRepository();
foreach ($accessPlugs as $pId => $plug) {
if (array_key_exists("access." . $pId, $aPlugs) && $aPlugs["access." . $pId] === true) {
$this->accessDriver = $plug;
if (!isset($this->accessDriver->repository)) {
$this->accessDriver->init($this->repository);
$this->accessDriver->initRepository();
$wrapperData = $this->accessDriver->detectStreamWrapper(true);
} else {
$wrapperData = $this->accessDriver->detectStreamWrapper(false);
}
$this->urlBase = $wrapperData["protocol"] . "://" . $this->repository->getId();
}
}
$this->metaStore = AJXP_PluginsService::getInstance()->getUniqueActivePluginForType("metastore");
if ($this->metaStore !== false) {
$this->metaStore->initMeta($this->accessDriver);
}
}
开发者ID:crodriguezn,项目名称:administrator-files,代码行数:25,代码来源:class.ShareCenter.php
示例3: init
public function init($options)
{
parent::init($options);
self::$globalOptions = $this->pluginConf;
$this->pluginInstance = ConfService::instanciatePluginFromGlobalParams($this->pluginConf["UNIQUE_PLUGIN_INSTANCE"], "AbstractLogDriver");
if ($this->pluginInstance != false) {
AJXP_PluginsService::getInstance()->setPluginUniqueActiveForType("log", $this->pluginInstance->getName(), $this->pluginInstance);
}
self::$loggerInstance = $this->pluginInstance;
}
开发者ID:rbrdevs,项目名称:pydio-core,代码行数:10,代码来源:class.AJXP_Logger.php
示例4: init
public function init($options)
{
parent::init($options);
if (AJXP_SERVER_DEBUG) {
$this->mailCache = $this->getPluginWorkDir(true) . "/mailbox";
}
$pConf = $this->pluginConf["UNIQUE_MAILER_INSTANCE"];
if (!empty($pConf)) {
$p = ConfService::instanciatePluginFromGlobalParams($pConf, "AjxpMailer");
AJXP_PluginsService::getInstance()->setPluginUniqueActiveForType($p->getType(), $p->getName(), $p);
}
}
开发者ID:Nanomani,项目名称:pydio-core,代码行数:12,代码来源:class.AjxpMailer.php
示例5: init
public function init($options)
{
parent::init($options);
$this->repository = ConfService::getRepository();
if (!is_a($this->repository->driverInstance, "AjxpWrapperProvider")) {
return;
}
$this->accessDriver = $this->repository->driverInstance;
$this->urlBase = $this->repository->driverInstance->getResourceUrl("/");
$this->baseProtocol = array_shift(explode("://", $this->urlBase));
if (array_key_exists("meta.watch", AJXP_PluginsService::getInstance()->getActivePlugins())) {
$this->watcher = AJXP_PluginsService::getInstance()->getPluginById("meta.watch");
}
}
开发者ID:biggtfish,项目名称:cms,代码行数:14,代码来源:class.ShareCenter.php
示例6: patchPluginWithMixin
/**
* Append some predefined XML to a plugin instance
* @param AJXP_Plugin $plugin
* @param DOMDocument $manifestDoc
* @param String $mixinName
*/
public function patchPluginWithMixin(&$plugin, &$manifestDoc, $mixinName)
{
// Load behaviours if not already
if (!isset($this->mixinsDoc)) {
$this->mixinsDoc = new DOMDocument();
$this->mixinsDoc->load(AJXP_INSTALL_PATH . "/" . AJXP_PLUGINS_FOLDER . "/core.ajaxplorer/ajxp_mixins.xml");
$this->mixinsXPath = new DOMXPath($this->mixinsDoc);
}
// Merge into manifestDoc
$nodeList = $this->mixinsXPath->query($mixinName);
if (!$nodeList->length) {
return;
}
$mixinNode = $nodeList->item(0);
foreach ($mixinNode->childNodes as $child) {
if ($child->nodeType != XML_ELEMENT_NODE) {
continue;
}
$uuidAttr = $child->getAttribute("uuidAttr") or "name";
$this->mergeNodes($manifestDoc, $child->nodeName, $uuidAttr, $child->childNodes, true);
}
// Reload plugin XPath
$plugin->reloadXPath();
}
开发者ID:Nanomani,项目名称:pydio-core,代码行数:30,代码来源:class.AJXP_PluginsService.php
示例7: parseSpecificContributions
protected function parseSpecificContributions(&$contribNode)
{
parent::parseSpecificContributions($contribNode);
if ($contribNode->nodeName == 'client_configs' && !ConfService::getCoreConf("WEBDAV_ENABLE")) {
$actionXpath = new DOMXPath($contribNode->ownerDocument);
$webdavCompNodeList = $actionXpath->query('component_config/additional_tab[@id="webdav_pane"]', $contribNode);
if ($webdavCompNodeList->length) {
$contribNode->removeChild($webdavCompNodeList->item(0)->parentNode);
}
}
if ($contribNode->nodeName != "actions") {
return;
}
// WEBDAV ACTION
if (!ConfService::getCoreConf("WEBDAV_ENABLE")) {
unset($this->actions["webdav_preferences"]);
$actionXpath = new DOMXPath($contribNode->ownerDocument);
$publicUrlNodeList = $actionXpath->query('action[@name="webdav_preferences"]', $contribNode);
if ($publicUrlNodeList->length) {
$publicUrlNode = $publicUrlNodeList->item(0);
$contribNode->removeChild($publicUrlNode);
}
}
// SWITCH TO DASHBOARD ACTION
$u = AuthService::getLoggedUser();
$access = true;
if ($u == null) {
$access = false;
} else {
$acl = $u->mergedRole->getAcl("ajxp_user");
if (empty($acl)) {
$access = false;
}
}
if (!$access) {
unset($this->actions["switch_to_user_dashboard"]);
$actionXpath = new DOMXPath($contribNode->ownerDocument);
$publicUrlNodeList = $actionXpath->query('action[@name="switch_to_user_dashboard"]', $contribNode);
if ($publicUrlNodeList->length) {
$publicUrlNode = $publicUrlNodeList->item(0);
$contribNode->removeChild($publicUrlNode);
}
}
// PERSONAL INFORMATIONS
$hasExposed = false;
$cacheHasExposed = AJXP_PluginsService::getInstance()->loadFromPluginQueriesCache("//server_settings/param[contains(@scope,'user') and @expose='true']");
if ($cacheHasExposed !== null) {
$hasExposed = $cacheHasExposed;
} else {
$paramNodes = AJXP_PluginsService::searchAllManifests("//server_settings/param[contains(@scope,'user') and @expose='true']", "node", false, false, true);
if (is_array($paramNodes) && count($paramNodes)) {
$hasExposed = true;
}
AJXP_PluginsService::getInstance()->storeToPluginQueriesCache("//server_settings/param[contains(@scope,'user') and @expose='true']", $hasExposed);
}
//$hasExposed = true;
if (!$hasExposed) {
unset($this->actions["custom_data_edit"]);
$actionXpath = new DOMXPath($contribNode->ownerDocument);
$publicUrlNodeList = $actionXpath->query('action[@name="custom_data_edit"]', $contribNode);
$publicUrlNode = $publicUrlNodeList->item(0);
$contribNode->removeChild($publicUrlNode);
}
// CREATE A NEW REPOSITORY
if (!ConfService::getCoreConf("USER_CREATE_REPOSITORY", "conf")) {
unset($this->actions["user_create_repository"]);
$actionXpath = new DOMXPath($contribNode->ownerDocument);
$publicUrlNodeList = $actionXpath->query('action[@name="user_create_repository"]', $contribNode);
if ($publicUrlNodeList->length) {
$publicUrlNode = $publicUrlNodeList->item(0);
$contribNode->removeChild($publicUrlNode);
}
unset($this->actions["user_delete_repository"]);
$actionXpath = new DOMXPath($contribNode->ownerDocument);
$publicUrlNodeList = $actionXpath->query('action[@name="user_delete_repository"]', $contribNode);
if ($publicUrlNodeList->length) {
$publicUrlNode = $publicUrlNodeList->item(0);
$contribNode->removeChild($publicUrlNode);
}
}
// CREATE A NEW USER
if (!ConfService::getCoreConf("USER_CREATE_USERS", "conf")) {
unset($this->actions["user_create_user"]);
$actionXpath = new DOMXPath($contribNode->ownerDocument);
$publicUrlNodeList = $actionXpath->query('action[@name="user_create_user"]', $contribNode);
if ($publicUrlNodeList->length) {
$publicUrlNode = $publicUrlNodeList->item(0);
$contribNode->removeChild($publicUrlNode);
}
unset($this->actions["user_update_user"]);
$actionXpath = new DOMXPath($contribNode->ownerDocument);
$publicUrlNodeList = $actionXpath->query('action[@name="user_update_user"]', $contribNode);
if ($publicUrlNodeList->length) {
$publicUrlNode = $publicUrlNodeList->item(0);
$contribNode->removeChild($publicUrlNode);
}
unset($this->actions["user_delete_user"]);
$actionXpath = new DOMXPath($contribNode->ownerDocument);
$publicUrlNodeList = $actionXpath->query('action[@name="user_delete_user"]', $contribNode);
if ($publicUrlNodeList->length) {
//.........这里部分代码省略.........
开发者ID:rcmarotz,项目名称:pydio-core,代码行数:101,代码来源:class.AbstractConfDriver.php
示例8: makeMarkdown
/**
* @param AJXP_Plugin $plugin
* @param array $apis
* @return string
*/
public static function makeMarkdown($plugin, $apis)
{
$md = "\n\n";
$md .= "## " . $plugin->getManifestLabel() . " ";
$md .= "\n" . $plugin->getManifestDescription() . "\n\n";
$id = $plugin->getId();
foreach ($apis as $index => $api) {
$md .= "\n";
$md .= "- **" . $api["path"] . "** \n";
$md .= " " . $api["operations"][0]["notes"] . " \n";
$md .= " [Details](" . API_DOC_PAGE . "" . $id . "/" . $api["operations"][0]["nickname"] . "_" . strtolower($api["operations"][0]["method"]) . "_" . $index . ")";
}
return $md;
}
开发者ID:Nanomani,项目名称:pydio-core,代码行数:19,代码来源:class.PydioSdkGenerator.php
示例9: parseSpecificContributions
protected function parseSpecificContributions(&$contribNode)
{
parent::parseSpecificContributions($contribNode);
if ($this->detectStreamWrapper() !== false) {
$this->actions["cross_copy"] = array();
}
}
开发者ID:crodriguezn,项目名称:administrator-files,代码行数:7,代码来源:class.AbstractAccessDriver.php
示例10: parseSpecificContributions
/**
* Parse
* @param DOMNode $contribNode
*/
protected function parseSpecificContributions(&$contribNode)
{
parent::parseSpecificContributions($contribNode);
if ($this->pluginConf["ENABLE_324_IMPORT"] == true) {
return;
}
if ($contribNode->nodeName != "actions") {
return;
}
$actionXpath = new DOMXPath($contribNode->ownerDocument);
$compressNodeList = $actionXpath->query('action[@name="import_from_324"]', $contribNode);
if (!$compressNodeList->length) {
return;
}
unset($this->actions["import_from_324"]);
$compressNode = $compressNodeList->item(0);
$contribNode->removeChild($compressNode);
$compressNodeList = $actionXpath->query('action[@name="migrate_metaserial"]', $contribNode);
if (!$compressNodeList->length) {
return;
}
unset($this->actions["import_from_324"]);
$compressNode = $compressNodeList->item(0);
$contribNode->removeChild($compressNode);
}
开发者ID:rcmarotz,项目名称:pydio-core,代码行数:29,代码来源:class.UpdateController.php
示例11: logDebug
public function logDebug($message = "")
{
parent::logDebug("core.indexer", $message);
if ($this->verboseIndexation && ConfService::currentContextIsCommandLine()) {
print $message . "\n";
}
}
开发者ID:projectesIF,项目名称:Ateneu,代码行数:7,代码来源:class.CoreIndexer.php
示例12: loadRegistryContributions
public function loadRegistryContributions()
{
$currentUser = AuthService::getLoggedUser();
if ($currentUser != null) {
$cData = $currentUser->getPref("CUSTOM_PARAMS");
if ($cData != null && isset($cData["email"])) {
$this->exposeConfigInManifest("current_user_email", $cData["email"]);
}
}
$actionsBranch = $this->xPath->query("registry_contributions/actions");
$actionsNode = $actionsBranch->item(0);
foreach (array_map("trim", explode(",", $this->pluginConf["ACTIONS"])) as $action) {
// Action node
$prop = $this->manifestDoc->createElement("action");
$attName = $this->manifestDoc->createAttribute("name");
$attValue = $this->manifestDoc->createTextNode($action);
$attName->appendChild($attValue);
$prop->appendChild($attName);
$actionsNode->appendChild($prop);
// Pre_proc
$preproc = $this->manifestDoc->createElement("pre_processing");
$prop->appendChild($preproc);
// Server callback
$sC = $this->manifestDoc->createElement("serverCallback");
$sAttName = $this->manifestDoc->createAttribute("methodName");
$sAttValue = $this->manifestDoc->createTextNode("preProcess");
$sAttName->appendChild($sAttValue);
$sC->appendChild($sAttName);
$preproc->appendChild($sC);
}
$this->reloadXPath();
parent::loadRegistryContributions();
}
开发者ID:crodriguezn,项目名称:administrator-files,代码行数:33,代码来源:class.PhpMailLiteNotifier.php
示例13: parseSpecificContributions
public function parseSpecificContributions(&$contribNode)
{
parent::parseSpecificContributions($contribNode);
if ($contribNode->nodeName != "actions") {
return;
}
$actionXpath = new DOMXPath($contribNode->ownerDocument);
$paramList = $actionXpath->query('action[@name="scheduler_addTask"]/processing/standardFormDefinition/param[@name="repository_id"]', $contribNode);
if (!$paramList->length) {
return;
}
$paramNode = $paramList->item(0);
$sVals = array();
$repos = ConfService::getRepositoriesList("all");
foreach ($repos as $repoId => $repoObject) {
$sVals[] = $repoId . "|" . AJXP_Utils::xmlEntities($repoObject->getDisplay());
}
$sVals[] = "*|All Repositories";
$paramNode->attributes->getNamedItem("choices")->nodeValue = implode(",", $sVals);
if (!AuthService::usersEnabled() || AuthService::getLoggedUser() == null) {
return;
}
$paramList = $actionXpath->query('action[@name="scheduler_addTask"]/processing/standardFormDefinition/param[@name="user_id"]', $contribNode);
if (!$paramList->length) {
return;
}
$paramNode = $paramList->item(0);
$paramNode->attributes->getNamedItem("default")->nodeValue = AuthService::getLoggedUser()->getId();
}
开发者ID:rbrdevs,项目名称:pydio-core,代码行数:29,代码来源:class.AjxpScheduler.php
示例14: initMeta
public function initMeta($accessDriver)
{
$this->accessDriver = $accessDriver;
if (!function_exists("exif_read_data")) {
return;
}
$messages = ConfService::getMessages();
$def = $this->getMetaDefinition();
if (!count($def)) {
return;
}
$cdataHead = '<div>
<div class="panelHeader infoPanelGroup" colspan="2">' . $messages["meta.exif.1"] . '</div>
<table class="infoPanelTable" cellspacing="0" border="0" cellpadding="0">';
$cdataFoot = '</table></div>';
$cdataParts = "";
foreach ($def as $key => $label) {
$trClass = $even ? " class=\"even\"" : "";
$even = !$even;
$cdataParts .= '<tr' . $trClass . '><td class="infoPanelLabel">' . $label . '</td><td class="infoPanelValue" id="ip_' . $key . '">#{' . $key . '}</td></tr>';
}
$selection = $this->xPath->query('registry_contributions/client_configs/component_config[@className="InfoPanel"]/infoPanelExtension');
$contrib = $selection->item(0);
$contrib->setAttribute("attributes", implode(",", array_keys($def)));
$contrib->setAttribute("modifier", "ExifCellRenderer.prototype.infoPanelModifier");
$htmlSel = $this->xPath->query('html', $contrib);
$html = $htmlSel->item(0);
$cdata = $this->manifestDoc->createCDATASection($cdataHead . $cdataParts . $cdataFoot);
$html->appendChild($cdata);
parent::init($this->options);
}
开发者ID:firstcoder55,项目名称:Webkey,代码行数:31,代码来源:class.ExifMetaManager.php
示例15: init
public function init($options)
{
parent::init($options);
$this->useQueue = $this->pluginConf["USE_QUEUE"];
try {
$this->msgExchanger = ConfService::instanciatePluginFromGlobalParams($this->pluginConf["UNIQUE_MS_INSTANCE"], "AJXP_MessageExchanger");
} catch (Exception $e) {
}
}
开发者ID:projectesIF,项目名称:Ateneu,代码行数:9,代码来源:class.MqManager.php
示例16: loadConfigs
public function loadConfigs($configsData)
{
parent::loadConfigs($configsData);
if (isset($configsData["UNOCONV"]) && !empty($configsData["UNOCONV"])) {
// APPEND THE UNOCONV SUPPORTED EXTENSIONS
$this->manifestDoc->documentElement->setAttribute("mimes", implode(",", array_merge($this->imagickExtensions, $this->unoconvExtensios)));
} else {
$this->manifestDoc->documentElement->setAttribute("mimes", implode(",", $this->imagickExtensions));
}
}
开发者ID:projectesIF,项目名称:Ateneu,代码行数:10,代码来源:class.IMagickPreviewer.php
示例17: loadConfigs
public function loadConfigs($configData)
{
parent::loadConfigs($configData);
if (!defined("AJXP_THEME_FOLDER")) {
define("CLIENT_RESOURCES_FOLDER", AJXP_PLUGINS_FOLDER . "/gui.ajax/res");
define("AJXP_THEME_FOLDER", CLIENT_RESOURCES_FOLDER . "/themes/" . $this->pluginConf["GUI_THEME"]);
}
if (!isset($configData["CLIENT_TIMEOUT_TIME"])) {
$this->pluginConf["CLIENT_TIMEOUT_TIME"] = intval(ini_get("session.gc_maxlifetime"));
}
}
开发者ID:Nanomani,项目名称:pydio-core,代码行数:11,代码来源:class.AJXP_ClientDriver.php
示例18: loadConfigs
public function loadConfigs($configData)
{
parent::loadConfigs($configData);
$keyFile = $this->getPluginWorkDir(true) . "/agent.pem";
if (file_exists($keyFile)) {
$res = openssl_pkey_get_private(file_get_contents($keyFile));
$details = openssl_pkey_get_details($res);
$public = $details["key"];
$this->pluginConf["ZOHO_AGENT_PUBLIC_KEY"] = $public;
}
}
开发者ID:rcmarotz,项目名称:pydio-core,代码行数:11,代码来源:class.ZohoEditor.php
示例19: getConfigs
public function getConfigs()
{
$configs = parent::getConfigs();
$configs["ALLOW_GUEST_BROWSING"] = !isset($_SERVER["HTTP_AJXP_FORCE_LOGIN"]) && ($configs["ALLOW_GUEST_BROWSING"] === "true" || $configs["ALLOW_GUEST_BROWSING"] === true || intval($configs["ALLOW_GUEST_BROWSING"]) == 1);
// FORCE CASE INSENSITIVY FOR SQL BASED DRIVERS
if (isset($configs["MASTER_INSTANCE_CONFIG"]) && is_array($configs["MASTER_INSTANCE_CONFIG"]) && isset($configs["MASTER_INSTANCE_CONFIG"]["instance_name"]) && $configs["MASTER_INSTANCE_CONFIG"]["instance_name"] == "auth.sql") {
$configs["CASE_SENSITIVE"] = false;
}
if (isset($configs["SLAVE_INSTANCE_CONFIG"]) && !empty($configs["SLAVE_INSTANCE_CONFIG"]) && isset($configs["SLAVE_INSTANCE_CONFIG"]["instance_name"]) && $configs["SLAVE_INSTANCE_CONFIG"]["instance_name"] == "auth.sql") {
$configs["CASE_SENSITIVE"] = false;
}
return $configs;
}
开发者ID:ad-m,项目名称:pydio-core,代码行数:13,代码来源:class.CoreAuthLoader.php
示例20: init
public function init($options)
{
parent::init($options);
$this->useQueue = $this->pluginConf["USE_QUEUE"];
try {
$this->msgExchanger = ConfService::instanciatePluginFromGlobalParams($this->pluginConf["UNIQUE_MS_INSTANCE"], "AJXP_MessageExchanger");
if (AuthService::$bufferedMessage != null && AuthService::getLoggedUser() != null) {
$this->sendInstantMessage(AuthService::$bufferedMessage, ConfService::getCurrentRepositoryId(), AuthService::getLoggedUser()->getId());
AuthService::$bufferedMessage = null;
}
} catch (Exception $e) {
}
}
开发者ID:floffel03,项目名称:pydio-core,代码行数:13,代码来源:class.MqManager.php
注:本文中的AJXP_Plugin类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论