Javascript hour countdown error
<p>I have a countdown timer which transfers time from H:i:s to long version using this script:</p>

<pre><code>function parseTime() {
var timeLeftStr;
var timeLeft = 0;

timeLeftStr = document.getElementById("timeleft").innerHTML;

timeLeftStr.replace(/(\d+):(\d+):(\d+)/, function () {
    for (var i = 1; i &lt; arguments.length - 2; i++) {
        // Convert to ms
        timeLeft += arguments[i] * Math.pow(60, 3 - i) * 1000;
    }
});

countdown(new Date(timeLeft));
}

function countdown(timeLeft) {
var hours = timeLeft.getHours();
var minutes = timeLeft.getMinutes();
var seconds = timeLeft.getSeconds();

if (timeLeft.valueOf() == 0) {
    document.getElementById("timeleft").innerHTML = "0 seconds";
window.location = 'home.php?pageid=' + getURLParam("pageid");
    return false;
} else {
    document.getElementById("timeleft").innerHTML =
        (hours == 0 ? "" : hours + (hours == 1 ? " hour" : " hours")) +
        (minutes == 0 ? "" : (hours ? (seconds ? ", " : " and ") : " ") + minutes + (minutes == 1 ? " minute" : " minutes")) +
        (seconds == 0 ? "" : (hours || minutes ? " and " : "") + seconds + (seconds == 1 ? " second" : " seconds"));

    setTimeout(function () { countdown(new Date(timeLeft - 1000)); }, 1000);
}
}

window.onload = parseTime;
</code></pre>

<p>The error is that a user of mine who lives in Australia keeps getting the wrong "hour"
The original timer would say something like "23:45:05" but when the countdown timer starts it says "10 hours, 45 minutes and 5 seconds" rather than 23 hours. </p>

<p>Any idea why this could be happening? Thank you.</p>

<p>Im not that great at JS, this was created by a friend. </p>

<p>Worked it out in the end.</p>
