cpradio
(cpradio)
October 5, 2015, 4:09pm
1
Okay, so Sitepoint just had a big internal discussion over what page the user should see when they first visit your community, and we primarily are interested in Top except for one glaring problem.
Top seems to default to Year for the time frame when not logged in. The results of which are less than thrilling. If it defaulted to the past week or past month, this would be very meaningful, as it would show relevant semi current data, instead of showing topics that were closed and things that were said nearly a year ago!
It also seems to default to Year for a New User (registered immediately).
Has anyone else come across this? Does anyone else find that Month or Week would provide a better idea of what is popular/hot as far as discussions go in your community, than showing Year?
Feel free to visit community.sitepoint.com/top in private browsing to see the difference between Year and Month and Week. The more interesting things really do seem to exist in Month and Week and are not well represented in Year.
2 Likes
cpradio:
big internal discussion
Is that what we’re calling them nowadays?
No but really, this is a good idea. It’d give people a good glance at current, popular topics - without the sometimes-trash-or-confusing-mess that is Latest (although a lot of forums mods/actives/etc are bound to prefer that personally) and without the impersonal wall that is Categories.
Hmmm, I’ve not noticed that there is a difference as I always log in.
Maybe an alternative would be to have it be Year but sorted by Activity descending?
riking
(Kane York)
October 5, 2015, 4:28pm
4
I seem to remember some logic about picking the “best” timeframe for top - e.g. meta should use weekly, hello foros should use daily, and Let’s Encrypt should use monthly.
However, these are all using year. Did something break?
cpradio
(cpradio)
October 5, 2015, 4:37pm
5
riking:
I seem to remember some logic about picking the “best” timeframe for top - e.g. meta should use weekly, hello foros should use daily, and Let’s Encrypt should use monthly.
However, these are all using year. Did something break?
Yes, but I think that logic only applies to a logged in user who hasn’t come back for a while. Which is an entirely different scenario. We’re talking about new visitors, or just registered users, not those who were active and then went awol for a few weeks.
1 Like
cpradio:
Yes, but I think that logic only applies to a logged in user who hasn’t come back for a while. Which is an entirely different scenario. We’re talking about new visitors, or just registered users, not those who were active and then went awol for a few weeks.
And the reason for that is that we’re trying to think of the best landing page for new users, who are either here to browse, get help, etc etc. And while the Categories page isn’t the ideal for those people, neither would the Top page with a year-long time frame. But the Top page with a short time frame might be kind of nice for this purpose.
riking
(Kane York)
October 5, 2015, 4:45pm
7
Idea: what happens if you put top/weekly
in the top menu?
Okay that looks a bit weird.
edit: And making it the first option results in a 404 on /
.
1 Like
That logic is only based on the last time we’ve seen the user.
For a new user we have never seen them so we show them best all time. There is no known last seen date.
For a returning user we haven’t seen for a few months, it should default to quarter, for a returing user we haven’t seen in a week, it should use week, etcetera.
cpradio
(cpradio)
October 6, 2015, 10:29am
9
Right, that was my understanding as well.
This is the part we’d like to change, as our Yearly view isn’t nearly as helpful for our community as our Monthly and Weekly views for Top.
1 Like
sam
(Sam Saffron)
October 6, 2015, 11:19am
10
I think it’s fine to add a site setting for this for super active sites perhaps
cpradio
(cpradio)
October 6, 2015, 11:37am
11
Just to make sure the rules are defined right.
Site Setting named default top view for top page
, default to Yearly.
Site Setting should not break users returning after a hiatus from the site.
I may have time to look into this over the next week or two.
6 Likes
cpradio
(cpradio)
October 6, 2015, 1:55pm
12
Okay, I’m running into an issue and I haven’t a clue how to resolve it.
require_dependency 'enum_site_setting'
class TopPeriodSetting < EnumSiteSetting
def self.valid_value?(val)
valid_values.any? { |v| v[:value] == val }
end
def self.values
@values ||= valid_values.map { |x| { name: x.to_s, value: x } }
end
def self.valid_values
TopTopic.periods.to_a
end
private_class_method :valid_values
end
I’ve got the site setting showing correctly, it seems to validate the value, but it throws a 500 Server Error when saving
Error: Sorry, an error has occurred.
Message
TypeError (no implicit conversion of Symbol into Integer)
/home/discourse/discourse/app/models/top_period_setting.rb:8:in `[]'
Backtrace
/home/discourse/discourse/app/models/top_period_setting.rb:8:in `[]'
/home/discourse/discourse/app/models/top_period_setting.rb:8:in `block in valid_value?'
/home/discourse/discourse/app/models/top_period_setting.rb:8:in `each'
/home/discourse/discourse/app/models/top_period_setting.rb:8:in `any?'
/home/discourse/discourse/app/models/top_period_setting.rb:8:in `valid_value?'
/home/discourse/discourse/lib/site_setting_extension.rb:298:in `add_override!'
/home/discourse/discourse/lib/site_setting_extension.rb:467:in `block in setup_methods'
/home/discourse/discourse/lib/site_setting_extension.rb:364:in `set'
/home/discourse/discourse/app/controllers/admin/site_settings_controller.rb:14:in `update'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionpack-4.2.4/lib/action_controller/metal/implicit_render.rb:4:in `send_action'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionpack-4.2.4/lib/abstract_controller/base.rb:198:in `process_action'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionpack-4.2.4/lib/action_controller/metal/rendering.rb:10:in `process_action'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionpack-4.2.4/lib/abstract_controller/callbacks.rb:20:in `block in process_action'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/activesupport-4.2.4/lib/active_support/callbacks.rb:117:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/activesupport-4.2.4/lib/active_support/callbacks.rb:117:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/activesupport-4.2.4/lib/active_support/callbacks.rb:555:in `block (2 levels) in compile'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/activesupport-4.2.4/lib/active_support/callbacks.rb:505:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/activesupport-4.2.4/lib/active_support/callbacks.rb:505:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/activesupport-4.2.4/lib/active_support/callbacks.rb:92:in `__run_callbacks__'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/activesupport-4.2.4/lib/active_support/callbacks.rb:778:in `_run_process_action_callbacks'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/activesupport-4.2.4/lib/active_support/callbacks.rb:81:in `run_callbacks'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionpack-4.2.4/lib/abstract_controller/callbacks.rb:19:in `process_action'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionpack-4.2.4/lib/action_controller/metal/rescue.rb:29:in `process_action'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionpack-4.2.4/lib/action_controller/metal/instrumentation.rb:32:in `block in process_action'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/activesupport-4.2.4/lib/active_support/notifications.rb:164:in `block in instrument'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/activesupport-4.2.4/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/activesupport-4.2.4/lib/active_support/notifications.rb:164:in `instrument'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionpack-4.2.4/lib/action_controller/metal/instrumentation.rb:30:in `process_action'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionpack-4.2.4/lib/action_controller/metal/params_wrapper.rb:250:in `process_action'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/activerecord-4.2.4/lib/active_record/railties/controller_runtime.rb:18:in `process_action'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionpack-4.2.4/lib/abstract_controller/base.rb:137:in `process'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionview-4.2.4/lib/action_view/rendering.rb:30:in `process'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-mini-profiler-0.9.7/lib/mini_profiler/profiling_methods.rb:106:in `block in profile_method'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionpack-4.2.4/lib/action_controller/metal.rb:196:in `dispatch'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionpack-4.2.4/lib/action_controller/metal/rack_delegation.rb:13:in `dispatch'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionpack-4.2.4/lib/action_controller/metal.rb:237:in `block in action'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionpack-4.2.4/lib/action_dispatch/routing/route_set.rb:76:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionpack-4.2.4/lib/action_dispatch/routing/route_set.rb:76:in `dispatch'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionpack-4.2.4/lib/action_dispatch/routing/route_set.rb:45:in `serve'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionpack-4.2.4/lib/action_dispatch/routing/mapper.rb:49:in `serve'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionpack-4.2.4/lib/action_dispatch/journey/router.rb:43:in `block in serve'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionpack-4.2.4/lib/action_dispatch/journey/router.rb:30:in `each'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionpack-4.2.4/lib/action_dispatch/journey/router.rb:30:in `serve'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionpack-4.2.4/lib/action_dispatch/routing/route_set.rb:821:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-protection-1.5.3/lib/rack/protection/frame_options.rb:31:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/omniauth-1.2.2/lib/omniauth/strategy.rb:186:in `call!'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/omniauth-1.2.2/lib/omniauth/strategy.rb:164:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/omniauth-1.2.2/lib/omniauth/strategy.rb:186:in `call!'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/omniauth-1.2.2/lib/omniauth/strategy.rb:164:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/omniauth-1.2.2/lib/omniauth/strategy.rb:186:in `call!'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/omniauth-1.2.2/lib/omniauth/strategy.rb:164:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/omniauth-1.2.2/lib/omniauth/strategy.rb:186:in `call!'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/omniauth-1.2.2/lib/omniauth/strategy.rb:164:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/omniauth-1.2.2/lib/omniauth/strategy.rb:186:in `call!'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/omniauth-1.2.2/lib/omniauth/strategy.rb:164:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/omniauth-1.2.2/lib/omniauth/builder.rb:59:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-1.6.4/lib/rack/conditionalget.rb:38:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-1.6.4/lib/rack/head.rb:13:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionpack-4.2.4/lib/action_dispatch/middleware/params_parser.rb:27:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionpack-4.2.4/lib/action_dispatch/middleware/flash.rb:260:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/message_bus-1.0.16/lib/message_bus/rack/middleware.rb:60:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-1.6.4/lib/rack/session/abstract/id.rb:225:in `context'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-1.6.4/lib/rack/session/abstract/id.rb:220:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionpack-4.2.4/lib/action_dispatch/middleware/cookies.rb:560:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/activerecord-4.2.4/lib/active_record/query_cache.rb:36:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/activerecord-4.2.4/lib/active_record/connection_adapters/abstract/connection_pool.rb:653:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/activerecord-4.2.4/lib/active_record/migration.rb:377:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionpack-4.2.4/lib/action_dispatch/middleware/callbacks.rb:29:in `block in call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/activesupport-4.2.4/lib/active_support/callbacks.rb:88:in `__run_callbacks__'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/activesupport-4.2.4/lib/active_support/callbacks.rb:778:in `_run_call_callbacks'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/activesupport-4.2.4/lib/active_support/callbacks.rb:81:in `run_callbacks'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionpack-4.2.4/lib/action_dispatch/middleware/callbacks.rb:27:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionpack-4.2.4/lib/action_dispatch/middleware/reloader.rb:73:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionpack-4.2.4/lib/action_dispatch/middleware/remote_ip.rb:78:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/better_errors-2.1.1/lib/better_errors/middleware.rb:59:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionpack-4.2.4/lib/action_dispatch/middleware/debug_exceptions.rb:17:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionpack-4.2.4/lib/action_dispatch/middleware/show_exceptions.rb:30:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/logster-1.0.0.3.pre/lib/logster/middleware/reporter.rb:31:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/railties-4.2.4/lib/rails/rack/logger.rb:38:in `call_app'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/railties-4.2.4/lib/rails/rack/logger.rb:22:in `call'
/home/discourse/discourse/config/initializers/quiet_logger.rb:10:in `call_with_quiet_assets'
/home/discourse/discourse/config/initializers/silence_logger.rb:26:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionpack-4.2.4/lib/action_dispatch/middleware/request_id.rb:21:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-1.6.4/lib/rack/methodoverride.rb:22:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-1.6.4/lib/rack/runtime.rb:18:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionpack-4.2.4/lib/action_dispatch/middleware/static.rb:116:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-1.6.4/lib/rack/sendfile.rb:113:in `call'
/home/discourse/discourse/lib/middleware/missing_avatars.rb:21:in `call'
/home/discourse/discourse/lib/middleware/turbo_dev.rb:33:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-mini-profiler-0.9.7/lib/mini_profiler/profiler.rb:276:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/railties-4.2.4/lib/rails/engine.rb:518:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/railties-4.2.4/lib/rails/application.rb:165:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/railties-4.2.4/lib/rails/railtie.rb:194:in `public_send'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/railties-4.2.4/lib/rails/railtie.rb:194:in `method_missing'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-1.6.4/lib/rack/urlmap.rb:66:in `block in call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-1.6.4/lib/rack/urlmap.rb:50:in `each'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-1.6.4/lib/rack/urlmap.rb:50:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-1.6.4/lib/rack/content_length.rb:15:in `call'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/thin-1.6.4/lib/thin/connection.rb:86:in `block in pre_process'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/thin-1.6.4/lib/thin/connection.rb:84:in `catch'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/thin-1.6.4/lib/thin/connection.rb:84:in `pre_process'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/thin-1.6.4/lib/thin/connection.rb:53:in `process'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/thin-1.6.4/lib/thin/connection.rb:39:in `receive_data'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/eventmachine-1.0.8/lib/eventmachine.rb:193:in `run_machine'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/eventmachine-1.0.8/lib/eventmachine.rb:193:in `run'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/thin-1.6.4/lib/thin/backends/base.rb:73:in `start'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/thin-1.6.4/lib/thin/server.rb:162:in `start'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-1.6.4/lib/rack/handler/thin.rb:19:in `run'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-1.6.4/lib/rack/server.rb:286:in `start'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/railties-4.2.4/lib/rails/commands/server.rb:80:in `start'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/railties-4.2.4/lib/rails/commands/commands_tasks.rb:80:in `block in server'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/railties-4.2.4/lib/rails/commands/commands_tasks.rb:75:in `tap'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/railties-4.2.4/lib/rails/commands/commands_tasks.rb:75:in `server'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/railties-4.2.4/lib/rails/commands/commands_tasks.rb:39:in `run_command!'
/home/discourse/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/railties-4.2.4/lib/rails/commands.rb:17:in `<top (required)>'
bin/rails:4:in `require'
bin/rails:4:in `<main>'
Env
hostname discourse
process_id 9805
application_version af7d51e9233527544dda2fe4254ef5cd87de0c22
HTTP_HOST localhost:3000
REQUEST_URI /admin/site_settings/top_page_default_timeframe
REQUEST_METHOD PUT
HTTP_USER_AGENT Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36
HTTP_ACCEPT */*
HTTP_REFERER http://localhost:3000/admin/site_settings/category/all_results
username admin
params
top_page_default_timeframe quarterly
branch with commit showing changes to produce the above errors:
https://github.com/cpradio/discourse/commit/5e7a84626c6b78c2ee7fa6dadb8cb7606cfaad6f
cpradio
(cpradio)
October 6, 2015, 4:03pm
13
Maybe I’m over complicating this. As it seems I can get it to work properly by using
top_page_default_timeframe:
default: 'yearly'
type: enum
choices:
- all
- yearly
- quarterly
- monthly
- weekly
- daily
And that doesn’t require the top_period_setting.rb file which avoids the enum validation/saving issue I was experiencing using that method.
That method was being attempted with
top_page_default_timeframe:
default: 'yearly'
enum: 'TopPeriodSetting'
Will a PR that isn’t using a enum setting be accepted? (as I have that working)
https://github.com/discourse/discourse/pull/3837
2 Likes
sam
(Sam Saffron)
October 6, 2015, 10:55pm
14
Sure, just with us, we are on a team meetup at the moment, struggling to have my backlog not eat me.
1 Like
cpradio
(cpradio)
October 6, 2015, 10:59pm
15
No sweat, I made huge strides, I just can’t seem to figure out the enum setting process. I must be missing something silly, just not sure what.
Both sets of commits are there, the second actually works, the first throws an error when saving.
sam
(Sam Saffron)
October 6, 2015, 11:00pm
16
The enum class really is not necessary. If you can get away without it its better anyway, less code to carry around.
1 Like
cpradio
(cpradio)
October 6, 2015, 11:02pm
17
Okay, then my PR works. It doesn’t use an enum setting class. I simply was considering that option to make it have less areas to support All, Yearly, Quarterly, Monthly, Weekly, and Daily.
So the PR is there, review it when you guys have time, no rush.
6 Likes
zogstrip
(RĂ©gis Hanol)
October 6, 2015, 11:19pm
18
Thanks @cpradio , I just merged your PR
1 Like