### codetube
    Copyright (C) 2011 payload payload@lavabit.com
    Copyright (C) 2011 dodo dodo.the.last@gmail.com

    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU Affero General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU Affero General Public License for more details.

    You should have received a copy of the GNU Affero General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>
###

{ View } = require './skeleton'

class BlobIndexView extends View
    template: (args...) ->
        lift.call 'blob-index', args...

    highlight: =>
        i = @model.get 'index'
        $('.text-blob .selected').each ->
            $(this).removeClass 'selected'
        $("#L#{i}, #I#{i}").each ->
            $(this).addClass 'selected'
        $('body').scrollTop oldval = $("#I#{i}").position().top
        interval = setInterval ( ->
            val = $("#I#{i}").position().top
            return clearInterval interval if val is oldval
            $('body').scrollTop oldval = val
        ), 100
        this

    render: =>
        super
        @el.click @highlight
        @highlight() if window.location.hash is "#L#{@model.get 'index'}"


module.exports = { BlobIndexView }

