/**
  * Get the web form's hosted URL.
  *
  * Instead of having to use the HTML code, you can get the URL to the 
  * Infusionsoft hosted version of the web form.
  *
  * @author Jacob Allred <*****@*****.**>
  *
  * @param int $webFormId The ID from Infusionsoft_WebFormService::getMap.
  * @param Infusionsoft_App $app
  * @return string URL of hosted web form
  */
 public static function getHostedURL($webFormId, Infusionsoft_App $app = null)
 {
     $app = parent::getObjectOrDefaultAppIfNull($app);
     /*
      * The API doesn't provide a method of getting the hosted URL.
      * Instead, we are going to get the HTML, find the form GUID, and create
      * the hosted URL on our own.
      */
     // Get the HTML
     $html = Infusionsoft_WebFormService::getHTML($webFormId, $app);
     // Create our search string
     $search = $app->getHostname() . '/app/form/process/';
     // Find the start and stop position of the form GUID
     $start = strpos($html, $search) + strlen($search);
     $stop = strpos(substr($html, $start), '"');
     // Pull out the GUID
     $guid = substr($html, $start, $stop);
     // Put together the hosted URL
     $url = 'https://';
     $url .= $app->getHostname();
     $url .= '/app/form/' . $guid;
     return $url;
 }
 /**
  * @param Infusionsoft_App $app
  * @param $html
  * @return string
  */
 public static function getHostedUrlFromHtml($html, Infusionsoft_App $app = null)
 {
     if ($app == null) {
         $app = parent::getObjectOrDefaultAppIfNull($app);
     }
     $search = $app->getHostname() . '/app/form/process/';
     // Find the start and stop position of the form GUID
     $start = strpos($html, $search) + strlen($search);
     $stop = strpos(substr($html, $start), '"');
     // Pull out the GUID
     $guid = substr($html, $start, $stop);
     // Put together the hosted URL
     $url = 'https://';
     $url .= $app->getHostname();
     $url .= '/app/form/' . $guid;
     return $url;
 }