diff --git a/Gemfile b/Gemfile index 6863a70..07cc83c 100644 --- a/Gemfile +++ b/Gemfile @@ -14,8 +14,8 @@ gem 'barista' gem 'awesome_print', :require => 'ap' gem 'delayed_job' -gem 'lastfm-client', :git => 'http://github.com/magnolia-fan/lastfm-client.git' -gem 'musicbrainz', '~> 0.4.3' +gem 'lastfm-client', :git => 'http://github.com/pch/lastfm-client.git' +gem 'musicbrainz' gem 'bitmask_attributes' diff --git a/Gemfile.lock b/Gemfile.lock index e8b6c2b..80af4b9 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,6 +1,6 @@ GIT - remote: http://github.com/magnolia-fan/lastfm-client.git - revision: 26fec825943d0bb77606bf058386e786ee97572b + remote: http://github.com/pch/lastfm-client.git + revision: d17806722c1da685f7d2f283b0064cb92eb96965 specs: lastfm-client (0.0.2) json (>= 1.4.6) @@ -128,7 +128,7 @@ DEPENDENCIES haml json lastfm-client! - musicbrainz (~> 0.4.3) + musicbrainz nokogiri pg rails (= 3.1.0) diff --git a/app/assets/javascripts/ajax.coffee b/app/assets/javascripts/ajax.coffee index 905be2b..3355629 100644 --- a/app/assets/javascripts/ajax.coffee +++ b/app/assets/javascripts/ajax.coffee @@ -9,12 +9,12 @@ class window.Ajax loadIndexPage: -> $('#content').load '/greetings/' + _ajax.setTitle '' false loadAboutPage: -> - $.get '/templates/about.html', (data) -> - _page.renderTextpage data - _ajax.setTitle 'About' + $('#content').load '/about/' + _ajax.setTitle 'About' false setArchor: (anchor) -> @@ -34,14 +34,12 @@ class window.Ajax detectPage: () -> if m = _ajax.getAnchor().match /\/artist\/(.+)\// _search.loadArtistData m[1] - else if _ajax.getAnchor() == '' - _ajax.loadIndexPage(); else if _ajax.getAnchor().match /\/settings\// _settings.loadSettingsPage() else if _ajax.getAnchor().match /\/about\// _ajax.loadAboutPage() else - #_ajax.loadSearchPage() + _ajax.loadIndexPage(); false $(window).bind 'hashchange', -> diff --git a/app/assets/javascripts/page.coffee b/app/assets/javascripts/page.coffee index c1ee9bc..65bcc1b 100644 --- a/app/assets/javascripts/page.coffee +++ b/app/assets/javascripts/page.coffee @@ -29,6 +29,9 @@ class window.Page false $ -> + $('#logo').live 'click', -> + _ajax.go '/' + false $('.about').live 'click', -> _ajax.go '/about/' false diff --git a/app/assets/javascripts/player.coffee b/app/assets/javascripts/player.coffee index 9c9b9ae..0d42ada 100644 --- a/app/assets/javascripts/player.coffee +++ b/app/assets/javascripts/player.coffee @@ -147,10 +147,10 @@ class window.Player false onShuffle: -> - #return $('#shuffle').hasClass 'active' + return $('.shuffle').hasClass 'on' onRepeat: -> - #return $('#repeat').hasClass 'active' + return $('.repeat').hasClass 'on' updateNowListening: (track) -> if _session.getUser().lastfm_username @@ -184,11 +184,11 @@ $('.player .progress').live 'click', (e) -> # Player Additional Controls -$('#repeat, #shuffle').live 'click', -> - $(this).toggleClass 'active' +$('.repeat, .shuffle').live 'click', -> + $(this).toggleClass 'on' false -$('#empty-playlist').live 'click', -> +$('.do_empty').live 'click', -> if confirm('Are you sure?') $('.playlist li').remove() $('#jplayer').jPlayer 'clearMedia' diff --git a/app/assets/javascripts/search.coffee b/app/assets/javascripts/search.coffee index a1effa6..decbbc9 100644 --- a/app/assets/javascripts/search.coffee +++ b/app/assets/javascripts/search.coffee @@ -19,8 +19,10 @@ class window.Search if data.status in ['ok', 'loading'] _ajax.setArchor '/artist/' +name+ '/' _page.print data.html - for album in data.albums - _player.albums[album.id] = album + if _session.getUser().id + for album in data.albums + _player.albums[album.id] = album + $('.button-container').show() _search.hideSpinner() if data.status is 'loading' setTimeout () -> diff --git a/app/assets/javascripts/vkontakte.coffee b/app/assets/javascripts/vkontakte.coffee index 3fe62d4..f9f07fd 100644 --- a/app/assets/javascripts/vkontakte.coffee +++ b/app/assets/javascripts/vkontakte.coffee @@ -132,8 +132,8 @@ $('#login').live 'click', -> , 8 false $('#logout').live 'click', -> - _ajax.go '/search/'; VK.Auth.logout (response) -> _vkontakte.authInfo(response) + $('.button-container').hide() false false diff --git a/app/assets/stylesheets/albums.scss b/app/assets/stylesheets/albums.scss index ae85418..9805228 100644 --- a/app/assets/stylesheets/albums.scss +++ b/app/assets/stylesheets/albums.scss @@ -19,6 +19,7 @@ max-width: 220px; } .button-container { + display: none; text-align: center; margin-top: 10px; } diff --git a/app/assets/stylesheets/player.scss b/app/assets/stylesheets/player.scss index b5e75fc..2b19f9e 100644 --- a/app/assets/stylesheets/player.scss +++ b/app/assets/stylesheets/player.scss @@ -34,6 +34,24 @@ } } } + .secondary-buttons { + margin: 10px 0; + text-align: center; + a { + font-size: 11px; + color: #cacaca; + font-weight: bold; + text-decoration: none; + cursor: pointer; + + &:hover { + color: #b0b0b0; + } + &.on { + color: #606060; + } + } + } } .playlist { diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index 881fe78..6ac1097 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -11,6 +11,10 @@ class ApplicationController < ActionController::Base render :partial => 'greetings' end + def about + render :partial => 'about' + end + protected def authorize diff --git a/app/views/application/_about.en.html.haml b/app/views/application/_about.en.html.haml new file mode 100644 index 0000000..21d4cf7 --- /dev/null +++ b/app/views/application/_about.en.html.haml @@ -0,0 +1,13 @@ +%h2 Write us a letter! +%br +.row + .span3 + %address + %strong Site issues? + %br + %a{ :href => "mailto:support@beathaven.org" } support@beathaven.org + .span6 + %address + %strong Everything else (suggestions, compliments, threats) + %br + %a{ :href => "mailto:contact@beathaven.org" } contact@beathaven.org \ No newline at end of file diff --git a/app/views/application/_about.ru.html.haml b/app/views/application/_about.ru.html.haml new file mode 100644 index 0000000..9fc8bf6 --- /dev/null +++ b/app/views/application/_about.ru.html.haml @@ -0,0 +1,13 @@ +%h2 Напишите нам письмо! +%br +.row + .span3 + %address + %strong Проблемы с сайтом? + %br + %a{ :href => "mailto:support@beathaven.org" } support@beathaven.org + .span6 + %address + %strong Все остальное (пожелания, благодарности, угрозы) + %br + %a{ :href => "mailto:contact@beathaven.org" } contact@beathaven.org \ No newline at end of file diff --git a/app/views/application/_greetings.en.html.haml b/app/views/application/_greetings.en.html.haml new file mode 100644 index 0000000..4a346a2 --- /dev/null +++ b/app/views/application/_greetings.en.html.haml @@ -0,0 +1 @@ +%h2 Halló! \ No newline at end of file diff --git a/app/views/application/_greetings.ru.html.haml b/app/views/application/_greetings.ru.html.haml index 4628499..196a8bb 100644 --- a/app/views/application/_greetings.ru.html.haml +++ b/app/views/application/_greetings.ru.html.haml @@ -1 +1 @@ -%h1 Привет! \ No newline at end of file +%h2 Привет! \ No newline at end of file diff --git a/app/views/layouts/application.html.haml b/app/views/layouts/application.html.haml index 4df60a6..36bb410 100644 --- a/app/views/layouts/application.html.haml +++ b/app/views/layouts/application.html.haml @@ -15,10 +15,10 @@ .topbar-inner .container %h3 - %a{ :href => "#/" } BeatHaven + %a#logo{ :href => "#/" } BeatHaven %ul.nav %li - %a{ :href => "http://blog.beathaven.org/" }= I18n.t 'global.news' + %a{ :href => "http://blog.beathaven.org/", :target => "_blank" }= I18n.t 'global.news' %li %a.about{ :href => "#/about/" }= I18n.t 'global.about' %form#search-form{ :action => "" } @@ -61,6 +61,10 @@ %a.btn.large.play ► %a.btn.large.pause II %a.btn.small-round.next » + .secondary-buttons + %a.shuffle= (I18n.t 'player.shuffle').upcase + %a.repeat= (I18n.t 'player.repeat').upcase + %a.do_empty= (I18n.t 'player.do_empty').upcase %ul.playlist diff --git a/config/locales/en.yml b/config/locales/en.yml index 28e6318..5086dbf 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -7,9 +7,6 @@ en: logout: "Log out" do_add: "Add some music to playlist" do_login: "Don't forget to log in, please. It's simple." - repeat: "Repeat" - shuffle: "Shuffle" - do_empty: "Empty playlist" hello: "Hi there" settings: "Settings" your_ad_here: "Your ad couldn't
be here" @@ -48,4 +45,7 @@ en: reload_alert: "To change application language it is needed to reload page. Your current playlist will be emptied and music will stop. Do you really wish to continue?" player: - add: "Add to Now Playing" \ No newline at end of file + add: "Add to Now Playing" + repeat: "Repeat" + shuffle: "Shuffle" + do_empty: "Empty" \ No newline at end of file diff --git a/config/locales/ru.yml b/config/locales/ru.yml index d0f2fd4..b9e12d7 100644 --- a/config/locales/ru.yml +++ b/config/locales/ru.yml @@ -7,9 +7,6 @@ ru: logout: "Выйти" do_add: "Добавьте музыку в плей-лист" do_login: "Авторизуйтесь, пожалуйста. Это действительно просто." - repeat: "Повторять" - shuffle: "Перемешать" - do_empty: "Очистить" hello: "Привет" settings: "Настройки" your_ad_here: "Здесь не могла бы
быть Ваша реклама" @@ -48,4 +45,7 @@ ru: reload_alert: "Чтобы изменить язык приложения, необходимо перезагрузить страницу. Ваш текущий плей-лист будет очищен и музыка остановится. Вы действительно хотите продолжить?" player: - add: "Добавить в плей-лист" \ No newline at end of file + add: "Добавить в плей-лист" + repeat: "Повторять" + shuffle: "Перемешать" + do_empty: "Очистить" \ No newline at end of file diff --git a/config/routes.rb b/config/routes.rb index 776864d..ba3142f 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -58,6 +58,7 @@ Beathaven::Application.routes.draw do match '/' => 'application#index' match '/greetings/' => 'application#greetings' + match '/about/' => 'application#about' match 'user/auth' => 'user#auth' match 'user/update' => 'user#update'