I'm using clienttools.py to put a timer on a page; the timer calls a controller function (imaginatively called 'tick') every second, which in turn updates a div on the page via Ajax. So far, so good.
I want the 'tick' controller function to be able to stop/disable the timer under certain circumstances. I can do this interactively from a link that results in the whole page being refreshed, but not from the tick function; I think that's because the clienttools page.ready() function is only called on initial page load, not from when an Ajax update completes. Bits of code: to set up the timer: callback = js.call_function(tick) page.ready(js.timer(callback,1000)) ...which works. Calling this from 'tick': page.ready(js.stop_timer(request.var.timer_id)) ...doesn't stop the timer (the request.vars.timer_id is valid). Is there a way of stopping the js timer from an Ajax call? Alternatively, is there a better way of calling 'tick' to update a page every second? -- "You can have everything in life you want if you help enough other people get what they want" - Zig Ziglar. Who did you help today?