/*  jQTP - jQuery Time Picker v0.1
 *  jQTP is distributed under the terms of the MIT license
 *  For more information visit http://jqframework.com/jqtp
 *  Copyright (C) 2009  jqframework.com
 * Do not remove this copyright message
 */

$.jQTP={clocksize:135,pi:Math.PI,hrlen:32,minlen:50,seclen:45,marker:[],stop:false,return_id:"",jqtp_hr_obj:"jqtp_clock_hr",jqtp_min_obj:"jqtp_clock_min",init:function(id){var str='<div id="clock_hr"></div><div id="clock_min"></div><div id="clock_sec"></div>';
$("#"+id).append(str);
for(var i=1;
i<=this.marker.length;
i++){var str='<div id="jqtp_marker'+i+'" class="jqtp_marker" style="visibility:hidden;">'+i+"</div>";
$("#clock_layout").append(str)
}for(i=1;
i<=this.seclen;
i++){var str='<div class="jqtp_sec" id="jqtp_sec'+i+'" style="visibility:hidden;">-</div>';
$("#clock_sec").append(str)
}for(i=1;
i<=this.minlen;
i++){var str='<div class="jqtp_min" id="jqtp_min'+i+'" style="visibility:hidden;">-</div>';
$("#clock_min").append(str)
}for(i=1;
i<=this.minlen;
i++){var str='<div class="jqtp_hr" id="jqtp_hr'+i+'" style="visibility:hidden;">-</div>';
$("#clock_hr").append(str)
}$(".jqtp_marker").bind("click",function(){$.jQTP.stop=false;
$("#"+$.jQTP.jqtp_hr_obj).val((this.id).substr(11));
$("#"+$.jQTP.jqtp_min_obj).val(0);
$.jQTP.changeTime()
});
$(".jqtp_hr").bind("click",function(){$.jQTP.stop=false;
var curr_hr=parseInt($("#"+$.jQTP.jqtp_hr_obj).val());
curr_hr=(curr_hr+1)%24;
$("#"+$.jQTP.jqtp_hr_obj).val(curr_hr);
$("#"+$.jQTP.jqtp_min_obj).val(0);
$.jQTP.changeTime()
});
$(".jqtp_min").bind("click",function(){$.jQTP.stop=false;
var curr_min=parseInt($("#"+$.jQTP.jqtp_min_obj).val());
var next_min=15-(curr_min%15)+curr_min;
if(next_min==curr_min){next_min=next_min+15
}if(next_min>=60){var curr_hr=parseInt($("#"+$.jQTP.jqtp_hr_obj).val());
curr_hr=(curr_hr+1)%24;
$("#"+$.jQTP.jqtp_hr_obj).val(curr_hr);
next_min=next_min-60
}$("#"+$.jQTP.jqtp_min_obj).val(next_min);
$.jQTP.changeTime()
});
for(var i=1;
i<=this.marker.length;
i++){$("#jqtp_marker"+i).css("top",(5+(this.clocksize/2)+(this.clocksize/2)*Math.sin(((i*30+270)%360)*this.pi/180))+"px");
$("#jqtp_marker"+i).css("left",(10+(this.clocksize/2)+(this.clocksize/2)*Math.cos(((i*30+270)%360)*this.pi/180))+"px");
$("#jqtp_marker"+i).css("visibility","visible")
}this.setHourObj(this.jqtp_hr_obj);
this.setMinObj(this.jqtp_min_obj);
$.jQTP.redrawClock(new Date())
},setHourObj:function(id){$.jQTP.jqtp_hr_obj=id;
$("#"+id).unbind("change");
$("#"+id).bind("change",function(){$.jQTP.changeTime()
});
$("#"+id).unbind("focus");
$("#"+id).bind("focus",function(){$.jQTP.stopClock()
})
},setMinObj:function(id){$.jQTP.jqtp_min_obj=id;
$("#"+id).unbind("change");
$("#"+id).bind("change",function(){$.jQTP.changeTime()
});
$("#"+id).unbind("focus");
$("#"+id).bind("focus",function(){$.jQTP.stopClock()
})
},changePointer:function(id,len,pos){for(var i=1;
i<=len;
i++){$("#"+id+i).css("top",(20+(this.clocksize/2)+i*Math.sin(pos))+"px");
$("#"+id+i).css("left",(18.5+(this.clocksize/2)+i*Math.cos(pos))+"px");
$("#"+id+i).css("visibility","visible")
}},changeTime:function(){var curr_time=new Date();
curr_time.setHours($("#"+$.jQTP.jqtp_hr_obj).val());
curr_time.setMinutes($("#"+$.jQTP.jqtp_min_obj).val());
curr_time.setSeconds(0);
stop=true;
$.jQTP.redrawClock(curr_time)
},redrawClock:function(curr_time){var minute=curr_time.getMinutes();
var hour=curr_time.getHours();
if(hour!=$("#"+$.jQTP.jqtp_hr_obj).val()){$("#"+$.jQTP.jqtp_hr_obj).val(hour)
}if(minute!=$("#"+$.jQTP.jqtp_min_obj).val()){$("#"+$.jQTP.jqtp_min_obj).val(minute)
}var minute1=(((minute/60)*360+270)%360)*this.pi/180;
$.jQTP.changePointer("jqtp_min",this.minlen,minute1);
var hour1=((((hour%12)/12)*360+270)%360)*this.pi/180;
$.jQTP.changePointer("jqtp_hr",this.hrlen,hour1+minute/360*this.pi)
},currentTime:function(){var curr_time=new Date();
$.jQTP.redrawClock(curr_time);
var second=curr_time.getSeconds();
var second1=(((second/60)*360+270)%360)*this.pi/180;
$.jQTP.changePointer("jqtp_sec",this.seclen,second1)
},stopClock:function(){$.jQTP.stop=false
},getTime:function(){var hour=parseInt($("#"+$.jQTP.jqtp_hr_obj).val());
var minute=parseInt($("#"+$.jQTP.jqtp_min_obj).val());
if(hour<10){hour="0"+hour
}if(minute<10){minute="0"+minute
}$("#"+$.jQTP.return_id).val(hour+":"+minute)
},realClock:function(){if(!$.jQTP.stop){$.jQTP.currentTime();
setTimeout("$.jQTP.realClock()",100)
}}};
$.fn.extend({jqtp:function(){return this.each(function(){$.jQTP.init(this.id)
})
},jqtp_setHour:function(){return this.each(function(){$.jQTP.setHourObj(this.id)
})
},jqtp_setMin:function(){return this.each(function(){$.jQTP.setMinObj(this.id)
})
},jqtp_realtime:function(){return this.each(function(){$.jQTP.stop=false;
$.jQTP.realClock()
})
},jqtp_reset:function(){return this.each(function(){$.jQTP.redrawClock(new Date())
})
},jqtp_getTime:function(){return this.each(function(){$.jQTP.getTime()
})
},jqtp_object:function(){return this.each(function(){$.jQTP.return_id=this.id
})
}});