﻿

$(function()
{

                       $('a[name=addcountdown]').live('click',function()
                       {
                            var eleBtn = this;
//                            if(!validate(this.name))
//                            {
//                                return false;
//                            }
                          
                            var el;
                            var dtSend='';
                            var dtDate = '';
                            el = document.getElementsByName('addcountdown');//take all runtime generated html control based on name
                            for(i=0; i<el.length; i++)
                            {
                                if(el[i].type == 'text')
                                {
                                   if(el[i].value=='') 
                                   {
                                       jAlert('Please fill ' + el[i].title + '.', 'Alert Dialog',function(r){if(r == true){el[i].focus();}});
                                       //el[i].focus();
                                       return false;
                                   }
                                   else
                                   {
                                        dtSend += el[i].id + "~" + el[i].value;
                                        dtSend += ",";
                                   }
                                }
                                if(el[i].type == 'select-one')
                                {
                                    dtSend += el[i].id + "~" + el[i].options[el[i].selectedIndex].value;
                                    dtSend += ",";
                                    if(el[i].id == 'ddlHours')
                                    {
                                        dtDate += ' ' + el[i].options[el[i].selectedIndex].value;
                                    }
                                    if(el[i].id == 'ddlMinute')
                                    {
                                        dtDate += el[i].options[el[i].selectedIndex].value + ' ';
                                    }
                                    if(el[i].id == 'ddlampm')
                                    {
                                        dtDate += el[i].options[el[i].selectedIndex].value;
                                    }
                                }
                                
                            }
                            var endDate = new Date();
                            var cDate = new Date();
                            endDate.setTime(Date.parse($('#countdowntime').val() + dtDate));
                            if(endDate <= cDate)
                            {
                                jAlert('End Date and End Time cannot be less or equal to Current Date & Time', 'Alert Dialog',function(r){if(r == true){}});
                                return false;
                            }
                            $.ajax({
                                        type: "POST",     //GET, POST
                                        url: "countdown.aspx",           //Specify the page your requesting 
                                        data: { insert : dtSend },                  //equivalent to url parameter "msg=Hellow%20Nurse!" dtsend only we sending data by control or somethng else
                                        async: true,                            //default is asynchronous request can set to false
                                        cache: false,                          //default is false
                                        beforeSend:function()
                                        {
                                          
                                        },
                                        success: function(data)                  //returning data which return from cs file
                                        {  
                                            var finalResult = data.split('~');  //take ~ than finalresult become array 
                                            if(finalResult.length > 1 && finalResult[0] == 'success')          //length means how many string contain this array after split
                                            {
                                              var cData = finalResult[1].split('/');
                                              var t = '';
                                              var y = '';
                                              var m = '';
                                              var d = '';
                                              var h = '';
                                              var min = '';
                                              if(cData.length > 7)
                                              {
                                                t = cData[0];
                                                m = parseInt(cData[1]) - 1;
                                                d = cData[2];
                                                y = cData[3];
                                                if(cData[6] == 'am')
                                                    h = parseInt(cData[4]);
                                                else
                                                {
                                                    if(parseInt(cData[4]) == 12)
                                                        h = parseInt(cData[4]) + 11;
                                                    else
                                                        h = parseInt(cData[4]) + 12;
                                                }
                                                min = cData[5];
                                                
                                              }
                                              
                                              CreateNewCountdown(t,y,m,d,h,min,'59',cData[7]);
                                              $(eleBtn).parent().remove();
                                            }
                                            else
                                            {
                                                //alert(finalResult[1]);
                                                jAlert(finalResult[1], 'Alert Dialog',function(r){if(r == true){}});
                                            }  
                                              
                                        } 
                        
                                    });
                     });
                     
                    $('a[name=countdownsettings]').live('click',function(e)
                        {
                            e.preventDefault();
                            if($('.countDownSettingWrapper').length > 0)
                                return;
                            
                            $.ajax(
                                {  
                                    type: "POST",
                                    url: 'countdown.aspx?cntdwn=1',  // Send the login info to this page
                                    data: { msg : '' },    //equivalent to url parameter "msg=Hellow%20Nurse!"
                                    async: true,    //default is asynchronous request can set to false
                                    cache: false,
                                    success: function(data)
                                    {  
                                        $('body').append(data);
                                        $('.countDownSettingWrapper').css('top','150px').css('left','300px').css("z-index",jqWindowsEngineZIndex++).draggable({containment:'document',scroll: false});
                                        
                                    }
                                });  
                                
                                return false;
                        });
            
          
                
               //start On Off process 
                        
                $('.dvCountDownClose').live('click',function(e)
                        {
                            var obj1 = $(this);
                            var val = $(this).attr('rel');
                            jConfirm('Do you really want to close this countdown?', 'Confirm Dialog', 
				    	    function(r)
				    	    {
					            if(r==true)
					            {
					                $.ajax(
                                    {  
                                        type: "POST",
                                        url: 'countdown.aspx',  // Send the login info to this page
                                        data: { onoff : val },    //equivalent to url parameter "msg=Hellow%20Nurse!"
                                        async: true,    //default is asynchronous request can set to false
                                        cache: false,
                                        success: function(data)
                                        {  
                                            $('.dvCountDownWrapper[rel=' + val + ']').remove();
                                        }
                                    });  
					            }
					            else
					            {
					                return false;
					            }
        					});
                            
                        });
                
                
                
                $.fn.extend(
                {
                    CreateCountdown:function(options)
                    {
                        var defaults = 
                        {
                            title       : 'New Countdown',
                            fullyear    : 2010,
                            month       : 5,
                            date        : 1,
                            hours       : 6,
                            minutes     : 30,
                            seconds     : 30
                            
                        };
                        
                         
                        
                        var opts = $.extend(defaults, options);
                        
                        var targetTime = new Date();
		                targetTime.setDate(opts.date);
		                targetTime.setMonth(opts.month);
		                targetTime.setFullYear(opts.fullyear);
		                targetTime.setHours(opts.hours);
		                targetTime.setMinutes(opts.minutes);
		                targetTime.setSeconds(opts.seconds);

		                var nowTime = new Date();

		                var diffSecs = Math.floor((targetTime.valueOf()-nowTime.valueOf())/1000);
		                
		                //var _div_countdown = $('<div class="showCountdonw" ></div>').css('top','75px').css('left','25px');
		                
		                var doCountDown = function (diffSecs, obj)
		                {
		                    if (diffSecs <= 0)
		                    {
			                    diffSecs = 0;
		                    }

                            days = Math.floor(diffSecs / 86400);
                            hours = Math.floor((diffSecs / 3600) - (days*24));
                            mins = Math.floor((diffSecs/60)- (days * 1440) - (hours * 60));
		                    secs = diffSecs % 60;
            		        
                           
    
		                   $(obj).html('<div rel="' + opts.del + '" class="dvCountDownClose" title="Close"></div><div class="countTitle">' + opts.title + '</div><div class="countText">' + days + ' DAYS ' + hours + ' HRS ' + mins + ' MIN ' + secs + ' SEC</div>');

		                    if (diffSecs > 0)
		                    {
			                    setTimeout(function() { doCountDown((diffSecs-1),obj) } , 1000);
		                    }
		                    else
		                    {
		                        $(obj).html('<div rel="' + opts.del + '" class="dvCountDownClose" title="Close"></div><div class="countTitle">' + opts.title + '</div><div class="countText">Countdown is finished for </div>');
		                    }
		                }
		                
		                var setFocus = function($obj)
                        {
                            $obj.css("z-index",jqWindowsEngineZIndex++);
                        }
                        
                	    
	                    $(this).bind('mousedown', function(e)
	                    {
		                    $obj = $(e.target);
		                    setFocus($obj);
		                    
		                    if(this.className == 'dvCountDownWrapper ui-draggable')
                    		$(this).css('background','url(images/countDownBgDrag.png) no-repeat left top');
                    		
                            $(document).bind('mouseup', function(e)
                            {
	                            $(document).unbind('mousemove');
	                            if(this.className == 'dvCountDownWrapper ui-draggable')
	                            $(this).css('background','url(images/countDownBg.png) no-repeat left top');
                            });
                    	  
                        });
                        
                        $(this).hover(
                        
                            function(e)
	                        {
                    		    $(this).css('background','url(images/countDownBgOver.png) no-repeat left top');
                            },
                            function(e)
	                        {
                    		    $(this).css('background','url(images/countDownBg.png) no-repeat left top');
                            }
                    	  
                        );
                        
                        
                        
		                doCountDown(diffSecs , $(this));
		                
                    },
                    CloseCountdown:function()
                    {
                        $(this).remove();
                    }
                });
                
});

var countdownX = GetViewPort();
var countdownY = 0;

function CreateNewCountdown(t,y,m,d,h,min,s,del)
{
    if($('.dvCountDownWrapper').length > 4)
        return;
    var countCount= $('.dvCountDownWrapper').length;
    var options = 
    {
        title       : t,
        fullyear    : y,
        month       : m,
        date        : d,
        hours       : h,
        minutes     : min,
        seconds     : s,
        del         : del
        
    };
    if(countCount > 0)
    {
        countdownY = countdownY + 20;
    }
    var _div_Countdown = $(document.createElement('div')).addClass('dvCountDownWrapper').css('left', ((countdownX[1]/2)-150) + 'px').css('top', (((countdownX[0]/2)-50)+countdownY) + 'px').css('position','absolute').attr('rel',del);
    _div_Countdown.CreateCountdown(options);
    $( _div_Countdown).draggable({containment:'document',scroll: false});
    $('body').append(_div_Countdown);
}
