     @popup.find("#reserver_user_onid[type=text]").focus()
     $.getJSON("/availability/#{room_id}/#{end_time.toISOString()}.json", (result) =>
       availability = result.availability
-      this.build_slider(start_time, end_time, max_reservation, availability)
+      this.build_slider(start_time, end_time, max_reservation, availability, new_time)
       this.position_popup(event.pageX, event.pageY)
       @popup.show()
     )
+  get_relative_start_time: (start_time, end_time, event) ->
+    offset = Math.floor(event.offsetY*3/10)*10
+    new_time = start_time.clone().add("minutes", offset)
+    if new_time < end_time
+      return new_time
+    else
+      return start_time
   populate_update_popup: (room_element, start_time, end_time, event) ->
     $(".popup").hide()
     this.hide_popup()

      min: 0
      max: maximum
      slide: this.slid
      values: [0, max_reservation/60/10-1]
    )
    this.slid(1, {values: [0, max_reservation/60/10]})
    @popup.show()
  slid: (event, ui) =>
    start = ui.values[0]

    room_id = room_element.data("room-id")
    room_name = room_element.data("room-name")
    max_reservation = User.current().get_value("maxReservation")
    new_time = this.get_relative_start_time(start_time, end_time, event)
    return if !max_reservation?
    @popup.find("#room-name").text(room_name)
    @popup.find("#reserver_room_id").val(room_id)
