Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

The code snippet example will generate a simple pdf from the PDF service.

Code Snippet Example:

 

Code Block
languagephp
themeRDark
titleBuild PDF
//to import the pdf service classes
$t->runInteraction("Pdf.class.php");
//import config class which contains keys
$t->runInteraction("Config.class.php");

//set header/footer keys
$header_html="{_BLINK_PAGE_NO_}/{_BLINK_PAGES_}<br><hr>";
$footer_html = "<hr><br>{_BLINK_PAGE_NO_}/{_BLINK_PAGES_}";
$body = "<table><td>PDF Example: " . date("c") . "</td></tr></table>";

$content = array(
   "page" => array(
       "orientation" => "Portrait",
       "size" => "A4",
       "margins" => array(
           "top" => "5mm",
           "right" => "1cm",
           "bottom" => "5mm",
           "left" => "1cm"
       )
   ),
   "header" => array(
       "height" => "1in",
       "html" => $header_html
   ),
   "footer" => array(
       "height" => "1in",
       "html" => $footer_thml
   ),
   "body" => array(
       "html" => $body
   )
);


echo "About to build<BR>";

//create object
$pdf = new PDFBuilder(Config::$PDF);
//build pdf, if base64 is required
$result = $pdf->build($content);

echo "<pre>";
print_r($result);
echo "</pre>";

/*
 try {
print_r($result);
 } catch (Exception $e) {
      print_r($result);
 }
*/

//Following code sends an email to your email address with pdf as attachment
$t->addStringAttachment(file_get_contents($result["url"]), "Report.pdf", "base64");
$from = "bmp@blinkmobile.com.au";
$to = "YOUR ADDRESS EMAIL";
$subject = "[BlinkMobile] PDF Demo";
$body = "PDF Attached.";
$t->email($to, $subject, $body, $from);

return "Done<BR>";


/**
* $result = array(
*  "id" => "<UNIQUE OBJECT ID>",
*  "url" => "http://url.to.pdf/valid.for.3.minutes",
*  "content" => "base64 pdf content"
* );
**/

 

Explanation:

The first two "runInteraction" lines will simply "include" the class files you already uploaded. Make sure your have used the correct interaction names. You will need to put both of these lines on any page, or interaction, that you will be calling the class.

In the code example above, the following functions are used.

...

See more information on $t->email

 

...

$header_html (array)

The tags header array can contain any extra information you want to include in this log. These are entirely freeform - you can include as much (within reason) or as little information in this array as you wish.

For the sake of performance, please don't include large amounts of data here, such as full form submission data, or images!

HTML code or CSS styling you want in the header section of your PDF document.

 In the example above, we're including the username of the person logged in, and the group they are a part of. To add extra information, just add a new value to this array.two built in variables {_BLINK_PAGE_NO_}/{_BLINK_PAGES_} which will display the page number and total page numbers.


 

$footer_html (array)

 

$body (array)



 

$content (array)


Response:

After running this method, you will receive a response object that will simply return the data you logged. You can use this to double check values if you wish, but this is optional.

...