Jump to content

reset countdown


pakhearts

Recommended Posts

thanks for your reply , following is my code

//////////////////////////////////////////////////////

<div id="timerDiv"> this is the div to which i am refreshing , or recalling , replacing

<?php

list($remaining,$auto_start) = getRemaining($pid);

$remaining=$remaining;        //this variable contains the remaining time in seconds , that converts into the hours and minutes

$auto_start=$auto_start;

?>

<script type="text/javascript" >

//var month = <?php print $month?>; // 1 through 12 or '*' within the next month, '0' for the current month

//var day = '<?php print $day?>';  // day of month or + day offset

//var dow = 7;    // day of week sun=1 sat=7 or 0 for whatever day it falls on

//var hour = <?php print $endHour?>;    // 0 through 23 for the hour of the day

//var min = <?php print $endMinutes?>;    // 0 through 59 for minutes after the hour

var tz = +5;    // offset in hours from UTC to your timezone

var lab = 'cd';  // id of the entry on the page where the counter is to be inserted

 

function start()

{

displayCountdown(<?php print $remaining?>,lab,<?php print $auto_start?>);

}

loaded(lab,start);

// Countdown Javascript

// copyright 20th April 2005, 1st November 2009 by Stephen Chapman

// permission to use this Javascript on your web page is granted

// provided that all of the code in this script (including these

// comments) is used without any alteration

// you may change the start function if required

var pageLoaded = 0; window.onload = function() {pageLoaded = 1;}

function loaded(i,f)

{

if (document.getElementById && document.getElementById(i) != null)

f();

else if (!pageLoaded) setTimeout('loaded(\''+i+'\','+f+')',100);

}

function setCountdown(month,day,hour,min,tz)

{

var m = month; if (month=='*') m = 0; 

var c = setC(m,day,hour,tz);

if (month == '*' && c < 0)  c = setC('*',day,hour,tz);

return c;

}

function setC(month,day,hour,tz)

{

var toDate = new Date();

if (day.substr(0,1) == '+')

{

var day1 = parseInt(day.substr(1));

toDate.setDate(toDate.getDate()+day1);

}

else{toDate.setDate(day);}

if (month == '*')toDate.setMonth(toDate.getMonth() + 1);

else if (month > 0)

{if (month <= toDate.getMonth())toDate.setFullYear(toDate.getFullYear() + 1);toDate.setMonth(month-1);}

if (dow >0)

toDate.setDate(toDate.getDate()+(dow-1-toDate.getDay())%7);

toDate.setHours(hour);toDate.setMinutes(min-(tz*60));

toDate.setSeconds(0);

var fromDate = new Date();

fromDate.setMinutes(fromDate.getMinutes() + fromDate.getTimezoneOffset());

var diffDate = new Date(0);

diffDate.setMilliseconds(toDate - fromDate);

return Math.floor(diffDate.valueOf()/1000);

}

 

function displayCountdown(countdn,cd,autoStart)

{

 

if(countdn==autoStart)

{

document.frmfaq.submit();

}

else if (countdn < 0)

{

document.getElementById(cd).innerHTML = "";

//updateWinner(<?php print $pid?>);

//alert("winner");

}

else

{

var secs = countdn % 60;

if (secs < 10) secs = '0'+secs;

var countdn1 = (countdn - secs) / 60;

var mins = countdn1 % 60;

if (mins < 10) mins = '0'+mins;countdn1 = (countdn1 - mins) / 60;var hours = countdn1 % 24;

var days = (countdn1 - hours) / 24;

document.getElementById(cd).innerHTML = days+' days  '+hours+' : '+mins+' : '+secs;

var cl = setTimeout('displayCountdown('+(countdn-1)+',\''+cd+'\','+<?php print $auto_start?>+');',999);

 

}

}

</script>

<table width="100%" border="0" cellspacing="0" cellpadding="0">

  <tr>

<td align="center" style="padding-left:200px">

<div id="winnername">

</div>

<span id='cd'></span>

</td>

  </tr>

</table>

<script language="javascript">clearTimeout(cl);</script>

 

</div>

 

//////////////////////////////////////////////////////////////////////////////////

i am calling the following same script but with the changed remaining time using setInterval()

//////////////////////////////////////////////////////////////////////////////////

 

<?php

list($remaining,$auto_start) = getRemaining($pid);

$remaining=$remaining;        //this variable is changed and now contains the new remaining time in seconds , that converts into the hours and minutes

$auto_start=$auto_start;

?>

 

<script type="text/javascript" >

//var month = <?php print $month?>; // 1 through 12 or '*' within the next month, '0' for the current month

//var day = '<?php print $day?>';  // day of month or + day offset

//var dow = 7;    // day of week sun=1 sat=7 or 0 for whatever day it falls on

//var hour = <?php print $endHour?>;    // 0 through 23 for the hour of the day

//var min = <?php print $endMinutes?>;    // 0 through 59 for minutes after the hour

var tz = +5;    // offset in hours from UTC to your timezone

var lab = 'cd';  // id of the entry on the page where the counter is to be inserted

 

function start()

{

displayCountdown(<?php print $remaining?>,lab,<?php print $auto_start?>);

}

loaded(lab,start);

// Countdown Javascript

// copyright 20th April 2005, 1st November 2009 by Stephen Chapman

// permission to use this Javascript on your web page is granted

// provided that all of the code in this script (including these

// comments) is used without any alteration

// you may change the start function if required

var pageLoaded = 0; window.onload = function() {pageLoaded = 1;}

function loaded(i,f)

{

if (document.getElementById && document.getElementById(i) != null)

f();

else if (!pageLoaded) setTimeout('loaded(\''+i+'\','+f+')',100);

}

function setCountdown(month,day,hour,min,tz)

{

var m = month; if (month=='*') m = 0; 

var c = setC(m,day,hour,tz);

if (month == '*' && c < 0)  c = setC('*',day,hour,tz);

return c;

}

function setC(month,day,hour,tz)

{

var toDate = new Date();

if (day.substr(0,1) == '+')

{

var day1 = parseInt(day.substr(1));

toDate.setDate(toDate.getDate()+day1);

}

else{toDate.setDate(day);}

if (month == '*')toDate.setMonth(toDate.getMonth() + 1);

else if (month > 0)

{if (month <= toDate.getMonth())toDate.setFullYear(toDate.getFullYear() + 1);toDate.setMonth(month-1);}

if (dow >0)

toDate.setDate(toDate.getDate()+(dow-1-toDate.getDay())%7);

toDate.setHours(hour);toDate.setMinutes(min-(tz*60));

toDate.setSeconds(0);

var fromDate = new Date();

fromDate.setMinutes(fromDate.getMinutes() + fromDate.getTimezoneOffset());

var diffDate = new Date(0);

diffDate.setMilliseconds(toDate - fromDate);

return Math.floor(diffDate.valueOf()/1000);

}

 

function displayCountdown(countdn,cd,autoStart)

{

 

if(countdn==autoStart)

{

document.frmfaq.submit();

}

else if (countdn < 0)

{

document.getElementById(cd).innerHTML = "";

//updateWinner(<?php print $pid?>);

//alert("winner");

}

else

{

var secs = countdn % 60;

if (secs < 10) secs = '0'+secs;

var countdn1 = (countdn - secs) / 60;

var mins = countdn1 % 60;

if (mins < 10) mins = '0'+mins;countdn1 = (countdn1 - mins) / 60;var hours = countdn1 % 24;

var days = (countdn1 - hours) / 24;

document.getElementById(cd).innerHTML = days+' days  '+hours+' : '+mins+' : '+secs;

var cl = setTimeout('displayCountdown('+(countdn-1)+',\''+cd+'\','+<?php print $auto_start?>+');',999); // this is what is displying means the coutdown timer , i have to refresh , or reset this one

 

}

}

</script>

<table width="100%" border="0" cellspacing="0" cellpadding="0">

  <tr>

    <td align="center" style="padding-left:200px">

<div id="winnername">

</div>

<span id='cd'></span>

</td>

  </tr>

</table>

<script language="javascript">clearTimeout(cl);</script>  //there  i am clearing the Timeout

 

Link to comment
https://forums.phpfreaks.com/topic/225065-reset-countdown/#findComment-1162857
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.