diff --git a/app/controllers/dmsf_controller.rb b/app/controllers/dmsf_controller.rb
index 52433465..1c9deea9 100644
--- a/app/controllers/dmsf_controller.rb
+++ b/app/controllers/dmsf_controller.rb
@@ -30,7 +30,7 @@ class DmsfController < ApplicationController
before_filter :find_project
before_filter :authorize
before_filter :find_folder, :except => [:new, :create, :edit_root, :save_root]
- before_filter :find_parent, :only => [:new, :create]
+ before_filter :find_parent, :only => [:new, :create]
accept_api_auth :show, :create
@@ -489,11 +489,12 @@ class DmsfController < ApplicationController
end
def zip_entries(zip, selected_folders, selected_files)
+ member = Member.where(:user_id => User.current.id, :project_id => @project.id).first
if selected_folders && selected_folders.is_a?(Array)
selected_folders.each do |selected_folder_id|
folder = DmsfFolder.visible.find_by_id selected_folder_id
if folder
- zip.add_folder(folder, (folder.folder.dmsf_path_str if folder.folder))
+ zip.add_folder(folder, member, (folder.folder.dmsf_path_str if folder.folder))
else
raise FileNotFound
end
@@ -506,7 +507,7 @@ class DmsfController < ApplicationController
raise DmsfAccessError
end
if file && file.last_revision && File.exists?(file.last_revision.disk_file)
- zip.add_file(file, (file.folder.dmsf_path_str if file.folder)) if file
+ zip.add_file(file, member, (file.folder.dmsf_path_str if file.folder)) if file
else
raise FileNotFound
end
diff --git a/app/controllers/dmsf_files_controller.rb b/app/controllers/dmsf_files_controller.rb
index 7bed7c94..395e7d54 100644
--- a/app/controllers/dmsf_files_controller.rb
+++ b/app/controllers/dmsf_files_controller.rb
@@ -26,7 +26,7 @@ class DmsfFilesController < ApplicationController
before_filter :find_file, :except => [:delete_revision]
before_filter :find_revision, :only => [:delete_revision]
- before_filter :authorize
+ before_filter :authorize
accept_api_auth :show
@@ -52,8 +52,9 @@ class DmsfFilesController < ApplicationController
access.revision = @revision
access.action = DmsfFileRevisionAccess::DownloadAction
access.save!
- send_file(@revision.disk_file,
- :filename => filename_for_content_disposition(@revision.name),
+ member = Member.where(:user_id => User.current.id, :project_id => @file.project.id).first
+ send_file(@revision.disk_file,
+ :filename => filename_for_content_disposition(@revision.formatted_name(member ? member.title_format : nil)),
:type => @revision.detect_content_type,
:disposition => 'inline')
rescue ActionController::MissingFile
@@ -82,8 +83,9 @@ class DmsfFilesController < ApplicationController
access.revision = @revision
access.action = DmsfFileRevisionAccess::DownloadAction
access.save!
- send_file(@revision.disk_file,
- :filename => filename_for_content_disposition(@revision.name),
+ member = Member.where(:user_id => User.current.id, :project_id => @file.project.id).first
+ send_file(@revision.disk_file,
+ :filename => filename_for_content_disposition(@revision.formatted_name(member ? member.title_format : nil)),
:type => @revision.detect_content_type,
:disposition => 'attachment')
rescue ActionController::MissingFile
@@ -319,7 +321,7 @@ class DmsfFilesController < ApplicationController
rescue ActiveRecord::RecordNotFound
render_404
end
-
+
def check_project(entry)
if entry && entry.project != @project
raise DmsfAccessError, l(:error_entry_project_does_not_match_current_project)
diff --git a/app/controllers/dmsf_state_controller.rb b/app/controllers/dmsf_state_controller.rb
index 19eaf5e9..17dd7239 100644
--- a/app/controllers/dmsf_state_controller.rb
+++ b/app/controllers/dmsf_state_controller.rb
@@ -1,7 +1,9 @@
+# encoding: utf-8
+#
# Redmine plugin for Document Management System "Features"
#
# Copyright (C) 2011 Vít Jonáš <%=l(:link_user_preferences)%>
+ <%= content_tag(:label, "#{l(:label_title_format)}:") %> + <%= text_field_tag 'title_format', title_format, :size => 10 %> + <%= l(:text_title_format) %> +
+ + <%= submit_tag(l(:submit_save), :title => l(:title_save_preferences)) %> +<% end %> \ No newline at end of file diff --git a/app/views/settings/_dmsf_settings.html.erb b/app/views/settings/_dmsf_settings.html.erb index a6ec48af..4c74c7e0 100644 --- a/app/views/settings/_dmsf_settings.html.erb +++ b/app/views/settings/_dmsf_settings.html.erb @@ -155,7 +155,8 @@ <%= text_field_tag 'settings[dmsf_stemming_lang]', @settings['dmsf_stemming_lang'], :disabled => xapian_disabled %>
<%= content_tag(:label, l(:label_stem_strategy) + ":")%>
diff --git a/config/locales/cs.yml b/config/locales/cs.yml
index b2af508a..aa9611de 100644
--- a/config/locales/cs.yml
+++ b/config/locales/cs.yml
@@ -50,6 +50,7 @@ cs:
notice_file_unlocked: Soubor byl odemčen
notice_file_revision_created: vytvořena nová revize
notice_your_preferences_were_saved: Vaše nastavení bylo uloženo
+ notice_your_preferences_were_not_saved: Your preferences were not saved
warning_folder_notifications_already_activated: Notifikace složky již byly aktivovány
notice_folder_notifications_activated: Notifikace složky byly aktivovány
warning_folder_notifications_already_deactivated: Notifikace složky již byly deaktivovány
@@ -107,6 +108,8 @@ cs:
select_option_default: Výchozí
select_option_deactivated: Deaktivováno
select_option_activated: Aktivováno
+ label_title_format: Formát názvu
+ text_title_format: "Formát názvu souboru pro stažení (%t - název, %d - datum, %v- verze, %i - ID, %r - revize). Např.: %t_%v"
title_save_preferences: Uložit nastavení
heading_revisions: Revize
title_download: Stáhnout
diff --git a/config/locales/de.yml b/config/locales/de.yml
index a296de18..593d04fa 100644
--- a/config/locales/de.yml
+++ b/config/locales/de.yml
@@ -40,7 +40,7 @@ de:
notice_folder_deleted: Ordner gelöscht
error_folder_is_not_empty: Ordner ist nicht leer
error_folder_title_is_already_used: Titel wird schon benutzt. Denk dir was Neues aus.
- notice_folder_details_were_saved: Ordnerdetails wurden gespeichert
+ notice_folder_details_were_saved: Ordnerdetails wurden gespeichert
error_folder_is_locked: Ordner ist gesperrt
error_file_is_locked: Datei ist gesperrt
notice_file_deleted: Datei gelöscht
@@ -50,6 +50,7 @@ de:
notice_file_unlocked: Dateisperre gelöst
notice_file_revision_created: Dateiversion erstellt
notice_your_preferences_were_saved: Deine Einstellungen wurden gespeichert
+ notice_your_preferences_were_not_saved: Your preferences were not saved
warning_folder_notifications_already_activated: Ordnerbenachrichtigungen sind schon aktiviert
notice_folder_notifications_activated: Ordnerbenachrichtigungen aktiviert
warning_folder_notifications_already_deactivated: Ordnerbenachrichtigungen sind schon deaktiviert
@@ -107,6 +108,8 @@ de:
select_option_default: Voreinstellung
select_option_deactivated: Aus
select_option_activated: Ein
+ label_title_format: Title format
+ text_title_format: "Document title format for download (%t - title, %d - date, %v- version, %i - ID, %r - revision). Example: %t_%v"
title_save_preferences: Einstellungen speichern
heading_revisions: Versionen
title_download: Download
diff --git a/config/locales/en.yml b/config/locales/en.yml
index 7ffcb80c..f7e664ed 100644
--- a/config/locales/en.yml
+++ b/config/locales/en.yml
@@ -40,7 +40,7 @@ en:
notice_folder_deleted: Folder deleted
error_folder_is_not_empty: Folder is not empty
error_folder_title_is_already_used: Title is already used
- notice_folder_details_were_saved: Folder details were saved
+ notice_folder_details_were_saved: Folder details were saved
error_folder_is_locked: Folder is locked
error_file_is_locked: File is locked
notice_file_deleted: File deleted
@@ -50,6 +50,7 @@ en:
notice_file_unlocked: File unlocked
notice_file_revision_created: File revision created
notice_your_preferences_were_saved: Your preferences were saved
+ notice_your_preferences_were_not_saved: Your preferences were not saved
warning_folder_notifications_already_activated: Folder notifications already activated
notice_folder_notifications_activated: Folder notifications activated
warning_folder_notifications_already_deactivated: Folder notifications already deactivated
@@ -107,6 +108,8 @@ en:
select_option_default: Default
select_option_deactivated: Deactivated
select_option_activated: Activated
+ label_title_format: Title format
+ text_title_format: "Document title format for download (%t - title, %d - date, %v- version, %i - ID, %r - revision). Example: %t_%v"
title_save_preferences: Save preferences
heading_revisions: Revisions
title_download: Download
diff --git a/config/locales/es.yml b/config/locales/es.yml
index 7e7d4fce..76477838 100644
--- a/config/locales/es.yml
+++ b/config/locales/es.yml
@@ -40,7 +40,7 @@ es:
notice_folder_deleted: Carpeta borrada
error_folder_is_not_empty: La carpeta no está vacía
error_folder_title_is_already_used: El título ingresado ya está siendo usado por otro documento
- notice_folder_details_were_saved: Los detalles de la carpeta fueron grabados correctamente
+ notice_folder_details_were_saved: Los detalles de la carpeta fueron grabados correctamente
error_folder_is_locked: Carpeta bloqueado
error_file_is_locked: Archivo bloqueado
notice_file_deleted: Archivo borrado
@@ -50,6 +50,7 @@ es:
notice_file_unlocked: Archivo desbloqueado
notice_file_revision_created: Revision de archivos creada correctamente
notice_your_preferences_were_saved: Sus preferencias han sido guardadas correctamente
+ notice_your_preferences_were_not_saved: Your preferences were not saved
warning_folder_notifications_already_activated: Las notificaciones de la carpeta seleccionada ya están activadas previamente
notice_folder_notifications_activated: Notificaciones de carpeta activadas
warning_folder_notifications_already_deactivated: Las notificaciones de la carpeta seleccionada ya están desactivadas previamente
@@ -107,6 +108,8 @@ es:
select_option_default: Default
select_option_deactivated: Desactivado
select_option_activated: Activado
+ label_title_format: Title format
+ text_title_format: "Document title format for download (%t - title, %d - date, %v- version, %i - ID, %r - revision). Example: %t_%v"
title_save_preferences: Guardar Preferencias
heading_revisions: Revisiones
title_download: Descargar
diff --git a/config/locales/fr.yml b/config/locales/fr.yml
index f70d2df3..579101ad 100644
--- a/config/locales/fr.yml
+++ b/config/locales/fr.yml
@@ -40,7 +40,7 @@ fr:
notice_folder_deleted: Dossier supprimé
error_folder_is_not_empty: "Le dossier n'est pas vide"
error_folder_title_is_already_used: Le titre du fichier est déjà utilisé
- notice_folder_details_were_saved: Les détails du dossier ont été enregistrés
+ notice_folder_details_were_saved: Les détails du dossier ont été enregistrés
error_folder_is_locked: Le dossier est verrouillé
error_file_is_locked: Le fichier est verrouillé
notice_file_deleted: Le fichier a été supprimé
@@ -50,6 +50,7 @@ fr:
notice_file_unlocked: Fichier déverrouillé
notice_file_revision_created: La révision du fichier a été ajoutée
notice_your_preferences_were_saved: Vos paramètres ont été enregistrés
+ notice_your_preferences_were_not_saved: Your preferences were not saved
warning_folder_notifications_already_activated: Les notifications du dossier sont déjà activées
notice_folder_notifications_activated: Les notifications du dossier ont été activées
warning_folder_notifications_already_deactivated: Les notifications du dossier sont déjà désactivées
@@ -107,6 +108,8 @@ fr:
select_option_default: Défaut
select_option_deactivated: Désactivé
select_option_activated: Activé
+ label_title_format: Title format
+ text_title_format: "Document title format for download (%t - title, %d - date, %v- version, %i - ID, %r - revision). Example: %t_%v"
title_save_preferences: Enregistrer les préférences
heading_revisions: Révisions
title_download: Télécharger
diff --git a/config/locales/ja.yml b/config/locales/ja.yml
index c356fa46..4075cc31 100644
--- a/config/locales/ja.yml
+++ b/config/locales/ja.yml
@@ -40,7 +40,7 @@ ja:
notice_folder_deleted: フォルダを削除しました
error_folder_is_not_empty: フォルダが空ではありません
error_folder_title_is_already_used: タイトルは既に使われています
- notice_folder_details_were_saved: フォルダの詳細を保存しました
+ notice_folder_details_were_saved: フォルダの詳細を保存しました
error_folder_is_locked: Folder is locked
error_file_is_locked: ファイルはロックされています
notice_file_deleted: ファイルを削除しました
@@ -50,6 +50,7 @@ ja:
notice_file_unlocked: ファイルをロック解除しました
notice_file_revision_created: ファイルのリビジョンを作成しました
notice_your_preferences_were_saved: あなたの設定を保存しました
+ notice_your_preferences_were_not_saved: Your preferences were not saved
warning_folder_notifications_already_activated: フォルダ通知は既に有効です
notice_folder_notifications_activated: フォルダ通知を有効にしました
warning_folder_notifications_already_deactivated: フォルダ通知は既に無効です
@@ -107,6 +108,8 @@ ja:
select_option_default: 既定値
select_option_deactivated: 無効
select_option_activated: 有効
+ label_title_format: Title format
+ text_title_format: "Document title format for download (%t - title, %d - date, %v- version, %i - ID, %r - revision). Example: %t_%v"
title_save_preferences: 設定を保存します
heading_revisions: リビジョン
title_download: ダウンロードします
diff --git a/config/locales/pl.yml b/config/locales/pl.yml
index 0173bc46..7479a3d7 100644
--- a/config/locales/pl.yml
+++ b/config/locales/pl.yml
@@ -40,7 +40,7 @@ pl:
error_folder_title_must_be_entered: Musisz podać tytuł
notice_folder_deleted: Folder został usunięty
error_folder_is_not_empty: Folder zawiera pliki
- error_folder_title_is_already_used: Podany tytuł jest już w użyciu
+ error_folder_title_is_already_used: Podany tytuł jest już w użyciu
notice_folder_details_were_saved: Szczegóły folderu zostały zapisane
error_folder_is_locked: Folder jest zablokowany
error_file_is_locked: Plik jest zablokowany
@@ -51,6 +51,7 @@ pl:
notice_file_unlocked: Plik odblokowany
notice_file_revision_created: Utworzono wersję pliku
notice_your_preferences_were_saved: Twoje preferencje zostały zapisane
+ notice_your_preferences_were_not_saved: Your preferences were not saved
warning_folder_notifications_already_activated: Powiadomienia dla folderu zostały już aktywowane
notice_folder_notifications_activated: Aktywowano powiadomienia dla folderu
warning_folder_notifications_already_deactivated: Powiadomienia dla folderu zostały już wyłączone
@@ -107,6 +108,8 @@ pl:
label_notifications: Powiadomienia
select_option_default: Domyślny
select_option_deactivated: Wyłączono
+ label_title_format: Title format
+ text_title_format: "Document title format for download (%t - title, %d - date, %v- version, %i - ID, %r - revision). Example: %t_%v"
select_option_activated: Aktywowano
title_save_preferences: Zapisz ustawienia
heading_revisions: Wersje
diff --git a/config/locales/pt-BR.yml b/config/locales/pt-BR.yml
index f2246365..72515edd 100644
--- a/config/locales/pt-BR.yml
+++ b/config/locales/pt-BR.yml
@@ -40,7 +40,7 @@ pt-BR:
notice_folder_deleted: Pasta deletada
error_folder_is_not_empty: Pasta não está vazia
error_folder_title_is_already_used: Título já utilizado
- notice_folder_details_were_saved: Pasta atualizada
+ notice_folder_details_were_saved: Pasta atualizada
error_folder_is_locked: Pasta está bloqueada
error_file_is_locked: Arquivo está bloqueado
notice_file_deleted: Arquivo excluído
@@ -50,6 +50,7 @@ pt-BR:
notice_file_unlocked: Arquivo desbloqueado
notice_file_revision_created: Revisão do arquivo criado
notice_your_preferences_were_saved: Suas atualizações foram salvas
+ notice_your_preferences_were_not_saved: Your preferences were not saved
warning_folder_notifications_already_activated: Notificações de pasta atualizadas
notice_folder_notifications_activated: Notificações da pasta ativas
warning_folder_notifications_already_deactivateNd: Notificações da pasta desativadas
@@ -107,6 +108,8 @@ pt-BR:
select_option_default: Padrão
select_option_deactivated: Desativado
select_option_activated: Ativado
+ label_title_format: Title format
+ text_title_format: "Document title format for download (%t - title, %d - date, %v- version, %i - ID, %r - revision). Example: %t_%v"
title_save_preferences: Salvar preferências
heading_revisions: Revisões
title_download: Download
diff --git a/config/locales/ru.yml b/config/locales/ru.yml
index 287f4817..d5554240 100644
--- a/config/locales/ru.yml
+++ b/config/locales/ru.yml
@@ -40,7 +40,7 @@ ru:
notice_folder_deleted: Папка удалена
error_folder_is_not_empty: Папка не пустая
error_folder_title_is_already_used: Название папки уже используется
- notice_folder_details_were_saved: Описание папки было сохранено
+ notice_folder_details_were_saved: Описание папки было сохранено
error_folder_is_locked: Папка заблокированa
error_file_is_locked: Файл заблокирован
notice_file_deleted: Файл удален
@@ -50,6 +50,7 @@ ru:
notice_file_unlocked: Файл разблокирован
notice_file_revision_created: Редакция файла создана
notice_your_preferences_were_saved: Ваши настройки были сохранены
+ notice_your_preferences_were_not_saved: Your preferences were not saved
warning_folder_notifications_already_activated: Уведомления папки уже включены
notice_folder_notifications_activated: Уведомления папки включены
warning_folder_notifications_already_deactivated: Уведомления папки уже отключены
@@ -107,6 +108,8 @@ ru:
select_option_default: По умолчанию
select_option_deactivated: Отключено
select_option_activated: Включено
+ label_title_format: Title format
+ text_title_format: "Document title format for download (%t - title, %d - date, %v- version, %i - ID, %r - revision). Example: %t_%v"
title_save_preferences: Сохранить настройки
heading_revisions: Редакции
title_download: Скачать
diff --git a/config/locales/sl.yml b/config/locales/sl.yml
index 367448a6..10985f44 100644
--- a/config/locales/sl.yml
+++ b/config/locales/sl.yml
@@ -40,7 +40,7 @@ sl:
notice_folder_deleted: Mapa izbrisana
error_folder_is_not_empty: Mapa ni prazna
error_folder_title_is_already_used: Naslov je že uporabljen
- notice_folder_details_were_saved: Podatki o mapi so shranjeni
+ notice_folder_details_were_saved: Podatki o mapi so shranjeni
error_folder_is_locked: Папка заблокированa
error_file_is_locked: Mapa je zaklenjena
notice_file_deleted: Datoteka izbrisana
@@ -50,6 +50,7 @@ sl:
notice_file_unlocked: Datoteka odklenjena
notice_file_revision_created: Verzija datoteke kreirana
notice_your_preferences_were_saved: Vaše nastavitve so shranjene
+ notice_your_preferences_were_not_saved: Your preferences were not saved
warning_folder_notifications_already_activated: Obveščanje o mapi je že aktivno
notice_folder_notifications_activated: Obveščanje o mapi je aktivirano
warning_folder_notifications_already_deactivated: Obveščanje o mapi je že neaktivno
@@ -107,6 +108,8 @@ sl:
select_option_default: Privzeto
select_option_deactivated: Deaktivirano
select_option_activated: Aktivirano
+ label_title_format: Title format
+ text_title_format: "Document title format for download (%t - title, %d - date, %v- version, %i - ID, %r - revision). Example: %t_%v"
title_save_preferences: Save preferences
heading_revisions: Verzije
title_download: Prenesi dol
diff --git a/config/locales/zh-TW.yml b/config/locales/zh-TW.yml
index 0048307d..06b4e525 100644
--- a/config/locales/zh-TW.yml
+++ b/config/locales/zh-TW.yml
@@ -40,7 +40,7 @@ zh-TW:
notice_folder_deleted: 資料夾己刪除
error_folder_is_not_empty: 資料夾尚未清空
error_folder_title_is_already_used: 標題己經被使用了
- notice_folder_details_were_saved: 資料夾描述己儲存
+ notice_folder_details_were_saved: 資料夾描述己儲存
error_folder_is_locked: 資料夾己經鎖定
error_file_is_locked: 檔案己經被鎖定了
notice_file_deleted: 檔案己經被刪除了
@@ -50,6 +50,7 @@ zh-TW:
notice_file_unlocked: 檔案己經解除鎖定
notice_file_revision_created: 檔案修訂版本己建立
notice_your_preferences_were_saved: 您的偏好設定己經儲存
+ notice_your_preferences_were_not_saved: Your preferences were not saved
warning_folder_notifications_already_activated: 資料夾通知己經啟用了
notice_folder_notifications_activated: 資料夾通知啟用了
warning_folder_notifications_already_deactivated: 資料夾通知己經關閉了
@@ -107,6 +108,8 @@ zh-TW:
select_option_default: 預設
select_option_deactivated: 關閉
select_option_activated: 啟用
+ label_title_format: Title format
+ text_title_format: "Document title format for download (%t - title, %d - date, %v- version, %i - ID, %r - revision). Example: %t_%v"
title_save_preferences: 儲存偏好設定
heading_revisions: 修訂版本
title_download: 下載
diff --git a/config/locales/zh.yml b/config/locales/zh.yml
index 1b19ddba..72d44211 100644
--- a/config/locales/zh.yml
+++ b/config/locales/zh.yml
@@ -50,6 +50,7 @@ zh:
notice_file_unlocked: 文件解锁
notice_file_revision_created: 文件修订版本已创建
notice_your_preferences_were_saved: 您的偏好设定已保存
+ notice_your_preferences_were_not_saved: Your preferences were not saved
warning_folder_notifications_already_activated: 文件夹通知已激活
notice_folder_notifications_activated: 文件夹通知激活
warning_folder_notifications_already_deactivated: 文件夹通知已注销
@@ -108,6 +109,8 @@ zh:
select_option_deactivated: 注销
select_option_activated: 激活
title_save_preferences: 保存偏好设定
+ label_title_format: Title format
+ text_title_format: "Document title format for download (%t - title, %d - date, %v- version, %i - ID, %r - revision). Example: %t_%v"
heading_revisions: 修订版本
title_download: 下载
title_delete_revision: 删除此修订
diff --git a/config/routes.rb b/config/routes.rb
index ab597dfe..04dd9e33 100644
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -49,7 +49,7 @@ RedmineApp::Application.routes.draw do
# dmsf_state controller
# /projects/