nippo_core 1.0.1 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 8121f2f4982272539b679e12bdb9143b56a99118
4
- data.tar.gz: dfc2bc990506baaae458a684aa4c8b8173e01153
3
+ metadata.gz: d740b3fb0e134e3bf2fc2fdfe45e78326cbc212b
4
+ data.tar.gz: d40f0b3012b3136e7a47d0e50f09a941e1b552ac
5
5
  SHA512:
6
- metadata.gz: d33fc7a2c54be643f929c757293dfda2041bf4a918767a348359bf950218d53319d800b472d384bbcd78c51fb3b98ead831480460b5e0e269303eddc6e0aabc8
7
- data.tar.gz: 636a8331474ab111b1fe8e40408258d8cbdcb1ada3950a8e0538aa45c66be50aad35785ec0bc0e881bb475ab05b72306956e6c907a98364a72a6d99c1c6d9498
6
+ metadata.gz: ee4336a7e4c54fb3d6b18323dbc9821f15d9d23faed43a9da3b0bfce1105e15468c998e4f8123d2f124b579febc14bcd254dc4f449dd615cfa7dacb4b5751ecc
7
+ data.tar.gz: 06b7dfe6c22b40c523c78831c9a440abe9a52a741003c61c0020b4bf209e53b4cc4cee25a32d851ae2ebe23060f74356a846cb4d1f3ae98776cc01800d596485
data/README.md CHANGED
@@ -1,6 +1,7 @@
1
1
  # NippoCore
2
2
  This is a daily report system gem for Rails application.
3
3
  Mount this system to yours, you can use daily report sharing system.
4
+ You can write with markdown format.
4
5
 
5
6
  ## Usage
6
7
 
@@ -52,7 +52,7 @@ module NippoCore
52
52
  end
53
53
 
54
54
  def group_params
55
- params.fetch(:group, {}).permit(:name, :description)
55
+ params.fetch(:group, {}).permit(:name, :description, :reported_at)
56
56
  end
57
57
  end
58
58
  end
@@ -43,8 +43,8 @@ module NippoCore
43
43
 
44
44
  private
45
45
  def initialize_report
46
- # TODO: selectable reported_at
47
- @report = @group.reports.find_by(id: params[:id]) || @group.reports.new(report_params.merge(reported_at: Date.today, user: current_user))
46
+ # TODO: integrate parmas[:report][:reported_at]
47
+ @report = @group.reports.find_by(id: params[:id]) || @group.reports.new(report_params.merge(reported_at: params.fetch(:report, {})[:reported_at] || Date.today, user: current_user))
48
48
  end
49
49
 
50
50
  def report_params
@@ -4,7 +4,8 @@ module NippoCore
4
4
 
5
5
  def show
6
6
  @created_groups = current_user.created_groups.order(created_at: :desc).limit(5)
7
- @joined_groups = current_user.groups.order(created_at: :desc).limit(3)
7
+ @joined_groups = current_user.joined_groups.order(created_at: :desc).limit(5)
8
+ @requesting_groups = current_user.requesting_groups.order(created_at: :desc).limit(5)
8
9
  end
9
10
  end
10
11
  end
@@ -7,7 +7,6 @@ module NippoCore
7
7
 
8
8
  has_many :created_groups, class_name: 'NippoCore::Group', foreign_key: 'creator_id', dependent: :destroy
9
9
  has_many :reports, dependent: :destroy
10
- has_many :groups, through: :group_member_relations
11
10
  has_many :group_member_relations, dependent: :destroy
12
11
 
13
12
  validates :last_name, presence: true
@@ -37,5 +36,18 @@ module NippoCore
37
36
  def request_to?(group)
38
37
  group_member_relations.exists?(group_id: group.id)
39
38
  end
39
+
40
+ # TODO: implement test
41
+ def joined_groups
42
+ NippoCore::Group.joins(:group_member_relations)
43
+ .where(nippo_core_group_member_relations: {user_id: id})
44
+ .where.not(nippo_core_group_member_relations: {accepted_at: nil})
45
+ end
46
+
47
+ # TODO: implement test
48
+ def requesting_groups
49
+ NippoCore::Group.joins(:group_member_relations)
50
+ .where(nippo_core_group_member_relations: {user_id: id, accepted_at: nil})
51
+ end
40
52
  end
41
53
  end
@@ -19,6 +19,41 @@
19
19
  - @members.each do |m|
20
20
  li.list-group-item
21
21
  = m.nickname
22
+ - if @group.member?(current_user)
23
+ section
24
+ h2
25
+ | Weekly Index
26
+ - week_start_day = Date.today.at_beginning_of_week.yesterday
27
+ table.table
28
+ thead
29
+ th.text-center
30
+ | メンバー
31
+ - 7.times do |d|
32
+ th.text-center*{class: week_start_day == Date.today ? 'warning' : nil}
33
+ = week_start_day + d
34
+ tbody
35
+ - # TODO: DRY
36
+ tr.info
37
+ td.text-center
38
+ = current_user.nickname
39
+ - 7.times do |d|
40
+ - report = @group.reports.find_by(user: current_user, reported_at: week_start_day + d)
41
+ td.text-center*{class: week_start_day + d === Date.today ? 'warning' : nil}
42
+ - if report.present?
43
+ = link_to '○', [@group, report]
44
+ - else
45
+ = link_to '×', new_group_report_path(group_id: @group.id, report: {reported_at: week_start_day + d})
46
+ - @group.members.where.not(id: current_user.id).each do |member|
47
+ tr
48
+ td.text-center
49
+ = member.nickname
50
+ - 7.times do |d|
51
+ - report = @group.reports.find_by(user: member, reported_at: week_start_day + d)
52
+ td.text-center*{class: week_start_day + d == Date.today ? 'warning' : nil}
53
+ - if report.present?
54
+ = link_to '○', [@group, report]
55
+ - else
56
+ | ×
22
57
  section
23
58
  - if @group.member?(current_user)
24
59
  section
@@ -1,4 +1,5 @@
1
1
  = form_for [report.group, report] do |f|
2
+ = f.hidden_field :reported_at
2
3
  .form-group
3
4
  = f.label :body
4
5
  = f.text_area :body, class: 'form-control'
@@ -2,7 +2,7 @@
2
2
  .panel.panel-default
3
3
  .panel-heading
4
4
  h1.panel-title
5
- = Date.today
5
+ = @report.reported_at
6
6
  |  
7
7
  = current_user.nickname
8
8
  .panel-body
@@ -34,3 +34,13 @@ section
34
34
  .btn-group
35
35
  = link_to 'more', '#', class: 'btn btn-link'
36
36
  = link_to 'join more', groups_path, class: 'btn btn-link'
37
+ section
38
+ h2
39
+ | Groups you request to join
40
+ ul.list-group
41
+ - @requesting_groups.each do |group|
42
+ li.list-group-item
43
+ = link_to group.name, group
44
+ .btn-group
45
+ = link_to 'more', '#', class: 'btn btn-link'
46
+ = link_to 'join more', groups_path, class: 'btn btn-link'
@@ -1,3 +1,3 @@
1
1
  module NippoCore
2
- VERSION = '1.0.1'
2
+ VERSION = '1.0.2'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nippo_core
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Takumu Uyama
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-04-25 00:00:00.000000000 Z
11
+ date: 2017-04-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails