mirror of
https://github.com/GothenburgBitFactory/taskwarrior.git
synced 2025-07-07 20:06:36 +02:00
Hooks
- Added ::onAdd.
This commit is contained in:
parent
2f5435c50f
commit
631e4176c7
2 changed files with 43 additions and 7 deletions
|
@ -125,22 +125,57 @@ void Hooks::onExit ()
|
||||||
}
|
}
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
// Occurs when: A task is modified, before it is committed.
|
// Occurs when: A task is created, before it is committed.
|
||||||
// Data fed to stdin: before JSON
|
// Data fed to stdin: task JSON
|
||||||
// after JSON
|
|
||||||
// Exit code: 0: Success
|
// Exit code: 0: Success
|
||||||
// !0: Failure
|
// !0: Failure
|
||||||
// Output handled: 0: modified after JSON
|
// Output handled: 0: modified JSON
|
||||||
// context.footnote ()
|
// context.footnote ()
|
||||||
// !0: context.error ()
|
// !0: context.error ()
|
||||||
void Hooks::onModify (const Task& before, const Task& after)
|
void Hooks::onAdd (Task& after)
|
||||||
{
|
{
|
||||||
context.timer_hooks.start ();
|
context.timer_hooks.start ();
|
||||||
|
|
||||||
std::vector <std::string>::iterator i;
|
std::vector <std::string>::iterator i;
|
||||||
for (i = _scripts.begin (); i != _scripts.end (); ++i)
|
for (i = _scripts.begin (); i != _scripts.end (); ++i)
|
||||||
{
|
{
|
||||||
if (i->substr (0, 7) == "on-modify")
|
if (i->substr (0, 6) == "on-add")
|
||||||
|
{
|
||||||
|
File script (*i);
|
||||||
|
if (script.executable ())
|
||||||
|
{
|
||||||
|
// TODO Call all modify hook scripts.
|
||||||
|
|
||||||
|
// TODO On zero status:
|
||||||
|
// - first line is modified JSON
|
||||||
|
// - remaining lines --> context.footnote
|
||||||
|
|
||||||
|
// TODO On non-zero status:
|
||||||
|
// - all stdout --> context.error
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
context.timer_hooks.stop ();
|
||||||
|
}
|
||||||
|
|
||||||
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
// Occurs when: A task is modified, before it is committed.
|
||||||
|
// Data fed to stdin: before JSON
|
||||||
|
// after JSON
|
||||||
|
// Exit code: 0: Success
|
||||||
|
// !0: Failure
|
||||||
|
// Output handled: 0: modified after JSON
|
||||||
|
// context.footnote ()
|
||||||
|
// !0: context.error ()
|
||||||
|
void Hooks::onModify (const Task& before, Task& after)
|
||||||
|
{
|
||||||
|
context.timer_hooks.start ();
|
||||||
|
|
||||||
|
std::vector <std::string>::iterator i;
|
||||||
|
for (i = _scripts.begin (); i != _scripts.end (); ++i)
|
||||||
|
{
|
||||||
|
if (i->substr (0, 9) == "on-modify")
|
||||||
{
|
{
|
||||||
File script (*i);
|
File script (*i);
|
||||||
if (script.executable ())
|
if (script.executable ())
|
||||||
|
|
|
@ -42,7 +42,8 @@ public:
|
||||||
|
|
||||||
void onLaunch ();
|
void onLaunch ();
|
||||||
void onExit ();
|
void onExit ();
|
||||||
void onModify (const Task&, const Task&);
|
void onAdd (Task&);
|
||||||
|
void onModify (const Task&, Task&);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
std::vector <std::string> _scripts;
|
std::vector <std::string> _scripts;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue