elabs 2.0.0 → 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.
Files changed (173) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +6 -0
  3. data/CHANGELOG.md +83 -0
  4. data/Gemfile +3 -1
  5. data/Gemfile.lock +9 -2
  6. data/ROADMAP.md +6 -11
  7. data/app/assets/stylesheets/elabs/_icons.scss +8 -4
  8. data/app/assets/stylesheets/elabs/app/_badges.scss +11 -0
  9. data/app/assets/stylesheets/elabs/app/_layout.scss +10 -2
  10. data/app/assets/stylesheets/elabs/app/_users.scss +7 -0
  11. data/app/assets/stylesheets/elabs/app/admin-members/_indexes.scss +2 -1
  12. data/app/assets/stylesheets/elabs/app/mixins/_content-card.scss +4 -0
  13. data/app/assets/stylesheets/elabs/app/mixins/_content-full.scss +17 -5
  14. data/app/assets/stylesheets/elabs/lib/knacss/_knacss-variables.scss +16 -15
  15. data/app/assets/stylesheets/elabs/lib/knacss/_knacss.scss +1 -1
  16. data/app/assets/stylesheets/elabs/style.scss +1 -0
  17. data/app/controllers/elabs/acts_controller.rb +1 -1
  18. data/app/controllers/elabs/admin/admin_content_application_controller.rb +13 -6
  19. data/app/controllers/elabs/admin/languages_controller.rb +4 -4
  20. data/app/controllers/elabs/admin/licenses_controller.rb +2 -2
  21. data/app/controllers/elabs/admin/tags_controller.rb +3 -3
  22. data/app/controllers/elabs/concerns/elabs_controller.rb +1 -0
  23. data/app/controllers/elabs/content_application_controller.rb +1 -1
  24. data/app/controllers/elabs/elabs_application_controller.rb +0 -73
  25. data/app/controllers/elabs/elabs_public_controller.rb +80 -0
  26. data/app/controllers/elabs/languages_controller.rb +3 -3
  27. data/app/controllers/elabs/licenses_controller.rb +3 -3
  28. data/app/controllers/elabs/member/member_content_application_controller.rb +24 -14
  29. data/app/controllers/elabs/member/notifications_controller.rb +30 -0
  30. data/app/controllers/elabs/member/preferences_controller.rb +1 -1
  31. data/app/controllers/elabs/member/users_controller.rb +8 -5
  32. data/app/controllers/elabs/reports_controller.rb +2 -2
  33. data/app/controllers/elabs/tags_controller.rb +2 -2
  34. data/app/controllers/elabs/users_controller.rb +3 -3
  35. data/app/helpers/elabs/admin_content_helper.rb +8 -24
  36. data/app/helpers/elabs/application_helper.rb +1 -1
  37. data/app/helpers/elabs/content_helper.rb +39 -0
  38. data/app/helpers/elabs/form_helper.rb +22 -10
  39. data/app/helpers/elabs/member_content_helper.rb +5 -22
  40. data/app/helpers/elabs/notification_helper.rb +69 -0
  41. data/app/helpers/elabs/thumbnails_helper.rb +15 -0
  42. data/app/helpers/elabs/time_helper.rb +7 -0
  43. data/app/models/elabs/application_content_record.rb +1 -0
  44. data/app/models/elabs/application_record.rb +2 -0
  45. data/app/models/elabs/comment.rb +14 -0
  46. data/app/models/elabs/concerns/actable_entity.rb +0 -12
  47. data/app/models/elabs/concerns/content_entity.rb +23 -0
  48. data/app/models/elabs/concerns/notifiable_entity.rb +46 -0
  49. data/app/models/elabs/notification.rb +10 -0
  50. data/app/models/elabs/preference.rb +2 -0
  51. data/app/models/elabs/report.rb +10 -0
  52. data/app/models/elabs/user.rb +26 -6
  53. data/app/views/elabs/acts/_act.json.jbuilder +7 -2
  54. data/app/views/elabs/acts/index.json.jbuilder +1 -1
  55. data/app/views/elabs/admin/albums/_album.json.jbuilder +15 -2
  56. data/app/views/elabs/admin/albums/index.html.haml +1 -1
  57. data/app/views/elabs/admin/albums/index.json.jbuilder +1 -1
  58. data/app/views/elabs/admin/articles/_article.json.jbuilder +15 -2
  59. data/app/views/elabs/admin/articles/index.html.haml +1 -1
  60. data/app/views/elabs/admin/articles/index.json.jbuilder +1 -1
  61. data/app/views/elabs/admin/languages/_language.json.jbuilder +9 -2
  62. data/app/views/elabs/admin/languages/index.html.haml +1 -1
  63. data/app/views/elabs/admin/languages/index.json.jbuilder +1 -1
  64. data/app/views/elabs/admin/licenses/_license.json.jbuilder +10 -2
  65. data/app/views/elabs/admin/licenses/index.html.haml +1 -1
  66. data/app/views/elabs/admin/licenses/index.json.jbuilder +1 -1
  67. data/app/views/elabs/admin/notes/_note.json.jbuilder +13 -2
  68. data/app/views/elabs/admin/notes/index.html.haml +1 -1
  69. data/app/views/elabs/admin/notes/index.json.jbuilder +1 -1
  70. data/app/views/elabs/admin/projects/_project.json.jbuilder +20 -2
  71. data/app/views/elabs/admin/projects/index.html.haml +1 -1
  72. data/app/views/elabs/admin/projects/index.json.jbuilder +1 -1
  73. data/app/views/elabs/admin/reports/_report.json.jbuilder +10 -0
  74. data/app/views/elabs/admin/reports/index.html.haml +1 -1
  75. data/app/views/elabs/admin/reports/index.json.jbuilder +1 -1
  76. data/app/views/elabs/admin/tags/_tag.json.jbuilder +8 -2
  77. data/app/views/elabs/admin/tags/index.html.haml +1 -1
  78. data/app/views/elabs/admin/tags/index.json.jbuilder +1 -1
  79. data/app/views/elabs/admin/uploads/_upload.json.jbuilder +17 -2
  80. data/app/views/elabs/admin/uploads/index.html.haml +1 -1
  81. data/app/views/elabs/admin/uploads/index.json.jbuilder +1 -1
  82. data/app/views/elabs/admin/users/_user.json.jbuilder +14 -0
  83. data/app/views/elabs/admin/users/index.html.haml +6 -2
  84. data/app/views/elabs/admin/users/index.json.jbuilder +1 -1
  85. data/app/views/elabs/admin/users/show.html.haml +1 -1
  86. data/app/views/elabs/admin/users/show.json.jbuilder +1 -1
  87. data/app/views/elabs/albums/_album.html.haml +2 -2
  88. data/app/views/elabs/albums/_album.json.jbuilder +12 -2
  89. data/app/views/elabs/albums/index.json.jbuilder +1 -1
  90. data/app/views/elabs/albums/show.html.haml +7 -7
  91. data/app/views/elabs/albums/show.json.jbuilder +1 -1
  92. data/app/views/elabs/articles/_article.html.haml +2 -2
  93. data/app/views/elabs/articles/_article.json.jbuilder +12 -2
  94. data/app/views/elabs/articles/index.json.jbuilder +1 -1
  95. data/app/views/elabs/articles/show.html.haml +6 -6
  96. data/app/views/elabs/articles/show.json.jbuilder +1 -1
  97. data/app/views/elabs/auth/registrations/edit.html.haml +8 -5
  98. data/app/views/elabs/comments/_comment.json.jbuilder +10 -2
  99. data/app/views/elabs/comments/_comments.html.haml +2 -2
  100. data/app/views/elabs/languages/_language.json.jbuilder +9 -2
  101. data/app/views/elabs/languages/index.json.jbuilder +1 -1
  102. data/app/views/elabs/languages/show.html.haml +1 -1
  103. data/app/views/elabs/languages/show.json.jbuilder +1 -1
  104. data/app/views/elabs/layouts/_menu.html.haml +10 -5
  105. data/app/views/elabs/licenses/_license.json.jbuilder +10 -2
  106. data/app/views/elabs/licenses/index.json.jbuilder +1 -1
  107. data/app/views/elabs/licenses/show.html.haml +2 -6
  108. data/app/views/elabs/member/albums/_album.json.jbuilder +15 -2
  109. data/app/views/elabs/member/albums/index.html.haml +1 -1
  110. data/app/views/elabs/member/albums/index.json.jbuilder +1 -1
  111. data/app/views/elabs/member/articles/_article.json.jbuilder +15 -2
  112. data/app/views/elabs/member/articles/index.html.haml +1 -1
  113. data/app/views/elabs/member/articles/index.json.jbuilder +1 -1
  114. data/app/views/elabs/member/layouts/_empty.html.haml +3 -2
  115. data/app/views/elabs/member/notes/_note.json.jbuilder +13 -2
  116. data/app/views/elabs/member/notes/index.html.haml +1 -1
  117. data/app/views/elabs/member/notes/index.json.jbuilder +1 -1
  118. data/app/views/elabs/member/notifications/_notification.json.jbuilder +8 -0
  119. data/app/views/elabs/member/notifications/index.html.haml +21 -0
  120. data/app/views/elabs/member/notifications/index.json.jbuilder +1 -0
  121. data/app/views/elabs/member/preferences/_form.html.haml +6 -0
  122. data/app/views/elabs/member/preferences/edit.html.haml +2 -1
  123. data/app/views/elabs/member/projects/_project.json.jbuilder +20 -2
  124. data/app/views/elabs/member/projects/index.html.haml +1 -1
  125. data/app/views/elabs/member/projects/index.json.jbuilder +1 -1
  126. data/app/views/elabs/member/uploads/_upload.json.jbuilder +17 -2
  127. data/app/views/elabs/member/uploads/index.html.haml +1 -1
  128. data/app/views/elabs/member/uploads/index.json.jbuilder +1 -1
  129. data/app/views/elabs/member/users/_form.html.haml +14 -9
  130. data/app/views/elabs/member/users/edit.html.haml +7 -0
  131. data/app/views/elabs/notes/_note.html.haml +2 -2
  132. data/app/views/elabs/notes/_note.json.jbuilder +10 -2
  133. data/app/views/elabs/notes/index.json.jbuilder +1 -1
  134. data/app/views/elabs/notes/show.html.haml +5 -5
  135. data/app/views/elabs/notes/show.json.jbuilder +1 -1
  136. data/app/views/elabs/projects/_project.html.haml +2 -2
  137. data/app/views/elabs/projects/_project.json.jbuilder +17 -0
  138. data/app/views/elabs/projects/index.json.jbuilder +1 -1
  139. data/app/views/elabs/projects/show.html.haml +14 -11
  140. data/app/views/elabs/projects/show.json.jbuilder +1 -1
  141. data/app/views/elabs/tags/_tag.json.jbuilder +8 -2
  142. data/app/views/elabs/tags/index.json.jbuilder +1 -1
  143. data/app/views/elabs/tags/show.json.jbuilder +1 -1
  144. data/app/views/elabs/uploads/_upload.html.haml +1 -1
  145. data/app/views/elabs/uploads/_upload.json.jbuilder +14 -2
  146. data/app/views/elabs/uploads/index.json.jbuilder +1 -1
  147. data/app/views/elabs/uploads/show.html.haml +12 -3
  148. data/app/views/elabs/uploads/show.json.jbuilder +1 -1
  149. data/app/views/elabs/users/_user.html.haml +10 -3
  150. data/app/views/elabs/users/_user.json.jbuilder +14 -2
  151. data/app/views/elabs/users/index.json.jbuilder +1 -1
  152. data/app/views/elabs/users/show.html.haml +15 -10
  153. data/app/views/elabs/users/show.json.jbuilder +1 -1
  154. data/config/routes.rb +21 -16
  155. data/db/migrate/20180910000015_remove_license_timestamps.rb +6 -0
  156. data/db/migrate/20180910175012_create_notifications.rb +13 -0
  157. data/db/migrate/20180913093027_add_fields_in_preferences.rb +6 -0
  158. data/docs/migrating.md +14 -0
  159. data/docs/setup.md +1 -0
  160. data/lib/elabs.rb +3 -0
  161. data/lib/elabs/version.rb +1 -1
  162. data/lib/generators/elabs/required_assets_generator.rb +1 -1
  163. data/lib/generators/templates/elabs.rb +6 -0
  164. data/locale/app.pot +73 -14
  165. data/locale/en/app.edit.po +71 -12
  166. data/locale/en/app.po +71 -12
  167. data/locale/fr/app.edit.po +76 -17
  168. data/locale/fr/app.po +75 -16
  169. data/package.json +4 -4
  170. metadata +19 -5
  171. data/app/assets/images/elabs/preview_placeholder.png +0 -0
  172. data/app/assets/images/elabs/preview_placeholder_nsfw.png +0 -0
  173. data/app/views/elabs/admin/users/_admin_user.json.jbuilder +0 -2
@@ -1 +1 @@
1
- json.array! @users, partial: 'users/user', as: :user
1
+ json.array! @users, partial: 'user', as: :user
@@ -1,20 +1,25 @@
1
- - @page_title = @user.real_name || @user.username
1
+ - @page_title = @user.display_name
2
2
  .user.user--full
3
3
  %aside
4
4
  %ul
5
+ - if Elabs.use_avatars && @user.avatar.attached?
6
+ %li.image
7
+ = image_tag main_app.url_for(avatar_image(@user.avatar, :medium).processed)
5
8
  %li
6
9
  = icon('user', ['fw'])
7
- %strong= _('Username')
10
+ %strong= _('Username:')
8
11
  = @user.username
9
- %li
10
- = icon('user', ['fw'])
11
- %strong= _('Real name')
12
- = @user.real_name
12
+ - if @user.real_name.present?
13
+ %li
14
+ = icon('user', ['fw'])
15
+ %strong= _('Real name:')
16
+ = @user.real_name
13
17
  %li
14
18
  = icon('calendar-check', ['fw'])
15
- %strong= _('Subscription date')
16
- = @user.created_at
17
- %li
19
+ %strong= _('Since:')
20
+ = short_date @user.created_at
21
+
22
+ %li.separator
18
23
  = icon('amount', ['fw'])
19
24
  %strong= _('Albums:')
20
25
  = @user.albums_count
@@ -35,7 +40,7 @@
35
40
  %strong= _('Uploads:')
36
41
  = @user.uploads_count
37
42
  .content
38
- - unless @user.biography.nil?
43
+ - if @user.biography.present?
39
44
  %article
40
45
  = markdown @user.biography
41
46
 
@@ -1 +1 @@
1
- json.partial! 'users/user', user: @user
1
+ json.partial! 'user', user: @user
@@ -15,32 +15,35 @@ Elabs::Engine.routes.draw do
15
15
  resources :articles, only: %i[index show] do
16
16
  post 'comment', to: 'articles#create_comment', as: 'create_comment'
17
17
  end
18
- resources :languages, only: %i[index show] do
19
- resources :albums, only: %i[index]
18
+ resources :notes, only: %i[index show] do
19
+ post 'comment', to: 'notes#create_comment', as: 'create_comment'
20
+ end
21
+ resources :projects, only: %i[index show] do
20
22
  resources :articles, only: %i[index]
23
+ resources :albums, only: %i[index]
21
24
  resources :notes, only: %i[index]
22
- resources :projects, only: %i[index]
23
25
  resources :uploads, only: %i[index]
26
+ post 'comment', to: 'projects#create_comment', as: 'create_comment'
24
27
  end
25
- resources :licenses, only: %i[index show] do
28
+ resources :uploads, only: %i[index show] do
29
+ post 'comment', to: 'uploads#create_comment', as: 'create_comment'
30
+ end
31
+
32
+ # Classifiers
33
+ resources :languages, only: %i[index show] do
26
34
  resources :albums, only: %i[index]
27
35
  resources :articles, only: %i[index]
28
36
  resources :notes, only: %i[index]
29
37
  resources :projects, only: %i[index]
30
38
  resources :uploads, only: %i[index]
31
39
  end
32
- resources :notes, only: %i[index show] do
33
- post 'comment', to: 'notes#create_comment', as: 'create_comment'
34
- end
35
- resources :projects, only: %i[index show] do
36
- resources :articles, only: %i[index]
40
+ resources :licenses, only: %i[index show] do
37
41
  resources :albums, only: %i[index]
42
+ resources :articles, only: %i[index]
38
43
  resources :notes, only: %i[index]
44
+ resources :projects, only: %i[index]
39
45
  resources :uploads, only: %i[index]
40
- post 'comment', to: 'projects#create_comment', as: 'create_comment'
41
46
  end
42
-
43
- # Classifiers
44
47
  resources :tags, only: %i[index show] do
45
48
  resources :albums, only: %i[index]
46
49
  resources :articles, only: %i[index]
@@ -48,9 +51,6 @@ Elabs::Engine.routes.draw do
48
51
  resources :projects, only: %i[index]
49
52
  resources :uploads, only: %i[index]
50
53
  end
51
- resources :uploads, only: %i[index show] do
52
- post 'comment', to: 'uploads#create_comment', as: 'create_comment'
53
- end
54
54
  resources :users, only: %i[index show] do
55
55
  resources :albums, only: %i[index]
56
56
  resources :articles, only: %i[index]
@@ -83,9 +83,13 @@ Elabs::Engine.routes.draw do
83
83
  put 'toggle_publication', to: 'uploads#toggle_publication', as: :toggle_publication
84
84
  end
85
85
 
86
+ resources :notifications, only: %i[index destroy]
87
+
86
88
  get '/preferences', to: 'preferences#edit', as: :edit_preferences
87
89
  patch '/preferences', to: 'preferences#update', as: :update_preferences
88
- patch '/account', to: 'users#update', as: :update_user
90
+
91
+ get '/infos', to: 'users#edit', as: :edit_infos
92
+ patch '/infos', to: 'users#update', as: :update_infos
89
93
  end
90
94
 
91
95
  # Admin
@@ -106,6 +110,7 @@ Elabs::Engine.routes.draw do
106
110
  resources :uploads, only: %i[index destroy] do
107
111
  put 'toggle_lock', to: 'uploads#toggle_lock', as: :toggle_lock
108
112
  end
113
+
109
114
  # Basic resources
110
115
  resources :languages, except: %i[show]
111
116
  resources :licenses, except: %i[show]
@@ -0,0 +1,6 @@
1
+ class RemoveLicenseTimestamps < ActiveRecord::Migration[5.2]
2
+ def change
3
+ remove_column :licenses, :created_at
4
+ remove_column :licenses, :updated_at
5
+ end
6
+ end
@@ -0,0 +1,13 @@
1
+ class CreateNotifications < ActiveRecord::Migration[5.2]
2
+ def change
3
+ create_table :notifications do |t|
4
+ t.references :content, polymorphic: true
5
+ t.string :event
6
+ t.belongs_to :user
7
+ t.references :source_user, table: :users, index: { name: :source_user_index }
8
+ t.string :message, default: nil, null: true
9
+
10
+ t.timestamps
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,6 @@
1
+ class AddFieldsInPreferences < ActiveRecord::Migration[5.2]
2
+ def change
3
+ add_reference :preferences, :writing_language, table: :languages, index: { name: :writing_language_preferences_index }
4
+ add_reference :preferences, :writing_license, table: :licenses, index: { name: :writing_license_preferences_index }
5
+ end
6
+ end
@@ -1,4 +1,18 @@
1
1
  # Migration guide
2
2
 
3
+ ## From 2.x to 3.0.0
4
+
5
+ First of all, read the changelog for the 3.0.0 release
6
+
7
+ - Update the translations: `rails g elabs:install` and accept to override
8
+ the initializer, and everything in `locale` folder
9
+ - Apply the last migrations: `rake elabs:install:migrations` then
10
+ `rails db:migrate`
11
+
12
+ If you have overridden things, you will need to check them manually. You
13
+ can use the various generators to re-copy the elabs views/assets,... and
14
+ and compare them with your version (hint: you should use a version
15
+ control system to avoid messing up things).
16
+
3
17
  ## From 1.0.1 to 2.0.0
4
18
  No one ever used 1.0.0 in production, so there is no guide for it :)
@@ -31,6 +31,7 @@ gem 'devise'
31
31
  gem 'kaminari'
32
32
  # Translations
33
33
  gem 'gettext_i18n_rails'
34
+ gem 'rails-i18n'
34
35
  # Engine
35
36
  gem 'elabs'
36
37
 
@@ -34,6 +34,9 @@ module Elabs
34
34
  mattr_accessor :av_formats_video
35
35
  @@av_formats_video = ['video/mp4', 'video/webm', 'video/ogg']
36
36
 
37
+ mattr_accessor :use_avatars
38
+ @@use_avatars = false
39
+
37
40
  def self.setup
38
41
  yield self
39
42
  end
@@ -1,3 +1,3 @@
1
1
  module Elabs
2
- VERSION = '2.0.0'.freeze
2
+ VERSION = '3.0.0'.freeze
3
3
  end
@@ -17,7 +17,7 @@ module Elabs
17
17
  desc 'Copies required files if you plan to use elabs views'
18
18
 
19
19
  def copy_files
20
- directory 'app/assets/images/elabs'
20
+ directory 'spec/dummy/app/assets/images/elabs', 'app/assets/images/elabs'
21
21
  template 'spec/dummy/package.json', 'package.json'
22
22
  directory 'spec/dummy/public/fonts', 'public/fonts'
23
23
  end
@@ -22,4 +22,10 @@ Elabs.setup do |config|
22
22
 
23
23
  # List of video formats that can be used with html5 players
24
24
  config.av_formats_video = ['video/mp4', 'video/webm', 'video/ogg']
25
+
26
+ # ActiveStorage validations are not supported. This leads to saving
27
+ # the uploaded file even if validation fails. To prevent this, the
28
+ # attached file is deleted on failure, resulting on avatar suppression.
29
+ # Set this value to false to avoid using avatars
30
+ config.use_avatars = false
25
31
  end
@@ -8,8 +8,8 @@ msgid ""
8
8
  msgstr ""
9
9
  "Project-Id-Version: app 1.0.0\n"
10
10
  "Report-Msgid-Bugs-To: \n"
11
- "POT-Creation-Date: 2018-09-06 06:46+0200\n"
12
- "PO-Revision-Date: 2018-09-06 06:46+0200\n"
11
+ "POT-Creation-Date: 2018-09-14 00:25+0200\n"
12
+ "PO-Revision-Date: 2018-09-14 00:25+0200\n"
13
13
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
14
14
  "Language-Team: LANGUAGE <LL@li.org>\n"
15
15
  "Language: \n"
@@ -79,6 +79,24 @@ msgstr ""
79
79
  msgid "%<text>s %<icon>s"
80
80
  msgstr ""
81
81
 
82
+ msgid "%<user>s %<action>s %<link>s"
83
+ msgstr ""
84
+
85
+ msgid "%<user>s %<action>s your album %<link>s"
86
+ msgstr ""
87
+
88
+ msgid "%<user>s %<action>s your article %<link>s"
89
+ msgstr ""
90
+
91
+ msgid "%<user>s %<action>s your file %<link>s"
92
+ msgstr ""
93
+
94
+ msgid "%<user>s %<action>s your note %<link>s"
95
+ msgstr ""
96
+
97
+ msgid "%<user>s %<action>s your project %<link>s"
98
+ msgstr ""
99
+
82
100
  msgid "%I:%M %p"
83
101
  msgstr ""
84
102
 
@@ -94,7 +112,7 @@ msgstr ""
94
112
  msgid "A note"
95
113
  msgstr ""
96
114
 
97
- msgid "About"
115
+ msgid "About you"
98
116
  msgstr ""
99
117
 
100
118
  msgid "Account"
@@ -103,6 +121,9 @@ msgstr ""
103
121
  msgid "Act"
104
122
  msgstr ""
105
123
 
124
+ msgid "Active"
125
+ msgstr ""
126
+
106
127
  msgid "Act|Content type"
107
128
  msgstr ""
108
129
 
@@ -187,6 +208,11 @@ msgid_plural "%<nb>i errors prevented your comment from being saved:"
187
208
  msgstr[0] ""
188
209
  msgstr[1] ""
189
210
 
211
+ msgid "An error prevented your infos from being updated:"
212
+ msgid_plural "%<nb>i errors prevented your infos from being updated:"
213
+ msgstr[0] ""
214
+ msgstr[1] ""
215
+
190
216
  msgid "An error prevented your password from being changed:"
191
217
  msgid_plural "%<nb>i errors prevented your password from being changed:"
192
218
  msgstr[0] ""
@@ -340,6 +366,9 @@ msgstr ""
340
366
  msgid "Created at"
341
367
  msgstr ""
342
368
 
369
+ msgid "Creator:"
370
+ msgstr ""
371
+
343
372
  msgid "Currently waiting confirmation for: %<email>s"
344
373
  msgstr ""
345
374
 
@@ -412,7 +441,7 @@ msgstr ""
412
441
  msgid "Icon"
413
442
  msgstr ""
414
443
 
415
- msgid "Icon:"
444
+ msgid "Infos"
416
445
  msgstr ""
417
446
 
418
447
  msgid "Insc. date"
@@ -562,6 +591,9 @@ msgstr ""
562
591
  msgid "Member"
563
592
  msgstr ""
564
593
 
594
+ msgid "Mime type:"
595
+ msgstr ""
596
+
565
597
  msgid "Name"
566
598
  msgstr ""
567
599
 
@@ -631,6 +663,12 @@ msgstr ""
631
663
  msgid "Notes:"
632
664
  msgstr ""
633
665
 
666
+ msgid "Notification was successfully destroyed."
667
+ msgstr ""
668
+
669
+ msgid "Notifications"
670
+ msgstr ""
671
+
634
672
  msgid "Oh noes ! There is nothing here!"
635
673
  msgstr ""
636
674
 
@@ -640,6 +678,12 @@ msgstr ""
640
678
  msgid "Only SFW"
641
679
  msgstr ""
642
680
 
681
+ msgid "Original name:"
682
+ msgstr ""
683
+
684
+ msgid "Pass reset"
685
+ msgstr ""
686
+
643
687
  msgid "Permalink"
644
688
  msgstr ""
645
689
 
@@ -688,9 +732,6 @@ msgstr ""
688
732
  msgid "Published at:"
689
733
  msgstr ""
690
734
 
691
- msgid "Real name"
692
- msgstr ""
693
-
694
735
  msgid "Real name:"
695
736
  msgstr ""
696
737
 
@@ -754,12 +795,6 @@ msgstr ""
754
795
  msgid "Send me reset password instructions"
755
796
  msgstr ""
756
797
 
757
- msgid "Sensitive changes"
758
- msgstr ""
759
-
760
- msgid "Show"
761
- msgstr ""
762
-
763
798
  msgid "Show NSFW"
764
799
  msgstr ""
765
800
 
@@ -784,7 +819,7 @@ msgstr ""
784
819
  msgid "Skip hist."
785
820
  msgstr ""
786
821
 
787
- msgid "Subscription date"
822
+ msgid "Someone"
788
823
  msgstr ""
789
824
 
790
825
  msgid "Subscription date:"
@@ -847,6 +882,9 @@ msgstr ""
847
882
  msgid "This content needs review and have been retired for now."
848
883
  msgstr ""
849
884
 
885
+ msgid "This feature is experimental. If you provide an invalid file, your current avatar will be deleted."
886
+ msgstr ""
887
+
850
888
  msgid "This space is empty"
851
889
  msgstr ""
852
890
 
@@ -973,6 +1011,9 @@ msgstr ""
973
1011
  msgid "Your infos were successfully saved"
974
1012
  msgstr ""
975
1013
 
1014
+ msgid "Your picture should be in \"png\" or \"jpg\", preferably a square of 512px."
1015
+ msgstr ""
1016
+
976
1017
  msgid "created"
977
1018
  msgstr ""
978
1019
 
@@ -1108,9 +1149,27 @@ msgstr ""
1108
1149
  msgid "errors.messages.not_saved.other"
1109
1150
  msgstr ""
1110
1151
 
1152
+ msgid "has commented"
1153
+ msgstr ""
1154
+
1155
+ msgid "has deleted"
1156
+ msgstr ""
1157
+
1158
+ msgid "has locked"
1159
+ msgstr ""
1160
+
1161
+ msgid "has reported"
1162
+ msgstr ""
1163
+
1164
+ msgid "has unlocked"
1165
+ msgstr ""
1166
+
1111
1167
  msgid "locked"
1112
1168
  msgstr ""
1113
1169
 
1170
+ msgid "needs to be a \"png\" or \"jpg\" image"
1171
+ msgstr ""
1172
+
1114
1173
  msgid "published"
1115
1174
  msgstr ""
1116
1175
 
@@ -78,6 +78,24 @@ msgstr ""
78
78
  msgid "%<text>s %<icon>s"
79
79
  msgstr ""
80
80
 
81
+ msgid "%<user>s %<action>s %<link>s"
82
+ msgstr ""
83
+
84
+ msgid "%<user>s %<action>s your album %<link>s"
85
+ msgstr ""
86
+
87
+ msgid "%<user>s %<action>s your article %<link>s"
88
+ msgstr ""
89
+
90
+ msgid "%<user>s %<action>s your file %<link>s"
91
+ msgstr ""
92
+
93
+ msgid "%<user>s %<action>s your note %<link>s"
94
+ msgstr ""
95
+
96
+ msgid "%<user>s %<action>s your project %<link>s"
97
+ msgstr ""
98
+
81
99
  msgid "%I:%M %p"
82
100
  msgstr ""
83
101
 
@@ -93,7 +111,7 @@ msgstr ""
93
111
  msgid "A note"
94
112
  msgstr ""
95
113
 
96
- msgid "About"
114
+ msgid "About you"
97
115
  msgstr ""
98
116
 
99
117
  msgid "Account"
@@ -102,6 +120,9 @@ msgstr ""
102
120
  msgid "Act"
103
121
  msgstr ""
104
122
 
123
+ msgid "Active"
124
+ msgstr ""
125
+
105
126
  msgid "Act|Content type"
106
127
  msgstr ""
107
128
 
@@ -186,6 +207,11 @@ msgid_plural "%<nb>i errors prevented your comment from being saved:"
186
207
  msgstr[0] ""
187
208
  msgstr[1] ""
188
209
 
210
+ msgid "An error prevented your infos from being updated:"
211
+ msgid_plural "%<nb>i errors prevented your infos from being updated:"
212
+ msgstr[0] ""
213
+ msgstr[1] ""
214
+
189
215
  msgid "An error prevented your password from being changed:"
190
216
  msgid_plural "%<nb>i errors prevented your password from being changed:"
191
217
  msgstr[0] ""
@@ -339,6 +365,9 @@ msgstr ""
339
365
  msgid "Created at"
340
366
  msgstr ""
341
367
 
368
+ msgid "Creator:"
369
+ msgstr ""
370
+
342
371
  msgid "Currently waiting confirmation for: %<email>s"
343
372
  msgstr ""
344
373
 
@@ -411,7 +440,7 @@ msgstr ""
411
440
  msgid "Icon"
412
441
  msgstr ""
413
442
 
414
- msgid "Icon:"
443
+ msgid "Infos"
415
444
  msgstr ""
416
445
 
417
446
  msgid "Insc. date"
@@ -561,6 +590,9 @@ msgstr ""
561
590
  msgid "Member"
562
591
  msgstr ""
563
592
 
593
+ msgid "Mime type:"
594
+ msgstr ""
595
+
564
596
  msgid "Name"
565
597
  msgstr ""
566
598
 
@@ -630,6 +662,12 @@ msgstr ""
630
662
  msgid "Notes:"
631
663
  msgstr ""
632
664
 
665
+ msgid "Notification was successfully destroyed."
666
+ msgstr ""
667
+
668
+ msgid "Notifications"
669
+ msgstr ""
670
+
633
671
  msgid "Oh noes ! There is nothing here!"
634
672
  msgstr ""
635
673
 
@@ -639,6 +677,12 @@ msgstr ""
639
677
  msgid "Only SFW"
640
678
  msgstr ""
641
679
 
680
+ msgid "Original name:"
681
+ msgstr ""
682
+
683
+ msgid "Pass reset"
684
+ msgstr ""
685
+
642
686
  msgid "Permalink"
643
687
  msgstr ""
644
688
 
@@ -687,9 +731,6 @@ msgstr ""
687
731
  msgid "Published at:"
688
732
  msgstr ""
689
733
 
690
- msgid "Real name"
691
- msgstr ""
692
-
693
734
  msgid "Real name:"
694
735
  msgstr ""
695
736
 
@@ -753,12 +794,6 @@ msgstr ""
753
794
  msgid "Send me reset password instructions"
754
795
  msgstr ""
755
796
 
756
- msgid "Sensitive changes"
757
- msgstr ""
758
-
759
- msgid "Show"
760
- msgstr ""
761
-
762
797
  msgid "Show NSFW"
763
798
  msgstr ""
764
799
 
@@ -783,7 +818,7 @@ msgstr ""
783
818
  msgid "Skip hist."
784
819
  msgstr ""
785
820
 
786
- msgid "Subscription date"
821
+ msgid "Someone"
787
822
  msgstr ""
788
823
 
789
824
  msgid "Subscription date:"
@@ -846,6 +881,9 @@ msgstr ""
846
881
  msgid "This content needs review and have been retired for now."
847
882
  msgstr ""
848
883
 
884
+ msgid "This feature is experimental. If you provide an invalid file, your current avatar will be deleted."
885
+ msgstr ""
886
+
849
887
  msgid "This space is empty"
850
888
  msgstr ""
851
889
 
@@ -972,6 +1010,9 @@ msgstr ""
972
1010
  msgid "Your infos were successfully saved"
973
1011
  msgstr ""
974
1012
 
1013
+ msgid "Your picture should be in \"png\" or \"jpg\", preferably a square of 512px."
1014
+ msgstr ""
1015
+
975
1016
  msgid "created"
976
1017
  msgstr ""
977
1018
 
@@ -1107,9 +1148,27 @@ msgstr "1 error prohibited this %{resource} from being saved:"
1107
1148
  msgid "errors.messages.not_saved.other"
1108
1149
  msgstr "%{count} errors prohibited this %{resource} from being saved:"
1109
1150
 
1151
+ msgid "has commented"
1152
+ msgstr ""
1153
+
1154
+ msgid "has deleted"
1155
+ msgstr ""
1156
+
1157
+ msgid "has locked"
1158
+ msgstr ""
1159
+
1160
+ msgid "has reported"
1161
+ msgstr ""
1162
+
1163
+ msgid "has unlocked"
1164
+ msgstr ""
1165
+
1110
1166
  msgid "locked"
1111
1167
  msgstr ""
1112
1168
 
1169
+ msgid "needs to be a \"png\" or \"jpg\" image"
1170
+ msgstr ""
1171
+
1113
1172
  msgid "published"
1114
1173
  msgstr ""
1115
1174