decidim-core 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (150) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/decidim.js.es6 +2 -4
  3. data/app/assets/javascripts/decidim/append_elements.js.es6 +1 -1
  4. data/app/assets/javascripts/decidim/editor.js.es6 +33 -35
  5. data/app/assets/javascripts/decidim/filters.js.es6 +9 -15
  6. data/app/assets/javascripts/decidim/form_filter.component.js.es6 +5 -5
  7. data/app/assets/javascripts/decidim/form_filter.component.test.js +1 -1
  8. data/app/assets/javascripts/decidim/foundation.js.es6 +17 -0
  9. data/app/assets/javascripts/decidim/user_registrations.js.es6 +2 -3
  10. data/app/assets/stylesheets/decidim/_decidim.scss +9 -0
  11. data/app/assets/stylesheets/decidim/_variables.scss +5 -11
  12. data/app/assets/stylesheets/decidim/application.scss.erb +6 -0
  13. data/app/assets/stylesheets/decidim/extras/_leaflet.scss +13 -0
  14. data/app/assets/stylesheets/decidim/modules/_buttons.scss +8 -2
  15. data/app/assets/stylesheets/decidim/modules/_cards.scss +0 -2
  16. data/app/assets/stylesheets/decidim/modules/_comments.scss +33 -8
  17. data/app/assets/stylesheets/decidim/modules/{_defintion-data.scss → _definition-data.scss} +0 -0
  18. data/app/assets/stylesheets/decidim/modules/_filter-tags.scss +24 -0
  19. data/app/assets/stylesheets/decidim/modules/_layout.scss +1 -9
  20. data/app/assets/stylesheets/decidim/modules/_list-docs.scss +1 -1
  21. data/app/assets/stylesheets/decidim/modules/_margins.scss +15 -0
  22. data/app/assets/stylesheets/decidim/modules/_modules.scss +56 -0
  23. data/app/assets/stylesheets/decidim/modules/_opinion-toggle.scss +25 -5
  24. data/app/assets/stylesheets/decidim/modules/_order-by.scss +1 -0
  25. data/app/assets/stylesheets/decidim/modules/_process-header.scss +2 -1
  26. data/app/assets/stylesheets/decidim/modules/_process-phase.scss +0 -4
  27. data/app/assets/stylesheets/decidim/modules/_status-labels.scss +7 -1
  28. data/app/assets/stylesheets/decidim/modules/_typography.scss +17 -0
  29. data/app/assets/stylesheets/decidim/utils/_fontface.scss +3 -3
  30. data/app/assets/stylesheets/decidim/utils/_settings.scss +10 -7
  31. data/app/commands/decidim/invite_user.rb +2 -2
  32. data/app/commands/decidim/update_account.rb +48 -0
  33. data/app/controllers/concerns/decidim/form_factory.rb +1 -1
  34. data/app/controllers/concerns/decidim/needs_authorization.rb +12 -1
  35. data/app/controllers/concerns/decidim/user_profile.rb +30 -0
  36. data/app/controllers/decidim/account_controller.rb +28 -10
  37. data/app/controllers/decidim/authorizations_controller.rb +21 -8
  38. data/app/controllers/decidim/devise/invitations_controller.rb +2 -0
  39. data/app/controllers/decidim/devise/sessions_controller.rb +1 -1
  40. data/app/controllers/decidim/own_user_groups_controller.rb +14 -0
  41. data/app/controllers/decidim/participatory_processes_controller.rb +1 -1
  42. data/app/forms/decidim/account_form.rb +41 -0
  43. data/app/helpers/decidim/aria_selected_link_to_helper.rb +26 -0
  44. data/app/helpers/decidim/attachments_helper.rb +15 -0
  45. data/app/helpers/decidim/filters_helper.rb +2 -3
  46. data/app/helpers/decidim/layout_helper.rb +29 -6
  47. data/app/helpers/decidim/resource_helper.rb +64 -0
  48. data/app/helpers/decidim/user_profile_helper.rb +23 -0
  49. data/app/mailers/decidim/decidim_devise_mailer.rb +1 -0
  50. data/app/models/decidim/abilities/everyone.rb +5 -1
  51. data/app/models/decidim/ability.rb +3 -4
  52. data/app/models/decidim/{participatory_process_attachment.rb → attachment.rb} +5 -5
  53. data/app/models/decidim/feature.rb +2 -0
  54. data/app/models/decidim/organization.rb +1 -0
  55. data/app/models/decidim/participatory_process.rb +2 -5
  56. data/app/models/decidim/resource_link.rb +28 -0
  57. data/app/models/decidim/user.rb +6 -0
  58. data/app/models/decidim/user_group.rb +10 -1
  59. data/app/services/decidim/resource_search.rb +1 -4
  60. data/app/types/decidim/session_type.rb +16 -0
  61. data/app/types/decidim/user_group_type.rb +20 -0
  62. data/app/types/decidim/user_type.rb +5 -1
  63. data/app/uploaders/decidim/attachment_uploader.rb +4 -1
  64. data/app/uploaders/decidim/avatar_uploader.rb +8 -0
  65. data/app/uploaders/decidim/banner_image_uploader.rb +1 -0
  66. data/app/uploaders/decidim/hero_image_uploader.rb +1 -0
  67. data/app/uploaders/decidim/homepage_image_uploader.rb +5 -1
  68. data/app/uploaders/decidim/image_uploader.rb +1 -1
  69. data/app/uploaders/decidim/organization_favicon_uploader.rb +17 -0
  70. data/app/uploaders/decidim/organization_logo_uploader.rb +2 -2
  71. data/app/validators/feature_validator.rb +23 -0
  72. data/app/views/decidim/account/_password_fields.html.erb +2 -0
  73. data/app/views/decidim/account/_user_groups.html.erb +0 -0
  74. data/app/views/decidim/account/show.html.erb +24 -29
  75. data/app/views/decidim/application/_attachments.html.erb +8 -0
  76. data/app/views/decidim/{participatory_processes → application}/_documents.html.erb +0 -0
  77. data/app/views/decidim/{participatory_processes → application}/_photos.html.erb +0 -0
  78. data/app/views/decidim/authorizations/first_login.html.erb +22 -0
  79. data/app/views/decidim/authorizations/index.html.erb +46 -19
  80. data/app/views/decidim/devise/omniauth_registrations/new.html.erb +1 -1
  81. data/app/views/decidim/devise/registrations/new.html.erb +1 -1
  82. data/app/views/decidim/own_user_groups/index.html.erb +24 -0
  83. data/app/views/decidim/participatory_process_steps/_participatory_process_step.html.erb +1 -1
  84. data/app/views/decidim/participatory_process_steps/index.html.erb +3 -1
  85. data/app/views/decidim/participatory_processes/_participatory_process.html.erb +2 -2
  86. data/app/views/decidim/participatory_processes/_promoted_process.html.erb +1 -1
  87. data/app/views/decidim/participatory_processes/index.html.erb +2 -0
  88. data/app/views/decidim/participatory_processes/show.html.erb +37 -8
  89. data/app/views/decidim/shared/_comments.html.erb +0 -0
  90. data/app/views/layouts/decidim/_application.html.erb +5 -3
  91. data/app/views/layouts/decidim/_header.html.erb +4 -4
  92. data/app/views/layouts/decidim/_logo.html.erb +29 -17
  93. data/app/views/layouts/decidim/_process_header.html.erb +15 -3
  94. data/app/views/layouts/decidim/_process_header_steps.html.erb +1 -1
  95. data/app/views/layouts/decidim/_user_menu.html.erb +3 -0
  96. data/app/views/layouts/decidim/mailer.html.erb +1 -1
  97. data/app/views/layouts/decidim/user_profile.html.erb +35 -0
  98. data/app/views/pages/home.html.erb +5 -139
  99. data/app/views/pages/home/_extended.html.erb +48 -0
  100. data/app/views/pages/home/_hero.html.erb +20 -0
  101. data/app/views/pages/home/_highlighted_processes.html.erb +37 -0
  102. data/app/views/pages/home/_statistics.html.erb +22 -0
  103. data/app/views/pages/home/_sub_hero.html.erb +11 -0
  104. data/config/i18n-tasks.yml +1 -0
  105. data/config/initializers/foundation_rails_helper.rb +2 -0
  106. data/config/locales/ca.yml +69 -33
  107. data/config/locales/en.yml +86 -29
  108. data/config/locales/es.yml +68 -32
  109. data/config/routes.rb +8 -3
  110. data/db/migrate/20161116115156_create_attachments.rb +0 -2
  111. data/db/migrate/20170113150627_create_resource_links.rb +10 -0
  112. data/db/migrate/20170123134023_make_attachments_polymorphic.rb +18 -0
  113. data/db/migrate/20170123140857_add_avatar_to_user_groups.rb +5 -0
  114. data/db/migrate/20170125135937_rename_attachable_to_attached_to.rb +11 -0
  115. data/db/migrate/20170125152026_add_weight_to_features.rb +5 -0
  116. data/db/migrate/20170126151123_add_extra_info_to_processes.rb +8 -0
  117. data/db/migrate/20170128140553_add_timestamps_to_identities.rb +5 -0
  118. data/db/migrate/20170130132833_add_favicon_to_decidim_organizations.rb +5 -0
  119. data/db/seeds.rb +38 -6
  120. data/lib/decidim/authorable.rb +32 -0
  121. data/lib/decidim/core.rb +37 -0
  122. data/lib/decidim/core/engine.rb +2 -3
  123. data/lib/decidim/core/test.rb +6 -0
  124. data/lib/decidim/core/test/factories.rb +24 -3
  125. data/lib/decidim/core/test/shared_examples/authorable.rb +31 -0
  126. data/lib/decidim/core/test/shared_examples/has_attachments.rb +29 -0
  127. data/lib/decidim/core/test/shared_examples/has_category.rb +10 -0
  128. data/lib/decidim/core/test/shared_examples/has_feature.rb +20 -0
  129. data/lib/decidim/core/test/shared_examples/has_scope.rb +10 -0
  130. data/lib/decidim/core/version.rb +1 -1
  131. data/lib/decidim/feature_manifest.rb +31 -1
  132. data/lib/decidim/features/base_controller.rb +10 -0
  133. data/lib/decidim/features/settings_manifest.rb +1 -0
  134. data/lib/decidim/has_attachment.rb +32 -0
  135. data/lib/decidim/has_attachments.rb +32 -0
  136. data/lib/decidim/has_category.rb +21 -0
  137. data/lib/decidim/has_feature.rb +20 -0
  138. data/lib/decidim/has_scope.rb +21 -0
  139. data/lib/decidim/query_extensions.rb +2 -2
  140. data/lib/decidim/resource_manifest.rb +80 -0
  141. data/lib/decidim/resourceable.rb +85 -0
  142. metadata +67 -40
  143. data/app/assets/javascripts/decidim/inline_svg.js.es6 +0 -12
  144. data/app/assets/stylesheets/decidim/application.sass +0 -12
  145. data/app/assets/stylesheets/decidim/extras/_turbolinks.scss +0 -3
  146. data/app/assets/stylesheets/decidim/modules/_popularity.scss +0 -74
  147. data/app/assets/stylesheets/decidim/utils/_variables.scss +0 -22
  148. data/app/views/decidim/account/_authorizations.html.erb +0 -52
  149. data/vendor/assets/javascripts/owl.carousel.min.js +0 -47
  150. data/vendor/assets/javascripts/svg-injector.js +0 -464
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 90088cf15e64d2ce6b1d18dc801aafd4f2bcaf25
4
- data.tar.gz: 03fbfda546c53214106febeea0e31b94f5b07e8e
3
+ metadata.gz: a032ffa156def30465db5d8b3d20ca95a7ea2dc0
4
+ data.tar.gz: 855965c6e8eecfbe557440501e0d717c4a7a4a80
5
5
  SHA512:
6
- metadata.gz: f2ddf2c4e04870bd329115a24a5c43680133b4cdc3e750b7606d67594123d2f8668f702ed0c80c56aef68f803e5727a3974e8289d3eb47532aa6ad50ac588e71
7
- data.tar.gz: c3c192e8f660653064880131624f897d41ebe1a070925dd25a8780e4f182c731bc188962b931e54034139543d231d7b6fcc03beef7f58b8a4af8840cb5ba43d4
6
+ metadata.gz: 1552bb8342aebc959620e05d4934651d0a54aa61d508a6b2c3db634e27418b3d28211173fdddea6a3964a07decb467da0ea87a439ea63de0b81cfb1ae749bff6
7
+ data.tar.gz: 246850a6564065e2f2ee93b0c49c1a41f5cfbf902cdd3675f114e9648eecd24011665141115fdd609681b98bea1219f69344583870d6f6440c451ca2a86a6e40
@@ -1,14 +1,12 @@
1
- // = require foundation
1
+ // = require decidim/foundation
2
2
  // = require modernizr
3
- // = require owl.carousel.min
4
3
  // = require svg4everybody.min
5
4
  // = require decidim/append_elements
6
- // = require decidim/inline_svg
7
5
  // = require decidim/user_registrations
8
6
 
9
7
  /* globals svg4everybody */
10
8
 
11
- $(document).on('turbolinks:load', () => {
9
+ $(() => {
12
10
  $(document).foundation();
13
11
  svg4everybody();
14
12
  });
@@ -1,7 +1,7 @@
1
1
  // = require appendAround
2
2
 
3
3
  (function() {
4
- $(document).on("turbolinks:load", function () {
4
+ $(() => {
5
5
  let $appendableElements = $('.js-append');
6
6
  $appendableElements.appendAround();
7
7
  })
@@ -1,46 +1,44 @@
1
1
  // = require quill.min
2
2
  // = require_self
3
3
 
4
- $(document).on('turbolinks:load', () => {
5
- $(() => {
6
- const $container = $('.editor-container');
7
- const quillFormats = ['bold', 'italic', 'link', 'underline', 'header', 'list'];
4
+ $(() => {
5
+ const $container = $('.editor-container');
6
+ const quillFormats = ['bold', 'italic', 'link', 'underline', 'header', 'list'];
8
7
 
9
- $container.each((idx, container) => {
10
- const toolbar = $(container).data('toolbar');
8
+ $container.each((idx, container) => {
9
+ const toolbar = $(container).data('toolbar');
11
10
 
12
- let quillToolbar = [
13
- ['bold', 'italic', 'underline'],
14
- [{ list: 'ordered' }, { list: 'bullet' }],
15
- ['link', 'clean']
16
- ];
17
-
18
- if (toolbar === 'full') {
19
- quillToolbar = [
20
- [{ header: [1, 2, 3, 4, 5, 6, false] }],
21
- ...quillToolbar
22
- ];
23
- }
11
+ let quillToolbar = [
12
+ ['bold', 'italic', 'underline'],
13
+ [{ list: 'ordered' }, { list: 'bullet' }],
14
+ ['link', 'clean']
15
+ ];
24
16
 
25
- const $input = $(container).siblings('input[type="hidden"]');
26
- const quill = new Quill(container, {
27
- modules: {
28
- toolbar: quillToolbar
29
- },
30
- formats: quillFormats,
31
- theme: 'snow'
32
- });
17
+ if (toolbar === 'full') {
18
+ quillToolbar = [
19
+ [{ header: [1, 2, 3, 4, 5, 6, false] }],
20
+ ...quillToolbar
21
+ ];
22
+ }
33
23
 
34
- quill.on('text-change', () => {
35
- const text = quill.getText();
36
- if (text === '\n') {
37
- $input.val('');
38
- } else {
39
- $input.val(quill.root.innerHTML);
40
- }
41
- });
24
+ const $input = $(container).siblings('input[type="hidden"]');
25
+ const quill = new Quill(container, {
26
+ modules: {
27
+ toolbar: quillToolbar
28
+ },
29
+ formats: quillFormats,
30
+ theme: 'snow'
31
+ });
42
32
 
43
- quill.root.innerHTML = $input.val();
33
+ quill.on('text-change', () => {
34
+ const text = quill.getText();
35
+ if (text === '\n') {
36
+ $input.val('');
37
+ } else {
38
+ $input.val(quill.root.innerHTML);
39
+ }
44
40
  });
41
+
42
+ quill.root.innerHTML = $input.val();
45
43
  });
46
44
  });
@@ -1,22 +1,16 @@
1
+ /* eslint-disable no-invalid-this */
1
2
  // = require ./form_filter.component
2
3
  // = require_self
3
4
 
4
- // Initializes the form filter. We're unmounting the component before
5
- // changing the page so that we stop listening to events and we don't bind
6
- // multiple times when re-visiting the page.
5
+ // Initializes the form filter.
7
6
  ((exports) => {
8
7
  const { Decidim: { FormFilterComponent } } = exports;
9
- const formFilter = new FormFilterComponent('form.new_filter');
8
+
9
+ $(() => {
10
+ $('form.new_filter').each(function () {
11
+ const formFilter = new FormFilterComponent($(this));
10
12
 
11
- const onDocumentReady = () => {
12
- formFilter.mountComponent();
13
- };
14
-
15
- const onTurboLinksBeforeVisit = () => {
16
- formFilter.unmountComponent();
17
- $(document).off('turbolinks:before-visit', onTurboLinksBeforeVisit);
18
- };
19
-
20
- $(document).ready(onDocumentReady);
21
- $(document).on('turbolinks:before-visit', onTurboLinksBeforeVisit);
13
+ formFilter.mountComponent();
14
+ })
15
+ });
22
16
  })(window);
@@ -10,8 +10,8 @@
10
10
  mounted;
11
11
  $form;
12
12
 
13
- constructor(selector) {
14
- this.$form = $(selector);
13
+ constructor($form) {
14
+ this.$form = $form;
15
15
  this.mounted = false;
16
16
 
17
17
  this._onFormChange = this._onFormChange.bind(this);
@@ -127,7 +127,7 @@
127
127
  // Iterate the filter params and set the correct form values
128
128
  fieldIds.forEach((fieldId) => {
129
129
  let field = null;
130
-
130
+
131
131
  // Since we are using Ruby on Rails generated forms the field ids for a
132
132
  // checkbox or a radio button has the following form: filter_${key}_${value}
133
133
  field = this.$form.find(`input#filter_${fieldId}_${filterParams[fieldId]}`);
@@ -138,7 +138,7 @@
138
138
  // If the field is not a checkbox neither a radio it means is a input or a select.
139
139
  // Ruby on Rails ensure the ids are constructed like this: filter_${key}
140
140
  field = this.$form.find(`input#filter_${fieldId},select#filter_${fieldId}`);
141
-
141
+
142
142
  if (field.length > 0) {
143
143
  field.val(filterParams[fieldId]);
144
144
  }
@@ -155,9 +155,9 @@
155
155
  * @returns {Void} - Returns nothing.
156
156
  */
157
157
  _onFormChange() {
158
- let newUrl = '';
159
158
  const formAction = this.$form.attr('action');
160
159
  const params = this.$form.serialize();
160
+ let newUrl = '';
161
161
 
162
162
  this.$form.submit();
163
163
 
@@ -34,7 +34,7 @@ describe('FormFilterComponent', () => {
34
34
  window.history = {
35
35
  pushState: sinon.stub()
36
36
  };
37
- subject = new FormFilterComponent(selector);
37
+ subject = new FormFilterComponent($(document).find('form'));
38
38
  });
39
39
 
40
40
  it('exists', () => {
@@ -0,0 +1,17 @@
1
+ // = require foundation.core.js
2
+ // = require foundation.dropdown.js
3
+ // = require foundation.dropdownMenu.js
4
+ // = require foundation.offcanvas.js
5
+ // = require foundation.responsiveMenu.js
6
+ // = require foundation.responsiveToggle.js
7
+ // = require foundation.reveal.js
8
+ // = require foundation.sticky.js
9
+ // = require foundation.tabs.js
10
+ // = require foundation.toggler.js
11
+ // = require foundation.util.box.js
12
+ // = require foundation.util.keyboard.js
13
+ // = require foundation.util.mediaQuery.js
14
+ // = require foundation.util.motion.js
15
+ // = require foundation.util.nest.js
16
+ // = require foundation.util.touch.js
17
+ // = require foundation.util.triggers.js
@@ -1,4 +1,4 @@
1
- $(document).on('turbolinks:load', () => {
1
+ $(() => {
2
2
  const $userRegistrationForm = $('.register-form');
3
3
  const $userGroupFields = $userRegistrationForm.find('.user-group-fields');
4
4
  const inputSelector = 'input[name="user[sign_up_as]"]';
@@ -12,11 +12,10 @@ $(document).on('turbolinks:load', () => {
12
12
  }
13
13
 
14
14
  setGroupFieldsVisibility($userRegistrationForm.find(`${inputSelector}:checked`).val());
15
-
15
+
16
16
  $userRegistrationForm.on('change', inputSelector, (event) => {
17
17
  const value = event.target.value;
18
18
 
19
19
  setGroupFieldsVisibility(value);
20
20
  });
21
-
22
21
  });
@@ -0,0 +1,9 @@
1
+ //@import compass
2
+ @import "variables";
3
+ @import "utils/*";
4
+
5
+ @import "foundation";
6
+ @include foundation-everything;
7
+
8
+ @import "modules/modules";
9
+ @import "layouts/*";
@@ -1,12 +1,10 @@
1
1
  // Variables
2
2
 
3
- $primary: map-get($foundation-palette, primary) !default;
4
- $secondary: map-get($foundation-palette, secondary) !default;
5
- $success: map-get($foundation-palette, success) !default;
6
- $warning: map-get($foundation-palette, warning) !default;
7
- $alert: map-get($foundation-palette, alert) !default;
8
-
9
- $light-gray-dark: darken($light-gray, 2.5) !default;
3
+ $primary: #ef604d !default;
4
+ $secondary: #599aa6 !default;
5
+ $success: #57d685 !default;
6
+ $warning: #ffae00 !default;
7
+ $alert: #ec5840 !default;
10
8
 
11
9
  $proposals: #238FF7 !default;
12
10
  $actions: #57D685 !default;
@@ -16,7 +14,3 @@ $meetings: #FABC6C !default;
16
14
  $twitter: #55acee !default;
17
15
  $facebook: #3b5998 !default;
18
16
  $google: #dd4b39 !default;
19
-
20
- $muted: lighten($body-font-color, 30) !default;
21
-
22
- $border: 1px solid $medium-gray !default;
@@ -0,0 +1,6 @@
1
+ @import "decidim";
2
+ @import "editor";
3
+
4
+ <% Decidim.feature_manifests.map(&:stylesheet).compact.each do |stylesheet| %>
5
+ @import "<%= stylesheet %>";
6
+ <% end %>
@@ -0,0 +1,13 @@
1
+ .leaflet-container {
2
+ .map-info {
3
+ border: 1px solid $primary;
4
+
5
+ .leaflet-popup-content-wrapper {
6
+ border-radius: 0;
7
+ }
8
+
9
+ a.button {
10
+ color: #fff;
11
+ }
12
+ }
13
+ }
@@ -9,6 +9,11 @@
9
9
  padding-top: .25rem;
10
10
  padding-bottom: .25rem;
11
11
  }
12
+
13
+ &:disabled{
14
+ @extend .button;
15
+ @extend .button.disabled;
16
+ }
12
17
  }
13
18
 
14
19
 
@@ -78,7 +83,8 @@
78
83
  }
79
84
 
80
85
  .show-more{
81
- font-size: 90%;
86
+ text-align: center;
87
+ margin-bottom: $margin-s;
82
88
  }
83
89
 
84
90
  /*Social buttons*/
@@ -117,4 +123,4 @@
117
123
  &:hover{
118
124
  background-color: lighten($google,5);
119
125
  }
120
- }
126
+ }
@@ -502,5 +502,3 @@ $datetime-bg: $primary;
502
502
  margin-top: auto;
503
503
  }
504
504
  }
505
-
506
-
@@ -30,11 +30,8 @@ $comment-form-bg: $light-gray;
30
30
  }
31
31
 
32
32
  .show-more--comment-thread{
33
- text-align: right;
34
- margin-top: -$card-margin-bottom;
33
+ margin-top: -$card-margin-bottom / 2;
35
34
  margin-bottom: $card-margin-bottom;
36
- padding-top: 3px;
37
- font-size: 90%;
38
35
  }
39
36
 
40
37
  .comment{
@@ -85,16 +82,44 @@ $comment-form-bg: $light-gray;
85
82
  float: right;
86
83
  }
87
84
  .comment__votes--up{
88
- color: $comment-vote-up-color;
89
- &:hover{
85
+ color: $muted;
86
+ .icon{
87
+ color: $comment-vote-up-color;
88
+ }
89
+ &:hover,
90
+ &.is-vote-selected{
90
91
  color: darken($comment-vote-up-color,10);
92
+ .icon{
93
+ color: inherit;
94
+ }
95
+ }
96
+ &.is-vote-notselected{
97
+ color: $muted;
98
+ opacity: .3;
99
+ .icon{
100
+ color: inherit;
101
+ }
91
102
  }
92
103
  }
93
104
  .comment__votes--down{
94
- color: $comment-vote-down-color;
105
+ color: $muted;
95
106
  padding-left: .3rem;
96
- &:hover{
107
+ .icon{
108
+ color: $comment-vote-down-color;
109
+ }
110
+ &:hover,
111
+ &.is-vote-selected{
97
112
  color: darken($comment-vote-down-color,10);
113
+ .icon{
114
+ color: inherit;
115
+ }
116
+ }
117
+ &.is-vote-notselected{
118
+ color: $muted;
119
+ opacity: .3;
120
+ .icon{
121
+ color: inherit;
122
+ }
98
123
  }
99
124
  }
100
125
 
@@ -0,0 +1,24 @@
1
+ //Variables
2
+
3
+ $filter-tags-color: $light-gray-dark;
4
+ $filter-tags-padding: .2rem;
5
+
6
+ /* Filter tags */
7
+ .filter-tags__title{
8
+ margin-right: $filter-tags-padding * 2;
9
+ }
10
+ .filter-tags{
11
+ margin-bottom: 1rem - $filter-tags-padding;
12
+ }
13
+ .filter-tag{
14
+ display: inline-block;
15
+ background-color: $filter-tags-color;
16
+ border: $border;
17
+ padding: $filter-tags-padding $filter-tags-padding * 2;
18
+ margin-right: $filter-tags-padding * 2;
19
+ margin-bottom: $filter-tags-padding;
20
+ }
21
+ .filter-tag__close{
22
+ padding-left: .5rem;
23
+ color: $body-font-color;
24
+ }
@@ -37,7 +37,7 @@ body{
37
37
 
38
38
  //fixes for off-canvas wrappers
39
39
  .off-canvas-wrapper{
40
- background-color: $white;
40
+ background-color: $light-gray;
41
41
  }
42
42
 
43
43
  .off-canvas-wrapper,
@@ -56,11 +56,3 @@ body{
56
56
  margin-right: -.5rem;
57
57
  }
58
58
  }
59
-
60
- //Sections
61
- .section{
62
- margin-bottom: 3rem;
63
- @include breakpoint(large){
64
- margin-bottom: 5rem;
65
- }
66
- }