<?php

require_once dirname(__FILE__) . '/config.php';
require_once dirname(__FILE__) . '/views/header.tpl.php';
?>

<pre>

<?php 
// Set up the IPP instance
$IPP = new QuickBooks_IPP($dsn);
// Get our OAuth credentials from the database
$creds = $IntuitAnywhere->load($the_username, $the_tenant);
// Tell the framework to load some data from the OAuth store
$IPP->authMode(QuickBooks_IPP::AUTHMODE_OAUTH, $the_username, $creds);
// Print the credentials we're using
//print_r($creds);
// This is our current realm
$realm = $creds['qb_realm'];
// Load the OAuth information from the database
if ($Context = $IPP->context()) {
    // Set the IPP version to v3
    $IPP->version(QuickBooks_IPP_IDS::VERSION_3);
    $TermService = new QuickBooks_IPP_Service_Term();
    $terms = $TermService->query($Context, $realm, "SELECT * FROM Term");
    //print_r($terms);
    foreach ($terms as $Term) {
        //print_r($Term);
        print 'Term Id=' . $Term->getId() . ' is named: ' . $Term->getName() . '<br>';
    }
    /*
 /**
  * Test to see if a connection actually works (make sure you haven't been disconnected on Intuit's end)
  *
  */
 public function test($app_username, $app_tenant)
 {
     if ($creds = $this->load($app_username, $app_tenant)) {
         $IPP = new QuickBooks_IPP();
         $IPP->authMode(QuickBooks_IPP::AUTHMODE_OAUTH, $app_username, $creds);
         if ($Context = $IPP->context()) {
             // Set the DBID
             $IPP->dbid($Context, 'something');
             // Set the IPP flavor
             $IPP->flavor($creds['qb_flavor']);
             // Get the base URL if it's QBO
             if ($creds['qb_flavor'] == QuickBooks_IPP_IDS::FLAVOR_ONLINE) {
                 $cur_version = $IPP->version();
                 $IPP->version(QuickBooks_IPP_IDS::VERSION_3);
                 // Need v3 for this
                 $CustomerService = new QuickBooks_IPP_Service_Customer();
                 $customers = $CustomerService->query($Context, $creds['qb_realm'], "SELECT * FROM Customer MAXRESULTS 1");
                 $IPP->version($cur_version);
                 // Revert back to whatever they set
                 //$IPP->baseURL($IPP->getBaseURL($Context, $creds['qb_realm']));
             } else {
                 $companies = $IPP->getAvailableCompanies($Context);
             }
             //print('[[' . $IPP->lastRequest() . ']]' . "\n\n");
             //print('[[' . $IPP->lastResponse() . ']]' . "\n\n");
             //print('here we are! [' . $IPP->errorCode() . ']');
             // Check the last error code now...
             if ($IPP->errorCode() == 401 or $IPP->errorCode() == 3200) {
                 return false;
             }
             return true;
         }
     }
     return false;
 }