From 04b57e49721482ce5d51c57a3a5e318a4a4d99a4 Mon Sep 17 00:00:00 2001 From: pramiti Date: Wed, 25 Oct 2017 10:27:18 +0800 Subject: [PATCH 1/5] award_badge_organised --- lib/tasks/award_badge_once.rake | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 lib/tasks/award_badge_once.rake diff --git a/lib/tasks/award_badge_once.rake b/lib/tasks/award_badge_once.rake new file mode 100644 index 00000000..21efef87 --- /dev/null +++ b/lib/tasks/award_badge_once.rake @@ -0,0 +1,30 @@ +namespace :award_badge_once do + desc "TODO" + task award_organized_badge: :environment do + @projects = Project.all + @edition = Edition.last + @projects.each do |project| + is_organised_flag = false + @edition.weeks.each do |week| + @tasks = project.tasks.where(week: week) + if (@tasks.count < 1) + is_organised_flag = true + break + end + end + if (is_organised_flag) + assign_organised_badge(project) + end + end + + end + + private + def assign_organised_badge(project) + unless project.mentee.badges.timekeeper.any? + project.mentee.badges << Badge.organized + end + end + +end + From 8136962dcf34845245d3fdfd483ae97d5b23ad9c Mon Sep 17 00:00:00 2001 From: pramiti Date: Wed, 25 Oct 2017 22:59:28 +0800 Subject: [PATCH 2/5] changes in rake --- lib/tasks/award_badge_once.rake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/tasks/award_badge_once.rake b/lib/tasks/award_badge_once.rake index 21efef87..71989663 100644 --- a/lib/tasks/award_badge_once.rake +++ b/lib/tasks/award_badge_once.rake @@ -4,11 +4,11 @@ namespace :award_badge_once do @projects = Project.all @edition = Edition.last @projects.each do |project| - is_organised_flag = false + is_organised_flag = true @edition.weeks.each do |week| @tasks = project.tasks.where(week: week) if (@tasks.count < 1) - is_organised_flag = true + is_organised_flag = false break end end From 704718d7d80730b9f4b139b4b4363e0eb8329718 Mon Sep 17 00:00:00 2001 From: pramiti Date: Wed, 25 Oct 2017 23:01:56 +0800 Subject: [PATCH 3/5] indentation --- lib/tasks/award_badge_once.rake | 25 ++++++++++++------------- 1 file changed, 12 insertions(+), 13 deletions(-) diff --git a/lib/tasks/award_badge_once.rake b/lib/tasks/award_badge_once.rake index 71989663..2c081aa4 100644 --- a/lib/tasks/award_badge_once.rake +++ b/lib/tasks/award_badge_once.rake @@ -5,25 +5,24 @@ namespace :award_badge_once do @edition = Edition.last @projects.each do |project| is_organised_flag = true - @edition.weeks.each do |week| - @tasks = project.tasks.where(week: week) - if (@tasks.count < 1) - is_organised_flag = false - break - end - end - if (is_organised_flag) - assign_organised_badge(project) - end + @edition.weeks.each do |week| + @tasks = project.tasks.where(week: week) + if (@tasks.count < 1) + is_organised_flag = false + break + end + end + if (is_organised_flag) + assign_organised_badge(project) + end end - end private def assign_organised_badge(project) unless project.mentee.badges.timekeeper.any? - project.mentee.badges << Badge.organized - end + project.mentee.badges << Badge.organized + end end end From c228d6783fbb5126c95cc1b3c401e2692b0cf15b Mon Sep 17 00:00:00 2001 From: pramiti Date: Wed, 25 Oct 2017 23:08:52 +0800 Subject: [PATCH 4/5] indentation --- lib/tasks/award_badge_once.rake | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/lib/tasks/award_badge_once.rake b/lib/tasks/award_badge_once.rake index 2c081aa4..194a8da8 100644 --- a/lib/tasks/award_badge_once.rake +++ b/lib/tasks/award_badge_once.rake @@ -11,18 +11,18 @@ namespace :award_badge_once do is_organised_flag = false break end - end - if (is_organised_flag) - assign_organised_badge(project) - end + end + if (is_organised_flag) + assign_organised_badge(project) + end end end private def assign_organised_badge(project) - unless project.mentee.badges.timekeeper.any? + unless project.mentee.badges.timekeeper.any? project.mentee.badges << Badge.organized - end + end end end From c9a18fa51226d0d81f2a001eee1f019bcbdb7095 Mon Sep 17 00:00:00 2001 From: pramiti Date: Wed, 25 Oct 2017 23:56:50 +0800 Subject: [PATCH 5/5] edit the query in the rake --- lib/tasks/award_badge_once.rake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/tasks/award_badge_once.rake b/lib/tasks/award_badge_once.rake index 194a8da8..95fa33d5 100644 --- a/lib/tasks/award_badge_once.rake +++ b/lib/tasks/award_badge_once.rake @@ -6,13 +6,14 @@ namespace :award_badge_once do @projects.each do |project| is_organised_flag = true @edition.weeks.each do |week| - @tasks = project.tasks.where(week: week) + @tasks = project.tasks.where(week: week.number) if (@tasks.count < 1) is_organised_flag = false break end end if (is_organised_flag) + print project.title assign_organised_badge(project) end end