rails_admin_content_builder 1.0.4 → 1.0.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (67) hide show
  1. checksums.yaml +4 -4
  2. data/.coveralls.yml +1 -0
  3. data/.gitignore +1 -1
  4. data/.rubocop.yml +10 -0
  5. data/Gemfile +2 -1
  6. data/README.md +12 -1
  7. data/Rakefile +7 -7
  8. data/app/assets/images/cb-snippet-image-text.jpg +0 -0
  9. data/app/assets/images/cb-snippet-image-text.psd +0 -0
  10. data/app/assets/images/cb-snippet-image.jpg +0 -0
  11. data/app/assets/images/cb-snippet-image.psd +0 -0
  12. data/app/assets/images/cb-snippet-quote-text.jpg +0 -0
  13. data/app/assets/images/cb-snippet-quote-text.psd +0 -0
  14. data/app/assets/images/cb-snippet-quote.jpg +0 -0
  15. data/app/assets/images/cb-snippet-quote.psd +0 -0
  16. data/app/assets/images/cb-snippet-relational-text.jpg +0 -0
  17. data/app/assets/images/cb-snippet-relational-text.psd +0 -0
  18. data/app/assets/images/cb-snippet-text-image.jpg +0 -0
  19. data/app/assets/images/cb-snippet-text-image.psd +0 -0
  20. data/app/assets/images/cb-snippet-text-quote.jpg +0 -0
  21. data/app/assets/images/cb-snippet-text-quote.psd +0 -0
  22. data/app/assets/images/cb-snippet-text-relational.jpg +0 -0
  23. data/app/assets/images/cb-snippet-text-relational.psd +0 -0
  24. data/app/assets/images/cb-snippet-text.jpg +0 -0
  25. data/app/assets/images/cb-snippet-text.psd +0 -0
  26. data/app/assets/images/cb-snippet-video.jpg +0 -0
  27. data/app/assets/images/cb-snippet-video.psd +0 -0
  28. data/app/assets/javascripts/rails_admin/content_builder.js.erb +27 -20
  29. data/app/assets/stylesheets/rails_admin/content_builder.scss +174 -81
  30. data/app/controllers/rails_admin_content_builder/content_builder_controller.rb +7 -9
  31. data/app/helpers/rails_admin_content_builder/content_builder_helpers.rb +9 -3
  32. data/app/models/rails_admin_content_builder/content_builder.rb +21 -5
  33. data/app/views/rails_admin/main/content_builder.html.erb +3 -3
  34. data/bin/console +3 -3
  35. data/config/initializers/assets.rb +13 -13
  36. data/config/locales/content_builder.en.yml +4 -0
  37. data/config/locales/content_builder.pt-BR.yml +4 -0
  38. data/config/routes.rb +6 -6
  39. data/lib/generators/rails_admin_content_builder_generator.rb +17 -9
  40. data/lib/generators/templates/content_builder_image_uploader.rb +3 -13
  41. data/lib/rails_admin_content_builder.rb +3 -3
  42. data/lib/rails_admin_content_builder/engine.rb +1 -1
  43. data/lib/rails_admin_content_builder/version.rb +1 -1
  44. data/rails_admin_content_builder.gemspec +22 -20
  45. data/screenshot/image1.png +0 -0
  46. data/spec/controllers/rails_admin_content_builder/content_builder_controller_spec.rb +41 -5
  47. data/spec/dummy/Gemfile +0 -1
  48. data/spec/dummy/app/uploaders/content_builder_image_uploader.rb +2 -3
  49. data/spec/dummy/bin/setup +8 -8
  50. data/spec/dummy/config/application.rb +7 -7
  51. data/spec/dummy/config/initializers/rails_admin.rb +0 -1
  52. data/spec/dummy/config/initializers/simple_form.rb +1 -1
  53. data/spec/dummy/db/schema.rb +23 -25
  54. data/spec/factories/content_builder_categories.rb +2 -1
  55. data/spec/factories/content_builder_images.rb +7 -2
  56. data/spec/features/create_content_builder_category_spec.rb +4 -3
  57. data/spec/features/create_content_builder_spec.rb +5 -4
  58. data/spec/features/status_content_builder_spec.rb +8 -5
  59. data/spec/helpers/rails_admin_content_builder/content_builder_helper_spec.rb +15 -12
  60. data/spec/models/rails_admin_content_builder/content_builder_category_spec.rb +1 -1
  61. data/spec/models/rails_admin_content_builder/content_builder_image_spec.rb +1 -1
  62. data/spec/models/rails_admin_content_builder/content_builder_spec.rb +22 -8
  63. data/spec/spec_helper.rb +4 -4
  64. data/spec/version_spec.rb +1 -1
  65. data/vendor/assets/stylesheets/rails_admin_content_builder.scss +47 -30
  66. metadata +1726 -4
  67. data/spec/dummy/db/development.sqlite3 +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 08dbceab826bfbc8a3b8999691cb31ff290844cb
4
- data.tar.gz: 7f49c1ab99d574403295a9cae17e0ea3500977e7
3
+ metadata.gz: 23829c9a4ba68dd9d6a5acaeb476aa4425ea4a73
4
+ data.tar.gz: baffc9d84ef4f27711101aa7e4e3f320656d9fe1
5
5
  SHA512:
6
- metadata.gz: fd9ee5c8f53f075e6ed2fb08f98ddcdb2882a3d9d46e552ca5990568759c33ecfe2370aab5d6dbbeaae3d0dac28a3477ed4e281046cf00f7d8390c9af45e6317
7
- data.tar.gz: 54abe1bdc19700b174bdaaa112bc202ac7bf6fed66af1b14d46941f9941ff3dca6629f18226d067eccfd3da6d021e508dfca9b0e3cfcc885ed8682356d151b85
6
+ metadata.gz: 6828e3af7a5db268bb9791fa31e2ec73293097cc764031a4081d838be01710bab2a3c8f6ebcbf54c17fcff7a1e7090bb3a72c1adacf7675ee87aada52bef0f46
7
+ data.tar.gz: aa22d5561a6991ab7ce30ca08e96df207168d050badecb0d808ccf9eb29e7e91cbc56042b0f8e5931b44d8755e025edf1c24a3586d8b944bbd55b02adfa8a9a2
@@ -0,0 +1 @@
1
+ repo_token: 33B2gHdbHj3Q3bR56oOsqCrbuhCRmNFKj
data/.gitignore CHANGED
@@ -2,9 +2,9 @@
2
2
  /.yardoc
3
3
  /Gemfile.lock
4
4
  /_yardoc/
5
- /coverage/
6
5
  /doc/
7
6
  /pkg/
7
+ /coverage/
8
8
  /spec/reports/
9
9
  /tmp/
10
10
  /.idea/*
@@ -0,0 +1,10 @@
1
+ AllCops:
2
+ Exclude:
3
+ - 'spec/dummy/**/*'
4
+ - 'vendor/bundle/**/*'
5
+
6
+ Style/FrozenStringLiteralComment:
7
+ Enabled: false
8
+
9
+ Documentation:
10
+ Enabled: false
data/Gemfile CHANGED
@@ -7,6 +7,7 @@ group :development, :test do
7
7
  gem 'friendly_id'
8
8
  gem 'rails_admin'
9
9
  gem 'fuubar'
10
- gem 'codeclimate-test-reporter'
10
+ gem 'coveralls', require: false
11
+ gem 'rubocop'
11
12
  gem 'simplecov', require: false
12
13
  end
data/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  [![Build Status](https://travis-ci.org/luizpicolo/rails_admin_content_builder.svg?branch=master)](https://travis-ci.org/luizpicolo/rails_admin_content_builder)
4
4
  [![Code Climate](https://codeclimate.com/github/luizpicolo/rails_admin_content_builder/badges/gpa.svg)](https://codeclimate.com/github/luizpicolo/rails_admin_content_builder)
5
- [![Test Coverage](https://codeclimate.com/github/luizpicolo/rails_admin_content_builder/badges/coverage.svg)](https://codeclimate.com/github/luizpicolo/rails_admin_content_builder/coverage)
5
+ [![Coverage Status](https://coveralls.io/repos/github/luizpicolo/rails_admin_content_builder/badge.svg?branch=master)](https://coveralls.io/github/luizpicolo/rails_admin_content_builder?branch=master)
6
6
  [![Issue Count](https://codeclimate.com/github/luizpicolo/rails_admin_content_builder/badges/issue_count.svg)](https://codeclimate.com/github/luizpicolo/rails_admin_content_builder)
7
7
 
8
8
  Easy way for create contents using [rails_admin](https://github.com/sferik/rails_admin)
@@ -97,6 +97,11 @@ In your show content view
97
97
  </article>
98
98
  ```
99
99
 
100
+ ## Run tests
101
+
102
+ bundle exec rake
103
+ rspec
104
+
100
105
  ## Attributes and Methods
101
106
 
102
107
  ```ruby
@@ -112,6 +117,12 @@ In your show content view
112
117
  content_sanitized : Text
113
118
  content_builder_images : Object
114
119
  ```
120
+ ## Run tests
121
+
122
+ ```ruby
123
+ bundle exec rake
124
+ rspec
125
+ ```
115
126
 
116
127
  # Demonstration
117
128
 
data/Rakefile CHANGED
@@ -1,21 +1,21 @@
1
1
  #!/usr/bin/env rake
2
2
  begin
3
- require 'bundler/setup'
3
+ require 'bundler/setup'
4
4
  rescue LoadError
5
- puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
5
+ puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
6
6
  end
7
7
 
8
- APP_RAKEFILE = File.expand_path("../spec/dummy/Rakefile", __FILE__)
8
+ APP_RAKEFILE = File.expand_path('../spec/dummy/Rakefile', __FILE__)
9
9
  load 'rails/tasks/engine.rake'
10
10
 
11
11
  Bundler::GemHelper.install_tasks
12
12
 
13
- Dir[File.join(File.dirname(__FILE__), 'tasks/**/*.rake')].each {|f| load f }
13
+ Dir[File.join(File.dirname(__FILE__), 'tasks/**/*.rake')].each { |f| load f }
14
14
 
15
15
  require 'rspec/core'
16
16
  require 'rspec/core/rake_task'
17
17
 
18
- desc "Run all specs in spec directory (excluding plugin specs)"
19
- RSpec::Core::RakeTask.new(:spec => 'app:db:test:prepare')
18
+ desc 'Run all specs in spec directory (excluding plugin specs)'
19
+ RSpec::Core::RakeTask.new(spec: 'app:db:test:prepare')
20
20
 
21
- task :default => :spec
21
+ task default: :spec
@@ -26,7 +26,7 @@ $(document).on('rails_admin.dom_ready', function() {
26
26
 
27
27
  // when click on delete button
28
28
  $(document).on('click', '.cb-tools__btn--delete', function() {
29
- var resp = confirm('<%= I18n.t('ad$(min.actions.news_admin.delete_block')%>');
29
+ var resp = confirm('<%= I18n.t('admin.actions.content_builder.delete_block')%>');
30
30
 
31
31
  if(resp) {
32
32
  $($(this).attr('href')).remove();
@@ -45,7 +45,7 @@ $(document).on('click', '.cb-tools__btn--upload', function() {
45
45
 
46
46
  // when click on youtube buttons
47
47
  $(document).on('click', '.cb-tools__btn--youtube', function() {
48
- var resp = prompt('Cole a url do YouTube', '');
48
+ var resp = prompt('<%= I18n.t('admin.actions.content_builder.url')%>', '');
49
49
  resp = youtubeParser(resp);
50
50
 
51
51
  if(resp) {
@@ -73,7 +73,7 @@ $(document).on('click', '.cb-snippet__btn', function(e) {
73
73
  element += '</div>';
74
74
 
75
75
  element += '<div class="cb-text">';
76
- element += '<p>Lorem Ipsum é simplesmente uma simulação de texto da indústria tipográfica e de impressos, e vem sendo utilizado desde o século XVI, quando um impressor desconhecido pegou uma bandeja de tipos e os embaralhou para fazer um livro de modelos de tipos.</p>';
76
+ element += '<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur venenatis congue pharetra. Proin quis commodo odio. Fusce a sapien massa. Praesent ultrices dolor at risus porttitor, nec semper orci ornare. Nullam nisi eros, pellentesque et suscipit ac, ultrices eget lorem. Donec ipsum tellus, aliquet vitae metus ut, tempus viverra lorem.</p>';
77
77
  element += '</div>';
78
78
 
79
79
  element += '</div>';
@@ -98,11 +98,13 @@ $(document).on('click', '.cb-snippet__btn', function(e) {
98
98
  element += '<a class="cb-tools__btn cb-tools__btn--upload fa fa-camera" href="#'+ id + '"></a>';
99
99
  element += '</div>';
100
100
  element += '</div>';
101
- element += '<figcaption class="cb-figcaption cb-text">Descrição da imagem</figcaption>';
101
+ element += '<figcaption class="cb-figcaption cb-text">';
102
+ element += '<%= I18n.t('admin.actions.content_builder.image_description')%>';
103
+ element += '</figcaption>';
102
104
  element += '</figure>';
103
105
 
104
106
  element += '<div class="cb-text">';
105
- element += '<p>Lorem Ipsum é simplesmente uma simulação de texto da indústria tipográfica e de impressos, e vem sendo utilizado desde o século XVI, quando um impressor desconhecido pegou uma bandeja de tipos e os embaralhou para fazer um livro de modelos de tipos.</p>';
107
+ element += '<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur venenatis congue pharetra. Proin quis commodo odio. Fusce a sapien massa. Praesent ultrices dolor at risus porttitor, nec semper orci ornare. Nullam nisi eros, pellentesque et suscipit ac, ultrices eget lorem. Donec ipsum tellus, aliquet vitae metus ut, tempus viverra lorem.</p>';
106
108
  element += '</div>';
107
109
 
108
110
  element += '</div>';
@@ -128,12 +130,14 @@ $(document).on('click', '.cb-snippet__btn', function(e) {
128
130
  element += '<a class="cb-tools__btn cb-tools__btn--upload fa fa-camera" href="#'+ id + '"></a>';
129
131
  element += '</div>';
130
132
  element += '</div>';
131
- element += '<figcaption class="cb-figcaption cb-text">Descrição da imagem</figcaption>';
133
+ element += '<figcaption class="cb-figcaption cb-text">';
134
+ element += '<%= I18n.t('admin.actions.content_builder.image_description')%>';
135
+ element += '</figcaption>';
132
136
  element += '</figure>';
133
137
 
134
138
 
135
139
  element += '<div class="cb-text">';
136
- element += '<p>Lorem Ipsum é simplesmente uma simulação de texto da indústria tipográfica e de impressos, e vem sendo utilizado desde o século XVI, quando um impressor desconhecido pegou uma bandeja de tipos e os embaralhou para fazer um livro de modelos de tipos.</p>';
140
+ element += '<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur venenatis congue pharetra. Proin quis commodo odio. Fusce a sapien massa. Praesent ultrices dolor at risus porttitor, nec semper orci ornare. Nullam nisi eros, pellentesque et suscipit ac, ultrices eget lorem. Donec ipsum tellus, aliquet vitae metus ut, tempus viverra lorem.</p>';
137
141
  element += '</div>';
138
142
 
139
143
  element += '</div>';
@@ -159,7 +163,9 @@ $(document).on('click', '.cb-snippet__btn', function(e) {
159
163
  element += '<a class="cb-tools__btn cb-tools__btn--upload fa fa-camera" href="#'+ id + '"></a>';
160
164
  element += '</div>';
161
165
  element += '</div>';
162
- element += '<figcaption class="cb-figcaption cb-text">Descrição da imagem</figcaption>';
166
+ element += '<figcaption class="cb-figcaption cb-text">';
167
+ element += '<%= I18n.t('admin.actions.content_builder.image_description')%>';
168
+ element += '</figcaption>';
163
169
  element += '</figure>';
164
170
 
165
171
  element += '</div>';
@@ -202,12 +208,12 @@ $(document).on('click', '.cb-snippet__btn', function(e) {
202
208
  element += '</div>';
203
209
 
204
210
  element += '<blockquote class="cb-blockquote cb-blockquote--left">';
205
- element += '<div class="cb-blockquote__text cb-text"><p>Lorem Ipsum é simplesmente uma simulação de texto da indústria tipográfica e de impressos</p></div>';
211
+ element += '<div class="cb-blockquote__text cb-text"><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur venenatis</p></div>';
206
212
  element += '<footer class="cb-blockquote__footer cb-text">Lorem Ipsum</footer>';
207
213
  element += '</blockquote>';
208
214
 
209
215
  element += '<div class="cb-text">';
210
- element += '<p>Lorem Ipsum é simplesmente uma simulação de texto da indústria tipográfica e de impressos, e vem sendo utilizado desde o século XVI, quando um impressor desconhecido pegou uma bandeja de tipos e os embaralhou para fazer um livro de modelos de tipos.</p>';
216
+ element += '<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur venenatis congue pharetra. Proin quis commodo odio. Fusce a sapien massa. Praesent ultrices dolor at risus porttitor, nec semper orci ornare. Nullam nisi eros, pellentesque et suscipit ac, ultrices eget lorem. Donec ipsum tellus, aliquet vitae metus ut, tempus viverra lorem.</p>';
211
217
  element += '</div>';
212
218
 
213
219
  element += '</div>';
@@ -226,12 +232,12 @@ $(document).on('click', '.cb-snippet__btn', function(e) {
226
232
  element += '</div>';
227
233
 
228
234
  element += '<blockquote class="cb-blockquote cb-blockquote--right">';
229
- element += '<div class="cb-blockquote__text cb-text"><p>Lorem Ipsum é simplesmente uma simulação de texto da indústria tipográfica e de impressos</p></div>';
235
+ element += '<div class="cb-blockquote__text cb-text"><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur venenatis</p></div>';
230
236
  element += '<footer class="cb-blockquote__footer cb-text">Lorem Ipsum</footer>';
231
237
  element += '</blockquote>';
232
238
 
233
239
  element += '<div class="cb-text">';
234
- element += '<p>Lorem Ipsum é simplesmente uma simulação de texto da indústria tipográfica e de impressos, e vem sendo utilizado desde o século XVI, quando um impressor desconhecido pegou uma bandeja de tipos e os embaralhou para fazer um livro de modelos de tipos.</p>';
240
+ element += '<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur venenatis congue pharetra. Proin quis commodo odio. Fusce a sapien massa. Praesent ultrices dolor at risus porttitor, nec semper orci ornare. Nullam nisi eros, pellentesque et suscipit ac, ultrices eget lorem. Donec ipsum tellus, aliquet vitae metus ut, tempus viverra lorem..</p>';
235
241
  element += '</div>';
236
242
 
237
243
  element += '</div>';
@@ -250,12 +256,12 @@ $(document).on('click', '.cb-snippet__btn', function(e) {
250
256
  element += '</div>';
251
257
 
252
258
  element += '<blockquote class="cb-blockquote">';
253
- element += '<div class="cb-blockquote__text cb-text"><p>Lorem Ipsum é simplesmente uma simulação de texto da indústria tipográfica e de impressos</p></div>';
259
+ element += '<div class="cb-blockquote__text cb-text"><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur venenatis</p></div>';
254
260
  element += '<footer class="cb-blockquote__footer cb-text">Lorem Ipsum</footer>';
255
261
  element += '</blockquote>';
256
262
 
257
263
  element += '<div class="cb-text">';
258
- element += '<p>Lorem Ipsum é simplesmente uma simulação de texto da indústria tipográfica e de impressos, e vem sendo utilizado desde o século XVI, quando um impressor desconhecido pegou uma bandeja de tipos e os embaralhou para fazer um livro de modelos de tipos.</p>';
264
+ element += '<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur venenatis congue pharetra. Proin quis commodo odio. Fusce a sapien massa. Praesent ultrices dolor at risus porttitor, nec semper orci ornare. Nullam nisi eros, pellentesque et suscipit ac, ultrices eget lorem. Donec ipsum tellus, aliquet vitae metus ut, tempus viverra lorem..</p>';
259
265
  element += '</div>';
260
266
 
261
267
  element += '</div>';
@@ -276,12 +282,12 @@ $(document).on('click', '.cb-snippet__btn', function(e) {
276
282
 
277
283
  element += '<aside class="cb-relational cb-relational--left">'
278
284
  element += '<h2 class="cb-relational__title">Saiba mais</h2>';
279
- element += '<input class="cb-search" type="text" name="search" placeholder="Buscar notícia">';
285
+ element += '<input class="cb-search" type="text" name="search" placeholder="<%= I18n.t('admin.actions.content_builder.search_content')%>">';
280
286
  element += '<ol class="cb-relational__list"></ol>';
281
287
  element += '</aside>';
282
288
 
283
289
  element += '<div class="cb-text">';
284
- element += '<p>Lorem Ipsum é simplesmente uma simulação de texto da indústria tipográfica e de impressos, e vem sendo utilizado desde o século XVI, quando um impressor desconhecido pegou uma bandeja de tipos e os embaralhou para fazer um livro de modelos de tipos.</p>';
290
+ element += '<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur venenatis congue pharetra. Proin quis commodo odio. Fusce a sapien massa. Praesent ultrices dolor at risus porttitor, nec semper orci ornare. Nullam nisi eros, pellentesque et suscipit ac, ultrices eget lorem. Donec ipsum tellus, aliquet vitae metus ut, tempus viverra lorem..</p>';
285
291
  element += '</div>';
286
292
 
287
293
  element += '</div>';
@@ -304,12 +310,12 @@ $(document).on('click', '.cb-snippet__btn', function(e) {
304
310
 
305
311
  element += '<aside class="cb-relational cb-relational--right">'
306
312
  element += '<h2 class="cb-relational__title">Saiba mais</h2>';
307
- element += '<input class="cb-search" type="text" name="search" placeholder="Buscar notícia">';
313
+ element += '<input class="cb-search" type="text" name="search" placeholder="<%= I18n.t('admin.actions.content_builder.search_content')%>">';
308
314
  element += '<ol class="cb-relational__list"></ol>';
309
315
  element += '</aside>';
310
316
 
311
317
  element += '<div class="cb-text">';
312
- element += '<p>Lorem Ipsum é simplesmente uma simulação de texto da indústria tipográfica e de impressos, e vem sendo utilizado desde o século XVI, quando um impressor desconhecido pegou uma bandeja de tipos e os embaralhou para fazer um livro de modelos de tipos.</p>';
318
+ element += '<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur venenatis congue pharetra. Proin quis commodo odio. Fusce a sapien massa. Praesent ultrices dolor at risus porttitor, nec semper orci ornare. Nullam nisi eros, pellentesque et suscipit ac, ultrices eget lorem. Donec ipsum tellus, aliquet vitae metus ut, tempus viverra lorem.</p>';
313
319
  element += '</div>';
314
320
 
315
321
  element += '</div>';
@@ -351,6 +357,7 @@ function addEventToInputFile(id) {
351
357
 
352
358
  // upload file via ajax
353
359
  function fileSelectAndUpload(evt) {
360
+ console.log(evt);
354
361
  var file = evt.target.files[0];
355
362
 
356
363
  if(file) {
@@ -453,7 +460,7 @@ function youtubeParser(url) {
453
460
  if(match && match[7].length == 11) {
454
461
  return b = match[7];
455
462
  } else {
456
- alert('Ops! Você não informou uma url válida.');
463
+ alert('<%= I18n.t('admin.actions.content_builder.invalid_url')%>');
457
464
  }
458
465
  };
459
466
 
@@ -476,7 +483,7 @@ function autocomplete(id) {
476
483
  $("#" + id + ' ol').append(element);
477
484
  activeMediumEditor();
478
485
  activeSortable();
479
-
486
+
480
487
  return false;
481
488
  }
482
489
  }).autocomplete("instance")._renderItem = function(ul, item) {
@@ -3,27 +3,24 @@
3
3
 
4
4
  .cb-snippet {
5
5
  position: fixed;
6
- z-index: 100;
7
- top: 50px;
8
- bottom: 110px;
6
+ z-index: 400;
7
+ bottom: 54px;
8
+ left: 0;
9
9
  right: 0;
10
10
 
11
- width: 150px;
12
-
13
- padding: 20px;
14
-
11
+ width: 100%;
12
+ height: 100px;
13
+ padding: 10px 0;
15
14
  background: #f8f8f8;
16
- border-left: solid 1px rgba(0,0,0,.1);
17
-
18
- overflow: hidden;
15
+ border-top: solid 1px rgba(0,0,0,.1);
19
16
  overflow-y: scroll;
20
17
  }
21
18
 
22
19
  .cb-snippet__btn {
23
- margin-bottom: 20px;
24
-
25
- display: block;
26
- background: #fff;
20
+ box-sizing: border-box;
21
+ float: left;
22
+ width: 25%;
23
+ padding: 10px;
27
24
 
28
25
  text-align: center;
29
26
  text-decoration: none;
@@ -37,9 +34,8 @@
37
34
  }
38
35
 
39
36
  .cb-snippet__caption {
40
- display: block;
37
+ display: none;
41
38
  padding: 5px;
42
- border-top: solid 2px rgba(0,0,0,.05);
43
39
 
44
40
  color: rgba(0,0,0,.6);
45
41
  font-size: 10px;
@@ -49,43 +45,50 @@
49
45
  width: 100%;
50
46
  }
51
47
 
52
-
53
48
  .cb-controls {
54
49
  position: fixed;
55
- z-index: 100;
50
+ z-index: 400;
56
51
  bottom: 0;
57
52
  right: 0;
58
53
 
59
- width: 150px;
54
+ width: 100%;
60
55
 
61
- padding: 20px;
56
+ padding: 10px;
62
57
 
63
58
  background: #f8f8f8;
64
59
  border-top: solid 1px rgba(0,0,0,.1);
65
60
  border-left: solid 1px rgba(0,0,0,.1);
66
- }
67
61
 
62
+ .btn-block {
63
+ margin-top: 0;
64
+ width: auto !important;
65
+ }
66
+
67
+ .btn-right {
68
+ float: right;
69
+ }
70
+
71
+ .btn-left {
72
+ float: left;
73
+ }
74
+ }
68
75
 
69
76
  .cb-tools {
70
- position: absolute;
71
- z-index: 300;
72
- top: 0;
73
- left: -40px;
77
+ margin-bottom: 10px;
74
78
 
75
79
  border-radius: .4rem;
76
80
  background: darken(#fff, 7%);
77
-
78
81
  overflow: hidden;
82
+
83
+ text-align: right;
79
84
  }
80
85
 
81
86
  .cb-tools--center {
87
+ position: absolute;
88
+ z-index: 300;
82
89
  top: 50%;
83
90
  left: 50%;
84
91
  transform: translateX(-50%) translateY(-50%);
85
-
86
- .cb-tools__btn {
87
- display: inline-block;
88
- }
89
92
  }
90
93
 
91
94
  .cb-tools--disabled {
@@ -93,7 +96,7 @@
93
96
  }
94
97
 
95
98
  .cb-tools__btn {
96
- display: block;
99
+ display: inline-block;
97
100
 
98
101
  font-size: 12px;
99
102
  text-align: center;
@@ -108,6 +111,10 @@
108
111
  }
109
112
  }
110
113
 
114
+ .cb-tools__btn--delete {
115
+ float: left;
116
+ }
117
+
111
118
  .cb-tools__btn--small {
112
119
  font-size: 9px;
113
120
  padding: 8px;
@@ -124,7 +131,7 @@
124
131
 
125
132
  .cb-container {
126
133
  box-sizing: border-box;
127
- padding: 0 220px 0 40px;
134
+ padding: 0 0 300px 0;
128
135
  }
129
136
 
130
137
  .cb-content {
@@ -162,25 +169,13 @@
162
169
 
163
170
  .cb-figure {
164
171
  position: relative;
165
- margin: 0 0 15px;
172
+ margin: 0 0 20px;
166
173
 
167
174
  img {
168
175
  width: 100%;
169
176
  }
170
177
  }
171
178
 
172
- .cb-figure--left {
173
- float: left;
174
- width: 50%;
175
- margin: 0 30px 20px 0;
176
- }
177
-
178
- .cb-figure--right {
179
- float: right;
180
- width: 50%;
181
- margin: 0 0 20px 30px;
182
- }
183
-
184
179
  .cb-figure--center {
185
180
  margin: 0 0 20px;
186
181
  }
@@ -204,7 +199,6 @@
204
199
  }
205
200
  }
206
201
 
207
-
208
202
  .cb-video {
209
203
  position: relative;
210
204
  height: 0;
@@ -224,35 +218,22 @@
224
218
  margin-bottom: 30px;
225
219
  }
226
220
 
227
-
228
221
  .cb-blockquote {
229
222
  position: relative;
230
223
  margin: 0 0 20px;
231
224
 
232
- padding: 32px 0 0 32px;
225
+ padding: 25px 0 0 25px;
233
226
  border: 0;
234
227
  }
235
228
 
236
- .cb-blockquote--left {
237
- float: left;
238
- width: 50%;
239
- margin: 0 30px 20px 0;
240
- }
241
-
242
- .cb-blockquote--right {
243
- float: right;
244
- width: 50%;
245
- margin: 0 0 20px 30px;
246
- }
247
-
248
229
  .cb-blockquote__text {
249
- margin: 0 0 16px;
230
+ margin: 0 0 8px;
250
231
 
251
232
  line-height: 1.4;
252
233
 
253
234
  color: rgba(0,0,0,.6);
254
235
  font-family: sans-serif;
255
- font-size: 22px;
236
+ font-size: 18px;
256
237
 
257
238
  &:before {
258
239
  content: "\“";
@@ -265,7 +246,7 @@
265
246
  line-height: 1;
266
247
 
267
248
  color: rgba(0,0,0,.2);
268
- font-size: 80px;
249
+ font-size: 70px;
269
250
  }
270
251
  }
271
252
 
@@ -277,7 +258,7 @@
277
258
 
278
259
  color: rgba(0,0,0,.6);
279
260
  font-family: sans-serif;
280
- font-size: 16px;
261
+ font-size: 14px;
281
262
 
282
263
  &:before {
283
264
  content: "\2014 \00A0";
@@ -295,28 +276,13 @@
295
276
  padding-top: 5px;
296
277
  }
297
278
 
298
- .cb-relational--left {
299
- float: left;
300
- margin: 0 30px 25px 0;
301
-
302
- width: 50%;
303
- }
304
-
305
- .cb-relational--right {
306
- float: right;
307
- margin: 0 0 25px 30px;
308
-
309
- width: 50%;
310
- }
311
-
312
279
  .cb-relational__title {
313
280
  margin: 0 0 15px;
314
281
 
315
- line-height: 1;
316
282
  padding-top: 8px;
317
283
  border-top: solid 4px rgba(0,0,0,.1);
318
284
 
319
- color: rgba(0,0,0,.3);
285
+ color: rgba(0,0,0,.6) !important;
320
286
  font-size: 16px;
321
287
  font-weight: 700;
322
288
  text-transform: uppercase;
@@ -392,7 +358,6 @@
392
358
  }
393
359
  }
394
360
 
395
-
396
361
  .ui-sortable-placeholder {
397
362
  margin: 20px 0;
398
363
  height: 80px;
@@ -400,3 +365,131 @@
400
365
  background: rgba(0,0,0,.05);
401
366
  border: dashed 2px rgba(0,0,0,.05);
402
367
  }
368
+
369
+ @media screen and (min-width: 460px) {
370
+ .cb-snippet__caption {
371
+ display: block;
372
+ }
373
+ }
374
+
375
+ @media screen and (min-width: 768px) {
376
+ .cb-snippet {
377
+ top: 50px;
378
+ right: 0;
379
+ bottom: 112px;
380
+ left: auto;
381
+
382
+ width: 150px;
383
+ height: auto;
384
+ padding: 20px;
385
+ border: 0;
386
+ border-left: solid 1px rgba(0,0,0,.1);
387
+
388
+ -webkit-transform: translateX(0%);
389
+ -moz-transform: translateX(0%);
390
+ transform: translateX(0%);
391
+ }
392
+
393
+ .cb-snippet__btn {
394
+ margin-bottom: 20px;
395
+
396
+ display: block;
397
+ width: 100%;
398
+ padding: 0;
399
+ }
400
+
401
+ .cb-controls {
402
+ position: fixed;
403
+ z-index: 100;
404
+ bottom: 0;
405
+ right: 0;
406
+
407
+ width: 150px;
408
+
409
+ padding: 20px;
410
+
411
+ background: #f8f8f8;
412
+ border-top: solid 1px rgba(0,0,0,.1);
413
+ border-left: solid 1px rgba(0,0,0,.1);
414
+
415
+ .btn-block {
416
+ width: 100% !important;
417
+ }
418
+
419
+ .btn-block + .btn-block {
420
+ margin-top: 5px;
421
+ }
422
+
423
+ .btn-left,
424
+ .btn-right {
425
+ float: none;
426
+ }
427
+ }
428
+
429
+ .cb-container {
430
+ box-sizing: border-box;
431
+ padding: 30px 160px 100px 40px;
432
+ width: 80%;
433
+ margin: 0 auto;
434
+ }
435
+
436
+ .cb-tools {
437
+ position: absolute;
438
+ z-index: 300;
439
+ top: 0;
440
+ left: -40px;
441
+ }
442
+
443
+ .cb-tools__btn {
444
+ display: block;
445
+ }
446
+
447
+ .cb-tools--center {
448
+ position: absolute;
449
+ z-index: 300;
450
+ top: 50%;
451
+ left: 50%;
452
+
453
+ .cb-tools__btn {
454
+ display: inline-block;
455
+ }
456
+ }
457
+
458
+ .cb-figure--left {
459
+ float: left;
460
+ width: 50%;
461
+ margin: 0 30px 20px 0;
462
+ }
463
+
464
+ .cb-figure--right {
465
+ float: right;
466
+ width: 50%;
467
+ margin: 0 0 20px 30px;
468
+ }
469
+
470
+ .cb-blockquote--left {
471
+ float: left;
472
+ width: 50%;
473
+ margin: 0 30px 20px 0;
474
+ }
475
+
476
+ .cb-blockquote--right {
477
+ float: right;
478
+ width: 50%;
479
+ margin: 0 0 20px 30px;
480
+ }
481
+
482
+ .cb-relational--left {
483
+ float: left;
484
+ margin: 0 30px 25px 0;
485
+
486
+ width: 50%;
487
+ }
488
+
489
+ .cb-relational--right {
490
+ float: right;
491
+ margin: 0 0 25px 30px;
492
+
493
+ width: 50%;
494
+ }
495
+ }