mirror of
https://github.com/scinote-eln/scinote-web.git
synced 2024-09-20 23:16:15 +08:00
refactor Demo project generation
This commit is contained in:
parent
58f06ac570
commit
fa1dff6352
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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)
|
||||
|
|
Loading…
Reference in a new issue