[freeside-commits] branch FREESIDE_4_BRANCH updated. 8141f2f84a47320dde5be1ebb478f9d92da832e1
Mark Wells
mark at 420.am
Sat Jul 9 10:40:17 PDT 2016
The branch, FREESIDE_4_BRANCH has been updated
via 8141f2f84a47320dde5be1ebb478f9d92da832e1 (commit)
from 31c48790731207e89a80d056dbd44e1ac6f6e453 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 8141f2f84a47320dde5be1ebb478f9d92da832e1
Author: Mark Wells <mark at freeside.biz>
Date: Sat Jul 9 10:32:46 2016 -0700
optionally scale to the page width when printing, #71301
diff --git a/httemplate/elements/header-full.html b/httemplate/elements/header-full.html
index db38eaf..07595a5 100644
--- a/httemplate/elements/header-full.html
+++ b/httemplate/elements/header-full.html
@@ -47,6 +47,9 @@ Example:
<link rel="stylesheet" href="<% $fsurl %>elements/jquery-ui.min.css">
<SCRIPT SRC="<% $fsurl %>elements/jquery.js"></SCRIPT>
<SCRIPT SRC="<% $fsurl %>elements/jquery-ui.min.js"></SCRIPT>
+% if ( $FS::CurrentUser::CurrentUser->option('printtofit') ) {
+ <SCRIPT SRC="<% $fsurl %>elements/printtofit.js"></SCRIPT>
+% }
% }
<% include('init_overlib.html') |n %>
<% include('rs_init_object.html') |n %>
diff --git a/httemplate/elements/header-popup.html b/httemplate/elements/header-popup.html
index 1759369..6c0f80b 100644
--- a/httemplate/elements/header-popup.html
+++ b/httemplate/elements/header-popup.html
@@ -30,6 +30,9 @@ Example:
<META HTTP-Equiv="Expires" Content="0">
% unless ( $no_jquery ) {
<SCRIPT SRC="<% $fsurl %>elements/jquery.js"></SCRIPT>
+% if ( $FS::CurrentUser::CurrentUser->option('printtofit') ) {
+ <SCRIPT SRC="<% $fsurl %>elements/printtofit.js"></SCRIPT>
+% }
% }
<% $head |n %>
</HEAD>
diff --git a/httemplate/elements/printtofit.js b/httemplate/elements/printtofit.js
new file mode 100644
index 0000000..66257fc
--- /dev/null
+++ b/httemplate/elements/printtofit.js
@@ -0,0 +1,26 @@
+$().ready(function() {
+ var beforePrint = function() {
+ if ($('body').width() > 0) {
+ // 7.5 inches * 96 DPI; maybe make the width a user pref?
+ var maxwidth = 7.5 * 96;
+ $('body').css('zoom', maxwidth / $('body').width());
+ }
+ };
+ var afterPrint = function() {
+ $('body').css('zoom', 1);
+ }
+
+ if (window.matchMedia) { // chrome, most importantly; also IE10?
+ window.matchMedia('print').addListener(
+ function(mq) {
+ mq.matches ? beforePrint() : afterPrint();
+ }
+ );
+ } else { // other IE
+ $(window).on('beforeprint', beforePrint);
+ $(window).on('afterprint', afterPrint);
+ }
+ // got nothing for firefox
+ // https://bugzilla.mozilla.org/show_bug.cgi?id=774398
+ // but firefox already has "shrink to fit"
+});
diff --git a/httemplate/pref/pref-process.html b/httemplate/pref/pref-process.html
index f03a8df..b622efc 100644
--- a/httemplate/pref/pref-process.html
+++ b/httemplate/pref/pref-process.html
@@ -55,6 +55,7 @@ unless ( $error ) { # if ($access_user) {
disable_html_editor disable_enter_submit_onetimecharge
enable_mask_clipboard_hack dashboard_customers
customer_view_emails
+ printtofit
email_address
snom-ip snom-username snom-password
vonage-fromnumber vonage-username vonage-password
diff --git a/httemplate/pref/pref.html b/httemplate/pref/pref.html
index 50d6e8d..c6bcf6f 100644
--- a/httemplate/pref/pref.html
+++ b/httemplate/pref/pref.html
@@ -130,6 +130,13 @@ Interface
</TR>
<TR>
+ <TH ALIGN="right">Scale documents to fit on a letter-size page</TH>
+ <TD ALIGN="left">
+ <INPUT TYPE="checkbox" NAME="printtofit" VALUE="Y" <% $curuser->option('printtofit') ? 'CHECKED' : '' %>>
+ </TD>
+ </TR>
+
+ <TR>
<TH ALIGN="right">How many recently-modified customers displayed on dashboard</TH>
<TD ALIGN="left" COLSPAN=2>
<INPUT TYPE="text" NAME="dashboard_customers" VALUE="<% $curuser->option('dashboard_customers') %>"></TD>
@@ -143,8 +150,6 @@ Interface
</TD>
</TR>
-
-
</TABLE>
<BR>
-----------------------------------------------------------------------
Summary of changes:
httemplate/elements/header-full.html | 3 +++
httemplate/elements/header-popup.html | 3 +++
httemplate/elements/printtofit.js | 26 ++++++++++++++++++++++++++
httemplate/pref/pref-process.html | 1 +
httemplate/pref/pref.html | 9 +++++++--
5 files changed, 40 insertions(+), 2 deletions(-)
create mode 100644 httemplate/elements/printtofit.js
More information about the freeside-commits
mailing list