Class: Challenge
- Inherits:
-
Exercise
- Object
- ActiveRecord::Base
- ApplicationRecord
- Exercise
- Challenge
- Includes:
- WithLayout
- Defined in:
- app/models/exercise/challenge.rb
Direct Known Subclasses
Instance Method Summary collapse
Methods inherited from Exercise
#console?, #description_context, #description_task, #ensure_type!, #friendly, #guide_done_for?, #import_from_json!, #messages_path_for, #messages_url_for, #new_solution, #pending_siblings_for, #previous, #reclassify!, #search_tags, #sibling_at, #slug, #slug_parts, #splitted_description, #structural_parent, #used_in?
Methods included from SiblingsNavigation
#navigable_name, #next_for, #restart
Methods included from ParentNavigation
#leave, #navigable_name, #navigable_parent, #navigation_end?
Methods included from Submittable
#find_assignment_and_submit!, #submit!
Methods included from Questionable
Methods included from WithAssignments
#assigned_to?, #assignment_for, #current_content_for, #default_content_for, #extra_for, #files_for, #find_or_init_assignment_for, #has_messages_for?, #interpolate_for, #last_submission_date_for, #messages_for, #replace_content_reference, #solved_by?, #status_for, #submissions_count_for
Methods included from FriendlyName
Methods included from WithDescription
Methods inherited from ApplicationRecord
aggregate_of, all_except, defaults, name_model_as, numbered, #save, #save_and_notify!, #save_and_notify_changes!, #update_and_notify!, update_or_create!
Instance Method Details
#extra ⇒ Object
15 16 17 18 19 20 21 22 |
# File 'app/models/exercise/challenge.rb', line 15 def extra extra_code = [guide.extra, self[:extra]].compact.join("\n") if extra_code.empty? or extra_code.end_with? "\n" extra_code else "#{extra_code}\n" end end |
#extra_preview(user) ⇒ Object
6 7 8 |
# File 'app/models/exercise/challenge.rb', line 6 def extra_preview(user) Mumukit::ContentType::Markdown.highlighted_code(language.name, extra_for(user)) end |
#reset! ⇒ Object
10 11 12 13 |
# File 'app/models/exercise/challenge.rb', line 10 def reset! super self.layout = self.class.default_layout end |