diff --git a/app/controllers/projects_controller.rb b/app/controllers/projects_controller.rb index f3e5c653f..959744e86 100644 --- a/app/controllers/projects_controller.rb +++ b/app/controllers/projects_controller.rb @@ -4,7 +4,6 @@ class ProjectsController < ApplicationController include TeamsHelper include InputSanitizeHelper - before_action :generate_intro_demo, only: :index before_action :load_vars, only: %i(show edit update notifications reports samples experiment_archive @@ -348,14 +347,6 @@ class ProjectsController < ApplicationController private - include FirstTimeDataGenerator - - def generate_intro_demo - return unless current_user.sign_in_count == 1 - team = current_user.teams.where(created_by: current_user).first - seed_demo_data(current_user, team) if team && team.projects.blank? - end - def project_params params.require(:project).permit(:name, :team_id, :visibility, :archived) end diff --git a/app/models/team.rb b/app/models/team.rb index 3ade33d47..4712c254d 100644 --- a/app/models/team.rb +++ b/app/models/team.rb @@ -35,6 +35,8 @@ class Team < ApplicationRecord has_many :repositories, dependent: :destroy has_many :reports, inverse_of: :team, dependent: :destroy + after_create :generate_intro_demo + def default_view_state { 'projects' => { 'cards' => { 'sort' => 'new' }, @@ -304,4 +306,15 @@ class Team < ApplicationRecord def protocol_keywords_list ProtocolKeyword.where(team: self).pluck(:name) end + + private + + include FirstTimeDataGenerator + + def generate_intro_demo + user = User.find(created_by_id) + if user.created_teams.order(:created_at).first == self + seed_demo_data(user, self) + end + end end diff --git a/app/utilities/first_time_data_generator.rb b/app/utilities/first_time_data_generator.rb index 4c29d7227..591d98072 100644 --- a/app/utilities/first_time_data_generator.rb +++ b/app/utilities/first_time_data_generator.rb @@ -1061,7 +1061,7 @@ module FirstTimeDataGenerator project: project, created_at: created_at, updated_at: created_at, - message: t('activities.add_comment_to_project', + message: I18n.t('activities.add_comment_to_project', user: user.full_name, project: project.name) ).sneaky_save @@ -1082,7 +1082,7 @@ module FirstTimeDataGenerator my_module: my_module, created_at: created_at, updated_at: created_at, - message: t('activities.add_comment_to_module', + message: I18n.t('activities.add_comment_to_module', user: user.full_name, module: my_module.name) ).sneaky_save @@ -1103,7 +1103,7 @@ module FirstTimeDataGenerator my_module: result.my_module, created_at: created_at, updated_at: created_at, - message: t('activities.add_comment_to_result', + message: I18n.t('activities.add_comment_to_result', user: user.full_name, result: result.name) ).sneaky_save @@ -1124,7 +1124,7 @@ module FirstTimeDataGenerator my_module: step.protocol.my_module, created_at: created_at, updated_at: created_at, - message: t('activities.add_comment_to_step', + message: I18n.t('activities.add_comment_to_step', user: user.full_name, step: step.position + 1, step_name: step.name)