Rushabh Mehta | 12852e7 | 2012-02-29 15:11:06 +0530 | [diff] [blame] | 1 | wn.pages['activity'].onload = function(wrapper) { |
| 2 | var list = new wn.widgets.Listing({ |
| 3 | method: 'home.page.activity.activity.get_feed', |
| 4 | parent: $('#activity-list'), |
| 5 | render_row: function(row, data) { |
| 6 | new erpnext.ActivityFeed(row, data); |
| 7 | } |
| 8 | }); |
| 9 | list.run(); |
| 10 | } |
| 11 | |
| 12 | erpnext.last_feed_date = false; |
| 13 | erpnext.ActivityFeed = Class.extend({ |
| 14 | init: function(row, data) { |
| 15 | this.scrub_data(data); |
| 16 | this.add_date_separator(row, data); |
| 17 | $(row).append(repl('<span %(onclick)s\ |
| 18 | class="label %(add_class)s">%(feed_type)s</span>\ |
| 19 | %(link)s %(subject)s <span class="user-info">%(by)s</span>', data)); |
| 20 | }, |
| 21 | scrub_data: function(data) { |
| 22 | data.by = wn.boot.user_fullnames[data.owner]; |
| 23 | |
| 24 | // feedtype |
| 25 | if(!data.feed_type) { |
| 26 | data.feed_type = get_doctype_label(data.doc_type); |
| 27 | data.add_class = "label-info"; |
| 28 | data.onclick = repl('onclick="window.location.href=\'#!List/%(feed_type)s\';"', data) |
| 29 | } |
| 30 | |
| 31 | // color for comment |
| 32 | if(data.feed_type=='Comment') { |
| 33 | data.add_class = "label-important"; |
| 34 | } |
| 35 | |
Rushabh Mehta | 79ae165 | 2012-02-29 15:23:25 +0530 | [diff] [blame^] | 36 | if(data.feed_type=='Assignment') { |
Rushabh Mehta | 1572adf | 2012-02-29 15:19:20 +0530 | [diff] [blame] | 37 | data.add_class = "label-warning"; |
| 38 | } |
| 39 | |
Rushabh Mehta | 12852e7 | 2012-02-29 15:11:06 +0530 | [diff] [blame] | 40 | // link |
| 41 | if(data.doc_name && data.feed_type!='Login') { |
| 42 | data.link = repl('<a href="#!Form/%(doc_type)s/%(doc_name)s">%(doc_name)s</a>', data) |
| 43 | } |
| 44 | }, |
| 45 | add_date_separator: function(row, data) { |
| 46 | var date = dateutil.str_to_obj(data.modified); |
| 47 | var last = erpnext.last_feed_date; |
| 48 | |
| 49 | if((last && dateutil.get_diff(last, date)>1) || (!last)) { |
| 50 | var pdate = dateutil.comment_when(date); |
| 51 | var diff = dateutil.get_diff(new Date(), date); |
| 52 | if(diff < 1) { |
| 53 | pdate = 'Today'; |
| 54 | } else if(diff > 6) { |
| 55 | pdate = dateutil.global_date_format(date); |
| 56 | } |
| 57 | $(row).html(repl('<div class="date-sep">%(date)s</div>', {date: pdate})); |
| 58 | } |
| 59 | erpnext.last_feed_date = date; |
| 60 | } |
| 61 | }) |