Advertisement
Ivan56

rej

Apr 3rd, 2016
140
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.59 KB | None | 0 0
  1. --- ProductListContentViewer.orig
  2. +++ ProductListContentViewer.php
  3. @@ -92,16 +92,69 @@
  4. $summary->setVar('summaryTotalServices', $totalServices);
  5. $content .= $summary->fetch();
  6.  
  7. - $ending = $template->getBlock('ending');
  8. - foreach($this->documentModel->keys() as $key) {
  9. - $ending->setVar($key, $this->documentModel->get($key));
  10. - }
  11. - $content .= $ending->fetch();
  12. + $pdf->writeHTMLCell(0, 0, $contentFrame->x, $contentFrame->y, $content, 0, 1);
  13. + $endY = $pdf->getY();
  14. + $pgN = $pdf->getPage();
  15. +
  16. + $bMargin = $pdf->getBreakMargin();
  17. + $auto_page_break = $pdf->getAutoPageBreak();
  18. + // disable auto-page-break
  19. + $pdf->SetAutoPageBreak(false, 0);
  20. +
  21. +
  22. + $pdf->startLayer('faximile', true, true, false);
  23. +
  24. +// stamp
  25. + $i = 1;
  26. + while ($i <= 5) {
  27. + try {
  28. + $stamp = $template->getBlock('stamp'.$i);
  29. + $stamp = $stamp->fetch();
  30. + $st_arr = explode(";", trim($stamp));
  31. + // обработка конца листа
  32. +
  33. + $stampH = $st_arr[2] + $st_arr[4] - $pdf->getPageDimensions($pgN)["hk"] + $pdf->getPageDimensions($pgN)["bm"] + $endY;
  34. + $pdf->setPage($pgN);
  35. +
  36. + if (($endY+$st_arr[2]+$st_arr[4]) < ( $pdf->getPageDimensions($pgN)["hk"] - $pdf->getPageDimensions($pgN)["bm"]) ) {
  37. + $stampY = $endY + $st_arr[2];
  38. + }
  39. +
  40. + elseif ( ($endY+$st_arr[2]+$st_arr[4]*0.7) < ( $pdf->getPageDimensions($pgN)["hk"] - $pdf->getPageDimensions($pgN)["bm"])) {
  41. + $stampY = $pdf->getPageDimensions($pgN)["hk"] - $pdf->getPageDimensions($pgN)["bm"] - $st_arr[4];
  42. + }
  43. + else {
  44. + $pdf->Addpage();
  45. + $pdf->setPage($pgN+1);
  46. +
  47. + $stampY = $st_arr[2] - $pdf->getPageDimensions($pgN)["hk"] + $pdf->getPageDimensions($pgN)["bm"] + $pdf->getPageDimensions($pgN+1)["tm"] + $endY;
  48. + if ( $stampY < $pdf->getPageDimensions($pgN+1)["tm"] ) {
  49. + $stampY = $pdf->getPageDimensions($pgN+1)["tm"];
  50. + }
  51. + };
  52. +
  53. + $pdf->Image($st_arr[0], $st_arr[1], $stampY, $st_arr[3], $st_arr[4]);
  54. +
  55. + } catch(Aste_Exception $e) {
  56. + }
  57. + $i++;
  58. +}
  59. + $pdf->endLayer();
  60. + $pdf->SetAutoPageBreak($auto_page_break, $bMargin);
  61. + $pdf->setPageMark();
  62. + $pdf->setPage($pgN);
  63. +
  64. +
  65. + $ending = $template->getBlock('ending');
  66. + foreach($this->documentModel->keys() as $key) {
  67. + $ending->setVar($key, $this->documentModel->get($key));
  68. + }
  69. + $content = $ending->fetch();
  70. + $pdf->writeHTMLCell(0, 0, "", $endY, $content, 0,1);
  71. + //$pdf->Cell("","","endY=".$endY." stampY=".$stampY." zzz=".$zzz." stampH=".$stampH, 1);
  72.  
  73. - $pdf->writeHTMLCell(0, 0, $contentFrame->x, $contentFrame->y, $content);
  74. } catch(Aste_Exception $e) {
  75. }
  76. -
  77. }
  78.  
  79. -}+}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement