RSS

LuxCal Forum

The place for questions, suggestions and news about the LuxCal Event Calendar

User:   Password:   Remember Me?   
LuxCal Forum / General / Problems / Internet Explorer problem to print multiple pages
Posted:  05 Oct 2012 18:33   Last Edited By: Roel B.
Greetings,

I've noticed in 2.7.0 that when printing the upcoming page in Internet Explorer, only one page prints and the remainder of the content is cut off.  In other browsers this is not an issue.

Looking into it, I found that position: absolute in the scrollbox container caused the printing issue.  I altered the printNice JS function the same way as overflow is changed.  All seems to be working well smile


I see that the function changed a bit in the latest release, but I believe the issue remains.  Not sure if the way I went around it is the best, just trying to get some input on the matter.

-Michael
Posted:  06 Oct 2012 01:41   Last Edited By: Gork
I reported this as well (using IE9) and haven't been able to find a way around it through browser print settings.  But this was during a beta testing process and I haven't yet had time to try since the formal release.  I don't have the programming knowledge (I can fiddle a little only) to be able to make and test changes as you've described.  I have the same results as you, proper printing, when using FF on my Linux box...
Posted:  06 Oct 2012 16:14   Last Edited By: Roel B.
Hi Guys,
I thought this was solved in LuxCal 2.7.1 . . .
Let me know what you have changed in the printNice function, and I will review and test the change and include it in a next LuxCal version.
Roel
Posted:  09 Oct 2012 17:29   Last Edited By: Roel B.
Hey Roel,

I never got a chance to fully test 2.7.1, still using 2.7.0.  When I find time I will see what I can produce.

Bolded lines are what I added to the printNice function.  I excluded the first part of the function.

Code:


var elm = $I("scrollBox");
overFlow = elm.style.overflow;
elm.style.overflow = "visible";
positionReset = elm.style.position;
elm.style.position = "static";

window.print();
alert("Print ready"); //wait until printed
elm.style.overflow = overFlow;
elm.style.position = positionReset;
window.location = window.location.href;
return false;
Posted:  09 Oct 2012 22:44   Last Edited By: Roel B.
Thanks Michael,
The printNice function in LuxCal 2.7.1 is quite different from the v2.7.0 function, but you are right the problem of printing multiple pages in IE still exists.
I've tested your solution of setting the element style of the scrollBox to "static" in LuxCal 2.7.1 and indeed this solves the problem.
I will include your change in future LuxCal versions.
Hereafter you will find the changed printNice function in the file toolbox.js for Luxcal 2.7.1:

Code:


function printNice() {
    var regex = /noPrint/;
    var els = $T("*");
    for (var i=(els.length-1);i >= 0;i--) {
        if (regex.test(els[i].className)) { els[i].style.display = "none"; }
    }
    document.body.style.backgroundColor = "white";
    regex = /scrollBox/;
    for (var i=(els.length-1);i >= 0;i--) {
        if (regex.test(els[i].className)) {
            els[i].style.position = "static";
            els[i].style.overflow = "visible";
        }
    }
    window.print();
    window.location = window.location.href; //reload the page
    return false;
}

Roel
Posted:  15 Oct 2012 17:51
Thanks Roel!

-Michael