|card|+*watchers — Pointer of account-holders
Feature: Notifications
Background:
Given I log in as Joe User
Scenario: Anonymous User
Given I log out
When I go to the homepage
Then I should not see "watch"
Scenario: Logged in User
When I go to the homepage
Then In the main card footer I should see "watch"
Scenario: Watching a Card
When I go to the homepage
And In the main card footer I click the watch link
And the page updates
Then In the main card footer I should see "unwatch"
And the card Home+*watchers should contain "Joe User"
Scenario: Unwatching a Card
Given the pointer Home+*watchers contains "Joe User"
And I am on the homepage
When In the main card footer I click the unwatch link
And the page updates
Then In the main card footer I should not see "unwatch"
And the card Home+*watchers should not contain "Joe User"
Scenario: Watching a Cardtypes
When I go to card User
Then In the main card footer I should see "watch User cards"
Scenario: A Card whose Cardtype is Watched
Given the pointer User+*watchers contains "Joe User"
When I go to card Joe User
Then In the main card footer I should see "watching User cards"
Scenario: Watching Cardtypes
Given the pointer Cardtype+*watchers contains "Joe User"
When I go to card User
Then In the main card footer I should see "watching Cardtype cards | watch User cards"
Subject:
Ethan McCutchen edited "John Abbe+bio"
Body:
"John Abbe+bio" was edited by Ethan McCutchen at |time|. You can also see what changed.
or:
"John_Abbe+bio" was updated by Ethan McCutchen at |time|.
or:
"John_Abbe+bio" was created by Ethan McCutchen at |time|.
The card: http://wagn.dwagn.org/wagn/John_Abbe+bio
[changes link to diff seemed too ugly to show]
On English (John):
√*watchers+*rform (soft) - Pointer
√*watchers+*options - {"type": "User"}
*watching+*rform (hard) - {"plus": ["*watcher", {"refer_to": "_self"} ] } - awaits accept card defs for type
http://en.dwagn.org/wagn/*account+*rform - add +*watching
Who's watching what - {"referred_to_by": {"right": "*watchers"}, "append": "*watching"}
If _user+*notify (Toggle) is off, they don't get email
(This is a new general mechanism for triggering something when a card is edited. This describes a narrow case that would be all we implemented for automtically updating watchlists, as Early Steps wants.)
"authors+*trigger" - something like:
Then upon changing "To the Moon+authors", WagnBot adds/removes items that were added/removed on +authors on "To the Moon+*watchers"
e.g. +*type cards+*item_watchers
more raw notes: http://etherpad.com/qC57JZS7F2