<?php // Include Composer autoload include __DIR__ . "/../../../../vendor/autoload.php"; $nodeId = 'XXXXX'; // Entrez le nom de votre noeud créé par OpenWide // Create the client $client = new \Sitra\ApiClient\Client(['projectId' => 00, 'baseUrl' => 'http://api.sitra-tourisme.com/', 'OAuthClientId' => 'XXXXXXXXXXXXXXXXXXXXXXX', 'OAuthSecret' => 'XXXXXXXXXXXXXXXXXXXXXXX']); /* Le fichier CSV validé doit être de la forme : ID_TRIP; NOM_TRIP; ID_SITRA; NOM_SITRA Si ce n'est pas le cas, BIEN REOORDONNER LES COLONNES dans cet ordre*/ if (($handle = fopen("/chemin/absolu/vers/le/fichier/valide/par/l/OT.csv", "r")) !== FALSE) { $i = 0; while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) { if ($i > 0) { // S'il y a l'entête de colonne en première ligne, on ne la prend pas en compte $idTrip = intval($data[0]); $nameTrip = $data[1]; $idSitra = intval($data[2]); $nameSitra = $data[3]; try { $metadata = $client->putMetadata(['referenceId' => $idSitra, 'nodeId' => $nodeId, 'metadata' => ['general' => '{"locationId":"' . $idTrip . '","version":1}']]); } catch (\Sitra\ApiClient\Exception\SitraException $e) { echo $e->getMessage(); echo "\n"; echo $e->getPrevious()->getMessage(); } } $i++; } fclose($handle);
<?php // Include Composer autoload include __DIR__ . "/../vendor/autoload.php"; // Create the client $client = new \Sitra\ApiClient\Client(['apiKey' => 'XXX', 'projectId' => 00, 'baseUrl' => 'http://api.sitra-tourisme.com/', 'OAuthClientId' => 'XXX', 'OAuthSecret' => 'XXX']); try { $metadata = $client->getMetadata(['referenceId' => 123457, 'nodeId' => 'jolicode']); var_dump($metadata['identifiant']); $metadata = $client->putMetadata(['referenceId' => 123457, 'nodeId' => 'jolicode', 'metadata' => ['general' => '{"infoGenerale":"Mise à jour le ' . date('Y-m-d H:i:s') . '"}']]); $metadata = $client->getMetadata(['referenceId' => 123457, 'nodeId' => 'jolicode']); var_dump($metadata['identifiant']); $metadata = $client->putMetadata(['referenceId' => 123457, 'nodeId' => 'jolicode', 'metadata' => ['membres.membre_21' => '{"projet test":"Mise à jour le ' . date('Y-m-d H:i:s') . '"}']]); $metadata = $client->getMetadata(['referenceId' => 123457, 'nodeId' => 'jolicode', 'targetType' => 'membre', 'targetId' => 21]); var_dump($metadata['identifiant']); $metadata = $client->deleteMetadata(['referenceId' => 123457, 'nodeId' => 'jolicode', 'targetType' => 'membre', 'targetId' => 21]); var_dump($metadata); $metadata = $client->getMetadata(['referenceId' => 123457, 'nodeId' => 'jolicode', 'targetType' => 'membre', 'targetId' => 21]); var_dump($metadata); $metadata = $client->putMetadata(['referenceId' => 123457, 'nodeId' => 'jolicode', 'metadata' => ['node' => json_encode(['general' => json_encode(['toto' => true, 'foo' => 'bar']), 'membres' => [['targetId' => 111, 'jsonData' => json_encode(['foo' => 'barbar'])]]])]]); $metadata = $client->putMetadata(['referenceId' => 123457, 'nodeId' => 'jolicode', 'metadata' => ['membres' => '[{"targetId": 21, "jsonData": "{ \\"foo\\": \\"bar\\", \\"bar\\": 691 }" }, { "targetId": 12, "jsonData": "{ \\"bar\\": \\"foo\\" }" } ]']]); $metadata = $client->getMetadata(['referenceId' => 123457, 'nodeId' => 'jolicode', 'targetType' => 'membre']); var_dump($metadata); } catch (\Sitra\ApiClient\Exception\SitraException $e) { echo $e->getMessage(); echo "\n"; echo $e->getPrevious()->getMessage(); }
<?php // Include Composer autoload include __DIR__ . "/../vendor/autoload.php"; // Create the client $client = new \Sitra\ApiClient\Client(['apiKey' => 'XXX', 'projectId' => 00, 'baseUrl' => 'http://api.sitra-tourisme.com/']); try { /* * Export */ // Notifications come from a $_POST from Apidae $exportNotification = array("statut" => "SUCCESS", "reinitialisation" => "false", "projetId" => "672", "urlConfirmation" => "http://api.sitra-tourisme.com/api/v002/export/confirmation?hash=672_20150106-1344_V4BjvT", "ponctuel" => "true", "urlRecuperation" => "http://export.sitra-tourisme.com/exports/672_20150106-1344_V4BjvT.zip"); $exportFiles = $client->getExportFiles(['url' => $exportNotification['urlRecuperation']]); foreach ($exportFiles->name('objets_lies_modifies-14*') as $file) { var_dump($file->getRealpath()); // If you use XML (Apidae settings) //$xml = simplexml_load_string($file->getContents()); //print_r($xml); // If you use JSON // $json = \GuzzleHttp\Utils::jsonDecode($file->getContents(), true); // print_r($json); } $confirmation = $client->confirmExport(['hash' => $exportNotification['urlConfirmation']]); /* * Reference */ $cities = $client->getReferenceCity(['query' => ['codesInsee' => ["38534", "69388", "74140"]]]); var_dump(count($cities)); $elements = $client->getReferenceElement(['query' => ["elementReferenceIds" => [2, 118, 2338]]]); var_dump(count($elements)); $elements = $client->getReferenceInternalCriteria(['query' => ["critereInterneIds" => [1068, 2168]]]);
<?php // Include Composer autoload include __DIR__ . "/../vendor/autoload.php"; // Create the client $client = new \Sitra\ApiClient\Client(['apiKey' => 'XXX', 'projectId' => 00, 'baseUrl' => 'http://api.sitra-tourisme.com/']); try { /* * Reference */ $cities = $client->getReferenceCity(['query' => ['codesInsee' => ["38534", "69388", "74140"]]]); var_dump(count($cities)); $elements = $client->getReferenceElement(['query' => ["elementReferenceIds" => [2, 118, 2338]]]); var_dump(count($elements)); $elements = $client->getReferenceInternalCriteria(['query' => ["critereInterneIds" => [1068, 2168]]]); var_dump(count($elements)); $elements = $client->getReferenceSelection(['query' => ["selectionIds" => [64, 5896]]]); var_dump(count($elements)); /* * Object API's */ $search = $client->searchObject(['query' => ["searchQuery" => "vélo"]]); var_dump($search['numFound']); $search = $client->searchObjectIdentifier(['query' => ["searchQuery" => "vélo"]]); var_dump($search['numFound']); $search = $client->searchAgendaIdentifier(['query' => ["searchQuery" => "vélo"]]); var_dump($search['numFound']); $search = $client->searchAgenda(['query' => ["searchQuery" => "vélo"]]); var_dump($search['numFound']); $search = $client->searchDetailedAgendaIdentifier(['query' => ["searchQuery" => "vélo"]]); var_dump($search['numFound']);
<?php // Include Composer autoload include __DIR__ . "/../vendor/autoload.php"; // Create the client $client = new \Sitra\ApiClient\Client(['ssoRedirectUrl' => 'http://example.com/TODO', 'ssoClientId' => 'XXX', 'ssoSecret' => 'XXX']); // Display SSO url to the client (or redirect to it): ?> <a href="<?php echo $client->getSsoUrl(); ?> ">Ask for auth code</a> <?php try { if (isset($_GET['code']) && !empty($_GET['code'])) { // The redirect URL get a "code", we use it to ask for a token $token = $client->getSsoToken(['code' => $_GET['code'], 'redirect_uri' => 'http://example.com/TODO']); // Store the new token in the client, will be used automatically! $client->setAccessToken($token['scope'], $token['access_token']); // Now you can call SSO only methods: $profile = $client->getUserProfile(); var_dump($profile); $permissions = $client->getUserPermissionOnObject(['id' => 123457]); var_dump($permissions); } } catch (\Sitra\ApiClient\Exception\SitraException $e) { echo $e->getMessage(); echo "\n"; echo $e->getPrevious()->getMessage();