fix tests for dependencies and fix minor issues

This commit is contained in:
Reinier Balt 2011-03-08 23:28:48 +01:00
parent 70b2ee1e4f
commit 6a9b3e28d5
15 changed files with 570 additions and 433 deletions

View file

@ -447,7 +447,7 @@ class TodosController < ApplicationController
format.js do
if @saved
determine_down_count
if source_view_is_one_of(:todo, :deferred)
if source_view_is_one_of(:todo, :deferred, :project)
determine_remaining_in_context_count(@context_id)
elsif source_view_is :calendar
@original_item_due_id = get_due_id_for_calendar(@original_item_due)

View file

@ -90,7 +90,7 @@ module TodosHelper
end
def remote_toggle_checkbox(todo=@todo)
check_box_tag('item_id', toggle_check_todo_path(todo), todo.completed?, :class => 'item-checkbox',
check_box_tag("mark_complete_#{todo.id}", toggle_check_todo_path(todo), todo.completed?, :class => 'item-checkbox',
:title => todo.pending? ? t('todos.blocked_by', :predecessors => todo.uncompleted_predecessors.map(&:description).join(', ')) : "", :readonly => todo.pending?)
end

View file

@ -1,5 +1,5 @@
<%- if @saved -%>
TracksPages.page_notify('notice', '<%= escape_javascript("The action was deleted succesfully") %>', 5);
TracksPages.page_notify('notice', '<%= escape_javascript(t('todos.deleted_success')) %>', 5);
TracksPages.set_page_badge(<%=@down_count%>);
remove_todo_from_page();
show_new_todo_if_todo_was_recurring();
@ -59,14 +59,24 @@ function show_new_todo_if_todo_was_recurring() {
}
function activate_pending_todos() {
<% # Activate pending todos that are successors of the deleted -%>
<% @pending_to_activate.each do |t| -%>
<% if source_view_is(:project) or source_view_is(:tag) %>
$('#<%=dom_id(t)%>').remove();
<% end -%>
$('#<%=item_container_id(t)%>').append("<%=escape_javascript(render(:partial => t, :locals => { :parent_container_type => parent_container_type }))%>");
$('#<%= dom_id(t, 'line')%>').effect('highlight', {}, 2000 );
<% end -%>
<% # Activate pending todos that are successors of the completed
if @saved && @pending_to_activate
# do not render the js in case of an error or if no todos to activate
@pending_to_activate.each do |t|
html = escape_javascript(render(:partial => t, :locals => { :parent_container_type => parent_container_type }))
# only project and tag view have a deferred/blocked container
if source_view_is_one_of(:project,:tag) -%>
$('#<%= dom_id(t) %>').fadeOut(400, function() {
$('#<%= dom_id(t) %>').remove();
$('#<%= item_container_id(t) %>').append("<%= html %>");
<%= "$('#tickler-empty-nd').show();" if @remaining_deferred_or_pending_count==0 -%>
});
<% else -%>
$('#<%= item_container_id(t) %>').append("<%= html%>");
<% end -%>
TodoItems.highlight_todo('#<%= dom_id(t, 'line')%>');
<% end -%>
<% end -%>
}
function html_for_new_recurring_todo() {

View file

@ -95,32 +95,33 @@ function update_empty_tag_container(next_steps) {
<% if @new_recurring_todo # hide js if @new_recurring_todo is not there-%>
function highlight_updated_recurring_todo(next_steps) {
highlight_todo('#<%= dom_id(@new_recurring_todo)%>');
TodoItems.highlight_todo('#<%= dom_id(@new_recurring_todo)%>');
next_steps.go();
}
<% end -%>
function highlight_updated_todo(next_steps) {
highlight_todo('#<%= dom_id(@todo)%>');
TodoItems.highlight_todo('#<%= dom_id(@todo)%>');
next_steps.go();
}
function highlight_todo(id) {
$(id).effect('highlight', {}, 2000, function(){ });
}
function activate_pending_todos(next_steps) {
<% # Activate pending todos that are successors of the completed
if @saved && @pending_to_activate
# do not render the js in case of an error or if no todos to activate
@pending_to_activate.each do |t|
html = escape_javascript(render(:partial => t, :locals => { :parent_container_type => parent_container_type }))
# only project and tag view have a deferred/blocked container
if source_view_is_one_of(:project,:tag) -%>
$('#<%= dom_id(t) %>').fadeOut(400, function() {
$('#<%= dom_id(t) %>').remove();
$('#<%= item_container_id(t) %>').append("<%= html %>");
<%= "$('#tickler-empty-nd').show();" if @remaining_deferred_or_pending_count==0 -%>
});
<% end -%>
$('#<%= item_container_id(t) %>').append("<%= escape_javascript(render(:partial => t, :locals => { :parent_container_type => parent_container_type }))%>");
highlight_todo('#<%= dom_id(t)%>');
<% else -%>
$('#<%= item_container_id(t) %>').append("<%= html%>");
<% end -%>
TodoItems.highlight_todo('#<%= dom_id(t)%>');
<% end -%>
<% end -%>
next_steps.go();
@ -135,7 +136,7 @@ function block_predecessors(next_steps) {
$('#<%= dom_id(t) %>').remove();
<% if source_view_is(:project) or source_view_is(:tag) # Insert it in deferred/pending block if existing -%>
$('#<%= item_container_id(t) %>').append("<%= escape_javascript(render(:partial => t, :locals => { :parent_container_type => parent_container_type }))%>");
highlight_todo('#<%= dom_id(t)%>');
TodoItems.highlight_todo('#<%= dom_id(t)%>');
<% end -%>
});
<% end -%>

View file

@ -426,6 +426,7 @@ en:
no_completed_recurring: "Currently there are no completed recurring todos"
add_new_recurring: "Add a new recurring action"
recurring_deleted_success: "The recurring action was deleted succesfully."
deleted_success: "The action was deleted succesfully."
error_deleting_recurring: "There was an error deleting the recurring todo \'%{description}\'"
error_starring_recurring: "Could not toggle the star of recurring todo \'%{description}\'"
recurrence_period: "Recurrence period"

View file

@ -1,88 +1,5 @@
---
nl:
common:
actions: Acties
back: Terug
add: Toevoegen
go_back: Ga terug
logout: Log uit
none: Geen
cancel: Annuleer
optional: optioneel
notes: Notities
forum: Forum
server_error: Een fout heeft op de server plaatsgevonden
action: Actie
projects: Projecten
project: Project
contribute: Bijdragen
ok: Ok
website: Website
numbered_step: Stap %{number}
context: Context
sort:
by_task_count_title: Sorteer op aantal acties
by_task_count_title_confirm: Weet u zeker dat u deze projecten alphabetisch wilt sorteren? Dat zal de huidige sorteervolgorde aanpassen.
alphabetically: Alphabetisch
sort: Sorteer
alphabetically_title: Sorteer projecten alphabetisch
alphabetically_confirm: Weet u zeker dat u deze projecten alphabetisch wilt sorteren? Dat zal de huidige sorteervolgorde aanpassen.
by_task_count: Bij aantal acties
create: Maken
description: Beschrijving
errors_with_fields: Er waren problemen met de volgende velden
contexts: Contexten
drag_handle: SLEEP
update: Bijwerken
bugs: Fouten
wiki: Wiki
ajaxError: Er is een fout opgetreden bij het ophalen van gegevens van de server
email: E-mail
search: Zoeken
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:
recurring_todos: Terugkerende todos
manage_users_title: Toevoegen of verwijderen gebruikers
api_docs: REST API Docs
feeds: Feeds
stats: Statistieken
starred: Ster
notes_title: Toon alle notities
tickler_title: Tickler
manage_users: Beheren gebruikers
preferences: Voorkeuren
export_title: Import en export van gegevens
integrations_: Integreer Tracks
feeds_title: Zie een lijst met beschikbare feeds
calendar_title: Kalender met acties met deadline
recurring_todos_title: Beheren terugkerende acties
completed_tasks: Gereed
stats_title: Zie je statistieken
tickler: Tickler
home_title: Start
starred_title: Zie je ster acties
organize: Organiseer
view: Bekijk
completed_tasks_title: Afgerond
export: Export
home: Start
contexts_title: Contexten
projects_title: Projecten
preferences_title: Toon mijn voorkeuren
calendar: Agenda
search: Zoeken in alle items
number:
format:
separator: ","
@ -112,19 +29,102 @@ nl:
applescript_next_action_prompt: "Omschrijving van de actie:"
applescript_success_before_id: Nieuwe actie met ID
applescript_success_after_id: gemaakt
common:
actions: Acties
back: Terug
add: Toevoegen
logout: Log uit
go_back: Ga terug
none: Geen
cancel: Annuleer
optional: optioneel
notes: Notities
forum: Forum
server_error: Een fout heeft op de server plaatsgevonden
action: Actie
projects: Projecten
project: Project
contribute: Bijdragen
ok: Ok
website: Website
numbered_step: Stap %{number}
context: Context
drag_handle: SLEEP
sort:
by_task_count_title: Sorteer op aantal acties
by_task_count_title_confirm: Weet u zeker dat u deze projecten alphabetisch wilt sorteren? Dat zal de huidige sorteervolgorde aanpassen.
alphabetically: Alphabetisch
alphabetically_title: Sorteer projecten alphabetisch
alphabetically_confirm: Weet u zeker dat u deze projecten alphabetisch wilt sorteren? Dat zal de huidige sorteervolgorde aanpassen.
sort: Sorteer
by_task_count: Bij aantal acties
create: Maken
description: Beschrijving
contexts: Contexten
errors_with_fields: Er waren problemen met de volgende velden
update: Bijwerken
bugs: Fouten
wiki: Wiki
email: E-mail
ajaxError: Er is een fout opgetreden bij het ophalen van gegevens van de server
search: Zoeken
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:
manage_users_title: Toevoegen of verwijderen gebruikers
recurring_todos: Terugkerende todos
api_docs: REST API Docs
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
tickler: Tickler
completed_tasks: Gereed
stats_title: Zie je statistieken
view: Bekijk
organize: Organiseer
completed_tasks_title: Afgerond
contexts_title: Contexten
export: Export
home: Start
preferences_title: Toon mijn voorkeuren
calendar: Agenda
search: Zoeken in alle items
projects_title: Projecten
models:
project:
feed_title: Tracks Projecten
feed_description: Een overzicht van alle projecten voor %{username}
todo:
error_date_must_be_future: moet een datum in de toekomst zijn
user:
error_context_not_associated: Context %{context} niet geassocieerd met gebruikers %{user}.
error_project_not_associated: Project %{project} niet geassocieerd met gebruikers %{user}.
preference:
due_styles:
- Deadline over ____ dagen
- Deadline op ____
user:
error_context_not_associated: Context %{context} niet geassocieerd met gebruikers %{user}.
error_project_not_associated: Project %{project} niet geassocieerd met gebruikers %{user}.
data:
import_successful: De import was succesvol
import_errors: Er hebben zich fouten voorgedaan bij de import
@ -143,39 +143,39 @@ nl:
context: Context
description: Beschrijving
due: Deadline
user:
last_name: Achternaam
first_name: Voornaam
preference:
show_hidden_projects_in_sidebar: Toon verborgen projecten in sidebar
date_format: Datum formaat
show_hidden_contexts_in_sidebar: Toon verborgen contexten in sidebar
date_format: Datum formaat
sms_context: Standaard context voor email
verbose_action_descriptors: Context en project uitschrijven in actielijst
mobile_todos_per_page: Acties per pagina (mobiel)
staleness_starts: Begin van markeren openstaande actie
verbose_action_descriptors: Context en project uitschrijven in actielijst
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
locale: Taal
due_style: Deadline stijl
show_project_on_todo_done: Ga naar project pagina wanneer actie gereed is
sms_email: Van email
show_project_on_todo_done: Ga naar project pagina wanneer actie gereed is
show_completed_projects_in_sidebar: Toon afgeronde projecten in sidebar
user:
last_name: Achternaam
first_name: Voornaam
errors:
messages:
record_invalid: "Validatie mislukt: %{errors}"
greater_than_or_equal_to: moet groter of gelijk zijn aan %{count}
record_invalid: "Validatie mislukt: %{errors}"
confirmation: komt niet overeen met de configuratie
less_than_or_equal_to: moet kleiner of gelijk zijn aan %{count}
blank: mag niet leeg zijn
exclusion: is gereserveerd
invalid: mag niet een komma (',') karakter bevatten
odd: moet oneven zijn
wrong_length: heeft de verkeerde lengte (moet %{count} karakters lang zijn)
empty: mag niet leeg zijn
wrong_length: heeft de verkeerde lengte (moet %{count} karakters lang zijn)
even: moet even zijn
too_short: is te kort (minimum is %{count} karakters)
less_than: moet kleiner zijn dan %{count}
@ -201,76 +201,78 @@ nl:
full_messages:
format: "%{attribute} %{message}"
stats:
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
totals_active_project_count: Van deze zijn %{count} actieve projecten
tag_cloud_title: Tag Cloud voor alle acties
totals_first_action: Sinds uw eerste actie op %{date}
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_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_deferred_actions: waarvan %{count} uitgestelde acties in de tickler zijn
top10_longrunning: Top 10 langstlopende projecten
totals_first_action: Sinds uw eerste actie op %{date}
actions_dow_30days_title: Dag van de week (laatste 30 dagen)
current_running_time_of_incomplete_visible_actions: Huidige looptijd van onvolledige zichtbare acties
legend:
actions: Acties
number_of_days: Aantal dagen geleden
number_of_actions: Aantal acties
day_of_week: Dag van de week
running_time: Looptijd van een actie (weken)
percentage: Percentage
months_ago: Maanden geleden
running_time_legend:
actions: Acties
percentage: Percentage
weeks: Looptijd van een actie (weken). Klik op een balk voor meer info
totals_action_count: u heeft een totaal van %{count} 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
totals_deferred_actions: waarvan %{count} uitgestelde acties in de tickler zijn
legend:
number_of_days: Aantal dagen geleden
actions: Acties
number_of_actions: Aantal acties
day_of_week: Dag van de week
percentage: Percentage
running_time: Looptijd van een actie (weken)
months_ago: Maanden geleden
top10_longrunning: Top 10 langstlopende projecten
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
actions_last_year: Acties in de afgelopen jaren
totals_context_count: U heeft %{count} contexten.
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
totals_visible_context_count: Van deze zijn %{count} zichtbare contexten
totals_blocked_actions: "%{count} zijn afhankelijk van de voltooiing van hun acties."
action_completion_time_title: Doorlooptijd (alle voltooide acties)
totals_project_count: U heeft %{count} projecten.
actions_min_max_completion_days: De max-/minimum dagen tot voltooiing is %{min}/%{max}.
actions_last_year: Acties in de afgelopen jaren
totals_context_count: U heeft %{count} contexten.
actions_min_completion_time: De minimale tijd tot afronding is %{time}.
tags: Tags
no_tags_available: geen tags beschikbaar
actions_day_of_week_title: Dag van de week (alle acties)
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
actions_further: en verder
tod30: Tijd van de dag (laatste 30 dagen)
tag_cloud_90days_description: Deze tag cloud bevat tags van acties die zijn gemaakt of voltooid in de afgelopen 90 dagen.
totals_project_count: U heeft %{count} projecten.
tags: Tags
actions_min_max_completion_days: De max-/minimum dagen tot voltooiing is %{min}/%{max}.
running_time_all: Huidige looptijd van alle onvolledige acties
totals_tag_count: U heeft %{count} tags geplaatst op acties.
time_of_day: Tijd van de dag (alle acties)
actions_30days_title: Acties in de afgelopen 30 dagen
totals_hidden_project_count: "%{count} zijn verborgen"
spread_of_actions_for_all_context: Verdeling van acties voor alle contexten
actions_avg_created: In de afgelopen 12 maanden heeft u gemiddeld% {count} acties aangemaakt
click_to_show_actions_from_week: Klik %{link} om de acties van week %{week} en verder te zien.
other_actions_label: (anderen)
totals_completed_project_count: en %{count} zijn afgeronde projecten.
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
actions_further: en verder
tod30: Tijd van de dag (laatste 30 dagen)
tag_cloud_90days_description: Deze tag cloud bevat tags van acties die zijn gemaakt of voltooid in de afgelopen 90 dagen.
click_to_return: Klik %{link} om terug te keren naar de statistieken pagina.
top10_projects_30days: Top 10 project in de laatste 30 dagen
actions_selected_from_week: Gekozen acties van week
top10_projects: Top 10 projecten
spread_of_running_actions_for_visible_contexts: Verdeling van actieve acties voor zichtbare contexten
totals_hidden_context_count: en %{count} zijn verborgen contexten.
actions_avg_completed: en voltooide een gemiddelde van %{count} acties per maand.
totals: Totalen
spread_of_actions_for_all_context: Verdeling van acties voor alle contexten
actions_avg_created: In de afgelopen 12 maanden heeft u gemiddeld% {count} acties aangemaakt
click_to_show_actions_from_week: Klik %{link} om de acties van week %{week} en verder te zien.
other_actions_label: (anderen)
totals_completed_project_count: en %{count} zijn afgeronde projecten.
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
no_actions_selected: Er zijn geen acties geselecteerd.
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
@ -278,37 +280,35 @@ nl:
avg_created: Gem gemaakt
avg_completed: Gem afgerond
created: Gemaakt
no_actions_selected: Er zijn geen acties geselecteerd.
click_to_update_actions: Klik op een balk in de grafiek op de acties hieronder aan te passen.
running_time_all_legend:
actions: Acties
running_time: Looptijd van een actie (weken). Klik op een balk voor meer info
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}\'
recurring_action_deleted: Actie werd verwijderd. Omdat deze actie herhalend is. werd een nieuwe actie toegevoegd
completed_actions: Voltooide acties
blocked_by: Geblokkeerd door %{predecessors}
completed_recurring: Afgesloten terugkerende todos
added_new_next_action: Nieuwe actie toegevoegd
blocked_by: Geblokkeerd door %{predecessors}
unable_to_add_dependency: Niet in staat om de afhankelijkheid toe te voegen
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
defer_date_after_due_date: Uitsteldatum is na de vervaldag. Gelieve vervaldag bewerken alvorens uitsteldatum aan te passen.
unable_to_add_dependency: Niet in staat om de afhankelijkheid toe te voegen
done: Voltooid?
star_action_with_description: markeer de actie '%{description}' met een ster
tagged_with: gelabeld met &lsquo;%{tag_name}&rsquo;
completed: Afgerond
no_deferred_actions_with: Geen uitgestelde acties met de tag '%{tag_name}'
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}'
action_due_on: (deadline actie op %{date})
archived_tasks_title: "TRACKS:: Gearchiveerde voltooide taken"
remove_dependency: Verwijder afhankelijkheid (zal niet de actie zelf verwijderen)
list_incomplete_next_actions: Toon onvoltooide acties
@ -336,16 +336,16 @@ nl:
due_today: deadline vandaag
due_within_a_week: deadline binnen een week
older_completed_items: Oudere voltooide items
no_actions_due_this_week: Geen acties met deadline in rest van deze week
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
no_deferred_pending_actions: Momenteel zijn er geen uitgestelde of in wachtende acties
no_recurring_todos: Momenteel zijn er geen terugkerende acties
error_completing_todo: Er was een fout bij het voltooien / activeren van de terugkerende actie '%{description}'
convert_to_project: Maak project
no_deferred_pending_actions: Momenteel zijn er geen uitgestelde of in wachtende acties
completed_last_day: Voltooid in de laatste 24 uur
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
show_in_days: Toon over %{days} dagen
no_project: -- Geen project --
completed_more_than_x_days_ago: Voltooid meer dan %{count} dagen geleden
@ -354,6 +354,7 @@ nl:
edit: Bewerken
pending: Wachtend
completed_actions_with: Afgeronde acties met de tag %{tag_name}
deleted_success: De actie werd met succes verwijderd.
completed_tasks_title: TRACKS::Voltooide taken
feed_title_in_project: In het project '%{project}'
clear_due_date: Maak deadline leeg
@ -363,8 +364,8 @@ nl:
show_on_date: Toon op %{date}
recurrence_period: Herhaling periode
deferred_actions_with: Uitgestelde acties met de tag '%{tag_name}'
confirm_delete: Weet u zeker dat u de actie '%{description}' wilt verwijderen?
recurring_deleted_success: De recurrente actie is succesvol verwijderd.
confirm_delete: Weet u zeker dat u de actie '%{description}' wilt verwijderen?
next_actions_title: Tracks - Acties
next_action_description: Actie beschrijving
deferred_tasks_title: TRACKS::Tickler
@ -392,17 +393,16 @@ nl:
recurring_todos: Terugkerende acties
delete: Verwijder
drag_action_title: Sleep naar een andere actie om deze afhankelijk te maken van die actie
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."
depends_on: Hangt af van
action_marked_complete: De actie <strong>'%{description}'</strong> werd gemarkeerd als <strong>%{completed}</strong>
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
error_starring: Kon niet de ster van deze actie niet omzetten \'%{description}\'
show_tomorrow: Toon morgen
calendar:
get_in_ical_format: Ontvang deze agenda in iCal-formaat
due_next_week: Deadline deze week
@ -412,71 +412,81 @@ nl:
due_today: Deadline vandaag
due_next_month_and_later: Deadline in %{month} en later
no_actions_due_after_this_month: Geen acties met deadline na deze maand
no_actions_due_this_month: Geen acties met deadline in de rest van 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
show_tomorrow: Toon morgen
recurrence:
ends_on_number_times: Eindigt na %{number} keer
ends_on_date: Eindigt op %{date}
every_work_day: Elke werkdag
ends_on_number_times: Eindigt na %{number} keer
recurrence_on_due_date: de datum dat deadline van de actie is
weekly_options: Instellingen voor de wekelijkse terugkerende acties
weekly: Wekelijks
monthly_options: Instellingen voor maandelijks terugkerende acties
weekly: Wekelijks
monthly: Maandelijks
starts_on: Begint op
daily_options: Instellingen voor dagelijks terugkerende acties
monthly: Maandelijks
daily: Dagelijks
show_option_always: altijd
recurrence_on_options: Stel herhaling in op
yearly_every_x_day: Elke %{month} %{day}
recurrence_on_options: Stel herhaling in op
daily_every_number_day: Elke %{number} dag(en)
ends_on: Eindigt op
weekly_every_number_week: Herhaalt elke %{number} weken op
ends_on: Eindigt op
show_options: Toon de actie
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)
no_end_date: Geen einddatum
yearly_every_xth_day: De %{day} %{day_of_week} van %{month}
day_x_on_every_x_month: Dag %{dag} op elke %{month} maand
yearly_options: Instellingen voor jaarlijks terugkerende acties
show_days_before: "%{days} dagen v\xC3\xB3\xC3\xB3r de deadline van actie"
monthly_every_xth_day: De %{dag} %{day_of_week} van elke %{month} maand
yearly: Jaarlijks
monthly_every_xth_day: De %{dag} %{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."
no_deferred_actions: Momenteel zijn er geen uitgestelde acties.
recurrence_completed: Er is geen volgende actie na de terugkerende actie die u zojuist hebt voltooid. De herhaling is voltooid
due: Deadline
no_actions_found: Geen acties gevonden
in_pending_state: in wachtende toestand
due: Deadline
action_marked_complete_error: De actie <strong>'%{description}'</strong> is niet gemarkeerd als <strong>%{completed} vanwege een fout op de server.</strong>
depends_on_separate_with_commas: Afhankelijk van (gescheiden door komma's)
recurring_action_saved: Terugkerende actie opgeslagen
action_saved_to_tickler: Actie opgeslagen in tickler
completed_in_archive:
one: Er is een voltooide actie in het archief.
other: Er zijn %{count} afgeronde acties in het archief.
action_saved_to_tickler: Actie opgeslagen in tickler
depends_on_separate_with_commas: Afhankelijk van (gescheiden door komma's)
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
no_incomplete_actions: Er zijn geen onvoltooide acties
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?
errors:
user_unauthorized: "401 Unauthorized: Alleen administratieve gebruikers mogen deze functie gebruiken."
states:
hidden_plural: Verborgen
completed: Afgerond
completed_plural: Afgeronde
visible_plural: Zichtbare
visible: Zichtbaar
active_plural: Actieve
active: Actief
hidden: Verborgen
time:
am: ochtend
formats:
@ -485,19 +495,10 @@ nl:
short: "%d %B %H:%M"
long: "%A, %d. %B %Y, %H:%M"
pm: middag
states:
hidden_plural: Verborgen
completed: Afgerond
completed_plural: Afgeronde
visible_plural: Zichtbare
active_plural: Actieve
visible: Zichtbaar
active: Actief
hidden: Verborgen
preferences:
change_identity_url: Verander uw Identity URL
open_id_url: Uw OpenID URL is
staleness_starts_after: Ophopen begint na %{days} dagen
change_identity_url: Verander uw Identity URL
page_title: "TRACKS:: Voorkeuren"
change_password: Wijzig uw wachtwoord
token_description: Token (voor feeds en API gebruik)
@ -513,42 +514,42 @@ nl:
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.
projects:
default_tags_removed_notice: De standaard tags zijn verwijderd
default_context_set: Stel project standaard context in op %{default_context}
deferred_actions: Uitgestelde acties voor dit project
edit_project_title: Bewerk project
hide_form: Verberg formulier
default_tags_removed_notice: De standaard tags zijn verwijderd
page_title: "TRACKS:: Project: %{project}"
to_new_project_page: Ga naar de nieuwe projectpagina
no_notes_attached: Momenteel zijn er geen notities toegevoegd aan dit project
hide_form: Verberg formulier
deferred_actions_empty: Er zijn geen uitgestelde acties voor dit project
project_state: Project is %{state}.
show_form_title: Maak een nieuw project
todos_append: in dit project
to_new_project_page: Ga naar de nieuwe projectpagina
no_notes_attached: Momenteel zijn er geen notities toegevoegd aan dit project
notes: Notities
todos_append: in dit project
notes_empty: Er zijn geen notities voor dit project
no_projects: Momenteel zijn er geen projecten
hide_form_title: Verberg nieuw project formulier
completed_actions_empty: Er zijn nog geen afgeronde acties voor dit project
delete_project: Project verwijderen
delete_project_confirmation: Weet u zeker dat u wilt het project '%{name} wilt verwijderen?
show_form: Toevoegen van een project
list_projects: "TRACKS:: Overzicht van projecten"
add_project: Voeg project toe
delete_project_confirmation: Weet u zeker dat u wilt het project '%{name} wilt verwijderen?
set_default_tags_notice: Stel project standaard tags in op %{default_tags}
add_note: Een notitie toevoegen
project_saved_status: Project opgeslagen
settings: Instellingen
completed_projects: Voltooide projecten
list_projects: "TRACKS:: Overzicht van projecten"
add_project: Voeg project toe
hidden_projects: Verborgen projecten
delete_project_title: Verwijder het project
add_note_submit: Notitie toevoegen
default_context_removed: Standaard context verwijderd
completed_actions: Afgeronde acties voor dit project
default_context: De standaard context voor dit project is %{context}
add_note_submit: Notitie toevoegen
status_project_name_changed: Naam van het project werd gewijzigd
active_projects: Actieve projecten
no_default_context: Dit project heeft geen standaard context
default_context: De standaard context voor dit project is %{context}
active_projects: Actieve projecten
state: Dit project is %{state}
date:
month_names:
@ -565,10 +566,6 @@ nl:
- Oktober
- November
- December
order:
- :day
- :month
- :year
abbr_day_names:
- Zo
- Ma
@ -577,6 +574,10 @@ nl:
- Do
- Vr
- Za
order:
- :day
- :month
- :year
formats:
only_day: "%e"
default: "%d-%m-%Y"
@ -611,6 +612,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_multi: Voeg meerdere acties toe
toggle_single_title: Voeg een nieuwe actie toe
project_for_all_actions: Project voor alle acties
context_for_all_actions: Context voor alle acties
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
@ -633,22 +650,98 @@ nl:
- Donderdag
- Vrijdag
- Zaterdag
shared:
multiple_next_actions: Meerdere acties (een op elke regel)
users:
destroy_successful: Gebruiker %{login} met succes verwijderd
auth_type_update_error: "Er was een probleem met het bijwerken van uw authenticatietype: %{error_messages}"
total_contexts: Totaal aantal contexten
first_user_heading: "Welkom bij TRACKS. Om te beginnen, maak dan een admin account:"
successfully_deleted_user: Succesvol gebruiker %{username} verwijderd
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.
new_token_generated: Nieuwe token met succes gegenereerd
total_projects: Totaal aantal projecten
signup_successful: Aanmelding succesvol voor gebruiker %{username}.
no_signups_title: "TRACKS:: Geen nieuwe aanmeldingen"
user_created: Gebruiker aangemaakt.
change_password_submit: Wachtwoord wijzigen
password_updated: Wachtwoord bijgewerkt.
manage_users: Beheren gebruikers
account_signup: Aanmelden voor een account
signup: Aanmelden
new_user_heading: "Registreer een nieuwe gebruiker:"
auth_type_updated: Authenticatietype bijgewerkt.
total_actions: Totaal aanal acties
desired_login: Gewenste login
confirm_password: Bevestig wachtwoord
choose_password: Kies een wachtwoord
change_password_title: TRACKS::Wachtwoord wijzigen
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}'
label_auth_type: Authenticatietype
new_password_label: Nieuw wachtwoord
register_with_cas: Met uw CAS gebruikersnaam
new_user_title: "TRACKS:: Aanmelden als de admin gebruiker"
destroy_user: Verwijder de gebruiker
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
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
select_authentication_type: Selecteer uw nieuwe authenticatie type en klik op 'Wijzigen authenticatietype' om uw huidige instellingen te vervangen.
total_notes: Totaal aantal notities
feedlist:
actions_due_today: Acties die vandaag of eerder af moeten
choose_context: Kies de context waar je een feed van wilt
all_contexts: Alle contexten
rss_feed: RSS Feed
legend: Legenda
ical_feed: iCal feed
all_projects: Alle projecten
choose_project: Kies het project waar je een feed van wilt
select_feed_for_project: Kies de feed voor dit project
active_projects_wo_next: Actieve projecten zonder acties
project_needed: "Er moet ten minste \xC3\xA9\xC3\xA9n project zijn voor een feed opgevraagd kan worden"
active_starred_actions: Alle gesterde, actieve 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
projects_and_actions: Actieve projecten met hun acties
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
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
contexts:
delete_context_title: Verwijder context
hide_form: Verberg formulier
toggle_single: Voeg een actie toe
add_action: Actie toevoegen
add_actions: Toevoegen acties
tags_for_all_actions: Tags voor alle acties (scheiden met een komma)
context_for_all_actions: Context voor alle acties
toggle_multi: Voeg meerdere acties toe
toggle_single_title: Voeg een nieuwe actie toe
project_for_all_actions: Project voor alle acties
separate_tags_with_commas: gescheiden door komma's
toggle_multi_title: Toggle single / multi actie formulier
hide_action_form_title: Verberg nieuwe actie formulier
footer:
send_feedback: Stuur reactie op %{version}
show_form_title: Voeg een context toe
delete_context_confirmation: Weet u zeker dat u de context '%{name}' wilt verwijderen? Merk op dat dit ook alle (herhalende) acties in deze context zal verwijderen!
delete_context: Verwijder context
hide_form_title: "Verberg formulier voor nieuwe context "
edit_context: Bewerk context
hidden_contexts: Verborgen contexten
no_contexts_active: Momenteel zijn er geen actieve contexten
context_hide: Verberg van de start pagina?
visible_contexts: Zichtbare contexten
save_status_message: Context bewaard
show_form: Maak een nieuwe context
add_context: Context toevoegen
update_status_message: Naam van de context was veranderd
context_name: Context naam
status_active: Context is actief
new_context_post: "' zal ook gemaakt worden. Weet u dit zeker?"
new_context_pre: Nieuwe context '
no_actions: Momenteel zijn er geen onafgeronde acties in deze context
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
status_hidden: Context is verborgen
sidebar:
list_name_active_contexts: Actieve contexten
list_name_active_projects: Actieve projecten
@ -656,98 +749,6 @@ nl:
list_name_completed_projects: Voltooide projecten
list_name_hidden_projects: Verborgen projecten
list_name_hidden_contexts: Verborgen contexten
users:
openid_url_verified: Je hebt %{url} met succes geverifieerd als je identiteit en uw authenticatie type OpenID opgeslagen.
destroy_successful: Gebruiker %{login} met succes verwijderd
auth_type_update_error: "Er was een probleem met het bijwerken van uw authenticatietype: %{error_messages}"
total_contexts: Totaal aantal contexten
first_user_heading: "Welkom bij TRACKS. Om te beginnen, maak dan een admin account:"
successfully_deleted_user: Succesvol gebruiker %{username} verwijderd
failed_to_delete_user: Mislukt de gebruiker %{username} te verwijderen
total_projects: Totaal aantal projecten
signup_successful: Aanmelding succesvol voor gebruiker %{username}.
new_token_generated: Nieuwe token met succes gegenereerd
no_signups_title: "TRACKS:: Geen nieuwe aanmeldingen"
user_created: Gebruiker aangemaakt.
change_password_submit: Wachtwoord wijzigen
account_signup: Aanmelden voor een account
password_updated: Wachtwoord bijgewerkt.
manage_users: Beheren gebruikers
signup: Aanmelden
confirm_password: Bevestig wachtwoord
new_user_heading: "Registreer een nieuwe gebruiker:"
auth_type_updated: Authenticatietype bijgewerkt.
total_actions: Totaal aanal acties
desired_login: Gewenste login
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
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.
label_auth_type: Authenticatietype
new_password_label: Nieuw wachtwoord
register_with_cas: Met uw CAS gebruikersnaam
destroy_user: Verwijder de gebruiker
total_users_count: Je hebt een totaal van %{count} gebruikers
new_user_title: "TRACKS:: Aanmelden als de admin gebruiker"
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
identity_url: Identiteit URL
auth_change_submit: Wijzigen authenticatietype
change_authentication_type: Wijzigen authenticatietype
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.
total_notes: Totaal aantal notities
select_authentication_type: Selecteer uw nieuwe authenticatie type en klik op 'Wijzigen authenticatietype' om uw huidige instellingen te vervangen.
contexts:
delete_context_title: Verwijder context
hide_form: Verberg formulier
show_form_title: Voeg een context toe
delete_context: Verwijder context
delete_context_confirmation: Weet u zeker dat u de context '%{name}' wilt verwijderen? Merk op dat dit ook alle (herhalende) acties in deze context zal verwijderen!
edit_context: Bewerk context
hide_form_title: "Verberg formulier voor nieuwe context "
context_hide: Verberg van de start pagina?
hidden_contexts: Verborgen contexten
no_contexts_active: Momenteel zijn er geen actieve contexten
add_context: Context toevoegen
visible_contexts: Zichtbare contexten
save_status_message: Context bewaard
show_form: Maak een nieuwe context
update_status_message: Naam van de context was veranderd
context_name: Context naam
status_active: Context is actief
new_context_post: "' zal ook gemaakt worden. Weet u dit zeker?"
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
last_completed_in_context: in deze context (laatste %{number})
status_hidden: Context is verborgen
feedlist:
actions_due_today: Acties die vandaag of eerder af moeten
choose_context: Kies de context waar je een feed van wilt
ical_feed: iCal feed
all_contexts: Alle contexten
rss_feed: RSS Feed
legend: Legenda
all_projects: Alle projecten
choose_project: Kies het project waar je een feed van wilt
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
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
projects_and_actions: Actieve projecten met hun acties
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."
context_centric_actions: Feeds voor onafgeronde acties in een specifieke context
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
project_centric: Feeds voor onafgeronde acties in een specifiek project
datetime:
prompts:
minute: Minuut
@ -795,33 +796,33 @@ nl:
half_a_minute: halve minuut
login:
user_no_expiry: Blijf ingelogd
login_cas: Ga naar het CAS
sign_in: Meld aan
openid_identity_url_not_found: Sorry, geen gebruiker met die identiteit URL bestaat (% {identity_url})
successful_with_session_info: "Login succesvol:"
please_login: Log in om Tracks te gebruiken
login_cas: Ga naar het CAS
cas_logged_in_greeting: Hallo, % {username}! U bent geauthenticeerd.
cas_no_user_found: Hallo,% {username}! Je hebt nog geen account op Tracks.
cas_login: CAS Inloggen
successful_with_session_info: "Login succesvol:"
please_login: Log in om Tracks te gebruiken
cas_username_not_found: Sorry, geen gebruiker met die CAS gebruikersnaam bestaat (% {username})
mobile_use_openid: ... if inloggen met een OpenID
cas_create_account: Als u willen vragen ga hier om %{signup_link}
mobile_use_openid: ... if inloggen met een OpenID
account_login: Account login
cas_signup_link: Aanvragen account
session_will_not_expire: sessie zal niet verlopen.
successful: Succesvol aangemeld. Welkom terug!
session_time_out: Sessie is verlopen. Gelieve %{link}
session_will_expire: sessie zal verlopen na %{hours} u(u)r(en) van inactiviteit.
option_separator: of,
session_time_out: Sessie is verlopen. Gelieve %{link}
login_standard: Ga terug naar de standaard login
log_in_again: log opnieuw in.
logged_out: Je bent afgemeld bij Tracks.
login_with_openid: inloggen met een OpenID
unsuccessful: Login mislukt.
log_in_again: log opnieuw in.
search:
contexts_matching_query: Contexten passend bij zoekopdracht
tags_matching_query: Tags passend bij zoekopdracht
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.
todos_matching_query: Todos passend bij zoekopdracht
projects_matching_query: Projecten passend bij zoekopdracht

View file

@ -23,23 +23,7 @@ Feature: dependencies
When I expand the dependencies of "Todo 2"
Then I should see "Todo 3" within the dependencies of "Todo 2"
@selenium @wip
Scenario: Adding dependency with comma to todo # for #975
Given I have a context called "@pc"
And I have a project "dependencies" that has the following todos
| description | context |
| test,1, 2,3 | @pc |
| test me | @pc |
When I visit the "dependencies" project
And I drag "test me" to "test,1, 2,3"
Then the successors of "test,1, 2,3" should include "test me"
When I edit the dependency of "test me" to "'test,1, 2,3' <'@pc'; 'dependencies'>,'test,1, 2,3' <'@pc'; 'dependencies'>"
Then there should not be an error
Scenario: Deleting a predecessor will activate successors
Given this is a pending scenario
@selenium @wip
@selenium
Scenario: I can edit a todo to add the todo as a dependency to another
Given I have a context called "@pc"
And I have a project "dependencies" that has the following todos
@ -48,18 +32,18 @@ Feature: dependencies
| test 2 | @pc |
| test 3 | @pc |
When I visit the "dependencies" project
When I edit the dependency of "test 1" to "'test 2' <'@pc'; 'dependencies'>"
When I edit the dependency of "test 1" to add "test 2" as predecessor
Then I should see "test 1" within the dependencies of "test 2"
And I should see "test 1" in the deferred container
When I edit the dependency of "test 1" to "'test 2' <'@pc'; 'dependencies'>, 'test 3' <'@pc'; 'dependencies'>"
When I edit the dependency of "test 1" to add "test 3" as predecessor
Then I should see "test 1" within the dependencies of "test 2"
Then I should see "test 1" within the dependencies of "test 3"
When I edit the dependency of "test 1" to "'test 2' <'@pc'; 'dependencies'>"
And I edit the dependency of "test 2" to "'test 3' <'@pc'; 'dependencies'>"
When I edit the dependency of "test 1" to remove "test 3" as predecessor
And I edit the dependency of "test 2" to add "test 3" as predecessor
Then I should see "test 1" within the dependencies of "test 3"
Then I should see "test 2" within the dependencies of "test 3"
@selenium @wip
@selenium
Scenario: I can remove a dependency by editing the todo
Given I have a context called "@pc"
And I have a project "dependencies" that has the following todos
@ -69,12 +53,44 @@ Feature: dependencies
And "test 1" depends on "test 2"
When I visit the "dependencies" project
Then I should see "test 1" in the deferred container
When I edit the dependency of "test 1" to ""
When I edit the dependency of "test 1" to remove "test 2" as predecessor
Then I should not see "test 1" within the dependencies of "test 2"
And I should not see "test 1" in the deferred container
@selenium
Scenario: Completing a predecessor will activate successors
Given I have a context called "@pc"
And I have a project "dependencies" that has the following todos
| description | context |
| test 1 | @pc |
| test 2 | @pc |
| test 3 | @pc |
And "test 2" depends on "test 1"
When I visit the "dependencies" project
Then I should see "test 2" in the deferred container
And I should see "test 1" in the action container
When I mark "test 1" as complete
Then I should see "test 1" in the completed container
And I should see "test 2" in the action container
And I should not see "test 2" in the deferred container
And I should see the empty message in the deferred container
@selenium
Scenario: Deleting a predecessor will activate successors
Given this is a pending scenario
Given I have a context called "@pc"
And I have a project "dependencies" that has the following todos
| description | context |
| test 1 | @pc |
| test 2 | @pc |
| test 3 | @pc |
And "test 2" depends on "test 1"
When I visit the "dependencies" project
Then I should see "test 2" in the deferred container
And I should see "test 1" in the action container
When I delete the action "test 1"
And I should see "test 2" in the action container
And I should not see "test 2" in the deferred container
And I should see the empty message in the deferred container
Scenario: Deleting a successor will update predecessor
Given this is a pending scenario
Given this is a pending scenario

View file

@ -0,0 +1,116 @@
Given /^"([^"]*)" depends on "([^"]*)"$/ do |successor_name, predecessor_name|
successor = Todo.find_by_description(successor_name)
predecessor = Todo.find_by_description(predecessor_name)
successor.add_predecessor(predecessor)
successor.state = "pending"
successor.save!
end
When /^I drag "(.*)" to "(.*)"$/ do |dragged, target|
drag_id = Todo.find_by_description(dragged).id
drop_id = Todo.find_by_description(target).id
drag_name = "xpath=//div[@id='line_todo_#{drag_id}']//img[@class='grip']"
drop_name = "xpath=//div[@id='line_todo_#{drop_id}']//div[@class='description']"
selenium.drag_and_drop_to_object(drag_name, drop_name)
arrow = "xpath=//div[@id='line_todo_#{drop_id}']/div/a[@class='show_successors']/img"
selenium.wait_for_element(arrow, :timeout_in_seconds => 5)
end
When /^I expand the dependencies of "([^\"]*)"$/ do |todo_name|
todo = Todo.find_by_description(todo_name)
todo.should_not be_nil
expand_img_locator = "xpath=//div[@id='line_todo_#{todo.id}']/div/a[@class='show_successors']/img"
selenium.click(expand_img_locator)
end
When /^I edit the dependency of "([^"]*)" to add "([^"]*)" as predecessor$/ do |todo_description, predecessor_description|
todo = @current_user.todos.find_by_description(todo_description)
todo.should_not be_nil
predecessor = @current_user.todos.find_by_description(predecessor_description)
predecessor.should_not be_nil
open_edit_form_for(todo)
input = "xpath=//form[@id='form_todo_#{todo.id}']//input[@id='predecessor_input']"
selenium.focus(input)
selenium.type_keys input, predecessor_description
# wait for auto complete
autocomplete = "xpath=//a[@id='ui-active-menuitem']"
selenium.wait_for_element(autocomplete, :timeout_in_seconds => 5)
# click first line
first_elem = "xpath=//ul/li[1]/a[@id='ui-active-menuitem']"
selenium.click(first_elem)
new_dependency_line = "xpath=//li[@id='pred_#{predecessor.id}']"
selenium.wait_for_element(new_dependency_line, :timeout_in_seconds => 5)
submit_edit_todo_form(todo)
end
When /^I edit the dependency of "([^"]*)" to remove "([^"]*)" as predecessor$/ do |todo_description, predecessor_description|
todo = @current_user.todos.find_by_description(todo_description)
todo.should_not be_nil
predecessor = @current_user.todos.find_by_description(predecessor_description)
predecessor.should_not be_nil
open_edit_form_for(todo)
delete_dep_button = "xpath=//form[@id='form_todo_#{todo.id}']//img[@id='delete_dep_#{predecessor.id}']"
selenium.click(delete_dep_button)
wait_for :timeout=>5 do
!selenium.is_element_present(delete_dep_button)
end
submit_edit_todo_form(todo)
# note that animations will be running after the ajax is completed
end
When /^I edit the dependency of "([^"]*)" to "([^"]*)"$/ do |todo_name, deps|
todo = @dep_todo = @current_user.todos.find_by_description(todo_name)
todo.should_not be_nil
open_edit_form_for(todo)
fill_in "predecessor_list_todo_#{todo.id}", :with => deps
submit_edit_todo_form(todo)
end
Then /^the successors of "(.*)" should include "(.*)"$/ do |parent_name, child_name|
parent = @current_user.todos.find_by_description(parent_name)
parent.should_not be_nil
child = parent.pending_successors.find_by_description(child_name)
child.should_not be_nil
end
Then /^I should see "([^\"]*)" within the dependencies of "([^\"]*)"$/ do |successor_description, todo_description|
todo = @current_user.todos.find_by_description(todo_description)
todo.should_not be_nil
successor = @current_user.todos.find_by_description(successor_description)
successor.should_not be_nil
# argh, webrat on selenium does not support within, so this won't work
# xpath = "//div[@id='line_todo_#{todo.id}'"
# Then "I should see \"#{successor_description}\" within \"xpath=#{xpath}\""
# let selenium look for the presence of the successor
xpath = "xpath=//div[@id='line_todo_#{todo.id}']//div[@id='successor_line_todo_#{successor.id}']//span"
selenium.wait_for_element(xpath, :timeout_in_seconds => 5)
end
Then /^I should not see "([^"]*)" within the dependencies of "([^"]*)"$/ do |successor_description, todo_description|
todo = @current_user.todos.find_by_description(todo_description)
todo.should_not be_nil
successor = @current_user.todos.find_by_description(successor_description)
successor.should_not be_nil
# let selenium look for the presence of the successor
xpath = "xpath=//div[@id='line_todo_#{todo.id}']//div[@id='successor_line_todo_#{successor.id}']//span"
wait_for :timeout => 5 do
!selenium.is_element_present(xpath)
end
end

View file

@ -31,7 +31,7 @@ Then /^I should see "([^"]*)" as the selected context$/ do |context_name|
end
Then /^I should see feeds for "([^"]*)" in list of "([^"]*)"$/ do |name, list_type|
selenium.wait_for :wait_for => :ajax, :javascript_framework => :jquery
wait_for_ajax
xpath= "//div[@id='feeds-for-#{list_type}']//strong"
name.should == response.selenium.get_text("xpath=#{xpath}")
end

View file

@ -2,6 +2,10 @@ Given /this is a pending scenario/ do
pending
end
Given /^I am working on the mobile interface$/ do
@mobile_interface = true
end
Then /the badge should show (.*)/ do |number|
badge = -1
xpath= "//span[@id='badge_count']"
@ -18,6 +22,8 @@ Then /the badge should show (.*)/ do |number|
badge.should == number.to_i
end
Given /^I am working on the mobile interface$/ do
@mobile_interface = true
Then /^I should see the empty message in the deferred container$/ do
wait_for :timeout => 5 do
selenium.is_visible("xpath=//div[@id='tickler']//div[@id='tickler-empty-nd']")
end
end

View file

@ -39,13 +39,13 @@ end
When /^I sort the active list alphabetically$/ do
click_link "Alphabetically"
selenium.wait_for :wait_for => :ajax, :javascript_framework => :jquery
wait_for_ajax
selenium.get_confirmation.should == "Are you sure that you want to sort these projects alphabetically? This will replace the existing sort order."
end
When /^I sort the list by number of tasks$/ do
click_link "By number of tasks"
selenium.wait_for :wait_for => :ajax, :javascript_framework => :jquery
wait_for_ajax
selenium.get_confirmation.should == "Are you sure that you want to sort these projects by the number of tasks? This will replace the existing sort order."
end

View file

@ -35,7 +35,7 @@ When /^I edit the name of the pattern "([^\"]*)" to "([^\"]*)"$/ do |pattern_nam
pattern.should_not be_nil
click_link "link_edit_recurring_todo_#{pattern.id}"
selenium.wait_for :wait_for => :ajax, :javascript_framework => :jquery
wait_for_ajax
fill_in "edit_recurring_todo_description", :with => new_name
selenium.click "recurring_todo_edit_action_submit"
@ -49,7 +49,7 @@ When /^I star the pattern "([^\"]*)"$/ do |pattern_name|
pattern = @current_user.recurring_todos.find_by_description(pattern_name)
pattern.should_not be_nil
click_link "star_icon_#{pattern.id}"
selenium.wait_for :wait_for => :ajax, :javascript_framework => :jquery
wait_for_ajax
end
When /^I delete the pattern "([^"]*)"$/ do |pattern_name|
@ -67,7 +67,7 @@ When /^I mark the pattern "([^"]*)" as complete$/ do |pattern_name|
pattern.should_not be_nil
pattern.completed?.should be_false
selenium.click "check_#{pattern.id}"
selenium.wait_for :wait_for => :ajax, :javascript_framework => :jquery
wait_for_ajax
end
When /^I mark the pattern "([^"]*)" as active$/ do |pattern_name|
@ -75,7 +75,7 @@ When /^I mark the pattern "([^"]*)" as active$/ do |pattern_name|
pattern.should_not be_nil
pattern.completed?.should be_true
selenium.click "check_#{pattern.id}"
selenium.wait_for :wait_for => :ajax, :javascript_framework => :jquery
wait_for_ajax
end
Then /^the state list "([^"]*)" should be empty$/ do |state|

View file

@ -45,15 +45,6 @@ Given /^I have ([0-9]+) completed todos with a note$/ do |count|
end
end
Given /^"(.*)" depends on "(.*)"$/ do |successor_name, predecessor_name|
successor = Todo.find_by_description(successor_name)
predecessor = Todo.find_by_description(predecessor_name)
successor.add_predecessor(predecessor)
successor.state = "pending"
successor.save!
end
Given /^I have a project "([^"]*)" that has the following todos$/ do |project_name, todos|
Given "I have a project called \"#{project_name}\""
@project.should_not be_nil
@ -70,26 +61,6 @@ Given /^I have a project "([^"]*)" that has the following todos$/ do |project_na
end
end
When /^I drag "(.*)" to "(.*)"$/ do |dragged, target|
drag_id = Todo.find_by_description(dragged).id
drop_id = Todo.find_by_description(target).id
drag_name = "xpath=//div[@id='line_todo_#{drag_id}']//img[@class='grip']"
drop_name = "xpath=//div[@id='line_todo_#{drop_id}']//div[@class='description']"
selenium.drag_and_drop_to_object(drag_name, drop_name)
arrow = "xpath=//div[@id='line_todo_#{drop_id}']/div/a[@class='show_successors']/img"
selenium.wait_for_element(arrow, :timeout_in_seconds => 5)
end
When /^I expand the dependencies of "([^\"]*)"$/ do |todo_name|
todo = Todo.find_by_description(todo_name)
todo.should_not be_nil
expand_img_locator = "xpath=//div[@id='line_todo_#{todo.id}']/div/a[@class='show_successors']/img"
selenium.click(expand_img_locator)
end
When /I change the (.*) field of "([^\"]*)" to "([^\"]*)"$/ do |field, todo_name, new_value|
todo = @current_user.todos.find_by_description(todo_name)
todo.should_not be_nil
@ -174,15 +145,6 @@ When /^I submit the new multiple actions form with$/ do |multi_line_descriptions
submit_multiple_next_action_form
end
When /^I edit the dependency of "([^"]*)" to "([^"]*)"$/ do |todo_name, deps|
todo = @dep_todo = @current_user.todos.find_by_description(todo_name)
todo.should_not be_nil
open_edit_form_for(todo)
fill_in "predecessor_list_todo_#{todo.id}", :with => deps
submit_edit_todo_form(todo)
end
When /^I edit the due date of "([^"]*)" to tomorrow$/ do |action_description|
todo = @current_user.todos.find_by_description(action_description)
todo.should_not be_nil
@ -199,6 +161,30 @@ When /^I clear the due date of "([^"]*)"$/ do |action_description|
submit_edit_todo_form(todo)
end
When /^I mark "([^"]*)" as complete$/ do |action_description|
# TODO: generalize. this currently only works for projects wrt xpath
todo = @current_user.todos.find_by_description(action_description)
todo.should_not be_nil
check "mark_complete_#{todo.id}"
wait_for :timeout => 5 do
!selenium.is_element_present("//div[@id='p#{todo.project.id}items']//div[@id='line_todo_#{todo.id}']")
end
# note that animations could be running after finishing this
end
When /^I delete the action "([^"]*)"$/ do |action_description|
todo = @current_user.todos.find_by_description(action_description)
todo.should_not be_nil
delete_todo_button = "xpath=//a[@id='delete_todo_#{todo.id}']/img"
selenium.click delete_todo_button
selenium.get_confirmation.should == "Are you sure that you want to delete the action '#{todo.description}'?"
wait_for :timeout => 5 do
!selenium.is_element_present("//div[@id='line_todo_#{todo.id}']")
end
end
Then /^I should see ([0-9]+) todos$/ do |count|
count.to_i.downto 1 do |i|
match_xpath "div["
@ -208,43 +194,11 @@ end
Then /^there should not be an error$/ do
sleep(5)
# form should be gone and thus no errors visible
selenium.is_visible("edit_todo_#{@dep_todo.id}").should == false
wait_for :timeout => 5 do
!selenium.is_visible("edit_todo_#{@dep_todo.id}")
end
end
Then /^the successors of "(.*)" should include "(.*)"$/ do |parent_name, child_name|
parent = @current_user.todos.find_by_description(parent_name)
parent.should_not be_nil
child = parent.pending_successors.find_by_description(child_name)
child.should_not be_nil
end
Then /^I should see "([^\"]*)" within the dependencies of "([^\"]*)"$/ do |successor_description, todo_description|
todo = @current_user.todos.find_by_description(todo_description)
todo.should_not be_nil
successor = @current_user.todos.find_by_description(successor_description)
successor.should_not be_nil
# argh, webrat on selenium does not support within, so this won't work
# xpath = "//div[@id='line_todo_#{todo.id}'"
# Then "I should see \"#{successor_description}\" within \"xpath=#{xpath}\""
# let selenium look for the presence of the successor
xpath = "xpath=//div[@id='line_todo_#{todo.id}']//div[@id='successor_line_todo_#{successor.id}']//span"
selenium.wait_for_element(xpath, :timeout_in_seconds => 5)
end
Then /^I should not see "([^"]*)" within the dependencies of "([^"]*)"$/ do |successor_description, todo_description|
todo = @current_user.todos.find_by_description(todo_description)
todo.should_not be_nil
successor = @current_user.todos.find_by_description(successor_description)
successor.should_not be_nil
# let selenium look for the presence of the successor
xpath = "xpath=//div[@id='line_todo_#{todo.id}']//div[@id='successor_line_todo_#{successor.id}']//span"
selenium.is_element_present(xpath).should be_false
end
Then /^I should see the todo "([^\"]*)"$/ do |todo_description|
selenium.is_element_present("//span[.=\"#{todo_description}\"]").should be_true
end
@ -269,8 +223,7 @@ Then /^the container for the context "([^"]*)" should not be visible$/ do |conte
context = @current_user.contexts.find_by_name(context_name)
context.should_not be_nil
xpath = "xpath=//div[@id=\"c#{context.id}\"]"
selenium.wait_for :wait_for => :ajax, :javascript_framework => :jquery
selenium.is_element_present(xpath).should be_false
wait_for_ajax selenium.is_element_present(xpath).should be_false
end
Then /^a confirmation for adding a new context "([^"]*)" should be asked$/ do |context_name|
@ -283,7 +236,31 @@ Then /^I should see "([^"]*)" in the deferred container$/ do |todo_description|
xpath = "//div[@id='tickler']//div[@id='line_todo_#{todo.id}']"
selenium.is_element_present(xpath).should be_true
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|
@ -292,7 +269,9 @@ Then /^I should not see "([^"]*)" in the deferred container$/ do |todo_descripti
xpath = "//div[@id='tickler']//div[@id='line_todo_#{todo.id}']"
selenium.is_element_present(xpath).should be_false
wait_for :timeout => 5 do
!selenium.is_element_present(xpath)
end
end
Then /^the selected project should be "([^"]*)"$/ do |content|

View file

@ -44,6 +44,10 @@ module TracksStepHelper
# click edit
selenium.click("//div[@id='line_todo_#{todo.id}']//img[@id='edit_icon_todo_#{todo.id}']", :wait_for => :ajax, :javascript_framework => :jquery)
end
def wait_for_ajax
selenium.wait_for :wait_for => :ajax, :javascript_framework => :jquery
end
end

View file

@ -342,6 +342,9 @@ var TodoItems = {
var li = "<li style=\"display:none\" id=\"pred_"+todo_id+"\">"+ anchor +" "+ todo_spec + "</li>";
return li;
},
highlight_todo: function(id) {
$(id).effect('highlight', {}, 2000, function(){ });
},
setup_behavior: function() {
/* show the notes of a todo */
$(".show_notes").live('click', function () {