alchemy_cms 3.0.0.rc8 → 3.0.0

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: dcb7647a1797d45f8881a956cde924671bc30f2d
4
- data.tar.gz: 7b9dee0e4b299543fe51364f7c3be41b70e6e2e5
3
+ metadata.gz: 611a1e37fe56a17099be81544930085f61508212
4
+ data.tar.gz: cd2ec040d0c1099bd916761ff305f976b20c7908
5
5
  SHA512:
6
- metadata.gz: 3d184d7e8aac2c27eea62560fa1ff1140500ee0b59a07a6009fbcf4ec33ca2926c5a789953e7bb70bd9ed8bc0da662394bde3d8692ba9e6afacac8107fcd08a8
7
- data.tar.gz: ec05398a5321e6a0e709329aec857b6bc4b3031eb8f160a59ea39d66b0e95ac1b52c7fa0043aa4751dbc0ce4dd52bed366444ceaf18570ce5b5052e3376ea90d
6
+ metadata.gz: 7345ebd721ad3d3823c25d0ea98f768684fd8187df860bba180967060a272d7f03a08b0c7d0b68bf610d38da1a268909857f080b0bb9196be2322fd61d615f58
7
+ data.tar.gz: c957bfb8d7512694346a4213c91c7e0714365ad1593dd34ecf9252937b2767f258792f45f6b543862a143a0fa2f4d41e353bf596f2e59c7fd6dc26ec746cbb1d
data/README.md CHANGED
@@ -10,8 +10,8 @@ Alchemy is the most powerful, userfriendly and flexible Rails CMS.
10
10
 
11
11
  Read more on the [website](http://alchemy-cms.com) and in the [guidelines](http://guides.alchemy-cms.com).
12
12
 
13
- **This master branch is a development branch that can contain bugs. For productive environments you should use the [current Ruby gem version](http://rubygems.org/gems/alchemy_cms/versions/2.8.1),
14
- or the [latest stable branch (2.8-stable)](https://github.com/magiclabs/alchemy_cms/tree/2.8-stable).**
13
+ **This master branch is a development branch that can contain bugs. For productive environments you should use the [current Ruby gem version](http://rubygems.org/gems/alchemy_cms/versions/3.0.0),
14
+ or the [latest stable branch (3.0-stable)](https://github.com/magiclabs/alchemy_cms/tree/3.0-stable).**
15
15
 
16
16
  Features
17
17
  --------
@@ -99,7 +99,7 @@ With Version 3.0 we extracted the Alchemy user model [into its own gem](https://
99
99
 
100
100
  In order to get the former Alchemy user model back, add the following gem into your Gemfile:
101
101
 
102
- gem 'alchemy-devise', github: 'magiclabs/alchemy-devise', branch: 'master'
102
+ gem 'alchemy-devise', '~> 2.0'
103
103
 
104
104
  Run in terminal:
105
105
 
@@ -172,7 +172,7 @@ If you have your own Capistrano receipts, you should require the Alchemy tasks i
172
172
  # deploy.rb
173
173
  require 'alchemy/capistrano'
174
174
 
175
- If you don't use Capistrano you have to **make shure that the `uploads`, `tmp/cache/assets`, `public/assets` and `public/pictures` cache folders get shared** between deployments, otherwise you **will loose data**.
175
+ If you don't use Capistrano you have to **make sure that the `uploads`, `tmp/cache/assets`, `public/assets` and `public/pictures` cache folders get shared** between deployments, otherwise you **will loose data**.
176
176
 
177
177
  Please take a look into the `lib/alchemy/capistrano.rb` file, to see how to achieve this.
178
178
 
@@ -22,7 +22,7 @@ Gem::Specification.new do |gem|
22
22
  gem.add_runtime_dependency 'rails', '>= 4.0', '< 5.0'
23
23
  gem.add_runtime_dependency 'actionpack-page_caching', '~> 1.0.0'
24
24
  gem.add_runtime_dependency 'awesome_nested_set', '~> 3.0.0.rc.2'
25
- gem.add_runtime_dependency 'acts-as-taggable-on', '~> 3.0.0'
25
+ gem.add_runtime_dependency 'acts-as-taggable-on', '~> 3.1'
26
26
  gem.add_runtime_dependency 'cancan', '~> 1.6.10'
27
27
  gem.add_runtime_dependency 'dragonfly', '~> 1.0.1'
28
28
  gem.add_runtime_dependency 'kaminari', '~> 0.15.0'
@@ -41,7 +41,7 @@ Gem::Specification.new do |gem|
41
41
  gem.add_runtime_dependency 'spinner.rb'
42
42
  gem.add_runtime_dependency 'turbolinks', '~> 2.0'
43
43
  gem.add_runtime_dependency 'non-stupid-digest-assets', '~> 1.0.3'
44
- gem.add_runtime_dependency 'active_model_serializers', '~> 0.8.1'
44
+ gem.add_runtime_dependency 'active_model_serializers', '>= 0.8.1', '< 0.10.0'
45
45
 
46
46
  gem.add_development_dependency 'rspec-rails', '~> 2.0'
47
47
  gem.add_development_dependency 'capybara'
@@ -33,11 +33,12 @@ class window.Alchemy.Dialog
33
33
  @bind_close_events()
34
34
  window.requestAnimationFrame =>
35
35
  @dialog_container.addClass('open')
36
- unless @options.modal
37
- @dialog.draggable
38
- iframeFix: true
39
- handle: '.alchemy-dialog-title'
40
- containment: 'parent'
36
+ @overlay.addClass('open') if @overlay?
37
+ @dialog.draggable
38
+ iframeFix: true
39
+ handle: '.alchemy-dialog-title'
40
+ containment: 'parent'
41
+ @$body.addClass('prevent-scrolling')
41
42
  Alchemy.currentDialogs.push(this)
42
43
  @load()
43
44
  true
@@ -46,9 +47,12 @@ class window.Alchemy.Dialog
46
47
  close: ->
47
48
  @$document.off 'keydown'
48
49
  @dialog_container.removeClass('open')
50
+ @overlay.removeClass('open') if @overlay?
49
51
  @$document.on 'webkitTransitionEnd transitionend oTransitionEnd', =>
50
52
  @$document.off 'webkitTransitionEnd transitionend oTransitionEnd'
51
53
  @dialog_container.remove()
54
+ @overlay.remove() if @overlay?
55
+ @$body.removeClass('prevent-scrolling')
52
56
  Alchemy.currentDialogs.pop(this)
53
57
  if @options.closed?
54
58
  @options.closed()
@@ -141,10 +145,10 @@ class window.Alchemy.Dialog
141
145
  @close_button.click =>
142
146
  @close()
143
147
  false
144
- if @overlay
145
- @overlay.addClass('closable').click =>
146
- @close()
147
- false
148
+ @dialog_container.addClass('closable').click (e) =>
149
+ return true if e.target != @dialog_container.get(0)
150
+ @close()
151
+ false
148
152
  @$document.keydown (e) =>
149
153
  if e.which == 27
150
154
  @close()
@@ -165,12 +169,12 @@ class window.Alchemy.Dialog
165
169
  @dialog_header.append(@close_button)
166
170
  @dialog.append(@dialog_header)
167
171
  @dialog.append(@dialog_body)
168
- if @options.modal
169
- @overlay = $('<div class="alchemy-dialog-overlay" />')
170
- @dialog_container.append(@overlay)
171
172
  @dialog_container.append(@dialog)
172
173
  @dialog.addClass('modal') if @options.modal
173
174
  @dialog_body.addClass('padded') if @options.padding
175
+ if @options.modal
176
+ @overlay = $('<div class="alchemy-dialog-overlay" />')
177
+ @$body.append(@overlay)
174
178
  @$body.append(@dialog_container)
175
179
  @resize()
176
180
  @dialog
@@ -30,6 +30,10 @@ body {
30
30
 
31
31
  // Fix for strange element window offset
32
32
  &.pages.edit { overflow: hidden }
33
+
34
+ &.prevent-scrolling {
35
+ overflow: hidden;
36
+ }
33
37
  }
34
38
 
35
39
  h1 {
@@ -1,5 +1,6 @@
1
1
  .alchemy-dialog-container {
2
- position: absolute;
2
+ position: fixed;
3
+ overflow: auto;
3
4
  top: 0;
4
5
  left: 0;
5
6
  z-index: 100;
@@ -29,10 +30,15 @@
29
30
  position: fixed;
30
31
  top: 0;
31
32
  left: 0;
32
- z-index: 0;
33
+ z-index: 30;
33
34
  width: 100%;
34
35
  height: 100%;
35
- background-color: rgba(0, 0, 0, 0.4);
36
+ background-color: rgba(0, 0, 0, 0.0);
37
+ @include transition(background-color 200ms linear);
38
+
39
+ &.open {
40
+ background-color: rgba(0, 0, 0, 0.4);
41
+ }
36
42
 
37
43
  &.closable {
38
44
  cursor: pointer;
@@ -287,7 +287,7 @@ module Alchemy
287
287
  # A children node
288
288
  #
289
289
  def process_url(ancestors_path, item)
290
- default_urlname = (ancestors_path.blank? ? "" : "#{ancestors_path}/") + item['slug']
290
+ default_urlname = (ancestors_path.blank? ? "" : "#{ancestors_path}/") + item['slug'].to_s
291
291
 
292
292
  pair = {my_urlname: default_urlname, children_path: default_urlname}
293
293
 
@@ -161,7 +161,7 @@ nl:
161
161
  create_tree_as_new_language: "%{language} aanmaken als nieuwe boomstructuur"
162
162
  "Active Pages": "Actieve pagina's"
163
163
  "Add global page": "Nieuwe globale pagina"
164
- "Add page link": "Verweis hinzufügen"
164
+ "Add page link": "Voeg pagina link toe"
165
165
  "Adobe Website": "Adobe Website"
166
166
  "Alchemy is open software and itself uses open software and free resources:": "Alchemy is open software en maakt zelf ook gebruik van open software en gratis bronnen"
167
167
  "Alchemy is up to date": "Alchemy is up to date"
@@ -186,7 +186,7 @@ nl:
186
186
  "Edit image": "Afbeelding bewerken"
187
187
  "Edit multiple pictures": "Meerdere afbeeldingen bewerken"
188
188
  "Elements": "Elementen"
189
- "Element trashed": "Element trashed" # ToDo: translate this
189
+ "Element trashed": "Element verwijderd"
190
190
  "Error with the Flash® Uploader!": "Fout in de Flash® Uploader!"
191
191
  "Excerpt": "fragment"
192
192
  "File uploaded succesfully": "Bestand %{name} geüploadet"
@@ -196,7 +196,7 @@ nl:
196
196
  "Filter by tag": "Op tag filteren"
197
197
  "Flush page cache": "Paginacache leegmaken"
198
198
  "Flush picture cache": "Afbeeldingscache leegmaken"
199
- "Global shortcuts": "Global shortcuts" # ToDo: translate this
199
+ "Global shortcuts": "Globale snelkoppelingen"
200
200
  "Hide childpages": "Onderliggende pagina's verbergen"
201
201
  "Hide Elements": "Elementen verbergen"
202
202
  "If you have any problems using the Flash uploader you can switch to": "Bij problemen met de Flash® Uploader kunt u gebruik maken van %{link}"
@@ -207,14 +207,14 @@ nl:
207
207
  "Language successfully updated": "Taal is aangepast."
208
208
  "Language tree": "Taalboom"
209
209
  "Layout default": "Standaard layout"
210
- "Library shortcuts": "Library shortcuts" # ToDo: translate this
210
+ "Library shortcuts": "Bibliotheek snelkoppelingen"
211
211
  "Logged in as": "Aangemeld als"
212
212
  "Mandatory": "Verplichte velden"
213
213
  "Name": "Naam"
214
214
  "New": "Nieuw"
215
215
  "New Element": "Nieuw element"
216
216
  "New page": "Nieuwe pagina"
217
- "No page links for this page found": "No page links for this page found" # ToDo: translate this
217
+ "No page links for this page found": "Geen pagina links voor deze pagina gevonden"
218
218
  "New password": "Nieuw wachtwoord"
219
219
  "New Tag": "Nieuwe tag"
220
220
  "New Tag Created": "Nieuwe tag is gemaakt"
@@ -299,7 +299,7 @@ nl:
299
299
  "Your last updated pages": "Your last updated pages"
300
300
  "Your trash is empty": "De prullenbak is leeg"
301
301
  above: "er boven"
302
- add: "toevoegen"
302
+ add: "Toevoegen"
303
303
  "add new content": "Element toevoegen"
304
304
  add_image_to_element: "Afbeelding toevoegen"
305
305
  align_in_text: "Tekstuitlijning"
@@ -342,8 +342,8 @@ nl:
342
342
  create_language_tree_heading: "Nieuwe lege boomstructuur voor taal maken"
343
343
  create_page: "Nieuwe subpagina maken"
344
344
  currently_edited_by: "Deze pagina is vergrendeld door"
345
- cut_element: "Element knippen."
346
- delete_file: "Bestand van de server verwijderen."
345
+ cut_element: "Element knippen"
346
+ delete_file: "Bestand van de server verwijderen"
347
347
  delete_image: "Deze afbeelding verwijderen"
348
348
  delete_language: "Deze taal verwijderen"
349
349
  delete_page: "Deze pagina verwijderen"
@@ -357,7 +357,7 @@ nl:
357
357
  edit_file_properties: "Eigenschappen van het bestand aanpassen"
358
358
  edit_image_properties: "Eigenschappen van de afbeelding aanpassen"
359
359
  edit_language: "Taal aanpassen"
360
- edit_page: "Deze pagina aanpassen"
360
+ edit_page: "Pagina aanpassen"
361
361
  edit_page_properties: "Eigenschappen van de pagina aanpassen"
362
362
  edit_tag: 'Tag bearbeiten'
363
363
  edit_selected_pictures: "Geselecteerde afbeeldingen aanpassen"
@@ -381,23 +381,23 @@ nl:
381
381
  female: "Vrouw"
382
382
  file: "Bestand"
383
383
  file_rename_error: "Fout bij hernoemen van het bestand."
384
- files: Files # ToDo: translate this
384
+ files: "Bestanden"
385
385
  from_at: "door %{by} op %{at}"
386
386
  height: "Hoogte"
387
387
  help:
388
388
  shortcuts:
389
- "Open help window": "Open help window" # ToDo: translate this
390
- "Close current dialog": "Close current dialog" # ToDo: translate this
391
- "Open logout dialog": "Open logout dialog" # ToDo: translate this
392
- "Focus search field": "Focus search field" # ToDo: translate this
393
- "Create a new record": "Create a new record" # ToDo: translate this
394
- "Show page infos": "Show page info" # ToDo: translate this
395
- "Create new element": "Create new element" # ToDo: translate this
396
- "Edit page properties": "Edit page properties" # ToDo: translate this
397
- "Reload the preview": "Reload the preview" # ToDo: translate this
398
- "Leave the page": "Leave the page" # ToDo: translate this
399
- "Open upload form": "Open upload form" # ToDo: translate this
400
- "Select all pictures": "Select all pictures" # ToDo: translate this
389
+ "Open help window": "Open help venster"
390
+ "Close current dialog": "Sluit huidig venster"
391
+ "Open logout dialog": "Open afmeld venster"
392
+ "Focus search field": "Selecteer zoekveld"
393
+ "Create a new record": "Maak een nieuwe regel"
394
+ "Show page infos": "Laat pagina info zien"
395
+ "Create new element": "Creëer nieuw element"
396
+ "Edit page properties": "Pas pagina eigenschappen aan"
397
+ "Reload the preview": "Herlaad de voorvertoning"
398
+ "Leave the page": "Verlaat de pagina"
399
+ "Open upload form": "Open upload venster"
400
+ "Select all pictures": "Selecteer alle foto's"
401
401
  hide_element_content: "Content van dit element verbergen."
402
402
  dashboard: "Dashboard"
403
403
  image_alt_tag: "Alt-tag"
@@ -426,7 +426,7 @@ nl:
426
426
  file: "Bestand"
427
427
  internal: "Intern"
428
428
  link_title: "Linktitel"
429
- login: login # ToDo: translate this
429
+ login: "log in"
430
430
  logout: "afmelden"
431
431
  mail_to: "ontvanger"
432
432
  main_content: "inhoud"
@@ -494,7 +494,7 @@ nl:
494
494
  update:
495
495
  comma_seperated: "Komma gescheiden"
496
496
  password: "Wachtwoord"
497
- paste: paste # ToDo: translate this
497
+ paste: "plakken"
498
498
  picture_gallery_editor: 'Afbeeldingen'
499
499
  picture_library:
500
500
  filter:
@@ -507,7 +507,7 @@ nl:
507
507
  please_confirm: "Graag bevestigen"
508
508
  please_wait: "Even geduld"
509
509
  position_in_text: "tekstpositie"
510
- preview_size: "previewgrootte"
510
+ preview_size: "Voorvertoning grootte"
511
511
  preview_sizes:
512
512
  '240': '240px (kleine telefoon)'
513
513
  '320': '320px (iPhone)'
@@ -517,24 +517,24 @@ nl:
517
517
  '1280': '1280px (Desktop)'
518
518
  recently_uploaded_only: 'recent geüpload'
519
519
  "regular method": "normale Methode"
520
- remove: "verwijderen"
520
+ remove: "Verwijderen"
521
521
  rename_file: "Dit bestand hernoemen."
522
522
  rename: hernoemen
523
523
  replace: vervangen
524
524
  'Replaced Tag': "De tag '%{old_tag}' wordt door de tag '%{new_tag}' vervangen"
525
525
  resources:
526
526
  relation_select:
527
- blank: '- none -'
527
+ blank: '- geen -'
528
528
  right: "rechts"
529
529
  robot_follow: "robot mag links volgen."
530
530
  robot_index: "robot mag index volgen."
531
531
  save: "Opslaan"
532
- "save order": "Sortering opslan"
532
+ "save order": "Sortering opslaan"
533
533
  saved_link: "Link opgeslagen."
534
534
  search: "zoeken"
535
535
  search_engines: "Zoekmachines"
536
536
  select_element: "Selecteer element"
537
- seperate_tags_with_comma: "Seperate tags with comma" # ToDo: translate this
537
+ seperate_tags_with_comma: "Markeer verschillende tags met komma's ertussen"
538
538
  show_element_content: "Content van dit element weergeven."
539
539
  show_elements_from_page: "Alle elementen van deze pagina weergeven"
540
540
  show_eq: "EQ weergeven"
@@ -566,7 +566,7 @@ nl:
566
566
  visible: "zichtbaar"
567
567
  want_to_create_new_language: "Nieuwe boomstructuur aanmaken?"
568
568
  want_to_make_copy_of_existing_language: "Een boomstructuur kopieren?"
569
- "We need at least one default.": "A default language must exist." # ToDo: translate this
569
+ "We need at least one default.": "Er moet een standarad taal zijn."
570
570
  welcome_note: "Welkom %{name}"
571
571
  welcome_back_note: "Welkom terug %{name}"
572
572
  welcome_please_identify_notice: "Welkom! voer uw gegevens in."
@@ -575,10 +575,10 @@ nl:
575
575
  you_can_rename_this_tag: "U kunt deze tag hernoemen"
576
576
  zoom_image: "Afbeelding vergroten"
577
577
  "Leave Alchemy": "Alchemy verlaten"
578
- leave: "verlaten"
579
- "You are about to leave Alchemy": "You are about to leave Alchemy"
580
- "Do you want to": "Do you want to"
581
- "stay logged in": "stay logged in"
578
+ leave: "Afmelden"
579
+ "You are about to leave Alchemy": "U staat op het punt de NVM Regiosite te verlaten"
580
+ "Do you want to": "Wilt u"
581
+ "stay logged in": "ingelogd blijven"
582
582
  "or to completly": "of compleet"
583
583
  "Are you sure?": "Weet u het zeker?"
584
584
  "Create": "Aanmaken"
@@ -759,7 +759,7 @@ nl:
759
759
  page_layout:
760
760
  blank: "^Kies een paginalayout."
761
761
  urlname:
762
- too_short: "^De urlnaam van de pagina is te kort (minimaal 3 karaters)."
762
+ too_short: "^De URL-naam van de pagina is te kort (minimaal 3 karaters)."
763
763
  taken: "^URL-Naam is al gebruikt"
764
764
  exclusion: "^URL-Naam is gereserveerd"
765
765
  alchemy/picture:
@@ -872,7 +872,7 @@ nl:
872
872
  public: "Publiek"
873
873
 
874
874
  alchemy/legacy_page_url:
875
- urlname: "URL path"
875
+ urlname: "URL pad"
876
876
 
877
877
  alchemy/page:
878
878
  created_at: "Aangemaakt op"
@@ -891,7 +891,7 @@ nl:
891
891
  tag_list: Tags
892
892
  title: "Titel"
893
893
  updated_at: "Bijgewerkt op"
894
- urlname: "Urlnaam"
894
+ urlname: "URL-naam"
895
895
  visible: "zichtbaar in navigatie"
896
896
 
897
897
  alchemy/picture:
@@ -0,0 +1,14 @@
1
+ class AddTaggingsCounterCacheToTags < ActiveRecord::Migration
2
+ def self.up
3
+ add_column :tags, :taggings_count, :integer, default: 0
4
+
5
+ ActsAsTaggableOn::Tag.reset_column_information
6
+ ActsAsTaggableOn::Tag.find_each do |tag|
7
+ ActsAsTaggableOn::Tag.reset_counters(tag.id, :taggings)
8
+ end
9
+ end
10
+
11
+ def self.down
12
+ remove_column :tags, :taggings_count
13
+ end
14
+ end
@@ -0,0 +1,9 @@
1
+ class AddMissingTaggableIndex < ActiveRecord::Migration
2
+ def self.up
3
+ add_index :taggings, [:taggable_id, :taggable_type, :context]
4
+ end
5
+
6
+ def self.down
7
+ remove_index :taggings, [:taggable_id, :taggable_type, :context]
8
+ end
9
+ end
@@ -1,5 +1,5 @@
1
1
  module Alchemy
2
- VERSION = "3.0.0.rc8"
2
+ VERSION = "3.0.0"
3
3
 
4
4
  def self.version
5
5
  VERSION
@@ -176,6 +176,24 @@ module Alchemy
176
176
  end
177
177
  end
178
178
 
179
+ context 'with page having number as slug' do
180
+ let(:page_item_2) do
181
+ {
182
+ id: page_2.id,
183
+ slug: 42,
184
+ children: [page_item_3]
185
+ }
186
+ end
187
+
188
+ it "does not raise error" do
189
+ expect {
190
+ xhr :post, :order, set: set_of_pages.to_json
191
+ }.to_not raise_error(TypeError)
192
+ [page_1, page_2, page_3].map(&:reload)
193
+ expect(page_3.urlname).to eq("#{page_1.slug}/#{page_2.slug}/#{page_3.slug}")
194
+ end
195
+ end
196
+
179
197
  it "creates legacy urls" do
180
198
  xhr :post, :order, set: set_of_pages.to_json
181
199
  [page_2, page_3].map(&:reload)
@@ -0,0 +1,14 @@
1
+ class AddTaggingsCounterCacheToTags < ActiveRecord::Migration
2
+ def self.up
3
+ add_column :tags, :taggings_count, :integer, default: 0
4
+
5
+ ActsAsTaggableOn::Tag.reset_column_information
6
+ ActsAsTaggableOn::Tag.find_each do |tag|
7
+ ActsAsTaggableOn::Tag.reset_counters(tag.id, :taggings)
8
+ end
9
+ end
10
+
11
+ def self.down
12
+ remove_column :tags, :taggings_count
13
+ end
14
+ end
@@ -0,0 +1,9 @@
1
+ class AddMissingTaggableIndex < ActiveRecord::Migration
2
+ def self.up
3
+ add_index :taggings, [:taggable_id, :taggable_type, :context]
4
+ end
5
+
6
+ def self.down
7
+ remove_index :taggings, [:taggable_id, :taggable_type, :context]
8
+ end
9
+ end
@@ -11,7 +11,7 @@
11
11
  #
12
12
  # It's strongly recommended that you check this file into your version control system.
13
13
 
14
- ActiveRecord::Schema.define(version: 20140107192720) do
14
+ ActiveRecord::Schema.define(version: 20140701160225) do
15
15
 
16
16
  create_table "alchemy_attachments", force: true do |t|
17
17
  t.string "name"
@@ -304,9 +304,11 @@ ActiveRecord::Schema.define(version: 20140107192720) do
304
304
  end
305
305
 
306
306
  add_index "taggings", ["tag_id", "taggable_id", "taggable_type", "context", "tagger_id", "tagger_type"], name: "taggings_idx", unique: true
307
+ add_index "taggings", ["taggable_id", "taggable_type", "context"], name: "index_taggings_on_taggable_id_and_taggable_type_and_context"
307
308
 
308
309
  create_table "tags", force: true do |t|
309
- t.string "name"
310
+ t.string "name"
311
+ t.integer "taggings_count", default: 0
310
312
  end
311
313
 
312
314
  add_index "tags", ["name"], name: "index_tags_on_name", unique: true
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: alchemy_cms
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.0.rc8
4
+ version: 3.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Thomas von Deyen
@@ -12,7 +12,7 @@ authors:
12
12
  autorequire:
13
13
  bindir: bin
14
14
  cert_chain: []
15
- date: 2014-06-18 00:00:00.000000000 Z
15
+ date: 2014-07-03 00:00:00.000000000 Z
16
16
  dependencies:
17
17
  - !ruby/object:Gem::Dependency
18
18
  name: rails
@@ -68,14 +68,14 @@ dependencies:
68
68
  requirements:
69
69
  - - "~>"
70
70
  - !ruby/object:Gem::Version
71
- version: 3.0.0
71
+ version: '3.1'
72
72
  type: :runtime
73
73
  prerelease: false
74
74
  version_requirements: !ruby/object:Gem::Requirement
75
75
  requirements:
76
76
  - - "~>"
77
77
  - !ruby/object:Gem::Version
78
- version: 3.0.0
78
+ version: '3.1'
79
79
  - !ruby/object:Gem::Dependency
80
80
  name: cancan
81
81
  requirement: !ruby/object:Gem::Requirement
@@ -332,16 +332,22 @@ dependencies:
332
332
  name: active_model_serializers
333
333
  requirement: !ruby/object:Gem::Requirement
334
334
  requirements:
335
- - - "~>"
335
+ - - ">="
336
336
  - !ruby/object:Gem::Version
337
337
  version: 0.8.1
338
+ - - "<"
339
+ - !ruby/object:Gem::Version
340
+ version: 0.10.0
338
341
  type: :runtime
339
342
  prerelease: false
340
343
  version_requirements: !ruby/object:Gem::Requirement
341
344
  requirements:
342
- - - "~>"
345
+ - - ">="
343
346
  - !ruby/object:Gem::Version
344
347
  version: 0.8.1
348
+ - - "<"
349
+ - !ruby/object:Gem::Version
350
+ version: 0.10.0
345
351
  - !ruby/object:Gem::Dependency
346
352
  name: rspec-rails
347
353
  requirement: !ruby/object:Gem::Requirement
@@ -803,6 +809,8 @@ files:
803
809
  - db/migrate/20130828121120_remove_do_not_index_from_alchemy_essence_richtexts.rb
804
810
  - db/migrate/20130918201742_add_published_at_to_alchemy_pages.rb
805
811
  - db/migrate/20140107192720_add_missing_unique_indices_to_tags_and_taggings.rb
812
+ - db/migrate/20140701160159_add_taggings_counter_cache_to_tags.rb
813
+ - db/migrate/20140701160225_add_missing_taggable_index.rb
806
814
  - lib/alchemy/auth_accessors.rb
807
815
  - lib/alchemy/cache_digests/template_tracker.rb
808
816
  - lib/alchemy/capistrano.rb
@@ -951,6 +959,8 @@ files:
951
959
  - spec/dummy/db/migrate/20130918201742_add_published_at_to_alchemy_pages.rb
952
960
  - spec/dummy/db/migrate/20131209225243_create_dummy_users.rb
953
961
  - spec/dummy/db/migrate/20140107192720_add_missing_unique_indices_to_tags_and_taggings.rb
962
+ - spec/dummy/db/migrate/20140701160159_add_taggings_counter_cache_to_tags.rb
963
+ - spec/dummy/db/migrate/20140701160225_add_missing_taggable_index.rb
954
964
  - spec/dummy/db/schema.rb
955
965
  - spec/dummy/lib/assets/.gitkeep
956
966
  - spec/dummy/public/404.html
@@ -1109,9 +1119,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
1109
1119
  version: 1.9.3
1110
1120
  required_rubygems_version: !ruby/object:Gem::Requirement
1111
1121
  requirements:
1112
- - - ">"
1122
+ - - ">="
1113
1123
  - !ruby/object:Gem::Version
1114
- version: 1.3.1
1124
+ version: '0'
1115
1125
  requirements:
1116
1126
  - ImageMagick (libmagick), v6.6 or greater.
1117
1127
  rubyforge_project:
@@ -1191,6 +1201,8 @@ test_files:
1191
1201
  - spec/dummy/db/migrate/20130918201742_add_published_at_to_alchemy_pages.rb
1192
1202
  - spec/dummy/db/migrate/20131209225243_create_dummy_users.rb
1193
1203
  - spec/dummy/db/migrate/20140107192720_add_missing_unique_indices_to_tags_and_taggings.rb
1204
+ - spec/dummy/db/migrate/20140701160159_add_taggings_counter_cache_to_tags.rb
1205
+ - spec/dummy/db/migrate/20140701160225_add_missing_taggable_index.rb
1194
1206
  - spec/dummy/db/schema.rb
1195
1207
  - spec/dummy/lib/assets/.gitkeep
1196
1208
  - spec/dummy/public/404.html