//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
// License for the specific language governing permissions and limitations
// under the License.
include_once 'tripit.php';
if (count($argv) < 6) {
    print "Usage: " . $argv[0] . " api_url consumer_key consumer_secret access_token access_token_secret\n";
    exit;
}
$api_url = $argv[1];
$oauth_consumer_key = $argv[2];
$oauth_consumer_secret = $argv[3];
$oauth_access_token = $argv[4];
$oauth_access_token_secret = $argv[5];
// Create an OAuth Credential Object
$oauth_cred = new OAuthConsumerCredential($oauth_consumer_key, $oauth_consumer_secret, $oauth_access_token, $oauth_access_token_secret);
// Create a new TripIt object
$t = new TripIt($oauth_cred, $api_url);
// Create a new trip
print "Create a new test trip to New York: \n";
$xml = '<Request><Trip><start_date>2009-12-17</start_date><end_date>2009-12-27</end_date><display_name>Test: New York, NY, December 2009</display_name><is_private>true</is_private><primary_location>New York, NY</primary_location></Trip></Request>';
$r = $t->create($xml);
print_r($r);
print "Get my list of travel objects in upcoming trips: \n";
$r = $t->list_trip();
print_r($r);
// The first trip in the list
print_r($r->Trip[0]);
<?php

// Copyright 2008-2012 Concur Technologies, Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License"); you may
// not use this file except in compliance with the License. You may obtain
// a copy of the License at
//
//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
// License for the specific language governing permissions and limitations
// under the License.
include_once 'tripit.php';
if (count($argv) < 4) {
    print "Usage: " . $argv[0] . " api_url consumer_key consumer_secret\n";
    exit;
}
$api_url = $argv[1];
$oauth_consumer_key = $argv[2];
$oauth_consumer_secret = $argv[3];
$oauth_credential = new OAuthConsumerCredential($oauth_consumer_key, $oauth_consumer_secret);
$tripit = new TripIt($oauth_credential, $api_url);
print serialize($tripit->get_request_token()) . "\n";
// Copyright 2008-2012 Concur Technologies, Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License"); you may
// not use this file except in compliance with the License. You may obtain
// a copy of the License at
//
//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
// License for the specific language governing permissions and limitations
// under the License.
include_once 'tripit.php';
$api_url = '';
$oauth_consumer_key = '';
$oauth_consumer_secret = '';
$access_token = '';
$access_token_secret = '';
if (count($argv) < 6) {
    print "Usage: " . $argv[0] . " api_url consumer_key consumer_secret request_token request_token_secret\n";
    exit;
}
$api_url = $argv[1];
$oauth_consumer_key = $argv[2];
$oauth_consumer_secret = $argv[3];
$request_token = $argv[4];
$request_token_secret = $argv[5];
$oauth_credential = new OAuthConsumerCredential($oauth_consumer_key, $oauth_consumer_secret, $request_token, $request_token_secret);
$tripit = new TripIt($oauth_credential, $api_url);
print serialize($tripit->get_access_token()) . "\n";
    exit;
}
if (!isset($_SESSION["tripit_rendezvous"])) {
    print _("Invalid token, giving up.");
    error_log("{$uid} attempted to rendezvous, but no rendezvous token was found in the session.");
    exit;
}
$rendezvous = $_SESSION["tripit_rendezvous"];
if (!$_GET["oauth_token"] or empty($_GET["oauth_token"]) or $_GET["oauth_token"] !== $rendezvous["token"]) {
    print _("Invalid token, giving up.");
    error_log("{$uid} attempted to rendezvous, but no token was passed in.");
    exit;
}
// We have the token and secret; attempt to get a request token.
$oauth_credential = new OAuthConsumerCredential($tripit_app_id, $tripit_app_secret, $rendezvous["token"], $rendezvous["secret"]);
$tripit = new TripIt($oauth_credential, $tripit_api_url);
try {
    $access_token = $tripit->get_access_token();
} catch (Exception $e) {
    error_log("Could not get access token: " . $e);
    die(_("Could not connect to TripIt.  Please try again later."));
}
if ($access_token == null || !is_array($access_token)) {
    print _("Invalid token, giving up.");
    error_log("{$uid} attempted to rendezvous, but TripIt said the token was not authorized: " . $access_token);
    exit;
}
// Make sure it's not the same token as what we already have in the db.
$existing_tripit_tokens = get_request_tokens($dbh, $uid);
if ($existing_tripit_tokens == null or $existing_tripit_tokens["token"] !== $access_token["oauth_token"]) {
    // No tokens or different token; add a new one.
// License for the specific language governing permissions and limitations
// under the License.
include_once 'tripit.php';
if (count($argv) < 6) {
    print "Usage: " . $argv[0] . " api_url consumer_key consumer_secret access_token access_token_secret\n";
    exit;
}
$api_url = $argv[1];
$oauth_consumer_key = $argv[2];
$oauth_consumer_secret = $argv[3];
$oauth_access_token = $argv[4];
$oauth_access_token_secret = $argv[5];
// Create an OAuth Credential Object
$oauth_cred = new OAuthConsumerCredential($oauth_consumer_key, $oauth_consumer_secret, $oauth_access_token, $oauth_access_token_secret);
// Create a new TripIt object
$t = new TripIt($oauth_cred, $api_url);
$xml = <<<EOT
<Request>
  <Trip>
    <start_date>2018-12-09</start_date>
    <end_date>2018-12-27</end_date>
    <primary_location>New York, NY</primary_location>
  </Trip>
</Request>
EOT;
$json = <<<EOT
{"Trip":
   {"start_date":"2015-12-09",
    "end_date":"2015-12-27",
    "primary_location":"New York, NY"
   }
<?php

require_once "locale.php";
require_once "db_pdo.php";
require_once "tripit_common.php";
$uid = $_SESSION["uid"];
if (!$uid or empty($uid)) {
    print _("Not logged in, aborting");
    exit;
}
$oauth_credential = new OAuthConsumerCredential($tripit_app_id, $tripit_app_secret);
$tripit = new TripIt($oauth_credential, $tripit_api_url);
$tokens = null;
try {
    $tokens = $tripit->get_request_token();
} catch (Exception $e) {
    error_log("Could not get rendezvous tokens: " . $e);
    die(_("Could not connect to TripIt.  Please try again later."));
}
if (!is_array($tokens)) {
    error_log("Could not get rendezvous tokens: not an array");
    die(_("Could not connect to TripIt.  Please try again later."));
}
$_SESSION["tripit_rendezvous"] = array("token" => $tokens["oauth_token"], "secret" => $tokens["oauth_token_secret"]);
header("Location: https://www.tripit.com/oauth/authorize?oauth_token=" . $tokens["oauth_token"] . "&oauth_token_secret=" . $tokens["oauth_token_secret"] . "&oauth_callback=" . urlencode("http://" . $_SERVER["SERVER_NAME"] . "/php/tripit_link.php"));
<?php

require_once "locale.php";
require_once "db_pdo.php";
require_once "tripit_common.php";
require_once "helper.php";
$DEBUG = false;
$uid = $_SESSION["uid"];
if (!$uid or empty($uid)) {
    print _("Not logged in, aborting");
    exit;
}
// This page requires that we're linked to a TripIt account already.
$tripit_tokens = require_tripit_link($dbh, $uid);
$oauth_cred = new OAuthConsumerCredential($tripit_app_id, $tripit_app_secret, $tripit_tokens["token"], $tripit_tokens["secret"]);
$tripit = new TripIt($oauth_cred, $tripit_api_url);
// Figure out if user wants past or future trips.
$wants_future_trips = isset($_REQUEST["future"]) ? $_REQUEST["future"] : null;
// Check that the parameter is valid.  If not, default to past.
if ($wants_future_trips == null || !is_numeric($wants_future_trips)) {
    $wants_future_trips = 0;
}
// Page number, in case we have more trips than can be returned in a single TripIt call.
$tripit_page_number = isset($_REQUEST["page"]) ? $_REQUEST["page"] : null;
if ($tripit_page_number < 2 || $tripit_page_number > 10000) {
    $tripit_page_number = 1;
}
// For future trips, include all objects.  For past trips, do not include all objects.
$trips = $tripit->list_trip(array('traveler' => 'true', 'include_objects' => 'true', 'past' => $wants_future_trips ? 'false' : 'true', 'page_num' => $tripit_page_number));
if (!isset($trips) or !isset($trips->Trip)) {
    handle_tripit_response($tripit->response);