biovision-base 0.9.171227 → 0.11.180127

Sign up to get free protection for your applications and to get access to all the features.
Files changed (124) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/biovision/base/biovision-sliders.js +3 -17
  3. data/app/assets/javascripts/biovision/base/biovision.js +17 -5
  4. data/app/assets/stylesheets/biovision/base/admin.scss +0 -12
  5. data/app/assets/stylesheets/biovision/base/biovision.scss +2 -179
  6. data/app/assets/stylesheets/biovision/base/default_admin.scss +0 -1
  7. data/app/controllers/admin/privileges_controller.rb +0 -6
  8. data/app/controllers/admin/users_controller.rb +2 -2
  9. data/app/models/editable_page.rb +41 -3
  10. data/app/models/feedback_request.rb +1 -0
  11. data/app/models/language.rb +49 -0
  12. data/app/models/privilege.rb +16 -16
  13. data/app/models/user.rb +3 -2
  14. data/app/models/user_language.rb +6 -0
  15. data/app/models/user_privilege.rb +3 -14
  16. data/app/views/admin/agents/entity/_in_list.html.erb +1 -1
  17. data/app/views/admin/agents/index.html.erb +1 -1
  18. data/app/views/admin/agents/show.html.erb +2 -2
  19. data/app/views/admin/browsers/entity/_in_list.html.erb +2 -1
  20. data/app/views/admin/browsers/index.html.erb +1 -1
  21. data/app/views/admin/browsers/show.html.erb +2 -2
  22. data/app/views/admin/codes/index.html.erb +1 -1
  23. data/app/views/admin/codes/show.html.erb +1 -1
  24. data/app/views/admin/editable_pages/index.html.erb +1 -1
  25. data/app/views/admin/editable_pages/show.html.erb +1 -1
  26. data/app/views/admin/index/_biovision_base.html.erb +2 -1
  27. data/app/views/admin/media_files/show.html.erb +0 -1
  28. data/app/views/admin/metrics/index.html.erb +1 -1
  29. data/app/views/admin/metrics/show.html.erb +1 -1
  30. data/app/views/admin/privilege_groups/index.html.erb +1 -1
  31. data/app/views/admin/privilege_groups/show.html.erb +1 -1
  32. data/app/views/admin/privileges/entity/_in_list.html.erb +1 -1
  33. data/app/views/admin/privileges/index.html.erb +1 -1
  34. data/app/views/admin/privileges/show.html.erb +2 -2
  35. data/app/views/admin/privileges/users.html.erb +1 -1
  36. data/app/views/admin/stored_values/index.html.erb +1 -1
  37. data/app/views/admin/tokens/entity/_in_list.html.erb +1 -1
  38. data/app/views/admin/tokens/index.html.erb +1 -1
  39. data/app/views/admin/tokens/show.html.erb +2 -2
  40. data/app/views/admin/users/codes.html.erb +1 -1
  41. data/app/views/admin/users/entity/_in_list.html.erb +2 -1
  42. data/app/views/admin/users/entity/_privilege.html.erb +1 -1
  43. data/app/views/admin/users/index.html.erb +1 -1
  44. data/app/views/admin/users/show.html.erb +4 -4
  45. data/app/views/admin/users/tokens.html.erb +1 -1
  46. data/app/views/agents/edit.html.erb +1 -1
  47. data/app/views/agents/new.html.erb +1 -1
  48. data/app/views/application/error.html.erb +1 -1
  49. data/app/views/browsers/edit.html.erb +1 -1
  50. data/app/views/browsers/new.html.erb +1 -1
  51. data/app/views/codes/edit.html.erb +1 -1
  52. data/app/views/codes/new.html.erb +1 -1
  53. data/app/views/editable_pages/edit.html.erb +1 -1
  54. data/app/views/editable_pages/new.html.erb +1 -1
  55. data/app/views/errors/error.html.erb +1 -1
  56. data/app/views/feedback_requests/_form.html.erb +1 -3
  57. data/app/views/feedback_requests/create.js.erb +2 -2
  58. data/app/views/layouts/admin/_footer.html.erb +1 -1
  59. data/app/views/layouts/admin/_header.html.erb +3 -3
  60. data/app/views/metrics/edit.html.erb +1 -1
  61. data/app/views/privilege_groups/edit.html.erb +1 -1
  62. data/app/views/privilege_groups/new.html.erb +1 -1
  63. data/app/views/privileges/edit.html.erb +1 -1
  64. data/app/views/privileges/new.html.erb +1 -1
  65. data/app/views/shared/forms/_default_ajax_handler.html.erb +2 -0
  66. data/app/views/stored_values/edit.html.erb +1 -1
  67. data/app/views/stored_values/new.html.erb +1 -1
  68. data/app/views/tokens/edit.html.erb +1 -1
  69. data/app/views/tokens/new.html.erb +1 -1
  70. data/app/views/users/edit.html.erb +1 -1
  71. data/config/locales/common-en.yml +10 -2
  72. data/config/locales/common-ru.yml +10 -2
  73. data/config/locales/editable-pages-en.yml +76 -0
  74. data/config/locales/editable-pages-ru.yml +1 -0
  75. data/config/locales/feedback-en.yml +1 -0
  76. data/config/locales/feedback-ru.yml +1 -0
  77. data/config/locales/media-en.yml +92 -0
  78. data/config/locales/users-ru.yml +1 -0
  79. data/config/routes.rb +0 -10
  80. data/db/migrate/20170228000000_create_languages.rb +22 -0
  81. data/db/migrate/20170302000001_create_users.rb +2 -1
  82. data/db/migrate/20170302000101_create_privileges.rb +7 -6
  83. data/db/migrate/20170302000102_create_user_privileges.rb +1 -1
  84. data/db/migrate/20170302000103_create_privilege_groups.rb +0 -1
  85. data/db/migrate/20170302000104_create_privilege_group_privileges.rb +0 -4
  86. data/db/migrate/20170320000000_create_editable_pages.rb +12 -3
  87. data/db/migrate/20171025222222_add_new_fields_171026.rb +0 -8
  88. data/db/migrate/20171211000000_create_feedback_requests.rb +1 -0
  89. data/db/migrate/20171223333333_amend_foreign_keys.rb +1 -3
  90. data/db/migrate/20180117151515_add_language_to_models.rb +25 -0
  91. data/db/migrate/20180117160000_create_user_languages.rb +17 -0
  92. data/lib/biovision/base/base_methods.rb +1 -1
  93. data/lib/biovision/base/engine.rb +0 -1
  94. data/lib/biovision/base/privilege_methods.rb +3 -21
  95. data/lib/biovision/base/version.rb +1 -1
  96. metadata +13 -34
  97. data/app/assets/images/biovision/base/placeholders/region_image.svg +0 -1
  98. data/app/assets/stylesheets/biovision/base/regions.scss +0 -9
  99. data/app/controllers/admin/regions_controller.rb +0 -28
  100. data/app/controllers/regions_controller.rb +0 -73
  101. data/app/helpers/biovision_regions_helper.rb +0 -22
  102. data/app/models/central_region.rb +0 -53
  103. data/app/models/region.rb +0 -110
  104. data/app/uploaders/header_image_uploader.rb +0 -50
  105. data/app/uploaders/region_image_uploader.rb +0 -53
  106. data/app/views/admin/agents/_toggleable.html.erb +0 -7
  107. data/app/views/admin/browsers/_toggleable.html.erb +0 -7
  108. data/app/views/admin/index/dashboard/_biovision_region.html.erb +0 -8
  109. data/app/views/admin/privileges/_toggleable.html.erb +0 -7
  110. data/app/views/admin/privileges/entity/_region.html.erb +0 -12
  111. data/app/views/admin/privileges/regions.jbuilder +0 -10
  112. data/app/views/admin/regions/_nav_item.html.erb +0 -2
  113. data/app/views/admin/regions/_toggleable.html.erb +0 -7
  114. data/app/views/admin/regions/entity/_in_list.html.erb +0 -32
  115. data/app/views/admin/regions/index.html.erb +0 -22
  116. data/app/views/admin/regions/show.html.erb +0 -95
  117. data/app/views/admin/tokens/_toggleable.html.erb +0 -7
  118. data/app/views/admin/users/_toggleable.html.erb +0 -7
  119. data/app/views/regions/_form.html.erb +0 -73
  120. data/app/views/regions/edit.html.erb +0 -20
  121. data/app/views/regions/new.html.erb +0 -17
  122. data/config/locales/regions-ru.yml +0 -62
  123. data/db/migrate/20170301000201_create_regions.rb +0 -35
  124. data/lib/tasks/regions.rake +0 -105
@@ -5,6 +5,7 @@ ru:
5
5
  stored_value: "Хранимое значение"
6
6
  attributes:
7
7
  editable_page:
8
+ language: "Язык"
8
9
  name: "Название"
9
10
  slug: "Идентификатор"
10
11
  image: "Картинка"
@@ -7,6 +7,7 @@ en:
7
7
  comment: "Comment"
8
8
  email: "E-mail"
9
9
  image: "Image"
10
+ language: "Language"
10
11
  name: "Name"
11
12
  phone: "Phone number"
12
13
  processed: "Processed"
@@ -7,6 +7,7 @@ ru:
7
7
  comment: "Комментарий"
8
8
  email: "Почта"
9
9
  image: "Картинка"
10
+ language: "Язык"
10
11
  name: "Имя"
11
12
  phone: "Телефон"
12
13
  processed: "Обработан"
@@ -0,0 +1,92 @@
1
+ en:
2
+ media_file_count:
3
+ zero: "no media files"
4
+ one: "%{count} file"
5
+ few: "%{count} files"
6
+ many: "%{count} files"
7
+ other: "%{count} files"
8
+ child_media_folder_count:
9
+ zero: "no inner folders"
10
+ one: "%{count} inner folder"
11
+ few: "%{count} inner folders"
12
+ many: "%{count} inner folders"
13
+ other: "%{count} inner folders"
14
+ activerecord:
15
+ models:
16
+ media_folder: "Media-folder"
17
+ media_file: "Media-file"
18
+ errors:
19
+ models:
20
+ media_folder:
21
+ attributes:
22
+ parent:
23
+ is_too_deep: "is too deep"
24
+ attributes:
25
+ media_file:
26
+ description: "Description"
27
+ file: "File"
28
+ media_folder: "Folder"
29
+ media_folder_id: "Folder"
30
+ mime_type: "MIME-type"
31
+ name: "Name"
32
+ original_name: "Original name"
33
+ snapshot: "Snapshot"
34
+ user: "User"
35
+ uuid: "UUID"
36
+ media_folder:
37
+ name: "Name"
38
+ parent: "Parent folder"
39
+ parent_id: "Parent folder"
40
+ snapshot: "Snapshot"
41
+ user: "User"
42
+ uuid: "UUID"
43
+ admin:
44
+ media_files:
45
+ nav_item:
46
+ description: "Managing uploaded files"
47
+ text: "Media-files"
48
+ index:
49
+ title: "Media-files, page %{page}"
50
+ heading: "Media-files"
51
+ media_folders:
52
+ nav_item:
53
+ description: "Managing folders for media-files"
54
+ text: "Media-folders"
55
+ index:
56
+ title: "Media-folders"
57
+ heading: "Media-folders"
58
+ show:
59
+ add_child: "Add child folder"
60
+ media_files: "Files"
61
+ files:
62
+ title: "Files in media-folder \"%{name}\", page %{page}"
63
+ media_files:
64
+ new:
65
+ heading: "New media-file"
66
+ title: "Adding media-file"
67
+ edit:
68
+ heading: "Editing media-file"
69
+ forbidden: "Editing this file is forbitten"
70
+ title: "Editing media-file"
71
+ destroy:
72
+ success: "File has been updated"
73
+ update:
74
+ success: "File has been deleted"
75
+ form:
76
+ guidelines:
77
+ file: "Image with maximum dimensions of 3000×3000, format: JPG or PNG."
78
+ name: "Maximum 250 characters."
79
+ description: "Maximum 250 characters."
80
+ media_folders:
81
+ new:
82
+ heading: "New media-folder"
83
+ title: "Adding media-folder"
84
+ edit:
85
+ heading: "Editing media-folder"
86
+ title: "Editing media-folder"
87
+ destroy:
88
+ success: "Media-folder has been deleted"
89
+ form:
90
+ guidelines:
91
+ snapshot: "Image of size 160×160, format: JPG or PNG."
92
+ name: "Maximum 100 characters."
@@ -55,6 +55,7 @@ ru:
55
55
  foreign_slug: "Идентификатор пришёл извне"
56
56
  image: "Картинка"
57
57
  ip: "IP-адрес при регистрации"
58
+ language: "Язык"
58
59
  last_seen: "Последняя активность"
59
60
  notice: "Заметка"
60
61
  password: "Пароль"
data/config/routes.rb CHANGED
@@ -50,14 +50,6 @@ Rails.application.routes.draw do
50
50
  end
51
51
  end
52
52
 
53
- resources :regions, only: [:index, :show] do
54
- member do
55
- post 'toggle', defaults: { format: :json }
56
- put 'lock', defaults: { format: :json }
57
- delete 'lock', action: :unlock, defaults: { format: :json }
58
- end
59
- end
60
-
61
53
  resources :privileges, only: [:index, :show] do
62
54
  member do
63
55
  put 'lock', defaults: { format: :json }
@@ -134,8 +126,6 @@ Rails.application.routes.draw do
134
126
 
135
127
  resources :metrics, only: [:edit, :update]
136
128
 
137
- resources :regions, except: [:index, :show]
138
-
139
129
  resources :privileges, except: [:index, :show]
140
130
  resources :privilege_groups, except: [:index, :show]
141
131
 
@@ -0,0 +1,22 @@
1
+ class CreateLanguages < ActiveRecord::Migration[5.1]
2
+ def up
3
+ unless Language.table_exists?
4
+ create_table :languages do |t|
5
+ t.timestamps
6
+ t.integer :users_count, default: 0, null: false
7
+ t.integer :priority, limit: 2, default: 1, null: false
8
+ t.string :slug, null: false
9
+ t.string :code, null: false
10
+ end
11
+
12
+ Language.create!(code: 'ru', slug: 'russian')
13
+ Language.create!(code: 'en', slug: 'english')
14
+ end
15
+ end
16
+
17
+ def down
18
+ if Language.table_exists?
19
+ drop_table :languages
20
+ end
21
+ end
22
+ end
@@ -3,7 +3,8 @@ class CreateUsers < ActiveRecord::Migration[5.1]
3
3
  unless User.table_exists?
4
4
  create_table :users do |t|
5
5
  t.timestamps
6
- t.references :region, foreign_key: { on_update: :cascade, on_delete: :nullify }
6
+ t.integer :region_id
7
+ t.references :language, foreign_key: { on_update: :cascade, on_delete: :nullify }
7
8
  t.references :agent, foreign_key: { on_update: :cascade, on_delete: :nullify }
8
9
  t.inet :ip
9
10
  t.integer :inviter_id
@@ -19,12 +19,6 @@ class CreatePrivileges < ActiveRecord::Migration[5.1]
19
19
  add_foreign_key :privileges, :privileges, column: :parent_id, on_update: :cascade, on_delete: :cascade
20
20
 
21
21
  add_index :privileges, :slug, unique: true
22
-
23
- Privilege.create!(slug: 'administrator', name: 'Администратор')
24
- Privilege.create!(slug: 'metrics_manager', name: 'Аналитик метрик')
25
- Privilege.create!(slug: 'moderator', name: 'Модератор')
26
- Privilege.create!(slug: 'chief_editor', name: 'Главный редактор')
27
- Privilege.create!(slug: 'region_manager', name: 'Управляющий регионом', regional: true)
28
22
  end
29
23
  end
30
24
 
@@ -33,4 +27,11 @@ class CreatePrivileges < ActiveRecord::Migration[5.1]
33
27
  drop_table :privileges
34
28
  end
35
29
  end
30
+
31
+ def create_privileges
32
+ Privilege.create!(slug: 'administrator', name: 'Администратор')
33
+ Privilege.create!(slug: 'metrics_manager', name: 'Аналитик метрик')
34
+ Privilege.create!(slug: 'moderator', name: 'Модератор')
35
+ Privilege.create!(slug: 'chief_editor', name: 'Главный редактор')
36
+ end
36
37
  end
@@ -3,7 +3,7 @@ class CreateUserPrivileges < ActiveRecord::Migration[5.1]
3
3
  unless UserPrivilege.table_exists?
4
4
  create_table :user_privileges do |t|
5
5
  t.timestamps
6
- t.references :region, foreign_key: { on_update: :cascade, on_delete: :cascade }
6
+ t.integer :region_id
7
7
  t.references :user, null: false, foreign_key: { on_update: :cascade, on_delete: :cascade }
8
8
  t.references :privilege, null: false, foreign_key: { on_update: :cascade, on_delete: :cascade }
9
9
  end
@@ -10,7 +10,6 @@ class CreatePrivilegeGroups < ActiveRecord::Migration[5.1]
10
10
 
11
11
  add_index :privilege_groups, :slug, unique: true
12
12
 
13
- PrivilegeGroup.create(slug: 'region_managers', name: 'Управляющие регионами')
14
13
  PrivilegeGroup.create(slug: 'editors', name: 'Редакторы')
15
14
  PrivilegeGroup.create(slug: 'editorial_office', name: 'Члены редакции')
16
15
  end
@@ -13,10 +13,6 @@ class CreatePrivilegeGroupPrivileges < ActiveRecord::Migration[5.1]
13
13
  group = PrivilegeGroup.find_by(slug: 'editorial_office')
14
14
  group.add_privilege(Privilege.find_by(slug: 'chief_editor'))
15
15
  group.add_privilege(Privilege.find_by(slug: 'moderator'))
16
-
17
- group = PrivilegeGroup.find_by(slug: 'region_managers')
18
- group.add_privilege(Privilege.find_by(slug: 'administrator'))
19
- group.add_privilege(Privilege.find_by(slug: 'region_manager'))
20
16
  end
21
17
  end
22
18
 
@@ -3,6 +3,7 @@ class CreateEditablePages < ActiveRecord::Migration[5.1]
3
3
  unless EditablePage.table_exists?
4
4
  create_table :editable_pages do |t|
5
5
  t.timestamps
6
+ t.references :language, foreign_key: { on_update: :cascade, on_delete: :cascade }
6
7
  t.integer :priority, limit: 2, default: 1, null: false
7
8
  t.string :slug, null: false
8
9
  t.string :name, null: false
@@ -15,9 +16,17 @@ class CreateEditablePages < ActiveRecord::Migration[5.1]
15
16
  t.text :body, default: '', null: false
16
17
  end
17
18
 
18
- EditablePage.create(slug: 'index', name: 'Главная страница')
19
- EditablePage.create(slug: 'about', name: 'О проекте')
20
- EditablePage.create(slug: 'tos', name: 'Пользовательское соглашение')
19
+ pages = {
20
+ index: { ru: 'Главная страница', en: 'Main page' },
21
+ about: { ru: 'О проекте', en: 'About' },
22
+ tos: { ru: 'Пользовательское соглашение', en: 'Terms of service' },
23
+ }
24
+
25
+ pages.each do |slug, names|
26
+ Language.each do |language|
27
+ EditablePage.create(slug: slug, name: names[language.code.to_sym], language: language)
28
+ end
29
+ end
21
30
  end
22
31
  end
23
32
 
@@ -1,13 +1,5 @@
1
1
  class AddNewFields171026 < ActiveRecord::Migration[5.1]
2
2
  def up
3
- unless column_exists?(:regions, :image_url)
4
- change_table :regions do |t|
5
- t.string :image_url
6
- t.text :map_geometry
7
- t.text :svg_geometry
8
- end
9
- end
10
-
11
3
  unless column_exists?(:editable_pages, :url)
12
4
  change_table :editable_pages do |t|
13
5
  t.integer :priority, limit: 2, default: 1, null: false
@@ -3,6 +3,7 @@ class CreateFeedbackRequests < ActiveRecord::Migration[5.1]
3
3
  unless FeedbackRequest.table_exists?
4
4
  create_table :feedback_requests do |t|
5
5
  t.timestamps
6
+ t.references :language, foreign_key: { on_update: :cascade, on_delete: :nullify }
6
7
  t.references :agent, foreign_key: { on_update: :cascade, on_delete: :nullify }
7
8
  t.inet :ip
8
9
  t.boolean :processed
@@ -8,8 +8,7 @@ class AmendForeignKeys < ActiveRecord::Migration[5.1]
8
8
  browsers: { on_update: :cascade, on_delete: :cascade }
9
9
  },
10
10
  users: {
11
- regions: { on_update: :cascade, on_delete: :nullify },
12
- agents: { on_update: :cascade, on_delete: :nullify }
11
+ agents: { on_update: :cascade, on_delete: :nullify }
13
12
  },
14
13
  user_profiles: {
15
14
  users: { on_update: :cascade, on_delete: :cascade }
@@ -24,7 +23,6 @@ class AmendForeignKeys < ActiveRecord::Migration[5.1]
24
23
  agents: { on_update: :cascade, on_delete: :nullify }
25
24
  },
26
25
  user_privileges: {
27
- regions: { on_update: :cascade, on_delete: :cascade },
28
26
  users: { on_update: :cascade, on_delete: :cascade },
29
27
  privileges: { on_update: :cascade, on_delete: :cascade }
30
28
  },
@@ -0,0 +1,25 @@
1
+ class AddLanguageToModels < ActiveRecord::Migration[5.1]
2
+ def up
3
+ unless column_exists?(:users, :language_id)
4
+ change_table :users do |t|
5
+ t.references :language, foreign_key: { on_update: :cascade, on_delete: :nullify }
6
+ end
7
+ end
8
+
9
+ unless column_exists?(:editable_pages, :language_id)
10
+ change_table :editable_pages do |t|
11
+ t.references :language, foreign_key: { on_update: :cascade, on_delete: :cascade }
12
+ end
13
+ end
14
+
15
+ unless column_exists?(:feedback_requests, :language_id)
16
+ change_table :feedback_requests do |t|
17
+ t.references :language, foreign_key: { on_update: :cascade, on_delete: :nullify }
18
+ end
19
+ end
20
+ end
21
+
22
+ def down
23
+ # No rollback needed
24
+ end
25
+ end
@@ -0,0 +1,17 @@
1
+ class CreateUserLanguages < ActiveRecord::Migration[5.1]
2
+ def up
3
+ unless UserLanguage.table_exists?
4
+ create_table :user_languages do |t|
5
+ t.timestamps
6
+ t.references :user, null: false, foreign_key: { on_update: :cascade, on_delete: :cascade }
7
+ t.references :language, null: false, foreign_key: { on_update: :cascade, on_delete: :cascade }
8
+ end
9
+ end
10
+ end
11
+
12
+ def down
13
+ if UserLanguage.table_exists?
14
+ drop_table :user_languages
15
+ end
16
+ end
17
+ end
@@ -17,7 +17,7 @@ module Biovision
17
17
 
18
18
  # Get parameter from request and normalize it
19
19
  #
20
- # Casts request parameter to UTF-8 string end removes invalid characters
20
+ # Casts request parameter to UTF-8 string and removes invalid characters
21
21
  #
22
22
  # @param [Symbol] param
23
23
  # @return [String]
@@ -4,7 +4,6 @@ module Biovision
4
4
  initializer "biovision_base.load_base_methods" do
5
5
  ActiveSupport.on_load(:action_controller) do
6
6
  include Biovision::Base::BaseMethods
7
- include Biovision::Base::PrivilegeMethods
8
7
  end
9
8
  end
10
9
 
@@ -5,17 +5,11 @@ module Biovision
5
5
 
6
6
  included do
7
7
  helper_method :current_user_has_privilege?, :current_user_in_group?
8
- helper_method :current_region
9
- end
10
-
11
- def current_region
12
- @current_region ||= set_current_region
13
8
  end
14
9
 
15
10
  # @param [Symbol] privilege_name
16
- # @param [Region] region
17
- def current_user_has_privilege?(privilege_name, region = nil)
18
- ::UserPrivilege.user_has_privilege?(current_user, privilege_name, region)
11
+ def current_user_has_privilege?(privilege_name)
12
+ ::UserPrivilege.user_has_privilege?(current_user, privilege_name)
19
13
  end
20
14
 
21
15
  # @param [Symbol] group_name
@@ -27,7 +21,7 @@ module Biovision
27
21
 
28
22
  # @param [Symbol] privilege_name
29
23
  def require_privilege(privilege_name)
30
- return if current_user_has_privilege?(privilege_name, current_region)
24
+ return if current_user_has_privilege?(privilege_name)
31
25
  handle_http_401("Current user has no privilege #{privilege_name}")
32
26
  end
33
27
 
@@ -36,18 +30,6 @@ module Biovision
36
30
  return if current_user_in_group?(group_name)
37
31
  handle_http_401("Current user is not in group #{group_name}")
38
32
  end
39
-
40
- def set_current_region
41
- region_slug = param_from_request(:region_slug)
42
- if region_slug.blank?
43
- region_slug = request.subdomains.first
44
- end
45
- if region_slug.blank?
46
- @current_region = CentralRegion.new
47
- else
48
- @current_region = Region.find_by(long_slug: region_slug) || CentralRegion.new
49
- end
50
- end
51
33
  end
52
34
  end
53
35
  end
@@ -1,5 +1,5 @@
1
1
  module Biovision
2
2
  module Base
3
- VERSION = '0.9.171227'
3
+ VERSION = '0.11.180127'
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: biovision-base
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.171227
4
+ version: 0.11.180127
5
5
  platform: ruby
6
6
  authors:
7
7
  - Maxim Khan-Magomedov
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-12-29 00:00:00.000000000 Z
11
+ date: 2018-01-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -140,16 +140,16 @@ dependencies:
140
140
  name: pg
141
141
  requirement: !ruby/object:Gem::Requirement
142
142
  requirements:
143
- - - ">="
143
+ - - "~>"
144
144
  - !ruby/object:Gem::Version
145
- version: '0'
145
+ version: '0.18'
146
146
  type: :development
147
147
  prerelease: false
148
148
  version_requirements: !ruby/object:Gem::Requirement
149
149
  requirements:
150
- - - ">="
150
+ - - "~>"
151
151
  - !ruby/object:Gem::Version
152
- version: '0'
152
+ version: '0.18'
153
153
  - !ruby/object:Gem::Dependency
154
154
  name: rspec-rails
155
155
  requirement: !ruby/object:Gem::Requirement
@@ -195,7 +195,6 @@ files:
195
195
  - app/assets/images/biovision/base/placeholders/file.svg
196
196
  - app/assets/images/biovision/base/placeholders/image.svg
197
197
  - app/assets/images/biovision/base/placeholders/photo.svg
198
- - app/assets/images/biovision/base/placeholders/region_image.svg
199
198
  - app/assets/images/biovision/base/placeholders/user.svg
200
199
  - app/assets/javascripts/biovision/base/biovision-sliders.js
201
200
  - app/assets/javascripts/biovision/base/biovision.js
@@ -209,7 +208,6 @@ files:
209
208
  - app/assets/stylesheets/biovision/base/layout.scss
210
209
  - app/assets/stylesheets/biovision/base/message-box.scss
211
210
  - app/assets/stylesheets/biovision/base/pagination.scss
212
- - app/assets/stylesheets/biovision/base/regions.scss
213
211
  - app/assets/stylesheets/biovision/base/toggleable.scss
214
212
  - app/assets/stylesheets/biovision/base/tootik.scss
215
213
  - app/assets/stylesheets/biovision/base/track.scss
@@ -227,7 +225,6 @@ files:
227
225
  - app/controllers/admin/metrics_controller.rb
228
226
  - app/controllers/admin/privilege_groups_controller.rb
229
227
  - app/controllers/admin/privileges_controller.rb
230
- - app/controllers/admin/regions_controller.rb
231
228
  - app/controllers/admin/stored_values_controller.rb
232
229
  - app/controllers/admin/tokens_controller.rb
233
230
  - app/controllers/admin/users_controller.rb
@@ -256,12 +253,10 @@ files:
256
253
  - app/controllers/privilege_groups_controller.rb
257
254
  - app/controllers/privileges_controller.rb
258
255
  - app/controllers/profiles_controller.rb
259
- - app/controllers/regions_controller.rb
260
256
  - app/controllers/stored_values_controller.rb
261
257
  - app/controllers/tokens_controller.rb
262
258
  - app/controllers/users_controller.rb
263
259
  - app/helpers/biovision_helper.rb
264
- - app/helpers/biovision_regions_helper.rb
265
260
  - app/helpers/biovision_users_helper.rb
266
261
  - app/helpers/codes_helper.rb
267
262
  - app/helpers/editable_pages_helper.rb
@@ -278,7 +273,6 @@ files:
278
273
  - app/models/agent.rb
279
274
  - app/models/application_record.rb
280
275
  - app/models/browser.rb
281
- - app/models/central_region.rb
282
276
  - app/models/code.rb
283
277
  - app/models/code_type.rb
284
278
  - app/models/concerns/has_owner.rb
@@ -289,6 +283,7 @@ files:
289
283
  - app/models/feedback_request.rb
290
284
  - app/models/foreign_site.rb
291
285
  - app/models/foreign_user.rb
286
+ - app/models/language.rb
292
287
  - app/models/login_attempt.rb
293
288
  - app/models/media_file.rb
294
289
  - app/models/media_folder.rb
@@ -297,10 +292,10 @@ files:
297
292
  - app/models/privilege.rb
298
293
  - app/models/privilege_group.rb
299
294
  - app/models/privilege_group_privilege.rb
300
- - app/models/region.rb
301
295
  - app/models/stored_value.rb
302
296
  - app/models/token.rb
303
297
  - app/models/user.rb
298
+ - app/models/user_language.rb
304
299
  - app/models/user_privilege.rb
305
300
  - app/models/user_profile.rb
306
301
  - app/services/canonizer.rb
@@ -312,22 +307,18 @@ files:
312
307
  - app/services/user_manager.rb
313
308
  - app/uploaders/avatar_uploader.rb
314
309
  - app/uploaders/editable_page_image_uploader.rb
315
- - app/uploaders/header_image_uploader.rb
316
310
  - app/uploaders/media_file_uploader.rb
317
311
  - app/uploaders/media_snapshot_uploader.rb
318
- - app/uploaders/region_image_uploader.rb
319
312
  - app/views/about/editable.html.erb
320
313
  - app/views/admin/agents/_filter.html.erb
321
314
  - app/views/admin/agents/_list.html.erb
322
315
  - app/views/admin/agents/_nav_item.html.erb
323
- - app/views/admin/agents/_toggleable.html.erb
324
316
  - app/views/admin/agents/entity/_in_list.html.erb
325
317
  - app/views/admin/agents/entity/_preview.jbuilder
326
318
  - app/views/admin/agents/index.html.erb
327
319
  - app/views/admin/agents/show.html.erb
328
320
  - app/views/admin/browsers/_list.html.erb
329
321
  - app/views/admin/browsers/_nav_item.html.erb
330
- - app/views/admin/browsers/_toggleable.html.erb
331
322
  - app/views/admin/browsers/agents/_add.html.erb
332
323
  - app/views/admin/browsers/entity/_in_list.html.erb
333
324
  - app/views/admin/browsers/index.html.erb
@@ -346,7 +337,6 @@ files:
346
337
  - app/views/admin/index/_biovision_base.html.erb
347
338
  - app/views/admin/index/_custom_dashboard.html.erb
348
339
  - app/views/admin/index/dashboard/_biovision_feedback.html.erb
349
- - app/views/admin/index/dashboard/_biovision_region.html.erb
350
340
  - app/views/admin/index/dashboard/_biovision_track.html.erb
351
341
  - app/views/admin/index/dashboard/_biovision_user.html.erb
352
342
  - app/views/admin/index/dashboard/_editorial.html.erb
@@ -378,26 +368,17 @@ files:
378
368
  - app/views/admin/privilege_groups/show.html.erb
379
369
  - app/views/admin/privileges/_list.html.erb
380
370
  - app/views/admin/privileges/_nav_item.html.erb
381
- - app/views/admin/privileges/_toggleable.html.erb
382
371
  - app/views/admin/privileges/entity/_groups.html.erb
383
372
  - app/views/admin/privileges/entity/_in_list.html.erb
384
- - app/views/admin/privileges/entity/_region.html.erb
385
373
  - app/views/admin/privileges/index.html.erb
386
- - app/views/admin/privileges/regions.jbuilder
387
374
  - app/views/admin/privileges/show.html.erb
388
375
  - app/views/admin/privileges/users.html.erb
389
- - app/views/admin/regions/_nav_item.html.erb
390
- - app/views/admin/regions/_toggleable.html.erb
391
- - app/views/admin/regions/entity/_in_list.html.erb
392
- - app/views/admin/regions/index.html.erb
393
- - app/views/admin/regions/show.html.erb
394
376
  - app/views/admin/stored_values/_nav_item.html.erb
395
377
  - app/views/admin/stored_values/entity/_in_list.html.erb
396
378
  - app/views/admin/stored_values/index.html.erb
397
379
  - app/views/admin/stored_values/show.html.erb
398
380
  - app/views/admin/tokens/_filter.html.erb
399
381
  - app/views/admin/tokens/_nav_item.html.erb
400
- - app/views/admin/tokens/_toggleable.html.erb
401
382
  - app/views/admin/tokens/entity/_in_list.html.erb
402
383
  - app/views/admin/tokens/index.html.erb
403
384
  - app/views/admin/tokens/show.html.erb
@@ -405,7 +386,6 @@ files:
405
386
  - app/views/admin/users/_list.html.erb
406
387
  - app/views/admin/users/_nav_item.html.erb
407
388
  - app/views/admin/users/_search.html.erb
408
- - app/views/admin/users/_toggleable.html.erb
409
389
  - app/views/admin/users/codes.html.erb
410
390
  - app/views/admin/users/entity/_in_list.html.erb
411
391
  - app/views/admin/users/entity/_preview.jbuilder
@@ -509,9 +489,6 @@ files:
509
489
  - app/views/privileges/new.html.erb
510
490
  - app/views/profiles/_profile.html.erb
511
491
  - app/views/profiles/show.html.erb
512
- - app/views/regions/_form.html.erb
513
- - app/views/regions/edit.html.erb
514
- - app/views/regions/new.html.erb
515
492
  - app/views/shared/_breadcrumbs.html.erb
516
493
  - app/views/shared/_counters.html.erb
517
494
  - app/views/shared/_flash_messages.html.erb
@@ -544,20 +521,21 @@ files:
544
521
  - config/initializers/pluralization.rb
545
522
  - config/locales/common-en.yml
546
523
  - config/locales/common-ru.yml
524
+ - config/locales/editable-pages-en.yml
547
525
  - config/locales/editable-pages-ru.yml
548
526
  - config/locales/feedback-en.yml
549
527
  - config/locales/feedback-ru.yml
528
+ - config/locales/media-en.yml
550
529
  - config/locales/media-ru.yml
551
530
  - config/locales/plurals.rb
552
- - config/locales/regions-ru.yml
553
531
  - config/locales/track-ru.yml
554
532
  - config/locales/users-ru.yml
555
533
  - config/routes.rb
534
+ - db/migrate/20170228000000_create_languages.rb
556
535
  - db/migrate/20170301000001_create_metrics.rb
557
536
  - db/migrate/20170301000002_create_metric_values.rb
558
537
  - db/migrate/20170301000101_create_browsers.rb
559
538
  - db/migrate/20170301000102_create_agents.rb
560
- - db/migrate/20170301000201_create_regions.rb
561
539
  - db/migrate/20170302000001_create_users.rb
562
540
  - db/migrate/20170302000002_create_user_profiles.rb
563
541
  - db/migrate/20170302000003_create_tokens.rb
@@ -578,6 +556,8 @@ files:
578
556
  - db/migrate/20171211000000_create_feedback_requests.rb
579
557
  - db/migrate/20171217222222_add_fields_to_feedback_requests.rb
580
558
  - db/migrate/20171223333333_amend_foreign_keys.rb
559
+ - db/migrate/20180117151515_add_language_to_models.rb
560
+ - db/migrate/20180117160000_create_user_languages.rb
581
561
  - lib/biovision/base.rb
582
562
  - lib/biovision/base/base_methods.rb
583
563
  - lib/biovision/base/engine.rb
@@ -587,7 +567,6 @@ files:
587
567
  - lib/tasks/biovision/base_tasks.rake
588
568
  - lib/tasks/browsers.rake
589
569
  - lib/tasks/codes.rake
590
- - lib/tasks/regions.rake
591
570
  - lib/tasks/tokens.rake
592
571
  - lib/tasks/users.rake
593
572
  homepage: https://github.com/Biovision/biovision-base