Advertisement
Guest User

Untitled

a guest
Mar 27th, 2017
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.81 KB | None | 0 0
  1. This XML file does not appear to have any style information
  2. associated with it. The document tree is shown below.
  3. <d:error xmlns:d="DAV:" xmlns:s="http://sabredav.org/ns">
  4. <s:sabredav-version>3.2.0</s:sabredav-version>
  5. <s:exception>SabreDAVExceptionNotFound</s:exception>
  6. <s:message>File not found: rickatech in 'principals'</s:message>
  7. </d:error>
  8. <d:error xmlns:d="DAV:" xmlns:s="http://sabredav.org/ns">...</d:error>
  9.  
  10. <?php
  11. namespace LawLoop;
  12. date_default_timezone_set('UTC');
  13.  
  14. require '../vendor/autoload.php';
  15.  
  16. use SabreDAV;
  17. use SabreDAVFSExt;
  18. use SabreDAVFSExtFile;
  19. use SabreDAVAuth;
  20. use SabreDAVACLFSHomeCollection;
  21.  
  22. function PSQLParams()
  23. {
  24. $host = 'proloop.ckyj1meiloyg.us-east-1.rds.amazonaws.com';
  25. $port = 5432;
  26. $dbname = '[redacted]';
  27.  
  28. $username = '[redacted]';
  29. $password = '[redacted]';
  30.  
  31. $dsn = "pgsql:host={$host};port={$port};dbname={$dbname}";
  32.  
  33. return array(
  34. 'host' => $host,
  35. 'port' => $port,
  36. 'dbname' => $dbname,
  37. 'username' => $username,
  38. 'password' => $password,
  39. 'dsn' => $dsn
  40. );
  41. }
  42.  
  43. $dbparams = PSQLParams();
  44.  
  45. $db = new PDO($dbparams['dsn'], $dbparams['username'], $dbparams['password']);
  46. $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  47.  
  48. $aclPlugin = new SabreDAVACLPlugin();
  49. $aclPlugin->hideNodesFromListings = true;
  50. $aclPlugin->defaultUsernamePath = 'principals/users';
  51. $aclPlugin->adminPrincipals[] = 'principals/admin';
  52.  
  53. $authBackend = new SabreDAVAuthBackendPDO($db);
  54. $principalBackend = new SabreDAVACLPrincipalBackendPDO($db);
  55.  
  56. $principalsCollection = new SabreDAVSimpleCollection('principals', [
  57. new SabreDAVACLPrincipalCollection($principalBackend, 'principals/users')//,
  58. // new SabreDAVACLPrincipalCollection($principalBackend, 'principals/projects'),
  59. // new SabreDAVACLPrincipalCollection($principalBackend, 'principals/organizations')
  60. ]);
  61.  
  62. $home = new HomeCollection($principalBackend,'/efs/users');
  63. $projects = new HomeCollection($principalBackend,'/efs/dav/projects');
  64. $projects->collectionName = 'projects';
  65. $organizations = new HomeCollection($principalBackend,'/efs/dav/organizations');
  66.  
  67. $organizations->collectionName = 'organizations';
  68. $tree = [
  69. $home, $projects, $organizations, $principalsCollection
  70. ];
  71.  
  72. $server = new DAVServer($tree);
  73.  
  74. // ver->setBaseUri("/servref/server.php");
  75. $server->setBaseUri("/dav/");
  76.  
  77. $lockBackend = new DAVLocksBackendPDO($db);
  78. $lockPlugin = new DAVLocksPlugin($lockBackend);
  79.  
  80. $authBackend = new AuthBackendPDO($db);
  81.  
  82. // We're assuming that the realm name is called 'ProLoop'.
  83. $authBackend->setRealm('dav');
  84.  
  85. // Creating the plugin.
  86. $authPlugin = new AuthPlugin($authBackend);
  87.  
  88. // Adding the plugin to the server.
  89. $server->addPlugin($authPlugin);
  90. $server->addPlugin($aclPlugin);
  91. $server->addPlugin($lockPlugin);
  92. $server->addPlugin(new DAVBrowserPlugin());
  93.  
  94. $server->exec();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement