diff --git a/app/controllers/todos_controller.rb b/app/controllers/todos_controller.rb
index 6494137cf..d962c753b 100644
--- a/app/controllers/todos_controller.rb
+++ b/app/controllers/todos_controller.rb
@@ -83,7 +83,7 @@ def create
@todo.context_id = context.id
end
- @todo.starred= params[:new_todo_starred].include? "true"
+ @todo.starred= (params[:new_todo_starred]||"").include? "true"
@todo.add_predecessor_list(predecessor_list)
diff --git a/app/models/todo.rb b/app/models/todo.rb
index 4904b7919..3a14830c9 100644
--- a/app/models/todo.rb
+++ b/app/models/todo.rb
@@ -248,12 +248,12 @@ def starred?
end
def toggle_star!
- starred=!starred?
+ self.starred= !starred?
end
def starred=(starred)
if starred
- _add_tags(STARRED_TAG_NAME)
+ _add_tags STARRED_TAG_NAME unless starred?
else
_remove_tags STARRED_TAG_NAME
end
diff --git a/app/views/recurring_todos/toggle_star.js.erb b/app/views/recurring_todos/toggle_star.js.erb
index 85eb1d667..129a67b57 100644
--- a/app/views/recurring_todos/toggle_star.js.erb
+++ b/app/views/recurring_todos/toggle_star.js.erb
@@ -1,5 +1,5 @@
<%- if @saved -%>
- $('div#recurring_todo_<%= @recurring_todo.id %> a.star_item img').toggleClass('starred_todo').toggleClass('unstarred_todo');
+ $('div#recurring_todo_<%= @recurring_todo.id %> a.star_item img').toggleClass('starred');
<%- else -%>
TracksPages.page_notify('error', '<%= t('todos.error_starring_recurring', :description => @recurring_todo.description) %>', 8);
<%- end -%>
diff --git a/test/views/todos_helper_test.rb b/test/views/todos_helper_test.rb
index dede1b623..441ec2b56 100644
--- a/test/views/todos_helper_test.rb
+++ b/test/views/todos_helper_test.rb
@@ -63,7 +63,7 @@ def test_show_date_future
def test_remote_star_icon_unstarred
@todo = flexmock(:id => 1, :to_param => 1, :description => 'Get gas', :starred? => false)
# added dot (.) to regexp because somehouw the extra dot is added in the tests while its not in the rendered html
- assert_remote_star_icon_helper_matches %r{}
+ assert_remote_star_icon_helper_matches %r{}
assert_behavior_registered
end