diff --git a/Gemfile b/Gemfile index 33b638b6..22598fd7 100644 --- a/Gemfile +++ b/Gemfile @@ -31,8 +31,8 @@ gem 'rails-jquery-autocomplete' gem 'meta-tags' # Smarts -# gem 'serendipitous', :path => "~/Code/indent/serendipitous-gem" -gem 'serendipitous', git: 'git://github.com/indentlabs/serendipitous-gem.git' +# gem 'serendipitous', :path => "~/git/serendipitous-gem" +gem 'serendipitous', git: 'https://github.com/indentlabs/serendipitous-gem.git' # Editor gem 'medium-editor-rails' diff --git a/Gemfile.lock b/Gemfile.lock index 4e5a4956..ca482812 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,6 +1,6 @@ GIT - remote: git://github.com/indentlabs/serendipitous-gem.git - revision: 3e1808e873e00e1d59a918a5ac4306b22de3c5df + remote: https://github.com/indentlabs/serendipitous-gem.git + revision: 393c9b664e0cbfacfc06d44dfd43898413b539a5 specs: serendipitous (0.0.2) diff --git a/app/controllers/content_controller.rb b/app/controllers/content_controller.rb index 0e201fb7..166b107e 100644 --- a/app/controllers/content_controller.rb +++ b/app/controllers/content_controller.rb @@ -12,13 +12,8 @@ class ContentController < ApplicationController @content = @content.where(universe: @universe_scope) if @universe_scope.present? && @content.build.respond_to?(:universe) @content ||= [] - - begin - @questioned_content = @content.sample - questionable_params = content_param_list.reject { |x| x.is_a?(Hash) || x.to_s.end_with?('_id') } - @question = QuestionService.question(Content.new @questioned_content.slice(*questionable_params)) - rescue - end + @questioned_content = @content.sample + @question = @questioned_content.question unless @questioned_content.nil? respond_to do |format| format.html # index.html.erb @@ -29,15 +24,7 @@ class ContentController < ApplicationController def show # TODO: Secure this with content class whitelist lel @content = content_type_from_controller(self.class).find(params[:id]) - - if current_user and current_user == @content.user - # question = QuestionService.question(Content.new @content.slice(*content_param_list.flat_map { |v| v.is_a?(Symbol) ? v : v.keys.map { |k| k.to_s.chomp('_attributes').to_sym } })) - begin - questionable_params = content_param_list.reject { |x| x.is_a?(Hash) || x.to_s.end_with?('_id') } - @question = QuestionService.question(Content.new @content.slice(*questionable_params)) - rescue - end - end + @question = @content.question if current_user.present? and current_user == @content.user respond_to do |format| format.html # show.html.erb diff --git a/app/models/character.rb b/app/models/character.rb index 0f93c531..652d0e60 100644 --- a/app/models/character.rb +++ b/app/models/character.rb @@ -16,6 +16,7 @@ class Character < ActiveRecord::Base include HasPrivacy include HasContentGroupers + include Serendipitous::Concern # Characters relates :fathers, with: :fatherships diff --git a/app/models/item.rb b/app/models/item.rb index 4661773a..9e467afb 100644 --- a/app/models/item.rb +++ b/app/models/item.rb @@ -14,6 +14,7 @@ class Item < ActiveRecord::Base include HasPrivacy include HasContentGroupers + include Serendipitous::Concern # Characters relates :original_owners, with: :original_ownerships diff --git a/app/models/location.rb b/app/models/location.rb index 82914f53..2773b41b 100644 --- a/app/models/location.rb +++ b/app/models/location.rb @@ -17,6 +17,7 @@ class Location < ActiveRecord::Base include HasPrivacy include HasContentGroupers + include Serendipitous::Concern # Characters relates :leaders, with: :location_leaderships diff --git a/app/models/universe.rb b/app/models/universe.rb index 8c7d800e..f4aff108 100644 --- a/app/models/universe.rb +++ b/app/models/universe.rb @@ -7,6 +7,7 @@ # contains all canonically-related content created by Users class Universe < ActiveRecord::Base include HasPrivacy + include Serendipitous::Concern validates :name, presence: true diff --git a/app/views/cards/serendipitous/_content_question.html.erb b/app/views/cards/serendipitous/_content_question.html.erb index 37b2fccd..d06de7d5 100644 --- a/app/views/cards/serendipitous/_content_question.html.erb +++ b/app/views/cards/serendipitous/_content_question.html.erb @@ -15,7 +15,7 @@ %>
<%= f.text_field question[:field], class: 'content-question-input' %> - <%= f.label question[:field], question[:field].humanize %> + <%= f.label content.class.human_attribute_name(question[:field]) %>
<% end @@ -29,4 +29,6 @@
<% end %> +<% else %> + <% end %> diff --git a/config/locales/en.yml b/config/locales/en.yml index 8a9de225..12d7f81c 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -1,3 +1,5 @@ +# UTF-8 + # Localization file for English. # See https://github.com/svenfuchs/rails-i18n/tree/master/rails%2Flocale # for starting points. @@ -33,8 +35,100 @@ en: universe: Universe user: User attributes: + character: + eyecolor: eye color + facialhair: facial hair + fave_animal: favorite animal + fave_color: favorite color + fave_food: favorite food + fave_possession: favorite possession + fave_weapon: favorite weapon + haircolor: hair color + identmarks: identifying marks + location: map: Map + serendipitous_questions: + attributes: + character: + age: How old is %{name}? + background: What is %{name}’s background? + birthday: When is %{name}’s birthday? + birthplace: Where was %{name} born? + bodytype: What is %{name}’s body type? + description: Describe %{name}. + education: What is %{name}’s level of education? + eyecolor: What is %{name}’s eye color? + facialhair: What facial hair does %{name} have? + fave_animal: What is %{name}’s favorite animal? + fave_color: What is %{name}’s favorite color? + fave_food: What is %{name}’s favorite food? + fave_possession: What is %{name}’s favorite possession? + fave_weapon: What is %{name}’s favorite weapon? + gender: What is %{name}’s gender? + haircolor: What color is %{name}’s hair? + hairstyle: How does %{name} style their hair? + height: How tall is %{name}? + identmarks: What identifying marks does %{name} have? + mannerisms: What mannerisms does %{name} have? + name: What is %{name}’s full name? + notes: Do you have any miscellaneous public notes for %{name}? + occupation: What is %{name}’s occupation? + pets: What pets does %{name} have? + politics: What politices does %{name} have? + prejudices: What prejudices does %{name} have? + private_notes: Do you have any private notes for %{name}? + race: What is %{name}’s race? + religion: What religion does %{name} practice? + role: What is %{name}’s role in your story? + skintone: What skin tone does %{name} name? + weight: How much does %{name} weigh? + + item: + current_owner: Who currently owns %{name}? + description: Describe %{name}. + item_type: What type of item is %{name}? + made_by: Who made %{name}? + magic: What kind of magic does %{name} possess? + materials: What is %{name} made out of? + name: What is %{name}’s full name? + notes: Do you have any miscellaneous public notes for %{name}? + original_owner: Who originally owned %{name}? + private_notes: Do you have any private notes for %{name}? + weight: How much does %{name} weigh? + year_made: When was %{name} made? + + location: + area: What kind of area is %{name} in? + capital: What is %{name}’s capital? + crops: What cropes does %{name} produce? + currency: What currencies are used in %{name}? + established_year: When was %{name} established? + language: What languages are spoken in %{name}? + largest_city: What is %{name}’s largest city? + located_at: Where is %{name} located? + motto: What is %{name}’s motto? + notable_cities: What notable cities are located in %{name}? + notable_wars: What notable wars has %{name} been involved in? + population: What is %{name}’s population? + type_of: What type of location is %{name}? + + description: Describe %{name}. + name: What is %{name}’s full name? + notes: Do you have any miscellaneous public notes for %{name}? + private_notes: Do you have any private notes for %{name}? + universe: + history: What is %{name}’s history? + blacklist: + _: + - id + - user_id + - privacy + location: + - map_content_type + - map_file_name + - map_file_size + - map_updated_at content_descriptions: universe: >