make printing multi page aware
authorCornelius Weiß <mail@corneliusweiss.de>
Thu, 14 Aug 2014 13:44:30 +0000 (15:44 +0200)
committerPhilipp Schüle <p.schuele@metaways.de>
Tue, 19 Aug 2014 11:45:16 +0000 (13:45 +0200)
Change-Id: Ia77ed6c9d191778292efce4744fdb1cc7dda7d99
Reviewed-on: http://gerrit.tine20.com/customers/988
Tested-by: Jenkins CI (http://ci.tine20.com/)
Reviewed-by: Philipp Schüle <p.schuele@metaways.de>
tine20/Calendar/css/print.css
tine20/Tinebase/js/ux/Printer/print.css
tine20/Tinebase/js/ux/Printer/renderers/Base.js

index 2fd1c79..065e904 100644 (file)
@@ -32,6 +32,12 @@ table td {
     display: none;
 }
 
+div.page
+{
+    page-break-after: always;
+    page-break-inside: avoid;
+}
+
 .cal-print-title {
        text-align: center;
        font-size: 20px;
index 189a2ad..000b295 100644 (file)
@@ -23,9 +23,15 @@ table td {
 }
 
 @media print {
-   thead {display: table-header-group;}
+  thead {display: table-header-group;}
 }
 
 #csscheck {
-       display: none;
+  display: none;
+}
+
+div.page
+{
+  page-break-after: always;
+  page-break-inside: avoid;
 }
\ No newline at end of file
index 0ec2092..133c425 100644 (file)
@@ -10,9 +10,14 @@ Ext.ux.Printer.BaseRenderer = Ext.extend(Object, {
    */
   printStrategy: 'iframe',
   
+  debug: false,
+  
   constructor: function(config) {
     Ext.apply(this, config);
     
+    if (this.debug) {
+        this.printStrategy = 'window';
+    }
     Ext.ux.Printer.BaseRenderer.superclass.constructor.call(this, config);
   },
   
@@ -41,7 +46,9 @@ Ext.ux.Printer.BaseRenderer = Ext.extend(Object, {
     // gecko looses its document after document.close(). but fortunally waits with printing till css is loaded itself
     if (Ext.isGecko) {
         win.print();
-        win.close();
+        if (! this.debug) {
+            win.close();
+        }
         return;
     }
     
@@ -102,7 +109,9 @@ Ext.ux.Printer.BaseRenderer = Ext.extend(Object, {
       return;
     }
     win.print();
-    win.close();
+    if (! this.debug) {
+        win.close();
+    }
   },
   
   /**