From aea00e494187dc3b6fbb446784cfb8db49065911 Mon Sep 17 00:00:00 2001 From: Ufuk Kayserilioglu Date: Thu, 13 Dec 2018 12:13:04 -0500 Subject: [PATCH] Make sure that the default theme is the first one listed in themes.yml (#229) We want the default theme to be Aubergine since that is the default that comes with Slack. However, we were actually relying on the first theme in alphabetical sorted order as the default theme, which ended up changing the default as themes got added. This patch always makes it the first entry in the themes.yml file --- config.rb | 8 ++++++++ source/javascripts/all.js.erb | 4 ++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/config.rb b/config.rb index 45acdce..911bb23 100644 --- a/config.rb +++ b/config.rb @@ -105,4 +105,12 @@ helpers do )) end end + + def default_theme + theme = data.themes.first + OpenStruct.new(theme.merge( + slug: theme['name'].parameterize.underscore, + digest: Digest::MD5.new.hexdigest(theme['colors']) + )) + end end diff --git a/source/javascripts/all.js.erb b/source/javascripts/all.js.erb index 8da8e17..b9eb36e 100644 --- a/source/javascripts/all.js.erb +++ b/source/javascripts/all.js.erb @@ -9,10 +9,10 @@ app.config(['$stateProvider', '$urlRouterProvider', url: "/:slug", controller: 'ThemeController', params: { - slug: { value: '<%= themes.first.slug %>' } + slug: { value: '<%= default_theme.slug %>' } } }); - $urlRouterProvider.otherwise('/<%= themes.first.slug %>'); + $urlRouterProvider.otherwise('/<%= default_theme.slug %>'); }]); app.controller('ThemeController', ['$scope', '$stateParams', '$state', '$location',