elabs 2.0.0 → 3.0.0

Sign up to get free protection for your applications and to get access to all the features.
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