finish editing a todo with dependencies and fix some i18n for nl locale

This commit is contained in:
Reinier Balt 2011-02-25 14:49:35 +01:00
parent 6214c9f670
commit 0335c2304d
5 changed files with 56 additions and 45 deletions

View file

@ -1,7 +1,7 @@
<%- todo = new_todo_form -%>
<div id="todo_new_action">
<% form_for(todo, :html=> { :id=>'todo-form-new-action', :name=>'todo', :class => 'inline-form' }) do |t|%>
<% form_for(todo, :html=> { :id=>'todo-form-new-action', :name=>'todo', :class => 'inline-form new_todo_form' }) do |t|%>
<input id="default_project_name_id" name="default_project_name" type="hidden" value="<%=@initial_project_name-%>" />
<input id="default_context_name_id" name="default_context_name" type="hidden" value="<%=@initial_context_name-%>" />

View file

@ -135,10 +135,7 @@ de:
activerecord:
attributes:
project:
name:
blank: Das Projekt muss benannt sein
taken: ist bereits vergeben
too_long: Der Projekt-Name muss k&uuml;rzer als 256 Zeichen sein
name: Name
default_tags: Standard Tags
default_context_name: Standard Kontext
description: Beschreibung

View file

@ -131,10 +131,7 @@ nl:
activerecord:
attributes:
project:
name:
blank: Het project moet moet een naam hebben
taken: bestaat al
too_long: De naam van het project moet korter zijn dan 256 tekens
name: Naam
default_tags: Standaard Tags
default_context_name: Standaard context
description: Beschrijving
@ -200,7 +197,7 @@ nl:
body: Er waren problemen met de volgende velden
header:
one: 1 fout voorkomt het kunnen bewaren van deze %{model}
other: "%{count} fout voorkomen dat dit %{model} bewaard kan worden"
other: "%{count} fouten voorkomen dat dit %{model} bewaard kan worden"
full_messages:
format: "%{attribute} %{message}"
stats:
@ -534,9 +531,9 @@ nl:
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 '%{naam} wilt verwijderen?
delete_project_confirmation: Weet u zeker dat u wilt het project '%{name} wilt verwijderen?
show_form: Toevoegen van een project
list_projects: "TRACKS:: Overizcht van projecten"
list_projects: "TRACKS:: Overzicht van projecten"
add_project: Voeg project toe
set_default_tags_notice: Stel project standaard tags in op %{default_tags}
add_note: Een notitie toevoegen

View file

@ -90,11 +90,12 @@ var TracksForm = {
},
enable_dependency_delete: function() {
$('a[class=icon_delete_dep]').live('click', function() {
var predecessor_list = $('input[name=predecessor_list]');
var form = $(this).parents('form').get(0);
var predecessor_list = $(form).find('input[name=predecessor_list]');
var id_list = split( predecessor_list.val() );
// remove from ul
$("li#pred_"+this.id).slideUp(500).remove();
$(form).find("li#pred_"+this.id).slideUp(500).remove();
// remove from array
var new_list = new Array();
@ -109,30 +110,32 @@ var TracksForm = {
predecessor_list.val( new_list.join(", ") );
if (new_list.length == 0) {
$("label#label_for_predecessor_input").hide();
$("ul#predecessor_ul").hide();
$(form).find("label#label_for_predecessor_input").hide();
$(form).find("ul#predecessor_ul").hide();
}
return false; // prevent submit/follow link
})
},
generate_dependency_list: function(todo_id) {
// find edit form
var form_selector = "#form_todo_"+todo_id;
var form = $(form_selector);
if (spec_of_todo.length > 0) {
// find edit form
var form_selector = "#form_todo_"+todo_id;
var form = $(form_selector);
var predecessor_list = form.find('input[name=predecessor_list]');
var id_list = split( predecessor_list.val() );
var predecessor_list = form.find('input[name=predecessor_list]');
var id_list = split( predecessor_list.val() );
var label = form.find("label#label_for_predecessor_input").first();
label.show();
var label = form.find("label#label_for_predecessor_input").first();
label.show();
while (id_list.length > 0) {
var elem = id_list.pop();
var new_li = TodoItems.generate_predecessor(elem, spec_of_todo[elem]);
var ul = form.find('ul#predecessor_ul');
ul.html(ul.html() + new_li);
form.find('li#pred_'+elem).show();
while (id_list.length > 0) {
var elem = id_list.pop();
var new_li = TodoItems.generate_predecessor(elem, spec_of_todo[elem]);
var ul = form.find('ul#predecessor_ul');
ul.html(ul.html() + new_li);
form.find('li#pred_'+elem).show();
}
}
}
}
@ -1044,7 +1047,7 @@ function enable_rich_interaction(){
.autocomplete({
minLength: 0,
source: function( request, response ) {
term = request.term;
var term = request.term;
if (term != "" && term != " ")
$.getJSON( relative_to_root('auto_complete_for_predecessor'), {
term: term
@ -1056,30 +1059,31 @@ function enable_rich_interaction(){
},
select: function( event, ui ) {
// retrieve values from input fields
todo_spec = ui.item.label
todo_id = ui.item.value
predecessor_list = $('input[name=predecessor_list]')
id_list = split( predecessor_list.val() );
var todo_spec = ui.item.label
var todo_id = ui.item.value
var form = $(this).parents('form').get(0);
var predecessor_list = $(form).find('input[name=predecessor_list]')
var id_list = split( predecessor_list.val() );
// add the dependency to id list
id_list.push( todo_id );
predecessor_list.val( id_list.join( ", " ) );
// show the html for the list of deps
$('ul#predecessor_ul').show();
$("label#label_for_predecessor_input").show();
if (todo_spec.length > 35) { // cut off string
$(form).find('ul#predecessor_ul').show();
$(form).find("label#label_for_predecessor_input").show();
if (todo_spec.length > 35 && form.id == "todo-form-new-action") {
// cut off string only in new-todo-form
todo_spec = todo_spec.substring(0,40)+"...";
}
// show the new dep in list
var html = $('ul#predecessor_ul').html();
var html = $(form).find('ul#predecessor_ul').html();
var new_li = TodoItems.generate_predecessor(todo_id, todo_spec);
$('ul#predecessor_ul').html(html + new_li);
$('li#pred_'+todo_id).slideDown(500);
TracksForm.enable_dependency_delete();
$(form).find('ul#predecessor_ul').html(html + new_li);
$(form).find('li#pred_'+todo_id).slideDown(500);
$('input[name=predecessor_input]').val('');
$('input[name=predecessor_input]').focus();
$(form).find('input[name=predecessor_input]').val('');
$(form).find('input[name=predecessor_input]').focus();
return false;
}
});
@ -1161,7 +1165,7 @@ function enable_rich_interaction(){
field_touched = false;
/* shrink the notes on the project pages. This is not live(), so this needs
* to be run after ajax adding of a new note */
* to be run after ajax adding of a new note */
$('.note_wrapper').truncate({
max_length: 90,
more: '',

View file

@ -360,21 +360,34 @@ div#input_box {
clear:right;
}
ul.predecessor_list {
form.new_todo_form ul.predecessor_list,
form.edit_todo_form ul.predecessor_list {
color: #999;
font-size: 0.8em;
padding: 0 0 5pt 0;
}
form.edit_todo_form ul.predecessor_list {
color: black;
}
ul.predecessor_list li {
padding: 0 0;
}
/* deleting dependency from new form of a todo */
img.icon_delete_dep {width: 10px; background-image: url(../images/icon_delete.png); background-repeat: no-repeat; background-position: -9px 0; border: none; color:black;}
a:hover img.icon_delete_dep {width: 10px; background-image: url(../images/icon_delete.png); background-repeat: no-repeat; background-position: 0 0; border: none; color:black; background-color: black;}
a.icon_delete_dep:hover {width: 10px; background-color: black;}
/* deleting dependency from edit form of a todo */
form.edit_todo_form a.icon_delete_dep:hover { background-color: #cccccc;}
form.edit_todo_form a:hover img.icon_delete_dep { background-color: #cccccc; }
/* delete button for deleting a dep from the tree of a todo */
a.delete_dependency_button:hover {background-color: white;}
.box {
float: left;
width: 20px;