diff options
Diffstat (limited to 'vendor/sabre/dav')
24 files changed, 0 insertions, 1137 deletions
diff --git a/vendor/sabre/dav/bin/migrateto17.php b/vendor/sabre/dav/bin/migrateto17.php deleted file mode 100755 index 3ccf0a380..000000000 --- a/vendor/sabre/dav/bin/migrateto17.php +++ /dev/null @@ -1,284 +0,0 @@ -#!/usr/bin/env php -<?php - -echo "SabreDAV migrate script for version 1.7\n"; - -if ($argc<2) { - - echo <<<HELLO - -This script help you migrate from a pre-1.7 database to 1.7 and later\n -Both the 'calendarobjects' and 'calendars' tables will be upgraded. - -If you do not have this table, or don't use the default PDO CalDAV backend -it's pointless to run this script. - -Keep in mind that some processing will be done on every single record of this -table and in addition, ALTER TABLE commands will be executed. -If you have a large calendarobjects table, this may mean that this process -takes a while. - -Usage: - -php {$argv[0]} [pdo-dsn] [username] [password] - -For example: - -php {$argv[0]} "mysql:host=localhost;dbname=sabredav" root password -php {$argv[0]} sqlite:data/sabredav.db - -HELLO; - - exit(); - -} - -// There's a bunch of places where the autoloader could be, so we'll try all of -// them. -$paths = array( - __DIR__ . '/../vendor/autoload.php', - __DIR__ . '/../../../autoload.php', -); - -foreach($paths as $path) { - if (file_exists($path)) { - include $path; - break; - } -} - -$dsn = $argv[1]; -$user = isset($argv[2])?$argv[2]:null; -$pass = isset($argv[3])?$argv[3]:null; - -echo "Connecting to database: " . $dsn . "\n"; - -$pdo = new PDO($dsn, $user, $pass); -$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); -$pdo->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC); - -echo "Validating existing table layout\n"; - -// The only cross-db way to do this, is to just fetch a single record. -$row = $pdo->query("SELECT * FROM calendarobjects LIMIT 1")->fetch(); - -if (!$row) { - echo "Error: This database did not have any records in the calendarobjects table, you should just recreate the table.\n"; - exit(-1); -} - -$requiredFields = array( - 'id', - 'calendardata', - 'uri', - 'calendarid', - 'lastmodified', -); - -foreach($requiredFields as $requiredField) { - if (!array_key_exists($requiredField,$row)) { - echo "Error: The current 'calendarobjects' table was missing a field we expected to exist.\n"; - echo "For safety reasons, this process is stopped.\n"; - exit(-1); - } -} - -$fields17 = array( - 'etag', - 'size', - 'componenttype', - 'firstoccurence', - 'lastoccurence', -); - -$found = 0; -foreach($fields17 as $field) { - if (array_key_exists($field, $row)) { - $found++; - } -} - -if ($found === 0) { - echo "The database had the 1.6 schema. Table will now be altered.\n"; - echo "This may take some time for large tables\n"; - - switch($pdo->getAttribute(PDO::ATTR_DRIVER_NAME)) { - - case 'mysql' : - - $pdo->exec(<<<SQL -ALTER TABLE calendarobjects -ADD etag VARCHAR(32), -ADD size INT(11) UNSIGNED, -ADD componenttype VARCHAR(8), -ADD firstoccurence INT(11) UNSIGNED, -ADD lastoccurence INT(11) UNSIGNED -SQL - ); - break; - case 'sqlite' : - $pdo->exec('ALTER TABLE calendarobjects ADD etag text'); - $pdo->exec('ALTER TABLE calendarobjects ADD size integer'); - $pdo->exec('ALTER TABLE calendarobjects ADD componenttype TEXT'); - $pdo->exec('ALTER TABLE calendarobjects ADD firstoccurence integer'); - $pdo->exec('ALTER TABLE calendarobjects ADD lastoccurence integer'); - break; - - default : - die('This upgrade script does not support this driver (' . $pdo->getAttribute(PDO::ATTR_DRIVER_NAME) . ")\n"); - - } - echo "Database schema upgraded.\n"; - -} elseif ($found === 5) { - - echo "Database already had the 1.7 schema\n"; - -} else { - - echo "The database had $found out of 5 from the changes for 1.7. This is scary and unusual, so we have to abort.\n"; - echo "You can manually try to upgrade the schema, and then run this script again.\n"; - exit(-1); - -} - -echo "Now, we need to parse every record and pull out some information.\n"; - -$result = $pdo->query('SELECT id, calendardata FROM calendarobjects'); -$stmt = $pdo->prepare('UPDATE calendarobjects SET etag = ?, size = ?, componenttype = ?, firstoccurence = ?, lastoccurence = ? WHERE id = ?'); - -echo "Total records found: " . $result->rowCount() . "\n"; -$done = 0; -$total = $result->rowCount(); -while($row = $result->fetch()) { - - try { - $newData = getDenormalizedData($row['calendardata']); - } catch (Exception $e) { - echo "===\nException caught will trying to parser calendarobject.\n"; - echo "Error message: " . $e->getMessage() . "\n"; - echo "Record id: " . $row['id'] . "\n"; - echo "This record is ignored, you should inspect it to see if there's anything wrong.\n===\n"; - continue; - } - $stmt->execute(array( - $newData['etag'], - $newData['size'], - $newData['componentType'], - $newData['firstOccurence'], - $newData['lastOccurence'], - $row['id'], - )); - $done++; - - if ($done % 500 === 0) { - echo "Completed: $done / $total\n"; - } -} -echo "Completed: $done / $total\n"; - -echo "Checking the calendars table needs changes.\n"; -$row = $pdo->query("SELECT * FROM calendars LIMIT 1")->fetch(); - -if (array_key_exists('transparent', $row)) { - - echo "The calendars table is already up to date\n"; - -} else { - - echo "Adding the 'transparent' field to the calendars table\n"; - - switch($pdo->getAttribute(PDO::ATTR_DRIVER_NAME)) { - - case 'mysql' : - $pdo->exec("ALTER TABLE calendars ADD transparent TINYINT(1) NOT NULL DEFAULT '0'"); - break; - case 'sqlite' : - $pdo->exec("ALTER TABLE calendars ADD transparent bool"); - break; - - default : - die('This upgrade script does not support this driver (' . $pdo->getAttribute(PDO::ATTR_DRIVER_NAME) . ")\n"); - - } - -} - -echo "Process completed!\n"; - -/** - * Parses some information from calendar objects, used for optimized - * calendar-queries. - * - * Blantently copied from Sabre\CalDAV\Backend\PDO - * - * Returns an array with the following keys: - * * etag - * * size - * * componentType - * * firstOccurence - * * lastOccurence - * - * @param string $calendarData - * @return array - */ -function getDenormalizedData($calendarData) { - - $vObject = \Sabre\VObject\Reader::read($calendarData); - $componentType = null; - $component = null; - $firstOccurence = null; - $lastOccurence = null; - foreach($vObject->getComponents() as $component) { - if ($component->name!=='VTIMEZONE') { - $componentType = $component->name; - break; - } - } - if (!$componentType) { - throw new \Sabre\DAV\Exception\BadRequest('Calendar objects must have a VJOURNAL, VEVENT or VTODO component'); - } - if ($componentType === 'VEVENT') { - $firstOccurence = $component->DTSTART->getDateTime()->getTimeStamp(); - // Finding the last occurence is a bit harder - if (!isset($component->RRULE)) { - if (isset($component->DTEND)) { - $lastOccurence = $component->DTEND->getDateTime()->getTimeStamp(); - } elseif (isset($component->DURATION)) { - $endDate = clone $component->DTSTART->getDateTime(); - $endDate->add(\Sabre\VObject\DateTimeParser::parse($component->DURATION->value)); - $lastOccurence = $endDate->getTimeStamp(); - } elseif (!$component->DTSTART->hasTime()) { - $endDate = clone $component->DTSTART->getDateTime(); - $endDate->modify('+1 day'); - $lastOccurence = $endDate->getTimeStamp(); - } else { - $lastOccurence = $firstOccurence; - } - } else { - $it = new \Sabre\VObject\Recur\EventIterator($vObject, (string)$component->UID); - $maxDate = new DateTime(\Sabre\CalDAV\Backend\PDO::MAX_DATE); - if ($it->isInfinite()) { - $lastOccurence = $maxDate->getTimeStamp(); - } else { - $end = $it->getDtEnd(); - while($it->valid() && $end < $maxDate) { - $end = $it->getDtEnd(); - $it->next(); - - } - $lastOccurence = $end->getTimeStamp(); - } - - } - } - - return array( - 'etag' => md5($calendarData), - 'size' => strlen($calendarData), - 'componentType' => $componentType, - 'firstOccurence' => $firstOccurence, - 'lastOccurence' => $lastOccurence, - ); - -} diff --git a/vendor/sabre/dav/examples/addressbookserver.php b/vendor/sabre/dav/examples/addressbookserver.php deleted file mode 100644 index 6d1c9b26c..000000000 --- a/vendor/sabre/dav/examples/addressbookserver.php +++ /dev/null @@ -1,57 +0,0 @@ -<?php - -/* - -Addressbook/CardDAV server example - -This server features CardDAV support - -*/ - -// settings -date_default_timezone_set('Canada/Eastern'); - -// Make sure this setting is turned on and reflect the root url for your WebDAV server. -// This can be for example the root / or a complete path to your server script -$baseUri = '/'; - -/* Database */ -$pdo = new PDO('sqlite:data/db.sqlite'); -$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); - -//Mapping PHP errors to exceptions -function exception_error_handler($errno, $errstr, $errfile, $errline) { - throw new ErrorException($errstr, 0, $errno, $errfile, $errline); -} -set_error_handler("exception_error_handler"); - -// Autoloader -require_once 'vendor/autoload.php'; - -// Backends -$authBackend = new Sabre\DAV\Auth\Backend\PDO($pdo); -$principalBackend = new Sabre\DAVACL\PrincipalBackend\PDO($pdo); -$carddavBackend = new Sabre\CardDAV\Backend\PDO($pdo); -//$caldavBackend = new Sabre\CalDAV\Backend\PDO($pdo); - -// Setting up the directory tree // -$nodes = [ - new Sabre\DAVACL\PrincipalCollection($principalBackend), -// new Sabre\CalDAV\CalendarRoot($authBackend, $caldavBackend), - new Sabre\CardDAV\AddressBookRoot($principalBackend, $carddavBackend), -]; - -// The object tree needs in turn to be passed to the server class -$server = new Sabre\DAV\Server($nodes); -$server->setBaseUri($baseUri); - -// Plugins -$server->addPlugin(new Sabre\DAV\Auth\Plugin($authBackend)); -$server->addPlugin(new Sabre\DAV\Browser\Plugin()); -//$server->addPlugin(new Sabre\CalDAV\Plugin()); -$server->addPlugin(new Sabre\CardDAV\Plugin()); -$server->addPlugin(new Sabre\DAVACL\Plugin()); -$server->addPlugin(new Sabre\DAV\Sync\Plugin()); - -// And off we go! -$server->exec(); diff --git a/vendor/sabre/dav/examples/sql/mysql.addressbook.sql b/vendor/sabre/dav/examples/sql/mysql.addressbook.sql deleted file mode 100644 index 5ec8428a7..000000000 --- a/vendor/sabre/dav/examples/sql/mysql.addressbook.sql +++ /dev/null @@ -1,28 +0,0 @@ -CREATE TABLE addressbooks ( - id INT(11) UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT, - principaluri VARBINARY(255), - displayname VARCHAR(255), - uri VARBINARY(200), - description TEXT, - synctoken INT(11) UNSIGNED NOT NULL DEFAULT '1', - UNIQUE(principaluri(100), uri(100)) -) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; - -CREATE TABLE cards ( - id INT(11) UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT, - addressbookid INT(11) UNSIGNED NOT NULL, - carddata MEDIUMBLOB, - uri VARBINARY(200), - lastmodified INT(11) UNSIGNED, - etag VARBINARY(32), - size INT(11) UNSIGNED NOT NULL -) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; - -CREATE TABLE addressbookchanges ( - id INT(11) UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT, - uri VARBINARY(200) NOT NULL, - synctoken INT(11) UNSIGNED NOT NULL, - addressbookid INT(11) UNSIGNED NOT NULL, - operation TINYINT(1) NOT NULL, - INDEX addressbookid_synctoken (addressbookid, synctoken) -) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; diff --git a/vendor/sabre/dav/examples/sql/mysql.calendars.sql b/vendor/sabre/dav/examples/sql/mysql.calendars.sql deleted file mode 100644 index 21c5bcb44..000000000 --- a/vendor/sabre/dav/examples/sql/mysql.calendars.sql +++ /dev/null @@ -1,76 +0,0 @@ -CREATE TABLE calendarobjects ( - id INT(11) UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT, - calendardata MEDIUMBLOB, - uri VARBINARY(200), - calendarid INTEGER UNSIGNED NOT NULL, - lastmodified INT(11) UNSIGNED, - etag VARBINARY(32), - size INT(11) UNSIGNED NOT NULL, - componenttype VARBINARY(8), - firstoccurence INT(11) UNSIGNED, - lastoccurence INT(11) UNSIGNED, - uid VARBINARY(200), - UNIQUE(calendarid, uri), - INDEX calendarid_time (calendarid, firstoccurence) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; - -CREATE TABLE calendars ( - id INTEGER UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT, - synctoken INTEGER UNSIGNED NOT NULL DEFAULT '1', - components VARBINARY(21) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; - -CREATE TABLE calendarinstances ( - id INTEGER UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT, - calendarid INTEGER UNSIGNED NOT NULL, - principaluri VARBINARY(100), - access TINYINT(1) NOT NULL DEFAULT '1' COMMENT '1 = owner, 2 = read, 3 = readwrite', - displayname VARCHAR(100), - uri VARBINARY(200), - description TEXT, - calendarorder INT(11) UNSIGNED NOT NULL DEFAULT '0', - calendarcolor VARBINARY(10), - timezone TEXT, - transparent TINYINT(1) NOT NULL DEFAULT '0', - share_href VARBINARY(100), - share_displayname VARCHAR(100), - share_invitestatus TINYINT(1) NOT NULL DEFAULT '2' COMMENT '1 = noresponse, 2 = accepted, 3 = declined, 4 = invalid', - UNIQUE(principaluri, uri), - UNIQUE(calendarid, principaluri), - UNIQUE(calendarid, share_href) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; - -CREATE TABLE calendarchanges ( - id INT(11) UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT, - uri VARBINARY(200) NOT NULL, - synctoken INT(11) UNSIGNED NOT NULL, - calendarid INT(11) UNSIGNED NOT NULL, - operation TINYINT(1) NOT NULL, - INDEX calendarid_synctoken (calendarid, synctoken) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; - -CREATE TABLE calendarsubscriptions ( - id INT(11) UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT, - uri VARBINARY(200) NOT NULL, - principaluri VARBINARY(100) NOT NULL, - source TEXT, - displayname VARCHAR(100), - refreshrate VARCHAR(10), - calendarorder INT(11) UNSIGNED NOT NULL DEFAULT '0', - calendarcolor VARBINARY(10), - striptodos TINYINT(1) NULL, - stripalarms TINYINT(1) NULL, - stripattachments TINYINT(1) NULL, - lastmodified INT(11) UNSIGNED, - UNIQUE(principaluri, uri) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; - -CREATE TABLE schedulingobjects ( - id INT(11) UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT, - principaluri VARBINARY(255), - calendardata MEDIUMBLOB, - uri VARBINARY(200), - lastmodified INT(11) UNSIGNED, - etag VARBINARY(32), - size INT(11) UNSIGNED NOT NULL -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; diff --git a/vendor/sabre/dav/examples/sql/mysql.locks.sql b/vendor/sabre/dav/examples/sql/mysql.locks.sql deleted file mode 100644 index 96a3a88d9..000000000 --- a/vendor/sabre/dav/examples/sql/mysql.locks.sql +++ /dev/null @@ -1,12 +0,0 @@ -CREATE TABLE locks ( - id INTEGER UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT, - owner VARCHAR(100), - timeout INTEGER UNSIGNED, - created INTEGER, - token VARBINARY(100), - scope TINYINT, - depth TINYINT, - uri VARBINARY(1000), - INDEX(token), - INDEX(uri(100)) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; diff --git a/vendor/sabre/dav/examples/sql/mysql.principals.sql b/vendor/sabre/dav/examples/sql/mysql.principals.sql deleted file mode 100644 index ea0d16a27..000000000 --- a/vendor/sabre/dav/examples/sql/mysql.principals.sql +++ /dev/null @@ -1,20 +0,0 @@ -CREATE TABLE principals ( - id INTEGER UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT, - uri VARBINARY(200) NOT NULL, - email VARBINARY(80), - displayname VARCHAR(80), - UNIQUE(uri) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; - -CREATE TABLE groupmembers ( - id INTEGER UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT, - principal_id INTEGER UNSIGNED NOT NULL, - member_id INTEGER UNSIGNED NOT NULL, - UNIQUE(principal_id, member_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; - -INSERT INTO principals (uri,email,displayname) VALUES -('principals/admin', 'admin@example.org','Administrator'), -('principals/admin/calendar-proxy-read', null, null), -('principals/admin/calendar-proxy-write', null, null); - diff --git a/vendor/sabre/dav/examples/sql/mysql.users.sql b/vendor/sabre/dav/examples/sql/mysql.users.sql deleted file mode 100644 index 22ac312d5..000000000 --- a/vendor/sabre/dav/examples/sql/mysql.users.sql +++ /dev/null @@ -1,9 +0,0 @@ -CREATE TABLE users ( - id INTEGER UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT, - username VARBINARY(50), - digesta1 VARBINARY(32), - UNIQUE(username) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; - -INSERT INTO users (username,digesta1) VALUES -('admin', '87fd274b7b6c01e48d7c2f965da8ddf7'); diff --git a/vendor/sabre/dav/examples/sql/pgsql.addressbook.sql b/vendor/sabre/dav/examples/sql/pgsql.addressbook.sql deleted file mode 100644 index ef2cc5b9a..000000000 --- a/vendor/sabre/dav/examples/sql/pgsql.addressbook.sql +++ /dev/null @@ -1,52 +0,0 @@ -CREATE TABLE addressbooks ( - id SERIAL NOT NULL, - principaluri VARCHAR(255), - displayname VARCHAR(255), - uri VARCHAR(200), - description TEXT, - synctoken INTEGER NOT NULL DEFAULT 1 -); - -ALTER TABLE ONLY addressbooks - ADD CONSTRAINT addressbooks_pkey PRIMARY KEY (id); - -CREATE UNIQUE INDEX addressbooks_ukey - ON addressbooks USING btree (principaluri, uri); - -CREATE TABLE cards ( - id SERIAL NOT NULL, - addressbookid INTEGER NOT NULL, - carddata TEXT, - uri VARCHAR(200), - lastmodified INTEGER, - etag VARCHAR(32), - size INTEGER NOT NULL -); - -ALTER TABLE ONLY cards - ADD CONSTRAINT cards_pkey PRIMARY KEY (id); - -CREATE UNIQUE INDEX cards_ukey - ON cards USING btree (addressbookid, uri); - -ALTER TABLE ONLY cards - ADD CONSTRAINT cards_addressbookid_fkey FOREIGN KEY (addressbookid) REFERENCES addressbooks(id) - ON DELETE CASCADE; - -CREATE TABLE addressbookchanges ( - id SERIAL NOT NULL, - uri VARCHAR(200) NOT NULL, - synctoken INTEGER NOT NULL, - addressbookid INTEGER NOT NULL, - operation SMALLINT NOT NULL -); - -ALTER TABLE ONLY addressbookchanges - ADD CONSTRAINT addressbookchanges_pkey PRIMARY KEY (id); - -CREATE INDEX addressbookchanges_addressbookid_synctoken_ix - ON addressbookchanges USING btree (addressbookid, synctoken); - -ALTER TABLE ONLY addressbookchanges - ADD CONSTRAINT addressbookchanges_addressbookid_fkey FOREIGN KEY (addressbookid) REFERENCES addressbooks(id) - ON DELETE CASCADE; diff --git a/vendor/sabre/dav/examples/sql/pgsql.calendars.sql b/vendor/sabre/dav/examples/sql/pgsql.calendars.sql deleted file mode 100644 index 67dc41a5a..000000000 --- a/vendor/sabre/dav/examples/sql/pgsql.calendars.sql +++ /dev/null @@ -1,105 +0,0 @@ -CREATE TABLE calendarobjects ( - id SERIAL NOT NULL, - calendardata BYTEA, - uri VARCHAR(200), - calendarid INTEGER NOT NULL, - lastmodified INTEGER, - etag VARCHAR(32), - size INTEGER NOT NULL, - componenttype VARCHAR(8), - firstoccurence INTEGER, - lastoccurence INTEGER, - uid VARCHAR(200) -); - -ALTER TABLE ONLY calendarobjects - ADD CONSTRAINT calendarobjects_pkey PRIMARY KEY (id); - -CREATE UNIQUE INDEX calendarobjects_ukey - ON calendarobjects USING btree (calendarid, uri); - - -CREATE TABLE calendars ( - id SERIAL NOT NULL, - synctoken INTEGER NOT NULL DEFAULT 1, - components VARCHAR(21) -); - -ALTER TABLE ONLY calendars - ADD CONSTRAINT calendars_pkey PRIMARY KEY (id); - - -CREATE TABLE calendarinstances ( - id SERIAL NOT NULL, - calendarid INTEGER NOT NULL, - principaluri VARCHAR(100), - access SMALLINT NOT NULL DEFAULT '1', -- '1 = owner, 2 = read, 3 = readwrite' - displayname VARCHAR(100), - uri VARCHAR(200), - description TEXT, - calendarorder INTEGER NOT NULL DEFAULT 0, - calendarcolor VARCHAR(10), - timezone TEXT, - transparent SMALLINT NOT NULL DEFAULT '0', - share_href VARCHAR(100), - share_displayname VARCHAR(100), - share_invitestatus SMALLINT NOT NULL DEFAULT '2' -- '1 = noresponse, 2 = accepted, 3 = declined, 4 = invalid' -); - -ALTER TABLE ONLY calendarinstances - ADD CONSTRAINT calendarinstances_pkey PRIMARY KEY (id); - -CREATE UNIQUE INDEX calendarinstances_principaluri_uri - ON calendarinstances USING btree (principaluri, uri); - - -CREATE UNIQUE INDEX calendarinstances_principaluri_calendarid - ON calendarinstances USING btree (principaluri, calendarid); - -CREATE UNIQUE INDEX calendarinstances_principaluri_share_href - ON calendarinstances USING btree (principaluri, share_href); - -CREATE TABLE calendarsubscriptions ( - id SERIAL NOT NULL, - uri VARCHAR(200) NOT NULL, - principaluri VARCHAR(100) NOT NULL, - source TEXT, - displayname VARCHAR(100), - refreshrate VARCHAR(10), - calendarorder INTEGER NOT NULL DEFAULT 0, - calendarcolor VARCHAR(10), - striptodos SMALLINT NULL, - stripalarms SMALLINT NULL, - stripattachments SMALLINT NULL, - lastmodified INTEGER -); - -ALTER TABLE ONLY calendarsubscriptions - ADD CONSTRAINT calendarsubscriptions_pkey PRIMARY KEY (id); - -CREATE UNIQUE INDEX calendarsubscriptions_ukey - ON calendarsubscriptions USING btree (principaluri, uri); - -CREATE TABLE calendarchanges ( - id SERIAL NOT NULL, - uri VARCHAR(200) NOT NULL, - synctoken INTEGER NOT NULL, - calendarid INTEGER NOT NULL, - operation SMALLINT NOT NULL DEFAULT 0 -); - -ALTER TABLE ONLY calendarchanges - ADD CONSTRAINT calendarchanges_pkey PRIMARY KEY (id); - -CREATE INDEX calendarchanges_calendarid_synctoken_ix - ON calendarchanges USING btree (calendarid, synctoken); - -CREATE TABLE schedulingobjects ( - id SERIAL NOT NULL, - principaluri VARCHAR(255), - calendardata BYTEA, - uri VARCHAR(200), - lastmodified INTEGER, - etag VARCHAR(32), - size INTEGER NOT NULL -); diff --git a/vendor/sabre/dav/examples/sql/pgsql.locks.sql b/vendor/sabre/dav/examples/sql/pgsql.locks.sql deleted file mode 100644 index 0290528ce..000000000 --- a/vendor/sabre/dav/examples/sql/pgsql.locks.sql +++ /dev/null @@ -1,19 +0,0 @@ -CREATE TABLE locks ( - id SERIAL NOT NULL, - owner VARCHAR(100), - timeout INTEGER, - created INTEGER, - token VARCHAR(100), - scope SMALLINT, - depth SMALLINT, - uri TEXT -); - -ALTER TABLE ONLY locks - ADD CONSTRAINT locks_pkey PRIMARY KEY (id); - -CREATE INDEX locks_token_ix - ON locks USING btree (token); - -CREATE INDEX locks_uri_ix - ON locks USING btree (uri); diff --git a/vendor/sabre/dav/examples/sql/pgsql.principals.sql b/vendor/sabre/dav/examples/sql/pgsql.principals.sql deleted file mode 100644 index 5a65260a2..000000000 --- a/vendor/sabre/dav/examples/sql/pgsql.principals.sql +++ /dev/null @@ -1,30 +0,0 @@ -CREATE TABLE principals ( - id SERIAL NOT NULL, - uri VARCHAR(200) NOT NULL, - email VARCHAR(80), - displayname VARCHAR(80) -); - -ALTER TABLE ONLY principals - ADD CONSTRAINT principals_pkey PRIMARY KEY (id); - -CREATE UNIQUE INDEX principals_ukey - ON principals USING btree (uri); - -CREATE TABLE groupmembers ( - id SERIAL NOT NULL, - principal_id INTEGER NOT NULL, - member_id INTEGER NOT NULL -); - -ALTER TABLE ONLY groupmembers - ADD CONSTRAINT groupmembers_pkey PRIMARY KEY (id); - -CREATE UNIQUE INDEX groupmembers_ukey - ON groupmembers USING btree (principal_id, member_id); - -INSERT INTO principals (uri,email,displayname) VALUES -('principals/admin', 'admin@example.org','Administrator'), -('principals/admin/calendar-proxy-read', null, null), -('principals/admin/calendar-proxy-write', null, null); - diff --git a/vendor/sabre/dav/examples/sql/pgsql.users.sql b/vendor/sabre/dav/examples/sql/pgsql.users.sql deleted file mode 100644 index 9d6047b8c..000000000 --- a/vendor/sabre/dav/examples/sql/pgsql.users.sql +++ /dev/null @@ -1,14 +0,0 @@ -CREATE TABLE users ( - id SERIAL NOT NULL, - username VARCHAR(50), - digesta1 VARCHAR(32) -); - -ALTER TABLE ONLY users - ADD CONSTRAINT users_pkey PRIMARY KEY (id); - -CREATE UNIQUE INDEX users_ukey - ON users USING btree (username); - -INSERT INTO users (username,digesta1) VALUES -('admin', '87fd274b7b6c01e48d7c2f965da8ddf7'); diff --git a/vendor/sabre/dav/examples/sql/sqlite.addressbooks.sql b/vendor/sabre/dav/examples/sql/sqlite.addressbooks.sql deleted file mode 100644 index 0baed8bfb..000000000 --- a/vendor/sabre/dav/examples/sql/sqlite.addressbooks.sql +++ /dev/null @@ -1,28 +0,0 @@ -CREATE TABLE addressbooks ( - id integer primary key asc NOT NULL, - principaluri text NOT NULL, - displayname text, - uri text NOT NULL, - description text, - synctoken integer DEFAULT 1 NOT NULL -); - -CREATE TABLE cards ( - id integer primary key asc NOT NULL, - addressbookid integer NOT NULL, - carddata blob, - uri text NOT NULL, - lastmodified integer, - etag text, - size integer -); - -CREATE TABLE addressbookchanges ( - id integer primary key asc NOT NULL, - uri text, - synctoken integer NOT NULL, - addressbookid integer NOT NULL, - operation integer NOT NULL -); - -CREATE INDEX addressbookid_synctoken ON addressbookchanges (addressbookid, synctoken); diff --git a/vendor/sabre/dav/examples/sql/sqlite.calendars.sql b/vendor/sabre/dav/examples/sql/sqlite.calendars.sql deleted file mode 100644 index 1c8070496..000000000 --- a/vendor/sabre/dav/examples/sql/sqlite.calendars.sql +++ /dev/null @@ -1,76 +0,0 @@ -CREATE TABLE calendarobjects ( - id integer primary key asc NOT NULL, - calendardata blob NOT NULL, - uri text NOT NULL, - calendarid integer NOT NULL, - lastmodified integer NOT NULL, - etag text NOT NULL, - size integer NOT NULL, - componenttype text, - firstoccurence integer, - lastoccurence integer, - uid text -); - -CREATE TABLE calendars ( - id integer primary key asc NOT NULL, - synctoken integer DEFAULT 1 NOT NULL, - components text NOT NULL -); - -CREATE TABLE calendarinstances ( - id integer primary key asc NOT NULL, - calendarid integer NOT NULL, - principaluri text NULL, - access integer COMMENT '1 = owner, 2 = read, 3 = readwrite' NOT NULL DEFAULT '1', - displayname text, - uri text NOT NULL, - description text, - calendarorder integer, - calendarcolor text, - timezone text, - transparent bool, - share_href text, - share_displayname text, - share_invitestatus integer DEFAULT '2', - UNIQUE (principaluri, uri), - UNIQUE (calendarid, principaluri), - UNIQUE (calendarid, share_href) -); - -CREATE TABLE calendarchanges ( - id integer primary key asc NOT NULL, - uri text, - synctoken integer NOT NULL, - calendarid integer NOT NULL, - operation integer NOT NULL -); - -CREATE INDEX calendarid_synctoken ON calendarchanges (calendarid, synctoken); - -CREATE TABLE calendarsubscriptions ( - id integer primary key asc NOT NULL, - uri text NOT NULL, - principaluri text NOT NULL, - source text NOT NULL, - displayname text, - refreshrate text, - calendarorder integer, - calendarcolor text, - striptodos bool, - stripalarms bool, - stripattachments bool, - lastmodified int -); - -CREATE TABLE schedulingobjects ( - id integer primary key asc NOT NULL, - principaluri text NOT NULL, - calendardata blob, - uri text NOT NULL, - lastmodified integer, - etag text NOT NULL, - size integer NOT NULL -); - -CREATE INDEX principaluri_uri ON calendarsubscriptions (principaluri, uri); diff --git a/vendor/sabre/dav/examples/sql/sqlite.locks.sql b/vendor/sabre/dav/examples/sql/sqlite.locks.sql deleted file mode 100644 index 622baea42..000000000 --- a/vendor/sabre/dav/examples/sql/sqlite.locks.sql +++ /dev/null @@ -1,12 +0,0 @@ -BEGIN TRANSACTION; -CREATE TABLE locks ( - id integer primary key asc NOT NULL, - owner text, - timeout integer, - created integer, - token text, - scope integer, - depth integer, - uri text -); -COMMIT; diff --git a/vendor/sabre/dav/examples/sql/sqlite.principals.sql b/vendor/sabre/dav/examples/sql/sqlite.principals.sql deleted file mode 100644 index 4105156f8..000000000 --- a/vendor/sabre/dav/examples/sql/sqlite.principals.sql +++ /dev/null @@ -1,20 +0,0 @@ -CREATE TABLE principals ( - id INTEGER PRIMARY KEY ASC NOT NULL, - uri TEXT NOT NULL, - email TEXT, - displayname TEXT, - UNIQUE(uri) -); - -CREATE TABLE groupmembers ( - id INTEGER PRIMARY KEY ASC NOT NULL, - principal_id INTEGER NOT NULL, - member_id INTEGER NOT NULL, - UNIQUE(principal_id, member_id) -); - - -INSERT INTO principals (uri,email,displayname) VALUES ('principals/admin', 'admin@example.org','Administrator'); -INSERT INTO principals (uri,email,displayname) VALUES ('principals/admin/calendar-proxy-read', null, null); -INSERT INTO principals (uri,email,displayname) VALUES ('principals/admin/calendar-proxy-write', null, null); - diff --git a/vendor/sabre/dav/examples/sql/sqlite.users.sql b/vendor/sabre/dav/examples/sql/sqlite.users.sql deleted file mode 100644 index 5597b058a..000000000 --- a/vendor/sabre/dav/examples/sql/sqlite.users.sql +++ /dev/null @@ -1,9 +0,0 @@ -CREATE TABLE users ( - id integer primary key asc NOT NULL, - username TEXT NOT NULL, - digesta1 TEXT NOT NULL, - UNIQUE(username) -); - -INSERT INTO users (username,digesta1) VALUES -('admin', '87fd274b7b6c01e48d7c2f965da8ddf7'); diff --git a/vendor/sabre/dav/examples/webserver/apache2_htaccess.conf b/vendor/sabre/dav/examples/webserver/apache2_htaccess.conf deleted file mode 100644 index c5f29ba80..000000000 --- a/vendor/sabre/dav/examples/webserver/apache2_htaccess.conf +++ /dev/null @@ -1,16 +0,0 @@ -RewriteEngine On -# This makes every request go to server.php -RewriteRule (.*) server.php [L] - -# Output buffering needs to be off, to prevent high memory usage -php_flag output_buffering off - -# This is also to prevent high memory usage -php_flag always_populate_raw_post_data off - -# This is almost a given, but magic quotes is *still* on on some -# linux distributions -php_flag magic_quotes_gpc off - -# SabreDAV is not compatible with mbstring function overloading -php_flag mbstring.func_overload off diff --git a/vendor/sabre/dav/examples/webserver/apache2_vhost.conf b/vendor/sabre/dav/examples/webserver/apache2_vhost.conf deleted file mode 100644 index 74289641e..000000000 --- a/vendor/sabre/dav/examples/webserver/apache2_vhost.conf +++ /dev/null @@ -1,29 +0,0 @@ -# This is a sample configuration to setup a dedicated Apache vhost for WebDAV. -# -# The main thing that should be configured is the servername, and the path to -# your SabreDAV installation (DocumentRoot). -# -# This configuration assumed mod_php5 is used, as it sets a few default php -# settings as well. -<VirtualHost *:*> - - # Don't forget to change the server name - # ServerName dav.example.org - - # The DocumentRoot is also required - # DocumentRoot /home/sabredav/ - - RewriteEngine On - # This makes every request go to server.php - RewriteRule ^/(.*)$ /server.php [L] - - # Output buffering needs to be off, to prevent high memory usage - php_flag output_buffering off - - # This is also to prevent high memory usage - php_flag always_populate_raw_post_data off - - # SabreDAV is not compatible with mbstring function overloading - php_flag mbstring.func_overload off - -</VirtualHost *:*> diff --git a/vendor/sabre/dav/examples/webserver/apache2_vhost_cgi.conf b/vendor/sabre/dav/examples/webserver/apache2_vhost_cgi.conf deleted file mode 100644 index 607254c6e..000000000 --- a/vendor/sabre/dav/examples/webserver/apache2_vhost_cgi.conf +++ /dev/null @@ -1,21 +0,0 @@ -# This is a sample configuration to setup a dedicated Apache vhost for WebDAV. -# -# The main thing that should be configured is the servername, and the path to -# your SabreDAV installation (DocumentRoot). -# -# This configuration assumes CGI or FastCGI is used. -<VirtualHost *:*> - - # Don't forget to change the server name - # ServerName dav.example.org - - # The DocumentRoot is also required - # DocumentRoot /home/sabredav/ - - # This makes every request go to server.php. This also makes sure - # the Authentication information is available. If your server script is - # not called server.php, be sure to change it. - RewriteEngine On - RewriteRule ^/(.*)$ /server.php [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] - -</VirtualHost *:*> diff --git a/vendor/sabre/dav/lib/CalDAV/IShareableCalendar.php b/vendor/sabre/dav/lib/CalDAV/IShareableCalendar.php deleted file mode 100644 index 7420d94f7..000000000 --- a/vendor/sabre/dav/lib/CalDAV/IShareableCalendar.php +++ /dev/null @@ -1,48 +0,0 @@ -<?php - -namespace Sabre\CalDAV; - -/** - * This interface represents a Calendar that can be shared with other users. - * - * @copyright Copyright (C) 2007-2015 fruux GmbH (https://fruux.com/). - * @author Evert Pot (http://evertpot.com/) - * @license http://sabre.io/license/ Modified BSD License - */ -interface IShareableCalendar extends ICalendar { - - /** - * Updates the list of shares. - * - * The first array is a list of people that are to be added to the - * calendar. - * - * Every element in the add array has the following properties: - * * href - A url. Usually a mailto: address - * * commonName - Usually a first and last name, or false - * * summary - A description of the share, can also be false - * * readOnly - A boolean value - * - * Every element in the remove array is just the address string. - * - * @param array $add - * @param array $remove - * @return void - */ - function updateShares(array $add, array $remove); - - /** - * Returns the list of people whom this calendar is shared with. - * - * Every element in this array should have the following properties: - * * href - Often a mailto: address - * * commonName - Optional, for example a first + last name - * * status - See the Sabre\CalDAV\SharingPlugin::STATUS_ constants. - * * readOnly - boolean - * * summary - Optional, a description for the share - * - * @return array - */ - function getShares(); - -} diff --git a/vendor/sabre/dav/lib/CalDAV/ShareableCalendar.php b/vendor/sabre/dav/lib/CalDAV/ShareableCalendar.php deleted file mode 100644 index c81c96300..000000000 --- a/vendor/sabre/dav/lib/CalDAV/ShareableCalendar.php +++ /dev/null @@ -1,72 +0,0 @@ -<?php - -namespace Sabre\CalDAV; - -/** - * This object represents a CalDAV calendar that can be shared with other - * users. - * - * @copyright Copyright (C) 2007-2015 fruux GmbH (https://fruux.com/). - * @author Evert Pot (http://evertpot.com/) - * @license http://sabre.io/license/ Modified BSD License - */ -class ShareableCalendar extends Calendar implements IShareableCalendar { - - /** - * Updates the list of shares. - * - * The first array is a list of people that are to be added to the - * calendar. - * - * Every element in the add array has the following properties: - * * href - A url. Usually a mailto: address - * * commonName - Usually a first and last name, or false - * * summary - A description of the share, can also be false - * * readOnly - A boolean value - * - * Every element in the remove array is just the address string. - * - * @param array $add - * @param array $remove - * @return void - */ - function updateShares(array $add, array $remove) { - - $this->caldavBackend->updateShares($this->calendarInfo['id'], $add, $remove); - - } - - /** - * Returns the list of people whom this calendar is shared with. - * - * Every element in this array should have the following properties: - * * href - Often a mailto: address - * * commonName - Optional, for example a first + last name - * * status - See the Sabre\CalDAV\SharingPlugin::STATUS_ constants. - * * readOnly - boolean - * * summary - Optional, a description for the share - * - * @return array - */ - function getShares() { - - return $this->caldavBackend->getShares($this->calendarInfo['id']); - - } - - /** - * Marks this calendar as published. - * - * Publishing a calendar should automatically create a read-only, public, - * subscribable calendar. - * - * @param bool $value - * @return void - */ - function setPublishStatus($value) { - - $this->caldavBackend->setPublishStatus($this->calendarInfo['id'], $value); - - } - -} diff --git a/vendor/sabre/dav/tests/Sabre/CalDAV/ShareableCalendarTest.php b/vendor/sabre/dav/tests/Sabre/CalDAV/ShareableCalendarTest.php deleted file mode 100644 index 15b869d50..000000000 --- a/vendor/sabre/dav/tests/Sabre/CalDAV/ShareableCalendarTest.php +++ /dev/null @@ -1,60 +0,0 @@ -<?php - -namespace Sabre\CalDAV; - -use Sabre\DAVACL; - -class ShareableCalendarTest extends \PHPUnit_Framework_TestCase { - - protected $backend; - protected $instance; - - function setUp() { - - $props = array( - 'id' => 1, - ); - - $this->backend = new Backend\MockSharing( - array($props) - ); - $this->backend->updateShares(1, array( - array( - 'href' => 'mailto:removeme@example.org', - 'commonName' => 'To be removed', - 'readOnly' => true, - ), - ), array()); - - $this->instance = new ShareableCalendar($this->backend, $props); - - } - - function testUpdateShares() { - - $this->instance->updateShares(array( - array( - 'href' => 'mailto:test@example.org', - 'commonName' => 'Foo Bar', - 'summary' => 'Booh', - 'readOnly' => false, - ), - ), array('mailto:removeme@example.org')); - - $this->assertEquals(array(array( - 'href' => 'mailto:test@example.org', - 'commonName' => 'Foo Bar', - 'summary' => 'Booh', - 'readOnly' => false, - 'status' => SharingPlugin::STATUS_NORESPONSE, - )), $this->instance->getShares()); - - } - - function testPublish() { - - $this->assertNull($this->instance->setPublishStatus(true)); - $this->assertNull($this->instance->setPublishStatus(false)); - - } -} diff --git a/vendor/sabre/dav/tests/phpunit.xml b/vendor/sabre/dav/tests/phpunit.xml deleted file mode 100644 index e16ec38b5..000000000 --- a/vendor/sabre/dav/tests/phpunit.xml +++ /dev/null @@ -1,40 +0,0 @@ -<phpunit - colors="true" - bootstrap="bootstrap.php" - convertErrorsToExceptions="true" - convertNoticesToExceptions="true" - convertWarningsToExceptions="true" - strict="true" - > - <testsuite name="sabre-vobject"> - <directory>../vendor/sabre/vobject/tests/VObject</directory> - </testsuite> - <testsuite name="sabre-event"> - <directory>../vendor/sabre/event/tests/</directory> - </testsuite> - <testsuite name="sabre-http"> - <directory>../vendor/sabre/http/tests/HTTP</directory> - </testsuite> - <testsuite name="sabre-dav"> - <directory>Sabre/DAV</directory> - </testsuite> - <testsuite name="sabre-davacl"> - <directory>Sabre/DAVACL</directory> - </testsuite> - <testsuite name="sabre-caldav"> - <directory>Sabre/CalDAV</directory> - </testsuite> - <testsuite name="sabre-carddav"> - <directory>Sabre/CardDAV</directory> - </testsuite> - - <filter> - <whitelist addUncoveredFilesFromWhitelist="true"> - <directory suffix=".php">../lib/</directory> - <exclude> - <file>../lib/Sabre/autoload.php</file> - <file>../lib/Sabre/VObject/includes.php</file> - </exclude> - </whitelist> - </filter> -</phpunit> |