mirror of
https://github.com/scinote-eln/scinote-web.git
synced 2024-11-18 15:13:21 +08:00
37 lines
945 B
Ruby
37 lines
945 B
Ruby
module SamplesHelper
|
|
def can_add_samples
|
|
module_page? && can_add_samples_to_module(@my_module)
|
|
end
|
|
|
|
def can_remove_samples
|
|
module_page? && can_delete_samples_from_module(@my_module)
|
|
end
|
|
|
|
def can_add_sample_related_things_to_team
|
|
can_create_custom_field_in_team(@team) &&
|
|
can_create_sample_type_in_team(@team) &&
|
|
can_create_sample_group_in_team(@team)
|
|
end
|
|
|
|
def all_custom_fields
|
|
CustomField.where(team_id: @team).order(:created_at)
|
|
end
|
|
|
|
def num_of_columns
|
|
# Magic numbers, woohoo:
|
|
# - 1 for checkbox column,
|
|
# - 6 corresponds to initial number of basic sample columns (without
|
|
# custom)
|
|
1 + 6 + all_custom_fields.count
|
|
end
|
|
|
|
def form_submit_link
|
|
if module_page?
|
|
assign_samples_my_module_path(@my_module)
|
|
elsif project_page?
|
|
delete_samples_project_path(@project)
|
|
elsif experiment_page?
|
|
delete_samples_experiment_path(@experiment)
|
|
end
|
|
end
|
|
end
|