anchor.diff:      Done = (Todo#todo.status == done),
       case {{Estimate, Remaining, AllLogged}, default(ShowInTL, false), Done} of
           {{0, 0, "00:00"}, false, _Done} ->
  -            showTimeReport2(Rest, Acc);
  +            removeEmptyAndDone(Rest, Acc);
           {_Time, false, true} ->
  -            showTimeReport2(Rest, Acc);
  +            removeEmptyAndDone(Rest, Acc);
           _ ->
  -            Desc   = eTodoDB:getWorkDesc(Uid),
  -            Odd    = ((length(Acc) rem 2) =/= 0),
  -            Opts   = if Odd  -> [{class, "trOdd"}];
  -                        true -> [{class, "trEven"}]
  -                     end,
  -            Opts2  = [{class, "timeReportValue"}],
  -            UidStr = eTodoUtils:convertUid(UidInt),
  -
  -            showTimeReport2(Rest,
  -                [trTag(Opts,
  -                    [tdTag(aTag([{href, "/eTodo/eWeb:showTodo?uid=" ++
  -                        http_uri:encode(UidStr)}], empty(Desc, Uid))),
  -                        tdTag(Opts2, time(Estimate) ++ ":00"),
  -                        tdTag(Opts2, AllLogged),
  -                        tdTag(Opts2, time(Remaining) ++ ":00")]) | Acc])
  -    end;
  +            removeEmptyAndDone(Rest, [Uid|Acc])
  +    end.
  +
  +showTimeReport2([Uid|Rest], Acc) ->
  +    {Estimate, Remaining} = eTodoDB:getTime(Uid),
  +    AllLogged = eTodoDB:getAllLoggedWork(Uid),
  +    UidInt    = tryInt(Uid),
  +    Desc      = eTodoDB:getWorkDesc(Uid),
  +    Odd       = ((length(Acc) rem 2) =/= 0),
  +    Opts      = if Odd  -> [{class, "trOdd"}];
  +                   true -> [{class, "trEven"}]
  +                end,
  +    Opts2     = [{class, "timeReportValue"}],
  +    UidStr    = eTodoUtils:convertUid(UidInt),
  +    showTimeReport2(Rest,
  +        [trTag(Opts,
  +            [tdTag(aTag([{href, "/eTodo/eWeb:showTodo?uid=" ++
  +                http_uri:encode(UidStr)}], empty(Desc, Uid))),
  +                tdTag(Opts2, time(Estimate) ++ ":00"),
  +                tdTag(Opts2, AllLogged),
  +                tdTag(Opts2, time(Remaining) ++ ":00")]) | Acc]);
   showTimeReport2([], Result) ->
       Opts = [{class, "timeReportColumn"}],
       [trTag([{class, "timeReportHeading"}],
  
positive.code:                 false ->
                      addSubTodos(Uids1)
              end,
      Opts = [{width, "20%"}, {align, center}],
      {EstimateSum, SpentSum, RemainingSum} = sum(Uids2),
      tableTag([makeTimeLogReport2(Uids2, []),
                trTag([{bgcolor, "black"}],
                      [tdTag([{width, "40%"}], heading("Total")),
                       tdTag(Opts, heading(EstimateSum)),
  
negative.code:                 false ->
                      addSubTodos(Uids1, SharedUids)
              end,
      Uids3 = removeEmptyAndDone(Uids2),
      {EstimateSum, SpentSum, RemainingSum} = sum(Uids2),
      tableTag([showTimeReport2(Uids3, []),
          trTag([{class, "timeReportTable"}],
              [tdTag([{class, "timeReportDesc timeReportSum"}], "Total"),
                  tdTag([{class, "timeReportSum timeReportColumn"}], EstimateSum),
  