]> source.dussan.org Git - redmine.git/commitdiff
r18633@gaspard (orig r1875): jplang | 2008-09-17 21:18:31 +0200
authorNicolas Chuche <nicolas.chuche@barna.be>
Fri, 19 Sep 2008 20:14:13 +0000 (20:14 +0000)
committerNicolas Chuche <nicolas.chuche@barna.be>
Fri, 19 Sep 2008 20:14:13 +0000 (20:14 +0000)
 reposman: change #log arguments.
 r18634@gaspard (orig r1876):  jplang | 2008-09-17 21:38:20 +0200
 Slight change on git repository creation command.
 r18635@gaspard (orig r1877):  jplang | 2008-09-17 21:47:36 +0200
 Make --command option usable on Windows.
 r18636@gaspard (orig r1878):  jplang | 2008-09-19 17:32:52 +0200
 Adds watch/unwatch functionality at forum topic level (#1912).
 Users who create/reply a topic are automatically added as watchers but are now able to unwatch the topic.
 r18637@gaspard (orig r1879):  winterheart | 2008-09-19 18:15:49 +0200
 update of ru.yml
 r18638@gaspard (orig r1880):  winterheart | 2008-09-19 18:17:35 +0200
 #1918, translation for zh-tw
 r18639@gaspard (orig r1881):  winterheart | 2008-09-19 18:20:45 +0200
 fixed #1920, patch for Hungarian language
 r18640@gaspard (orig r1882):  winterheart | 2008-09-19 18:23:04 +0200
 patch #1922, update for nl.yml
 r18641@gaspard (orig r1883):  winterheart | 2008-09-19 18:26:19 +0200
 #1923, updated zh.yml
 r18642@gaspard (orig r1884):  winterheart | 2008-09-19 18:30:39 +0200
 #1924, update for da.yml
 r18643@gaspard (orig r1885):  winterheart | 2008-09-19 18:33:08 +0200
 #1925, patch for lt.yml

git-svn-id: http://redmine.rubyforge.org/svn/branches/nbc@1886 e93f8b46-1217-0410-a6f0-8f06a7374b81

15 files changed:
app/controllers/messages_controller.rb
app/models/message.rb
app/models/message_observer.rb
app/views/messages/show.rhtml
db/migrate/098_set_topic_authors_as_watchers.rb [new file with mode: 0644]
extra/svn/reposman.rb
lang/da.yml
lang/hu.yml
lang/lt.yml
lang/nl.yml
lang/ru.yml
lang/zh-tw.yml
lang/zh.yml
test/fixtures/watchers.yml
test/unit/message_test.rb

index 554279d21261d6708263c98c04c458424518d795..79b4b616a99cec34eedc7c1eecbafd37fd532c42 100644 (file)
@@ -24,7 +24,7 @@ class MessagesController < ApplicationController
   verify :method => :post, :only => [ :reply, :destroy ], :redirect_to => { :action => :show }
   verify :xhr => true, :only => :quote
 
-  
+  helper :watchers
   helper :attachments
   include AttachmentsHelper   
 
index 80df7a33a84304fd3e616d580d669ced6b9780d6..f1cb2d0baa312a701acb203b4e637246d1eb5f32 100644 (file)
@@ -33,11 +33,14 @@ class Message < ActiveRecord::Base
                                                                                                                                        {:id => o.parent_id, :anchor => "message-#{o.id}"})}
 
   acts_as_activity_provider :find_options => {:include => [{:board => :project}, :author]}
+  acts_as_watchable
     
   attr_protected :locked, :sticky
   validates_presence_of :subject, :content
   validates_length_of :subject, :maximum => 255
   
+  after_create :add_author_as_watcher
+  
   def validate_on_create
     # Can not reply to a locked topic
     errors.add_to_base 'Topic is locked' if root.locked? && self != root
@@ -68,4 +71,10 @@ class Message < ActiveRecord::Base
   def project
     board.project
   end
+  
+  private
+  
+  def add_author_as_watcher
+    Watcher.create(:watchable => self.root, :user => author)
+  end
 end
index 0439881725a9594849b21c132d6221fd0e4951bf..d37b5381343011d8c5b73f8bbec711b09cf41be8 100644 (file)
@@ -17,8 +17,9 @@
 
 class MessageObserver < ActiveRecord::Observer
   def after_create(message)
-    # send notification to the authors of the thread
-    recipients = ([message.root] + message.root.children).collect {|m| m.author.mail if m.author && m.author.active?}
+    recipients = []
+    # send notification to the topic watchers
+    recipients += message.root.watcher_recipients
     # send notification to the board watchers
     recipients += message.board.watcher_recipients
     # send notification to project members who want to be notified
index c24be7a213bf381ce9d474419ba84528d110d0cf..31696d56dfde0a6123da884c6f1df86bb7ec3681 100644 (file)
@@ -2,6 +2,7 @@
                link_to(h(@board.name), {:controller => 'boards', :action => 'show', :project_id => @project, :id => @board}) %>
 
 <div class="contextual">
+    <%= watcher_tag(@topic, User.current) %>
     <%= link_to_remote_if_authorized l(:button_quote), { :url => {:action => 'quote', :id => @topic} }, :class => 'icon icon-comment' %>
     <%= link_to_if_authorized l(:button_edit), {:action => 'edit', :id => @topic}, :class => 'icon icon-edit' %>
     <%= link_to_if_authorized l(:button_delete), {:action => 'destroy', :id => @topic}, :method => :post, :confirm => l(:text_are_you_sure), :class => 'icon icon-del' %>
diff --git a/db/migrate/098_set_topic_authors_as_watchers.rb b/db/migrate/098_set_topic_authors_as_watchers.rb
new file mode 100644 (file)
index 0000000..5bc41fb
--- /dev/null
@@ -0,0 +1,14 @@
+class SetTopicAuthorsAsWatchers < ActiveRecord::Migration
+  def self.up
+    # Sets active users who created/replied a topic as watchers of the topic
+    # so that the new watch functionality at topic level doesn't affect notifications behaviour
+    Message.connection.execute("INSERT INTO watchers (watchable_type, watchable_id, user_id)" +
+                                 " SELECT DISTINCT 'Message', COALESCE(messages.parent_id, messages.id), messages.author_id FROM messages, users" +
+                                 " WHERE messages.author_id = users.id AND users.status = 1")
+  end
+
+  def self.down
+    # Removes all message watchers
+    Watcher.delete_all("watchable_type = 'Message'")
+  end
+end
index 0e1c757b2d66368f58bd8392acc52799d46b45bb..b7aa2a46218a662989bed9783f0ef42defea3268 100755 (executable)
@@ -90,9 +90,10 @@ $test         = false
 $force        = false
 $scm          = 'Subversion'
 
-def log(text,level=0, exit=false)
+def log(text, options={})
+  level = options[:level] || 0
   puts text unless $quiet or level > $verbose
-  exit 1 if exit
+  exit 1 if options[:exit]
 end
 
 def system_or_raise(command)
@@ -112,7 +113,7 @@ module SCM
       Dir.mkdir path
       Dir.chdir(path) do
         system_or_raise "git --bare init --shared"
-        system_or_raise "git-update-server-info"
+        system_or_raise "git update-server-info"
       end
     end
   end
@@ -126,7 +127,7 @@ begin
     when '--redmine-host';   $redmine_host = arg.dup
     when '--owner';          $svn_owner    = arg.dup; $use_groupid = false;
     when '--url';            $svn_url      = arg.dup
-    when '--scm';            $scm          = arg.dup.capitalize; log("Invalid SCM: #{$scm}", 0, true) unless SUPPORTED_SCM.include?($scm)
+    when '--scm';            $scm          = arg.dup.capitalize; log("Invalid SCM: #{$scm}", :exit => true) unless SUPPORTED_SCM.include?($scm)
     when '--command';        $command =      arg.dup
     when '--verbose';        $verbose += 1
     when '--test';           $test = true
@@ -149,7 +150,7 @@ if $command.nil?
   begin
     scm_module = SCM.const_get($scm)
   rescue
-    log("Please use --command option to specify how to create a #{$scm} repository.", 0, true)
+    log("Please use --command option to specify how to create a #{$scm} repository.", :exit => true)
   end
 end
 
@@ -160,10 +161,10 @@ if ($redmine_host.empty? or $repos_base.empty?)
 end
 
 unless File.directory?($repos_base)
-  log("directory '#{$repos_base}' doesn't exists", 0, true)
+  log("directory '#{$repos_base}' doesn't exists", :exit => true)
 end
 
-log("querying Redmine for projects...", 1);
+log("querying Redmine for projects...", :level => 1);
 
 $redmine_host.gsub!(/^/, "http://") unless $redmine_host.match("^https?://")
 $redmine_host.gsub!(/\/$/, '')
@@ -173,16 +174,16 @@ wsdl_url = "#{$redmine_host}/sys/service.wsdl";
 begin
   soap = SOAP::WSDLDriverFactory.new(wsdl_url).create_rpc_driver
 rescue => e
-  log("Unable to connect to #{wsdl_url} : #{e}", 0, true)
+  log("Unable to connect to #{wsdl_url} : #{e}", :exit => true)
 end
 
 projects = soap.ProjectsWithRepositoryEnabled
 
 if projects.nil?
-  log('no project found, perhaps you forgot to "Enable WS for repository management"', 0, true)
+  log('no project found, perhaps you forgot to "Enable WS for repository management"', :exit => true)
 end
 
-log("retrieved #{projects.size} projects", 1)
+log("retrieved #{projects.size} projects", :level => 1)
 
 def set_owner_and_rights(project, repos_path, &block)
   if RUBY_PLATFORM =~ /mswin/
@@ -209,7 +210,7 @@ def owner_name(file)
 end
 
 projects.each do |project|
-  log("treating project #{project.name}", 1)
+  log("treating project #{project.name}", :level => 1)
 
   if project.identifier.empty?
     log("\tno identifier for project #{project.name}")
@@ -219,7 +220,7 @@ projects.each do |project|
     next;
   end
 
-  repos_path = $repos_base + "/" + project.identifier
+  repos_path = File.join($repos_base, project.identifier).gsub(File::SEPARATOR, File::ALT_SEPARATOR || File::SEPARATOR)
 
   if File.directory?(repos_path)
 
@@ -247,7 +248,7 @@ projects.each do |project|
     # if repository is already declared in redmine, we don't create
     # unless user use -f with reposman
     if $force == false and not project.repository.nil?
-      log("\trepository for project #{project.identifier} already exists in Redmine", 1)
+      log("\trepository for project #{project.identifier} already exists in Redmine", :level => 1)
       next
     end
 
index 2461d5836514e2a46beb9315586b8408e869020b..631d58916b0924e3653b23e9e9cc6821335631d7 100644 (file)
@@ -30,11 +30,11 @@ activerecord_error_too_long: er for lang
 activerecord_error_too_short: er for kort
 activerecord_error_wrong_length: har den forkerte længde
 activerecord_error_taken: er allerede valgt
-activerecord_error_not_a_number: er ikke et nummer
+activerecord_error_not_a_number: er ikke et tal
 activerecord_error_not_a_date: er en ugyldig dato
-activerecord_error_greater_than_start_date: skal være senere end start datoen
-activerecord_error_not_same_project: høre ikke til samme projekt
-activerecord_error_circular_dependency: Denne relation vil skabe et afhængigheds forhold
+activerecord_error_greater_than_start_date: skal være senere end startdatoen
+activerecord_error_not_same_project: hører ikke til samme projekt
+activerecord_error_circular_dependency: Denne relation vil skabe en cirkulær afhængighed
 
 general_fmt_age: %d år
 general_fmt_age_plural: %d år
@@ -46,7 +46,7 @@ general_text_No: 'Nej'
 general_text_Yes: 'Ja'
 general_text_no: 'nej'
 general_text_yes: 'ja'
-general_lang_name: 'Danish (Dansk)'
+general_lang_name: 'Dansk'
 general_csv_separator: ','
 general_csv_decimal_separator: '.'
 general_csv_encoding: ISO-8859-1
@@ -55,56 +55,61 @@ general_day_names: Mandag,Tirsdag,Onsdag,Torsdag,Fredag,Lørdag,Søndag
 general_first_day_of_week: '1'
 
 notice_account_updated: Kontoen er opdateret.
-notice_account_invalid_creditentials: Ugyldig bruger og kodeord
+notice_account_invalid_creditentials: Forkert brugernavn eller kodeord
 notice_account_password_updated: Kodeordet er opdateret.
 notice_account_wrong_password: Forkert kodeord
-notice_account_register_done: Kontoen er oprettet. For at aktivere kontoen, ska du klikke på linket i den tilsendte email.
-notice_account_unknown_email: Ukendt bruger.
-notice_can_t_change_password: Denne konto benytter en ekstern sikkerheds godkendelse. Det er ikke muligt at skifte kodeord.
-notice_account_lost_email_sent: En email med instruktioner til at vælge et nyt kodeord er afsendt til dig.
+notice_account_register_done: Kontoen er oprettet. For at aktivere kontoen, skal du klikke på linket i den tilsendte e-mail.
+notice_account_unknown_email: Ukendt brugernavn.
+notice_can_t_change_password: Denne konto benytter en ekstern sikkerhedsgodkendelse. Det er ikke muligt at skifte kodeord.
+notice_account_lost_email_sent: En e-mail med instruktioner til at vælge et nyt kodeord er afsendt til dig.
 notice_account_activated: Din konto er aktiveret. Du kan nu logge ind.
-notice_successful_create: Succesfuld oprettelsen.
-notice_successful_update: Succesfuld opdatering.
-notice_successful_delete: Succesfuld sletning.
+notice_successful_create: Oprettelse lykkedes.
+notice_successful_update: Opdatering lykkedes.
+notice_successful_delete: Sletning lykkedes.
 notice_successful_connection: Succesfuld forbindelse.
-notice_file_not_found: Siden du forsøger at tilgå, eksisterer ikke eller er blevet fjernet.
+notice_file_not_found: Siden, du forsøger at tilgå, eksisterer ikke eller er blevet fjernet.
 notice_locking_conflict: Data er opdateret af en anden bruger.
-notice_not_authorized: Du har ike adgang til denne side.
-notice_email_sent: En email er sendt til %s
-notice_email_error: En fejl opstod under afsendelse af email (%s)
-notice_feeds_access_key_reseted: Din RSS adgangs nøgle er nulstillet.
+notice_not_authorized: Du har ikke adgang til denne side.
+notice_email_sent: En e-mail er sendt til %s
+notice_email_error: En fejl opstod under afsendelse af e-mail (%s)
+notice_feeds_access_key_reseted: Din RSS-adgangsnøgle er nulstillet.
 notice_failed_to_save_issues: "Det mislykkedes at gemme %d sage(r) på %d valgt: %s."
-notice_no_issue_selected: "Ingen sag er valgt! vælg venligst hvilke emner du vil rette."
-notice_account_pending: "Din konto er oprettet, og afventer administratorens godkendelse."
-notice_default_data_loaded: Default konfiguration er indlæst.
+notice_no_issue_selected: "Ingen sag er valgt! Vælg venligst, hvilke emner du vil rette."
+notice_account_pending: "Din konto er oprettet og afventer administratorens godkendelse."
+notice_default_data_loaded: Standardkonfiguration er indlæst.
+notice_unable_delete_version: Kan ikke slette version
 
-error_can_t_load_default_data: "Standard konfiguration kunne ikke indlæses: %s"
-error_scm_not_found: "Adgang og/eller revision blev ikke fundet i det valgte repository."
-error_scm_command_failed: "En fejl opstod under fobindelsen til det valgte repository: %s"
+error_can_t_load_default_data: "Standardkonfiguration kunne ikke indlæses: %s"
+error_scm_not_found: "Fil og/eller revision blev ikke fundet i det valgte filarkiv."
+error_scm_command_failed: "En fejl opstod under forbindelsen til det valgte filarkiv: %s"
+error_scm_annotate: "Filen findes ikke eller kan ikke annoteres."
+error_issue_not_found_in_project: 'Sagen blev ikke fundet eller tilhører ikke dette projekt'
 
-mail_subject_lost_password: Dit %s kodeord
+mail_subject_lost_password: Dit kodeord til %s
 mail_body_lost_password: 'For at ændre dit kodeord, klik på dette link:'
-mail_subject_register: %s konto aktivering
+mail_subject_register: %s kontoaktivering
 mail_body_register: 'For at aktivere din konto, klik på dette link:'
 mail_body_account_information_external: Du kan bruge din "%s" konto til at logge ind.
-mail_body_account_information: Din konto information
-mail_subject_account_activation_request: %s konto aktivering
+mail_body_account_information: Din kontoinformation
+mail_subject_account_activation_request: %s kontoaktivering
 mail_body_account_activation_request: 'En ny bruger (%s) er registreret. Godkend venligst kontoen:'
+mail_subject_reminder: "%d sag(er) har snart deadline"
+mail_body_reminder: "%d sag(er) der er tildelt dig har deadline i løbet af de kommende %d dage:"
 
 gui_validation_error: 1 fejl
 gui_validation_error_plural: %d fejl
 
 field_name: Navn
 field_description: Beskrivelse
-field_summary: Sammenfatning
+field_summary: Oversigt
 field_is_required: Skal udfyldes
 field_firstname: Fornavn
 field_lastname: Efternavn
-field_mail: Email
+field_mail: E-mail
 field_filename: Fil
 field_filesize: Størrelse
 field_downloads: Downloads
-field_author: Forfatter
+field_author: Opretter
 field_created_on: Oprettet
 field_updated_on: Opdateret
 field_field_format: Format
@@ -112,7 +117,7 @@ field_is_for_all: For alle projekter
 field_possible_values: Mulige værdier
 field_regexp: Regulære udtryk
 field_min_length: Minimum længde
-field_max_length: Maximal længde
+field_max_length: Maksimal længde
 field_value: Værdi
 field_category: Kategori
 field_title: Titel
@@ -121,24 +126,24 @@ field_issue: Sag
 field_status: Status
 field_notes: Noter
 field_is_closed: Sagen er lukket
-field_is_default: Standard værdi
+field_is_default: Standardværdi
 field_tracker: Type
 field_subject: Emne
 field_due_date: Deadline
 field_assigned_to: Tildelt til
 field_priority: Prioritet
-field_fixed_version: Target version
+field_fixed_version: Planlagt version
 field_user: Bruger
 field_role: Rolle
 field_homepage: Hjemmeside
 field_is_public: Offentlig
 field_parent: Underprojekt af
-field_is_in_chlog: Sager vist i ændringer
-field_is_in_roadmap: Sager vist i roadmap
-field_login: Login
-field_mail_notification: Email notifikationer
+field_is_in_chlog: Sager vist i ændringslog
+field_is_in_roadmap: Sager vist i plan
+field_login: Brugernavn
+field_mail_notification: E-mail-notifikationer
 field_admin: Administrator
-field_last_login_on: Sidste forbindelse
+field_last_login_on: Sidst logget ind
 field_language: Sprog
 field_effective_date: Dato
 field_password: Kodeord
@@ -149,71 +154,81 @@ field_type: Type
 field_host: Vært
 field_port: Port
 field_account: Kode
-field_base_dn: Base DN
-field_attr_login: Login attribut
-field_attr_firstname: Fornavn attribut
-field_attr_lastname: Efternavn attribut
-field_attr_mail: Email attribut
-field_onthefly: løbende bruger oprettelse
+field_base_dn: Base-DN
+field_attr_login: Attribut for brugernavn
+field_attr_firstname: Attribut for fornavn
+field_attr_lastname: Attribut for efternavn
+field_attr_mail: Attribut for e-mail
+field_onthefly: Løbende brugeroprettelse
 field_start_date: Start
-field_done_ratio: %% Færdig
-field_auth_source: Sikkerheds metode
-field_hide_mail: Skjul min email
+field_done_ratio: %% færdig
+field_auth_source: Godkendelsesmetode
+field_hide_mail: Skjul min e-mail
 field_comments: Kommentar
 field_url: URL
-field_start_page: Start side
+field_start_page: Startside
 field_subproject: Underprojekt
 field_hours: Timer
 field_activity: Aktivitet
 field_spent_on: Dato
-field_identifier: Identificering
+field_identifier: Identifikator
 field_is_filter: Brugt som et filter
-field_issue_to_id: Beslægtede sag
+field_issue_to_id: Relateret sag
 field_delay: Udsættelse
 field_assignable: Sager kan tildeles denne rolle
 field_redirect_existing_links: Videresend eksisterende links
-field_estimated_hours: Estimeret tid
+field_estimated_hours: Tidsestimat
 field_column_names: Kolonner
-field_time_zone: Tids zone
+field_time_zone: Tidszone
 field_searchable: Søgbar
-field_default_value: Standard værdi
+field_default_value: Standardværdi
+field_comments_sorting: Vis kommentarer
+field_parent_title: Forælderside
 
-setting_app_title: Applikations titel
-setting_app_subtitle: Applikations undertekst
-setting_welcome_text: Velkomst tekst
-setting_default_language: Standard sporg
-setting_login_required: Sikkerhed påkrævet
-setting_self_registration: Bruger oprettelse
-setting_attachment_max_size: Vedhæftede filers max størrelse
-setting_issues_export_limit: Sags eksporterings begrænsning
-setting_mail_from: Afsender email
-setting_bcc_recipients: Blind carbon copy modtager (bcc)
-setting_host_name: Værts navn
-setting_text_formatting: Tekst formattering
-setting_wiki_compression: Wiki historik komprimering
-setting_feeds_limit: Feed indholds begrænsning
-setting_autofetch_changesets: Automatisk hent commits
-setting_sys_api_enabled: Aktiver web service for automatisk repository administration
-setting_commit_ref_keywords: Reference nøgleord
-setting_commit_fix_keywords: Afslutnings nøgleord
+setting_app_title: Applikationens titel
+setting_app_subtitle: Applikationes undertitel
+setting_welcome_text: Velkomsttekst
+setting_default_language: Standardsprog
+setting_login_required: Indlogning påkrævet
+setting_self_registration: Brugeroprettelse
+setting_attachment_max_size: Maks. størrelse for vedhæftede filer
+setting_issues_export_limit: Maks. antal sager i eksport
+setting_mail_from: Afsender-e-mail
+setting_bcc_recipients: Blindkopimodtager (bcc)
+setting_host_name: Værtsnavn
+setting_text_formatting: Tekstformatering
+setting_wiki_compression: Komprimer wiki-historik
+setting_feeds_limit: Antal objekter i feeds
+setting_default_projects_public: Nye projekter er som standard offentlige
+setting_autofetch_changesets: Hent automatisk commits
+setting_sys_api_enabled: Aktiver webservice til versionsstyring
+setting_commit_ref_keywords: Nøgleord for sagsreferencer
+setting_commit_fix_keywords: Nøgleord for lukning af sager
 setting_autologin: Autologin
-setting_date_format: Dato format
-setting_time_format: Tids format
-setting_cross_project_issue_relations: Tillad sags relationer på tværs af projekter
-setting_issue_list_default_columns: Standard kolonner på sags listen
-setting_repositories_encodings: Repository tegnsæt
-setting_emails_footer: Email fodnote
+setting_date_format: Datoformat
+setting_time_format: Tidsformat
+setting_cross_project_issue_relations: Tillad sagsrelationer på tværs af projekter
+setting_issue_list_default_columns: Standardkolonner på sagslisten
+setting_repositories_encodings: Filarkivtegnsæt
+setting_commit_logs_encoding: Tegnsæt for commitbeskeder
+setting_emails_footer: Sidefod i e-mail
 setting_protocol: Protokol
-setting_per_page_options: Objekter pr. side indstillinger
-setting_user_format: Bruger visnings format
+setting_per_page_options: Valgmuligheder for antal objekter pr. side
+setting_user_format: Brugervisningsformat
+setting_activity_days_default: Antal dage der vises under projektaktivitet
+setting_display_subprojects_issues: Vis som standard sager for underprojekter på hovedprojektet
+setting_enabled_scm: Aktiveret versionsstyring
+setting_mail_handler_api_enabled: Aktiver redigering af sager via mail
+setting_mail_handler_api_key: API-nøgle
+setting_sequential_project_identifiers: Generer fortløbende identifikatorer
 
-project_module_issue_tracking: Sags søgning
-project_module_time_tracking: Tids styring
+project_module_issue_tracking: Sagssøgning
+project_module_time_tracking: Tidsregistrering
 project_module_news: Nyheder
 project_module_documents: Dokumenter
 project_module_files: Filer
 project_module_wiki: Wiki
-project_module_repository: Repository
+project_module_repository: Versionsstyring
 project_module_boards: Opslagstavle
 
 label_user: Bruger
@@ -225,16 +240,16 @@ label_project_plural: Projekter
 label_project_all: Alle projekter
 label_project_latest: Seneste projekter
 label_issue: Sag
-label_issue_new: Opret sag
+label_issue_new: Ny sag
 label_issue_plural: Sager
 label_issue_view_all: Vis alle sager
 label_issues_by: Sager fra %s
-label_issue_added: Sagen er oprettet
-label_issue_updated: Sagen er opdateret
+label_issue_added: Sag oprettet
+label_issue_updated: Sag opdateret
 label_document: Dokument
 label_document_new: Nyt dokument
 label_document_plural: Dokumenter
-label_document_added: Dokument tilføjet
+label_document_added: Dokument oprettet
 label_role: Rolle
 label_role_plural: Roller
 label_role_new: Ny rolle
@@ -246,20 +261,20 @@ label_tracker: Type
 label_tracker_plural: Typer
 label_tracker_new: Ny type
 label_workflow: Arbejdsgang
-label_issue_status: Sags status
-label_issue_status_plural: Sags statuser
-label_issue_status_new: Ny status
-label_issue_category: Sags kategori
-label_issue_category_plural: Sags kategorier
+label_issue_status: Statuskode
+label_issue_status_plural: Statuskoder
+label_issue_status_new: Ny statuskode
+label_issue_category: Sagskategori
+label_issue_category_plural: Sagskategorier
 label_issue_category_new: Ny kategori
 label_custom_field: Brugerdefineret felt
-label_custom_field_plural: Brugerdefineret felt
+label_custom_field_plural: Brugerdefinerede felter
 label_custom_field_new: Nyt brugerdefineret felt
 label_enumerations: Værdier
 label_enumeration_new: Ny værdi
 label_information: Information
 label_information_plural: Information
-label_please_login: Login
+label_please_login: Log venligst ind
 label_register: Registrer
 label_password_lost: Glemt kodeord
 label_home: Forside
@@ -271,21 +286,23 @@ label_login: Log ind
 label_logout: Log ud
 label_help: Hjælp
 label_reported_issues: Rapporterede sager
-label_assigned_to_me_issues: Sager tildelt til mig
-label_last_login: Sidste forbindelse
+label_assigned_to_me_issues: Sager tildelt mig
+label_last_login: Sidste indlogning
 label_last_updates: Sidst opdateret
 label_last_updates_plural: %d sidst opdateret
-label_registered_on: Registeret den
+label_registered_on: Oprettet den
 label_activity: Aktivitet
+label_overall_activity: Al aktivitet
 label_new: Ny
-label_logged_as: Registreret som
+label_logged_as: Logget ind som
 label_environment: Miljø
-label_authentication: Sikkerhed
-label_auth_source: Sikkerheds metode
-label_auth_source_new: Ny sikkerheds metode
-label_auth_source_plural: Sikkerheds metoder
+label_authentication: Godkendelse
+label_auth_source: Godkendelsesmetode
+label_auth_source_new: Ny godkendelsemetode
+label_auth_source_plural: Godkendelsesmetoder
 label_subproject_plural: Underprojekter
-label_min_max_length: Min - Max længde
+label_and_its_subprojects: Projektet %s og dets underprojekter
+label_min_max_length: Min.-maks.-længde
 label_list: Liste
 label_date: Dato
 label_integer: Heltal
@@ -295,31 +312,31 @@ label_string: Tekst
 label_text: Lang tekst
 label_attribute: Attribut
 label_attribute_plural: Attributter
-label_download: %d Download
-label_download_plural: %d Downloads
+label_download: %d download
+label_download_plural: %d downloads
 label_no_data: Ingen data at vise
-label_change_status: Ændrings status
+label_change_status: Ændringsstatus
 label_history: Historik
 label_attachment: Fil
 label_attachment_new: Ny fil
 label_attachment_delete: Slet fil
 label_attachment_plural: Filer
-label_file_added: Fil tilføjet
+label_file_added: Fil oprettet
 label_report: Rapport
 label_report_plural: Rapporter
 label_news: Nyheder
-label_news_new: Tilføj nyheder
+label_news_new: Ny nyhed
 label_news_plural: Nyheder
 label_news_latest: Seneste nyheder
 label_news_view_all: Vis alle nyheder
-label_news_added: Nyhed tilføjet
+label_news_added: Nyhed oprettet
 label_change_log: Ændringer
 label_settings: Indstillinger
 label_overview: Oversigt
 label_version: Version
 label_version_new: Ny version
 label_version_plural: Versioner
-label_confirmation: Bekræftigelser
+label_confirmation: Bekræftelser
 label_export_to: Eksporter til
 label_read: Læs...
 label_public_projects: Offentlige projekter
@@ -330,15 +347,15 @@ label_closed_issues_plural: lukkede
 label_total: Total
 label_permissions: Rettigheder
 label_current_status: Nuværende status
-label_new_statuses_allowed: Ny status tilladt
+label_new_statuses_allowed: Tilladte nye statuskoder
 label_all: alle
 label_none: intet
 label_nobody: ingen
 label_next: Næste
-label_previous: Forrig
+label_previous: Forrige
 label_used_by: Brugt af
 label_details: Detaljer
-label_add_note: Tilføj en note
+label_add_note: Ny note
 label_per_page: Pr. side
 label_calendar: Kalender
 label_months_from: måneder frem
@@ -350,11 +367,11 @@ label_personalize_page: Tilret denne side
 label_comment: Kommentar
 label_comment_plural: Kommentarer
 label_comment_add: Tilføj en kommentar
-label_comment_added: Kommentaren er tilføjet
+label_comment_added: Kommentar tilføjet
 label_comment_delete: Slet kommentar
-label_query: Brugerdefineret forespørgsel
-label_query_plural: Brugerdefinerede forespørgsler
-label_query_new: Ny forespørgsel
+label_query: Brugerdefineret søgning
+label_query_plural: Brugerdefinerede søgning
+label_query_new: Ny søgning
 label_filter_add: Tilføj filter
 label_filter_plural: Filtre
 label_equals: er
@@ -362,32 +379,34 @@ label_not_equals: er ikke
 label_in_less_than: er mindre end
 label_in_more_than: er større end
 label_in: indeholdt i
-label_today: idag
+label_today: i dag
 label_all_time: altid
-label_yesterday: igår
+label_yesterday: i går
 label_this_week: denne uge
 label_last_week: sidste uge
 label_last_n_days: sidste %d dage
 label_this_month: denne måned
 label_last_month: sidste måned
 label_this_year: dette år
-label_date_range: Dato interval
+label_date_range: Datointerval
 label_less_than_ago: mindre end dage siden
 label_more_than_ago: mere end dage siden
 label_ago: days siden
 label_contains: indeholder
-label_not_contains: ikke indeholder
+label_not_contains: indeholder ikke
 label_day_plural: dage
-label_repository: Repository
-label_repository_plural: Repositories
+label_repository: Versionsstyring
+label_repository_plural: Versionsstyring
 label_browse: Gennemse
 label_modification: %d ændring
 label_modification_plural: %d ændringer
 label_revision: Revision
 label_revision_plural: Revisioner
 label_associated_revisions: Tilnyttede revisioner
-label_added: tilføjet
+label_added: oprettet
 label_modified: ændret
+label_copied: kopieret
+label_renamed: omdøbt
 label_deleted: slettet
 label_latest_revision: Seneste revision
 label_latest_revision_plural: Seneste revisioner
@@ -398,47 +417,48 @@ label_sort_highest: Flyt til toppen
 label_sort_higher: Flyt op
 label_sort_lower: Flyt ned
 label_sort_lowest: Flyt til bunden
-label_roadmap: Roadmap
+label_roadmap: Plan
 label_roadmap_due_in: Deadline 
 label_roadmap_overdue: %s forsinket
-label_roadmap_no_issues: Ingen sager til denne version
+label_roadmap_no_issues: Ingen sager i denne version
 label_search: Søg
 label_result_plural: Resultater
 label_all_words: Alle ord
 label_wiki: Wiki
-label_wiki_edit: Wiki ændring
-label_wiki_edit_plural: Wiki ændringer
-label_wiki_page: Wiki side
-label_wiki_page_plural: Wiki sider
+label_wiki_edit: Wikiændring
+label_wiki_edit_plural: Wikiændringer
+label_wiki_page: Wikiside
+label_wiki_page_plural: Wikisider
 label_index_by_title: Indhold efter titel
 label_index_by_date: Indhold efter dato
 label_current_version: Nuværende version
 label_preview: Forhåndsvisning
 label_feed_plural: Feeds
-label_changes_details: Detaljer for alle ænringer
-label_issue_tracking: Sags søgning
-label_spent_time: Brugt tid
+label_changes_details: Detaljer for alle ændringer
+label_issue_tracking: Sagsstyring
+label_spent_time: Tidsforbrug
 label_f_hour: %.2f time
 label_f_hour_plural: %.2f timer
-label_time_tracking: Tids styring
+label_time_tracking: Tidsregistrering
 label_change_plural: Ændringer
 label_statistics: Statistik
 label_commits_per_month: Commits pr. måned
 label_commits_per_author: Commits pr. bruger
-label_view_diff: Vis forskellighed
+label_view_diff: Vis ændringer
 label_diff_inline: inline
-label_diff_side_by_side: side ved side
+label_diff_side_by_side: side om side
 label_options: Optioner
 label_copy_workflow_from: Kopier arbejdsgang fra
-label_permissions_report: Godkendelses rapport
+label_permissions_report: Rettighedsoversigt
 label_watched_issues: Overvågede sager
 label_related_issues: Relaterede sager
-label_applied_status: Anvendte statuser
+label_applied_status: Tildelt status
 label_loading: Indlæser...
 label_relation_new: Ny relation
 label_relation_delete: Slet relation
-label_relates_to: relaterer til
-label_duplicates: kopierer
+label_relates_to: er relateret til
+label_duplicates: dublerer
+label_duplicated_by: dubleret af
 label_blocks: blokerer
 label_blocked_by: blokeret af
 label_precedes: kommer før
@@ -447,7 +467,7 @@ label_end_to_start: slut til start
 label_end_to_end: slut til slut
 label_start_to_start: start til start
 label_start_to_end: start til slut
-label_stay_logged_in: Forblin indlogget
+label_stay_logged_in: Forbliv indlogget
 label_disabled: deaktiveret
 label_show_completed_versions: Vis færdige versioner
 label_me: mig
@@ -456,11 +476,11 @@ label_board_new: Nyt forum
 label_board_plural: Fora
 label_topic_plural: Emner
 label_message_plural: Beskeder
-label_message_last: Sidste besked
+label_message_last: Seneste besked
 label_message_new: Ny besked
-label_message_posted: Besked tilføjet
+label_message_posted: Besked oprettet
 label_reply_plural: Besvarer
-label_send_information: Send konto information til bruger
+label_send_information: Send kontoinformation til bruger
 label_year: År
 label_month: Måned
 label_week: Uge
@@ -468,48 +488,57 @@ label_date_from: Fra
 label_date_to: Til
 label_language_based: Baseret på brugerens sprog
 label_sort_by: Sorter efter %s
-label_send_test_email: Send en test email
-label_feeds_access_key_created_on: RSS adgangsnøgle genereret %s siden
+label_send_test_email: Send en testmail
+label_feeds_access_key_created_on: RSS-adgangsnøgle genereret for %s siden
 label_module_plural: Moduler
-label_added_time_by: Tilføjet af %s for %s siden
+label_added_time_by: Oprettet af %s for %s siden
 label_updated_time: Opdateret for %s siden
 label_jump_to_a_project: Skift til projekt...
 label_file_plural: Filer
 label_changeset_plural: Ændringer
-label_default_columns: Standard kolonner
+label_default_columns: Standardkolonner
 label_no_change_option: (Ingen ændringer)
-label_bulk_edit_selected_issues: Masse ret de valgte sager
+label_bulk_edit_selected_issues: Masseret de valgte sager
 label_theme: Tema
 label_default: standard
 label_search_titles_only: Søg kun i titler
 label_user_mail_option_all: "For alle hændelser på mine projekter"
-label_user_mail_option_selected: "For alle hændelser, kun på de valgte projekter..."
-label_user_mail_option_none: "Kun for ting jeg overvåger, eller jeg er involveret i"
-label_user_mail_no_self_notified: "Jeg ønsker ikke besked, om ændring foretaget af mig selv"
-label_registration_activation_by_email: konto aktivering på email
-label_registration_manual_activation: manuel konto aktivering
-label_registration_automatic_activation: automatisk konto aktivering
-label_display_per_page: 'Per side: %s'
+label_user_mail_option_selected: "For alle hændelser på udvalgte projekter..."
+label_user_mail_option_none: "Kun for ting jeg overvåger eller er involveret i"
+label_user_mail_no_self_notified: "Jeg ønsker ikke at blive notificeret om ændringer foretaget af mig selv"
+label_registration_activation_by_email: kontoaktivering på e-mail
+label_registration_manual_activation: manuel kontoaktivering
+label_registration_automatic_activation: automatisk kontoaktivering
+label_display_per_page: 'Pr. side: %s'
 label_age: Alder
 label_change_properties: Ændre indstillinger
-label_general: Generalt
+label_general: Generelt
 label_more: Mere
-label_scm: SCM
+label_scm: Versionsstyring
 label_plugins: Plugins
-label_ldap_authentication: LDAP godkendelse
+label_ldap_authentication: LDAP-godkendelse
 label_downloads_abbr: D/L
+label_add_another_file: Opret endnu en fil
+label_optional_description: Valgfri beskrivelse
+label_preferences: Indstillinger
+label_chronological_order: I kronologisk rækkefølge
+label_reverse_chronological_order: I omvendt kronologisk rækkefølge
+label_planning: Planlægning
+label_incoming_emails: Indkommende e-mails
+label_generate_key: Generer en nøgle
+label_issue_watchers: Overvågere
 
-button_login: Login
+button_login: Log ind
 button_submit: Send
 button_save: Gem
-button_check_all: Vælg alt
-button_uncheck_all: Fravælg alt
+button_check_all: Vælg alle
+button_uncheck_all: Fravælg alle
 button_delete: Slet
 button_create: Opret
 button_test: Test
 button_edit: Ret
-button_add: Tilføj
-button_change: Ændre
+button_add: Opret
+button_change: Skift
 button_apply: Anvend
 button_clear: Nulstil
 button_lock: Lås
@@ -522,8 +551,8 @@ button_back: Tilbage
 button_cancel: Annuller
 button_activate: Aktiver
 button_sort: Sorter
-button_log_time: Log tid
-button_rollback: Tilbagefør til denne version
+button_log_time: Registrer tid
+button_rollback: Rul tilbage til denne version
 button_watch: Overvåg
 button_unwatch: Stop overvågning
 button_reply: Besvar
@@ -536,46 +565,56 @@ button_copy: Kopier
 button_annotate: Annotere
 button_update: Opdater
 button_configure: Konfigurer
+button_quote: Citer
 
 status_active: aktiv
 status_registered: registreret
 status_locked: låst
 
-text_select_mail_notifications: Vælg handlinger for hvilke, der skal sendes en email besked.
+text_select_mail_notifications: Vælg handlinger for hvilke, der skal sendes en e-mail-notifikation.
 text_regexp_info: f.eks. ^[A-ZÆØÅ0-9]+$
 text_min_max_length_info: 0 betyder ingen begrænsninger
-text_project_destroy_confirmation: Er du sikker på di vil slette dette projekt og alle relaterede data ?
-text_workflow_edit: Vælg en rolle samt en type, for at redigere arbejdsgangen
-text_are_you_sure: Er du sikker ?
+text_project_destroy_confirmation: Er du sikker på, at du vil slette dette projekt og alle relaterede data ?
+text_subprojects_destroy_warning: 'Dets underprojekt(er): %s vil også blive slettet.'
+text_workflow_edit: Vælg en rolle samt en type for at redigere arbejdsgangen
+text_are_you_sure: Er du sikker?
 text_journal_changed: ændret fra %s til %s
 text_journal_set_to: sat til %s
 text_journal_deleted: slettet
 text_tip_task_begin_day: opgaven begynder denne dag
-text_tip_task_end_day: opaven slutter denne dag
+text_tip_task_end_day: opgaven slutter denne dag
 text_tip_task_begin_end_day: opgaven begynder og slutter denne dag
-text_project_identifier_info: 'Små bogstaver (a-z), numre og bindestreg er tilladt.<br />Når den er gemt, kan indifikatoren ikke rettes.'
-text_caracters_maximum: max %d karakterer.
-text_caracters_minimum: Skal være mindst %d karakterer lang.
-text_length_between: Længde skal være mellem %d og %d karakterer.
+text_project_identifier_info: 'Små bogstaver (a-z), numre og bindestreg er tilladt.<br />Når den er gemt, kan identifikatoren ikke rettes.'
+text_caracters_maximum: maks. %d tegn.
+text_caracters_minimum: Skal være mindst %d tegn lang.
+text_length_between: Længde skal være mellem %d og %d tegn.
 text_tracker_no_workflow: Ingen arbejdsgang defineret for denne type
-text_unallowed_characters: Ikke tilladte karakterer
-text_comma_separated: Adskillige værdier tilladt (komma separeret).
-text_issues_ref_in_commit_messages: Referer og løser sager i commit beskeder
+text_unallowed_characters: Ugyldige tegn
+text_comma_separated: Flere værdier tilladt (adskilt af komma).
+text_issues_ref_in_commit_messages: Referer og luk sager i commitbeskeder
 text_issue_added: Sag %s er rapporteret af %s.
 text_issue_updated: Sag %s er blevet opdateret af %s.
-text_wiki_destroy_confirmation: Er du sikker på at du vil slette debbe wiki, og alt indholdet ?
-text_issue_category_destroy_question: Nogle sgaer (%d) er tildelt denne kategori. Hvad ønsker du at gøre ?
-text_issue_category_destroy_assignments: Slet kategori tildelinger
+text_wiki_destroy_confirmation: Er du sikker på, at du vil slette denne wiki og alt dens indhold?
+text_issue_category_destroy_question: Nogle sager (%d) er tildelt denne kategori. Hvad ønsker du at gøre?
+text_issue_category_destroy_assignments: Slet kategoritildelinger
 text_issue_category_reassign_to: Tildel sager til denne kategori
-text_user_mail_option: "For ikke valgte projekter, vil du kun modtage beskeder omhandlende ting, du er involveret i, eller overvåger (f.eks. sager du ahr indberettet eller ejer)."
-text_no_configuration_data: "Roller, typer, sags statuser og arbejdsgange er endnu ikek konfigureret.\nDet er anbefalet at indlæse standard konfigurationen. Du vil kunne ændre denne når den er indlæst."
-text_load_default_configuration: Indlæs standard konfiguration
+text_user_mail_option: "For ikke-valgte projekter vil du kun modtage notifikationer omhandlende ting, du er involveret i eller overvåger (f.eks. sager du har oprettet eller er tildelt)."
+text_no_configuration_data: "Roller, typer, statuskoder og arbejdsgange er endnu ikke konfigureret.\nDet er anbefalet at indlæse standardkonfigurationen. Du vil kunne ændre denne, når den er indlæst."
+text_load_default_configuration: Indlæs standardkonfiguration
 text_status_changed_by_changeset: Anvendt i ændring %s.
-text_issues_destroy_confirmation: 'Er du sikker på du ønsker at slette den/de valgte sag(er) ?'
-text_select_project_modules: 'Vælg moduler er skal være aktiveret for dette projekt:'
-text_default_administrator_account_changed: Standard administrator konto ændret
-text_file_repository_writable: Filarkiv er skrivbar
+text_issues_destroy_confirmation: 'Er du sikker på, du ønsker at slette den/de valgte sag(er) ?'
+text_select_project_modules: 'Vælg moduler, der skal være aktiveret for dette projekt:'
+text_default_administrator_account_changed: Standardadministratorkonto ændret
+text_file_repository_writable: Filarkiv er skrivbart
 text_rmagick_available: RMagick tilgængelig (valgfri)
+text_destroy_time_entries_question: %.02f timer er registreret på denne sag, som du er ved at slette. Hvad vil du gøre?
+text_destroy_time_entries: Slet registrerede timer
+text_assign_time_entries_to_project: Overfør registrerede timer til projektet
+text_reassign_time_entries: 'Tilbagefør registrerede timer til denne sag igen:'
+text_user_wrote: '%s skrev:'
+text_enumeration_destroy_question: '%d objekter er tildelt denne værdi.'
+text_enumeration_category_reassign_to: 'Tildel dem denne værdi:'
+text_email_delivery_not_configured: "E-mail-afsendelse er ikke konfigureret, så notifikationer er deaktiverede.\nKonfigurer din SMTP-server i config/email.yml og genstart applikationen for at aktivere disse."
 
 default_role_manager: Leder
 default_role_developper: Udvikler
@@ -589,56 +628,16 @@ default_issue_status_resolved: Løst
 default_issue_status_feedback: Feedback
 default_issue_status_closed: Lukket
 default_issue_status_rejected: Afvist
-default_doc_category_user: Bruger dokumentation
+default_doc_category_user: Brugerdokumentation
 default_doc_category_tech: Teknisk dokumentation
 default_priority_low: Lav
 default_priority_normal: Normal
 default_priority_high: Høj
-default_priority_urgent: Akut
-default_priority_immediate: Omgående
+default_priority_urgent: Haster
+default_priority_immediate: Akut
 default_activity_design: Design
 default_activity_development: Udvikling
 
-enumeration_issue_priorities: Sags prioriteter
-enumeration_doc_categories: Dokument kategorier
-enumeration_activities: Aktiviteter (tids styring)
-
-label_add_another_file: Tilføj endnu en fil
-label_chronological_order: I kronologisk rækkefølge
-setting_activity_days_default: Antal dage der vises under projekt aktivitet
-text_destroy_time_entries_question: %.02f timer er reporteret på denne sag, som du er ved at slette. Hvad vil du gøre ?
-error_issue_not_found_in_project: 'Sagen blev ikke fundet eller tilhører ikke dette projekt'
-text_assign_time_entries_to_project: Tildel raporterede timer til projektet
-setting_display_subprojects_issues: Vis sager for underprojekter på hovedprojektet som default
-label_optional_description: Optionel beskrivelse
-text_destroy_time_entries: Slet raportede timer
-field_comments_sorting: Vis kommentar
-text_reassign_time_entries: 'Tildel raportede timer til denne sag igen'
-label_reverse_chronological_order: I omvendt kronologisk rækkefølge
-label_preferences: Preferences
-label_overall_activity: Overordnet aktivitet
-setting_default_projects_public: Nye projekter er offentlige som default
-error_scm_annotate: "The entry does not exist or can not be annotated."
-label_planning: Planlægning
-text_subprojects_destroy_warning: 'Its subproject(s): %s will be also deleted.'
-label_and_its_subprojects: %s and its subprojects
-mail_body_reminder: "%d issue(s) that are assigned to you are due in the next %d days:"
-mail_subject_reminder: "%d issue(s) due in the next days"
-text_user_wrote: '%s wrote:'
-label_duplicated_by: duplicated by
-setting_enabled_scm: Enabled SCM
-text_enumeration_category_reassign_to: 'Reassign them to this value:'
-text_enumeration_destroy_question: '%d objects are assigned to this value.'
-label_incoming_emails: Incoming emails
-label_generate_key: Generate a key
-setting_mail_handler_api_enabled: Enable WS for incoming emails
-setting_mail_handler_api_key: API key
-text_email_delivery_not_configured: "Email delivery is not configured, and notifications are disabled.\nConfigure your SMTP server in config/email.yml and restart the application to enable them."
-field_parent_title: Parent page
-label_issue_watchers: Watchers
-setting_commit_logs_encoding: Commit messages encoding
-button_quote: Quote
-setting_sequential_project_identifiers: Generate sequential project identifiers
-notice_unable_delete_version: Unable to delete version
-label_renamed: renamed
-label_copied: copied
+enumeration_issue_priorities: Sagsprioriteter
+enumeration_doc_categories: Dokumentkategorier
+enumeration_activities: Aktiviteter (tidsregistrering)
index 2b1f3c32ecf6b422544b1b20336fa5ca6116b13e..ad150b5f9d96d215855405eab601af5c52a1865a 100644 (file)
@@ -639,5 +639,5 @@ setting_commit_logs_encoding: Commit üzenetek kódlapja
 button_quote: Idézet
 setting_sequential_project_identifiers: Szekvenciális projekt azonosítók generálása
 notice_unable_delete_version: A verziót nem lehet törölni
-label_renamed: renamed
-label_copied: copied
+label_renamed: átnevezve
+label_copied: lemásolva
index d9d193352b7e7397ca926d2d1dbf7cb68498bea8..5110a6b6adde1b2370132a060752a3d584248806 100644 (file)
@@ -638,7 +638,7 @@ field_parent_title: Aukštesnio lygio puslapis
 label_issue_watchers: Stebetojai
 setting_commit_logs_encoding: Commit pranėšimų koduotė
 setting_sequential_project_identifiers: Generate sequential project identifiers
-button_quote: Quote
-notice_unable_delete_version: Unable to delete version
-label_renamed: renamed
-label_copied: copied
+button_quote: Cituoti
+notice_unable_delete_version: Neimanoma panaikinti versiją
+label_renamed: pervardintas
+label_copied: nukopijuotas
index 746f242eee95fe4f28fbef418d7f9a558eee0c05..10d02cca7b2a3d8c16f9399a8056823a0a882b53 100644 (file)
@@ -70,12 +70,12 @@ notice_successful_connection: Verbinding succesvol.
 notice_file_not_found: De pagina die U probeerde te benaderen bestaat niet of is verwijderd.
 notice_locking_conflict: De gegevens zijn gewijzigd door een andere gebruiker.
 notice_not_authorized: Het is U niet toegestaan om deze pagina te raadplegen.
-notice_email_sent: An email was sent to %s
-notice_email_error: An error occurred while sending mail (%s)
-notice_feeds_access_key_reseted: Your RSS access key was reseted.
+notice_email_sent: Een e-mail werd verstuurd naar %s
+notice_email_error: Er is een fout opgetreden tijdens het versturen van (%s)
+notice_feeds_access_key_reseted: Je RSS toegangssleutel werd gereset.
 
 error_scm_not_found: "Deze ingang of revisie bestaat niet in de repository."
-error_scm_command_failed: "An error occurred when trying to access the repository: %s"
+error_scm_command_failed: "Een fout trad op tijdens de poging om verbinding te maken met de repository: %s"
 
 mail_subject_lost_password: Uw %s wachtwoord
 mail_body_lost_password: 'Gebruik de volgende link om Uw wachtwoord te wijzigen:'
@@ -112,13 +112,13 @@ field_issue: Issue
 field_status: Status
 field_notes: Notities
 field_is_closed: Issue gesloten
-field_is_default: Default
+field_is_default: Standaard
 field_tracker: Tracker
 field_subject: Onderwerp
 field_due_date: Verwachte datum gereed
 field_assigned_to: Toegewezen aan
 field_priority: Prioriteit
-field_fixed_version: Target version
+field_fixed_version: Doel versie
 field_user: Gebruiker
 field_role: Rol
 field_homepage: Homepage
@@ -128,7 +128,7 @@ field_is_in_chlog: Issues weergegeven in wijzigingslog
 field_is_in_roadmap: Issues weergegeven in roadmap
 field_login: Inloggen
 field_mail_notification: Mail mededelingen
-field_admin: Administrateur
+field_admin: Beheerder
 field_last_login_on: Laatste bezoek
 field_language: Taal
 field_effective_date: Datum
@@ -161,19 +161,19 @@ field_identifier: Identificatiecode
 field_is_filter: Gebruikt als een filter
 field_issue_to_id: Gerelateerd issue
 field_delay: Vertraging
-field_assignable: Issues can be assigned to this role
-field_redirect_existing_links: Redirect existing links
-field_estimated_hours: Estimated time
-field_default_value: Default value
+field_assignable: Issues kunnen toegewezen worden aan deze rol
+field_redirect_existing_links: Verwijs bestaande links door
+field_estimated_hours: Geschatte tijd
+field_default_value: Standaard waarde
 
 setting_app_title: Applicatie titel
 setting_app_subtitle: Applicatie ondertitel
 setting_welcome_text: Welkomsttekst
-setting_default_language: Default taal
+setting_default_language: Standaard taal
 setting_login_required: Authent. nodig
 setting_self_registration: Zelf-registratie toegestaan
 setting_attachment_max_size: Attachment max. grootte
-setting_issues_export_limit: Limiet export issues 
+setting_issues_export_limit: Limiet export issues
 setting_mail_from: Afzender mail adres
 setting_host_name: Host naam
 setting_text_formatting: Tekst formaat
@@ -181,11 +181,11 @@ setting_wiki_compression: Wiki geschiedenis comprimeren
 setting_feeds_limit: Feed inhoud limiet
 setting_autofetch_changesets: Haal commits automatisch op
 setting_sys_api_enabled: Gebruik WS voor repository beheer
-setting_commit_ref_keywords: Referencing keywords
-setting_commit_fix_keywords: Fixing keywords
+setting_commit_ref_keywords: Referencing trefwoorden
+setting_commit_fix_keywords: Fixing trefwoorden
 setting_autologin: Autologin
-setting_date_format: Date format
-setting_cross_project_issue_relations: Allow cross-project issue relations
+setting_date_format: Datum formaat
+setting_cross_project_issue_relations: Sta cross-project issue relaties toe
 
 label_user: Gebruiker
 label_user_plural: Gebruikers
@@ -219,14 +219,14 @@ label_issue_status_new: Nieuwe status
 label_issue_category: Issue categorie
 label_issue_category_plural: Issue categorieën
 label_issue_category_new: Nieuwe categorie
-label_custom_field: Custom veld
-label_custom_field_plural: Custom velden
-label_custom_field_new: Nieuw custom veld
+label_custom_field: Specifiek veld
+label_custom_field_plural: Specifieke velden
+label_custom_field_new: Nieuw specifiek veld
 label_enumerations: Enumeraties
 label_enumeration_new: Nieuwe waarde
 label_information: Informatie
 label_information_plural: Informatie
-label_please_login: Gaarne inloggen
+label_please_login: Inloggen a.u.b.
 label_register: Registreer
 label_password_lost: Wachtwoord verloren
 label_home: Home
@@ -326,7 +326,7 @@ label_in_less_than: in minder dan
 label_in_more_than: in meer dan
 label_in: in
 label_today: vandaag
-label_this_week: this week
+label_this_week: deze week
 label_less_than_ago: minder dan dagen geleden
 label_more_than_ago: meer dan dagen geleden
 label_ago: dagen geleden
@@ -352,8 +352,8 @@ label_sort_higher: Verplaats naar boven
 label_sort_lower: Verplaats naar beneden
 label_sort_lowest: Verplaats naar eind
 label_roadmap: Roadmap
-label_roadmap_due_in: Due in 
-label_roadmap_overdue: %s late
+label_roadmap_due_in: Voldaan in
+label_roadmap_overdue: %s overtijd
 label_roadmap_no_issues: Geen issues voor deze versie
 label_search: Zoeken
 label_result_plural: Resultaten
@@ -412,20 +412,20 @@ label_message_plural: Berichten
 label_message_last: Laatste bericht
 label_message_new: Nieuw bericht
 label_reply_plural: Antwoorden
-label_send_information: Send account information to the user
-label_year: Year
-label_month: Month
+label_send_information: Stuur account informatie naar de gebruiker
+label_year: Jaar
+label_month: Maand
 label_week: Week
-label_date_from: From
-label_date_to: To
-label_language_based: Language based
-label_sort_by: Sort by %s
-label_send_test_email: Send a test email
-label_feeds_access_key_created_on: RSS access key created %s ago
+label_date_from: Van
+label_date_to: Tot
+label_language_based: Taal gebaseerd
+label_sort_by: Sorteer op %s
+label_send_test_email: Stuur een test e-mail
+label_feeds_access_key_created_on: RSS toegangssleutel %s geleden gemaakt.
 label_module_plural: Modules
-label_added_time_by: Added by %s %s ago
-label_updated_time: Updated %s ago
-label_jump_to_a_project: Jump to a project...
+label_added_time_by: Toegevoegd door %s %s geleden
+label_updated_time: Upgedated %s geleden
+label_jump_to_a_project: Spring naar een project...
 
 button_login: Inloggen
 button_submit: Toevoegen
@@ -440,8 +440,8 @@ button_add: Voeg toe
 button_change: Wijzig
 button_apply: Pas toe
 button_clear: Leeg maken
-button_lock: Lock
-button_unlock: Unlock
+button_lock: Sluit
+button_unlock: Open
 button_download: Download
 button_list: Lijst
 button_view: Bekijken
@@ -455,10 +455,10 @@ button_rollback: Rollback naar deze versie
 button_watch: Monitor
 button_unwatch: Niet meer monitoren
 button_reply: Antwoord
-button_archive: Archive
-button_unarchive: Unarchive
+button_archive: Archiveer
+button_unarchive: Desarchiveer
 button_reset: Reset
-button_rename: Rename
+button_rename: Hernoemen
 
 status_active: Actief
 status_registered: geregistreerd
@@ -467,7 +467,7 @@ status_locked: gelockt
 text_select_mail_notifications: Selecteer acties waarvoor mededelingen via mail moeten worden verstuurd.
 text_regexp_info: bv. ^[A-Z0-9]+$
 text_min_max_length_info: 0 betekent geen restrictie
-text_project_destroy_confirmation: Weet U zeker dat U dit project en alle gerelateerde gegevens wilt verwijderen ? 
+text_project_destroy_confirmation: Weet U zeker dat U dit project en alle gerelateerde gegevens wilt verwijderen ?
 text_workflow_edit: Selecteer een rol en een tracker om de workflow te wijzigen
 text_are_you_sure: Weet U het zeker ?
 text_journal_changed: gewijzigd van %s naar %s
@@ -485,10 +485,10 @@ text_coma_separated: Meerdere waarden toegestaan (door komma's gescheiden).
 text_issues_ref_in_commit_messages: Opzoeken en aanpassen van issues in commit berichten
 text_issue_added: Issue %s is gerapporteerd (by %s).
 text_issue_updated: Issue %s is gewijzigd (by %s).
-text_wiki_destroy_confirmation: Are you sure you want to delete this wiki and all its content ?
-text_issue_category_destroy_question: Some issues (%d) are assigned to this category. What do you want to do ?
-text_issue_category_destroy_assignments: Remove category assignments
-text_issue_category_reassign_to: Reassing issues to this category
+text_wiki_destroy_confirmation: Bent u zeker dat u deze wiki en zijn inhoud wenst te verwijderen?
+text_issue_category_destroy_question: Sommige issues (%d) zijn aan deze categorie toegewezen. Wat wilt u hiermee doen ?
+text_issue_category_destroy_assignments: Verwijder categorie toewijzigingen
+text_issue_category_reassign_to: Issues opnieuw toewijzen aan deze categorie
 
 default_role_manager: Manager
 default_role_developper: Ontwikkelaar
@@ -515,109 +515,111 @@ default_activity_development: Development
 enumeration_issue_priorities: Issue prioriteiten
 enumeration_doc_categories: Document categorieën
 enumeration_activities: Activiteiten (tijd tracking)
-text_comma_separated: Multiple values allowed (comma separated).
-label_file_plural: Files
+text_comma_separated: Meerdere waarden toegestaan (kommagescheiden).
+label_file_plural: Bestanden
 label_changeset_plural: Changesets
-field_column_names: Columns
-label_default_columns: Default columns
-setting_issue_list_default_columns: Default columns displayed on the issue list
+field_column_names: Kolommen
+label_default_columns: Standaard kolommen.
+setting_issue_list_default_columns: Standaard kolommen getoond om de lijst met issues
 setting_repositories_encodings: Repositories encodings
-notice_no_issue_selected: "No issue is selected! Please, check the issues you want to edit."
-label_bulk_edit_selected_issues: Bulk edit selected issues
-label_no_change_option: (No change)
-notice_failed_to_save_issues: "Failed to save %d issue(s) on %d selected: %s."
-label_theme: Theme
-label_default: Default
-label_search_titles_only: Search titles only
+notice_no_issue_selected: "Er is geen issue geselecteerd. Selecteer de issue die u wilt bewerken."
+label_bulk_edit_selected_issues: Bewerk geselecteerde issues in bulk
+label_no_change_option: (Geen wijziging)
+notice_failed_to_save_issues: "Gefaald om %d issue(s) (%d geselecteerd) te bewaren: %s."
+
+label_theme: Thema
+label_default: Standaard
+label_search_titles_only: Enkel titels doorzoeken
 label_nobody: nobody
-button_change_password: Change password
+button_change_password: Wijzig wachtwoord
 text_user_mail_option: "For unselected projects, you will only receive notifications about things you watch or you're involved in (eg. issues you're the author or assignee)."
-label_user_mail_option_selected: "For any event on the selected projects only..."
-label_user_mail_option_all: "For any event on all my projects"
-label_user_mail_option_none: "Only for things I watch or I'm involved in"
+text_user_mail_option: "Bij niet-geselecteerde projecten zult u enkel notificaties ontvangen voor issues die u monitort of waar je bij betrokken bent (auteur of toegewezen persoon)."
+label_user_mail_option_selected: "Enkel bij elke event op het geselecteerde project..."
+label_user_mail_option_all: "Bij elk event in al mijn projecten..."
+label_user_mail_option_none: "Alleen in de dingen die ik monitor of in betrokken ben"
 setting_emails_footer: Emails footer
 label_float: Float
-button_copy: Copy
-mail_body_account_information_external: You can use your "%s" account to log in.
-mail_body_account_information: Your account information
+button_copy: Kopieer
+mail_body_account_information_external: Je kan je account (%s) gebruiken om in te loggen.
+mail_body_account_information: Je account gegevens
 setting_protocol: Protocol
-label_user_mail_no_self_notified: "I don't want to be notified of changes that I make myself"
-setting_time_format: Time format
-label_registration_activation_by_email: account activation by email
-mail_subject_account_activation_request: %s account activation request
-mail_body_account_activation_request: 'A new user (%s) has registered. His account his pending your approval:'
-label_registration_automatic_activation: automatic account activation
-label_registration_manual_activation: manual account activation
-notice_account_pending: "Your account was created and is now pending administrator approval."
-field_time_zone: Time zone
-text_caracters_minimum: Must be at least %d characters long.
-setting_bcc_recipients: Blind carbon copy recipients (bcc)
+label_user_mail_no_self_notified: "Ik wil niet verwittigd worden van wijzigingen die ik zelf maak."
+setting_time_format: Tijd formaat
+label_registration_activation_by_email: account activatie per email
+mail_subject_account_activation_request: %s account activatie verzoek
+mail_body_account_activation_request: 'Een nieuwe gebruiker (%s) is geregistreerd. Zijn account wacht op uw akkoord:'
+label_registration_automatic_activation: automatische account activatie
+label_registration_manual_activation: manuele account activatie
+notice_account_pending: "Je account is aangemaakt maar wacht nog op goedkeuring van de beheerder."
+field_time_zone: Tijd zone
+text_caracters_minimum: Moet minstens %d karakters lang zijn.
+setting_bcc_recipients: Blind carbon copy ontvangers (bcc)
 button_annotate: Annotate
-label_issues_by: Issues by %s
-field_searchable: Searchable
-label_display_per_page: 'Per page: %s'
-setting_per_page_options: Objects per page options
-label_age: Age
-notice_default_data_loaded: Default configuration successfully loaded.
-text_load_default_configuration: Load the default configuration
-text_no_configuration_data: "Roles, trackers, issue statuses and workflow have not been configured yet.\nIt is highly recommended to load the default configuration. You will be able to modify it once loaded."
-error_can_t_load_default_data: "Default configuration could not be loaded: %s"
+label_issues_by: Issues door %s
+field_searchable: Doorzoekbaar
+label_display_per_page: 'Per pagina: %s'
+setting_per_page_options: Objects per pagina opties
+label_age: Leeftijd
+notice_default_data_loaded: Standaard configuratie succesvol geladen.
+text_load_default_configuration: Laad de standaardconfiguratie
+text_no_configuration_data: "Rollen, trackers, issue statuses en workflow zijn nog niet geconfigureerd.\nHet is ten zeerste aangeraden om de standaardconfiguratie in te laden. Je kan deze aanpassen nadat deze is ingeladen."
+error_can_t_load_default_data: "Standaard configuratie kon niet worden geladen: %s"
 button_update: Update
-label_change_properties: Change properties
-label_general: General
+label_change_properties: Eigenschappen wijzigen
+label_general: Algemeen
 label_repository_plural: Repositories
-label_associated_revisions: Associated revisions
-setting_user_format: Users display format
-text_status_changed_by_changeset: Applied in changeset %s.
-label_more: More
-text_issues_destroy_confirmation: 'Are you sure you want to delete the selected issue(s) ?'
+label_associated_revisions: Geassocieerde revisies
+setting_user_format: Gebruikers weergave formaat
+text_status_changed_by_changeset: Toegepast in changeset %s.
+label_more: Meer
+text_issues_destroy_confirmation: 'Ben je zeker dat je deze issue(s) wenst te verwijderen?'
 label_scm: SCM
-text_select_project_modules: 'Select modules to enable for this project:'
-label_issue_added: Issue added
-label_issue_updated: Issue updated
-label_document_added: Document added
-label_message_posted: Message added
-label_file_added: File added
-label_news_added: News added
+text_select_project_modules: 'Selecteer de modules die je wenst te gebruiken voor dit project:'
+label_issue_added: Issue toegevoegd
+label_issue_updated: Issue geupdated
+label_document_added: Document toegevoegd
+label_message_posted: Bericht toegevoegd
+label_file_added: Bericht toegevoegd
+label_news_added: Nieuws toegevoegd
 project_module_boards: Boards
 project_module_issue_tracking: Issue tracking
 project_module_wiki: Wiki
-project_module_files: Files
-project_module_documents: Documents
+project_module_files: Bestanden
+project_module_documents: Documenten
 project_module_repository: Repository
-project_module_news: News
-project_module_time_tracking: Time tracking
-text_file_repository_writable: File repository writable
-text_default_administrator_account_changed: Default administrator account changed
-text_rmagick_available: RMagick available (optional)
-button_configure: Configure
+project_module_news: Nieuws
+project_module_time_tracking: Tijd tracking
+text_file_repository_writable: Bestandsrepository beschrijfbaar
+text_default_administrator_account_changed: Standaard beheerderaccount gewijzigd
+text_rmagick_available: RMagick beschikbaar (optioneel)
+button_configure: Configureer
 label_plugins: Plugins
-label_ldap_authentication: LDAP authentication
+label_ldap_authentication: LDAP authenticatie
 label_downloads_abbr: D/L
-label_this_month: this month
-label_last_n_days: last %d days
+label_this_month: deze maand
+label_last_n_days: %d dagen geleden
 label_all_time: all time
-label_this_year: this year
-label_date_range: Date range
-label_last_week: last week
-label_yesterday: yesterday
-label_last_month: last month
-label_add_another_file: Add another file
-label_optional_description: Optional description
-text_destroy_time_entries_question: %.02f hours were reported on the issues you are about to delete. What do you want to do ?
-error_issue_not_found_in_project: 'The issue was not found or does not belong to this project'
-text_assign_time_entries_to_project: Assign reported hours to the project
-text_destroy_time_entries: Delete reported hours
-text_reassign_time_entries: 'Reassign reported hours to this issue:'
-setting_activity_days_default: Days displayed on project activity
-label_chronological_order: In chronological order
-field_comments_sorting: Display comments
-label_reverse_chronological_order: In reverse chronological order
-label_preferences: Preferences
-setting_display_subprojects_issues: Display subprojects issues on main projects by default
-label_overall_activity: Overall activity
-setting_default_projects_public: New projects are public by default
-error_scm_annotate: "The entry does not exist or can not be annotated."
+label_this_year: dit jaar
+label_date_range: Datum bereik
+label_last_week: vorige week
+label_yesterday: gisteren
+label_last_month: laatste maand
+label_add_another_file: Ander bestand toevoegen
+label_optional_description: Optionele beschrijving
+text_destroy_time_entries_question: %.02f uren werden gerapporteerd op de issue(s) die je wou verwijderen. Wat wil je doen?
+error_issue_not_found_in_project: 'Deze issue is niet gevonden of behoort niet toe tot dit project.'
+text_assign_time_entries_to_project: Geraporteerde uren toevoegen aan dit project
+text_destroy_time_entries: Verwijder geraporteerde uren
+text_reassign_time_entries: 'Gerapporteerde uren opnieuw toewijzen:'
+setting_activity_days_default: Aantal dagen getoond bij het tabblad "Activiteit"
+label_chronological_order: In chronologische volgorde
+field_comments_sorting: Commentaar weergeven
+label_reverse_chronological_order: In omgekeerde chronologische volgorde
+label_preferences: Voorkeuren
+setting_display_subprojects_issues: Standaard issues van subproject tonen
+label_overall_activity: Activiteit
+setting_default_projects_public: Nieuwe projecten zijn standaard publiek
+error_scm_annotate: "Er kan geen commentaar toegevoegd worden."
 label_planning: Planning
 text_subprojects_destroy_warning: 'Its subproject(s): %s will be also deleted.'
 label_and_its_subprojects: %s and its subprojects
@@ -630,14 +632,14 @@ text_enumeration_category_reassign_to: 'Reassign them to this value:'
 text_enumeration_destroy_question: '%d objects are assigned to this value.'
 label_incoming_emails: Incoming emails
 label_generate_key: Generate a key
-setting_mail_handler_api_enabled: Enable WS for incoming emails
-setting_mail_handler_api_key: API key
-text_email_delivery_not_configured: "Email delivery is not configured, and notifications are disabled.\nConfigure your SMTP server in config/email.yml and restart the application to enable them."
-field_parent_title: Parent page
-label_issue_watchers: Watchers
-setting_commit_logs_encoding: Commit messages encoding
-button_quote: Quote
-setting_sequential_project_identifiers: Generate sequential project identifiers
-notice_unable_delete_version: Unable to delete version
-label_renamed: renamed
-label_copied: copied
+setting_mail_handler_api_enabled: Schakel WS in voor inkomende mail.
+setting_mail_handler_api_key: API sleutel
+text_email_delivery_not_configured: "Email bezorging is niet geconfigureerd. Notificaties zijn uitgeschakeld.\nConfigureer je SMTP server in config/email.yml en herstant de applicatie om dit in te schakelen."
+field_parent_title: Bovenliggende pagina
+label_issue_watchers: Monitoren
+setting_commit_logs_encoding: Commit messages encodering
+button_quote: Citaat
+setting_sequential_project_identifiers: Genereer sequentiele project identiteiten
+notice_unable_delete_version: Onmogelijk om deze versie te verwijderen.
+label_renamed: hernoemt
+label_copied: gekopieerd
index 9ef18711b3c6f59ae61e3c7c02bef906e9b91d7d..0f705c0d3769b6b2c2cd9a9c26ae484715ca65b5 100644 (file)
@@ -285,6 +285,7 @@ label_commits_per_author: Изменений на пользователя
 label_commits_per_month: Изменений в месяц
 label_confirmation: Подтверждение
 label_contains: содержит
+label_copied: скопировано
 label_copy_workflow_from: Скопировать последовательность действий из
 label_current_status: Текущий статус
 label_current_version: Текущая версия
@@ -465,6 +466,7 @@ label_related_issues: Связанные задачи
 label_relates_to: связана с
 label_relation_delete: Удалить связь
 label_relation_new: Новое отношение
+label_renamed: переименовано
 label_reply_plural: Ответы
 label_reported_issues: Созданные задачи
 label_report_plural: Отчеты
@@ -670,5 +672,4 @@ text_user_mail_option: "Для невыбранных проектов, Вы б
 text_user_wrote: '%s написал(а):'
 text_wiki_destroy_confirmation: Вы уверены, что хотите удалить данную Wiki и все содержимое?
 text_workflow_edit: Выберите роль и трекер для редактирования последовательности состояний
-label_renamed: renamed
-label_copied: copied
+
index a7a7767f17e210e3931c83baf3b116ee7cd037fb..db4615a392ee70b5a81eea11baec82d848529334 100644 (file)
@@ -405,6 +405,8 @@ label_revision_plural: 版次清單
 label_associated_revisions: 相關版次
 label_added: 已新增
 label_modified: 已修改
+label_copied: 已複製
+label_renamed: 已重新命名
 label_deleted: 已刪除
 label_latest_revision: 最新版次
 label_latest_revision_plural: 最近版次清單
@@ -639,5 +641,3 @@ default_activity_development: 開發
 enumeration_issue_priorities: 項目優先權
 enumeration_doc_categories: 文件分類
 enumeration_activities: 活動 (時間追蹤)
-label_renamed: renamed
-label_copied: copied
index ed84eeb5706ba2ec1af259fbf68d92b5de512a87..5c3cf06a11f5252f1c41d3ace5cfcae7b26dde7b 100644 (file)
@@ -405,6 +405,8 @@ label_revision_plural: 修订
 label_associated_revisions: 相关修订版本
 label_added: 已添加
 label_modified: 已修改
+label_copied: 已复制
+label_renamed: 已重命名
 label_deleted: 已删除
 label_latest_revision: 最近的修订版本
 label_latest_revision_plural: 最近的修订版本
@@ -639,5 +641,3 @@ default_activity_development: 开发
 enumeration_issue_priorities: 问题优先级
 enumeration_doc_categories: 文档类别
 enumeration_activities: 活动(时间跟踪)
-label_renamed: renamed
-label_copied: copied
index a8c4829557c3d26830e835ed23df38b3c1d31b7a..6c8cdfb5e59ea8748a7390488430ffdc0371aa93 100644 (file)
@@ -3,4 +3,8 @@ watchers_001:
   watchable_type: Issue
   watchable_id: 2
   user_id: 3
+watchers_002: 
+  watchable_type: Message
+  watchable_id: 1
+  user_id: 1
   
\ No newline at end of file
index 82ed3fe1372b474dabd6a980a56730ca7e5c6e8e..6e8e8fb26ab6a5143196ad3be4d085c93e7cfd67 100644 (file)
@@ -1,7 +1,7 @@
 require File.dirname(__FILE__) + '/../test_helper'
 
 class MessageTest < Test::Unit::TestCase
-  fixtures :projects, :boards, :messages
+  fixtures :projects, :boards, :messages, :users, :watchers
 
   def setup
     @board = Board.find(1)
@@ -20,6 +20,8 @@ class MessageTest < Test::Unit::TestCase
     # messages count incremented
     assert_equal messages_count+1, @board[:messages_count]
     assert_equal message, @board.last_message
+    # author should be watching the message
+    assert message.watched_by?(@user)
   end
   
   def test_reply
@@ -28,7 +30,8 @@ class MessageTest < Test::Unit::TestCase
     @message = Message.find(1)
     replies_count = @message.replies_count
     
-    reply = Message.new(:board => @board, :subject => 'Test reply', :content => 'Test reply content', :parent => @message, :author => @user)
+    reply_author = User.find(2)
+    reply = Message.new(:board => @board, :subject => 'Test reply', :content => 'Test reply content', :parent => @message, :author => reply_author)
     assert reply.save
     @board.reload
     # same topics count
@@ -40,13 +43,18 @@ class MessageTest < Test::Unit::TestCase
     # replies count incremented
     assert_equal replies_count+1, @message[:replies_count]
     assert_equal reply, @message.last_reply
+    # author should be watching the message
+    assert @message.watched_by?(reply_author)
   end
   
   def test_destroy_topic
     message = Message.find(1)
     board = message.board
     topics_count, messages_count = board.topics_count, board.messages_count    
-    assert message.destroy
+    
+    assert_difference('Watcher.count', -1) do
+      assert message.destroy
+    end
     board.reload
     
     # Replies deleted
@@ -54,6 +62,7 @@ class MessageTest < Test::Unit::TestCase
     # Checks counters
     assert_equal topics_count - 1, board.topics_count
     assert_equal messages_count - 3, board.messages_count
+    # Watchers removed
   end
   
   def test_destroy_reply