anecdote 0.0.10 → 0.0.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/stylesheets/anecdote/_helpers.css.scss +12 -5
  3. data/app/assets/stylesheets/anecdote/_wysicontent.css.scss +33 -26
  4. data/lib/anecdote/version.rb +1 -1
  5. data/lib/anecdote.rb +48 -4
  6. data/test/dummy/app/views/pages/article.markdown +3 -1
  7. data/test/dummy/log/development.log +1262 -0
  8. data/test/dummy/tmp/cache/sprockets/v3.0/-e9scu-68U2p6kLKREWrs3crhHOLRBTg6o-jBM8HSdY.cache +1 -0
  9. data/test/dummy/tmp/cache/sprockets/v3.0/0KH81v-SZStX62buDM5vfqSEbt8NFgCaxyyFKxhRdrY.cache +0 -0
  10. data/test/dummy/tmp/cache/sprockets/v3.0/0pClM4ktWKVtNWpgonuiPppPrDDhQw5u_VjNrLFjXlY.cache +0 -0
  11. data/test/dummy/tmp/cache/sprockets/v3.0/2KPMLvBdqGpAvvHEv9k-IkxikOPfPT20FvJrgHuyD-s.cache +0 -0
  12. data/test/dummy/tmp/cache/sprockets/v3.0/2elBOQrc6tft5VQOobCs0g2VvCZiLN-X81k6cb7G9jo.cache +1 -0
  13. data/test/dummy/tmp/cache/sprockets/v3.0/3vwPc3Maxjj-2rhKTiDNYqv4TvPrXhCacaHifk8G3Uc.cache +0 -0
  14. data/test/dummy/tmp/cache/sprockets/v3.0/4Md9vXbgq-EEQTBfyjDj-CzNKn7cV1EqjkbO4zr8PXw.cache +1 -0
  15. data/test/dummy/tmp/cache/sprockets/v3.0/5hHwlR3sVPpUZFnrgCD9eU_riRB6FlPmdajo3F3Y3A0.cache +1 -0
  16. data/test/dummy/tmp/cache/sprockets/v3.0/6JGzFmdF51FF7E80EW7xx6YP-0brqt6jsVvrFMB_eT0.cache +0 -0
  17. data/test/dummy/tmp/cache/sprockets/v3.0/6t7z3FsmWcKGFszG4PMCr_5i5oPV1qfqlQ8LEwITlb0.cache +0 -0
  18. data/test/dummy/tmp/cache/sprockets/v3.0/75FbWZBnBwS_27lzsnuRtVhkgZ82n-pC7Ej6NCmpYzQ.cache +1 -0
  19. data/test/dummy/tmp/cache/sprockets/v3.0/7AM6N2agbx2b_y4ahordzgVTcTDuZqql2UOFFU5LkWU.cache +1 -0
  20. data/test/dummy/tmp/cache/sprockets/v3.0/8zC-GMDTdO_vrYSOFiDudbFRspJyQGVpkjI8yyGjGkc.cache +1 -0
  21. data/test/dummy/tmp/cache/sprockets/v3.0/B1HOr4cTQFf48rWt5sdvntZ5GVN-Uty1p9QcL7wM5JQ.cache +0 -0
  22. data/test/dummy/tmp/cache/sprockets/v3.0/C9myNAZnWKUwsY12cataDiKDzO7KvlMDlJ-fA12h4NQ.cache +1 -0
  23. data/test/dummy/tmp/cache/sprockets/v3.0/Cy-_QsfV2w2ZpjT7tHP66-J0tCEjbdqn5Myl3IEcdss.cache +0 -0
  24. data/test/dummy/tmp/cache/sprockets/v3.0/DnbPXbnrLphxr6lEyMl_2_cl4P11HS4LgUxUUut-9vk.cache +1 -0
  25. data/test/dummy/tmp/cache/sprockets/v3.0/G5oE1unc95Lofv0PJgCB2wBC-N6_t5WgzWkrDzUvjGY.cache +0 -0
  26. data/test/dummy/tmp/cache/sprockets/v3.0/HDBO0HCfOz_KM_f-d-lj7KgreqfXhMZwHOyZ2qTqI4c.cache +0 -0
  27. data/test/dummy/tmp/cache/sprockets/v3.0/I7U6VS8-jgAH1d8rYKA6guhRDHZdY3zIMqbLmbvTM0w.cache +0 -0
  28. data/test/dummy/tmp/cache/sprockets/v3.0/IF3RbZ8QLRLbAiFKJySugh9CouSnqXSqF9eRZYoWVXg.cache +0 -0
  29. data/test/dummy/tmp/cache/sprockets/v3.0/MGCtFesvQGc4bSVgwydFKxhKG7hIGfyjgQHEk__EtEg.cache +0 -0
  30. data/test/dummy/tmp/cache/sprockets/v3.0/MvE1R-N3zbMnSmW7ZEC976nfc-i315SaL84Z_bU4I6E.cache +0 -0
  31. data/test/dummy/tmp/cache/sprockets/v3.0/N-bdGBRwCgYWHQk_s3zdORqqB4_u9EaYngtmLZKUoLU.cache +0 -0
  32. data/test/dummy/tmp/cache/sprockets/v3.0/OIiR1SEC8jI4sEe-6IFHVABh9UJLqEcn_BZH6zQUdgo.cache +0 -0
  33. data/test/dummy/tmp/cache/sprockets/v3.0/RNZpVRqd6sYKaLbCfVcPoxPXRhWQtdRatYhvKe_H9Hs.cache +1 -0
  34. data/test/dummy/tmp/cache/sprockets/v3.0/RxbOb9wNUzA_wZq2V_y19tWa-DI5cG8ZAwQ6UNENJa4.cache +1 -0
  35. data/test/dummy/tmp/cache/sprockets/v3.0/U1EbxcbU1bKS0NbS5tp2kczbMT3AvDlbzt0jtnkQfLk.cache +0 -0
  36. data/test/dummy/tmp/cache/sprockets/v3.0/Z9XTqhsR82aRt9ljeOg2HdROsbP6IrAa0v1rBr3Cxw8.cache +1 -0
  37. data/test/dummy/tmp/cache/sprockets/v3.0/dqBDD5Hpw0BA79OU1Mi1pFMfjuoYfCXNLnzuXd8GLy0.cache +2 -0
  38. data/test/dummy/tmp/cache/sprockets/v3.0/fndy6PSKwiKxeQw4R9JzUmL05hVUSYNVkOoFsjrsCw4.cache +0 -0
  39. data/test/dummy/tmp/cache/sprockets/v3.0/hEF9ExosLSBGWDTJ223-V2SFQjcgoKJjH8Wv4xguo1U.cache +0 -0
  40. data/test/dummy/tmp/cache/sprockets/v3.0/hhDPRo9RultgCyRxKZi-lfiRJY0yxKf-BUJeFSUKWHg.cache +1 -0
  41. data/test/dummy/tmp/cache/sprockets/v3.0/kRIaSI3CV4_popRI5r2fDHLOwIzqs7TTYMDyFVbMZPI.cache +1 -0
  42. data/test/dummy/tmp/cache/sprockets/v3.0/lwPd0OsQX9xniUMPdJ5dcyVA2HaYW0yodVzlHt1M-s0.cache +1 -0
  43. data/test/dummy/tmp/cache/sprockets/v3.0/mw06dFX61vyhK1gkTNHoaHtgchLFvG66dxLoZk3c7AI.cache +2 -0
  44. data/test/dummy/tmp/cache/sprockets/v3.0/myq0n7HhTQrAG2zjFqXLUXwIrnGNHHa2Q0gve9maOcE.cache +0 -0
  45. data/test/dummy/tmp/cache/sprockets/v3.0/slvxrhaKS7c-7a-erMNMGamIOlwl4RO6XZuKB_nt5Jk.cache +0 -0
  46. data/test/dummy/tmp/cache/sprockets/v3.0/t2pzla0GFKQYbYoxGO__vIdZn0tQAjjibLWdfM_yiZo.cache +1 -0
  47. data/test/dummy/tmp/cache/sprockets/v3.0/u0ONNwsgSjNRYDbOptVAkMyun0V4uZ9sNiWo4rb0vFI.cache +0 -0
  48. data/test/dummy/tmp/cache/sprockets/v3.0/u2ri2LTrlaNX_MSf_l4XNGG9RwMJp7sZYTFCbUTSrM0.cache +1 -0
  49. data/test/dummy/tmp/cache/sprockets/v3.0/ufza2XXZK28bjvLWA3U9XT4ZtxJHTcn-SYMxhCU3WSI.cache +1 -0
  50. data/test/dummy/tmp/cache/sprockets/v3.0/vD1jtvyicEcxoKtxjPav7KKsR1uy4B4DIsvI3-c22WM.cache +0 -0
  51. data/test/dummy/tmp/cache/sprockets/v3.0/vEpmZyXKRfYGQd1TdU615J75yBsWSjy1Q59kc4PPjls.cache +0 -0
  52. data/test/dummy/tmp/cache/sprockets/v3.0/wsL8yJcE0XwoizIF2S4h3qVQffQYJ7dQhLwrq-T7re0.cache +0 -0
  53. data/test/dummy/tmp/cache/sprockets/v3.0/xMaOlwSb2PZwwTURK0IR405p5e4wm9EnGo6z6jY_NJM.cache +1 -0
  54. data/test/dummy/tmp/cache/sprockets/v3.0/yJQzRUENd9XnD2jK051Ry_tFzaMg1IKawpl3woSjR6A.cache +1 -0
  55. metadata +86 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: ff6e14b8464ba17f6f0d8cf11f936a8455035d26
4
- data.tar.gz: c0e0dad1d0955725c377735f2ffc6f174741b46b
3
+ metadata.gz: 731d413c12e7e2df573ec129199e90c23f2b1762
4
+ data.tar.gz: 8744182c040cca592769fdfab20aeb4b2e2a383e
5
5
  SHA512:
6
- metadata.gz: 9a03bf91dba31643906f05b987d24901b48eaf66e74ad23cb0e8d892d839d76e11de8da1bcdca9f6f12bfd28b03e01a49766d042523e03ae4ba9706ad6f99a22
7
- data.tar.gz: 87dc8ced93becde6620b8d9dd125041787f5a105eb82c8dccc0a34aeea3f2ed68f51b984812a60f6e30989d774aed8594534bb77275099bdbf725e43d2f6b5a3
6
+ metadata.gz: a4857bc8480b415482180e80221f391acd24971e8834785e501c75238a6a361fd72d53b478887064a6ec765be1149418c38226b10a4c78f8ce92427636614abe
7
+ data.tar.gz: 5a6ced3382c1972bc3c90787186246ca79dea3bfe93a939a78703dd4e492d323eeac448b2eb71b9cd3fc1ddb648dd7f110bc30a09fb3258638739449e1460a24
@@ -1,10 +1,17 @@
1
1
 
2
2
  $remify-baseline: 16 !default;
3
- $respond-device-medium-handheld: 350px;
4
- $respond-device-large-handheld: 450px;
5
- $respond-device-tablet: 650px;
6
- $respond-device-laptop: 960px;
7
- $respond-device-large-monitor: 1300px;
3
+ $respond-devices: (
4
+ medium-handheld: 350px,
5
+ large-handheld: 450px,
6
+ tablet: 650px,
7
+ laptop: 960px,
8
+ large-monitor: 1300px
9
+ );
10
+ $respond-device-medium-handheld: map-get($respond-devices, medium-handheld);
11
+ $respond-device-large-handheld: map-get($respond-devices, large-handheld);
12
+ $respond-device-tablet: map-get($respond-devices, tablet);
13
+ $respond-device-laptop: map-get($respond-devices, laptop);
14
+ $respond-device-large-monitor: map-get($respond-devices, large-monitor);
8
15
  $fix-mqs: false !default;
9
16
 
10
17
 
@@ -105,36 +105,31 @@
105
105
  @include margin-horizontal( auto );
106
106
  width: 100%;
107
107
  }
108
- @include respond(min, large-handheld) {
109
- &.v-size-small {
110
- &.v-float-right, &.v-float-left {
111
- @include remify( margin, 0.35, 2, 1 );
112
- }
113
- &.v-float-right {
114
- float: right;
115
- margin-right: 0;
116
- }
117
- &.v-float-left {
118
- float: left;
119
- margin-left: 0;
120
- }
108
+
109
+ @mixin float-module-3ba83n {
110
+ &.v-float-right, &.v-float-left {
111
+ @include remify( margin, 0.35, 2, 1 );
112
+ }
113
+ &.v-float-right {
114
+ float: right;
115
+ margin-right: 0;
116
+ }
117
+ &.v-float-left {
118
+ float: left;
119
+ margin-left: 0;
121
120
  }
122
121
  }
123
- @include respond(min, laptop) {
124
- &.v-size-medium {
125
- &.v-float-right, &.v-float-left {
126
- @include remify( margin, 0.35, 2, 1 );
127
- }
128
- &.v-float-right {
129
- float: right;
130
- margin-right: 0;
131
- }
132
- &.v-float-left {
133
- float: left;
134
- margin-left: 0;
122
+ &.v-float-from-always {
123
+ @include float-module-3ba83n;
124
+ }
125
+ @each $breakpoint-name, $breakpoint-px in $respond-devices {
126
+ &.v-float-from-#{$breakpoint-name} {
127
+ @include respond(min, $breakpoint-name) {
128
+ @include float-module-3ba83n;
135
129
  }
136
130
  }
137
131
  }
132
+
138
133
  }
139
134
 
140
135
 
@@ -172,7 +167,8 @@
172
167
  display: none;
173
168
  }
174
169
 
175
- @include respond(min, tablet) {
170
+
171
+ @mixin flow-gallery-dn2bak {
176
172
  .flexbox & {
177
173
  .anecdote-gallery-offset-dn2bak {
178
174
  display: block;
@@ -198,6 +194,17 @@
198
194
  }
199
195
  }
200
196
  }
197
+ &.v-flow-from-always {
198
+ @include flow-gallery-dn2bak;
199
+ }
200
+ @each $breakpoint-name, $breakpoint-px in $respond-devices {
201
+ &.v-flow-from-#{$breakpoint-name} {
202
+ @include respond(min, $breakpoint-name) {
203
+ @include flow-gallery-dn2bak;
204
+ }
205
+ }
206
+ }
207
+
201
208
  }
202
209
 
203
210
  /*---------------------------------------------------
@@ -1,3 +1,3 @@
1
1
  module Anecdote
2
- VERSION = "0.0.10"
2
+ VERSION = "0.0.11"
3
3
  end
data/lib/anecdote.rb CHANGED
@@ -25,19 +25,23 @@ module Anecdote
25
25
  contents = []
26
26
  contents << view_context.content_tag((settings[:href].present? ? :a : :div), (settings[:href].present? ? { href: settings[:href], title: settings[:href_title] } : {}).merge({ class: 'anecdote-intrinsic-embed-n42ha1' })) do
27
27
  if settings[:assets_path]
28
- image_url = settings[:assets_path]
28
+ content = view_context.image_tag(settings[:assets_path], alt: '')
29
29
  paperclip_geo = Paperclip::Geometry.from_file(Rails.root.join('app', 'assets', 'images', settings[:assets_path]))
30
30
  geo = { width: paperclip_geo.width, height: paperclip_geo.height }
31
31
  elsif settings[:image_url]
32
- image_url = settings[:image_url]
33
- dimensions = settings[:image_dimensions].split('x').map(&:to_f)
32
+ content = view_context.image_tag(settings[:image_url], alt: '')
33
+ dimensions = (settings[:dimensions] || settings[:image_dimensions]).split('x').map(&:to_f)
34
+ geo = { width: dimensions.first, height: dimensions.last }
35
+ elsif settings[:embed_code]
36
+ content = settings[:embed_code].html_safe
37
+ dimensions = settings[:dimensions].split('x').map(&:to_f)
34
38
  geo = { width: dimensions.first, height: dimensions.last }
35
39
  end
36
40
  if settings[:_scope_].present? && settings[:_scope_][:processor].tag == 'gallery'
37
41
  settings[:_scope_][:settings][:_graphics_] ||= []
38
42
  settings[:_scope_][:settings][:_graphics_] << geo
39
43
  end
40
- view_context.content_tag(:div, view_context.image_tag(image_url, alt: ''), class: 'inner', style: "padding-bottom: #{geo[:height] / geo[:width] * 100}%;")
44
+ view_context.content_tag(:div, content, class: 'inner', style: "padding-bottom: #{geo[:height] / geo[:width] * 100}%;")
41
45
  end
42
46
  if settings[:caption].present?
43
47
  contents << view_context.content_tag(:div, view_context.content_tag(:div, markdown_and_parse(settings[:caption]), class: 'inner anecdote-wysicontent-ndj4ab'), class: 'anecdote-caption-ajkd3b')
@@ -109,6 +113,28 @@ module Anecdote
109
113
  "style=\"#{styles.join(';')}\" #{match}".html_safe
110
114
  end
111
115
 
116
+ # flow-points
117
+ flow_from_klass = case settings[:flow_from]
118
+ when 'always' then 'v-flow-from-always'
119
+ when 'medium-handheld' then 'v-flow-from-medium-handheld'
120
+ when 'large-handheld' then 'v-flow-from-large-handheld'
121
+ when 'tablet' then 'v-flow-from-tablet'
122
+ when 'laptop' then 'v-flow-from-laptop'
123
+ when 'large-monitor' then 'v-flow-from-large-monitor'
124
+ else
125
+ if settings[:size].present?
126
+ case settings[:size]
127
+ when 'small' then 'v-flow-from-medium-handheld'
128
+ when 'medium' then 'v-flow-from-large-handheld'
129
+ when 'big' then 'v-flow-from-tablet'
130
+ when 'full-width' then 'v-flow-from-tablet'
131
+ end
132
+ else
133
+ 'v-flow-from-tablet' # default
134
+ end
135
+ end
136
+ klass += " #{flow_from_klass}"
137
+
112
138
  # build HTML output
113
139
  contents = []
114
140
  contents << view_context.content_tag(:div, graphics.html_safe, class: 'content')
@@ -142,6 +168,24 @@ module Anecdote
142
168
  when 'right' then 'v-float-right'
143
169
  when 'left' then 'v-float-left'
144
170
  end
171
+ klasses << case settings[:float_from]
172
+ when 'always' then 'v-float-from-always'
173
+ when 'medium-handheld' then 'v-float-from-medium-handheld'
174
+ when 'large-handheld' then 'v-float-from-large-handheld'
175
+ when 'tablet' then 'v-float-from-tablet'
176
+ when 'laptop' then 'v-float-from-laptop'
177
+ when 'large-monitor' then 'v-float-from-large-monitor'
178
+ else
179
+ if settings[:size].present?
180
+ case settings[:size]
181
+ when 'small' then 'v-float-from-large-handheld'
182
+ when 'medium' then 'v-float-from-laptop'
183
+ when 'big' then 'v-flow-from-large-monitor'
184
+ end
185
+ else
186
+ 'v-float-from-laptop' # default
187
+ end
188
+ end
145
189
  end
146
190
  if settings[:mood].present?
147
191
  klasses << case settings[:mood]
@@ -8,7 +8,9 @@ We considered naming this article "the sort type all users want but zero sites o
8
8
 
9
9
  During our research study on product list usability the test subjects repeatedly sought out these kinds of category-specific sort types – however, to no avail since seemingly **zero sites** offer them. Even after [benchmarking](http://baymard.com/ecommerce-product-lists/benchmark/site-reviews) the product lists of 50 major e-commerce sites we have yet to find a site that truly offer category-specific sorting.
10
10
 
11
- {{% gallery: size=big + scale-by=relative-width-bottom-alignment %}}
11
+ {{ graphic: dimensions=1280x720 + embed-code=$<iframe src="https://www.youtube.com/embed/ZCBE8ocOkAQ" frameborder="0" allowfullscreen></iframe>$ + mood=positive + caption=$A mockup we've created of what category-specific sort types could look like at BestBuy. Here the three last sorting options – for TV screen size, refresh rate, and display depth – are available exclusively within the TV category while the other sort types are available site-wide.$ }}
12
+
13
+ {{% gallery: size=big + flow-from=always + scale-by=relative-width-bottom-alignment %}}
12
14
  {{ graphic: assets-path=category-specific-sorting-02-bestbuy.jpg + mood=positive + caption=$A mockup we've created of what category-specific sort types could look like at BestBuy. Here the three last sorting options – for TV screen size, refresh rate, and display depth – are available exclusively within the TV category while the other sort types are available site-wide.$ }}
13
15
  {{ graphic: assets-path=category-specific-sorting-08-faceted-sorting.jpg + mood=negative + caption=$An example of how things can go really wrong.$ }}
14
16
  {{% end %}}