Code Cleanup - undo
- Improved description of most recent change. - Added timestamp of most recent change.
This commit is contained in:
15
src/TDB.cpp
15
src/TDB.cpp
@@ -528,22 +528,25 @@ void TDB::undo ()
|
||||
u.pop_back ();
|
||||
}
|
||||
|
||||
Date lastChange (::atoi (when.c_str ()));
|
||||
std::cout << std::endl
|
||||
<< "The last modification was made "
|
||||
<< lastChange.toString ()
|
||||
<< std::endl;
|
||||
|
||||
// confirm
|
||||
if (prior != "")
|
||||
{
|
||||
Task priorTask (prior);
|
||||
Task currentTask (current);
|
||||
std::cout << "The last modification was that "
|
||||
<< taskDifferences (prior, current)
|
||||
<< std::endl
|
||||
std::cout << taskDifferences (prior, current)
|
||||
<< std::endl;
|
||||
}
|
||||
else
|
||||
std::cout << "This was a new task."
|
||||
<< std::endl
|
||||
std::cout << " - This was a new task"
|
||||
<< std::endl;
|
||||
|
||||
if (!confirm ("The undo command is irreversible. Are you sure you want to undo the last update?"))
|
||||
if (!confirm ("The undo command is not reversible. Are you sure you want to undo the last update?"))
|
||||
throw std::string ("No changes made.");
|
||||
|
||||
// Extract identifying uuid.
|
||||
|
||||
22
src/util.cpp
22
src/util.cpp
@@ -498,35 +498,33 @@ std::string taskDifferences (const Task& before, const Task& after)
|
||||
// Now start generating a description of the differences.
|
||||
std::stringstream out;
|
||||
foreach (name, beforeOnly)
|
||||
out << *name
|
||||
<< " was deleted. ";
|
||||
out << " - "
|
||||
<< *name
|
||||
<< " was deleted\n";
|
||||
|
||||
foreach (name, afterOnly)
|
||||
out << *name
|
||||
out << " - "
|
||||
<< *name
|
||||
<< " was set to '"
|
||||
<< after.get (*name)
|
||||
<< "'. ";
|
||||
<< "'\n";
|
||||
|
||||
foreach (name, beforeAtts)
|
||||
if (*name != "uuid" &&
|
||||
after.get (*name) != "" &&
|
||||
before.get (*name) != after.get (*name))
|
||||
out << *name
|
||||
out << " - "
|
||||
<< *name
|
||||
<< " was changed from '"
|
||||
<< before.get (*name)
|
||||
<< "' to '"
|
||||
<< after.get (*name)
|
||||
<< "'. ";
|
||||
<< "'\n";
|
||||
|
||||
// Can't just say nothing.
|
||||
if (out.str ().length () == 0)
|
||||
out << "No changes were made. ";
|
||||
out << " - No changes were made\n";
|
||||
|
||||
/*
|
||||
std::stringstream decorated;
|
||||
decorated << "Task " << before.id << " was modified. " << out.str ();
|
||||
return decorated.str ();
|
||||
*/
|
||||
return out.str ();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user