add done view to tag pages and add more tests

This commit is contained in:
Reinier Balt 2011-06-26 23:05:33 +02:00
parent 6e97541ab3
commit 601736de2d
14 changed files with 1106 additions and 869 deletions

View file

@ -11,7 +11,7 @@ class ContextsController < ApplicationController
def index
# #true is passed here to force an immediate load so that size and empty?
# checks later don't result in separate SQL queries
@active_contexts = current_user.contexts.active(true)
@active_contexts = current_user.contexts.active(true)
@hidden_contexts = current_user.contexts.hidden(true)
@new_context = current_user.contexts.build
@ -34,7 +34,7 @@ class ContextsController < ApplicationController
format.autocomplete { render :text => for_autocomplete(@active_contexts + @hidden_contexts, params[:term])}
end
end
def show
@contexts = current_user.contexts(true)
if @context.nil?
@ -51,7 +51,7 @@ class ContextsController < ApplicationController
end
end
end
# Example XML usage: curl -H 'Accept: application/xml' -H 'Content-Type:
# application/xml'
# -u username:password
@ -86,14 +86,14 @@ class ContextsController < ApplicationController
end
end
end
# Edit the details of the context
#
def update
params['context'] ||= {}
success_text = if params['field'] == 'name' && params['value']
params['context']['id'] = params['id']
params['context']['name'] = params['value']
params['context']['id'] = params['id']
params['context']['name'] = params['value']
end
@original_context_hidden = @context.hidden?
@ -110,7 +110,7 @@ class ContextsController < ApplicationController
end
# TODO is this param ever used? is this dead code?
elsif boolean_param('update_context_name')
@contexts = current_user.projects
render :template => 'contexts/update_context_name.js.rjs'
@ -120,10 +120,10 @@ class ContextsController < ApplicationController
end
else
respond_to do |format|
format.js
format.js
format.xml {
if @saved
render :xml => @context.to_xml( :except => :user_id )
render :xml => @context.to_xml( :except => :user_id )
else
render :text => "Error on update: #{@context.errors.full_messages.inject("") {|v, e| v + e + " " }}", :status => 409
end
@ -145,7 +145,7 @@ class ContextsController < ApplicationController
def destroy
# make sure the deleted recurring patterns are removed from associated todos
@context.recurring_todos.each { |rt| rt.clear_todos_association } unless @context.recurring_todos.nil?
@context.destroy
respond_to do |format|
format.js do
@ -166,26 +166,28 @@ class ContextsController < ApplicationController
notify :error, $!
redirect_to :action => 'index'
end
def done_todos
@source_view = 'context'
@page_title = t('context.completed_tasks_title')
completed_todos = current_user.contexts.find(params[:id]).todos.completed
@context = current_user.contexts.find(params[:id])
@page_title = t('contexts.completed_tasks_title', :context_name => @context.name)
completed_todos = @context.todos.completed
@done_today = get_done_today(completed_todos)
@done_this_week = get_done_this_week(completed_todos)
@done_this_month = get_done_this_month(completed_todos)
@count = @done_today.size + @done_this_week.size + @done_this_month.size
render :template => 'todos/done'
end
def all_done_todos
@source_view = 'context'
@page_title = t('context.completed_tasks_title')
@context = current_user.contexts.find(params[:id])
@page_title = t('contexts.all_completed_tasks_title', :context_name => @context.name)
@done = current_user.contexts.find(params[:id]).todos.completed.paginate :page => params[:page], :per_page => 20, :order => 'completed_at DESC', :include => Todo::DEFAULT_INCLUDES
@done = @context.todos.completed.paginate :page => params[:page], :per_page => 20, :order => 'completed_at DESC', :include => Todo::DEFAULT_INCLUDES
@count = @done.size
render :template => 'todos/all_done'
end
@ -209,23 +211,23 @@ class ContextsController < ApplicationController
render
end
end
def render_contexts_mobile
lambda do
@page_title = "TRACKS::List Contexts"
@active_contexts = current_user.contexts.active
@hidden_contexts = current_user.contexts.hidden
@down_count = @active_contexts.size + @hidden_contexts.size
@down_count = @active_contexts.size + @hidden_contexts.size
cookies[:mobile_url]= {:value => request.request_uri, :secure => SITE_CONFIG['secure_cookies']}
render :action => 'index_mobile'
end
end
def render_context_mobile
lambda do
@page_title = "TRACKS::List actions in "+@context.name
@not_done = @not_done_todos.select {|t| t.context_id == @context.id }
@down_count = @not_done.size
@not_done = @not_done_todos.select {|t| t.context_id == @context.id }
@down_count = @not_done.size
cookies[:mobile_url]= {:value => request.request_uri, :secure => SITE_CONFIG['secure_cookies']}
@mobile_from_context = @context.id
render :action => 'mobile_show_context'
@ -246,7 +248,7 @@ class ContextsController < ApplicationController
:author => lambda { |c| nil } }
end
end
def feed_options
Context.feed_options(current_user)
end
@ -256,7 +258,7 @@ class ContextsController < ApplicationController
rescue
@context = nil
end
def init
@source_view = params['_source_view'] || 'context'
init_data_for_sidebar
@ -270,13 +272,13 @@ class ContextsController < ApplicationController
end
@max_completed = current_user.prefs.show_number_completed
# @not_done_todos = @context.not_done_todos TODO: Temporarily doing this
# search manually until I can work out a way to do the same thing using
# not_done_todos acts_as_todo_container method Hides actions in hidden
# projects from context.
@not_done_todos = @context.todos.active(
:order => "todos.due IS NULL, todos.due ASC, todos.created_at ASC",
:order => "todos.due IS NULL, todos.due ASC, todos.created_at ASC",
:include => Todo::DEFAULT_INCLUDES)
@projects = current_user.projects

View file

@ -12,7 +12,7 @@ class ProjectsController < ApplicationController
@new_project = current_user.projects.build
if params[:projects_and_actions]
projects_and_actions
else
else
@contexts = current_user.contexts.all
init_not_done_counts(['project'])
init_project_hidden_todo_counts(['project'])
@ -32,18 +32,18 @@ class ProjectsController < ApplicationController
end
end
end
def done
@source_view = params['_source_view'] || 'project_list'
@page_title = t('projects.list_completed_projects')
page = params[:page] || 1
projects_per_page = 20
@projects = current_user.projects.completed.paginate :page => page, :per_page => projects_per_page
@count = @projects.count
@total = current_user.projects.completed.count
@no_projects = @projects.empty?
@range_low = (page.to_i-1) * projects_per_page + 1
@range_high = @range_low + @projects.size - 1
@ -54,7 +54,7 @@ class ProjectsController < ApplicationController
def projects_and_actions
@projects = current_user.projects.active
respond_to do |format|
format.text {
format.text {
render :action => 'index_text_projects_and_actions', :layout => false, :content_type => Mime::TEXT
}
end
@ -64,7 +64,7 @@ class ProjectsController < ApplicationController
@max_completed = current_user.prefs.show_number_completed
init_data_for_sidebar unless mobile?
@page_title = t('projects.page_title', :project => @project.name)
@not_done = @project.todos.active_or_hidden(:include => Todo::DEFAULT_INCLUDES)
@deferred = @project.todos.deferred(:include => Todo::DEFAULT_INCLUDES)
@pending = @project.todos.pending(:include => Todo::DEFAULT_INCLUDES)
@ -85,7 +85,7 @@ class ProjectsController < ApplicationController
format.xml { render :xml => @project.to_xml( :except => :user_id ) }
end
end
# Example XML usage: curl -H 'Accept: application/xml' -H 'Content-Type:
# application/xml'
# -u username:password
@ -138,8 +138,8 @@ class ProjectsController < ApplicationController
params['project'].delete('state')
end
success_text = if params['field'] == 'name' && params['value']
params['project']['id'] = params['id']
params['project']['name'] = params['value']
params['project']['id'] = params['id']
params['project']['name'] = params['value']
end
@project.attributes = params['project']
@ -165,7 +165,7 @@ class ProjectsController < ApplicationController
elsif boolean_param('update_status')
template = 'projects/update_status.js.rjs'
elsif boolean_param('update_default_context')
@initial_context_name = @project.default_context.name
@initial_context_name = @project.default_context.name
template = 'projects/update_default_context.js.rjs'
elsif boolean_param('update_default_tags')
template = 'projects/update_default_tags.js.rjs'
@ -184,23 +184,23 @@ class ProjectsController < ApplicationController
respond_to do |format|
format.js { render :template => template }
format.html { redirect_to :action => 'index'}
format.xml {
format.xml {
if @saved
render :xml => @project.to_xml( :except => :user_id )
render :xml => @project.to_xml( :except => :user_id )
else
render :text => "Error on update: #{@project.errors.full_messages.inject("") {|v, e| v + e + " " }}", :status => 409
end
}
end
end
def edit
respond_to do |format|
format.js
end
end
def destroy
@project.recurring_todos.each {|rt| rt.remove_from_project!}
@project.destroy
@ -213,7 +213,7 @@ class ProjectsController < ApplicationController
format.xml { render :text => "Deleted project #{@project.name}" }
end
end
def order
project_ids = params["container_project"]
@projects = current_user.projects.update_positions( project_ids )
@ -222,44 +222,46 @@ class ProjectsController < ApplicationController
notify :error, $!
redirect_to :action => 'index'
end
def alphabetize
@state = params['state']
@projects = current_user.projects.alphabetize(:state => @state) if @state
@contexts = current_user.contexts
init_not_done_counts(['project'])
end
def actionize
@state = params['state']
@projects = current_user.projects.actionize(:state => @state) if @state
@contexts = current_user.contexts
init_not_done_counts(['project'])
end
def done_todos
@source_view = 'project'
@page_title = t('project.completed_tasks_title')
completed_todos = current_user.projects.find(params[:id]).todos.completed
@project = current_user.projects.find(params[:id])
@page_title = t('projects.completed_tasks_title', :project_name => @project.name)
completed_todos = @project.todos.completed
@done_today = get_done_today(completed_todos)
@done_this_week = get_done_this_week(completed_todos)
@done_this_month = get_done_this_month(completed_todos)
@count = @done_today.size + @done_this_week.size + @done_this_month.size
render :template => 'todos/done'
end
def all_done_todos
@source_view = 'project'
@page_title = t('project.completed_tasks_title')
@project = current_user.projects.find(params[:id])
@page_title = t('projects.all_completed_tasks_title', :project_name => @project.name)
@done = current_user.projects.find(params[:id]).todos.completed.paginate :page => params[:page], :per_page => 20, :order => 'completed_at DESC', :include => Todo::DEFAULT_INCLUDES
@done = @project.todos.completed.paginate :page => params[:page], :per_page => 20, :order => 'completed_at DESC', :include => Todo::DEFAULT_INCLUDES
@count = @done.size
render :template => 'todos/all_done'
end
protected
def update_state_counts
@ -291,12 +293,12 @@ class ProjectsController < ApplicationController
@active_projects = current_user.projects.active
@hidden_projects = current_user.projects.hidden
@completed_projects = current_user.projects.completed
@down_count = @active_projects.size + @hidden_projects.size + @completed_projects.size
@down_count = @active_projects.size + @hidden_projects.size + @completed_projects.size
cookies[:mobile_url]= {:value => request.request_uri, :secure => SITE_CONFIG['secure_cookies']}
render :action => 'index_mobile'
end
end
def render_project_mobile
lambda do
if @project.default_context.nil?
@ -326,7 +328,7 @@ class ProjectsController < ApplicationController
:author => lambda { |p| nil } }
end
end
def feed_options
Project.feed_options(current_user)
end
@ -336,15 +338,15 @@ class ProjectsController < ApplicationController
render :action => 'index', :layout => false, :content_type => Mime::TEXT
end
end
def set_project_from_params
@project = current_user.projects.find_by_params(params)
end
def set_source_view
@source_view = params['_source_view'] || 'project'
end
def default_context_filter
p = params['project']
p = params['request']['project'] if p.nil? && params['request']

View file

@ -22,7 +22,7 @@ class TodosController < ApplicationController
@contexts = current_user.contexts.find(:all)
@contexts_to_show = current_user.contexts.active
respond_to do |format|
format.html &render_todos_html
format.m &render_todos_mobile
@ -33,7 +33,7 @@ class TodosController < ApplicationController
format.ics &render_ical_feed
end
end
def new
@projects = current_user.projects.active
@contexts = current_user.contexts.find(:all)
@ -47,16 +47,16 @@ class TodosController < ApplicationController
# we have a project but not a context -> use the default context
@mobile_from_context = @mobile_from_project.default_context
end
render :action => "new"
render :action => "new"
}
end
end
def create
@source_view = params['_source_view'] || 'todo'
@default_context = current_user.contexts.find_by_name(params['default_context_name'])
@default_project = current_user.projects.find_by_name(params['default_project_name']) unless params['default_project_name'].blank?
@tag_name = params['_tag_name']
is_multiple = params[:todo] && params[:todo][:multiple_todos] && !params[:todo][:multiple_todos].nil?
@ -67,7 +67,7 @@ class TodosController < ApplicationController
p.parse_dates() unless mobile?
tag_list = p.tag_list
predecessor_list = p.predecessor_list
@todo = current_user.todos.build(p.attributes)
if p.project_specified_by_name?
@ -75,7 +75,7 @@ class TodosController < ApplicationController
@new_project_created = project.new_record_before_save?
@todo.project_id = project.id
end
if p.context_specified_by_name?
context = current_user.contexts.find_or_create_by_name(p.context_name)
@new_context_created = context.new_record_before_save?
@ -210,7 +210,7 @@ class TodosController < ApplicationController
end
end
end
def edit
@todo = current_user.todos.find(params['id'], :include => Todo::DEFAULT_INCLUDES)
@source_view = params['_source_view'] || 'todo'
@ -219,7 +219,7 @@ class TodosController < ApplicationController
format.js
end
end
def show
@todo = current_user.todos.find(params['id'])
respond_to do |format|
@ -233,7 +233,7 @@ class TodosController < ApplicationController
format.xml { render :xml => @todo.to_xml( :root => 'todo', :except => :user_id ) }
end
end
def add_predecessor
@source_view = params['_source_view'] || 'todo'
@predecessor = current_user.todos.find(params['predecessor'])
@ -251,7 +251,7 @@ class TodosController < ApplicationController
@saved = false
end
respond_to do |format|
format.js
format.js
end
end
@ -278,18 +278,18 @@ class TodosController < ApplicationController
@original_item_context_id = @todo.context_id
@original_item_project_id = @todo.project_id
@saved = @todo.toggle_completion!
# check if this todo has a related recurring_todo. If so, create next todo
@new_recurring_todo = check_for_next_todo(@todo) if @saved
if @saved
if @todo.completed?
@pending_to_activate = @todo.activate_pending_todos
@pending_to_activate = @todo.activate_pending_todos
else
@active_to_block = @todo.block_successors
end
end
respond_to do |format|
format.js do
if @saved
@ -318,7 +318,7 @@ class TodosController < ApplicationController
end
end
end
def toggle_star
@todo = current_user.todos.find(params['id'])
@todo.toggle_star!
@ -357,18 +357,18 @@ class TodosController < ApplicationController
cache_attributes_from_before_update
update_tags
update_project
update_context
update_project
update_context
update_due_and_show_from_dates
update_completed_state
update_dependencies
update_attributes_of_todo
@saved = @todo.save
# this is set after save and cleared after reload, so save it here
@removed_predecessors = @todo.removed_predecessors
@todo.reload # refresh context and project object too (not only their id's)
update_dependency_state
@ -401,7 +401,7 @@ class TodosController < ApplicationController
end
end
end
def destroy
@source_view = params['_source_view'] || 'todo'
@todo = current_user.todos.find(params['id'])
@ -428,9 +428,9 @@ class TodosController < ApplicationController
# check if this todo has a related recurring_todo. If so, create next todo
@new_recurring_todo = check_for_next_todo(@todo) if @saved
respond_to do |format|
format.html do
if @saved
message = t('todos.action_deleted_success')
@ -444,7 +444,7 @@ class TodosController < ApplicationController
redirect_to :action => 'index'
end
end
format.js do
if @saved
determine_down_count
@ -457,16 +457,16 @@ class TodosController < ApplicationController
end
render
end
format.xml { render :text => '200 OK. Action deleted.', :status => 200 }
end
end
def done
@source_view = 'done'
@page_title = t('todos.completed_tasks_title')
completed_todos = current_user.todos.completed
@done_today = get_done_today(completed_todos)
@ -474,7 +474,7 @@ class TodosController < ApplicationController
@done_this_month = get_done_this_month(completed_todos)
@count = @done_today.size + @done_this_week.size + @done_this_month.size
end
def all_done
@source_view = 'done'
@page_title = t('todos.completed_tasks_title')
@ -482,25 +482,25 @@ class TodosController < ApplicationController
@done = current_user.todos.completed.paginate :page => params[:page], :per_page => 20, :order => 'completed_at DESC', :include => Todo::DEFAULT_INCLUDES
@count = @done.size
end
def list_deferred
@source_view = 'deferred'
@page_title = t('todos.deferred_tasks_title')
@contexts_to_show = @contexts = current_user.contexts.find(:all)
includes = params[:format]=='xml' ? [:context, :project] : Todo::DEFAULT_INCLUDES
@not_done_todos = current_user.todos.deferred(:include => includes) + current_user.todos.pending(:include => includes)
@down_count = @count = @not_done_todos.size
respond_to do |format|
format.html
format.m { render :action => 'mobile_list_deferred' }
format.xml { render :xml => @not_done_todos.to_xml( :except => :user_id ) }
end
end
# Check for any due tickler items, activate them Called by
# periodically_call_remote
def check_deferred
@ -510,46 +510,47 @@ class TodosController < ApplicationController
format.js
end
end
def filter_to_context
context = current_user.contexts.find(params['context']['id'])
redirect_to context_todos_path(context, :format => 'm')
end
def filter_to_project
project = current_user.projects.find(params['project']['id'])
redirect_to project_todos_path(project, :format => 'm')
end
# /todos/tag/[tag_name] shows all the actions tagged with tag_name
def tag
init_data_for_sidebar unless mobile?
@source_view = params['_source_view'] || 'tag'
@tag_name = sanitize(params[:name]) # sanitize to prevent XSS vunerability!
@page_title = t('todos.tagged_page_title', :tag_name => @tag_name)
# mobile tags are routed with :name ending on .m. So we need to chomp it
@tag_name = @tag_name.chomp('.m') if mobile?
@tag = Tag.find_by_name(@tag_name)
@tag = Tag.new(:name => @tag_name) if @tag.nil?
@not_done_todos = current_user.todos.with_tag(@tag).active.not_hidden.find(:all,
:order => 'todos.due IS NULL, todos.due ASC, todos.created_at ASC', :include => [:context])
:order => 'todos.due IS NULL, todos.due ASC, todos.created_at ASC', :include => Todo::DEFAULT_INCLUDES)
@hidden_todos = current_user.todos.with_tag(@tag).hidden.find(:all,
:include => [:taggings, :tags, :context],
:include => Todo::DEFAULT_INCLUDES,
:order => 'todos.completed_at DESC, todos.created_at DESC')
@deferred = current_user.todos.with_tag(@tag).deferred.find(:all,
:order => 'show_from ASC, todos.created_at DESC', :include => [:context])
:order => 'show_from ASC, todos.created_at DESC', :include => Todo::DEFAULT_INCLUDES)
@pending = current_user.todos.with_tag(@tag).blocked.find(:all,
:order => 'show_from ASC, todos.created_at DESC', :include => [:context])
:order => 'show_from ASC, todos.created_at DESC', :include => Todo::DEFAULT_INCLUDES)
# If you've set no_completed to zero, the completed items box isn't shown on
# the tag page
max_completed = current_user.prefs.show_number_completed
@done = current_user.todos.with_tag(@tag).completed.find(:all,
:limit => max_completed,
:order => 'todos.completed_at DESC')
:order => 'todos.completed_at DESC',
:include => Todo::DEFAULT_INCLUDES)
@projects = current_user.projects
@contexts = current_user.contexts
@ -560,7 +561,7 @@ class TodosController < ApplicationController
unless @not_done_todos.empty?
@context = current_user.contexts.find_by_id(@not_done_todos[0].context_id)
end
# Set count badge to number of items with this tag
@not_done_todos.empty? ? @count = 0 : @count = @not_done_todos.size
@down_count = @count
@ -574,13 +575,42 @@ class TodosController < ApplicationController
end
end
def done_tag
@source_view = params['_source_view'] || 'tag'
@tag_name = sanitize(params[:name]) # sanitize to prevent XSS vunerability!
@page_title = t('todos.completed_tagged_page_title', :tag_name => @tag_name)
@tag = Tag.find_by_name(@tag_name)
@tag = Tag.new(:name => @tag_name) if @tag.nil?
completed_todos = current_user.todos.completed.with_tag(@tag)
@done_today = get_done_today(completed_todos)
@done_this_week = get_done_this_week(completed_todos)
@done_this_month = get_done_this_month(completed_todos)
@count = @done_today.size + @done_this_week.size + @done_this_month.size
render :template => 'todos/done'
end
def all_done_tag
@source_view = params['_source_view'] || 'tag'
@tag_name = sanitize(params[:name]) # sanitize to prevent XSS vunerability!
@page_title = t('todos.all_completed_tagged_page_title', :tag_name => @tag_name)
@tag = Tag.find_by_name(@tag_name)
@tag = Tag.new(:name => @tag_name) if @tag.nil?
@done = current_user.todos.completed.with_tag(@tag).paginate :page => params[:page], :per_page => 20, :order => 'completed_at DESC', :include => Todo::DEFAULT_INCLUDES
@count = @done.size
render :template => 'todos/all_done'
end
def tags
@tags = Tag.find(:all, :conditions =>['name like ?', '%'+params[:term]+'%'])
respond_to do |format|
format.autocomplete { render :text => for_autocomplete(@tags, params[:term]) }
end
end
def defer
@source_view = params['_source_view'] || 'todo'
numdays = params['days'].to_i
@ -621,13 +651,13 @@ class TodosController < ApplicationController
@page_title = t('todos.calendar_page_title')
@projects = current_user.projects.find(:all)
due_today_date = Time.zone.now
due_this_week_date = Time.zone.now.end_of_week
due_next_week_date = due_this_week_date + 7.days
due_this_month_date = Time.zone.now.end_of_month
included_tables = Todo::DEFAULT_INCLUDES
@due_today = current_user.todos.not_completed.find(:all,
:include => included_tables,
:conditions => ['todos.due <= ?', due_today_date],
@ -648,7 +678,7 @@ class TodosController < ApplicationController
:include => included_tables,
:conditions => ['todos.due > ?', due_this_month_date],
:order => "due")
@count = current_user.todos.not_completed.are_due.count
respond_to do |format|
@ -659,7 +689,7 @@ class TodosController < ApplicationController
}
end
end
def auto_complete_for_predecessor
unless params['id'].nil?
get_todo_from_params
@ -723,13 +753,13 @@ class TodosController < ApplicationController
end
private
def get_todo_from_params
# TODO: this was a :append_before but was removed to tune performance per
# method. Reconsider re-enabling it
@todo = current_user.todos.find(params['id'])
end
def find_and_activate_ready
current_user.deferred_todos.find_and_activate_ready
end
@ -774,7 +804,7 @@ class TodosController < ApplicationController
@title << t('todos.next_actions_title_additions.completed')
@description << t('todos.next_actions_description_additions.completed', :count => done_in_last.to_s)
end
if params.key?('tag')
tag = Tag.find_by_name(params['tag'])
if tag.nil?
@ -782,11 +812,11 @@ class TodosController < ApplicationController
end
condition_builder.add('taggings.tag_id = ?', tag.id)
end
Todo.send :with_scope, :find => {:conditions => condition_builder.to_conditions} do
yield
end
end
def with_parent_resource_scope(&block)
@ -830,11 +860,11 @@ class TodosController < ApplicationController
with_feed_query_scope do
with_parent_resource_scope do # @context or @project may get defined here
with_limit_scope do
if mobile?
init_todos_for_mobile_view
else
# Note: these next two finds were previously using
# current_users.todos.find but that broke with_scope for :limit
@ -852,18 +882,18 @@ class TodosController < ApplicationController
end
end
end
def init_todos_for_mobile_view
# Note: these next two finds were previously using current_users.todos.find
# but that broke with_scope for :limit
# Exclude hidden projects from the home page
@not_done_todos = current_user.todos.find(:all,
:conditions => ['todos.state = ? AND contexts.hide = ? AND (projects.state = ? OR todos.project_id IS NULL)', 'active', false, 'active'],
:order => "todos.due IS NULL, todos.due ASC, todos.created_at ASC",
:include => [ :project, :context, :tags ])
end
def determine_down_count
source_view do |from|
from.todo do
@ -890,7 +920,7 @@ class TodosController < ApplicationController
end
end
end
def determine_remaining_in_context_count(context_id = @todo.context_id)
source_view do |from|
from.deferred {
@ -931,7 +961,7 @@ class TodosController < ApplicationController
@remaining_in_context = current_user.contexts.find(context_id).todos(true).active.not_hidden.count if !@remaining_in_context
@target_context_count = current_user.contexts.find(@todo.context_id).todos(true).active.not_hidden.count if !@target_context_count
end
def determine_completed_count
source_view do |from|
from.todo do
@ -972,7 +1002,7 @@ class TodosController < ApplicationController
# Set count badge to number of not-done, not hidden context items
@count = current_user.todos.active.not_hidden.count(:all)
render
end
end
@ -983,11 +1013,11 @@ class TodosController < ApplicationController
@home = true
cookies[:mobile_url]= { :value => request.request_uri, :secure => SITE_CONFIG['secure_cookies']}
determine_down_count
render :action => 'index'
end
end
def render_rss_feed
lambda do
render_rss_feed_for @todos, :feed => todo_feed_options,
@ -999,7 +1029,7 @@ class TodosController < ApplicationController
}
end
end
def todo_feed_options
options = Todo.feed_options(current_user)
options[:title] = @feed_title
@ -1049,7 +1079,7 @@ class TodosController < ApplicationController
def self.is_feed_request(req)
['rss','atom','txt','ics'].include?(req.parameters[:format])
end
def check_for_next_todo(todo)
# check if this todo has a related recurring_todo. If so, create next todo
new_recurring_todo = nil
@ -1060,15 +1090,15 @@ class TodosController < ApplicationController
# check if there are active todos belonging to this recurring todo. only
# add new one if all active todos are completed
if recurring_todo.todos.active.count == 0
# check for next todo either from the due date or the show_from date
date_to_check = todo.due.nil? ? todo.show_from : todo.due
# if both due and show_from are nil, check for a next todo from now
date_to_check = Time.zone.now if date_to_check.nil?
if recurring_todo.active? && recurring_todo.has_next_todo(date_to_check)
# shift the reference date to yesterday if date_to_check is furher in
# the past. This is to make sure we do not get older todos for overdue
# todos. I.e. checking a daily todo that is overdue with 5 days will
@ -1084,7 +1114,7 @@ class TodosController < ApplicationController
end
return new_recurring_todo
end
def get_due_id_for_calendar(due)
return "" if due.nil?
due_today_date = Time.zone.now
@ -1104,7 +1134,7 @@ class TodosController < ApplicationController
end
return new_due_id
end
def is_old_due_empty(id)
return 0 == count_old_due_empty(id)
end
@ -1255,7 +1285,7 @@ class TodosController < ApplicationController
source_view do |page|
page.calendar do
@old_due_empty = is_old_due_empty(@original_item_due_id)
@new_due_id = get_due_id_for_calendar(@todo.due)
@new_due_id = get_due_id_for_calendar(@todo.due)
end
page.tag do
@tag_name = params['_tag_name']
@ -1276,14 +1306,14 @@ class TodosController < ApplicationController
return false if context_name.blank?
true
end
def determine_non_uniq_todo
# for calendar view. TODO: unused
all_list_uniq_ids = (@due_today.map(&:id) + @due_this_week.map(&:id) +
@due_next_week.map(&:id) + @due_this_month.map(&:id) + @due_after_this_month.map(&:id)).uniq
all_list_count = @due_today.count + @due_this_week.count +
@due_next_week.count + @due_this_month.count + @due_after_this_month.count
return !( all_list_uniq_ids.length == all_list_count )
end
@ -1311,54 +1341,54 @@ class TodosController < ApplicationController
@prefs = prefs
@attributes = params['request'] && params['request']['todo'] || params['todo']
end
def attributes
@attributes
end
def show_from
@attributes['show_from']
end
def due
@attributes['due']
end
def project_name
@params['project_name'].strip unless @params['project_name'].nil?
end
def context_name
@params['context_name'].strip unless @params['context_name'].nil?
end
def tag_list
@params['tag_list']
end
def predecessor_list
@params['predecessor_list']
end
def parse_dates()
@attributes['show_from'] = @prefs.parse_date(show_from)
@attributes['due'] = @prefs.parse_date(due)
@attributes['due'] ||= ''
end
def project_specified_by_name?
return false unless @attributes['project_id'].blank?
return false if project_name.blank?
return false if project_name == 'None'
true
end
def context_specified_by_name?
return false unless @attributes['context_id'].blank?
return false if context_name.blank?
true
end
end
end

View file

@ -282,6 +282,12 @@ module ApplicationHelper
done_todos_context_path(@context)
when "projects"
done_todos_project_path(@project)
when "todos"
if source_view_is(:tag)
done_tag_path(@tag_name)
else
done_todos_path
end
else
done_todos_path
end
@ -293,6 +299,12 @@ module ApplicationHelper
all_done_todos_context_path(@context)
when "projects"
all_done_todos_project_path(@project)
when "todos"
if source_view_is(:tag)
all_done_tag_path(@tag_name)
else
all_done_todos_path
end
else
all_done_todos_path
end

View file

@ -18,8 +18,8 @@ parameters += "&_tag_name=#{@tag_name}" if @source_view == 'tag'
<% unless todo.completed? || todo.deferred? -%>
<li><%= remote_defer_menu_item(1, todo) %></li>
<li><%= remote_defer_menu_item(7, todo) %></li>
<li><%= remote_promote_to_project_menu_item(todo) %></li>
<% end -%>
<li><%= remote_promote_to_project_menu_item(todo) %></li>
</ul>
</li>
</ul>

View file

@ -1,5 +1,49 @@
---
de:
layouts:
toggle_notes: Notizen umschalten
next_actions_rss_feed: RSS-Feed kommende Aufgaben
mobile_navigation:
logout: Abmelden
feeds: Feeds
new_action: 0-Neue Aufgabe
starred: 4-Markiert
projects: 3-Projekte
tickler: Notizbuch
contexts: 2-Kontexte
home: 1-Home
toggle_notes_title: Alle Notizen umschalten
navigation:
manage_users_title: "Benutzer hinzuf\xC3\xBCgen oder entfernen"
recurring_todos: Sich wiederholende To-Dos
api_docs: REST API Docs
feeds: Feeds
starred: Markiert
notes_title: Alle Notizen anzeigen
stats: Statistiken
tickler_title: Notizbuch
manage_users: Benutzer verwalten
export_title: Daten importieren und exportieren
integrations_: Tracks integrieren
preferences: Einstellungen
feeds_title: "Liste der verf\xC3\xBCgbaren Feeds anzeigen"
calendar_title: "Kalender mit \xC3\xBCberf\xC3\xA4lligen Aufgaben"
starred_title: Markierte Aufgaben betrachten
tickler: Notizbuch
recurring_todos_title: Sich wiederholende To-Dos verwalten
completed_tasks: Erledigt
stats_title: Statistiken anzeigen
home_title: Start
organize: Organisieren
view: Betrachten
completed_tasks_title: "Vollst\xC3\xA4ndig"
home: Start
export: Export
contexts_title: Kontexte
calendar: Kalender
projects_title: Projekte
search: "Alle Eintr\xC3\xA4ge durchsuchen"
preferences_title: Meine Einstellungen
number:
format:
separator: ","
@ -34,107 +78,65 @@ de:
separator: .
precision:
delimiter: ","
layouts:
toggle_notes: Notizen umschalten
next_actions_rss_feed: RSS-Feed kommende Aufgaben
toggle_notes_title: Alle Notizen umschalten
mobile_navigation:
logout: Abmelden
feeds: Feeds
new_action: 0-Neue Aufgabe
starred: 4-Markiert
projects: 3-Projekte
tickler: Notizbuch
contexts: 2-Kontexte
home: 1-Home
navigation:
manage_users_title: "Benutzer hinzuf\xC3\xBCgen oder entfernen"
recurring_todos: Sich wiederholende To-Dos
api_docs: REST API Docs
feeds: Feeds
stats: Statistiken
starred: Markiert
notes_title: Alle Notizen anzeigen
tickler_title: Notizbuch
manage_users: Benutzer verwalten
export_title: Daten importieren und exportieren
integrations_: Tracks integrieren
preferences: Einstellungen
feeds_title: "Liste der verf\xC3\xBCgbaren Feeds anzeigen"
calendar_title: "Kalender mit \xC3\xBCberf\xC3\xA4lligen Aufgaben"
recurring_todos_title: Sich wiederholende To-Dos verwalten
completed_tasks: Erledigt
stats_title: Statistiken anzeigen
home_title: Start
tickler: Notizbuch
starred_title: Markierte Aufgaben betrachten
organize: Organisieren
view: Betrachten
completed_tasks_title: "Vollst\xC3\xA4ndig"
export: Export
contexts_title: Kontexte
home: Start
projects_title: Projekte
calendar: Kalender
preferences_title: Meine Einstellungen
search: "Alle Eintr\xC3\xA4ge durchsuchen"
common:
back: "Zur\xC3\xBCck"
third: Dritte
actions: Aktionen
add: "Hinzuf\xC3\xBCgen"
go_back: "Zur\xC3\xBCck"
logout: Abmelden
cancel: Abbrechen
none: Keine
second: Zweite
optional: optional
month: Monat
forum: Forum
notes: Notizen
server_error: Auf dem Server ist ein Fehler aufgetreten.
projects: Projekte
last: Letzte
action: Aktion
project: Projekt
contribute: Mitwirken
ok: Ok
first: Erste
website: Website
numbered_step: Schritt %{number}
fourth: Vierte
sort:
by_task_count_title: Nach Anzahl der Aufgaben sortieren
by_task_count_title_confirm: Sollen diese Projekte wirklich nach Anzahl der Aufgaben sortiert werden? Die bisherige Sortier-Reihenfolge wird damit &uuml;berschrieben.
alphabetically: Alphabetisch
sort: Sortieren
alphabetically_confirm: Sollen diese Projekte wirklich alphabetisch sortiert werden? Die bisherige Sortier-Reihenfolge wird damit &uuml;berschrieben.
alphabetically_title: Projekte alphabetisch sortieren
by_task_count: Nach Anzahl der Aufgaben
create: Erstellen
drag_handle: Verschieben
months: Monate
errors_with_fields: "Mit folgenden Feldern sind Probleme aufgetreten:"
context: Kontext
description: Beschreibung
contexts: Kontexte
bugs: Bugs
update: Aktualisieren
weeks: Woche
forth: Vierte
wiki: Wiki
ajaxError: Fehler beim Empfangen vom Server
search: Suchen
email: E-Mail
integrations:
opensearch_description: In Tracks suchen
applescript_next_action_prompt: "Beschreibung der n\xC3\xA4chsten Aufgabe:"
gmail_description: "Gadget, um Tracks als Gadget zu Googlemail hinzuzuf\xC3\xBCgen"
applescript_success_after_id: erstellt
applescript_success_before_id: "N\xC3\xA4chste neue Aufgabe mit ID"
data:
import_successful: Import war erfolgreich.
import_errors: Beim Import sind Fehler aufgetreten.
common:
back: "Zur\xC3\xBCck"
third: Dritte
recurring_todos: Wiederholenden Aktionen
actions: Aktionen
add: "Hinzuf\xC3\xBCgen"
previous: Vorherige
logout: Abmelden
go_back: "Zur\xC3\xBCck"
week: Woche
cancel: Abbrechen
none: Keine
second: Zweite
month: Monat
optional: optional
notes: Notizen
forum: Forum
server_error: Auf dem Server ist ein Fehler aufgetreten.
last: Letzte
action: Aktion
projects: Projekte
project: Projekt
contribute: Mitwirken
ok: Ok
website: Website
first: Erste
numbered_step: Schritt %{number}
errors_with_fields: "Mit folgenden Feldern sind Probleme aufgetreten:"
sort:
by_task_count_title: Nach Anzahl der Aufgaben sortieren
by_task_count_title_confirm: Sollen diese Projekte wirklich nach Anzahl der Aufgaben sortiert werden? Die bisherige Sortier-Reihenfolge wird damit &uuml;berschrieben.
alphabetically: Alphabetisch
alphabetically_title: Projekte alphabetisch sortieren
sort: Sortieren
alphabetically_confirm: Sollen diese Projekte wirklich alphabetisch sortiert werden? Die bisherige Sortier-Reihenfolge wird damit &uuml;berschrieben.
by_task_count: Nach Anzahl der Aufgaben
fourth: Vierte
create: Erstellen
months: Monate
todo: Aktione
contexts: Kontexte
context: Kontext
next: "N\xC3\xA4chste"
description: Beschreibung
drag_handle: Verschieben
update: Aktualisieren
weeks: Woche
bugs: Bugs
forth: Vierte
wiki: Wiki
ajaxError: Fehler beim Empfangen vom Server
search: Suchen
email: E-Mail
models:
project:
feed_title: Tracks-Projekte
@ -167,8 +169,8 @@ de:
due: F&auml;llig
preference:
show_hidden_projects_in_sidebar: Zeige Versteckte Projekte in der Sidebar
date_format: Datum Format
show_hidden_contexts_in_sidebar: "Zeige Versteckte Zusammenh\xC3\xA4nge in der Sidebar"
date_format: Datum Format
staleness_starts: Anfang des Abgestandenheit
mobile_todos_per_page: Aufgaben pro Seite (Mobile Version)
verbose_action_descriptors: "Ausf\xC3\xBChrlich Aktion Deskriptoren"
@ -177,8 +179,8 @@ de:
title_date_format: Titel Datumsformat
refresh: Aktualisierungsintverall (in Minuten)
week_starts: Woche startet am
due_style: "F\xC3\xA4llig stijl"
time_zone: Zeit Zone
due_style: "F\xC3\xA4llig stijl"
locale: Zahle
show_project_on_todo_done: Zur Projektseite wechseln, wenn To-Do abgeschlossen
sms_email: Per E-Mail
@ -222,18 +224,22 @@ de:
header:
one: "Konnte dieses %{model} Objekt nicht speichern: 1 Fehler."
other: "Konnte dieses %{model} Objekt nicht speichern: %{count} Fehler."
data:
import_successful: Import war erfolgreich.
import_errors: Beim Import sind Fehler aufgetreten.
stats:
tag_cloud_90days_title: Tag-Cloud-Aktionen in den letzten 90 Tagen
totals_active_project_count: Von diesen sind %{count} aktive Projekte
actions: Aktionen
tag_cloud_title: Tag-Cloud aller Aktionen
actions: Aktionen
tag_cloud_description: Diese Tag-Cloud beinhaltet Tags aller Aktionen (abgeschlossen, nicht abgeschlossen, sichtbar und/oder unsichtbar)
actions_avg_completion_time: Durchschnittlich hast du %{count} Tage gebraucht, um eine Aktion abzuschliessen.
actions_last_year_legend:
number_of_actions: Anzahl Aktionen
months_ago: Monate zuvor
totals_first_action: Seit deiner ersten Aktion am %{date}
actions_avg_completion_time: Durchschnittlich hast du %{count} Tage gebraucht, um eine Aktion abzuschliessen.
totals_action_count: hattest du insgesamt %{count} Aktionen
totals_deferred_actions: "von denen %{count} im Notizbuch zur\xC3\xBCckgestellt sind"
legend:
number_of_days: Anzahl vergangene Tage
actions: Aktionen
@ -242,60 +248,61 @@ de:
percentage: Prozentsatz
running_time: Laufzeit einer Aktion (Wochen)
months_ago: Monate zuvor
top10_longrunning: "Top 10 der am l\xC3\xA4ngsten laufenden Projekte"
actions_dow_30days_title: Wochentag (letzte 30 Tage)
current_running_time_of_incomplete_visible_actions: "Aktuelle Laufzeit unvollst\xC3\xA4ndiger sichtbarer Aufgaben"
running_time_legend:
actions: Aufgaben
percentage: Prozentsatz
weeks: "Vergangene Zeit einer Aktion (Wochen). Klick auf eine Leiste f\xC3\xBCr mehr Informationen."
totals_deferred_actions: "von denen %{count} im Notizbuch zur\xC3\xBCckgestellt sind"
top10_longrunning: "Top 10 der am l\xC3\xA4ngsten laufenden Projekte"
actions_avg_completed_30days: und %{count} durchschnittlich davon erledigt.
top5_contexts: Top 5 aller Kontexte
actions_lastyear_title: Aktionen der letzten 12 Monate
totals_actions_completed: "%{count} davon sind abgeschlossen."
totals_incomplete_actions: "Du hast %{count} unvollst\xC3\xA4ndige Aktionen"
totals_unique_tags: Von diesen Tags sind %{count} einmalig..
actions_avg_completed_30days: und %{count} durchschnittlich davon erledigt.
totals_visible_context_count: Von diesen sind %{count} sichtbare Kontexte
totals_blocked_actions: "%{count} h\xC3\xA4ngen vom Abschluss anderer Aktionen ab."
projects: Projekte
action_completion_time_title: Fertigstellungszeit (alle abgeschlossenen Aktionen)
actions_last_year: Aktionen im letzten Jahr
projects: Projekte
totals_context_count: Du hast %{count} Kontexte.
actions_day_of_week_title: Wochentag (alle Aktionen)
tags: Tags
totals_project_count: Du hast %{count} Projekte.
actions_min_max_completion_days: "Das Minimum/Maximum an Tagen einer Vervollst\xC3\xA4ndigung ist %{min}/%{max}."
actions_min_completion_time: "Die minimale Zeit betr\xC3\xA4gt %{time}."
no_tags_available: "keine Tags verf\xC3\xBCgbar"
running_time_all: "Aktuelle Laufzeit aller unvollst\xC3\xA4ndigen Aktionen."
tod30: Tageszeit (letzte 30 Tage)
top5_visible_contexts_with_incomplete_actions: "Top 5 der sichtbaren Kontexte mit unvollst\xC3\xA4ndigen Aktionen"
actions_30days_title: _Aktionen der letzten 30 Tage
tags: Tags
tag_cloud_90days_description: Diese Tag-Cloud beinhaltet Tags der Aktionen, die in den letzten 90 Tagen erstellt oder abgeschlossen wurden.
actions_further: und danach
running_time_all: "Aktuelle Laufzeit aller unvollst\xC3\xA4ndigen Aktionen."
time_of_day: Tageszeit (alle Aktionen)
tod30: Tageszeit (letzte 30 Tage)
more_stats_will_appear: "Weitere Statistiken werden verf\xC3\xBCgbar, wenn einige Aufgaben hinzugef\xC3\xBCgt wurden."
top5_visible_contexts_with_incomplete_actions: "Top 5 der sichtbaren Kontexte mit unvollst\xC3\xA4ndigen Aktionen"
totals_tag_count: Du hast %{count} Tags in Aktionen.
actions_30days_title: _Aktionen der letzten 30 Tage
totals_hidden_project_count: "%{count} sind versteckt"
top10_projects: Top 10 aller Projekte
click_to_return: "Klick auf %{link} um zur Statistikseite zur\xC3\xBCckzukehren."
spread_of_actions_for_all_context: Aufgabenverteilung aller Kontexte
totals_completed_project_count: und %{count} sind abgeschlossene Projekte.
top10_projects_30days: Top-10-Projekt der letzten 30 Tage
actions_selected_from_week: "Aktionen ausgew\xC3\xA4hlt ab Woche"
click_to_show_actions_from_week: Klick auf %{link} um die Aktionen von Woche %{week} und danach anzuzeigen.
top10_projects: Top 10 aller Projekte
actions_avg_created: In den letzten 12 Monaten hast du im Durchschnitt %{count} Aktionen erstellt
click_to_return: "Klick auf %{link} um zur Statistikseite zur\xC3\xBCckzukehren."
spread_of_running_actions_for_visible_contexts: Verteilung der laufenden Aufgaben aller sichtbaren Kontexte
spread_of_actions_for_all_context: Aufgabenverteilung aller Kontexte
other_actions_label: (andere)
top10_projects_30days: Top-10-Projekt der letzten 30 Tage
actions_avg_completed: und %{count} durchschnittlich davon monatlich erledigt
totals: Ingesamt
time_of_day_legend:
number_of_actions: Anzahl Aufgaben
time_of_day: Tageszeit
contexts: Kontexte
click_to_return_link: hier
totals_hidden_context_count: und %{count} sind versteckte Kontexte.
actions_avg_completed: und %{count} durchschnittlich davon monatlich erledigt
totals: Ingesamt
contexts: Kontexte
no_actions_selected: "Es sind keine Aufgaben ausgew\xC3\xA4hlt."
click_to_update_actions: Klicke auf eine Leiste in der Grafik um die Aktionen unten zu aktualisieren.
labels:
month_avg_completed: "%{months} Monat durchschnittlich fertig gestellt"
completed: Erledigt
@ -303,28 +310,27 @@ de:
avg_created: Durchschnittlich erstellt
avg_completed: Durchschnittlich fertiggestellt
created: Erstellt
no_actions_selected: "Es sind keine Aufgaben ausgew\xC3\xA4hlt."
click_to_update_actions: Klicke auf eine Leiste in der Grafik um die Aktionen unten zu aktualisieren.
running_time_all_legend:
actions: Aktionen
percentage: Prozentsatz
running_time: "Laufzeit einer Aktion (Wochen). Klick auf eine Leiste f\xC3\xBCr mehr Informationen."
actions_actions_avg_created_30days: In den letzten 30 Tagen hast du im Durchschnitt %{count} Aktionen erstellt
tod30_legend:
number_of_actions: Anzahl Aufgaben
time_of_day: Tageszeit
action_selection_title: TRACKS::Aktionsauswahl
actions_actions_avg_created_30days: In den letzten 30 Tagen hast du im Durchschnitt %{count} Aktionen erstellt
todos:
error_starring_recurring: Konnte die Hervorhebung der wiederkehrenden Aufgabe \'%{description}\' nicht durchf&uuml;hren
show_from: Anzeigen ab dem
error_starring_recurring: Konnte die Hervorhebung der wiederkehrenden Aufgabe \'%{description}\' nicht durchf&uuml;hren
recurring_action_deleted: Die Aktion wurde gel&ouml;scht. Da dies eine wiederkehrende Aktion ist, wurde eine neue erstellt.
completed_actions: Erledigte Aufgaben
completed_rest_of_previous_month: Fertiggestellt den Rest des Vormonats
blocked_by: Blockiert durch %{predecessors}
completed_recurring: Abgeschlossene wiederkehrende To-Dos
added_new_next_action: Neue Aktion angelegt
blocked_by: Blockiert durch %{predecessors}
defer_date_after_due_date: "Zur\xC3\xBCckstellungsdatum nach Ablaufdatum. Bitte passe das Ablaufdatum an, dass es vor dem Zur\xC3\xBCckstellungsdatum liegt."
star_action: Aktion markieren
completed_recurrence_completed: Es gibt keine weitere Aktion nach der soeben gel&ouml;schten. Die Wiederholung ist abgeschlossen.
defer_date_after_due_date: "Zur\xC3\xBCckstellungsdatum nach Ablaufdatum. Bitte passe das Ablaufdatum an, dass es vor dem Zur\xC3\xBCckstellungsdatum liegt."
unable_to_add_dependency: Abh&auml;ngigkeit nicht hinzuf&uuml;gbar
done: Erledigt?
star_action_with_description: Aktion '%{description}' markieren
@ -332,27 +338,28 @@ de:
completed: Erledigt
no_deferred_actions_with: "Keine zur\xC3\xBCckgestellten Aktionen mit dem Tag '%{tag_name}'"
no_hidden_actions: Momentan sind keine versteckten Aufgaben vorhanden
edit_action_with_description: Aktion '%{description}' bearbeiten
action_due_on: "(Aktion f\xC3\xA4llig am %{date})"
edit_action_with_description: Aktion '%{description}' bearbeiten
tags: Tags (Komma-separiert)
archived_tasks_title: TRACKS::Archivierte erledigte Aufgaben
remove_dependency: Abh&auml;ngigkeit l&ouml;schen (l&ouml;scht nicht die Aufgabe)
list_incomplete_next_actions: Unerledigte Folge-Aufgaben anzeigen
action_deleted_success: Die n&auml;chste Aktion erfolgreich gel&ouml;scht
tags: Tags (Komma-separiert)
delete_recurring_action_title: "Wiederkehrende Aktion '%{description}' l\xC3\xB6schen"
context_changed: Kontext zu %{name} gewechselt
new_related_todo_created: "Eine neue To-Do wurde hinzugef\xC3\xBCgt, die zu dieser wiederkehrenden To-Do geh\xC3\xB6rt"
mobile_todos_page_title: Alle Aufgaben
add_another_dependency: "F\xC3\xBCgen Sie eine andere Abh\xC3\xA4ngigkeit"
removed_predecessor: "%{successor} entfernt als Abh\xC3\xA4ngigkeit von %{predecessor}."
new_related_todo_created: "Eine neue To-Do wurde hinzugef\xC3\xBCgt, die zu dieser wiederkehrenden To-Do geh\xC3\xB6rt"
context_changed: Kontext zu %{name} gewechselt
mobile_todos_page_title: Alle Aufgaben
delete_recurring_action_title: "Wiederkehrende Aktion '%{description}' l\xC3\xB6schen"
recurring_actions_title: TRACKS::Wiederkehrende Aktionen
removed_predecessor: "%{successor} entfernt als Abh\xC3\xA4ngigkeit von %{predecessor}."
next_action_needed: Es muss mindestens eine folgende Aktion angelegt werden
action_saved: Aktion gespeichert
scheduled_overdue: "Planm\xC3\xA4\xC3\x9Fig angezeigt vor %{days} Tagen"
action_saved: Aktion gespeichert
action_deleted_error: Fehler beim L&ouml;schen der Aufgabe
edit_action: Aktion bearbeiten
added_new_context: "Neuer Kontext hinzugef\xC3\xBCgt"
next_actions_description: "Filter:"
older_completed_items: "&Auml;ltere erledigte Aufgaben"
list_incomplete_next_actions_with_limit: Zeige die letzten %{count} unerledigten Folge-Aufgaben
set_to_pending: "%{task} als ausstehend markiert"
added_new_project: "Neues Projekt hinzugef\xC3\xBCgt"
@ -360,37 +367,39 @@ de:
completed: Aufgaben erledigt
due_today: heute f&auml;llig
due_within_a_week: diese Woche f&auml;llig
older_completed_items: "&Auml;ltere erledigte Aufgaben"
task_list_title: TRACKS::Aufgaben anzeigen
append_in_this_project: in diesem Projekt
error_deleting_item: Beim L&ouml;schen von %{description} trat ein Fehler auf
task_list_title: TRACKS::Aufgaben anzeigen
no_actions_due_this_week: Keine zu erledigenden Aufgaben f&uuml;r den Rest der Woche
no_recurring_todos: Im Augenblick gibt es keine wiederkehrenden To-Dos
error_completing_todo: Beim Abschliessen/Aktivieren der wiederkehrenden To-Do %{description} ist ein Fehler aufgetreten
no_recurring_todos: Im Augenblick gibt es keine wiederkehrenden To-Dos
recurring_pattern_removed: Das Wiederauftreten Muster ist aus entfernt %{count}
convert_to_project: In Projekt umwandeln
no_deferred_pending_actions: Momentan sind keine aufgeschobenen oder ausstehenden Aufgaben vorhanden.
delete_recurring_action_confirm: Soll die wiederkehrende Aktion '%{description}' wirklich gel&ouml;scht werden?
completed_last_day: In den letzten 24 Stunden erledigt
show_in_days: Anzeigen in %{days} Tagen
no_project: --Kein Projekt--
show_in_days: Anzeigen in %{days} Tagen
error_saving_recurring: Es gab einen Fehler beim Speichern der wiederkehrenden todo '%{description}'
completed_more_than_x_days_ago: Vor mehr als %{count} Tagen erledigt
new_related_todo_created_short: hat einen neuen todo
feed_title_in_context: im Kontext '%{context}'
all_completed: Alle abgeschlossenen Aktionen
older_than_days: "&Auml;lter als %{count} Tage"
completed_tagged_page_title: "TRACKS:: Erledigte Aufgaben mit Tag %{tag_name}"
edit: Bearbeiten
pending: Ausstehend
completed_actions_with: Abgeschlossene Aktionen mit dem Tag %{tag_name}
feed_title_in_project: im Projekt '%{project}'
deleted_success: "Die Aktion wurde erfolgreich gel\xC3\xB6scht."
completed_tasks_title: TRACKS::Erledigte Aufgaben
feed_title_in_project: im Projekt '%{project}'
clear_due_date: F&auml;lligkeitsdatum leeren
error_removing_dependency: "Beim Entfernen der Abh\xC3\xA4ngigkeit ist ein Fehler aufgetreten"
hidden_actions: Verstecke Aufgaben
deferred_actions_with: "Zur\xC3\xBCckgestellte Aktionen mit dem Tag '%{tag_name}'"
was_due_on_date: war am %{date} f&auml;llig
show_on_date: Anzeigen am %{date}
recurrence_period: Wiederholungszeitraum
deferred_actions_with: "Zur\xC3\xBCckgestellte Aktionen mit dem Tag '%{tag_name}'"
confirm_delete: "Bist du sicher, dass du die Aktion '%{description}' l\xC3\xB6schen m\xC3\xB6chtest?"
recurring_deleted_success: "Die wiederkehrende Aktion wurde erfolgreich gel\xC3\xB6scht."
next_actions_title: TRACKS::Weitere Aufgaben
@ -398,17 +407,17 @@ de:
deferred_tasks_title: TRACKS::Notizbuch
no_completed_actions_with: Keine abgeschlossenen Aktionen mit dem Tag '%{tag_name}'
clear_show_from_date: Datum leeren
unresolved_dependency: "Der Wert, den Sie in die Abh\xC3\xA4ngigkeit Feld eingegeben nicht zu einer bestehenden Aktion zu l\xC3\xB6sen. Dieser Wert wird nicht mit dem Rest der Aktion gerettet werden. Weiter gehen?"
calendar_page_title: TRACKS::Kalender
in_hidden_state: als versteckt markiert
show_today: Heute anzeigen
no_actions_found_title: Keine Aktionen gefunden
unresolved_dependency: "Der Wert, den Sie in die Abh\xC3\xA4ngigkeit Feld eingegeben nicht zu einer bestehenden Aktion zu l\xC3\xB6sen. Dieser Wert wird nicht mit dem Rest der Aktion gerettet werden. Weiter gehen?"
next_actions_due_date:
overdue_by: "\xC3\x9Cberf\xC3\xA4llig mit %{days} Tag"
due_today: "Heute f\xC3\xA4llig"
due_in_x_days: "F\xC3\xA4llig in %{days} Tagen"
overdue_by_plural: "\xC3\x9Cberf\xC3\xA4llig mit %{days} Tagen"
due_tomorrow: "F\xC3\xA4llig morgen"
show_today: Heute anzeigen
no_actions_found_title: Keine Aktionen gefunden
completed_last_x_days: In den letzten %{count} Tagen erledigt
no_actions_with: "Im Augenblick gibt es keine unvollst\xC3\xA4ndigen Aktionen mit dem Tag '%{tag_name}'"
defer_x_days:
@ -416,43 +425,44 @@ de:
other: "%{count} Tage zur\xC3\xBCckstellen"
added_new_next_action_singular: Neue weiterf&uuml;hrende Aufgabe angelegt
no_completed_actions: Momentan sind keine erledigten Aufgaben vorhanden.
feeds:
completed: "Erledigt: %{date}"
due: "F&auuml;llig: %{date}"
deferred_pending_actions: Aufgeschobene/ausstehende Aufgaben
has_x_pending:
one: Hat eine ausstehende Aktion
other: Hat %{count} ausstehende Aktionen
feeds:
completed: "Erledigt: %{date}"
due: "F&auuml;llig: %{date}"
recurring_todos: Wiederkehrende To-Dos
delete_action: "Aktion l\xC3\xB6schen"
error_deleting_recurring: "Beim L\xC3\xB6schen der wiederkehrenden To-Do %{description} ist ein Fehler aufgetreten"
recurring_todos: Wiederkehrende To-Dos
delete: "L\xC3\xB6schen"
no_last_completed_actions: Keine abgeschlossene Aktionen gefunden
drag_action_title: "Auf andere Aktion ziehen, um sie als Abh\xC3\xA4ngigkeit zu definieren"
cannot_add_dependency_to_completed_todo: "Kann nicht hinzugef\xC3\xBCgt werden diese Aktion als eine Abh\xC3\xA4ngigkeit zu einer abgeschlossenen Aktion!"
action_marked_complete: Die Aktion <strong>'%{description}'</strong> wurde als <strong>%{completed}</strong> markiert.
depends_on: "H\xC3\xA4ngt ab von"
tickler_items_due:
one: Ein Notizbuch-Eintrag ist nun f&auml;llig - lade die Seite neu, um sie zu sehen.
other: "%{count} Notizbuch-Eintr&auml;ge sind nun f&auml;llig - lade die Seite neu, um sie zu sehen."
depends_on: "H\xC3\xA4ngt ab von"
action_marked_complete: Die Aktion <strong>'%{description}'</strong> wurde als <strong>%{completed}</strong> markiert.
added_new_next_action_plural: Neue weiterf&uuml;hrende Aufgaben angelegt
new_related_todo_not_created_short: nicht schaffen todo
completed_today:
one: Du hast heute bereits eine Aufgabe erledigt.
other: Du hast heute bereits %{count} Aufgaben erledigt.
new_related_todo_not_created_short: nicht schaffen todo
added_new_next_action_plural: Neue weiterf&uuml;hrende Aufgaben angelegt
completed_rest_of_week: Fertiggestellt den Rest dieser Woche
error_starring: Konnte die Hervorhebung von \'%{description}\' nicht durchf&uuml;hren
calendar:
get_in_ical_format: Diesen Kalender im iCal Format herunterladen
due_next_week: N&auml;chste Woche f&auml;llig
no_actions_due_next_week: Keine Aufgaben f&uuml;r die kommende Woche
due_this_week: Die restliche Woche zu erledigen
no_actions_due_next_week: Keine Aufgaben f&uuml;r die kommende Woche
due_today: Heute zu erledigen
no_actions_due_today: Heute sind keine Aufgaben f&auml;llig
due_next_month_and_later: Im %{month} und sp&auml;ter f&auml;llig
no_actions_due_after_this_month: Nach diesem Monat sind keine Aufgaben f&auml;llig
due_this_month: Im %{month} f&auml;llig
no_actions_due_this_month: Keine Aktionen f&uuml;r den Rest des Monats
error_starring: Konnte die Hervorhebung von \'%{description}\' nicht durchf&uuml;hren
show_tomorrow: Morgen anzeigen
no_completed_recurring: Im Augenblick gibt es keine abgeschlossenen wiederkehrenden To-Dos
recurrence:
ends_on_date: Endet am %{date}
every_work_day: Jeden Arbeitstag
@ -468,37 +478,13 @@ de:
show_option_always: immer
pattern:
third: Drittel
every_n: jeden %{n}
second: zweite
on_day_n: am Tag %{n}
every_xth_day_of_every_n_months: "jedes %{x} %{day} jedes %{n_months} \xE2\x80\x8B"
weekly: "w\xC3\xB6chentlich"
from: von
last: zuletzt
every_day: jeden Tag
times: "f\xC3\xBCr %{number} Zeiten"
the_xth_day_of_month: der %{x} %{day} von %{month}
on_work_days: an Wochentagen
first: erste
show: Show
every_year_on: jedes Jahr in %{date}
fourth: vierte
due: "F\xC3\xA4llig"
until: bis
every_month: jeden Monat
day_names:
- Sonntag
- Montag
- Dienstag
- Mittwoch
- Donnerstag
- Freitag
- Samstag
month_names:
-
- Januar
- Februar
- März
- !binary |
TcOkcno=
- April
- Mai
- Juni
@ -508,103 +494,92 @@ de:
- Oktober
- November
- Dezember
every_n: jeden %{n}
on_day_n: am Tag %{n}
second: zweite
every_xth_day_of_every_n_months: "jedes %{x} %{day} jedes %{n_months} \xE2\x80\x8B"
weekly: "w\xC3\xB6chentlich"
from: von
last: zuletzt
every_day: jeden Tag
the_xth_day_of_month: der %{x} %{day} von %{month}
times: "f\xC3\xBCr %{number} Zeiten"
every_year_on: jedes Jahr in %{date}
first: erste
show: Show
day_names:
- Sonntag
- Montag
- Dienstag
- Mittwoch
- Donnerstag
- Freitag
- Samstag
on_work_days: an Wochentagen
fourth: vierte
due: "F\xC3\xA4llig"
until: bis
every_month: jeden Monat
yearly_every_x_day: "Jeden %{day}. %{month} "
recurrence_on_options: Setze Wiederholung auf
daily_every_number_day: Alle %{number} Tage
show_options: To-Do anzeigen
ends_on: Endet am
weekly_every_number_week: Kehrt jede %{number}. Woche wieder am
no_end_date: Kein Enddatum
day_x_on_every_x_month: Tag %{day} in jedem %{month}. Monat
yearly_options: "Einstellungen f\xC3\xBCr sich j\xC3\xA4hrlich wiederholende Aktionen"
show_days_before: "%{days} Tage bevor die To-Do f\xC3\xA4llig ist"
yearly_every_xth_day: Den %{day} %{day_of_week} des %{month}
from_tickler: the date todo comes from tickler (no due date set)
monthly_every_xth_day: Der %{day} %{day_of_week} eines jeden %{month}. Monats
no_end_date: Kein Enddatum
yearly_every_xth_day: Den %{day} %{day_of_week} des %{month}
day_x_on_every_x_month: Tag %{day} in jedem %{month}. Monat
yearly: "J\xC3\xA4hrlich"
monthly_every_xth_day: Der %{day} %{day_of_week} eines jeden %{month}. Monats
tagged_page_title: TRACKS::Als '%{tag_name}' markiert
no_completed_recurring: Im Augenblick gibt es keine abgeschlossenen wiederkehrenden To-Dos
added_dependency: "%{dependency} als Abh&auml;ngigkeit hinzugef&uuml;gt."
all_completed_tagged_page_title: "TRACKS:: Alle erledigten Aufgaben mit Tag %{tag_name}"
no_deferred_actions: Zur Zeit sind keine zur&uuml;ckgestellten Aktionen vorhanden.
completed_rest_of_month: Fertiggestellt den Rest des Monats
recurrence_completed: Nach dieser wiederkehrenden Aktion, die du gerade abgeschlossen hast, folgt keine mehr. Die Wiederholung endet hiermit
no_actions_found: "Momentan gibt es keine unvollst\xC3\xA4ndigen Aktionen."
in_pending_state: und als ausstehend markiert
error_toggle_complete: "K\xC3\xB6nnte nicht diese Marke todo komplett"
due: F&auml;llig
action_marked_complete_error: Die Aktion <strong>'%{description}'</strong> wurde aufgrund eines Fehlers NICHT als <strong>%{completed}</strong> markiert.
action_saved_to_tickler: Aktion im Notizbuch gespeichert
recurring_action_saved: Wiederkehrende Aktion gespeichert
depends_on_separate_with_commas: H&auml;ngt ab von (Komma-separiert)
completed_in_archive:
one: Es befindet sich eine erledigte Aufgabe im Archiv.
other: Es befinden sich %{count} erledigte Aufgaben im Archiv.
no_incomplete_actions: Es gibt keine unerledigten Aufgaben
depends_on_separate_with_commas: H&auml;ngt ab von (Komma-separiert)
action_saved_to_tickler: Aktion im Notizbuch gespeichert
recurring_action_saved: Wiederkehrende Aktion gespeichert
to_tickler: ", im Notizbuch hinterlegt"
next_actions_description_additions:
completed: In den letzten %{count} Tagen
due_date: mit einem Datum %{due_date} oder fr&uuml;her
overdue: "&Uuml;berf&auml;llig"
add_new_recurring: "F\xC3\xBCge eine neue wiederkehrende Aktion hinzu"
no_incomplete_actions: Es gibt keine unerledigten Aufgaben
notes:
delete_item_title: Eintrag l&ouml;schen
delete_note_title: Notiz '%{id}' l&ouml;schen
delete_confirmation: "Bist du sicher, dass du die Notiz '%{id}' l\xC3\xB6schen m\xC3\xB6chtest?"
deleted_note: "Notiz '%{id}' l\xC3\xB6schen"
note_link_title: Notiz %{id} anzeigen
show_note_title: Notiz anzeigen
deleted_note: "Notiz '%{id}' l\xC3\xB6schen"
note_location_link: "In:"
edit_item_title: Eintrag bearbeiten
note_header: Notiz %{id}
no_notes_available: "Derzeit gibt es keine Notizen: f\xC3\xBCge Notizen von der jeweiligen Projektseite hinzu."
note_header: Notiz %{id}
delete_note_confirm: Soll die Notiz '%{id}' wirklich gel&ouml;scht werden?
projects:
deferred_actions: "Aufgeschobene Aufgaben f\xC3\xBCr dieses Projekt"
was_marked_hidden: wurde als verborgen markiert
edit_project_title: Projekt bearbeiten
default_tags_removed_notice: Standard-Tags entfernt
default_context_set: Standard-Kontext des Projekts auf %{default_context} gesetzt
no_actions_in_project: "Momentan gibt es keine unvollst\xC3\xA4ndigen Aktionen in diesem Projekt"
hide_form: Fomular verstecken
page_title: "TRACKS::Projekt: %{project}"
no_notes_attached: "Im Augenblick sind keine Notizen mit diesem Projekt verkn\xC3\xBCpft."
deferred_actions_empty: "Es gibt keine aufgeschobenen Aufgaben f\xC3\xBCr dieses Projekt"
this_project: Dieses Projekt
project_state: Projekt ist %{state}
show_form_title: Neues Projekt anlegen
to_new_project_page: Zu neuem Projekt weiterleiten
todos_append: an dieses Projekt
notes: Notizen
no_projects: Keine Projekte vorhanden
hide_form_title: Formular verstecken
notes_empty: "Es gibt keine Notizen f\xC3\xBCr dieses Projekt"
with_no_default_context: hat keinen Standardwert Kontext
delete_project: Projekt l&ouml;schen
completed_actions_empty: "Es gibt keine erledigten Aufgaben f\xC3\xBCr dieses Projekt"
show_form: Projekt erstellen
actions_in_project_title: Die Aktionen in diesem Projekt
delete_project_confirmation: Soll das Projekt '%{name}' wirklich gel&ouml;scht werden?
with_default_context: mit einem Standard-Rahmen von '%{context_name}'
set_default_tags_notice: Standard-Tags des Projekts auf %{default_tags} setzen
with_default_tags: und mit '%{tags}' als Standard-Tags
project_saved_status: Projekt gespeichert
is_active: ist aktiv
completed_projects: Abgeschlossene Projekte
add_project: Projekt hinzuf&uuml;gen
settings: Einstellungen
list_projects: TRACKS::Projektliste
add_note: "Notiz hinzuf\xC3\xBCgen"
hidden_projects: Versteckte Projekte
delete_project_title: Projekt l&ouml;schen
default_context_removed: Standard-Kontext entfernt
add_note_submit: "Notiz hinzuf\xC3\xBCgen"
completed_actions: "Erledigte Aufgaben f\xC3\xBCr dieses Projekt"
was_marked_complete: wurde als erledigt markiert
active_projects: Aktive Projekte
status_project_name_changed: "Projektname ge\xC3\xA4ndert"
no_default_context: Dieses Projekt hat keinen Standard-Kontext
with_no_default_tags: und hat keinen Standardwert Tags
edit_project_settings: Edit Project Settings
default_context: Der Standard-Kontext dieses Projektes ist %{context}
state: Dieses Projekt ist %{state}
states:
hidden_plural: Versteckte
completed: Erledigt
completed_plural: Erledigte
visible_plural: Sichtbare
active_plural: Aktive
visible: Sichtbar
active: Aktiv
hidden: Versteckt
time:
am: vormittags
formats:
@ -614,15 +589,58 @@ de:
month_day: "%d. %B"
long: "%A, %d. %B %Y, %H:%M Uhr"
pm: nachmittags
states:
hidden_plural: Versteckte
completed: Erledigt
completed_plural: Erledigte
visible_plural: Sichtbare
visible: Sichtbar
active_plural: Aktive
active: Aktiv
hidden: Versteckt
projects:
deferred_actions: "Aufgeschobene Aufgaben f\xC3\xBCr dieses Projekt"
was_marked_hidden: wurde als verborgen markiert
edit_project_title: Projekt bearbeiten
default_tags_removed_notice: Standard-Tags entfernt
default_context_set: Standard-Kontext des Projekts auf %{default_context} gesetzt
no_actions_in_project: "Momentan gibt es keine unvollst\xC3\xA4ndigen Aktionen in diesem Projekt"
page_title: "TRACKS::Projekt: %{project}"
hide_form: Fomular verstecken
this_project: Dieses Projekt
project_state: Projekt ist %{state}
show_form_title: Neues Projekt anlegen
to_new_project_page: Zu neuem Projekt weiterleiten
no_notes_attached: "Im Augenblick sind keine Notizen mit diesem Projekt verkn\xC3\xBCpft."
deferred_actions_empty: "Es gibt keine aufgeschobenen Aufgaben f\xC3\xBCr dieses Projekt"
no_last_completed_projects: Keine abgeschlossene Projekte gefunden
notes: Notizen
todos_append: an dieses Projekt
no_projects: Keine Projekte vorhanden
hide_form_title: Formular verstecken
notes_empty: "Es gibt keine Notizen f\xC3\xBCr dieses Projekt"
with_no_default_context: hat keinen Standardwert Kontext
delete_project: Projekt l&ouml;schen
completed_actions_empty: "Es gibt keine erledigten Aufgaben f\xC3\xBCr dieses Projekt"
delete_project_confirmation: Soll das Projekt '%{name}' wirklich gel&ouml;scht werden?
with_default_context: mit einem Standard-Rahmen von '%{context_name}'
show_form: Projekt erstellen
actions_in_project_title: Die Aktionen in diesem Projekt
add_project: Projekt hinzuf&uuml;gen
set_default_tags_notice: Standard-Tags des Projekts auf %{default_tags} setzen
settings: Einstellungen
with_default_tags: und mit '%{tags}' als Standard-Tags
list_projects: TRACKS::Projektliste
project_saved_status: Projekt gespeichert
add_note: "Notiz hinzuf\xC3\xBCgen"
is_active: ist aktiv
completed_projects: Abgeschlossene Projekte
hidden_projects: Versteckte Projekte
delete_project_title: Projekt l&ouml;schen
default_context_removed: Standard-Kontext entfernt
add_note_submit: "Notiz hinzuf\xC3\xBCgen"
completed_actions: "Erledigte Aufgaben f\xC3\xBCr dieses Projekt"
was_marked_complete: wurde als erledigt markiert
default_context: Der Standard-Kontext dieses Projektes ist %{context}
active_projects: Aktive Projekte
status_project_name_changed: "Projektname ge\xC3\xA4ndert"
no_default_context: Dieses Projekt hat keinen Standard-Kontext
with_no_default_tags: und hat keinen Standardwert Tags
state: Dieses Projekt ist %{state}
edit_project_settings: Edit Project Settings
errors:
user_unauthorized: "401 Unauthorized: Nur administrative Benutzer d\xC3\xBCrfen auf diese Funktion zugreifen."
preferences:
staleness_starts_after: Abgestandenheit startet nach %{days} Tagen
open_id_url: "Deine OpenID-URL lautet:"
@ -631,11 +649,11 @@ de:
page_title: TRACKS::Einstellungen
title: Deine Einstellungen
token_description: "Token (f\xC3\xBCr die Verwendung in Feeds und der API)"
show_number_completed: "Zeige %{number} erledigte Eintr\xC3\xA4ge"
is_false: Nein
is_true: Ja
show_number_completed: "Zeige %{number} erledigte Eintr\xC3\xA4ge"
edit_preferences: Einstellungen bearbeiten
page_title_edit: "TRACKS::Einstellungen \xC3\xA4ndern"
is_true: Ja
sms_context_none: Keine
generate_new_token: Neues Token generieren
token_header: Dein Token
@ -643,14 +661,14 @@ de:
authentication_header: Deine Authentifizierung
change_authentication_type: "Authentifzierungsart \xC3\xA4ndern"
generate_new_token_confirm: "Bist du sicher? Wenn du ein neues Token generierst, wird dies das alte Token ersetzen und jegliche externe Nutzung st\xC3\xB6ren, die das alte Token verwendet."
errors:
user_unauthorized: "401 Unauthorized: Nur administrative Benutzer d\xC3\xBCrfen auf diese Funktion zugreifen."
date:
month_names:
-
- Januar
- Februar
- März
- !binary |
TcOkcno=
- April
- Mai
- Juni
@ -660,6 +678,10 @@ de:
- Oktober
- November
- Dezember
order:
- :day
- :month
- :year
abbr_day_names:
- So
- Mo
@ -668,10 +690,6 @@ de:
- Do
- Fr
- Sa
order:
- :day
- :month
- :year
formats:
only_day: "%e"
default: "%d.%m.%Y"
@ -713,8 +731,8 @@ de:
send_feedback: Senden Sie Feedback zu %{version}
shared:
multiple_next_actions: Mehrere neue Aufgaben (eine pro Zeile)
hide_form: Formular verstecken
toggle_single: Weitere Aktion erstellen
hide_form: Formular verstecken
add_action: "Aufgabe hinzuf\xC3\xBCgen"
add_actions: "Aufgaben hinzuf\xC3\xBCgen"
tags_for_all_actions: "Tags f\xC3\xBCr alle Aufgaben (mit Kommas trennen)"
@ -726,71 +744,71 @@ de:
toggle_multi_title: "Zwischen Einzel- und Mehrfachformular f\xC3\xBCr neue Aufgaben umschalten"
hide_action_form_title: "Formular f\xC3\xBCr neue Aufgaben verstecken"
users:
auth_type_update_error: "Beim &Auml;ndern der Authentifizierung trat ein Fehler auf: %{error_messages}"
destroy_successful: "Benutzer %{login} wurde erfolgreich gel\xC3\xB6scht"
successfully_deleted_user: Benutzer %{username} erfolgreich gel&ouml;scht.
total_contexts: Alle Kontexte
failed_to_delete_user: L&ouml;schen des Benutzers %{username} fehlgeschlagen
first_user_heading: "Willkommen bei TRACKS. Als erstes legen Sie bitte einen Administrator-Zugang an:"
openid_url_verified: Die URL %{url} wurde erfolgreich als Identit&auml;t verifiziert und Deine Authentifizierung auf OpenID umgestellt.
auth_type_update_error: "Beim &Auml;ndern der Authentifizierung trat ein Fehler auf: %{error_messages}"
successfully_deleted_user: Benutzer %{username} erfolgreich gel&ouml;scht.
new_token_generated: Neuer Token erfolgreich generiert
total_projects: Alle Projekte
signup_successful: Benutzer %{username} erfolgreich angelegt.
new_token_generated: Neuer Token erfolgreich generiert
change_password_submit: "Passwort \xC3\xA4ndern"
no_signups_title: TRACKS::Anmeldung nicht erlaubt
user_created: Benutzer angelegt.
account_signup: Accounteinrichtung
manage_users: Benutzer verwalten
account_signup: Accounteinrichtung
password_updated: Passwort aktualisiert.
desired_login: "Gew\xC3\xBCnschter Benutzername"
confirm_password: "Passwort best\xC3\xA4tigen"
new_user_heading: "Einen neuen Benutzer anlegen:"
signup: Registrieren
auth_type_updated: Authentifizierungs-Art erfolgreich ge&auml;ndert.
total_actions: Alle Aufgaben
choose_password: "Passwort w\xC3\xA4hlen"
change_password_title: TRACKS::Passwort &auml;ndern
desired_login: "Gew\xC3\xBCnschter Benutzername"
change_auth_type_title: TRACKS::Authentifizierungstyp &auml;ndern
change_password_prompt: "Gib dein neues Passwort in die unten stehenden Felder ein und klicke auf 'Passwort \xC3\xA4ndern' um dein altes Passwort durch das neue zu ersetzen."
password_confirmation_label: "Passwort best\xC3\xA4tigen"
destroy_error: "Beim L\xC3\xB6schen des Benutzers %{login} ist ein Fehler aufgetreten."
choose_password: "Passwort w\xC3\xA4hlen"
change_password_title: TRACKS::Passwort &auml;ndern
label_auth_type: Authentifizierungsart
new_password_label: Neues Passwort
register_with_cas: Mit deinem CAS-Benutzernamen
new_user_title: TRACKS::Als Administrator anmelden
destroy_user: "Benutzer l\xC3\xB6schen"
total_users_count: Derzeit existieren %{count} Benutzer
new_user_title: TRACKS::Als Administrator anmelden
destroy_confirmation: "Achtung: der Benutzer '%{login}' wird mit all seinen Aufgaben, Kontexten, Projekten und Notizen gel\xC3\xB6scht. Bist du sicher, dass du fortfahren m\xC3\xB6chtest?"
signup_new_user: Neuen Benutzer anlegen
auth_change_submit: "Authentifizierungsart \xC3\xA4ndern"
openid_ok_pref_failed: Die URL %{url} wurde erfolgreich als Identit&auml;t verifiziert, beim Speichern der Einstellungen trat jedoch ein Fehler auf.
identity_url: Identity-URL
change_authentication_type: "Authentifizierungsart \xC3\xA4ndern"
identity_url: Identity-URL
auth_change_submit: "Authentifizierungsart \xC3\xA4ndern"
total_notes: Alle Notizen
select_authentication_type: "W\xC3\xA4hle deine neue Authentifizierungsart und klicke 'Authentifizierungsart \xC3\xA4ndern' an, um deine aktuellen Einstellungen zu \xC3\xBCberschreiben."
feedlist:
choose_context: "Kontext f\xC3\xBCr den Feed w\xC3\xA4hlen"
actions_due_today: "Heute oder fr\xC3\xBCher f\xC3\xA4llig"
legend: "Legende:"
rss_feed: RSS-Feed
ical_feed: iCal-Feed
legend: "Legende:"
all_contexts: Alle Kontexte
choose_project: "Projekt f\xC3\xBCr den Feed w\xC3\xA4hlen"
all_projects: Alle Projekte
project_needed: Es muss mindestens ein Projekt existieren, bevor ein Feed abonniert werden kann.
select_feed_for_project: "Feed f\xC3\xBCr dieses Projekt ausw\xC3\xA4hlen"
active_projects_wo_next: Aktive Projekte ohne ausstehende Aufgaben
project_needed: Es muss mindestens ein Projekt existieren, bevor ein Feed abonniert werden kann.
active_starred_actions: Alle markierten, aktiven Aufgaben
select_feed_for_context: "Feed f\xC3\xBCr diesen Kontext ausw\xC3\xA4hlen"
projects_and_actions: Aktive Projekte und deren Aufgaben
context_needed: Es muss mindestens ein Kontext existieren, bevor ein Feed abonniert werden kann.
select_feed_for_context: "Feed f\xC3\xBCr diesen Kontext ausw\xC3\xA4hlen"
actions_due_next_week: "In den n\xC3\xA4chsten 7 Tagen oder fr\xC3\xBCher f\xC3\xA4llige Aufgaben"
notice_incomplete_only: "Hinweis: Alle Feeds zeigen nur Aufgaben, die noch nicht als erledigt markiert wurden."
actions_completed_last_week: In den letzten 7 Tagen abgeschlossene Aufgaben
context_centric_actions: "Feeds f\xC3\xBCr unvollst\xC3\xA4ndige Aufgaben in einem bestimmten Kontext"
plain_text_feed: Plain-Text-Feed
last_fixed_number: Die letzten %{number} Aufgaben
all_actions: Alle Aufgaben
actions_completed_last_week: In den letzten 7 Tagen abgeschlossene Aufgaben
context_centric_actions: "Feeds f\xC3\xBCr unvollst\xC3\xA4ndige Aufgaben in einem bestimmten Kontext"
project_centric: "Feeds f\xC3\xBCr unvollst\xC3\xA4ndige Aufgaben in einem bestimmten Kontext"
sidebar:
list_name_active_contexts: Aktive Kontexte
@ -805,24 +823,24 @@ de:
show_form_title: Neuen Kontext erstellen
delete_context_confirmation: Soll der Kontext '%{name}' wirklich gel&ouml;scht werden? Alle (wiederholenden) Aufgaben dieses Kontexts werden hierdurch ebenfalls gel&ouml;scht.
delete_context: Kontext l&ouml;schen
edit_context: Kontext bearbeiten
hide_form_title: Formular f&uuml;r neuen Kontext verstecken
edit_context: Kontext bearbeiten
no_contexts_active: Derzeit gibt es keine aktiven Kontexte
context_hide: Auf Startseite ausblenden?
hidden_contexts: Versteckte Kontexte
show_form: Neuen Kontext erstellen
visible_contexts: Sichtbare Kontexte
show_form: Neuen Kontext erstellen
save_status_message: Kontext gespeichert
add_context: "Kontext hinzuf\xC3\xBCgen"
context_name: Kontextname
update_status_message: "Kontextname wurde ge\xC3\xA4ndert"
new_context_post: "' wird ebenfalls angelegt. Fortfahren?"
status_active: Kontext ist aktiv
no_actions: "Momentan gibt es keine unvollst\xC3\xA4ndigen Aufgaben in diesem Kontext"
new_context_post: "' wird ebenfalls angelegt. Fortfahren?"
last_completed_in_context: in diesem Kontext (letzte %{number})
context_deleted: "Gel\xC3\xB6schter Kontext '%{name}'"
no_contexts_hidden: Derzeit gibt es keine versteckten Kontexte
new_context_pre: Der neue Kontext '
no_actions: "Momentan gibt es keine unvollst\xC3\xA4ndigen Aufgaben in diesem Kontext"
status_hidden: Kontext ist versteckt
datetime:
prompts:
@ -871,9 +889,9 @@ de:
half_a_minute: eine halbe Minute
login:
openid_identity_url_not_found: "Sorry, aber es existiert kein Benutzer mit der Identit\xC3\xA4ts-URL (%{identity_url})"
login_cas: zum CAS gehen
user_no_expiry: Angemeldet bleiben
sign_in: Anmeldung
login_cas: zum CAS gehen
cas_login: CAS-Anmeldung
successful_with_session_info: "Anmeldung erfolgreich:"
please_login: Bitte melde dich an, um Tracks zu nutzen
@ -890,14 +908,14 @@ de:
option_separator: oder,
session_time_out: Sitzung abgelaufen. Bitte %{link}
login_standard: "zur\xC3\xBCck zum Standard-Login"
log_in_again: Erneut anmelden.
logged_out: Sie wurden von Tracks abgemeldet.
login_with_openid: Mit einer OpenID anmelden
unsuccessful: Anmeldung war nicht erfolgreich.
log_in_again: Erneut anmelden.
search:
contexts_matching_query: Kontexte entsprechen der Suche
tags_matching_query: Tags entsprechen der Suche
todos_matching_query: Todos entsprechen der Suche
projects_matching_query: Projekte entsprechen der Suche
notes_matching_query: Notizen entsprechen der Suche
no_results: Die Suche ergab kein Ergebnis.
todos_matching_query: Todos entsprechen der Suche

View file

@ -139,6 +139,8 @@ en:
new_context_pre: "New context '"
new_context_post: "' will be also created. Are you sure?"
edit_context: "Edit context"
completed_tasks_title: "TRACKS::Completed actions in the context '%{context_name}'"
all_completed_tasks_title: "TRACKS::All Completed actions in the context '%{context_name}'"
data:
import_errors: "Some errors occurred during import"
import_successful: "Import was successful."
@ -310,6 +312,9 @@ en:
edit_project_settings: "Edit Project Settings"
page_title: "TRACKS::Project: %{project}"
list_projects: "TRACKS::List Projects"
list_completed_projects: "TRACKS::List Completed Projects"
completed_tasks_title: "TRACKS::List Completed Actions in Project '%{project_name}'"
all_completed_tasks_title: "TRACKS::List All Completed Actions in Project '%{project_name}'"
no_default_context: "This project does not have a default context"
default_context: "The default context for this project is %{context}"
project_state: "Project is %{state}."
@ -541,7 +546,7 @@ en:
from: from
until: until
times: for %{number} times
day_names:
day_names:
- sunday
- monday
- tuesday
@ -549,8 +554,8 @@ en:
- thursday
- friday
- saturday
month_names:
-
month_names:
-
- January
- February
- Match
@ -597,6 +602,8 @@ en:
action_deleted_success: "Successfully deleted next action"
action_deleted_error: "Failed to delete the action"
completed_tasks_title: "TRACKS::Completed tasks"
completed_tagged_page_title: "TRACKS::Completed tasks with tag %{tag_name}"
all_completed_tagged_page_title: "TRACKS::All completed tasks with tag %{tag_name}"
archived_tasks_title: "TRACKS::Archived completed tasks"
deferred_tasks_title: "TRACKS::Tickler"
tagged_page_title: "TRACKS::Tagged with '%{tag_name}'"

View file

@ -1,5 +1,49 @@
---
nl:
layouts:
toggle_notes: Toggle notities
next_actions_rss_feed: RSS-feed van de acties
mobile_navigation:
logout: Afmelden
feeds: Feeds
new_action: 0-Nieuwe actie
starred: 4-Ster
projects: 3-Projecten
tickler: Tickler
contexts: 2-Contexten
home: 1-Start
toggle_notes_title: Toggle alle notities
navigation:
recurring_todos: Terugkerende acties
manage_users_title: Toevoegen of verwijderen gebruikers
api_docs: REST API Docs
feeds: Feeds
starred: Ster
notes_title: Toon alle notities
stats: Statistieken
tickler_title: Tickler
manage_users: Beheren gebruikers
export_title: Import en export van gegevens
preferences: Voorkeuren
integrations_: Integreer Tracks
feeds_title: Zie een lijst met beschikbare feeds
calendar_title: Kalender met acties met deadline
starred_title: Zie je ster acties
tickler: Tickler
recurring_todos_title: Beheren terugkerende acties
completed_tasks: Gereed
stats_title: Zie je statistieken
home_title: Start
organize: Organiseer
view: Bekijk
completed_tasks_title: Afgerond
home: Start
export: Export
contexts_title: Contexten
calendar: Agenda
projects_title: Projecten
search: Zoeken in alle items
preferences_title: Toon mijn voorkeuren
number:
format:
separator: ","
@ -23,107 +67,65 @@ nl:
separator: ","
delimiter: .
integrations:
opensearch_description: Zoek in Tracks
applescript_next_action_prompt: "Omschrijving van de actie:"
gmail_description: Gadget om Tracks toe te voegen aan Gmail als een gadget
applescript_success_after_id: gemaakt
applescript_success_before_id: Nieuwe actie met ID
common:
back: Terug
third: Derde
recurring_todos: Herhalende acties
actions: Acties
add: Toevoegen
go_back: Ga terug
previous: Vorige
logout: Log uit
go_back: Ga terug
cancel: Annuleer
week: week
none: Geen
second: Tweede
optional: optioneel
forum: Forum
month: maand
notes: Notities
forum: Forum
server_error: Een fout heeft op de server plaatsgevonden
projects: Projecten
last: Laatste
projects: Projecten
action: Actie
project: Project
contribute: Bijdragen
ok: Ok
first: Eerste
website: Website
first: Eerste
numbered_step: Stap %{number}
errors_with_fields: Er waren problemen met de volgende velden
sort:
by_task_count_title: Sorteer op aantal acties
by_task_count_title_confirm: Weet u zeker dat u deze op aantal acties wilt sorteren? Dat zal de huidige sorteervolgorde aanpassen.
alphabetically: Alfabetisch
alphabetically_title: Sorteer projecten alfabetisch
sort: Sorteer
alphabetically_confirm: Weet u zeker dat u deze projecten alfabetisch wilt sorteren? Dat zal de huidige sorteervolgorde aanpassen.
alphabetically_title: Sorteer projecten alfabetisch
by_task_count: Op aantal acties
fourth: Vierde
create: Maken
drag_handle: SLEEP
context: Context
errors_with_fields: Er waren problemen met de volgende velden
description: Beschrijving
contexts: Contexten
update: Bijwerken
wiki: Wiki
bugs: Fouten
ajaxError: Er is een fout opgetreden bij het ophalen van gegevens van de server
email: E-mail
search: Zoeken
month: maand
months: maanden
context: Context
contexts: Contexten
todo: actie
next: Volgende
description: Beschrijving
drag_handle: SLEEP
update: Bijwerken
bugs: Fouten
weeks: weken
forth: Vierde
integrations:
opensearch_description: Zoek in Tracks
gmail_description: Gadget om Tracks toe te voegen aan Gmail als een gadget
applescript_next_action_prompt: "Omschrijving van de actie:"
applescript_success_after_id: gemaakt
applescript_success_before_id: Nieuwe actie met ID
layouts:
toggle_notes: Toggle notities
next_actions_rss_feed: RSS-feed van de acties
toggle_notes_title: Toggle alle notities
mobile_navigation:
logout: Afmelden
feeds: Feeds
new_action: 0-Nieuwe actie
starred: 4-Ster
projects: 3-Projecten
tickler: Tickler
contexts: 2-Contexten
home: 1-Start
navigation:
api_docs: REST API Docs
manage_users_title: Toevoegen of verwijderen gebruikers
recurring_todos: Terugkerende acties
feeds: Feeds
stats: Statistieken
starred: Ster
notes_title: Toon alle notities
tickler_title: Tickler
manage_users: Beheren gebruikers
export_title: Import en export van gegevens
integrations_: Integreer Tracks
preferences: Voorkeuren
feeds_title: Zie een lijst met beschikbare feeds
calendar_title: Kalender met acties met deadline
home_title: Start
starred_title: Zie je ster acties
recurring_todos_title: Beheren terugkerende acties
completed_tasks: Gereed
stats_title: Zie je statistieken
tickler: Tickler
organize: Organiseer
view: Bekijk
completed_tasks_title: Afgerond
export: Export
home: Start
contexts_title: Contexten
preferences_title: Toon mijn voorkeuren
projects_title: Projecten
calendar: Agenda
search: Zoeken in alle items
data:
import_successful: De import was succesvol
import_errors: Er hebben zich fouten voorgedaan bij de import
wiki: Wiki
ajaxError: Er is een fout opgetreden bij het ophalen van gegevens van de server
search: Zoeken
email: E-mail
models:
project:
feed_title: Tracks Projecten
@ -158,19 +160,19 @@ nl:
show_hidden_projects_in_sidebar: Toon verborgen projecten in sidebar
show_hidden_contexts_in_sidebar: Toon verborgen contexten in sidebar
date_format: Datum formaat
mobile_todos_per_page: Acties per pagina (mobiel)
staleness_starts: Begin van markeren openstaande actie
sms_context: Standaard context voor email
mobile_todos_per_page: Acties per pagina (mobiel)
verbose_action_descriptors: Context en project uitschrijven in actielijst
show_number_completed: Aantal te tonen afgeronde acties
sms_context: Standaard context voor email
title_date_format: Datum formaat in titel
show_number_completed: Aantal te tonen afgeronde acties
refresh: Ververs interval (in minuten)
week_starts: Week start op
due_style: Deadline stijl
time_zone: Tijdzone
due_style: Deadline stijl
locale: Taal
sms_email: Van email
show_project_on_todo_done: Ga naar project pagina wanneer actie gereed is
sms_email: Van email
show_completed_projects_in_sidebar: Toon afgeronde projecten in sidebar
user:
last_name: Achternaam
@ -189,12 +191,12 @@ nl:
confirmation: komt niet overeen met de configuratie
less_than_or_equal_to: moet kleiner of gelijk zijn aan %{count}
blank: mag niet leeg zijn
invalid: "mag niet een komma (',') karakter bevatten"
invalid: mag niet een komma (',') karakter bevatten
exclusion: is gereserveerd
odd: moet oneven zijn
too_short: is te kort (minimum is %{count} karakters)
empty: mag niet leeg zijn
wrong_length: heeft de verkeerde lengte (moet %{count} karakters lang zijn)
empty: mag niet leeg zijn
even: moet even zijn
less_than: moet kleiner zijn dan %{count}
greater_than: moet groter zijn dan %{count}
@ -211,18 +213,21 @@ nl:
header:
one: 1 fout voorkomt het kunnen bewaren van deze %{model}
other: "%{count} fouten voorkomen dat dit %{model} bewaard kan worden"
data:
import_successful: De import was succesvol
import_errors: Er hebben zich fouten voorgedaan bij de import
stats:
tag_cloud_title: Tag Cloud voor alle acties
tag_cloud_description: Deze tag cloud bevat tags van alle acties (afgerond, niet voltooid, zichtbaar en / of verborgen)
tag_cloud_90days_title: Tag cloud met acties in afgelopen 90 dagen
actions: Acties
totals_active_project_count: Van deze zijn %{count} actieve projecten
tag_cloud_title: Tag Cloud voor alle acties
actions: Acties
tag_cloud_description: Deze tag cloud bevat tags van alle acties (afgerond, niet voltooid, zichtbaar en / of verborgen)
actions_avg_completion_time: Van al uw afgeronde acties, de gemiddelde tijd dat dit in beslag nam is %{count} dagen.
actions_last_year_legend:
number_of_actions: Aantal acties
months_ago: Maanden geleden
totals_first_action: Sinds uw eerste actie op %{date}
current_running_time_of_incomplete_visible_actions: Huidige looptijd van onvolledige zichtbare acties
totals_action_count: u heeft een totaal van %{count} acties
totals_deferred_actions: waarvan %{count} uitgestelde acties in de tickler zijn
legend:
number_of_days: Aantal dagen geleden
@ -232,64 +237,61 @@ nl:
percentage: Percentage
running_time: Looptijd van een actie (weken)
months_ago: Maanden geleden
totals_action_count: u heeft een totaal van %{count} acties
top10_longrunning: Top 10 langstlopende projecten
actions_dow_30days_title: Dag van de week (laatste 30 dagen)
current_running_time_of_incomplete_visible_actions: Huidige looptijd van onvolledige zichtbare acties
running_time_legend:
actions: Acties
percentage: Percentage
weeks: Looptijd van een actie (weken). Klik op een balk voor meer info
top10_longrunning: Top 10 langstlopende projecten
top5_contexts: Top 5 contexten
actions_lastyear_title: Acties in de afgelopen 12 maanden
totals_actions_completed: "%{count} van deze zijn voltooid."
totals_incomplete_actions: U heeft %{count} onvolledige acties
totals_unique_tags: Van deze tags zijn %{count} uniek.
actions_avg_completed_30days: en voltooide een gemiddelde van %{count} acties per dag.
top5_contexts: Top 5 contexten
action_completion_time_title: Doorlooptijd (alle voltooide acties)
projects: Projecten
actions_last_year: Acties in de afgelopen jaren
totals_context_count: U heeft %{count} contexten.
totals_visible_context_count: Van deze zijn %{count} zichtbare contexten
totals_blocked_actions: "%{count} zijn afhankelijk van de voltooiing van hun acties."
tags: Tags
action_completion_time_title: Doorlooptijd (alle voltooide acties)
actions_last_year: Acties in de afgelopen jaren
projects: Projecten
totals_context_count: U heeft %{count} contexten.
actions_day_of_week_title: Dag van de week (alle acties)
totals_project_count: U heeft %{count} projecten.
actions_min_max_completion_days: De max-/minimum dagen tot voltooiing is %{min}/%{max}.
actions_min_completion_time: De minimale tijd tot afronding is %{time}.
no_tags_available: geen tags beschikbaar
actions_day_of_week_title: Dag van de week (alle acties)
totals_project_count: U heeft %{count} projecten.
more_stats_will_appear: Meer statistieken zullen hier verschijnen zodra u acties hebt toegevoegd.
totals_hidden_project_count: "%{count} zijn verborgen"
tod30: Tijd van de dag (laatste 30 dagen)
actions_30days_title: Acties in de afgelopen 30 dagen
actions_further: en verder
time_of_day: Tijd van de dag (alle acties)
totals_tag_count: U heeft %{count} tags geplaatst op acties.
running_time_all: Huidige looptijd van alle onvolledige acties
top5_visible_contexts_with_incomplete_actions: Top 5 zichtbare contexten met onvolledige acties
tags: Tags
tag_cloud_90days_description: Deze tag cloud bevat tags van acties die zijn gemaakt of voltooid in de afgelopen 90 dagen.
top10_projects_30days: Top 10 project in de laatste 30 dagen
click_to_return: Klik %{link} om terug te keren naar de statistieken pagina.
actions_further: en verder
running_time_all: Huidige looptijd van alle onvolledige acties
time_of_day: Tijd van de dag (alle acties)
tod30: Tijd van de dag (laatste 30 dagen)
more_stats_will_appear: Meer statistieken zullen hier verschijnen zodra u acties hebt toegevoegd.
top5_visible_contexts_with_incomplete_actions: Top 5 zichtbare contexten met onvolledige acties
totals_tag_count: U heeft %{count} tags geplaatst op acties.
actions_30days_title: Acties in de afgelopen 30 dagen
totals_hidden_project_count: "%{count} zijn verborgen"
totals_completed_project_count: en %{count} zijn afgeronde projecten.
click_to_show_actions_from_week: Klik %{link} om de acties van week %{week} en verder te zien.
spread_of_running_actions_for_visible_contexts: Verdeling van actieve acties voor zichtbare contexten
other_actions_label: (anderen)
top10_projects: Top 10 projecten
spread_of_actions_for_all_context: Verdeling van acties voor alle contexten
top10_projects_30days: Top 10 project in de laatste 30 dagen
actions_selected_from_week: Gekozen acties van week
click_to_show_actions_from_week: Klik %{link} om de acties van week %{week} en verder te zien.
top10_projects: Top 10 projecten
actions_avg_created: In de afgelopen 12 maanden heeft u gemiddeld%{count} acties aangemaakt
click_to_return: Klik %{link} om terug te keren naar de statistieken pagina.
spread_of_running_actions_for_visible_contexts: Verdeling van actieve acties voor zichtbare contexten
spread_of_actions_for_all_context: Verdeling van acties voor alle contexten
other_actions_label: (anderen)
actions_avg_completed: en voltooide een gemiddelde van %{count} acties per maand.
totals: Totalen
contexts: Contexten
time_of_day_legend:
number_of_actions: Aantal acties
time_of_day: Tijd van de dag
click_to_return_link: hier
totals_hidden_context_count: en %{count} zijn verborgen contexten.
actions_avg_completed: en voltooide een gemiddelde van %{count} acties per maand.
totals: Totalen
contexts: Contexten
no_actions_selected: Er zijn geen acties geselecteerd.
running_time_all_legend:
actions: Acties
percentage: Percentage
running_time: Looptijd van een actie (weken). Klik op een balk voor meer info
click_to_update_actions: Klik op een balk in de grafiek op de acties hieronder aan te passen.
labels:
month_avg_completed: "%{months} gem afgerond per maand"
completed: Afgerond
@ -297,20 +299,24 @@ nl:
avg_created: Gem gemaakt
avg_completed: Gem afgerond
created: Gemaakt
click_to_update_actions: Klik op een balk in de grafiek op de acties hieronder aan te passen.
running_time_all_legend:
actions: Acties
percentage: Percentage
running_time: Looptijd van een actie (weken). Klik op een balk voor meer info
actions_actions_avg_created_30days: In de afgelopen 30 dagen heeft u gemiddeld %{count} acties gemaakt
tod30_legend:
number_of_actions: Aantal acties
time_of_day: Tijd van de dag
action_selection_title: "TRACKS:: Actie selectie"
actions_actions_avg_created_30days: In de afgelopen 30 dagen heeft u gemiddeld %{count} acties gemaakt
todos:
show_from: Toon vanaf
error_starring_recurring: "Kon niet de ster van deze terugkerende actie niet omgezetten \'%{description}\'"
error_starring_recurring: Kon niet de ster van deze terugkerende actie niet omgezetten \'%{description}\'
recurring_action_deleted: Actie werd verwijderd. Omdat deze actie herhalend is. werd een nieuwe actie toegevoegd
completed_actions: Voltooide acties
completed_rest_of_previous_month: Afgerond in de rest van de vorige maand
blocked_by: Geblokkeerd door %{predecessors}
completed_recurring: Afgesloten terugkerende todos
added_new_next_action: Nieuwe actie toegevoegd
blocked_by: Geblokkeerd door %{predecessors}
defer_date_after_due_date: Uitsteldatum is na de vervaldag. Gelieve vervaldag bewerken alvorens uitsteldatum aan te passen.
star_action: Markeer deze actie met een ster
completed_recurrence_completed: Er is geen actie na de terugkerende actie die u new verwijderd heeft. De herhaling is voltooid
@ -323,15 +329,15 @@ nl:
no_hidden_actions: Momenteel zijn er geen verborgen acties gevonden
action_due_on: (deadline actie op %{date})
edit_action_with_description: Bewerk de actie '%{description}'
tags: Tags (gescheiden door komma's)
archived_tasks_title: "TRACKS:: Gearchiveerde voltooide taken"
remove_dependency: Verwijder afhankelijkheid (zal niet de actie zelf verwijderen)
list_incomplete_next_actions: Toon onvoltooide acties
action_deleted_success: Actie succesvol verwijderd
tags: Tags (gescheiden door komma's)
add_another_dependency: Nog een afhankelijkheid toevoegen
new_related_todo_created: Een nieuwe actie is toegevoegd, die behoort bij deze terugkerende todo
context_changed: Context veranderd in '%{name}'
mobile_todos_page_title: Alle acties
add_another_dependency: Nog een afhankelijkheid toevoegen
delete_recurring_action_title: Verwijder de terugkerende actie
recurring_actions_title: TRACKS::Terugkerende acties
removed_predecessor: "'%{successor}' is verwijderd als afhankelijkheid van '%{predecessor}'."
@ -342,6 +348,7 @@ nl:
edit_action: Actie bewerken
added_new_context: Nieuwe context toegevoegd
next_actions_description: "Filter:"
older_completed_items: Oudere voltooide items
list_incomplete_next_actions_with_limit: Toont de laatste %{count} onvoltooide acties
set_to_pending: "'%{task}' als wachtend ingesteld"
added_new_project: Nieuw project toegevoegd
@ -349,16 +356,16 @@ nl:
completed: acties voltooid
due_today: deadline vandaag
due_within_a_week: deadline binnen een week
older_completed_items: Oudere voltooide items
task_list_title: TRACKS::Toon acties
append_in_this_project: in dit project
error_deleting_item: Er is een fout opgetreden bij het verwijderen van het item '%{description}'
task_list_title: TRACKS::Toon acties
no_actions_due_this_week: Geen acties met deadline in rest van deze week
delete_recurring_action_confirm: Weet u zeker dat u wilt de terugkerende actie '%{description}' wilt verwijderen?
error_completing_todo: Er was een fout bij het voltooien / activeren van de terugkerende actie '%{description}'
no_recurring_todos: Momenteel zijn er geen terugkerende acties
recurring_pattern_removed: Het herhalingspatroon is verwijderd van %{count}
convert_to_project: Maak project
no_deferred_pending_actions: Momenteel zijn er geen uitgestelde of wachtende acties
delete_recurring_action_confirm: Weet u zeker dat u wilt de terugkerende actie '%{description}' wilt verwijderen?
completed_last_day: Voltooid in de laatste 24 uur
no_project: -- Geen project --
show_in_days: Toon over %{days} dagen
@ -366,13 +373,15 @@ nl:
completed_more_than_x_days_ago: Voltooid meer dan %{count} dagen geleden
new_related_todo_created_short: een nieuwe actie gemaakt
feed_title_in_context: in context '%{context}'
all_completed: Alle afgeronde acties
older_than_days: Ouder dan %{count} dagen
completed_tagged_page_title: "TRACKS:: Afgeronde acties met tag %{tag_name}"
edit: Bewerken
pending: Wachtend
completed_actions_with: Afgeronde acties met de tag %{tag_name}
completed_tasks_title: TRACKS::Voltooide taken
deleted_success: De actie werd met succes verwijderd.
feed_title_in_project: In het project '%{project}'
deleted_success: De actie werd met succes verwijderd.
completed_tasks_title: TRACKS::Voltooide taken
clear_due_date: Maak deadline leeg
error_removing_dependency: Er is een fout opgetreden het verwijderen van de afhankelijke actie
hidden_actions: Verborgen acties
@ -390,14 +399,14 @@ nl:
calendar_page_title: TRACKS::Agenda
in_hidden_state: in verborgen toestand
unresolved_dependency: De waarde die u ingevoerd heeft in het afhankelijkheden veld is niet herleidbaar naar een bestaande actie. Deze waarde wordt niet bewaard met de rest van de actie. Doorgaan?
show_today: Toon vandaag
no_actions_found_title: Geen acties gevonden
next_actions_due_date:
overdue_by: Over deadline met %{days} dag
overdue_by_plural: Over deadline met %{days} dagen
due_today: Deadline vandaag
due_in_x_days: Deadline over %{days} dagen
overdue_by_plural: Over deadline met %{days} dagen
due_tomorrow: Deadline morgen
show_today: Toon vandaag
no_actions_found_title: Geen acties gevonden
completed_last_x_days: Voltooid in de laatste %{count} dagen
no_actions_with: Momenteel zijn er geen onvoltooide acties met de tag '%{tag_name}'
defer_x_days:
@ -405,29 +414,32 @@ nl:
other: "%{count} dagen uitstellen"
added_new_next_action_singular: Nieuwe actie toegevoegd
no_completed_actions: Momenteel zijn er geen voltooide acties.
feeds:
completed: "Voltooid: %{date}"
due: "Deadline: %{date}"
deferred_pending_actions: Uitgestelde/wachtende acties
has_x_pending:
one: Heeft een wachtende actie
other: Heeft %{count} wachtende acties
feeds:
completed: "Voltooid: %{date}"
due: "Deadline: %{date}"
recurring_todos: Terugkerende acties
delete_action: Verwijder actie
error_deleting_recurring: Er is een fout opgetreden bij het verwijderen van het item \'%{description}\'
recurring_todos: Terugkerende acties
delete: Verwijder
no_last_completed_actions: Geen afgeronde acties gevonden
drag_action_title: Sleep naar een andere actie om deze afhankelijk te maken van die actie
cannot_add_dependency_to_completed_todo: Kan deze actie niet als een afhankelijkheid van een voltooide actie toevoegen!
action_marked_complete: De actie <strong>'%{description}'</strong> werd gemarkeerd als <strong>%{completed}</strong>
depends_on: Hangt af van
tickler_items_due:
one: Een tickler item wordt nu zichtbaar - vernieuw de pagina om het te zien.
other: "%{count} tickerl items zijn nu zichtbaar - vernieuw de pagina om ze te zien."
action_marked_complete: De actie <strong>'%{description}'</strong> werd gemarkeerd als <strong>%{completed}</strong>
new_related_todo_not_created_short: een nieuwe actie is niet gemaakt
completed_today:
one: U heeft een actie tot nu toe vandaag voltooid.
other: U heeft %{count} acties tot nu toe vandaag voltooid.
added_new_next_action_plural: Nieuwe acties toegevoegd
new_related_todo_not_created_short: een nieuwe actie is niet gemaakt
completed_rest_of_week: Afgerond in de rest van deze week
error_starring: Kon niet de ster van deze actie niet omzetten \'%{description}\'
calendar:
get_in_ical_format: Ontvang deze agenda in iCal-formaat
due_next_week: Deadline volgende week
@ -439,7 +451,6 @@ nl:
no_actions_due_after_this_month: Geen acties met deadline na deze maand
due_this_month: Deadline in rest van %{month}
no_actions_due_this_month: Geen acties met deadline in de rest van deze maand
error_starring: "Kon niet de ster van deze actie niet omzetten \'%{description}\'"
show_tomorrow: Toon morgen
recurrence:
ends_on_date: Eindigt op %{date}
@ -454,48 +465,8 @@ nl:
starts_on: Begint op
daily: Dagelijks
show_option_always: altijd
yearly_every_x_day: Elke %{month} %{day}
recurrence_on_options: Stel herhaling in op
daily_every_number_day: Elke %{number} dag(en)
weekly_every_number_week: Herhaalt elke %{number} weken op
ends_on: Eindigt op
show_options: Toon de actie
no_end_date: Geen einddatum
day_x_on_every_x_month: Dag %{day} op elke %{month} maand
yearly_options: Instellingen voor jaarlijks terugkerende acties
yearly_every_xth_day: De %{day} %{day_of_week} van %{month}
show_days_before: "%{days} dagen v\xC3\xB3\xC3\xB3r de deadline van actie"
from_tickler: de datum dat de actie uit de tickler komt (geen deadline ingesteld)
yearly: Jaarlijks
monthly_every_xth_day: De %{day} %{day_of_week} van elke %{month} maand
pattern:
due: Deadline
show: Tonen
on_work_days: op werkdagen
weekly: wekelijks
every_n: elke %{n}
every_day: elke dag
every_month: elke maand
on_day_n: op dag %{n}
every_year_on: elk jaar op %{date}
the_xth_day_of_month: de %{x} %{day} van %{month}
every_xth_day_of_every_n_months: elke %{x} %{day} van elke %{n_months}
first: eerste
second: tweede
pattern:
third: derde
fourth: vierde
last: laatste
from: vanaf
until: tot
times: voor %{number} keer
day_names:
- zondag
- maandag
- dinsdag
- woensdag
- donderdag
- vrijdag
- zaterdag
month_names:
-
- januari
@ -509,49 +480,109 @@ nl:
- september
- oktober
- november
- december
tagged_page_title: "TRACKS::Tagged met '%{tag_name}'"
- december
every_n: elke %{n}
on_day_n: op dag %{n}
second: tweede
every_xth_day_of_every_n_months: elke %{x} %{day} van elke %{n_months}
weekly: wekelijks
from: vanaf
last: laatste
every_day: elke dag
the_xth_day_of_month: de %{x} %{day} van %{month}
times: voor %{number} keer
every_year_on: elk jaar op %{date}
first: eerste
show: Tonen
day_names:
- zondag
- maandag
- dinsdag
- woensdag
- donderdag
- vrijdag
- zaterdag
on_work_days: op werkdagen
fourth: vierde
due: Deadline
until: tot
every_month: elke maand
yearly_every_x_day: Elke %{month} %{day}
recurrence_on_options: Stel herhaling in op
daily_every_number_day: Elke %{number} dag(en)
show_options: Toon de actie
ends_on: Eindigt op
weekly_every_number_week: Herhaalt elke %{number} weken op
yearly_options: Instellingen voor jaarlijks terugkerende acties
show_days_before: "%{days} dagen v\xC3\xB3\xC3\xB3r de deadline van actie"
from_tickler: de datum dat de actie uit de tickler komt (geen deadline ingesteld)
yearly_every_xth_day: De %{day} %{day_of_week} van %{month}
no_end_date: Geen einddatum
day_x_on_every_x_month: Dag %{day} op elke %{month} maand
yearly: Jaarlijks
monthly_every_xth_day: De %{day} %{day_of_week} van elke %{month} maand
tagged_page_title: TRACKS::Tagged met '%{tag_name}'
no_completed_recurring: Momenteel zijn er geen voltooide terugkerende acties
added_dependency: "%{dependency} als afhankelijkheid toegevoegd."
all_completed_tagged_page_title: "TRACKS:: Alle afgeronde acties met tag %{tag_name}"
no_deferred_actions: Momenteel zijn er geen uitgestelde acties.
completed_rest_of_month: Afgerond in de rest van deze maand
recurrence_completed: Er is geen volgende actie na de terugkerende actie die u zojuist hebt voltooid. De herhaling is voltooid
in_pending_state: in wachtende toestand
no_actions_found: Momenteel zijn er geen onafgeronde acties.
in_pending_state: in wachtende toestand
error_toggle_complete: Kon deze actie niet als afgerond markeren
due: Deadline
action_marked_complete_error: "De actie <strong>'%{description}'</strong> is niet gemarkeerd als <strong>%{completed} vanwege een fout op de server.</strong>"
add_new_recurring: Voeg een nieuwe terugkerende actie toe
recurring_action_saved: Terugkerende actie opgeslagen
action_saved_to_tickler: Actie opgeslagen in tickler
depends_on_separate_with_commas: Afhankelijk van (gescheiden door komma's)
action_marked_complete_error: De actie <strong>'%{description}'</strong> is niet gemarkeerd als <strong>%{completed} vanwege een fout op de server.</strong>
completed_in_archive:
one: Er is een voltooide actie in het archief.
other: Er zijn %{count} afgeronde acties in het archief.
no_incomplete_actions: Er zijn geen onvoltooide acties
depends_on_separate_with_commas: Afhankelijk van (gescheiden door komma's)
action_saved_to_tickler: Actie opgeslagen in tickler
recurring_action_saved: Terugkerende actie opgeslagen
to_tickler: naar tickler
next_actions_description_additions:
completed: in de afgelopen %{count} dagen
due_date: met een deadline %{due_date} of eerder
overdue: Achterstallig
no_incomplete_actions: Er zijn geen onvoltooide acties
add_new_recurring: Voeg een nieuwe terugkerende actie toe
notes:
delete_item_title: Verwijder item
delete_note_title: Verwijder de notitie '%{id}'
delete_confirmation: Weet u zeker dat u de notitie '%{id}' wilt verwijderen?
delete_item_title: Verwijder item
deleted_note: Verwijder notitie '%{id}'
note_link_title: Toon notitie %{id}
show_note_title: Toon notitie
deleted_note: Verwijder notitie '%{id}'
note_location_link: "In:"
edit_item_title: Item bewerken
note_header: Notitie %{id}
no_notes_available: "Momenteel zijn er geen notities: voeg notities toe aan projecten vanaf de individuele project pagina's."
note_header: Notitie %{id}
delete_note_confirm: Weet u zeker dat u de notitie '%{id}' wilt verwijderen?
states:
hidden_plural: Verborgen
completed: Afgerond
completed_plural: Afgeronde
visible_plural: Zichtbare
active_plural: Actieve
visible: Zichtbaar
hidden: Verborgen
active: Actief
time:
am: ochtend
formats:
default: "%A, %d %B %Y %H:%M:%S %z"
time: "%H:%M"
short: "%d %B %H:%M"
month_day: "%d %B"
long: "%A, %d. %B %Y, %H:%M"
pm: middag
projects:
default_context_set: Stel project standaard context in op %{default_context}
no_actions_in_project: Momenteel zijn er geen onafgeronde acties in dit project
deferred_actions: Uitgestelde acties voor dit project
was_marked_hidden: is gemarkeerd als verborgen
edit_project_title: Bewerk project
default_tags_removed_notice: De standaard tags zijn verwijderd
default_context_set: Stel project standaard context in op %{default_context}
no_actions_in_project: Momenteel zijn er geen onafgeronde acties in dit project
hide_form: Verberg formulier
page_title: "TRACKS:: Project: %{project}"
this_project: Dit project
@ -560,80 +591,63 @@ nl:
to_new_project_page: Ga naar de nieuwe projectpagina
no_notes_attached: Momenteel zijn er geen notities toegevoegd aan dit project
deferred_actions_empty: Er zijn geen uitgestelde acties voor dit project
no_last_completed_projects: Geen afgeronde projecten gevonden
notes: Notities
todos_append: in dit project
no_projects: Momenteel zijn er geen projecten
hide_form_title: Verberg nieuw project formulier
notes_empty: Er zijn geen notities voor dit project
no_projects: Momenteel zijn er geen projecten
with_no_default_context: zonder standaard context
delete_project: Project verwijderen
completed_actions_empty: Er zijn nog geen afgeronde acties voor dit project
show_form: Toevoegen van een project
actions_in_project_title: Acties in dit project
delete_project_confirmation: Weet u zeker dat u wilt het project '%{name} wilt verwijderen?
with_default_context: met een standaard context '%{context_name}'
show_form: Toevoegen van een project
actions_in_project_title: Acties in dit project
add_project: Voeg project toe
set_default_tags_notice: Stel project standaard tags in op %{default_tags}
settings: Instellingen
add_note: Een notitie toevoegen
with_default_tags: en met '%{tags}' als de standaard tags
list_projects: "TRACKS:: Overzicht van projecten"
project_saved_status: Project opgeslagen
add_note: Een notitie toevoegen
is_active: is actief
completed_projects: Voltooide projecten
add_project: Voeg project toe
list_projects: "TRACKS:: Overzicht van projecten"
set_default_tags_notice: Stel project standaard tags in op %{default_tags}
project_saved_status: Project opgeslagen
hidden_projects: Verborgen projecten
delete_project_title: Verwijder het project
was_marked_complete: is gemarkeerd als voltooid
completed_actions: Afgeronde acties voor dit project
default_context_removed: Standaard context verwijderd
add_note_submit: Notitie toevoegen
completed_actions: Afgeronde acties voor dit project
was_marked_complete: is gemarkeerd als voltooid
default_context: De standaard context voor dit project is %{context}
active_projects: Actieve projecten
status_project_name_changed: Naam van het project werd gewijzigd
no_default_context: Dit project heeft geen standaard context
with_no_default_tags: en zonder standaard tags
default_context: De standaard context voor dit project is %{context}
state: Dit project is %{state}
edit_project_settings: Bewerk project instellingen
time:
am: ochtend
formats:
default: "%A, %d %B %Y %H:%M:%S %z"
time: "%H:%M"
short: "%d %B %H:%M"
long: "%A, %d. %B %Y, %H:%M"
month_day: "%d %B"
pm: middag
states:
hidden_plural: Verborgen
completed: Afgerond
completed_plural: Afgeronde
visible_plural: Zichtbare
active_plural: Actieve
visible: Zichtbaar
active: Actief
hidden: Verborgen
errors:
user_unauthorized: "401 Unauthorized: Alleen administratieve gebruikers mogen deze functie gebruiken."
preferences:
change_identity_url: Verander uw Identity URL
open_id_url: Uw OpenID URL is
staleness_starts_after: Markeren openstaande acties begint na %{days} dagen
open_id_url: Uw OpenID URL is
change_identity_url: Verander uw Identity URL
change_password: Wijzig uw wachtwoord
page_title: "TRACKS:: Voorkeuren"
title: Uw voorkeuren
token_description: Token (voor feeds en API gebruik)
show_number_completed: Toon %{number} voltooide items
is_false: Nee
show_number_completed: Toon %{number} voltooide items
edit_preferences: Voorkeuren bewerken
page_title_edit: "TRACKS:: Voorkeuren bewerken"
is_true: Ja
sms_context_none: Geen
generate_new_token: Genereer een nieuwe token
token_header: Uw token
change_authentication_type: Verander uw authenticatietype
current_authentication_type: Uw authenticatietype is %{auth_type}
authentication_header: Uw authenticatie
change_authentication_type: Verander uw authenticatietype
generate_new_token_confirm: Weet u dit zeker? Het genereren van een nieuw token zal de bestaande te vervangen en dit zal het extern gebruiken van de oude token laten mislukken.
errors:
user_unauthorized: "401 Unauthorized: Alleen administratieve gebruikers mogen deze functie gebruiken."
date:
month_names:
-
@ -649,6 +663,10 @@ nl:
- Oktober
- November
- December
order:
- :day
- :month
- :year
abbr_day_names:
- Zo
- Ma
@ -657,16 +675,12 @@ nl:
- Do
- Vr
- Za
order:
- :day
- :month
- :year
formats:
only_day: "%e"
default: "%d-%m-%Y"
short: "%e %b"
long: "%e %B %Y"
month_day: "%B %d"
long: "%e %B %Y"
day_names:
- Zondag
- Maandag
@ -696,6 +710,22 @@ nl:
two_words_connector: en
select:
prompt: Selecteer
footer:
send_feedback: Stuur reactie op %{version}
shared:
multiple_next_actions: Meerdere acties (een op elke regel)
toggle_single: Voeg een actie toe
hide_form: Verberg formulier
add_action: Actie toevoegen
add_actions: Toevoegen acties
tags_for_all_actions: Tags voor alle acties (scheiden met een komma)
toggle_single_title: Voeg een nieuwe actie toe
project_for_all_actions: Project voor alle acties
context_for_all_actions: Context voor alle acties
toggle_multi: Voeg meerdere acties toe
separate_tags_with_commas: gescheiden door komma's
toggle_multi_title: Toggle single / multi actie formulier
hide_action_form_title: Verberg nieuwe actie formulier
dates:
month_names:
- Januari
@ -718,75 +748,35 @@ nl:
- Donderdag
- Vrijdag
- Zaterdag
footer:
send_feedback: Stuur reactie op %{version}
shared:
multiple_next_actions: Meerdere acties (een op elke regel)
toggle_single: Voeg een actie toe
hide_form: Verberg formulier
add_action: Actie toevoegen
add_actions: Toevoegen acties
tags_for_all_actions: Tags voor alle acties (scheiden met een komma)
toggle_single_title: Voeg een nieuwe actie toe
project_for_all_actions: Project voor alle acties
context_for_all_actions: Context voor alle acties
toggle_multi: Voeg meerdere acties toe
separate_tags_with_commas: gescheiden door komma's
toggle_multi_title: Toggle single / multi actie formulier
hide_action_form_title: Verberg nieuwe actie formulier
feedlist:
choose_context: Kies de context waar je een feed van wilt
actions_due_today: Acties die vandaag of eerder af moeten
legend: Legenda
all_contexts: Alle contexten
rss_feed: RSS Feed
ical_feed: iCal feed
choose_project: Kies het project waar je een feed van wilt
all_projects: Alle projecten
project_needed: "Er moet ten minste \xC3\xA9\xC3\xA9n project zijn voor een feed opgevraagd kan worden"
select_feed_for_project: Kies de feed voor dit project
active_projects_wo_next: Actieve projecten zonder acties
active_starred_actions: Alle gesterde, actieve acties
select_feed_for_context: Kies de feed voor deze context
projects_and_actions: Actieve projecten met hun acties
context_needed: "Er moet eerst ten minste \xC3\xA9\xC3\xA9n context zijn voor je een feed kan opvragen"
notice_incomplete_only: "Merk op: alle feeds laten alleen acties zien die niet afgerond zijn, tenzij anders vermeld."
actions_due_next_week: Acties die binnen 7 dagen afgerond moeten
all_actions: Alle acties
actions_completed_last_week: Acties afgerond in de afgelopen 7 dagen
context_centric_actions: Feeds voor onafgeronde acties in een specifieke context
plain_text_feed: Reguliere tekst feed
last_fixed_number: Laatste %{number} acties
project_centric: Feeds voor onafgeronde acties in een specifiek project
users:
failed_to_delete_user: Mislukt de gebruiker %{username} te verwijderen
openid_url_verified: Je hebt %{url} met succes geverifieerd als je identiteit en uw authenticatie type OpenID opgeslagen.
auth_type_update_error: "Er was een probleem met het bijwerken van uw authenticatietype: %{error_messages}"
successfully_deleted_user: Succesvol gebruiker %{username} verwijderd
destroy_successful: Gebruiker %{login} met succes verwijderd
successfully_deleted_user: Succesvol gebruiker %{username} verwijderd
total_contexts: Totaal aantal contexten
failed_to_delete_user: Mislukt de gebruiker %{username} te verwijderen
first_user_heading: "Welkom bij TRACKS. Om te beginnen, maak dan een admin account:"
openid_url_verified: Je hebt %{url} met succes geverifieerd als je identiteit en uw authenticatie type OpenID opgeslagen.
new_token_generated: Nieuwe token met succes gegenereerd
total_projects: Totaal aantal projecten
signup_successful: Aanmelding succesvol voor gebruiker %{username}.
change_password_submit: Wachtwoord wijzigen
no_signups_title: "TRACKS:: Geen nieuwe aanmeldingen"
user_created: Gebruiker aangemaakt.
password_updated: Wachtwoord bijgewerkt.
account_signup: Aanmelden voor een account
manage_users: Beheren gebruikers
desired_login: Gewenste login
account_signup: Aanmelden voor een account
password_updated: Wachtwoord bijgewerkt.
confirm_password: Bevestig wachtwoord
signup: Aanmelden
new_user_heading: "Registreer een nieuwe gebruiker:"
signup: Aanmelden
auth_type_updated: Authenticatietype bijgewerkt.
total_actions: Totaal aanal acties
destroy_error: Er is een fout opgetreden bij het verwijderen van de gebruiker '%{login}'
choose_password: Kies een wachtwoord
change_password_title: TRACKS::Wachtwoord wijzigen
desired_login: Gewenste login
change_auth_type_title: TRACKS::Wijzig authenticatietype
change_password_prompt: Voer uw nieuwe wachtwoord in de onderstaande velden in en kies 'Wachtwoord wijzigen' om uw huidige wachtwoord met uw nieuwe te vervangen.
password_confirmation_label: Bevestig wachtwoord
destroy_error: Er is een fout opgetreden bij het verwijderen van de gebruiker '%{login}'
choose_password: Kies een wachtwoord
change_password_title: TRACKS::Wachtwoord wijzigen
label_auth_type: Authenticatietype
new_password_label: Nieuw wachtwoord
register_with_cas: Met uw CAS gebruikersnaam
@ -795,12 +785,36 @@ nl:
total_users_count: Je hebt een totaal van %{count} gebruikers
destroy_confirmation: "Waarschuwing: dit zal de gebruiker '%{login} verwijderen met al zijn acties, contexten, projecten en notities. Weet u zeker dat u wilt doorgaan?"
signup_new_user: Registreer nieuwe gebruiker
change_authentication_type: Wijzigen authenticatietype
auth_change_submit: Wijzigen authenticatietype
identity_url: Identiteit URL
openid_ok_pref_failed: Je hebt succesvol de %{url} geverifieerd als je identiteit, maar er was een probleem met het opslaan van uw authenticatie voorkeuren.
change_authentication_type: Wijzigen authenticatietype
identity_url: Identiteit URL
auth_change_submit: Wijzigen authenticatietype
total_notes: Totaal aantal notities
select_authentication_type: Selecteer uw nieuwe authenticatie type en klik op 'Wijzigen authenticatietype' om uw huidige instellingen te vervangen.
feedlist:
choose_context: Kies de context waar je een feed van wilt
actions_due_today: Acties die vandaag of eerder af moeten
legend: Legenda
rss_feed: RSS Feed
ical_feed: iCal feed
all_contexts: Alle contexten
choose_project: Kies het project waar je een feed van wilt
all_projects: Alle projecten
project_needed: "Er moet ten minste \xC3\xA9\xC3\xA9n project zijn voor een feed opgevraagd kan worden"
select_feed_for_project: Kies de feed voor dit project
active_projects_wo_next: Actieve projecten zonder acties
active_starred_actions: Alle gesterde, actieve acties
projects_and_actions: Actieve projecten met hun acties
context_needed: "Er moet eerst ten minste \xC3\xA9\xC3\xA9n context zijn voor je een feed kan opvragen"
select_feed_for_context: Kies de feed voor deze context
actions_due_next_week: Acties die binnen 7 dagen afgerond moeten
notice_incomplete_only: "Merk op: alle feeds laten alleen acties zien die niet afgerond zijn, tenzij anders vermeld."
plain_text_feed: Reguliere tekst feed
last_fixed_number: Laatste %{number} acties
all_actions: Alle acties
actions_completed_last_week: Acties afgerond in de afgelopen 7 dagen
context_centric_actions: Feeds voor onafgeronde acties in een specifieke context
project_centric: Feeds voor onafgeronde acties in een specifiek project
sidebar:
list_name_active_contexts: Actieve contexten
list_name_active_projects: Actieve projecten
@ -819,19 +833,19 @@ nl:
no_contexts_active: Momenteel zijn er geen actieve contexten
context_hide: Verberg van de start pagina?
hidden_contexts: Verborgen contexten
show_form: Maak een nieuwe context
visible_contexts: Zichtbare contexten
save_status_message: Context bewaard
show_form: Maak een nieuwe context
add_context: Context toevoegen
context_name: Context naam
update_status_message: Naam van de context was veranderd
new_context_post: "' zal ook gemaakt worden. Weet u dit zeker?"
status_active: Context is actief
no_actions: Momenteel zijn er geen onafgeronde acties in deze context
new_context_post: "' zal ook gemaakt worden. Weet u dit zeker?"
last_completed_in_context: in deze context (laatste %{number})
context_deleted: De context '%{name}' is verwijderd
no_contexts_hidden: Momenteel zijn er geen verborgen contexten
new_context_pre: Nieuwe context '
no_actions: Momenteel zijn er geen onafgeronde acties in deze context
status_hidden: Context is verborgen
datetime:
prompts:
@ -879,10 +893,10 @@ nl:
other: over %{count} jaren
half_a_minute: halve minuut
login:
login_cas: Ga naar het CAS
openid_identity_url_not_found: Sorry, geen gebruiker met die identiteit URL bestaat (%{identity_url})
user_no_expiry: Blijf ingelogd
sign_in: Meld aan
login_cas: Ga naar het CAS
cas_login: CAS Inloggen
successful_with_session_info: "Login succesvol:"
please_login: Log in om Tracks te gebruiken
@ -899,14 +913,14 @@ nl:
option_separator: of,
session_time_out: Sessie is verlopen. Gelieve %{link}
login_standard: Ga terug naar de standaard login
login_with_openid: inloggen met een OpenID
unsuccessful: Login mislukt.
log_in_again: opnieuw in te loggen.
logged_out: Je bent afgemeld bij Tracks.
login_with_openid: inloggen met een OpenID
unsuccessful: Login mislukt.
search:
contexts_matching_query: Contexten passend bij zoekopdracht
tags_matching_query: Tags passend bij zoekopdracht
notes_matching_query: Notities passend bij zoekopdracht
no_results: Uw zoekopdracht heeft geen resultaten opgeleverd.
todos_matching_query: Todos passend bij zoekopdracht
projects_matching_query: Projecten passend bij zoekopdracht
notes_matching_query: Notities passend bij zoekopdracht
no_results: Uw zoekopdracht heeft geen resultaten opgeleverd.

View file

@ -36,6 +36,8 @@ ActionController::Routing::Routes.draw do |map|
# routed to mobile view of tags.
todos.tag 'todos/tag/:name.m', :action => "tag", :format => 'm'
todos.tag 'todos/tag/:name', :action => "tag", :name => /.*/
todos.done_tag 'todos/done/tag/:name', :action => "done_tag"
todos.all_done_tag 'todos/all_done/tag/:name', :action => "all_done_tag"
todos.tags 'tags.autocomplete', :action => "tags", :format => 'autocomplete'
todos.auto_complete_for_predecessor 'auto_complete_for_predecessor', :action => 'auto_complete_for_predecessor'

View file

@ -60,6 +60,61 @@ Then /^I should not see "([^"]*)" in the context container for "([^"]*)"$/ do |t
end
end
Then /^I should see "([^"]*)" in the deferred container$/ do |todo_description|
todo = @current_user.todos.find_by_description(todo_description)
todo.should_not be_nil
xpath = "//div[@id='tickler']//div[@id='line_todo_#{todo.id}']"
wait_for :timeout => 5 do
selenium.is_element_present(xpath)
end
end
Then /^I should see "([^"]*)" in the action container$/ do |todo_description|
todo = @current_user.todos.find_by_description(todo_description)
todo.should_not be_nil
xpath = "//div[@id='p#{todo.project.id}items']//div[@id='line_todo_#{todo.id}']"
wait_for :timeout => 5 do
selenium.is_element_present(xpath)
end
end
Then /^I should see "([^"]*)" in the completed container$/ do |todo_description|
todo = @current_user.todos.find_by_description(todo_description)
todo.should_not be_nil
xpath = "//div[@id='completed_container']//div[@id='line_todo_#{todo.id}']"
wait_for :timeout => 5 do
selenium.is_element_present(xpath)
end
end
Then /^I should not see "([^"]*)" in the deferred container$/ do |todo_description|
todo = @current_user.todos.find_by_description(todo_description)
todo.should_not be_nil
xpath = "//div[@id='tickler']//div[@id='line_todo_#{todo.id}']"
wait_for :timeout => 5 do
!selenium.is_element_present(xpath)
end
end
Then /^I should see "([^"]*)" in the due next month container$/ do |todo_description|
todo = @current_user.todos.find_by_description(todo_description)
todo.should_not be_nil
xpath = "//div[@id='due_after_this_month']//div[@id='line_todo_#{todo.id}']"
wait_for :timeout => 5 do
selenium.is_element_present(xpath)
end
end
Then /^I should see "([^"]*)" in project container for "([^"]*)"$/ do |todo_description, project_name|
todo = @current_user.todos.find_by_description(todo_description)
todo.should_not be_nil
@ -75,19 +130,25 @@ end
Then /^I should see "([^"]*)" in the active recurring todos container$/ do |repeat_pattern|
repeat = @current_user.recurring_todos.find_by_description(repeat_pattern)
repeat.should_not be_nil
xpath = "//div[@id='active_recurring_todos_container']//div[@id='recurring_todo_#{repeat.id}']"
selenium.wait_for_element("xpath=#{xpath}", :timeout_in_seconds => 5)
selenium.is_visible(xpath).should be_true
unless repeat.nil?
xpath = "//div[@id='active_recurring_todos_container']//div[@id='recurring_todo_#{repeat.id}']"
selenium.wait_for_element("xpath=#{xpath}", :timeout_in_seconds => 5)
selenium.is_visible(xpath).should be_true
else
Then "I should not see \"#{repeat_pattern}\""
end
end
Then /^I should not see "([^"]*)" in the completed recurring todos container$/ do |repeat_pattern|
repeat = @current_user.recurring_todos.find_by_description(repeat_pattern)
repeat.should_not be_nil
xpath = "//div[@id='completed_recurring_todos_container']//div[@id='recurring_todo_#{repeat.id}']"
selenium.wait_for_element("xpath=#{xpath}", :timeout_in_seconds => 5)
selenium.is_visible(xpath).should be_true
unless repeat.nil?
xpath = "//div[@id='completed_recurring_todos_container']//div[@id='recurring_todo_#{repeat.id}']"
selenium.wait_for_element("xpath=#{xpath}", :timeout_in_seconds => 5)
selenium.is_visible(xpath).should be_true
else
Then "I should not see \"#{repeat_pattern}\""
end
end

View file

@ -2,6 +2,10 @@ Given /this is a pending scenario/ do
pending
end
Given /^I set the locale to "([^"]*)"$/ do |locale|
@locale = locale
end
Given /^I am working on the mobile interface$/ do
@mobile_interface = true
end
@ -11,7 +15,7 @@ Then /the badge should show (.*)/ do |number|
xpath= "//span[@id='badge_count']"
if response.respond_to? :selenium
response.should have_xpath(xpath)
response.should have_xpath(xpath)
badge = response.selenium.get_text("xpath=#{xpath}").to_i
else
response.should have_xpath(xpath) do |node|

View file

@ -33,10 +33,6 @@ Given /^I have ([0-9]+) deferred todos$/ do |count|
end
end
Given /^I have a deferred todo "([^"]*)"$/ do |description|
Given "I have a deferred todo \"#{description}\" in the context \"context B\""
end
Given /^I have a deferred todo "([^"]*)" in the context "([^"]*)"$/ do |description, context_name|
context = @current_user.contexts.find_or_create(:name => context_name)
todo = @current_user.todos.create!(:context_id => context.id, :description => description)
@ -44,23 +40,40 @@ Given /^I have a deferred todo "([^"]*)" in the context "([^"]*)"$/ do |descript
todo.save!
end
Given /^I have a deferred todo "([^"]*)"$/ do |description|
Given "I have a deferred todo \"#{description}\" in the context \"context B\""
end
Given /^I have ([0-9]+) completed todos in project "([^"]*)" in context "([^"]*)"$/ do |count, project_name, context_name|
context = @current_user.contexts.find_by_name(context_name)
context.should_not be_nil
project = @current_user.projects.find_by_name(project_name)
project.should_not be_nil
@context = @current_user.contexts.find_by_name(context_name)
@context.should_not be_nil
@project = @current_user.projects.find_by_name(project_name)
@project.should_not be_nil
@todos = []
count.to_i.downto 1 do |i|
todo = @current_user.todos.create!(:context_id => context.id, :description => "todo #{i}", :project_id => project.id)
todo.complete!
@todo = @current_user.todos.create!(:context_id => @context.id, :description => "todo #{i}", :project_id => @project.id)
@todo.complete!
@todos << @todo
end
end
Given /^I have a completed todo "([^"]*)" in project "([^"]*)" in context "([^"]*)"$/ do |action_description, project_name, context_name|
Given "I have 1 completed todos in project \"#{project_name}\" in context \"#{context_name}\""
@todos[0].description = action_description
@todos[0].save!
end
Given /^I have (\d+) completed todos in project "([^"]*)" in context "([^"]*)" with tags "([^"]*)"$/ do |count, project_name, context_name, tags|
Given "I have #{count} completed todos in project \"#{project_name}\" in context \"#{context_name}\""
@todos.each { |t| t.tag_with(tags); t.save! }
end
Given /^I have ([0-9]+) completed todos in context "([^"]*)"$/ do |count, context_name|
context = @current_user.contexts.find_by_name(context_name)
context.should_not be_nil
count.to_i.downto 1 do |i|
todo = @current_user.todos.create!(:context_id => context.id, :description => "todo #{i}")
todo.complete!
@ -73,11 +86,13 @@ Given /^I have ([0-9]+) completed todos$/ do |count|
end
Given /^I have ([0-9]+) completed todos with a note$/ do |count|
context = @current_user.contexts.find_or_create(:name => "context D")
count.to_i.downto 1 do |i|
todo = @current_user.todos.create!(:context_id => context.id, :description => "todo #{i}", :notes => "note #{i}")
todo.complete!
end
Given "I have #{count} completed todos"
@todos.each { |t| t.notes = "note #{t.id}"; t.save!}
end
Given /^I have ([0-9]+) completed todos with a note in project "([^"]*)" in context "([^"]*)" with tags "([^"]*)"$/ do |count, project_name, context_name, tags|
Given "I have #{count} completed todos in project \"#{project_name}\" in context \"#{context_name}\" with tags \"#{tags}\""
@todos.each { |t| t.notes = "note #{t.id}"; t.save! }
end
Given /^I have a todo with description "([^"]*)" in project "([^"]*)" with tags "([^"]*)" in the context "([^"]*)"$/ do |action_description, project_name, tags, context_name|
@ -146,10 +161,14 @@ When /^I mark "([^"]*)" as uncompleted$/ do |action_description|
todo_container = "p#{todo.project_id}items" if @source_view=="project"
todo_container = "c#{todo.context_id}items" if @source_view=="context" || @source_view=="todos" || @source_view=="tag"
todo_container.should_not == "fail"
todo_container.should_not == "fail" unless @source_view=="done"
wait_for :timeout => 5 do
selenium.is_element_present("//div[@id='#{todo_container}']//div[@id='line_todo_#{todo.id}']")
unless @source_view=="done"
wait_for :timeout => 5 do
selenium.is_element_present("//div[@id='#{todo_container}']//div[@id='line_todo_#{todo.id}']")
end
else
wait_for_ajax
end
end
@ -157,7 +176,6 @@ When /^I mark the complete todo "([^"]*)" active$/ do |action_description|
When "I mark \"#{action_description}\" as uncompleted"
end
When /^I star the action "([^"]*)"$/ do |action_description|
todo = @current_user.todos.find_by_description(action_description)
todo.should_not be_nil
@ -175,6 +193,24 @@ When /^I star the action "([^"]*)"$/ do |action_description|
end
end
When /^I unstar the action "([^"]*)"$/ do |action_description|
todo = @current_user.todos.find_by_description(action_description)
todo.should_not be_nil
xpath_unstarred = "//div[@id='line_todo_#{todo.id}']//img[@class='unstarred_todo']"
xpath_starred = "//div[@id='line_todo_#{todo.id}']//img[@class='starred_todo']"
selenium.is_element_present(xpath_starred).should be_true
star_img = "//img[@id='star_img_#{todo.id}']"
selenium.click(star_img, :wait_for => :ajax, :javascript_framework => :jquery)
wait_for :timeout => 5 do
selenium.is_element_present(xpath_unstarred)
end
end
Then /^I should see a starred "([^"]*)"$/ do |action_description|
todo = @current_user.todos.find_by_description(action_description)
todo.should_not be_nil
@ -184,6 +220,18 @@ Then /^I should see a starred "([^"]*)"$/ do |action_description|
selenium.is_element_present(xpath_starred).should be_true
end
Then /^I should see an unstarred "([^"]*)"$/ do |action_description|
todo = @current_user.todos.find_by_description(action_description)
todo.should_not be_nil
xpath_starred = "//div[@id='line_todo_#{todo.id}']//img[@class='unstarred_todo']"
wait_for :timeout => 5 do
selenium.is_element_present(xpath_starred)
end
end
When /^I delete the action "([^"]*)"$/ do |action_description|
todo = @current_user.todos.find_by_description(action_description)
todo.should_not be_nil
@ -231,61 +279,6 @@ Then /^a confirmation for adding a new context "([^"]*)" should be asked$/ do |c
selenium.get_confirmation.should == "New context '#{context_name}' will be also created. Are you sure?"
end
Then /^I should see "([^"]*)" in the deferred container$/ do |todo_description|
todo = @current_user.todos.find_by_description(todo_description)
todo.should_not be_nil
xpath = "//div[@id='tickler']//div[@id='line_todo_#{todo.id}']"
wait_for :timeout => 5 do
selenium.is_element_present(xpath)
end
end
Then /^I should see "([^"]*)" in the action container$/ do |todo_description|
todo = @current_user.todos.find_by_description(todo_description)
todo.should_not be_nil
xpath = "//div[@id='p#{todo.project.id}items']//div[@id='line_todo_#{todo.id}']"
wait_for :timeout => 5 do
selenium.is_element_present(xpath)
end
end
Then /^I should see "([^"]*)" in the completed container$/ do |todo_description|
todo = @current_user.todos.find_by_description(todo_description)
todo.should_not be_nil
xpath = "//div[@id='completed_container']//div[@id='line_todo_#{todo.id}']"
wait_for :timeout => 5 do
selenium.is_element_present(xpath)
end
end
Then /^I should not see "([^"]*)" in the deferred container$/ do |todo_description|
todo = @current_user.todos.find_by_description(todo_description)
todo.should_not be_nil
xpath = "//div[@id='tickler']//div[@id='line_todo_#{todo.id}']"
wait_for :timeout => 5 do
!selenium.is_element_present(xpath)
end
end
Then /^I should see "([^"]*)" in the due next month container$/ do |todo_description|
todo = @current_user.todos.find_by_description(todo_description)
todo.should_not be_nil
xpath = "//div[@id='due_after_this_month']//div[@id='line_todo_#{todo.id}']"
wait_for :timeout => 5 do
selenium.is_element_present(xpath)
end
end
Then /^the selected project should be "([^"]*)"$/ do |content|
# Works for mobile. TODO: make it work for both mobile and non-mobile
field_labeled("Project").element.search(".//option[@selected = 'selected']").inner_html.should =~ /#{content}/

View file

@ -7,24 +7,47 @@ module NavigationHelpers
#
def path_to(page_name)
options = @mobile_interface ? {:format => :m} : {}
options.merge({:locale => @locale}) unless @locale.blank?
puts "@@@ l=#{@locale} sv = #{@source_view}- #{options}"
@source_view = nil
case page_name
when /the home\s?page/
@source_view = "todos"
root_path(options)
when /the done page/
@source_view = "done"
done_overview_path(options)
when /the done actions page for context "([^"]*)"/i
@source_view = "done"
context = @current_user.contexts.find_by_name($1)
done_todos_context_path(context)
done_todos_context_path(context, options)
when /the done actions page for project "([^"]*)"/i
@source_view = "done"
project = @current_user.projects.find_by_name($1)
done_todos_project_path(project)
done_todos_project_path(project, options)
when /the done actions page for tag "([^"]*)"/i
@source_view = "done"
done_tag_path($1, options)
when /the done actions page/
@source_view = "done"
done_todos_path(options)
when /the all done actions page for context "([^"]*)"/i
@source_view = "done"
context = @current_user.contexts.find_by_name($1)
all_done_todos_context_path(context, options)
when /the all done actions page for project "([^"]*)"/i
@source_view = "done"
project = @current_user.projects.find_by_name($1)
all_done_todos_project_path(project, options)
when /the all done actions page for tag "([^"]*)"/i
@source_view = "done"
all_done_tag_path($1, options)
when /the all done actions page/
@source_view = "done"
all_done_todos_path(options)
when /the statistics page/
@source_view = "stats"
stats_path(options)

View file

@ -8,79 +8,81 @@ Feature: Show done
| login | password | is_admin |
| testuser | secret | false |
And I have logged in as "testuser" with password "secret"
And I have 1 completed todos with a note
And I have a context called "@pc"
And I have a project called "test project"
And I have 1 completed todos in project "test project" in context "@pc" with tags "starred"
Scenario: Visit done overview page
When I go to the done page
Then I should see "Last Completed Actions"
And I should see "Last Completed Projects"
And I should see "Last Completed Repeating Actions"
Scenario: Home page links to show all completed todos
When I go to the home page
Scenario Outline: Page with actions links to show all completed actions
When I go to the <page>
Then I should see "Completed actions"
And I should see "Show all"
When I follow "Show all"
Then I should be on the done actions page
Then I should be on the <next page>
Scenarios:
| page | next page |
| home page | done actions page |
| context page for "@pc" | done actions page for context "@pc" |
| "test project" project | done actions page for project "test project" |
| tag page for "starred" | done actions page for tag "starred" |
Scenario Outline: I can see all todos completed in the last timeperiod
Given I have a context called "@pc"
And I have a project called "test"
And I have 1 completed todos in project "test" in context "@pc"
When I go to the <page>
Then I should see "todo 1"
And I should see "Completed today"
And I should see "Completed in the rest of this week"
And I should see "Completed in the rest of this month"
Scenarios:
| page |
| done actions page |
| done actions page for context "@pc" |
| done actions page for project "test" |
Scenario: I can see all todos completed
When I go to the done actions page
| page |
| done actions page |
| done actions page for context "@pc" |
| done actions page for project "test project" |
| done actions page for tag "starred" |
Scenario Outline: I can see all todos completed
When I go to the <page>
And I should see "You can see all completed actions here"
When I follow "here"
Then I should be on the all done actions page
Scenario: I can browse all todos completed by page
Given I have 50 completed todos with a note
When I go to the all done actions page
Then I should be on the <other page>
Scenarios:
| page | other page |
| done actions page | all done actions page |
| done actions page for project "test project" | all done actions page for project "test project" |
| done actions page for context "@pc" | all done actions page for context "@pc" |
| done actions page for tag "starred" | all done actions page for tag "starred" |
Scenario Outline: I can browse all todos completed by page
Given I have 50 completed todos with a note in project "test project" in context "@pc" with tags "starred"
When I go to the <page>
Then I should see the page selector
When I follow "2"
Then I should be on the all done actions page
Then I should be on the <page>
And the page should be "2"
Scenario: The context page for a context shows a link to all completed actions
Given I have a context called "@pc"
And I have 1 completed todos in context "@pc"
When I go to the context page for "@pc"
Then I should see "Completed actions"
And I should see "Show all"
When I follow "Show all"
Then I should be on the done actions page for context "@pc"
Scenario: The project page for a project shows a link to all completed actions
Given I have a context called "@pc"
And I have a project called "test"
And I have 1 completed todos in project "test" in context "@pc"
When I go to the "test" project
Then I should see "Completed actions"
And I should see "Show all"
When I follow "Show all"
Then I should be on the done actions page for project "test"
Scenarios:
| page |
| all done actions page |
| all done actions page for project "test project" |
| all done actions page for context "@pc" |
| all done actions page for tag "starred" |
Scenario: The projects page shows a link to all completed projects
Given I have a completed project called "finished"
When I go to the projects page
Then I should see "finished"
Then I should see "finished"
And I should see "Show all"
When I follow "Show all"
Then I should be on the done projects page
And I should see "finished"
Scenario: I can browse all completed projects by page
Given I have 40 completed projects
When I go to the projects page
@ -95,12 +97,12 @@ Feature: Show done
Scenario: The recurring todos page shows a link to all completed recurring todos
Given I have a completed repeat pattern "finished"
When I go to the recurring todos page
Then I should see "finished"
Then I should see "finished"
And I should see "Show all"
When I follow "Show all"
Then I should be on the done recurring todos page
And I should see "finished"
Scenario: I can browse all completed recurring todos by page
Given I have 40 completed repeat patterns
When I go to the recurring todos page
@ -110,31 +112,98 @@ Feature: Show done
When I follow "2"
Then I should be on the done recurring todos page
And the page should be "2"
@selenium
Scenario: I can toggle a done recurring todo active from done page
Given I have a completed repeat pattern "test"
Given I have a completed repeat pattern "test pattern"
When I go to the done recurring todos page
Then I should see "test"
When I mark the pattern "test" as active
Then I should not see "test" in the completed recurring todos container
Then I should see "test pattern"
When I mark the pattern "test pattern" as active
Then I should not see "test pattern" in the completed recurring todos container
When I go to the recurring todos page
Then I should see "test" in the active recurring todos container
Then I should see "test pattern" in the active recurring todos container
@selenium
Scenario: I can delete a recurring todo from the done page
Given this scenario is pending
Scenario: I can toggle a todo active from the done page
Given this scenario is pending
Given I have a completed repeat pattern "test pattern"
When I go to the done recurring todos page
Then I should see "test pattern"
When I delete the pattern "test pattern"
Then I should not see "test pattern" in the completed recurring todos container
When I go to the recurring todos page
Then I should see "test pattern" in the active recurring todos container
Scenario: I can toggle a todo active from the all done page
Given this scenario is pending
Scenario: I can toggle a todo active from the project done page
Given this scenario is pending
@selenium @wip
Scenario Outline: I can toggle a todo active from the done pages
When I go to the <page>
Then I should see "todo 1"
When I mark the complete todo "todo 1" active
Then I should not see "todo 1"
When I go to the <next page>
Then I should see "todo 1" in the context container for "@pc"
Scenario: I can toggle a todo active from the context done page
Given this scenario is pending
Scenarios:
| page | next page |
| done actions page | home page |
| all done actions page | home page |
| done actions page for context "@pc" | context page for "@pc" |
| done actions page for project "test project" | "test project" project |
| done actions page for tag "starred" | home page |
| all done actions page for context "@pc" | context page for "@pc" |
| all done actions page for project "test project"| "test project" project |
| all done actions page for tag "starred" | home page |
@selenium
Scenario Outline: I can toggle the star of a todo from the done pages
When I go to the <page>
Then I should see a starred "todo 1"
When I unstar the action "todo 1"
Then I should see an unstarred "todo 1"
Scenarios:
| page |
| done actions page |
| all done actions page |
| done actions page for context "@pc" |
| done actions page for project "test project" |
| done actions page for tag "starred" |
| all done actions page for context "@pc" |
| all done actions page for project "test project"|
| all done actions page for tag "starred" |
@selenium
Scenario: I can edit a project to active from the project done page
Given this scenario is pending
@wip
Scenario Outline: All pages are internationalized
Given I set the locale to "<locale>"
When I go to the <page>
Then I should not see "translation missing"
Scenarios:
| page | locale |
| done actions page | en |
| all done actions page | en |
| done actions page for context "@pc" | en |
| done actions page for project "test project" | en |
| done actions page for tag "starred" | en |
| all done actions page for context "@pc" | en |
| all done actions page for project "test project"| en |
| all done actions page for tag "starred" | en |
| done actions page | nl |
| all done actions page | nl |
| done actions page for context "@pc" | nl |
| done actions page for project "test project" | nl |
| done actions page for tag "starred" | nl |
| all done actions page for context "@pc" | nl |
| all done actions page for project "test project"| nl |
| all done actions page for tag "starred" | nl |
| done actions page | de |
| all done actions page | de |
| done actions page for context "@pc" | de |
| done actions page for project "test project" | de |
| done actions page for tag "starred" | de |
| all done actions page for context "@pc" | de |
| all done actions page for project "test project"| de |
| all done actions page for tag "starred" | de |