Skip to content
This repository has been archived by the owner on Nov 25, 2020. It is now read-only.

Commit

Permalink
ShareCenter : carry on massive refactoring
Browse files Browse the repository at this point in the history
  • Loading branch information
cdujeu committed Feb 9, 2016
1 parent 77c8f99 commit 7dc6e0d
Show file tree
Hide file tree
Showing 8 changed files with 645 additions and 401 deletions.
Expand Up @@ -49,7 +49,6 @@ public function parseSpecificContributions(&$contribNode){
public function switchAction($action, $httpVars, $fileVars)
{
parent::accessPreprocess($action, $httpVars, $fileVars);
$loggedUser = AuthService::getLoggedUser();
if(!AuthService::usersEnabled()) return ;

if ($action == "edit") {
Expand Down
18 changes: 18 additions & 0 deletions core/src/plugins/access.fs/class.fsAccessDriver.php
Expand Up @@ -2051,6 +2051,24 @@ public function makeSharedRepositoryOptions($httpVars, $repository)
if ($repository->getOption("USE_SESSION_CREDENTIALS")===true) {
$newOptions["ENCODED_CREDENTIALS"] = AJXP_Safe::getEncodedCredentialString();
}
$customData = array();
foreach ($httpVars as $key => $value) {
if (substr($key, 0, strlen("PLUGINS_DATA_")) == "PLUGINS_DATA_") {
$customData[substr($key, strlen("PLUGINS_DATA_"))] = $value;
}
}
if (count($customData)) {
$newOptions["PLUGINS_DATA"] = $customData;
}
if ($repository->getOption("META_SOURCES")) {
$newOptions["META_SOURCES"] = $repository->getOption("META_SOURCES");
foreach ($newOptions["META_SOURCES"] as $index => &$data) {
if (isSet($data["USE_SESSION_CREDENTIALS"]) && $data["USE_SESSION_CREDENTIALS"] === true) {
$newOptions["META_SOURCES"][$index]["ENCODED_CREDENTIALS"] = AJXP_Safe::getEncodedCredentialString();
}
}
AJXP_Controller::applyHook("workspace.share_metasources", array(&$newOptions["META_SOURCES"]));
}
return $newOptions;
}

Expand Down
566 changes: 177 additions & 389 deletions core/src/plugins/action.share/class.ShareCenter.php

Large diffs are not rendered by default.

16 changes: 12 additions & 4 deletions core/src/plugins/action.share/class.ShareMetaManager.php
Expand Up @@ -32,7 +32,7 @@ class ShareMetaManager
/**
* @var bool
*/
var $META_USER_SCOPE_PRIVATE = true;
var $META_USER_SCOPE_PRIVATE = false;

/**
* ShareMetaManager constructor.
Expand All @@ -44,18 +44,26 @@ public function __construct($shareStore){

/**
* @param AJXP_Node $node
* @param bool $collectForAllUsers
* @return array mixed
*/
public function getNodeMeta($node, $collectForAllUsers = false){
return $node->retrieveMetadata(AJXP_SHARED_META_NAMESPACE, ($collectForAllUsers ? AJXP_METADATA_ALLUSERS : $this->META_USER_SCOPE_PRIVATE), AJXP_METADATA_SCOPE_REPOSITORY, true);
public function getNodeMeta($node){
$private = $node->retrieveMetadata(AJXP_SHARED_META_NAMESPACE, true, AJXP_METADATA_SCOPE_REPOSITORY, true);
$shared = $node->retrieveMetadata(AJXP_SHARED_META_NAMESPACE, false, AJXP_METADATA_SCOPE_REPOSITORY, true);
return array_merge_recursive($private, $shared);
//return $node->retrieveMetadata(AJXP_SHARED_META_NAMESPACE, ($collectForAllUsers ? AJXP_METADATA_ALLUSERS : $this->META_USER_SCOPE_PRIVATE), AJXP_METADATA_SCOPE_REPOSITORY, true);
}

/**
* @param AJXP_Node $node
* @param array $meta
*/
public function setNodeMeta($node, $meta){
$otherScope = ! $this->META_USER_SCOPE_PRIVATE;
$otherScopeMeta = $node->retrieveMetadata(AJXP_SHARED_META_NAMESPACE, $otherScope, AJXP_METADATA_SCOPE_REPOSITORY, true);
// The scope has changed. Let's clear the old value
if(count($otherScopeMeta)){
$node->removeMetadata(AJXP_SHARED_META_NAMESPACE, $otherScope, AJXP_METADATA_SCOPE_REPOSITORY, true);
}
$node->setMetadata(AJXP_SHARED_META_NAMESPACE, $meta, $this->META_USER_SCOPE_PRIVATE, AJXP_METADATA_SCOPE_REPOSITORY, true);
}

Expand Down

0 comments on commit 7dc6e0d

Please sign in to comment.