diff --git a/app/controllers/api/databases.php b/app/controllers/api/databases.php index 5bff04b6ae..6f7f5fb8b3 100644 --- a/app/controllers/api/databases.php +++ b/app/controllers/api/databases.php @@ -1311,6 +1311,7 @@ App::post('/v1/databases/:databaseId/collections/:collectionId/attributes/dateti 'required' => $required, 'default' => $default, 'array' => $array, + 'filters' => ['datetime'] ]), $response, $dbForProject, $database, $audits, $events, $usage); $response->dynamic($attribute, Response::MODEL_ATTRIBUTE_DATETIME); @@ -1371,6 +1372,7 @@ App::get('/v1/databases/:databaseId/collections/:collectionId/attributes/:key') ->label('sdk.response.code', Response::STATUS_CODE_OK) ->label('sdk.response.type', Response::CONTENT_TYPE_JSON) ->label('sdk.response.model', [ + Response::MODEL_ATTRIBUTE_DATETIME, Response::MODEL_ATTRIBUTE_BOOLEAN, Response::MODEL_ATTRIBUTE_INTEGER, Response::MODEL_ATTRIBUTE_FLOAT, @@ -1410,6 +1412,7 @@ App::get('/v1/databases/:databaseId/collections/:collectionId/attributes/:key') $format = $attribute->getAttribute('format'); $model = match ($type) { + Database::VAR_DATETIME => Response::MODEL_ATTRIBUTE_DATETIME, Database::VAR_BOOLEAN => Response::MODEL_ATTRIBUTE_BOOLEAN, Database::VAR_INTEGER => Response::MODEL_ATTRIBUTE_INTEGER, Database::VAR_FLOAT => Response::MODEL_ATTRIBUTE_FLOAT, @@ -1494,6 +1497,7 @@ App::delete('/v1/databases/:databaseId/collections/:collectionId/attributes/:key $format = $attribute->getAttribute('format'); $model = match ($type) { + Database::VAR_DATETIME => Response::MODEL_ATTRIBUTE_DATETIME, Database::VAR_BOOLEAN => Response::MODEL_ATTRIBUTE_BOOLEAN, Database::VAR_INTEGER => Response::MODEL_ATTRIBUTE_INTEGER, Database::VAR_FLOAT => Response::MODEL_ATTRIBUTE_FLOAT, diff --git a/composer.lock b/composer.lock index 6c70165a4d..9a995f05b6 100644 --- a/composer.lock +++ b/composer.lock @@ -2056,12 +2056,12 @@ "source": { "type": "git", "url": "https://github.com/utopia-php/database.git", - "reference": "d16484800bf85eb504cb862e0b887aaa16e773b4" + "reference": "40c2fbaaa20374279b5d0c30bb25f46beeab548a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/utopia-php/database/zipball/d16484800bf85eb504cb862e0b887aaa16e773b4", - "reference": "d16484800bf85eb504cb862e0b887aaa16e773b4", + "url": "https://api.github.com/repos/utopia-php/database/zipball/40c2fbaaa20374279b5d0c30bb25f46beeab548a", + "reference": "40c2fbaaa20374279b5d0c30bb25f46beeab548a", "shasum": "" }, "require": { @@ -2112,7 +2112,7 @@ "issues": "https://github.com/utopia-php/database/issues", "source": "https://github.com/utopia-php/database/tree/feat-attr-datetime" }, - "time": "2022-07-21T15:33:14+00:00" + "time": "2022-07-28T10:08:02+00:00" }, { "name": "utopia-php/domains", diff --git a/docker-compose.yml b/docker-compose.yml index 3e4216d111..df2938cbc7 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -103,7 +103,7 @@ services: - ./phpunit.xml:/usr/src/code/phpunit.xml - ./tests:/usr/src/code/tests - ./app:/usr/src/code/app - - ./vendor/utopia/database:/usr/src/code/vendor/utopia/database + - ./vendor/utopia-php/database:/usr/src/code/vendor/utopia-php/database - ./docs:/usr/src/code/docs - ./public:/usr/src/code/public - ./src:/usr/src/code/src @@ -208,7 +208,6 @@ services: - ./app:/usr/src/code/app - ./src:/usr/src/code/src # - ./vendor:/usr/src/code/vendor - - ./vendor/utopia/database:/usr/src/code/vendor/utopia/database depends_on: - mariadb - redis @@ -562,6 +561,7 @@ services: volumes: - ./app:/usr/src/code/app - ./src:/usr/src/code/src + #- ./vendor/utopia-php/database:/usr/src/code/vendor/utopia-php/database depends_on: - redis environment: diff --git a/src/Appwrite/Utopia/Response/Model/Bucket.php b/src/Appwrite/Utopia/Response/Model/Bucket.php index 96cf300f46..89f8c5778a 100644 --- a/src/Appwrite/Utopia/Response/Model/Bucket.php +++ b/src/Appwrite/Utopia/Response/Model/Bucket.php @@ -18,13 +18,13 @@ class Bucket extends Model ]) ->addRule('$createdAt', [ 'type' => self::TYPE_DATETIME, - 'description' => get_class() . ' creation date in Datetime', + 'description' => 'Bucket creation date in Datetime', 'default' => '', 'example' => '1975-12-06 13:30:59', ]) ->addRule('$updatedAt', [ 'type' => self::TYPE_DATETIME, - 'description' => get_class() . ' update date in Datetime', + 'description' => 'Bucket update date in Datetime', 'default' => '', 'example' => '1975-12-06 13:30:59', ]) diff --git a/src/Appwrite/Utopia/Response/Model/Collection.php b/src/Appwrite/Utopia/Response/Model/Collection.php index 7d538ed5ea..3b3c734228 100644 --- a/src/Appwrite/Utopia/Response/Model/Collection.php +++ b/src/Appwrite/Utopia/Response/Model/Collection.php @@ -18,13 +18,13 @@ class Collection extends Model ]) ->addRule('$createdAt', [ 'type' => self::TYPE_DATETIME, - 'description' => get_class() . ' creation date in Datetime', + 'description' => 'Collection creation date in Datetime', 'default' => '', 'example' => '1975-12-06 13:30:59', ]) ->addRule('$updatedAt', [ 'type' => self::TYPE_DATETIME, - 'description' => get_class() . ' update date in Datetime', + 'description' => 'Collection update date in Datetime', 'default' => '', 'example' => '1975-12-06 13:30:59', ]) diff --git a/src/Appwrite/Utopia/Response/Model/Deployment.php b/src/Appwrite/Utopia/Response/Model/Deployment.php index eddc323182..c293e3508c 100644 --- a/src/Appwrite/Utopia/Response/Model/Deployment.php +++ b/src/Appwrite/Utopia/Response/Model/Deployment.php @@ -18,13 +18,13 @@ class Deployment extends Model ]) ->addRule('$createdAt', [ 'type' => self::TYPE_DATETIME, - 'description' => get_class() . ' creation date in Datetime', + 'description' => 'Deployment creation date in Datetime', 'default' => '', 'example' => '1975-12-06 13:30:59', ]) ->addRule('$updatedAt', [ 'type' => self::TYPE_DATETIME, - 'description' => get_class() . ' update date in Datetime', + 'description' => 'Deployment update date in Datetime', 'default' => '', 'example' => '1975-12-06 13:30:59', ]) diff --git a/src/Appwrite/Utopia/Response/Model/Document.php b/src/Appwrite/Utopia/Response/Model/Document.php index 811311bbf8..b25bfb6724 100644 --- a/src/Appwrite/Utopia/Response/Model/Document.php +++ b/src/Appwrite/Utopia/Response/Model/Document.php @@ -44,13 +44,13 @@ class Document extends Any ]) ->addRule('$createdAt', [ 'type' => self::TYPE_DATETIME, - 'description' => get_class() . ' creation date in Datetime', + 'description' => 'Document creation date in Datetime', 'default' => '', 'example' => '1975-12-06 13:30:59', ]) ->addRule('$updatedAt', [ 'type' => self::TYPE_DATETIME, - 'description' => get_class() . ' update date in Datetime', + 'description' => 'Document update date in Datetime', 'default' => '', 'example' => '1975-12-06 13:30:59', ]) diff --git a/src/Appwrite/Utopia/Response/Model/Domain.php b/src/Appwrite/Utopia/Response/Model/Domain.php index 621797c963..2cb98c14fa 100644 --- a/src/Appwrite/Utopia/Response/Model/Domain.php +++ b/src/Appwrite/Utopia/Response/Model/Domain.php @@ -23,13 +23,13 @@ class Domain extends Model ]) ->addRule('$createdAt', [ 'type' => self::TYPE_DATETIME, - 'description' => get_class() . ' creation date in Datetime', + 'description' => 'Domain creation date in Datetime', 'default' => '', 'example' => '1975-12-06 13:30:59', ]) ->addRule('$updatedAt', [ 'type' => self::TYPE_DATETIME, - 'description' => get_class() . ' update date in Datetime', + 'description' => 'Domain update date in Datetime', 'default' => '', 'example' => '1975-12-06 13:30:59', ]) diff --git a/src/Appwrite/Utopia/Response/Model/Execution.php b/src/Appwrite/Utopia/Response/Model/Execution.php index fe47d6afd6..98c2741465 100644 --- a/src/Appwrite/Utopia/Response/Model/Execution.php +++ b/src/Appwrite/Utopia/Response/Model/Execution.php @@ -18,13 +18,13 @@ class Execution extends Model ]) ->addRule('$createdAt', [ 'type' => self::TYPE_DATETIME, - 'description' => get_class() . ' creation date in Datetime', + 'description' => 'Execution creation date in Datetime', 'default' => '', 'example' => '1975-12-06 13:30:59', ]) ->addRule('$updatedAt', [ 'type' => self::TYPE_DATETIME, - 'description' => get_class() . ' upate date in Datetime', + 'description' => 'Execution upate date in Datetime', 'default' => '', 'example' => '1975-12-06 13:30:59', ]) diff --git a/src/Appwrite/Utopia/Response/Model/File.php b/src/Appwrite/Utopia/Response/Model/File.php index 7d8d810461..750a721f92 100644 --- a/src/Appwrite/Utopia/Response/Model/File.php +++ b/src/Appwrite/Utopia/Response/Model/File.php @@ -24,13 +24,13 @@ class File extends Model ]) ->addRule('$createdAt', [ 'type' => self::TYPE_DATETIME, - 'description' => get_class() . ' creation date in Datetime', + 'description' => 'File creation date in Datetime', 'default' => '', 'example' => '1975-12-06 13:30:59', ]) ->addRule('$updatedAt', [ 'type' => self::TYPE_DATETIME, - 'description' => get_class() . ' update date in Datetime', + 'description' => 'File update date in Datetime', 'default' => '', 'example' => '1975-12-06 13:30:59', ]) diff --git a/src/Appwrite/Utopia/Response/Model/Key.php b/src/Appwrite/Utopia/Response/Model/Key.php index daa35a4220..c52311c328 100644 --- a/src/Appwrite/Utopia/Response/Model/Key.php +++ b/src/Appwrite/Utopia/Response/Model/Key.php @@ -23,13 +23,13 @@ class Key extends Model ]) ->addRule('$createdAt', [ 'type' => self::TYPE_DATETIME, - 'description' => get_class() . ' creation date in Datetime', + 'description' => 'Key creation date in Datetime', 'default' => '', 'example' => '1975-12-06 13:30:59', ]) ->addRule('$updatedAt', [ 'type' => self::TYPE_DATETIME, - 'description' => get_class() . ' update date in Datetime', + 'description' => 'Key update date in Datetime', 'default' => '', 'example' => '1975-12-06 13:30:59', ]) @@ -41,7 +41,7 @@ class Key extends Model ]) ->addRule('expire', [ 'type' => self::TYPE_DATETIME, - 'description' => get_class() . ' expiration date in Datetime', + 'description' => 'Key expiration date in Datetime', 'default' => '', 'example' => '1975-12-06 13:30:59', ]) diff --git a/src/Appwrite/Utopia/Response/Model/Log.php b/src/Appwrite/Utopia/Response/Model/Log.php index 3891b41364..835cb3d9e3 100644 --- a/src/Appwrite/Utopia/Response/Model/Log.php +++ b/src/Appwrite/Utopia/Response/Model/Log.php @@ -48,7 +48,7 @@ class Log extends Model ]) ->addRule('time', [ 'type' => self::TYPE_DATETIME, - 'description' => get_class() . ' creation date in Datetime.', + 'description' => 'Log creation date in Datetime.', 'default' => '', 'example' => '1975-12-06 13:30:59', ]) diff --git a/src/Appwrite/Utopia/Response/Model/Membership.php b/src/Appwrite/Utopia/Response/Model/Membership.php index d068417d81..547b8db3d7 100644 --- a/src/Appwrite/Utopia/Response/Model/Membership.php +++ b/src/Appwrite/Utopia/Response/Model/Membership.php @@ -18,13 +18,13 @@ class Membership extends Model ]) ->addRule('$createdAt', [ 'type' => self::TYPE_DATETIME, - 'description' => get_class() . ' creation date in Datetime', + 'description' => 'Membership creation date in Datetime', 'default' => '', 'example' => '1975-12-06 13:30:59', ]) ->addRule('$updatedAt', [ 'type' => self::TYPE_DATETIME, - 'description' => get_class() . ' update date in Datetime', + 'description' => 'Membership update date in Datetime', 'default' => '', 'example' => '1975-12-06 13:30:59', ]) diff --git a/src/Appwrite/Utopia/Response/Model/Platform.php b/src/Appwrite/Utopia/Response/Model/Platform.php index 21fe580640..b99ac2011d 100644 --- a/src/Appwrite/Utopia/Response/Model/Platform.php +++ b/src/Appwrite/Utopia/Response/Model/Platform.php @@ -23,13 +23,13 @@ class Platform extends Model ]) ->addRule('$createdAt', [ 'type' => self::TYPE_DATETIME, - 'description' => get_class() . ' creation date in Datetime', + 'description' => 'Platform creation date in Datetime', 'default' => '', 'example' => '1975-12-06 13:30:59', ]) ->addRule('$updatedAt', [ 'type' => self::TYPE_DATETIME, - 'description' => get_class() . ' update date in Datetime', + 'description' => 'Platform update date in Datetime', 'default' => '', 'example' => '1975-12-06 13:30:59', ]) diff --git a/src/Appwrite/Utopia/Response/Model/Project.php b/src/Appwrite/Utopia/Response/Model/Project.php index 967f29dc57..301d15edc8 100644 --- a/src/Appwrite/Utopia/Response/Model/Project.php +++ b/src/Appwrite/Utopia/Response/Model/Project.php @@ -25,13 +25,13 @@ class Project extends Model ]) ->addRule('$createdAt', [ 'type' => self::TYPE_DATETIME, - 'description' => get_class() . ' creation date in Datetime', + 'description' => 'Project creation date in Datetime', 'default' => '', 'example' => '1975-12-06 13:30:59', ]) ->addRule('$updatedAt', [ 'type' => self::TYPE_DATETIME, - 'description' => get_class() . ' update date in Datetime', + 'description' => 'Project update date in Datetime', 'default' => '', 'example' => '1975-12-06 13:30:59', ]) diff --git a/src/Appwrite/Utopia/Response/Model/Session.php b/src/Appwrite/Utopia/Response/Model/Session.php index 62058f6db5..86c98f768c 100644 --- a/src/Appwrite/Utopia/Response/Model/Session.php +++ b/src/Appwrite/Utopia/Response/Model/Session.php @@ -18,7 +18,7 @@ class Session extends Model ]) ->addRule('$createdAt', [ 'type' => self::TYPE_DATETIME, - 'description' => get_class() . ' creation date in Datetime', + 'description' => 'Session creation date in Datetime', 'default' => '', 'example' => '1975-12-06 13:30:59', ]) @@ -30,7 +30,7 @@ class Session extends Model ]) ->addRule('expire', [ 'type' => self::TYPE_DATETIME, - 'description' => get_class() . ' expiration date in Datetime', + 'description' => 'Session expiration date in Datetime', 'default' => '', 'example' => '1975-12-06 13:30:59', ]) diff --git a/src/Appwrite/Utopia/Response/Model/Team.php b/src/Appwrite/Utopia/Response/Model/Team.php index af50515357..8763bbe814 100644 --- a/src/Appwrite/Utopia/Response/Model/Team.php +++ b/src/Appwrite/Utopia/Response/Model/Team.php @@ -18,13 +18,13 @@ class Team extends Model ]) ->addRule('$createdAt', [ 'type' => self::TYPE_DATETIME, - 'description' => get_class() . ' creation date in Datetime', + 'description' => 'Team creation date in Datetime', 'default' => '', 'example' => '1975-12-06 13:30:59', ]) ->addRule('$updatedAt', [ 'type' => self::TYPE_DATETIME, - 'description' => get_class() . ' update date in Datetime', + 'description' => 'Team update date in Datetime', 'default' => '', 'example' => '1975-12-06 13:30:59', ]) diff --git a/src/Appwrite/Utopia/Response/Model/Token.php b/src/Appwrite/Utopia/Response/Model/Token.php index b4fa5041c2..1b6ae092a6 100644 --- a/src/Appwrite/Utopia/Response/Model/Token.php +++ b/src/Appwrite/Utopia/Response/Model/Token.php @@ -18,7 +18,7 @@ class Token extends Model ]) ->addRule('$createdAt', [ 'type' => self::TYPE_DATETIME, - 'description' => get_class() . ' creation date in Datetime', + 'description' => 'Token creation date in Datetime', 'default' => '', 'example' => '1975-12-06 13:30:59', ]) diff --git a/src/Appwrite/Utopia/Response/Model/User.php b/src/Appwrite/Utopia/Response/Model/User.php index a39226a76e..d47fa414de 100644 --- a/src/Appwrite/Utopia/Response/Model/User.php +++ b/src/Appwrite/Utopia/Response/Model/User.php @@ -19,13 +19,13 @@ class User extends Model ]) ->addRule('$createdAt', [ 'type' => self::TYPE_DATETIME, - 'description' => get_class() . ' creation date in Datetime.', + 'description' => 'User creation date in Datetime.', 'default' => '', 'example' => '1975-12-06 13:30:59', ]) ->addRule('$updatedAt', [ 'type' => self::TYPE_DATETIME, - 'description' => get_class() . ' update date in Datetime.', + 'description' => 'User update date in Datetime.', 'default' => '', 'example' => '1975-12-06 13:30:59', ]) diff --git a/src/Appwrite/Utopia/Response/Model/Webhook.php b/src/Appwrite/Utopia/Response/Model/Webhook.php index 6f79dd9101..5aec6bdbe1 100644 --- a/src/Appwrite/Utopia/Response/Model/Webhook.php +++ b/src/Appwrite/Utopia/Response/Model/Webhook.php @@ -23,13 +23,13 @@ class Webhook extends Model ]) ->addRule('$createdAt', [ 'type' => self::TYPE_DATETIME, - 'description' => get_class() . ' creation date in Datetime', + 'description' => 'Webhook creation date in Datetime', 'default' => '', 'example' => '1975-12-06 13:30:59', ]) ->addRule('$updatedAt', [ 'type' => self::TYPE_DATETIME, - 'description' => get_class() . ' update date in Datetime', + 'description' => 'Webhook update date in Datetime', 'default' => '', 'example' => '1975-12-06 13:30:59', ]) diff --git a/tests/e2e/Services/Databases/DatabasesBase.php b/tests/e2e/Services/Databases/DatabasesBase.php index 1a67e9a621..e3e60f04ba 100644 --- a/tests/e2e/Services/Databases/DatabasesBase.php +++ b/tests/e2e/Services/Databases/DatabasesBase.php @@ -335,6 +335,16 @@ trait DatabasesBase 'default' => true, ]); + $datetime = $this->client->call(Client::METHOD_POST, $attributesPath . '/datetime', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ]), [ + 'key' => 'datetime', + 'required' => false, + 'default' => null, + ]); + $this->assertEquals(201, $string['headers']['status-code']); $this->assertEquals('string', $string['body']['key']); $this->assertEquals('string', $string['body']['type']); @@ -402,6 +412,13 @@ trait DatabasesBase $this->assertEquals(false, $boolean['body']['array']); $this->assertEquals(true, $boolean['body']['default']); + $this->assertEquals(201, $datetime['headers']['status-code']); + $this->assertEquals('datetime', $datetime['body']['key']); + $this->assertEquals('datetime', $datetime['body']['type']); + $this->assertEquals(false, $datetime['body']['required']); + $this->assertEquals(false, $datetime['body']['array']); + $this->assertEquals(null, $datetime['body']['default']); + // wait for database worker to create attributes sleep(30); @@ -452,6 +469,12 @@ trait DatabasesBase 'x-appwrite-project' => $this->getProject()['$id'], 'x-appwrite-key' => $this->getProject()['apiKey'] ])); +var_dump($attributesPath . '/' . $datetime['body']['key']); + $datetimeResponse = $this->client->call(Client::METHOD_GET, $attributesPath . '/' . $datetime['body']['key'], array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + 'x-appwrite-key' => $this->getProject()['apiKey'] + ])); $this->assertEquals(200, $stringResponse['headers']['status-code']); $this->assertEquals($string['body']['key'], $stringResponse['body']['key']); @@ -527,6 +550,14 @@ trait DatabasesBase $this->assertEquals($boolean['body']['array'], $booleanResponse['body']['array']); $this->assertEquals($boolean['body']['default'], $booleanResponse['body']['default']); + $this->assertEquals(200, $datetimeResponse['headers']['status-code']); + $this->assertEquals($datetime['body']['key'], $datetimeResponse['body']['key']); + $this->assertEquals($datetime['body']['type'], $datetimeResponse['body']['type']); + $this->assertEquals('available', $datetimeResponse['body']['status']); + $this->assertEquals($datetime['body']['required'], $datetimeResponse['body']['required']); + $this->assertEquals($datetime['body']['array'], $datetimeResponse['body']['array']); + $this->assertEquals($datetime['body']['default'], $datetimeResponse['body']['default']); + $attributes = $this->client->call(Client::METHOD_GET, '/databases/' . $databaseId . '/collections/' . $collectionId . '/attributes', array_merge([ 'content-type' => 'application/json', 'x-appwrite-project' => $this->getProject()['$id'], @@ -534,12 +565,12 @@ trait DatabasesBase ])); $this->assertEquals(200, $attributes['headers']['status-code']); - $this->assertEquals(8, $attributes['body']['total']); + $this->assertEquals(9, $attributes['body']['total']); $attributes = $attributes['body']['attributes']; $this->assertIsArray($attributes); - $this->assertCount(8, $attributes); + $this->assertCount(9, $attributes); $this->assertEquals($stringResponse['body']['key'], $attributes[0]['key']); $this->assertEquals($stringResponse['body']['type'], $attributes[0]['type']); @@ -607,6 +638,13 @@ trait DatabasesBase $this->assertEquals($booleanResponse['body']['array'], $attributes[7]['array']); $this->assertEquals($booleanResponse['body']['default'], $attributes[7]['default']); + $this->assertEquals($datetimeResponse['body']['key'], $attributes[8]['key']); + $this->assertEquals($datetimeResponse['body']['type'], $attributes[8]['type']); + $this->assertEquals($datetimeResponse['body']['status'], $attributes[8]['status']); + $this->assertEquals($datetimeResponse['body']['required'], $attributes[8]['required']); + $this->assertEquals($datetimeResponse['body']['array'], $attributes[8]['array']); + $this->assertEquals($datetimeResponse['body']['default'], $attributes[8]['default']); + $collection = $this->client->call(Client::METHOD_GET, '/databases/' . $databaseId . '/collections/' . $collectionId, array_merge([ 'content-type' => 'application/json', 'x-appwrite-project' => $this->getProject()['$id'], @@ -618,7 +656,7 @@ trait DatabasesBase $attributes = $collection['body']['attributes']; $this->assertIsArray($attributes); - $this->assertCount(8, $attributes); + $this->assertCount(9, $attributes); $this->assertEquals($stringResponse['body']['key'], $attributes[0]['key']); $this->assertEquals($stringResponse['body']['type'], $attributes[0]['type']); @@ -798,7 +836,7 @@ trait DatabasesBase 'data' => [ 'title' => 'Captain America', 'releaseYear' => 1944, - 'birthDay' => '1975-06-12 14:12:55', + 'birthDay' => '1975-06-12 14:12:55+02:00', 'actors' => [ 'Chris Evans', 'Samuel Jackson', @@ -808,6 +846,10 @@ trait DatabasesBase 'write' => ['user:' . $this->getUser()['$id']], ]); + var_dump("++++++++++"); + var_dump('/databases/' . $databaseId . '/collections/' . $data['moviesId'] . '/documents'); + var_dump("++++++++++"); + $document2 = $this->client->call(Client::METHOD_POST, '/databases/' . $databaseId . '/collections/' . $data['moviesId'] . '/documents', array_merge([ 'content-type' => 'application/json', 'x-appwrite-project' => $this->getProject()['$id'],