boxroom 0.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/MIT-LICENSE +20 -0
- data/README.md +50 -0
- data/Rakefile +36 -0
- data/app/assets/config/boxroom_manifest.js +2 -0
- data/app/assets/images/boxroom/clipboard.png +0 -0
- data/app/assets/images/boxroom/clipboard_add.png +0 -0
- data/app/assets/images/boxroom/copy.png +0 -0
- data/app/assets/images/boxroom/delete.png +0 -0
- data/app/assets/images/boxroom/edit.png +0 -0
- data/app/assets/images/boxroom/exclamation.png +0 -0
- data/app/assets/images/boxroom/extend.png +0 -0
- data/app/assets/images/boxroom/failed.png +0 -0
- data/app/assets/images/boxroom/file.png +0 -0
- data/app/assets/images/boxroom/file_add.png +0 -0
- data/app/assets/images/boxroom/fileicons/7z.png +0 -0
- data/app/assets/images/boxroom/fileicons/ai.png +0 -0
- data/app/assets/images/boxroom/fileicons/aif.png +0 -0
- data/app/assets/images/boxroom/fileicons/aiff.png +0 -0
- data/app/assets/images/boxroom/fileicons/audio.png +0 -0
- data/app/assets/images/boxroom/fileicons/bz2.png +0 -0
- data/app/assets/images/boxroom/fileicons/c.png +0 -0
- data/app/assets/images/boxroom/fileicons/conf.png +0 -0
- data/app/assets/images/boxroom/fileicons/cpp.png +0 -0
- data/app/assets/images/boxroom/fileicons/cs.png +0 -0
- data/app/assets/images/boxroom/fileicons/css.png +0 -0
- data/app/assets/images/boxroom/fileicons/csv.png +0 -0
- data/app/assets/images/boxroom/fileicons/divx.png +0 -0
- data/app/assets/images/boxroom/fileicons/doc.png +0 -0
- data/app/assets/images/boxroom/fileicons/docx.png +0 -0
- data/app/assets/images/boxroom/fileicons/dot.png +0 -0
- data/app/assets/images/boxroom/fileicons/fla.png +0 -0
- data/app/assets/images/boxroom/fileicons/gif.png +0 -0
- data/app/assets/images/boxroom/fileicons/gz.png +0 -0
- data/app/assets/images/boxroom/fileicons/htm.png +0 -0
- data/app/assets/images/boxroom/fileicons/html.png +0 -0
- data/app/assets/images/boxroom/fileicons/image.png +0 -0
- data/app/assets/images/boxroom/fileicons/java.png +0 -0
- data/app/assets/images/boxroom/fileicons/jpeg.png +0 -0
- data/app/assets/images/boxroom/fileicons/jpg.png +0 -0
- data/app/assets/images/boxroom/fileicons/js.png +0 -0
- data/app/assets/images/boxroom/fileicons/mdb.png +0 -0
- data/app/assets/images/boxroom/fileicons/mdbx.png +0 -0
- data/app/assets/images/boxroom/fileicons/mov.png +0 -0
- data/app/assets/images/boxroom/fileicons/mp3.png +0 -0
- data/app/assets/images/boxroom/fileicons/mpg.png +0 -0
- data/app/assets/images/boxroom/fileicons/ogg.png +0 -0
- data/app/assets/images/boxroom/fileicons/pdf.png +0 -0
- data/app/assets/images/boxroom/fileicons/php.png +0 -0
- data/app/assets/images/boxroom/fileicons/pl.png +0 -0
- data/app/assets/images/boxroom/fileicons/png.png +0 -0
- data/app/assets/images/boxroom/fileicons/ppt.png +0 -0
- data/app/assets/images/boxroom/fileicons/pptx.png +0 -0
- data/app/assets/images/boxroom/fileicons/ps.png +0 -0
- data/app/assets/images/boxroom/fileicons/py.png +0 -0
- data/app/assets/images/boxroom/fileicons/ram.png +0 -0
- data/app/assets/images/boxroom/fileicons/rar.png +0 -0
- data/app/assets/images/boxroom/fileicons/rb.png +0 -0
- data/app/assets/images/boxroom/fileicons/rm.png +0 -0
- data/app/assets/images/boxroom/fileicons/rtf.png +0 -0
- data/app/assets/images/boxroom/fileicons/sql.png +0 -0
- data/app/assets/images/boxroom/fileicons/swf.png +0 -0
- data/app/assets/images/boxroom/fileicons/tar.png +0 -0
- data/app/assets/images/boxroom/fileicons/tgz.png +0 -0
- data/app/assets/images/boxroom/fileicons/txt.png +0 -0
- data/app/assets/images/boxroom/fileicons/video.png +0 -0
- data/app/assets/images/boxroom/fileicons/wav.png +0 -0
- data/app/assets/images/boxroom/fileicons/wma.png +0 -0
- data/app/assets/images/boxroom/fileicons/wmv.png +0 -0
- data/app/assets/images/boxroom/fileicons/xls.png +0 -0
- data/app/assets/images/boxroom/fileicons/xlsx.png +0 -0
- data/app/assets/images/boxroom/fileicons/xml.png +0 -0
- data/app/assets/images/boxroom/fileicons/xvid.png +0 -0
- data/app/assets/images/boxroom/fileicons/zip.png +0 -0
- data/app/assets/images/boxroom/folder.png +0 -0
- data/app/assets/images/boxroom/folder_add.png +0 -0
- data/app/assets/images/boxroom/group.png +0 -0
- data/app/assets/images/boxroom/group_add.png +0 -0
- data/app/assets/images/boxroom/group_grey.png +0 -0
- data/app/assets/images/boxroom/information.png +0 -0
- data/app/assets/images/boxroom/logo.png +0 -0
- data/app/assets/images/boxroom/move.png +0 -0
- data/app/assets/images/boxroom/permissions.png +0 -0
- data/app/assets/images/boxroom/share.png +0 -0
- data/app/assets/images/boxroom/spinner.gif +0 -0
- data/app/assets/images/boxroom/tick.png +0 -0
- data/app/assets/images/boxroom/user.png +0 -0
- data/app/assets/images/boxroom/user_add.png +0 -0
- data/app/assets/javascripts/boxroom/application.js.coffee +51 -0
- data/app/assets/javascripts/boxroom/files.js.coffee +33 -0
- data/app/assets/stylesheets/boxroom/application.scss +7 -0
- data/app/concepts/boxroom/base_cell.rb +7 -0
- data/app/concepts/boxroom/folder/cell/show.rb +25 -0
- data/app/concepts/boxroom/folder/view/show.erb +69 -0
- data/app/concepts/boxroom/search/contract/files_and_folders.rb +9 -0
- data/app/concepts/boxroom/search/operations/files_and_folders.rb +21 -0
- data/app/controllers/boxroom/admins_controller.rb +30 -0
- data/app/controllers/boxroom/application_controller.rb +5 -0
- data/app/controllers/boxroom/clipboard_controller.rb +87 -0
- data/app/controllers/boxroom/files_controller.rb +78 -0
- data/app/controllers/boxroom/folders_controller.rb +91 -0
- data/app/controllers/boxroom/groups_controller.rb +60 -0
- data/app/controllers/boxroom/permissions_controller.rb +19 -0
- data/app/controllers/boxroom/reset_password_controller.rb +45 -0
- data/app/controllers/boxroom/search_controller.rb +21 -0
- data/app/controllers/boxroom/sessions_controller.rb +48 -0
- data/app/controllers/boxroom/share_links_controller.rb +67 -0
- data/app/controllers/boxroom/signup_controller.rb +31 -0
- data/app/controllers/boxroom/users_controller.rb +75 -0
- data/app/controllers/concerns/boxroom/base_controller.rb +92 -0
- data/app/helpers/boxroom/application_helper.rb +4 -0
- data/app/helpers/boxroom/folders_helper.rb +17 -0
- data/app/jobs/boxroom/application_job.rb +4 -0
- data/app/mailers/boxroom/application_mailer.rb +6 -0
- data/app/mailers/boxroom/user_mailer.rb +18 -0
- data/app/models/boxroom/application_record.rb +5 -0
- data/app/models/boxroom/clipboard.rb +45 -0
- data/app/models/boxroom/folder.rb +113 -0
- data/app/models/boxroom/group.rb +57 -0
- data/app/models/boxroom/permission.rb +6 -0
- data/app/models/boxroom/permitted_params.rb +33 -0
- data/app/models/boxroom/share_link.rb +40 -0
- data/app/models/boxroom/user.rb +113 -0
- data/app/models/boxroom/user_file.rb +35 -0
- data/app/views/boxroom/admins/new.html.erb +42 -0
- data/app/views/boxroom/clipboard/_clipboard_empty.de.html.erb +2 -0
- data/app/views/boxroom/clipboard/_clipboard_empty.en.html.erb +2 -0
- data/app/views/boxroom/clipboard/_clipboard_empty.es.html.erb +2 -0
- data/app/views/boxroom/clipboard/_clipboard_empty.fr.html.erb +2 -0
- data/app/views/boxroom/clipboard/_clipboard_empty.it.html.erb +2 -0
- data/app/views/boxroom/clipboard/_clipboard_empty.nl.html.erb +2 -0
- data/app/views/boxroom/clipboard/_clipboard_empty.zh-CN.html.erb +2 -0
- data/app/views/boxroom/clipboard/_show.html.erb +72 -0
- data/app/views/boxroom/files/edit.html.erb +24 -0
- data/app/views/boxroom/files/new.html.erb +45 -0
- data/app/views/boxroom/folders/_form.html.erb +19 -0
- data/app/views/boxroom/folders/edit.html.erb +6 -0
- data/app/views/boxroom/folders/new.html.erb +6 -0
- data/app/views/boxroom/folders/show.html.erb +69 -0
- data/app/views/boxroom/groups/_form.html.erb +21 -0
- data/app/views/boxroom/groups/edit.html.erb +4 -0
- data/app/views/boxroom/groups/index.html.erb +42 -0
- data/app/views/boxroom/groups/new.html.erb +4 -0
- data/app/views/boxroom/permissions/_form.html.erb +46 -0
- data/app/views/boxroom/reset_password/_message.de.html.erb +2 -0
- data/app/views/boxroom/reset_password/_message.en.html.erb +2 -0
- data/app/views/boxroom/reset_password/_message.es.html.erb +2 -0
- data/app/views/boxroom/reset_password/_message.fr.html.erb +2 -0
- data/app/views/boxroom/reset_password/_message.it.html.erb +2 -0
- data/app/views/boxroom/reset_password/_message.nl.html.erb +2 -0
- data/app/views/boxroom/reset_password/_message.zh-CN.html.erb +2 -0
- data/app/views/boxroom/reset_password/edit.html.erb +30 -0
- data/app/views/boxroom/reset_password/new.html.erb +22 -0
- data/app/views/boxroom/search/show.html.erb +15 -0
- data/app/views/boxroom/sessions/new.html.erb +31 -0
- data/app/views/boxroom/share_links/index.html.erb +24 -0
- data/app/views/boxroom/share_links/new.html.erb +49 -0
- data/app/views/boxroom/shared/_footer.html.erb +9 -0
- data/app/views/boxroom/shared/_header.html.erb +45 -0
- data/app/views/boxroom/signup/edit.html.erb +42 -0
- data/app/views/boxroom/user_mailer/reset_password_email.de.text.erb +18 -0
- data/app/views/boxroom/user_mailer/reset_password_email.en.text.erb +17 -0
- data/app/views/boxroom/user_mailer/reset_password_email.es.text.erb +17 -0
- data/app/views/boxroom/user_mailer/reset_password_email.fr.text.erb +17 -0
- data/app/views/boxroom/user_mailer/reset_password_email.it.text.erb +17 -0
- data/app/views/boxroom/user_mailer/reset_password_email.nl.text.erb +17 -0
- data/app/views/boxroom/user_mailer/reset_password_email.zh-CN.text.erb +16 -0
- data/app/views/boxroom/user_mailer/share_link_email.de.text.erb +20 -0
- data/app/views/boxroom/user_mailer/share_link_email.en.text.erb +20 -0
- data/app/views/boxroom/user_mailer/share_link_email.es.text.erb +20 -0
- data/app/views/boxroom/user_mailer/share_link_email.fr.text.erb +20 -0
- data/app/views/boxroom/user_mailer/share_link_email.it.text.erb +20 -0
- data/app/views/boxroom/user_mailer/share_link_email.nl.text.erb +20 -0
- data/app/views/boxroom/user_mailer/share_link_email.zh-CN.text.erb +20 -0
- data/app/views/boxroom/user_mailer/signup_email.de.text.erb +9 -0
- data/app/views/boxroom/user_mailer/signup_email.en.text.erb +9 -0
- data/app/views/boxroom/user_mailer/signup_email.es.text.erb +9 -0
- data/app/views/boxroom/user_mailer/signup_email.fr.text.erb +9 -0
- data/app/views/boxroom/user_mailer/signup_email.it.text.erb +9 -0
- data/app/views/boxroom/user_mailer/signup_email.nl.text.erb +10 -0
- data/app/views/boxroom/user_mailer/signup_email.zh-CN.text.erb +8 -0
- data/app/views/boxroom/users/_form.html.erb +63 -0
- data/app/views/boxroom/users/edit.html.erb +4 -0
- data/app/views/boxroom/users/index.html.erb +68 -0
- data/app/views/boxroom/users/new.html.erb +4 -0
- data/app/views/layouts/boxroom/application.html.erb +37 -0
- data/config/locales/de.yml +414 -0
- data/config/locales/en.yml +407 -0
- data/config/locales/es.yml +403 -0
- data/config/locales/fr.yml +403 -0
- data/config/locales/it.yml +414 -0
- data/config/locales/nl.yml +408 -0
- data/config/locales/zh-CN.yml +406 -0
- data/config/routes.rb +44 -0
- data/db/migrate/20100930062939_boxroom_create_users.rb +20 -0
- data/db/migrate/20100930091426_boxroom_create_folders.rb +14 -0
- data/db/migrate/20100930091451_boxroom_create_groups.rb +12 -0
- data/db/migrate/20101002122244_boxroom_create_user_files.rb +17 -0
- data/db/migrate/20101005071402_boxroom_create_permissions.rb +16 -0
- data/db/migrate/20101005071508_boxroom_create_groups_users.rb +12 -0
- data/db/migrate/20110106045148_boxroom_drop_column_user_id_from_folders.rb +9 -0
- data/db/migrate/20110106045414_boxroom_drop_column_user_id_from_user_files.rb +9 -0
- data/db/migrate/20110529123402_boxroom_drop_column_access_key_from_users.rb +9 -0
- data/db/migrate/20110616215033_boxroom_create_share_links.rb +15 -0
- data/db/migrate/20120411075110_boxroom_add_column_signup_token_to_users.rb +8 -0
- data/db/migrate/20120411081345_boxroom_add_column_signup_token_expires_at_to_users.rb +7 -0
- data/db/migrate/20130626210927_boxroom_add_columns_message_user_id_to_share_links.rb +6 -0
- data/db/migrate/20130628082245_boxroom_populate_user_id_in_share_links.rb +9 -0
- data/lib/boxroom.rb +35 -0
- data/lib/boxroom/configuration.rb +18 -0
- data/lib/boxroom/engine.rb +9 -0
- data/lib/boxroom/version.rb +3 -0
- data/lib/paperclip/spoof_detector.rb +7 -0
- data/lib/tasks/boxroom_tasks.rake +4 -0
- metadata +481 -0
@@ -0,0 +1,20 @@
|
|
1
|
+
Gentile utente,
|
2
|
+
|
3
|
+
<%= @share_link.user.email %> ha condiviso un file con te:
|
4
|
+
|
5
|
+
<%= @share_link.user_file.attachment_file_name %> (<%= number_to_human_size(@share_link.user_file.attachment_file_size, :locale => I18n.locale) %>)
|
6
|
+
|
7
|
+
Clicca sul seguente URL per scaricare il file:
|
8
|
+
|
9
|
+
<%= share_link_url(:id => @share_link.link_token) %>
|
10
|
+
|
11
|
+
L'URL indicato sopra scadrà <%= l @share_link.link_expires_at, :format => :long %>.
|
12
|
+
|
13
|
+
<% unless @share_link.message.blank? -%>
|
14
|
+
=== <%= t(:shared_message) %>: ===
|
15
|
+
<%= strip_tags(@share_link.message) %>
|
16
|
+
<% end -%>
|
17
|
+
|
18
|
+
--
|
19
|
+
Boxroom
|
20
|
+
http://boxroomapp.com/
|
@@ -0,0 +1,20 @@
|
|
1
|
+
Geachte ontvanger,
|
2
|
+
|
3
|
+
<%= @share_link.user.email %> heeft een bestand met u gedeeld:
|
4
|
+
|
5
|
+
<%= @share_link.user_file.attachment_file_name %> (<%= number_to_human_size(@share_link.user_file.attachment_file_size, :locale => I18n.locale) %>)
|
6
|
+
|
7
|
+
Gebruik onderstaande URL om het bestand te downloaden:
|
8
|
+
|
9
|
+
<%= share_link_url(:id => @share_link.link_token) %>
|
10
|
+
|
11
|
+
De vervaldatum van bovenstaande URL is <%= l @share_link.link_expires_at, :format => :long %>.
|
12
|
+
|
13
|
+
<% unless @share_link.message.blank? -%>
|
14
|
+
=== <%= t(:shared_message) %>: ===
|
15
|
+
<%= strip_tags(@share_link.message) %>
|
16
|
+
<% end -%>
|
17
|
+
|
18
|
+
--
|
19
|
+
Boxroom
|
20
|
+
http://boxroomapp.com/
|
@@ -0,0 +1,20 @@
|
|
1
|
+
亲爱的收件人:
|
2
|
+
|
3
|
+
<%= @share_link.user.email %> 与您共享了一个文件:
|
4
|
+
|
5
|
+
<%= @share_link.user_file.attachment_file_name %> (<%= number_to_human_size(@share_link.user_file.attachment_file_size, :locale => I18n.locale) %>)
|
6
|
+
|
7
|
+
请用下面的链接下载文件:
|
8
|
+
|
9
|
+
<%= share_link_url(:id => @share_link.link_token) %>
|
10
|
+
|
11
|
+
此链接会在<%= l @share_link.link_expires_at, :format => :time_only %>,<%= l @share_link.link_expires_at, :format => :date_only %>失效。
|
12
|
+
|
13
|
+
<% unless @share_link.message.blank? -%>
|
14
|
+
=== <%= t(:shared_message) %>: ===
|
15
|
+
<%= strip_tags(@share_link.message) %>
|
16
|
+
<% end -%>
|
17
|
+
|
18
|
+
--
|
19
|
+
Boxroom
|
20
|
+
http://boxroomapp.com/
|
@@ -0,0 +1,63 @@
|
|
1
|
+
<%= form_for @user do |f| %>
|
2
|
+
<% if f.error_messages.size > 0 %>
|
3
|
+
<div class="notification is-danger">
|
4
|
+
<%= f.error_messages %>
|
5
|
+
</div>
|
6
|
+
<% end %>
|
7
|
+
<% unless @user.new_record? -%>
|
8
|
+
<div class="field">
|
9
|
+
<%= f.label :name, class: 'label' %>
|
10
|
+
<div class="control">
|
11
|
+
<%= f.text_field :name, class: 'input' %>
|
12
|
+
</div>
|
13
|
+
</div>
|
14
|
+
<% end -%>
|
15
|
+
<div class="field">
|
16
|
+
<%= f.label :email, class: 'label' %>
|
17
|
+
<div class="control">
|
18
|
+
<%= f.text_field :email, class: 'input' %>
|
19
|
+
</div>
|
20
|
+
</div>
|
21
|
+
<% unless @user.new_record? -%>
|
22
|
+
<div class="field">
|
23
|
+
<%= f.label :password, class: 'label' %>
|
24
|
+
<div class="control">
|
25
|
+
<%= f.password_field :password, class: 'input' %>
|
26
|
+
</div>
|
27
|
+
</div>
|
28
|
+
<div class="field">
|
29
|
+
<%= label_tag t(:confirm_password), nil, class: 'label' %>
|
30
|
+
<div class="control">
|
31
|
+
<%= f.password_field :password_confirmation, class: 'input' %>
|
32
|
+
</div>
|
33
|
+
</div>
|
34
|
+
<% end -%>
|
35
|
+
<% if signed_in? && current_user.member_of_admins? -%>
|
36
|
+
<div class="field">
|
37
|
+
<%= label_tag t(:member_of_these_groups), nil, class: 'label' %>
|
38
|
+
<div class="control">
|
39
|
+
<span class="user_groups">
|
40
|
+
<% if @user.is_admin -%>
|
41
|
+
<span class="disabled">
|
42
|
+
<%= hidden_field_tag 'user[group_ids][]', Boxroom::Group.admins_group.id %>
|
43
|
+
<input type="checkbox" checked="checked" disabled="disabled"/><label>Admins</label>
|
44
|
+
</span>
|
45
|
+
<%= f.collection_check_boxes :group_ids, Boxroom::Group.all_except_admins, :id, :name %>
|
46
|
+
<% else -%>
|
47
|
+
<%= f.collection_check_boxes :group_ids, Boxroom::Group.all, :id, :name %>
|
48
|
+
<% end -%>
|
49
|
+
</span>
|
50
|
+
</div>
|
51
|
+
</div>
|
52
|
+
<% end -%>
|
53
|
+
<div class="field is-grouped">
|
54
|
+
<div class="control">
|
55
|
+
<%= f.submit t(:save), class: 'button is-link' %>
|
56
|
+
</div>
|
57
|
+
<% if @user != current_user -%>
|
58
|
+
<div class="control">
|
59
|
+
<%= link_to t(:back), users_url, class: 'button is-text' %>
|
60
|
+
</div>
|
61
|
+
<% end -%>
|
62
|
+
</div>
|
63
|
+
<% end %>
|
@@ -0,0 +1,68 @@
|
|
1
|
+
<% content_for :title, t(:users) -%>
|
2
|
+
|
3
|
+
<h1 class="title"><%= content_for :title %></h1>
|
4
|
+
|
5
|
+
<a class="button is-primary" href="<%= new_user_path %>">
|
6
|
+
<span class="icon">
|
7
|
+
<i class="fa fa-user-plus"></i>
|
8
|
+
</span>
|
9
|
+
<span><%= t(:create_a_new_user) %></span>
|
10
|
+
</a>
|
11
|
+
|
12
|
+
<h2 class="subtitle"><%= t :active_users %></h2>
|
13
|
+
<table class="table">
|
14
|
+
<tr>
|
15
|
+
<th></th>
|
16
|
+
<th><%= t :name %></th>
|
17
|
+
<th><%= t :email %></th>
|
18
|
+
<th></th>
|
19
|
+
</tr>
|
20
|
+
<% @users.each do |user| -%>
|
21
|
+
<tr class="<%= cycle('even','odd') %>">
|
22
|
+
<td>
|
23
|
+
<span class="icon">
|
24
|
+
<i class="fa fa-user-o"></i>
|
25
|
+
</span>
|
26
|
+
</td>
|
27
|
+
<td class="user_name"><%= user.name %></td>
|
28
|
+
<td class="user_email"><%= user.email %></td>
|
29
|
+
<td>
|
30
|
+
<%= link_to '<span class="icon is-small"><i class="fa fa-edit"></i></span>'.html_safe, edit_user_path(user), :title => t(:edit) %>
|
31
|
+
<% unless user.is_admin -%>
|
32
|
+
<%= link_to '<span class="icon is-small"><i class="fa fa-remove"></i></span>'.html_safe, user_path(user), :method => :delete, :data => { :confirm => t(:are_you_sure) }, :title => t(:delete_item) %>
|
33
|
+
<% end -%>
|
34
|
+
</td>
|
35
|
+
</tr>
|
36
|
+
<% end -%>
|
37
|
+
</table>
|
38
|
+
|
39
|
+
<% unless @new_users.blank? -%>
|
40
|
+
<h2 class="subtitle"><%= t :invited_users %></h2>
|
41
|
+
<table class="table">
|
42
|
+
<tr>
|
43
|
+
<th></th>
|
44
|
+
<th><%= t :email %></th>
|
45
|
+
<th><%= t :expiration_date %></th>
|
46
|
+
<th></th>
|
47
|
+
</tr>
|
48
|
+
<% @new_users.each do |user| -%>
|
49
|
+
<tr class="<%= cycle('even','odd') %>">
|
50
|
+
<td><%= image_tag('boxroom/user.png') %></td>
|
51
|
+
<td class="user_email"><%= user.email %></td>
|
52
|
+
<td class="user_expiration">
|
53
|
+
<% if user.signup_token_expires_at > Time.now -%>
|
54
|
+
<%= l user.signup_token_expires_at, :format => :very_short %>
|
55
|
+
<% else -%>
|
56
|
+
<span class="red"><%= l user.signup_token_expires_at, :format => :very_short %></span>
|
57
|
+
<% end -%>
|
58
|
+
</td>
|
59
|
+
<td>
|
60
|
+
<%= link_to '<span class="icon is-small"><i class="fa fa-clock-o"></i></span>'.html_safe, extend_user_path(user), :method => :put, :title => t(:extend_expiration_date) %>
|
61
|
+
<% unless user.is_admin -%>
|
62
|
+
<%= link_to '<span class="icon is-small"><i class="fa fa-remove"></i></span>'.html_safe, user_path(user), :method => :delete, :data => { :confirm => t(:are_you_sure) }, :title => t(:delete_item) %>
|
63
|
+
<% end -%>
|
64
|
+
</td>
|
65
|
+
</tr>
|
66
|
+
<% end -%>
|
67
|
+
</table>
|
68
|
+
<% end -%>
|
@@ -0,0 +1,37 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<% if content_for? :title -%>
|
5
|
+
<title><%= Boxroom.configuration.site_name %> | <%= content_for :title %></title>
|
6
|
+
<% else -%>
|
7
|
+
<title><%= Boxroom.configuration.site_name %></title>
|
8
|
+
<% end -%>
|
9
|
+
<%= stylesheet_link_tag 'boxroom/application' %>
|
10
|
+
<%= javascript_include_tag 'boxroom/application' %>
|
11
|
+
<%= csrf_meta_tag %>
|
12
|
+
<meta charset="utf-8">
|
13
|
+
<meta name="viewport" content="width=device-width, initial-scale=1">
|
14
|
+
</head>
|
15
|
+
<body>
|
16
|
+
<%= render 'boxroom/shared/header' %>
|
17
|
+
|
18
|
+
<% if flash[:notice] -%>
|
19
|
+
<div class="notification is-success" id="notice">
|
20
|
+
<%= flash[:notice] %>
|
21
|
+
</div>
|
22
|
+
<% end -%>
|
23
|
+
<% if flash[:alert] -%>
|
24
|
+
<div class="notification is-danger" id="notice">
|
25
|
+
<%= flash[:alert] %>
|
26
|
+
</div>
|
27
|
+
<% end -%>
|
28
|
+
|
29
|
+
<section class="section">
|
30
|
+
<div class="container">
|
31
|
+
<%= yield %>
|
32
|
+
</div>
|
33
|
+
</section>
|
34
|
+
|
35
|
+
<%= render 'boxroom/shared/footer' if Boxroom.configuration.show_footer %>
|
36
|
+
</body>
|
37
|
+
</html>
|
@@ -0,0 +1,414 @@
|
|
1
|
+
# German translations for Boxroom
|
2
|
+
# Original Rails translation by Clemens Kofler (clemens@railway.at)
|
3
|
+
# and Alexander Dreher - http://github.com/alexdreher - Rails 3 update
|
4
|
+
#
|
5
|
+
# see: https://github.com/svenfuchs/rails-i18n/blob/master/rails/locale/de.yml
|
6
|
+
|
7
|
+
de:
|
8
|
+
date:
|
9
|
+
formats:
|
10
|
+
default: "%d.%m.%Y"
|
11
|
+
short: "%e. %b"
|
12
|
+
long: "%e. %B %Y"
|
13
|
+
only_day: "%e"
|
14
|
+
|
15
|
+
day_names: [Sonntag, Montag, Dienstag, Mittwoch, Donnerstag, Freitag, Samstag]
|
16
|
+
abbr_day_names: [So, Mo, Di, Mi, Do, Fr, Sa]
|
17
|
+
month_names: [~, Januar, Februar, März, April, Mai, Juni, Juli, August, September, Oktober, November, Dezember]
|
18
|
+
abbr_month_names: [~, Jan, Feb, Mär, Apr, Mai, Jun, Jul, Aug, Sep, Okt, Nov, Dez]
|
19
|
+
order:
|
20
|
+
- :day
|
21
|
+
- :month
|
22
|
+
- :year
|
23
|
+
|
24
|
+
time:
|
25
|
+
formats:
|
26
|
+
default: "%A, %d. %B %Y, %H:%M Uhr"
|
27
|
+
short: "%d. %B %Y, %H:%M Uhr"
|
28
|
+
very_short: "%d. %B %Y"
|
29
|
+
long: "%A, %d. %B %Y, %H:%M Uhr"
|
30
|
+
time: "%H:%M"
|
31
|
+
|
32
|
+
am: "vormittags"
|
33
|
+
pm: "nachmittags"
|
34
|
+
|
35
|
+
datetime:
|
36
|
+
distance_in_words:
|
37
|
+
half_a_minute: 'eine halbe Minute'
|
38
|
+
less_than_x_seconds:
|
39
|
+
one: 'weniger als eine Sekunde'
|
40
|
+
other: 'weniger als %{count} Sekunden'
|
41
|
+
x_seconds:
|
42
|
+
one: 'eine Sekunde'
|
43
|
+
other: '%{count} Sekunden'
|
44
|
+
less_than_x_minutes:
|
45
|
+
one: 'weniger als eine Minute'
|
46
|
+
other: 'weniger als %{count} Minuten'
|
47
|
+
x_minutes:
|
48
|
+
one: 'eine Minute'
|
49
|
+
other: '%{count} Minuten'
|
50
|
+
about_x_hours:
|
51
|
+
one: 'etwa eine Stunde'
|
52
|
+
other: 'etwa %{count} Stunden'
|
53
|
+
x_days:
|
54
|
+
one: 'ein Tag'
|
55
|
+
other: '%{count} Tage'
|
56
|
+
about_x_months:
|
57
|
+
one: 'etwa ein Monat'
|
58
|
+
other: 'etwa %{count} Monate'
|
59
|
+
x_months:
|
60
|
+
one: 'ein Monat'
|
61
|
+
other: '%{count} Monate'
|
62
|
+
almost_x_years:
|
63
|
+
one: 'fast ein Jahr'
|
64
|
+
other: 'fast %{count} Jahre'
|
65
|
+
about_x_years:
|
66
|
+
one: 'etwa ein Jahr'
|
67
|
+
other: 'etwa %{count} Jahre'
|
68
|
+
over_x_years:
|
69
|
+
one: 'mehr als ein Jahr'
|
70
|
+
other: 'mehr als %{count} Jahre'
|
71
|
+
prompts:
|
72
|
+
second: "Sekunden"
|
73
|
+
minute: "Minuten"
|
74
|
+
hour: "Stunden"
|
75
|
+
day: "Tag"
|
76
|
+
month: "Monat"
|
77
|
+
year: "Jahr"
|
78
|
+
|
79
|
+
number:
|
80
|
+
format:
|
81
|
+
precision: 2
|
82
|
+
separator: ','
|
83
|
+
delimiter: '.'
|
84
|
+
significant: false
|
85
|
+
strip_insignificant_zeros: false
|
86
|
+
currency:
|
87
|
+
format:
|
88
|
+
unit: '€'
|
89
|
+
format: '%n%u'
|
90
|
+
separator: ","
|
91
|
+
delimiter: ""
|
92
|
+
precision: 2
|
93
|
+
significant: false
|
94
|
+
strip_insignificant_zeros: false
|
95
|
+
percentage:
|
96
|
+
format:
|
97
|
+
delimiter: ""
|
98
|
+
precision:
|
99
|
+
format:
|
100
|
+
delimiter: ""
|
101
|
+
human:
|
102
|
+
format:
|
103
|
+
delimiter: ""
|
104
|
+
precision: 1
|
105
|
+
significant: true
|
106
|
+
strip_insignificant_zeros: true
|
107
|
+
storage_units:
|
108
|
+
# Storage units output formatting.
|
109
|
+
# %u is the storage unit, %n is the number (default: 2 MB)
|
110
|
+
format: "%n %u"
|
111
|
+
units:
|
112
|
+
byte:
|
113
|
+
one: "Byte"
|
114
|
+
other: "Bytes"
|
115
|
+
kb: "KB"
|
116
|
+
mb: "MB"
|
117
|
+
gb: "GB"
|
118
|
+
tb: "TB"
|
119
|
+
decimal_units:
|
120
|
+
format: "%n %u"
|
121
|
+
units:
|
122
|
+
unit: ""
|
123
|
+
thousand: Tausend
|
124
|
+
million: Millionen
|
125
|
+
billion:
|
126
|
+
one: Milliarde
|
127
|
+
others: Milliarden
|
128
|
+
trillion: Billionen
|
129
|
+
quadrillion:
|
130
|
+
one: Billiarde
|
131
|
+
others: Billiarden
|
132
|
+
|
133
|
+
support:
|
134
|
+
array:
|
135
|
+
words_connector: ", "
|
136
|
+
two_words_connector: " und "
|
137
|
+
last_word_connector: " und "
|
138
|
+
select:
|
139
|
+
prompt: "Bitte wählen:"
|
140
|
+
|
141
|
+
activemodel:
|
142
|
+
errors:
|
143
|
+
template:
|
144
|
+
header:
|
145
|
+
one: "Konnte %{model} nicht speichern: ein Fehler."
|
146
|
+
other: "Konnte %{model} nicht speichern: %{count} Fehler."
|
147
|
+
body: "Bitte überprüfen Sie die folgenden Felder:"
|
148
|
+
helpers:
|
149
|
+
select:
|
150
|
+
prompt: "Bitte wählen"
|
151
|
+
|
152
|
+
submit:
|
153
|
+
create: '%{model} erstellen'
|
154
|
+
update: '%{model} aktualisieren'
|
155
|
+
submit: '%{model} speichern'
|
156
|
+
|
157
|
+
errors:
|
158
|
+
format: "%{attribute} %{message}"
|
159
|
+
|
160
|
+
messages: &errors_messages
|
161
|
+
inclusion: "ist kein gültiger Wert"
|
162
|
+
exclusion: "ist nicht verfügbar"
|
163
|
+
invalid: "ist nicht gültig"
|
164
|
+
confirmation: "stimmt nicht"
|
165
|
+
accepted: "muss akzeptiert werden"
|
166
|
+
empty: "muss ausgefüllt werden"
|
167
|
+
blank: "muss ausgefüllt werden"
|
168
|
+
too_long: "ist zu lang (nicht mehr als %{count} Zeichen)"
|
169
|
+
too_short: "ist zu kurz (nicht weniger als %{count} Zeichen)"
|
170
|
+
wrong_length: "hat die falsche Länge (muss genau %{count} Zeichen haben)"
|
171
|
+
not_a_number: "ist keine Zahl"
|
172
|
+
greater_than: "muss größer als %{count} sein"
|
173
|
+
greater_than_or_equal_to: "muss größer oder gleich %{count} sein"
|
174
|
+
equal_to: "muss genau %{count} sein"
|
175
|
+
less_than: "muss kleiner als %{count} sein"
|
176
|
+
less_than_or_equal_to: "muss kleiner oder gleich %{count} sein"
|
177
|
+
odd: "muss ungerade sein"
|
178
|
+
even: "muss gerade sein"
|
179
|
+
not_an_integer: "muss ganzzahlig sein"
|
180
|
+
|
181
|
+
activerecord:
|
182
|
+
errors:
|
183
|
+
template:
|
184
|
+
header:
|
185
|
+
one: "Konnte %{model} nicht speichern: ein Fehler."
|
186
|
+
other: "Konnte %{model} nicht speichern: %{count} Fehler."
|
187
|
+
body: "Bitte überprüfen Sie die folgenden Felder:"
|
188
|
+
|
189
|
+
messages:
|
190
|
+
taken: "ist bereits vergeben"
|
191
|
+
record_invalid: "Gültigkeitsprüfung ist fehlgeschlagen: %{errors}"
|
192
|
+
<<: *errors_messages
|
193
|
+
|
194
|
+
full_messages:
|
195
|
+
format: "%{attribute} %{message}"
|
196
|
+
|
197
|
+
models:
|
198
|
+
clipboard: Zwischenablage
|
199
|
+
folder: Ordner
|
200
|
+
group: Gruppe
|
201
|
+
permission: Berechtigung
|
202
|
+
share_link: Share link
|
203
|
+
user: Benutzer
|
204
|
+
user_file: Datei
|
205
|
+
|
206
|
+
attributes:
|
207
|
+
folder:
|
208
|
+
name: Name
|
209
|
+
group:
|
210
|
+
name: Name
|
211
|
+
share_link:
|
212
|
+
emails: E-Mail Adressen
|
213
|
+
expires_at: Läuft ab am
|
214
|
+
user:
|
215
|
+
email: E-Mail
|
216
|
+
name: Name
|
217
|
+
password: Kennwort
|
218
|
+
user_file:
|
219
|
+
name: Name
|
220
|
+
attachment_file_name: Datei
|
221
|
+
|
222
|
+
# APPLICATION SPECIFIC
|
223
|
+
|
224
|
+
# general
|
225
|
+
back: Zurück
|
226
|
+
save: Speichern
|
227
|
+
name: Name
|
228
|
+
email: E-Mail
|
229
|
+
submit: Senden
|
230
|
+
|
231
|
+
your_changes_were_saved: Ihre Einstellungen wurden erfolgreich gespeichert.
|
232
|
+
already_deleted: "Jemand hat %{type} bereits gelöscht. Die Aktion wurde abgebrochen."
|
233
|
+
|
234
|
+
# admins/new
|
235
|
+
create_admin: Administrator-Zugang erstellen
|
236
|
+
no_administrator_yet: Es gibt noch keinen Administrator-Zugang zu Boxroom. Hier können Sie einen anlegen.
|
237
|
+
create_admin_account: Konto erstellen
|
238
|
+
admin_user_created_successfully: Das Konto wurde erfolgreich erstellt. Sie können sich nun einloggen.
|
239
|
+
|
240
|
+
# clipboard/_show
|
241
|
+
folder: Ordner
|
242
|
+
file: Datei
|
243
|
+
this_folder: dieser Ordner
|
244
|
+
this_file: diese Datei
|
245
|
+
copy: Kopieren
|
246
|
+
copy_folder: Ordner kopieren
|
247
|
+
copy_file: Datei kopieren
|
248
|
+
move: Verschieben
|
249
|
+
move_folder: Ordner verschieben
|
250
|
+
move_file: Datei verschieben
|
251
|
+
are_you_sure: Sind Sie sicher?
|
252
|
+
delete_item: Löschen
|
253
|
+
remove_from_clipboard: Aus der Zwischenablage entfernen
|
254
|
+
clear_clipboard: Zwischenablage leeren
|
255
|
+
|
256
|
+
# files/edit
|
257
|
+
rename_file: Datei umbenennen
|
258
|
+
|
259
|
+
# files/new
|
260
|
+
select_file: Datei wählen
|
261
|
+
upload_file: Dateien hochladen
|
262
|
+
upload: Hochladen
|
263
|
+
exists_already: bereits vorhanden
|
264
|
+
server_wait: 'Please wait while server is processing files. It could take several minutes for big files!'
|
265
|
+
|
266
|
+
#folders/edit
|
267
|
+
rename_folder: Ordner umbenennen
|
268
|
+
|
269
|
+
#folders/new
|
270
|
+
new_folder: Neuen Ordner anlegen
|
271
|
+
|
272
|
+
#folders/show
|
273
|
+
create_a_new_folder: Neuer Ordner
|
274
|
+
upload_a_file: Dateien hochladen
|
275
|
+
permissions: Berechtigungen
|
276
|
+
clipboard: Zwischenablage
|
277
|
+
size: Größe
|
278
|
+
date_modified: Letzte Änderung
|
279
|
+
up: nach oben
|
280
|
+
edit: Bearbeiten
|
281
|
+
add_to_clipboard: Zur Zwischenablage hinzufügen
|
282
|
+
download: Herunterladen
|
283
|
+
share: Freigeben
|
284
|
+
search: Search files and folders inside current folder... Press Enter to search
|
285
|
+
|
286
|
+
#groups/edit
|
287
|
+
rename_group: Gruppe umbenennen
|
288
|
+
|
289
|
+
#groups/index
|
290
|
+
groups: Gruppen
|
291
|
+
create_a_new_group: Neue Gruppe anlegen
|
292
|
+
|
293
|
+
#groups/new
|
294
|
+
new_group: Neue Gruppe anlegen
|
295
|
+
|
296
|
+
#permissions/form
|
297
|
+
create_permission: Erstellen
|
298
|
+
read_permission: Lesen
|
299
|
+
update_permission: Aktualisieren
|
300
|
+
delete_permission: Löschen
|
301
|
+
apply_changes_to_subfolders: Änderungen auf Unterordner anwenden
|
302
|
+
|
303
|
+
create: Erstellen
|
304
|
+
read: Lesen
|
305
|
+
update: Aktualisieren
|
306
|
+
delete: Löschen
|
307
|
+
|
308
|
+
#reset_password/edit
|
309
|
+
password: Kennwort
|
310
|
+
reset_password: Kennwort zurücksetzen
|
311
|
+
send_email: Absenden
|
312
|
+
|
313
|
+
#signup/edit
|
314
|
+
sign_up: Sign up
|
315
|
+
|
316
|
+
#sessions
|
317
|
+
username: Benutzername
|
318
|
+
remember_me: Angemeldet bleiben
|
319
|
+
sign_in: Anmelden
|
320
|
+
|
321
|
+
#share_links/index
|
322
|
+
shared_by: Freigabe von
|
323
|
+
unshare: Freigabe aufheben
|
324
|
+
|
325
|
+
#share_links/new
|
326
|
+
this_share_link: Dieser Freigabe-Link
|
327
|
+
share_file: Datei freigeben
|
328
|
+
you_are_about_to_share_the_following_file: Sie möchten die folgende Datei freigeben
|
329
|
+
emails_to_share_with: 'E-Mail Adressen, für welche die Datei freigegeben werden soll'
|
330
|
+
comma_seperated: Komma-separiert
|
331
|
+
number_of_charachters: Anzahl d. Zeichen
|
332
|
+
link_expires: Ablaufdatum
|
333
|
+
tomorrow: Morgen
|
334
|
+
three_days_from_now: In drei Tagen
|
335
|
+
one_week_from_now: In einer Woche
|
336
|
+
ten_days_from_now: In zehn Tagen
|
337
|
+
two_weeks_from_now: In zwei Wochen
|
338
|
+
three_weeks_from_now: In drei Wochen
|
339
|
+
one_month_from_now: In einem Monat
|
340
|
+
two_months_from_now: In zwei Monaten
|
341
|
+
three_months_from_now: In drei Monaten
|
342
|
+
half_year_from_now: In einem halben Jahr
|
343
|
+
download_link_could_not_be_sent: Die Download-URL konnte nicht versendet werden.
|
344
|
+
are_invalid_due_to: "Die Adresse %{email} ist ungültig."
|
345
|
+
shared_successfully: Die Datei wurde erfolgreich freigegeben.
|
346
|
+
shared_message: Nachricht
|
347
|
+
optional: Nicht erforderlich
|
348
|
+
|
349
|
+
#shared/_header
|
350
|
+
hello: Hallo
|
351
|
+
settings: Einstellungen
|
352
|
+
sign_out: Abmelden
|
353
|
+
|
354
|
+
#shared/_menu
|
355
|
+
folders: Ordner
|
356
|
+
users: Benutzer
|
357
|
+
shared_files: Freigegebene Dateien
|
358
|
+
|
359
|
+
#users/_form
|
360
|
+
member_of_these_groups: Mitglied in diesen Gruppen
|
361
|
+
confirm_password: Kennwort bestätigen
|
362
|
+
|
363
|
+
#users/index
|
364
|
+
create_a_new_user: Neuen Benutzer anlegen
|
365
|
+
active_users: Active users
|
366
|
+
invited_users: Invited users
|
367
|
+
expiration_date: Expiration date
|
368
|
+
extend_expiration_date: Extend expiration date
|
369
|
+
|
370
|
+
#users/new
|
371
|
+
new_user: Neuen Benutzer anlegen
|
372
|
+
|
373
|
+
#admins/controller
|
374
|
+
admin_user_created_sucessfully: Der Administrator-Zugang wurde erfolgreich angelegt. Sie können sich nun anmelden.
|
375
|
+
|
376
|
+
#application_controller
|
377
|
+
no_permissions_for_this_type: "Sie haben keine Berechtigung um %{type} zu %{method}."
|
378
|
+
|
379
|
+
# clipboard_controller
|
380
|
+
added_to_clipboard: Erfolgreich zur Zwischenablage hinzugefügt.
|
381
|
+
could_not_copy: "Kopieren fehlgeschlagen. Ein %{type} dieses Namens existiert bereits."
|
382
|
+
could_not_move: "Verschieben fehlgeschlagen. Ein %{type} dieses Namens existiert bereits."
|
383
|
+
cannot_move_to_own_subfolder: Sie können einen Ordner nicht in einen seiner Unterordner verschieben.
|
384
|
+
|
385
|
+
# folders_controller
|
386
|
+
cannot_delete_root_folder: Das Haupt-Verzeichnis kann nicht gelöscht oder umbenannt werden.
|
387
|
+
no_delete_permissions_for_subfolder: "Sie haben keine Berechtigung, einen der Unterordner zu löschen."
|
388
|
+
|
389
|
+
# groups_controller
|
390
|
+
group_already_deleted: Jemand hat diese Gruppe bereits gelöscht. Die Aktion wurde abgebrochen.
|
391
|
+
admins_group_cannot_be_deleted: Die Administrator-Gruppe kann nicht gelöscht werden.
|
392
|
+
|
393
|
+
# reset_password_controller
|
394
|
+
instruction_email_sent: E-Mail erfolgreich verschickt. Bitte prüfen Sie Ihren Posteingang.
|
395
|
+
password_reset_successfully: Ihr Kennwort wurde erfolgreich zurückgesetzt. Sie können sich nun anmelden.
|
396
|
+
reset_url_expired: Die URL zum Rücksetzen des Kennworts ist leider abgelaufen. Bitte probieren Sie es nochmals.
|
397
|
+
|
398
|
+
# signup_controller
|
399
|
+
signed_up_successfully: Account created successfully. You can now sign in.
|
400
|
+
sign_url_expired: The URL for signing up expired. Please contact the administrator.
|
401
|
+
|
402
|
+
# sessions_controller
|
403
|
+
credentials_incorrect: Benutzername und/oder Kennwort falsch. Bitte probieren Sie es nochmals.
|
404
|
+
|
405
|
+
# users_controller
|
406
|
+
user_already_deleted: Jemand hat diesen Benutzer bereits gelöscht. Die Aktion wurde abgebrochen.
|
407
|
+
admin_user_cannot_be_deleted: Der Administrator-Zugang kann nicht gelöscht werden.
|
408
|
+
edit_user: Benutzer bearbeiten
|
409
|
+
account_settings: Kontoeinstellungen
|
410
|
+
|
411
|
+
# mailers/user_mailer
|
412
|
+
signup_email_subject: '[Boxroom] Sign up invitation'
|
413
|
+
reset_password_email_subject: '[Boxroom] Anleitung zum Ändern Ihres Kennworts'
|
414
|
+
share_link_email_subject: '[Boxroom] %{email} möchte Ihnen eine Datei freigeben'
|