improve interface for editing settings
Ticket
+issues
Help text
Help text people will see when editing.All help rules that apply to
cards of a given type
Ticket+*type+*help"Name" should be a very short description of the bug or f...+*helpIf your story sounds human (not spam-bottish), we'll send...Fruit+*type+*helpRemember, tomatoes are not vegetables.
given field cards
questions answered+*right+*help(check the box if yes; leave it unchecked if no)your name+*right+*help(optional)phone+*right+*help(optional)other domains+*right+*help(optional) e.g., mywagnsite.com You can register othe...subdomain+*right+*helpEg. sadhamster Each wagn has a unique name, which is us...Sign up+*right+*helpIf your story sounds human (not spam-bottish), we'll send...details+*right+*helpStart your details with the dates when this work was done.site name+*right+*helpall lowercase. e.g. thingsweknow used for subdomain. ...open edit+*right+*helpBy default, all users must sign in to edit Wagn. Check h...*referred to by+*right+*helpCards referred to by (StUb{"cast":{"id":18633},"view_opts...*refers to+*right+*helpCards that (StUb{"cast":{"id":18630},"view_opts":{"view":...consulting hours+*right+*helpContact me about upgrading to a consulting plan.difficulty+*right+*helpeasy, moderate or hardsolution+*right+*helpFixes, implementation decisions, answers, ways forward.preparation time+*right+*helpHow long it takes to chop, marinate, etc., everything you...agreed+*right+*helpI have read the Wagn Hosting Agreement and hereby agree t...hosting+*right+*helpinhouse; grant, Wagneer, Standard or Pro; off-site; Cance...issues+*right+*helpNeeds, problems, opportunities.Fruit+*right+*helpRemember, tomatoes are not vegetables.interest in Wagn+*right+*helpWhat are you using it for and/or doing with it?about+*right+*helpWhat's this wagn for? (optional)name of contact+*right+*helpWho is the person and/or organization that you believe wo...*created+*right+*helpCards created by (StUb{"cast":{"id":18627},"view_opts":{"...*follow+*right+*helpGet notified about changes.
given field cards on a given type
Support Ticket+status+*type plus right+*helpSign up+story+*type plus right+*helpTell us about yourself and your interest in Wagn (it will...User Story+story+*type plus right+*helpSee the (StUb{"cast":{"id":9213},"view_opts":{"title":"gu...
a single card
*css+*self+*helpAdd custom CSS styling. more
Permissions
Who can create new cardsAll create rules that apply to
all cards
all "+" cards
*all plus+*createInherit from left card
cards of a given type
all "*" cards
all "+*" cards
given field cards
*following+*right+*createInherit from left card
Who can view cards in the Set.All read rules that apply to
all cards
all "+" cards
*all plus+*readInherit from left card
cards of a given type
given field cards
a single card
Who can update cardsAll update rules that apply to
all cards
all "+" cards
*all plus+*updateInherit from left card
cards of a given type
all "*" cards
all "+*" cards
given field cards
*following+*right+*updateInherit from left card
given field cards on a given type
a single card
Who can delete cardsAll delete rules that apply to
all cards
all "+" cards
*all plus+*deleteInherit from left card
cards of a given type
all "*" cards
all "+*" cards
given field cards
a single card
structure
Controls cards' content / structure. moreAll structure rules that apply to
cards of a given type
Cardtype+*type+*structureHTML : {{+:description|content}} {{_|add_button}}{{_|configure_button}} {{+:type+:by_name|content}}Role+*type+*structureNest list : {{+:description|lead}} {{+:dashboard|content}} {{+:members|titled;title: Members}}Twitter template+*type+*structureRichText : {{+*message}} {{+*consumer key}} {{+*consumer secret}} {{+*access token}} {{+*access secret}}Animal+*type+*structureHTML :{{+feature}} {{+How Tos|titled; title: _right}}{{+headline| content}}{{+svg| content; size: large}}Feature+*type+*structureRichText :{{+description}}{{+example|titled; title: Example}}{{+howto|titled; title: How To}}
{{+tips|titled; title: Tips}}
{{+discussion|titled; show:comment_box; title: Discussion}}[[_self+tickets for item|Tickets relevant to {{_self|name}}]]Recipe+*type+*structureRichText :{{+preparation time | labeled}}{{+serves | labeled}}{{+diet | labeled | link}}{{+tags | labeled | link}}{{+ingredients|titled}}{{+preparation|titled}}{{+discussion|titled; show:comment_box}}Blueprint+*type+*structureHTML :{{+status|labeled|link}}{{+overview|titled}}{{+needs|titled}}{{+solutions|titled}}{{+resources|titled}}{{+discussion|open;show:comment_box}}Also see:{{+tickets for item|closed}}Point Releases+*type+*structureRichText :Date: {{+date}}{{+blurb}}
{{+Blog|titled}}
{{+tickets by status|titled}}
{{+Documentation Ticket|titled}}
Notes
{{+changelog|closed}}
{{+upgrade notes|closed}}
{{+discussion|open}}
Idea+*type+*structureRichText :[[Idea]]
{{+status|labeled|link}}
{{+priority|labeled|link}}
{{+tag|labeled|link}}
{{+issue|titled}}
{{+solution|titled}}
{{+example|titled}}
{{+discussion|open; show:comment_box}}
{{+discussed in support tickets|titled; item:link}}{{+relevant user stories|titled; item:link}}Ticket+*type+*structureRichText :[[Ticket]]
{{+status|labeled|link}}{{+priority|labeled|link}}{{+tags|labeled|link}}{{+commit|labeled|link}}{{+issue|titled}}
{{+solution|titled}}
{{+example|titled}}
{{+discussion|open; show:comment_box}}
{{+discussed in support tickets|titled|link}}User Story+*type+*structureRichText :Story
{{+story}}
Tag with the [[tickets]], [[ideas]], [[blueprints]] and/or [[decks]] it's relevant to:
{{+tag|item:link}}
{{+discussion|open}}
Step+*type+*structureRichText :Howto
{{+howto}}
Tips
{{+tips}}
The Wagn Way
{{+What's special about Wagn?}}
On to the next step: {{+next step|type:Phrase}}
{{+discussion|open}}
Back to [[Become a Wagneer]]
Support Ticket+*type+*structureRichText :Support Ticket
{{+status|labeled;item:name}}{{+tags|labeled;item:link}}{{+issue|titled}}{{+example|open}}{{+screenshot|titled; size:large}}{{+discussion|open;show:comment_box}}Email template+*type+*structureRichText :{{+*from | labeled | link}} {{+*to | labeled | link}} {{+*cc | labeled | link}} {{+*bcc | labeled | link}} {{+*subject | titled}} {{+*html message | titled}} {{+*text message | titled}} {{+*attach | titled}}
"How To+*type+*structureRichText :{{+animal | labeled; title: animal | link}}
{{+tags| labeled; title: tags | link}}
{{+need|titled;title:Problem}}
{{+solution|titled; title: Solution}}
{{+prerequisites|titled;title: Prerequisites}}
{{+steps|titled;title:Steps}}
{{+reference|titled; title: References}}
Wagn Circle+*type+*structureRichText :{{+Date|labeled}}
{{+Time|labeled}}
{{+Logistics|labeled}}
{{+broadcast|titled}}{{+Attendees|titled; item:link}}
{{+Agenda|titled}}
+*type+*structure+*type+*structureTechNote+*type+*structureDiet+*type+*structureDesign+*type+*structureRichText :{{+description}}
{{+features|titled}}
{{+practices|titled}}
[[+tickets for item|Tickets relevant to {{_self|name}}]]
+*structureRichText :{{+image|float:right;size:large}}{{+story}}
{{+wiki|titled; show:comment_box}}
Tags: {{+tags|item:link}}
Company+*type+*structure+*type+*structureTestimonial+*type+*structureDocumentation Ticket+*type+*structureRichText :{{+status|item:link;show:menu}}, {{+priority|item:link;show:menu}}, {{+assigned to|item:link}}
From:
{{+ticket}}
{{+tag|titled;item:link;show:menu}}
{{+discussion|open}}
Release+*type+*structureRichText :{{+Theme|labeled}}
{{+Date|labeled}}
{{+Blurb|labeled}}
{{+Blog|titled}}
{{+upgrade notes|closed}}
{{+tickets by status|titled}}
{{+Documentation Ticket|titled}}
{{+discussion|open}}
Job+*type+*structureRichText :{{+title|labeled}}
{{+location|labeled}}
{{+employer|labeled}}
{{+salary|labeled}}
{{+closing date|labeled}}
{{+tags|labeled}}
{{+description|titled}}
Peer+*type+*structureEvent+*type+*structureRichText :When: {{+date}} {{+time}}
Where: {{+location}}
{{+website}}
Description:
{{+description}}
Demonstration notes:
{{Demonstrations+}}
+*type+*structure+*type+*structureField+*type+*structureRichText : An {{_self|name}} might be interested in:
{{+interests|card}}
{{+practitioners|line}}
{{+income}}
given field cards
relevant user stories+*right+*structureSearch : { "type":"User Story", "plus": ["tag", {"refer_to": "_left"} ] }closed+*right+*structureSearch : { "found_by": "_left", "right_plus": ["status", {"match": "closed"} ] }acknowledged+*right+*structureSearch : {"found_by": "_left", "plus": ["status", {"match": "acknowledged"} ] }can't reproduce+*right+*structureSearch : {"found_by": "_left", "plus": ["status", {"match": "can't reproduce"} ] }no email addresses+*right+*structureSearch : {"found_by": "_left", "not": {"plus": "email"}, "sort": "name" }high priority+*right+*structureSearch : {"found_by": "_left", "plus":["priority", {"content": "high"} ] }not closed+*right+*structureSearch : {"found_by": "_left", "not":{"right_plus": ["status", {"refer_to": "closed"}]} }pending+*right+*structureSearch : {"found_by": "_left", "right_plus": ["status", {"match": "pending"} ] }answered+*right+*structureSearch : {"found_by": "_left", "right_plus": ["status", {"refer_to": "answered"} ] }open+*right+*structureSearch : {"found_by": "_left", "right_plus": ["status", {"refer_to": "open"} ] }tix+*right+*structureSearch : {"found_by": "_left", "append": "ticket tag summary", "view": "content"}email addresses+*right+*structureSearch : {"found_by": "_left", "plus": "email", "sort": "name", "append": "email"}for weekly update+*right+*structureSearch : {"found_by": "_left", "sort": "alpha", "append": "update"}by descending create+*right+*structureSearch : {"found_by": "_left", "sort": "create", "dir":"desc"}not tagged closed+*right+*structureSearch : {"found_by":"_left","not":{"plus":["tag",{"refer_to":"closed"}]}}recent inclusion changes+*right+*structureSearch : {"included_by":{"type":"_left"}, "sort":"update", "view": "change" }tickets assigned to User+*right+*structureSearch : {"plus": ["assigned to", {"refer_to": "_left"} ], "not": {"plus": ["status", {"refer_to": "closed"} ] } }virtual search that finds enclosing card+*right+*structureSearch : {"plus": ["capitano", {"refer_to": "_left"} ] }anything closed tagged with+*right+*structureSearch : {"plus": ["status", {"refer_to": "closed"} ], "right_plus": ["tag", {"refer_to": "_left"} ] }relevant discussion+*right+*structureSearch : {"referred_to_by": {"left": "_left", "right": "re"}, "append": "discussion"}references+*right+*structureSearch : {"referred_to_by":{"left":"_LL"}, "or":{"type":["in","Cardtype","Features","Setting"], "included_by":"Syntax Reference" } }Tag and status+*right+*structureSearch : {"right_plus":["tag", {"refer_to":"_LL"}], "plus":["status",{"refer_to":"_LR"}]}permissions for role+*right+*structureSearch : {"right": {"name": ["in", "*create,", "*read", "*update", "*delete"] }, "refer_to": "_LL", "limit": "0", "sort": "name", "view": "closed" }medium+*right+*structureSearch : {"type": "_left", "right_plus": ["priority", {"refer_to": "medium"}]}Documentation Ticket+*right+*structureSearch : {"type": "Documentation Ticket", "plus": ["tag", {"refer_to": "_left"} ] }doc tickets tagged with+*right+*structureSearch : {"type": "Documentation Ticket", "plus": ["tag", {"refer_to": "_left"} ], "not": {"plus": ["status", {"content": "closed"} ] } }ideas for item+*right+*structureSearch : {"type": "Idea", "plus": ["tag", {"refer_to": "_left"} ] }ideas tagged with+*right+*structureSearch : {"type": "Idea", "plus": ["tag", {"refer_to": "_left"} ], "not": {"plus": ["status", {"content": "closed"} ] } }notes for user+*right+*structureSearch : {"type": "Note", "plus": ["who", {"refer_to":"_left"} ], "sort":"create", "dir":"desc" }peers with tag+*right+*structureSearch : {"type": "Peer", "plus": ["tag", {"refer_to": "_left"} ], "sort": "name" }coopetitors with tag+*right+*structureSearch : {"type": "Peer", "plus": ["tag", {"refer_to": "_left"} ], "sort": "name" }Point Releases+*right+*structureSearch : {"type": "Point Releases", "left": "_left", "sort":"alpha"}projects of this status+*right+*structureSearch : {"type": "Project", "right_plus": ["project status", {"refer_to": "_left"} ] }relevant recipes+*right+*structureSearch : {"type": "Recipe", "plus": ["diet", {"refer_to": "_LL"}] }your support tickets+*right+*structureSearch : {"type": "Support Ticket", "edited_by": "_LL", "not": {"plus": ["status", {"refer_to": "closed"} ] } }discussed in support tickets+*right+*structureSearch : {"type": "Support Ticket", "plus": ["discussion", {"refer_to": "_LL"} ] }support tickets tagged with+*right+*structureSearch : {"type": "Support Ticket", "plus": ["tag", {"refer_to": "_left"} ], "not": {"plus": ["status", {"content": "closed"} ] } }priority tickets+*right+*structureSearch : {"type": "Ticket", "plus": ["priority", {"refer_to": "_LL"} ] }dev tickets tagged with+*right+*structureSearch : {"type": "Ticket", "plus": ["tag", {"refer_to": "_left"} ], "not": {"plus": ["status", {"content": "closed"} ] } }support tickets for item+*right+*structureSearch : {"type": "Ticket", "plus": ["tag", {"refer_to": "_left"} ], "not": {"plus": ["status", {"content": "closed"} ] }, "view": "link" }closed tickets for item+*right+*structureSearch : {"type": "Ticket", "plus": ["tag", {"refer_to": "_left"} ], "right_plus": ["status", {"content": "closed"} ] }closed tickets+*right+*structureSearch : {"type": "Ticket", "plus": ["tag", {"refer_to": "_left"} ], "right_plus": ["status", {"refer_to": "closed"} ] }coded tickets+*right+*structureSearch : {"type": "Ticket", "plus": ["tag", {"refer_to": "_left"} ], "right_plus": ["status", {"refer_to": "coded"} ], "view": "closed" }in progress tickets+*right+*structureSearch : {"type": "Ticket", "plus": ["tag", {"refer_to": "_left"} ], "right_plus": ["status", {"refer_to": "in progress"} ], "view": "closed" }open tickets+*right+*structureSearch : {"type": "Ticket", "plus": ["tag", {"refer_to": "_left"} ], "right_plus": ["status", {"refer_to": "open"} ], "view": "closed" }testing tickets+*right+*structureSearch : {"type": "Ticket", "plus": ["tag", {"refer_to": "_left"} ], "right_plus": ["status", {"refer_to": "testing"} ], "view": "closed" }tickets needing design+*right+*structureSearch : {"type": "Ticket", "right_plus": ["tag", {"refer_to": "Design"} ], "plus": ["tag", {"refer_to": "_left"} ] }documenting tickets+*right+*structureSearch : {"type": "Ticket", "plus": ["tag", {"refer_to": "_left"} ], "right_plus": ["status", {"content": "documenting"} ], "view": "closed" }users with tag+*right+*structureSearch : {"type": "User", "plus": ["tag", {"refer_to": "_left"} ] }tags these people+*right+*structureSearch : {"type": "User", "plus": ["tag", {"refer_to": "_LL"} ] }priority ideas+*right+*structureSearch : {"type":"Idea", "right_plus":["priority", { "refer_to": "_left" } ] }Leads with status+*right+*structureSearch : {"type":"Lead", "right_plus":["status",{"refer_to":"_left"}]}my current tickets+*right+*structureSearch : {"type":"Ticket", "right_plus":["tag",{"refer_to":"Wagn 1.0"}], "plus":["assigned to",{"refer_to":"_left"}], "not":{"right_plus": ["status", {"content": "closed"} ] }, "sort":"update" }*account settings+*right+*structureRichText : {{_left+:account|content}} {{_left+:roles|title: Roles}} {{_left+:follow|title: Notification choices}}*watching+*right+*structureSearch : /* fixit - once "type" accepts card defs: {"or": {"and": {"plus": ["*watcher", {"refer_to": "_left"} ], "not": {"type": "Cardtype"} } } {"type": {"plus": ["*watcher", {"refer_to": "_left"} ], "type": "Cardtype"} } } */ {"plus": ["*watcher", {"refer_to": "_left"} ], "view": "change" }name8+*right+*structureSearch : /* Plussing any cardtype card to name8 gets cards of that type in groups of 8 */ {"type": "_left", "limit": 8, "sort": "name", "view": "link"}addressed tickets+*right+*structureSearch : /* Shows all tickets until we can search twice on same parameter */ {"type": "Ticket", "plus": ["status", {"content": "closed"} ], "plus": ["tag", {"refer_to": "_left"} ] }tickets by status+*right+*structureRichText :[[_left+open tickets|open]]
{{_left+open tickets}}
[[_left+in progress tickets|in progress]]
{{_left+in progress tickets}}
[[_left+coded tickets|coded]]
{{_left+coded tickets}}
[[_left+testing tickets|testing]]
{{_left+testing tickets}}
[[_left+closed tickets|closed]]
{{_left+closed tickets}}
dev ticket summary+*right+*structuresetup procedure+*right+*structureRichText :
- set hosting to [[Wagneer]]:
{{_left|closed}}- enter wagn in [[https://docs.google.com/spreadsheet/ccc?key=0AmNmxQNk6euHdFg5R3lnVG05a1d6cmFzMks2UTdBelE#gid=0 |spreadsheet]]
- create Wagn
from deploy branch:
~/dev/wagn/port/generate.rb name num [domain1 [, domain2]]- send acceptance email:
{{_left+acceptance email|closed}}
- drop consultation bit if no consulting requested (boilerplate needed)
- drop payment message if payment already visible (boilerplate needed)
- drop domain thing if no domain given.
- Sanity check: click on link to make sure all is working before sending!
- Tell Ethan if additional consulting is requested.
Ticket tag summary+*right+*structureRichText :[[_left+tickets for item|all tickets]] | [[_left+tickets by status|dev tickets]] : {{_left|link}}
address+*right+*structureticket line view+*right+*structureRichText :{{_left+tags}}
{{_left+priority}}
{{_left+solution}}
{{_left+issue}}
{{_left+discussion}}
older User card info+*right+*structureupdate+*right+*structureRichText :{{_left+Contract+date signed}} {{+first payment made}} {{_left+website}}
{{_left+GC Staff notes|closed}}
{{_left+discussion|closed}}
{{_left+tickets by status|closed}}
{{_left+notes|closed}}
{{_left+contact|closed}}
tickets for item+*right+*structureRichText :Development Tickets ([[_left+tickets by status|by status]])
{{_left+dev tickets tagged with+not closed|item:link}}
Ideas
{{_left+ideas tagged with+not closed|item:link}}
Documentation Tickets
{{_left+doc tickets tagged with+not closed|item:link}}
Support Tickets
{{_left+support tickets tagged with+not closed|item:link}}
{{_left+anything closed tagged with|closed}}
{{_left+relevant user stories|closed}}
setup+*right+*structureRichText :wagn title: {{_left+title}}
subdomain: {{_left+subdomain}}.wagn.org
domain (optional): {{_left+domain}}
Google Analytics key: {{_left+ga key|type:Phrase}} / installed? {{_left+key installed|type:Toggle}}
Monthly Fee: {{_left+monthly fee}} / Hours: {{_left+monthly hours}}
Date signed (for hosting cycle day of month): {{_left+contract+date signed}}
Contract
{{_left+contract|closed}}
Client signifies agreement to the above terms by checking the following:
{{_left+agreed|type:Toggle}}
TemplateButtonsBug+*right+*structureRichText : This text should just appear when cards are plussed to TemplateButtonsBug, with no Save/Cancel buttons.acceptance email+*right+*structurePlainText : To: {{_left+email|naked}} Subject: Your Wagn is ready for you Hi {{_left+contact person|naked}}, Your Wagn is up and rolling. To get started setting up your site, go to {{_left|name}}.wagn.org. It will prompt you to create an administrator account and then to start configuring. Our records currently indicate that you have not yet scheduled monthly payments. Our policy is to assume good faith, so we've gone ahead with the site setup, but we request that you [[https://payments.paysimple.com/PaySimple/Login/CheckOutFormLogin/E2A4151E-2964-486C-A884-DBA38FA13E9D|schedule payments online]] as soon as possible. Our payment procedure is still quite new and needs ironing out; please contact us if you encounter a problem. As mentioned on the registration, our current hosting fee is $20 per month. We're very grateful that you've agreed to purchase hosting with us and in so doing support the Wagn project. Note that the initial hosting commitment is for just 3 months, but you may upgrade at any time if you would like help crafting your wagn website or developing new features. You mentioned that you would like for {{_left+domain|naked}} to point to your website. For that to work, you will need to have your domain registrar point that domain to this IP address: 67.207.148.68. Once that's working, our server will show your website to all visitors to {{_left+domain|naked}}. But we will still need to make it your default domain so visitors won't see {{_left|name}}.wagn.org in the browser. So please contact support@wagn.org once your domain is pointing to our servers. If you'd like more help getting going with your Wagn, please contact us at support@wagn.org. -- The Wagn Team
given field cards on a given type
Animal+How To+*type plus right+*structureSearch : { "type": "HowTo", "right_plus": ["animal", { "refer_to": "_left"}] }Animal+home+*type plus right+*structure
a single card
+*structureRichText :{{+description|content}} {{_|add_button}}{{_|configure_button}}{{_|grouped_list}}
only show inclusion once in edit mode+example+*self+*structureRichText :Edit this +example card and you'll see both inclusions, but only the latter value gets saved. Confusing at best.
First:
{{+issue|open}}
Second:
{{+issue|open}}
Packs+*self+*structureRichText :Packs have been renamed to Mods:
{{Mods|closed}}
Here are the old cards organized around the word "Packs" before it was renamed:
{{_self|closed;structure: Blueprint+*type+*structure}}
All default rules that apply to
all cards
*all+*defaultRichText : empty
cards of a given type
Project Status+*type+*defaultRichText : emptyDate+*type+*defaultRichText : emptyImage+*type+*defaultImage : emptyHTML+*type+*defaultRichText : emptyCardtype+*type+*defaultRichText :{{+description}}
[[/new/{{_self|linkname}}|add a {{_self|name}} card]]
{{_self|name}} Cards
{{+*type cards}}
Blog entry+*type+*defaultRichText :DRAFT — To publish, remove this section and change this card's [[permissions]] to be viewable by Anyone.
Summary for mailing list:
Head1
Head2
Head3
Fruit+*type+*defaultRichText : I am a fruit. I grow on {{plant}}. I can be found in {{region}}.Article+*type+*defaultPlainText : title:{{+article|display:inline}} author:{{+article|display:inline}} date:{{+article|display:inline}} comments:{{+article|display:inline}}
given field cards
*content option view+*right+*defaultPhrase : empty*to+*right+*defaultPointer : empty+*defaultPointer : empty*cc+*right+*defaultPointer : empty*bcc+*right+*defaultPointer : empty*subject+*right+*defaultPhrase : empty*attach+*right+*defaultPointer : emptywho+*right+*defaultPointer : emptyassigned to+*right+*defaultPointer : emptyparty+*right+*defaultPointer : emptyre+*right+*defaultPointer : emptytag+*right+*defaultPointer : emptyTicket+*right+*defaultPointer : empty*layout+*right+*defaultPointer : empty*input type+*right+*defaultPointer : empty*thanks+*right+*defaultPhrase : emptyother domains+*right+*defaultPhrase : emptyyour name+*right+*defaultPhrase : emptyphone+*right+*defaultPhrase : emptyname of contact+*right+*defaultPlainText : emptysubdomain+*right+*defaultPhrase : emptydifficulty+*right+*defaultPhrase : emptyproject client+*right+*defaultPointer : emptyProject Status+*right+*defaultPointer : empty*autoname+*right+*defaultPhrase : emptydiscussion+*right+*defaultRichText : emptyBlurb+*right+*defaultPhrase : emptybid+*right+*defaultPhrase : emptypoints+*right+*defaultPhrase : emptycontact+*right+*defaultPointer : empty+*defaultPhrase : emptyonly GC+*right+*defaultRichText : emptyDate+*right+*defaultDate : emptyImage+*right+*defaultImage : empty*roles+*right+*defaultPointer : emptyTheme+*right+*defaultPhrase : emptyinitial payment+*right+*defaultPhrase : emptyCSS+*right+*defaultHTML : emptyscreenshot+*right+*defaultImage : emptypostal code+*right+*defaultPhrase : emptydate signed+*right+*defaultDate : emptytotal due+*right+*defaultPhrase : emptyorientation due+*right+*defaultPhrase : emptyorientation hours+*right+*defaultPhrase : emptyhosting due+*right+*defaultPhrase : empty3 month fee+*right+*defaultPhrase : emptymonthly hours+*right+*defaultPhrase : emptymonthly fee+*right+*defaultPhrase : emptytitle+*right+*defaultPhrase : emptysignatory title+*right+*defaultPhrase : emptysignatory+*right+*defaultPhrase : empty+*defaultPhrase : emptycity+*right+*defaultPhrase : emptyemail+*right+*defaultPhrase : emptycontact person+*right+*defaultPhrase : emptylegal name+*right+*defaultPhrase : emptytime+*right+*defaultPhrase : emptylocation+*right+*defaultPhrase : emptywebsite+*right+*defaultPhrase : emptynerdy nickname+*right+*defaultPhrase : emptywork phone+*right+*defaultPlainText : emptyhome phone+*right+*defaultPlainText : emptymobile phone+*right+*defaultPlainText : empty+*defaultPlainText : emptylogo+*right+*defaultImage : emptyzzlukes+*right+*defaultRichText : emptyingredients+*right+*defaultRichText : emptyserves+*right+*defaultNumber : emptylunra xanto+*right+*defaultRichText : empty*structure+*right+*defaultNest list : emptylikely to use+*right+*defaultPointer : emptyyoutube video id+*right+*defaultPhrase : emptysubtitled video url+*right+*defaultPhrase : emptycoded+*right+*defaultPhrase : emptycommit+*right+*defaultPhrase : empty*create+*right+*defaultPointer : empty*read+*right+*defaultPointer : empty*update+*right+*defaultPointer : empty*delete+*right+*defaultPointer : empty*email+*right+*defaultPhrase : emptysite name+*right+*defaultPhrase : emptyAttendees+*right+*defaultPointer : empty*style+*right+*defaultPointer : emptysalary+*right+*defaultPhrase : emptyemployer+*right+*defaultPhrase : emptyclosing date+*right+*defaultDate : empty*password+*right+*defaultPhrase : empty*script+*right+*defaultPointer : empty+*defaultPointer : empty+*defaultPointer : empty*on delete+*right+*defaultPointer : empty*text message+*right+*defaultPlainText : empty*following+*right+*defaultPointer : empty*follow+*right+*defaultPointer : empty*follow fields+*right+*defaultPointer : empty*default html view+*right+*defaultPhrase : empty*formerly test context+*right+*defaultPointer : empty*message+*right+*defaultPhrase : empty*disappear+*right+*defaultToggle : empty*contextual class+*right+*defaultPointer : empty*head+*right+*defaultHTML : emptynote data+*right+*defaultPlainText : ["{{_left+date|naked}}","{{_left+who|naked}}","{{_left+hours|naked}}","{{_left+re|naked;item:name}}"]decks wanting+*right+*defaultSearch : {"type": "Deck", "referred_to_by": {"left": "_left", "right": "tags"} }*content options+*right+*defaultSearch : {}description+*right+*defaultRichText :Development Contract+*right+*defaultRichText :Wagn Site Development Agreement
This WAGN SITE DEVELOPMENT AGREEMENT (“Agreement”) is entered into by and between GRASS COMMONS, a 501(c)(3) public education nonprofit registered in Oregon (“Contractor”) and the entity referred to in the Client Information section below (“Client”), effective as of the date both parties execute this Agreement as set forth below.CLIENT INFORMATIONClient Name: {{_left+legal name|display:inline}}Contact Person: {{_left+contact person|display:inline}}Email Address: {{_left+email}}Phone Number: {{_left+phone}}Address: {{_left+address}}DEFINITIONS
- Wagn is a free, open-source software application conceived and developed by Contractor.
- Wagneering describes the process of using Wagn to build websites. Although Wagneering accomplishes tasks often achieved through software development, it does not involve the use of a scripting or programming language and is herein treated as a service distinct from software development.
- Wagn Consulting herein refers to a variety of forms of consultation on the use of Wagn software, including design, training, community development, integration with other data sources, configuration, and Wagneering.
RECITALS
The Contractor is engaged in the development of an open-source software application named Wagn, configuration of websites constructed within Wagn, and related consulting services to companies in need of such services; and,
The Client desires to engage the services of the Contractor, upon the terms and subject to the conditions set forth in this Agreement, and the Contractor desires to accept such engagement.
NOW, THEREFORE, in exchange for the mutual promises and covenants hereinafter set forth, the parties hereto agree as follows:CONTRACTOR PRODUCT AND SERVICES
- Contractor agrees to create and structure (Wagneer) a website for Client according to the terms outlined in Addendum A. It is agreed that those terms do not rigid descriptions of precisely what will be built - Contractor and Client shall engage in weekly conversations and adjust terms, orally or in written form, to suit evolving needs and deepening understanding of needs and possibilities. They terms are intended to communicate (a) Contractor's initial plans, and (b) the scope of work on which the fixed bid price is based. If the work requested grows significantly larger than this scope (as opposed to merely different but of similar scope), then Contractor and Client will work with ICAH to negotiate a fair and reasonable price adjustment.
- Contractor agrees to engineer alterations to Wagn software according to terms outlined in Addendum B.
TIMELINE
Work shall be completed according to the following timeline:{{+timeline}}COMPENSATION
The total cost of work outlined in this Agreement is {{+total cost}}. The costs are outlined in more detail in Addenda A and B.LIMITATION OF LIABILITY
The Client agrees to indemnify the Contractor and hold the Contractor harmless from any claims, losses or damages arising from services provided by the Contractor hereunder. In no event shall the Contractor be liable for any lost profits, or for acts and omissions which result in damage to Client’s property, nor for special, incidental or consequential damages, nor for any claim or demand against Client or the Contractor by any other person (even if the Contractor has been advised of the possibility thereof), in connection with or arising from the Contractor furnishing services to the Client under this Agreement. The Contractor agrees to indemnify and hold the Client harmless from any claims, losses or damages resulting from any infringement by Contractor of any patent, trademark, copyright, or other proprietary right, unless such infringement occurs as a result of the Client's actions or instructions. In no event shall the Contractor’s liability exceed the limits of its applicable insurance coverage or, where the fault arises from work completed, the value of the fees paid for such work.CONFIDENTIAL INFORMATION
Material furnished to the Contractor by the Client, relating to its software and hardware are the property of the Client and shall be treated as confidential if identified as confidential by the Client (“Confidential Information”). At all times, the Contractor will use reasonable efforts to ensure that the Confidential Information shall not be disclosed to third parties by the Contractor, with the Client’s prior written consent. For the purposes of this Agreement, Confidential Information shall not include:
- Information known to the Contractor before the Contractor obtained the information from the Client.
- Information publicly available other than as a result of an unauthorized disclosure by the Contractor.
- Information that is independently developed or acquired by the Contractor on a non-confidential basis, or from a third party which the Contractor has no reason to believe is not lawfully possessing and lawfully entitled to disclose such information; and
- Information which is required to be disclosed by law, regulation, court order or other legal process
Ownership and Use of Software. All of the software code comprising Wagn is open-source, licensed under a Gnu Public License (GPL). Contractor retains licensing rights to all Wagn source code, including any new code contributed for work pertaining to this agreement, and retains the right to continue licensing the code for free, open-source distribution.
Ownership and Use of Data. Client retains exclusive rights to and responsibility for all content created on the website. Should Client desire a copy of the website data, Contractor agrees to export data in the form of a PostgresQL database dump and deliver it to Client via email upon receipt of a written request and of all payment due for the services agreed upon herein.
Return of Materials. Upon the termination or expiration of this Agreement all paper materials belonging to the Contractor or the Client shall be returned to the respective owner thereof, and the non-owning party shall retain no copies unless the owner of such material consents thereto.
Use of Logo and Contractor Name. Client expressly agrees that the Contractor may identify Client as a customer, and gives permission to the Contractor to the use of Client’s name and logo on general customer lists, on digital customer lists and on printed materials.E-MAIL SOLICITATION
The Client will not engage in the practice of unsolicited E-mail disbursal, in bulk or by single mailing, when the recipient has not specifically requested the information directly from the Client or its agents, or the act generally known as ‘Spamming’ for any reason. Engaging in activity deemed by the Contractor to constitute such activity may lead to an immediate termination of services by the Contractor without notice. Any type of advertisement posted to a Newsgroup or Chat Room may also be considered to be Spam.MISCELLANEOUS PROVISIONS
Notices. Any notice of demand to be given to or served upon the Contractor or the Client in connection herewith shall be in writing and deemed to have been sufficiently given or served for all purposes when delivered in person or when deposited in the United States mails, postage pre-paid, addressed and delivered as follows:If to the Contractor: Grass Commons, 519 Peterson St, Fort Collins, CO 80524
If to the Client: Per Client Information Above.Amendment. This Agreement may be modified, amended, changed or terminated (except as otherwise specifically provided herein), in whole or in part, only by an agreement in writing duly authorized and executed by the parties hereto.
Waiver. The waiver of any breach of any of the provisions of this Agreement by either party shall not constitute a continuing waiver or a waiver of any subsequent breach by said party either of the same or another provision of this Agreement.
Remedies Cumulative. Any and all remedies of the parties hereto shall be in addition to, and not in limitation of, all other remedies available to the parties at law or in equity.
Exclusive Agreement. This Agreement, including any Addendums attached hereto, contains the entire agreement between the parties and no statement, promise or inducement made by either party or the agent of either party that is not contained in the Agreement shall be valid or binding.
Severability. Invalidation of any of the provisions of this Agreement or of any paragraph, sentence, clause, phrase or word herein, or the application thereof in any given circumstance, shall not affect the validity of the remainder of this Agreement.
Binding Effect: Assignment. This Agreement shall be immediately binding upon and inure to the benefit of the parties and their respective heirs, personal representative, successors and permitted assigns, provided, however, that the Client may not assign its rights or obligations hereunder without the prior written consent of the Contractor.
Governing Law. This Agreement shall be construed in accordance with the laws of the State of Colorado. The parties agree that venue and jurisdiction shall be in Colorado.
Void Agreement. This Agreement shall be void and of no further effect if it is not executed by the Client and returned to the Contractor within 15 days of the date that this Agreement is executed by a representative of the Contractor.
IN WITNESS WHEREOF, the parties have executed this Agreement as of the respective date set forth below.CONTRACTORName: Ethan McCutchenTitle: Executive DirectorDate: {{+date signed}}CLIENTName: {{+signatory}}Title: {{+signatory title}}Date: {{+date signed}}Addendum A
SOFTWARE DEVELOPMENT SPECIFICATIONS
{{+software specs}}wiki+*right+*defaultRichText :
menus+*right+*defaultRichText :This is your own personal menu, which will always appear here in the [[sidebar]]. Feel free to delete this text and replace it with links to the Wagn [[documentation]] you use most, notes to yourself, whatever.
old contact+*right+*defaultRichText :
{{_left+contact person}}
{{_left+email}}
{{_left+phone}}
{{_left+address}}
CV+*right+*defaultRichText :{{+Alexey Kalmykov}}
consulting hours+*right+*defaultToggle : 0agreed+*right+*defaultToggle : 0open edit+*right+*defaultToggle : 0ga key installed+*right+*defaultToggle : 0+*defaultToggle : 0questions answered+*right+*defaultToggle : 0*captcha+*right+*defaultToggle : 1hours+*right+*defaultNumber : 1birthday+*right+*defaultDate : 2007-10-10*table of contents+*right+*defaultNumber : 4Diet+*right+*defaultPointer : conventionalpriority+*right+*defaultPointer : lowstatus+*right+*defaultPointer : opentonyliuh+*right+*defaultRichText : This is Tony. I am delighted to find such a good Wiki software. Aren't you?country+*right+*defaultPhrase : USAhosting+*right+*defaultPointer : Wagneer
given field cards on a given type
How To+Step+*type plus right+*defaultMarkdown : emptyWagn Circle+broadcast+*type plus right+*defaultHTML : emptyJob+Date+*type plus right+*defaultPhrase : empty+*defaultPointer : emptyHow To+references+*type plus right+*defaultLink list : emptyWagn Circle+time+*type plus right+*defaultPhrase : 1pm US EDT (6pm UTC)Wagn Circle+Logistics+*type plus right+*defaultPhrase : Check here at call time for link.
Pointers
edit interface for list cardsAll input type rules that apply to
given field cards
*roles+*right+*input type(StUb{"cast":{"id":15121},"view_opts":{"title":"checkbox"...Diet+*right+*input typecheckbox*script+*right+*input typelist*input type+*right+*input typeradiostatus+*right+*input typeradiolikely to use+*right+*input typeradio*style+*right+*input typeradio*follow+*right+*input typeradio*contextual class+*right+*input typeradiowho+*right+*input typeselectassigned to+*right+*input typeselectpriority+*right+*input typeselectproject client+*right+*input typeselectProject Status+*right+*input typeselect
given field cards on a given type
How To+Animal+*type plus right+*input typeradioSupport Ticket+status+*type plus right+*input typeselect
a single card
*debugger+*self+*input type(StUb{"cast":{"id":15121},"view_opts":{"title":"checkbox"...
All content options rules that apply to
given field cards
*bcc+*right+*content options{ "right_plus":{"codename":"account"} }*cc+*right+*content options{ "right_plus":{"codename":"account"} }+*content options{ "right_plus":{"codename":"account"} }*to+*right+*content options{ "right_plus":{"codename":"account"} }*script+*right+*content options{"type":["in", "JavaScript", "CoffeeScript"] }*read+*right+*content options{"extension_type":"User"}who+*right+*content options{"member_of": "GC Staff", "sort":"create"}likely to use+*right+*content options{"name": ["in", "1", "2", "3", "4", "5", "6", "7"], "sor...tag+*right+*content options{"referred_to_by": {"right": "tag" }}priority+*right+*content options{"referred_to_by":"ticket priority options"}status+*right+*content options{"referred_to_by":"Ticket Status Options"}*style+*right+*content options{"type": "bootswatch_skin", "sort": "name"}Diet+*right+*content options{"type": "diet"}*attach+*right+*content options{"type": "File", "sort": "update" }*layout+*right+*content options{"type": "HTML"}Ticket+*right+*content options{"type": "Ticket", "plus": ["status", {"not": {"refer_to...assigned to+*right+*content options{"type": "User", "member_of":"GC Staff"}re+*right+*content options{"type": ["in", "Deck", "Lead", "Idea","Ticket","Document...project client+*right+*content options{"type":"Client"}Project Status+*right+*content options{"type":"project status"}testing+*right+*content options{"type":"RichText", "match":"direction"}*roles+*right+*content options{"type":"role", "not":{"codename":["in","anyone","anyone_...party+*right+*content options{"type":["in","Company","User"]}*input type+*right+*content options11 items*contextual class+*right+*content optionssuccess info warning danger
given field cards on a given type
Documentation Ticket+status+*type plus right+*content options{"name": ["in", "open", "in progress", "closed"] }User Story+tag+*type plus right+*content options{"or": { "and": {"type": ["in","Ticket","Idea"], ...How To+Animal+*type plus right+*content options{"type":"Animal"}list+*input type+*type plus right+*content options4 itemsSupport Ticket+status+*type plus right+*content options6 itemsPointer+*input type+*type plus right+*content options2 items
a single card
*debugger+*self+*content options[[on]]*recent settings+*self+*content options{"type":"setting"}
Label view for radio button and checkbox items. moreAll content option view rules that apply to
all cards
*all+*content option viewsmart_label
given field cards
*style+*right+*content option viewImage
Events
Configure events to be executed when card is createdAll on create rules that apply to
cards of a given type
Event+*type+*on createEvent type email template+*on createsignup alert email
Configure events to be executed when card is updatedAll on update rules that apply to
Configure events to be executed when card is deletedAll on delete rules that apply to
Assets
Skin (collection of stylesheets) for card's page. moreAll style rules that apply to
all cards
*all+*styleDECKO ORG SKIN
a single card
decko org skin common+decko org home+*self+*style0 itemsdecko org skin+decko org home+*self+*style0 itemstest card+*self+*styledecko org skin
JavaScript (or CoffeeScript) for card's page.All script rules that apply to
all cards
*all+*script16 items
Other settings
Autogenerate name for new cards by incrementing this value. moreAll autoname rules that apply to
cards of a given type
Attribute+*type+*autonamean8Testimonial+*type+*autonameTestimonial-007
Anti-spam setting. Requires non-signed-in users to complete a captcha before adding or editing cards (where permitted).All captcha rules that apply to
all cards
*all+*captchayes
cards of a given type
+*captchayes
HTML structure of card's page moreAll layout rules that apply to
all cards
*all+*layoutdecko org layout 2
cards of a given type
Slide+*type+*layoutSlide Layout
a single card
test card+*self+*layoutdecko org layout 2decko org home+*self+*layoutdecko_org_layoutDemo Card+*self+*layoutHome LayoutWagn+*self+*layoutHome LayoutWagn.org+*self+*layoutHome Layouthome+*self+*layoutHome LayoutExplore, Organize, Thrive+*self+*layoutHome Layoutrecent+*self+*layoutRecent Layout
All table of contents rules that apply to
all cards
*all+*table of contents0
cards of a given type
Point Releases+*type+*table of contents0Release+*type+*table of contents0Slide+*type+*table of contents0Feature+*type+*table of contents3
given field cards
foo+*right+*table of contents0
given field cards on a given type
How To+Step+*type plus right+*table of contents3
a single card
Setting+*self+*table of contents0editing cards+*self+*table of contents0Recent activity+*self+*table of contents0structure+*self+*table of contents0Settings by category+*self+*table of contents0Jeffrey Wayne+Documentation+*self+*table of contents0open+*self+*table of contents0closed+*self+*table of contents0Wagn 0.8.0+*self+*table of contents0Wagn 0.8+*self+*table of contents0John Abbe+wiki+*self+*table of contents0Hosting and Consulting+*self+*table of contents0Documentation+*self+*table of contents0foo+*self+*table of contents0don't edit me+*self+*table of contents0Deck updates+*self+*table of contents0initial permissions+*self+*table of contents0Explore, Organize, Thrive+*self+*table of contents0CQL+Samples+*self+*table of contents0Wiki Database CMS+*self+*table of contents0Wiki Database CMS+main+*self+*table of contents0forcing toc+*self+*table of contents1nesting+example+*self+*table of contents1test1+*self+*table of contents1Work rhythm+*self+*table of contents1forcing toc+was *self+*self+*table of contents1administration+*self+*table of contents3Feature Reference+*self+*table of contents3Cards on New Wagns+*self+*table of contents4CQL Syntax+*self+*table of contents4move cue text to editable cards+issues+*self+*table of contents4markup+*self+*table of contents4
Destination after card is created. moreAll thanks rules that apply to
cards of a given type
+*thanksSignup_Success
+solution
I see three somewhat distinct pieces here:
- order - chunk the settings that go together (see Settings by category), and put the most accessible ones first — e.g. table of contents, permissions when they're setting-ized. Ideally, hide ones the user can't add/edit.
- added cue text - without having to open a setting, and ideally for each chunk rather than each setting
- improved interface within each setting (e.g. *layout above) - one easy simplification is to stop linking the sets
Type cards currently offer to add settings applied to themselves+*type. These should have pretty much the same interface, with chunking etc. Maybe in a separate, default subtab? The same could be done for right cards (anything for which |foo|+*right+*count > 1). Depending on how we improve form creation experience it may make sense to remove formatting-related settings from this interface.
hmm. drastically improved interface but not using above specs. should discuss.
can we move above to a separate "idea"? Would like to focus testing on this ticket on whether current functionality works, not on any design tweaks. (Shifting to get-it-out mode)
--Ethan McCutchen.....Wed Jan 25 15:33:47 -0800 2012
Closing. Further improvements here: further improve rules interface
--Ethan McCutchen.....Fri Feb 03 10:34:42 -0800 2012