class window.Search showSpinner: -> $('#search').attr(disabled: 'disabled').blur() $('#autocomplete-container').hide() $('#artist-load-spinner').show() this.hideSuggestions() false hideSpinner: -> $('#search').val("").removeAttr 'disabled' $('#artist-load-spinner').hide() false loadArtistData: (name) -> _search.showSpinner() name = name.split(' ').join('+') $.get '/artist/' +name+ '/', (data) -> if data.status in ['ok', 'loading'] _ajax.setArchor '/artist/' +name+ '/' _page.print data.html _search.hideSpinner() if data.status is 'loading' setTimeout () -> _search.loadArtistData name , 5000 else if data.status is 'corrected' _search.loadArtistData data.correct_name else if data.status is 'suggestions' _search.hideSpinner() _page.print data.html else if data.status == 'fail' _search.hideSpinner() _page.print data.html false showSuggestions: (values) -> for item in values $('.suggestions ul').append '
  • ' +item.name+ ' ' +(if item.desc? then '
    '+item.desc+'' else '')+ '
  • ' $('.suggestions').show() false hideSuggestions: -> $('.suggestions ul li').remove() $('.suggestions').hide() false showArtistPics: (pics) -> $('.artist_loading.ok, .artist_pics').show() for pic in pics if @pics.indexOf(pic) == -1 @pics.push(pic); $('.artist_pics').append '
    ' false showError: -> $('.artist_loading.ok, .artist_pics').hide() $('.artist_loading.failed').show() @pics = [] $('.search').live 'click', -> if $('.pulldown').css('display') is 'none' $('.pulldown').width $('.data-container').width() - 50 $('.pulldown').height 300#38 $('.pulldown').slideDown 'fast', -> data = '
    '+$('.subpages .search-container').html()+'
    ' _pages.renderSearch _beathaven.localizeHTML $(data) _beathaven.adjustSizes() _beathaven.redrawScrollbar() else $('.pulldown').slideUp 'fast', -> $('.pulldown').height 0 _beathaven.adjustSizes() _beathaven.redrawScrollbar() false $('#search-form').live 'submit', -> $('#autocomplete-container').remove() _search.loadArtistData $('#search').val() false $('.data.artist').live 'click', -> _search.loadArtistData $(this).html() false