aboutsummaryrefslogtreecommitdiffstats
path: root/Zotlabs
diff options
context:
space:
mode:
Diffstat (limited to 'Zotlabs')
-rw-r--r--Zotlabs/Module/Cloud.php1
-rw-r--r--Zotlabs/Module/Dav.php113
-rw-r--r--Zotlabs/Storage/BasicAuth.php4
-rw-r--r--Zotlabs/Storage/Browser.php10
4 files changed, 69 insertions, 59 deletions
diff --git a/Zotlabs/Module/Cloud.php b/Zotlabs/Module/Cloud.php
index 5f40f4af1..f3767e3f0 100644
--- a/Zotlabs/Module/Cloud.php
+++ b/Zotlabs/Module/Cloud.php
@@ -90,7 +90,6 @@ class Cloud extends \Zotlabs\Web\Controller {
}
}
- // require_once('\Zotlabs/Storage/Browser.php');
// provide a directory view for the cloud in Hubzilla
$browser = new \Zotlabs\Storage\Browser($auth);
$auth->setBrowserPlugin($browser);
diff --git a/Zotlabs/Module/Dav.php b/Zotlabs/Module/Dav.php
index 9af059974..549c992cc 100644
--- a/Zotlabs/Module/Dav.php
+++ b/Zotlabs/Module/Dav.php
@@ -60,38 +60,53 @@ class Dav extends \Zotlabs\Web\Controller {
if ($which)
profile_load($a, $which, $profile);
+
+
+
$auth = new \Zotlabs\Storage\BasicAuth();
-
- $ob_hash = get_observer_hash();
-
- if ($ob_hash) {
- if (local_channel()) {
- $channel = \App::get_channel();
- $auth->setCurrentUser($channel['channel_address']);
- $auth->channel_id = $channel['channel_id'];
- $auth->channel_hash = $channel['channel_hash'];
- $auth->channel_account_id = $channel['channel_account_id'];
- if($channel['channel_timezone'])
- $auth->setTimezone($channel['channel_timezone']);
- }
- $auth->observer = $ob_hash;
- }
-
- if ($_GET['davguest'])
- $_SESSION['davguest'] = true;
-
- $_SERVER['QUERY_STRING'] = str_replace(array('?f=', '&f='), array('', ''), $_SERVER['QUERY_STRING']);
- $_SERVER['QUERY_STRING'] = strip_zids($_SERVER['QUERY_STRING']);
- $_SERVER['QUERY_STRING'] = preg_replace('/[\?&]davguest=(.*?)([\?&]|$)/ism', '', $_SERVER['QUERY_STRING']);
-
- $_SERVER['REQUEST_URI'] = str_replace(array('?f=', '&f='), array('', ''), $_SERVER['REQUEST_URI']);
- $_SERVER['REQUEST_URI'] = strip_zids($_SERVER['REQUEST_URI']);
- $_SERVER['REQUEST_URI'] = preg_replace('/[\?&]davguest=(.*?)([\?&]|$)/ism', '', $_SERVER['REQUEST_URI']);
+
+// $authBackend = new \Sabre\DAV\Auth\Backend\BasicCallBack(function($userName,$password) {
+// if(account_verify_password($userName,$password))
+// return true;
+// return false;
+// });
+
+// $ob_hash = get_observer_hash();
+
+// if ($ob_hash) {
+// if (local_channel()) {
+// $channel = \App::get_channel();
+// $auth->setCurrentUser($channel['channel_address']);
+// $auth->channel_id = $channel['channel_id'];
+// $auth->channel_hash = $channel['channel_hash'];
+// $auth->channel_account_id = $channel['channel_account_id'];
+// if($channel['channel_timezone'])
+// $auth->setTimezone($channel['channel_timezone']);
+// }
+// $auth->observer = $ob_hash;
+// }
+
+// if ($_GET['davguest'])
+// $_SESSION['davguest'] = true;
+
+// $_SERVER['QUERY_STRING'] = str_replace(array('?f=', '&f='), array('', ''), $_SERVER['QUERY_STRING']);
+// $_SERVER['QUERY_STRING'] = strip_zids($_SERVER['QUERY_STRING']);
+// $_SERVER['QUERY_STRING'] = preg_replace('/[\?&]davguest=(.*?)([\?&]|$)/ism', '', $_SERVER['QUERY_STRING']);
+//
+// $_SERVER['REQUEST_URI'] = str_replace(array('?f=', '&f='), array('', ''), $_SERVER['REQUEST_URI']);
+// $_SERVER['REQUEST_URI'] = strip_zids($_SERVER['REQUEST_URI']);
+// $_SERVER['REQUEST_URI'] = preg_replace('/[\?&]davguest=(.*?)([\?&]|$)/ism', '', $_SERVER['REQUEST_URI']);
$rootDirectory = new \Zotlabs\Storage\Directory('/', $auth);
// A SabreDAV server-object
$server = new SDAV\Server($rootDirectory);
+
+
+ $authPlugin = new \Sabre\DAV\Auth\Plugin($auth);
+ $server->addPlugin($authPlugin);
+
+
// prevent overwriting changes each other with a lock backend
$lockBackend = new SDAV\Locks\Backend\File('store/[data]/locks');
$lockPlugin = new SDAV\Locks\Plugin($lockBackend);
@@ -108,29 +123,29 @@ class Dav extends \Zotlabs\Web\Controller {
// In order to avoid prompting for passwords for viewing a DIRECTORY, add
// the URL query parameter 'davguest=1'.
- $isapublic_file = false;
- $davguest = ((x($_SESSION, 'davguest')) ? true : false);
-
- if ((! $auth->observer) && ($_SERVER['REQUEST_METHOD'] === 'GET')) {
- try {
- $x = RedFileData('/' . \App::$cmd, $auth);
- if($x instanceof \Zotlabs\Storage\File)
- $isapublic_file = true;
- }
- catch (Exception $e) {
- $isapublic_file = false;
- }
- }
-
- if ((! $auth->observer) && (! $isapublic_file) && (! $davguest)) {
- try {
- $auth->Authenticate($server, t('$Projectname channel'));
- }
- catch (Exception $e) {
- logger('mod_cloud: auth exception' . $e->getMessage());
- http_status_exit($e->getHTTPCode(), $e->getMessage());
- }
- }
+// $isapublic_file = false;
+// $davguest = ((x($_SESSION, 'davguest')) ? true : false);
+
+// if ((! $auth->observer) && ($_SERVER['REQUEST_METHOD'] === 'GET')) {
+// try {
+// $x = RedFileData('/' . \App::$cmd, $auth);
+// if($x instanceof \Zotlabs\Storage\File)
+// $isapublic_file = true;
+// }
+// catch (Exception $e) {
+// $isapublic_file = false;
+// }
+// }
+
+// if ((! $auth->observer) && (! $isapublic_file) && (! $davguest)) {
+// try {
+// $auth->Authenticate($server, t('$Projectname channel'));
+// }
+// catch (Exception $e) {
+// logger('mod_cloud: auth exception' . $e->getMessage());
+// http_status_exit($e->getHTTPCode(), $e->getMessage());
+// }
+// }
// require_once('Zotlabs/Storage/Browser.php');
// provide a directory view for the cloud in Hubzilla
diff --git a/Zotlabs/Storage/BasicAuth.php b/Zotlabs/Storage/BasicAuth.php
index 637cd222f..da5af7659 100644
--- a/Zotlabs/Storage/BasicAuth.php
+++ b/Zotlabs/Storage/BasicAuth.php
@@ -84,10 +84,6 @@ class BasicAuth extends DAV\Auth\Backend\AbstractBasic {
* @return bool
*/
protected function validateUserPass($username, $password) {
- if (trim($password) === '+++') {
- logger('guest: ' . $username);
- return true;
- }
require_once('include/auth.php');
$record = account_verify_password($username, $password);
diff --git a/Zotlabs/Storage/Browser.php b/Zotlabs/Storage/Browser.php
index 294baaa28..ca262b739 100644
--- a/Zotlabs/Storage/Browser.php
+++ b/Zotlabs/Storage/Browser.php
@@ -101,8 +101,8 @@ class Browser extends DAV\Browser\Plugin {
$parentpath = array();
// only show parent if not leaving /cloud/; TODO how to improve this?
if ($path && $path != "cloud") {
- list($parentUri) = DAV\URLUtil::splitPath($path);
- $fullPath = DAV\URLUtil::encodePath($this->server->getBaseUri() . $parentUri);
+ list($parentUri) = \Sabre\HTTP\URLUtil::splitPath($path);
+ $fullPath = \Sabre\HTTP\URLUtil::encodePath($this->server->getBaseUri() . $parentUri);
$parentpath['icon'] = $this->enableAssets ? '<a href="' . $fullPath . '"><img src="' . $this->getAssetUrl('icons/parent' . $this->iconExtension) . '" width="24" alt="' . t('parent') . '"></a>' : '';
$parentpath['path'] = $fullPath;
@@ -116,7 +116,7 @@ class Browser extends DAV\Browser\Plugin {
// This is the current directory, we can skip it
if (rtrim($file['href'],'/') == $path) continue;
- list(, $name) = DAV\URLUtil::splitPath($file['href']);
+ list(, $name) = \Sabre\HTTP\URLUtil::splitPath($file['href']);
if (isset($file[200]['{DAV:}resourcetype'])) {
$type = $file[200]['{DAV:}resourcetype']->getValue();
@@ -166,7 +166,7 @@ class Browser extends DAV\Browser\Plugin {
$size = isset($file[200]['{DAV:}getcontentlength']) ? (int)$file[200]['{DAV:}getcontentlength'] : '';
$lastmodified = ((isset($file[200]['{DAV:}getlastmodified'])) ? $file[200]['{DAV:}getlastmodified']->getTime()->format('Y-m-d H:i:s') : '');
- $fullPath = DAV\URLUtil::encodePath('/' . trim($this->server->getBaseUri() . ($path ? $path . '/' : '') . $name, '/'));
+ $fullPath = \Sabre\HTTP\URLUtil::encodePath('/' . trim($this->server->getBaseUri() . ($path ? $path . '/' : '') . $name, '/'));
$displayName = isset($file[200]['{DAV:}displayname']) ? $file[200]['{DAV:}displayname'] : $name;
@@ -219,7 +219,7 @@ class Browser extends DAV\Browser\Plugin {
$output = '';
if ($this->enablePost) {
- $this->server->broadcastEvent('onHTMLActionsPanel', array($parent, &$output));
+ $this->server->emit('onHTMLActionsPanel', array($parent, &$output));
}
$html .= replace_macros(get_markup_template('cloud.tpl'), array(