Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- This XML file does not appear to have any style information
- associated with it. The document tree is shown below.
- <d:error xmlns:d="DAV:" xmlns:s="http://sabredav.org/ns">
- <s:sabredav-version>3.2.0</s:sabredav-version>
- <s:exception>SabreDAVExceptionNotFound</s:exception>
- <s:message>File not found: rickatech in 'principals'</s:message>
- </d:error>
- <d:error xmlns:d="DAV:" xmlns:s="http://sabredav.org/ns">...</d:error>
- <?php
- namespace LawLoop;
- date_default_timezone_set('UTC');
- require '../vendor/autoload.php';
- use SabreDAV;
- use SabreDAVFSExt;
- use SabreDAVFSExtFile;
- use SabreDAVAuth;
- use SabreDAVACLFSHomeCollection;
- function PSQLParams()
- {
- $host = 'proloop.ckyj1meiloyg.us-east-1.rds.amazonaws.com';
- $port = 5432;
- $dbname = '[redacted]';
- $username = '[redacted]';
- $password = '[redacted]';
- $dsn = "pgsql:host={$host};port={$port};dbname={$dbname}";
- return array(
- 'host' => $host,
- 'port' => $port,
- 'dbname' => $dbname,
- 'username' => $username,
- 'password' => $password,
- 'dsn' => $dsn
- );
- }
- $dbparams = PSQLParams();
- $db = new PDO($dbparams['dsn'], $dbparams['username'], $dbparams['password']);
- $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
- $aclPlugin = new SabreDAVACLPlugin();
- $aclPlugin->hideNodesFromListings = true;
- $aclPlugin->defaultUsernamePath = 'principals/users';
- $aclPlugin->adminPrincipals[] = 'principals/admin';
- $authBackend = new SabreDAVAuthBackendPDO($db);
- $principalBackend = new SabreDAVACLPrincipalBackendPDO($db);
- $principalsCollection = new SabreDAVSimpleCollection('principals', [
- new SabreDAVACLPrincipalCollection($principalBackend, 'principals/users')//,
- // new SabreDAVACLPrincipalCollection($principalBackend, 'principals/projects'),
- // new SabreDAVACLPrincipalCollection($principalBackend, 'principals/organizations')
- ]);
- $home = new HomeCollection($principalBackend,'/efs/users');
- $projects = new HomeCollection($principalBackend,'/efs/dav/projects');
- $projects->collectionName = 'projects';
- $organizations = new HomeCollection($principalBackend,'/efs/dav/organizations');
- $organizations->collectionName = 'organizations';
- $tree = [
- $home, $projects, $organizations, $principalsCollection
- ];
- $server = new DAVServer($tree);
- // ver->setBaseUri("/servref/server.php");
- $server->setBaseUri("/dav/");
- $lockBackend = new DAVLocksBackendPDO($db);
- $lockPlugin = new DAVLocksPlugin($lockBackend);
- $authBackend = new AuthBackendPDO($db);
- // We're assuming that the realm name is called 'ProLoop'.
- $authBackend->setRealm('dav');
- // Creating the plugin.
- $authPlugin = new AuthPlugin($authBackend);
- // Adding the plugin to the server.
- $server->addPlugin($authPlugin);
- $server->addPlugin($aclPlugin);
- $server->addPlugin($lockPlugin);
- $server->addPlugin(new DAVBrowserPlugin());
- $server->exec();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement