class window.Page data: {} html: "" status: "" render: (params) -> @data = params.data @html = params.html @title = params.title @status = params.status log "Rendering page titled \"#{@title}\" with #{params.renderer} renderer ..." $('#content').html(@html) if params.callback? log "Executing page callback action #{params.callback.object}##{params.callback.action} ..." window["_"+params.callback.object][params.callback.action](@data) # yaCounter7596904.hit _ajax.getAnchor(), @title, _ajax.referer _ajax.setTitle @title false print: (html) -> $('#content').html(html) false renderArtist: (data) -> $('#content').html(data) yaCounter7596904.hit _ajax.getAnchor(), data.artist.name, _ajax.referer _ajax.setTitle data.artist.name false renderSearch: (data) -> $('.pulldown').html data setTimeout -> $('.search_field').first().bh_autocomplete serviceUrl: '/artist/autocomplete' # Страница для обработки запросов автозаполнения minChars: 2 # Минимальная длина запроса для срабатывания автозаполнения delimiter: /(,|;)\s*/ # Разделитель для нескольких запросов, символ или регулярное выражение maxHeight: 400 # Максимальная высота списка подсказок, в пикселях width: 415 # Ширина списка zIndex: 9999 # z-index списка deferRequestBy: 500 # Задержка запроса (мсек) onSelect: -> _ajax.loadArtistData $('.search_field').first().val() $('.search_field').first().focus() , 1 false $ -> $('body').live 'click', -> $('.dropdown-toggle, .menu').parent('li').removeClass('open') false $('.dropdown-toggle, .menu').live 'click', -> $(this).parent('li').toggleClass('open') false $('.dropdown-menu li a').live 'click', -> $(this).parent().parent().parent().toggleClass('open') false $('.page-link').live 'click', (e) -> _ajax.go $(this).attr("href") false $('.foreign-link').live 'click', (e) -> # window.open($(this).attr('href')) e.preventDefault(); false