From 0b02a6d123b2014705998c94ddf3d460948d3eac Mon Sep 17 00:00:00 2001 From: redmatrix Date: Tue, 10 May 2016 17:26:44 -0700 Subject: initial sabre upgrade (needs lots of work - to wit: authentication, redo the browser interface, and rework event export/import) --- Zotlabs/Module/Dav.php | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) (limited to 'Zotlabs/Module') diff --git a/Zotlabs/Module/Dav.php b/Zotlabs/Module/Dav.php index 9af059974..cc6ea4905 100644 --- a/Zotlabs/Module/Dav.php +++ b/Zotlabs/Module/Dav.php @@ -60,8 +60,16 @@ class Dav extends \Zotlabs\Web\Controller { if ($which) profile_load($a, $which, $profile); + + $auth = new \Zotlabs\Storage\BasicAuth(); - + + $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) { @@ -92,6 +100,12 @@ class Dav extends \Zotlabs\Web\Controller { // A SabreDAV server-object $server = new SDAV\Server($rootDirectory); + + + $authPlugin = new \Sabre\DAV\Auth\Plugin($authBackend); + $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); -- cgit v1.2.3 From 915bd2ec7745110919a4d386ae2b433a2c22701a Mon Sep 17 00:00:00 2001 From: redmatrix Date: Tue, 10 May 2016 19:40:15 -0700 Subject: sabre upgrade --- Zotlabs/Module/Cloud.php | 1 - Zotlabs/Module/Dav.php | 111 ++++++++++++++++++++++++----------------------- 2 files changed, 56 insertions(+), 56 deletions(-) (limited to 'Zotlabs/Module') 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 cc6ea4905..549c992cc 100644 --- a/Zotlabs/Module/Dav.php +++ b/Zotlabs/Module/Dav.php @@ -62,39 +62,40 @@ class Dav extends \Zotlabs\Web\Controller { + $auth = new \Zotlabs\Storage\BasicAuth(); - $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']); +// $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); @@ -102,7 +103,7 @@ class Dav extends \Zotlabs\Web\Controller { $server = new SDAV\Server($rootDirectory); - $authPlugin = new \Sabre\DAV\Auth\Plugin($authBackend); + $authPlugin = new \Sabre\DAV\Auth\Plugin($auth); $server->addPlugin($authPlugin); @@ -122,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 -- cgit v1.2.3 From 4dd3839c41e18d9724855e7955d8737b6f52dcd6 Mon Sep 17 00:00:00 2001 From: redmatrix Date: Tue, 10 May 2016 21:46:04 -0700 Subject: provide repository versions on admin summary page and an upgrade message if you're behind master --- Zotlabs/Module/Admin.php | 21 +++++++++++++++------ Zotlabs/Module/Siteinfo.php | 2 +- 2 files changed, 16 insertions(+), 7 deletions(-) (limited to 'Zotlabs/Module') diff --git a/Zotlabs/Module/Admin.php b/Zotlabs/Module/Admin.php index 0e3ee68c4..94482b39d 100644 --- a/Zotlabs/Module/Admin.php +++ b/Zotlabs/Module/Admin.php @@ -107,7 +107,7 @@ class Admin extends \Zotlabs\Web\Controller { * @param App &$a * @return string */ - function get() { + function get() { logger('admin_content', LOGGER_DEBUG); @@ -229,18 +229,27 @@ class Admin extends \Zotlabs\Web\Controller { . '
PHP 5.3 has reached its End of Life (EOL) in August 2014.' . ' A list about current PHP versions can be found here.'; } - + + $vmaster = get_repository_version('master'); + $vdev = get_repository_version('dev'); + + $upgrade = ((version_compare(STD_VERSION,$vmaster) < 0) ? t('Your software should be updated') : ''); + + $t = get_markup_template('admin_summary.tpl'); return replace_macros($t, array( '$title' => t('Administration'), '$page' => t('Summary'), '$adminalertmsg' => $alertmsg, - '$queues' => $queues, + '$queues' => $queues, '$accounts' => array( t('Registered accounts'), $accounts), - '$pending' => array( t('Pending registrations'), $pending), + '$pending' => array( t('Pending registrations'), $pending), '$channels' => array( t('Registered channels'), $channels), - '$plugins' => array( t('Active plugins'), $plugins ), - '$version' => array( t('Version'), STD_VERSION), + '$plugins' => array( t('Active plugins'), $plugins ), + '$version' => array( t('Version'), STD_VERSION), + '$vmaster' => array( t('Repository version (master)'), $vmaster), + '$vdev' => array( t('Repository version (dev)'), $vdev), + '$upgrade' => $upgrade, '$build' => get_config('system', 'db_version') )); } diff --git a/Zotlabs/Module/Siteinfo.php b/Zotlabs/Module/Siteinfo.php index ccca6ab43..c65277004 100644 --- a/Zotlabs/Module/Siteinfo.php +++ b/Zotlabs/Module/Siteinfo.php @@ -13,7 +13,7 @@ class Siteinfo extends \Zotlabs\Web\Controller { - function get() { + function get() { if(! get_config('system','hidden_version_siteinfo')) { $version = sprintf( t('Version %s'), \Zotlabs\Project\System::get_project_version()); -- cgit v1.2.3