From 6d4696faf0d3b1c16c5441e9d1d27ba9adb9f436 Mon Sep 17 00:00:00 2001 From: maxwell Date: Mon, 20 Dec 2010 18:05:08 -0800 Subject: [PATCH] MS DG notifications are now pretty decent --- app/controllers/notifications_controller.rb | 1 + app/views/notifications/index.html.haml | 49 +++++++++++++------- public/images/icons/mail_big.png | Bin 0 -> 6494 bytes public/stylesheets/sass/application.sass | 16 +++++++ 4 files changed, 48 insertions(+), 18 deletions(-) create mode 100644 public/images/icons/mail_big.png diff --git a/app/controllers/notifications_controller.rb b/app/controllers/notifications_controller.rb index 2be753d14..3fc8f5a90 100644 --- a/app/controllers/notifications_controller.rb +++ b/app/controllers/notifications_controller.rb @@ -22,4 +22,5 @@ class NotificationsController < ApplicationController @group_days = @notifications.group_by{|note| note.created_at.strftime("%B %d") } respond_with @notifications end + end diff --git a/app/views/notifications/index.html.haml b/app/views/notifications/index.html.haml index 28c5d7e6d..0df4f64a0 100644 --- a/app/views/notifications/index.html.haml +++ b/app/views/notifications/index.html.haml @@ -1,21 +1,34 @@ :javascript - $('.note a').live('click', function(evt){ - var note_id = $(this).closest('.note').attr('id'); - $.ajax({ - url: 'notifications/' + note_id, - type: 'PUT' - }); + $('.message').live('click', function(evt){ + var note = $(this).closest('.message'), + note_id = note.attr('data-guid'); + + if(note.hasClass('unread') ){ + note.removeClass('unread'); + $.ajax({ + url: 'notifications/' + note_id, + type: 'PUT' + }); + } }); -%ul.notes - - @group_days.each do |day, notes| - %h3 - %ul - %li - = day - - notes.each do |note| - %li.note{:id => note.id} - %h4{:class => "#{note.unread ? 'unread' : ''}"} - = link_to "#{note.person.name.titleize}", person_path(note.person) - = object_link(note) - %span.description=" #{t('ago', :time => time_ago_in_words(note.created_at))}" + +.span-1 + = image_tag 'icons/mail_big.png', :height => 30, :width => 30, :style=>"margin-top:3px;" +.span-23.last + %h2 + Notifications + +.span-24.last + %ul.stream.notifications + - @group_days.each do |day, notes| + %li + %h4= day + %ul.notifications_for_day + - notes.each do |note| + %li.message{:data=>{:guid => note.id}, :class => "#{note.unread ? 'unread' : ''}"} + %span.from + = link_to "#{note.person.name.titleize}", person_path(note.person) + = object_link(note) + + %span.time= "#{t('ago', :time => time_ago_in_words(note.created_at))}" diff --git a/public/images/icons/mail_big.png b/public/images/icons/mail_big.png new file mode 100644 index 0000000000000000000000000000000000000000..c3e181789ef786eaf4579b5aa2448e79ccf622e8 GIT binary patch literal 6494 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 T5g~s7D;i*7YJ)2@@i_JmSwDGR literal 0 HcmV?d00001 diff --git a/public/stylesheets/sass/application.sass b/public/stylesheets/sass/application.sass index e2d2c542c..d30b5513f 100644 --- a/public/stylesheets/sass/application.sass +++ b/public/stylesheets/sass/application.sass @@ -2134,3 +2134,19 @@ h3,h4 :top 6px :right 0 +ul.notifications_for_day + + :margin 0 + :padding 0 + + li.message + :margin + :bottom 0.3em + :padding 0.2em 0.5em + :width 500px + +.stream.notifications + > li:hover + :background none + :border + :bottom 1px solid #eee