refactor Demo project generation

This commit is contained in:
Mojca Lorber 2019-01-24 13:40:53 +01:00
parent 58f06ac570
commit fa1dff6352
3 changed files with 17 additions and 13 deletions

View file

@ -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

View file

@ -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

View file

@ -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)