(function($) {
   $.fn.jclock = function(options) {
     var version = '1.2.0';
     var opts = $.extend({}, $.fn.jclock.defaults, options);
     return this.each(function() {
      $this = $(this);
      $this.timerID = null;
      $this.running = false;
      var o = $.meta ? $.extend({}, opts, $this.data()) : opts;
      $this.timeNotation = o.timeNotation;
      $this.am_pm = o.am_pm;
      $this.utc = o.utc;
      $this.utc_offset = o.utc_offset;
       $this.css({
        fontFamily: o.fontFamily,
        fontSize: o.fontSize,
        backgroundColor: o.background,
        color: o.foreground
      });
       $.fn.jclock.startClock($this);
     });
  };
  $.fn.jclock.startClock = function(el) {
    $.fn.jclock.stopClock(el);
    $.fn.jclock.displayTime(el);
  }
  $.fn.jclock.stopClock = function(el) {
    if(el.running) {
      clearTimeout(el.timerID);
    }
    el.running = false;
  }
  $.fn.jclock.displayTime = function(el) {
    var time = $.fn.jclock.getTime(el);
	el.timerID = setTimeout(function(){$.fn.jclock.displayTime(el)},1000);
 
	//var timeSplit = time.split('||');
	//el.html(timeSplit[1]);
    //if(timeSplit[1]==60){
 	//}
  }
   $.fn.jclock.getTime = function(el) {
    var now = new Date();
    var hours, minutes, seconds;
     if(el.utc == true) {
      var localTime = now.getTime();
      var localOffset = now.getTimezoneOffset() * 60000;
      var utc = localTime + localOffset;
      var utcTime = utc + (3600000 * el.utc_offset);
      now = new Date(utcTime);
    }
    hours = now.getHours();
    minutes = now.getMinutes();
    seconds = now.getSeconds();
	var am_pm_text = '';
    (hours >= 12) ? am_pm_text = "_PM" : am_pm_text = "_AM";
     if (el.timeNotation == '12h') {
      hours = ((hours > 12) ? hours - 12 : hours);
    } else if (el.timeNotation == '12hh') {
      hours = ((hours > 12) ? hours - 12 : hours);
      hours   = ((hours <  10) ? "0" : "") + hours;
    } else {
      hours   = ((hours <  10) ? "0" : "") + hours;
    }
    minutes = ((minutes <  10) ? "0" : "") + minutes;
    seconds = ((seconds <  10) ? "0" : "") + seconds;
    // var timeNow = hours + ":" + minutes + ":" + seconds;
     var timeNow = hours + ":" + minutes;
     if ( (el.timeNotation == '12h' || el.timeNotation == '12hh') && (el.am_pm == true) ) {
     timeNow += am_pm_text;
    } 
	 if($('.clock').html() =='00:00' || (seconds>=0 && seconds<2)){
		$('.clock').html(timeNow);
  		$('.clock').sifr({path: 'http://eterna-bali.com/sifr/fonts/', font: 'Futura', color:'#fff'});
 	 }
     return timeNow;
  };
  $.fn.jclock.defaults = {
    timeNotation: '12hh',
    am_pm: true,
    utc: false,
    fontFamily: '',
    fontSize: '',
    foreground: '',
    background: '',
    utc_offset: 0
  };
})(jQuery);

