Difference between revisions of "InfluenceUs dev task"

(Steps to get to DoneDone)
(Steps to get to DoneDone: Finished the sketchiest of transitions to the live codebase ... simplest of all possible functionality ... ready to begin testing)
Line 39: Line 39:
 
* <s>Try the extension and see how it works</s> Doesn't work ... jQuery error
 
* <s>Try the extension and see how it works</s> Doesn't work ... jQuery error
 
* <s>determine where the javascript testing framework should live</s> aboutus/wiki/test/javascript
 
* <s>determine where the javascript testing framework should live</s> aboutus/wiki/test/javascript
* pull over javascript testing framework from the Topsoil branch
+
* <s>pull over javascript testing framework from the Topsoil branch</s>
* make the test javascript directory accessible via branchname/au_web_services/test
+
* <s>see how MySettings.php is different from one that is working locally</s> wasn't this ... see next
 +
* <s>try back tracking to find out where it should be getting "design" as the skin name, but isn't</s> the browser cached user_id was wrong that was causing the problem
 +
* <s>the skin is trying to include ".php" (empty first name) ... perhaps the style name isn't being set correctly?  figure this out</s>
 +
* <s>make sure that influence branch is staged properly</s>
 
* <s>figure out where I was working on the php testing framework</s> in wiki/extensions/AboutUs/Testing
 
* <s>figure out where I was working on the php testing framework</s> in wiki/extensions/AboutUs/Testing
 
* <s>pull over the php testing framework from</s> already have it in aboutus
 
* <s>pull over the php testing framework from</s> already have it in aboutus
* Fork off a new influence us and begin to bring the code over after that
+
* <s>Fork off a new influence us</s>
 +
* <s>enable the javascript testing framework to be browsed from wiki/test/javascript by a web browser</s>
 +
* <s>enable InfluenceUs in DefaultSettings.php</s>
 +
* <s>use auInfluenceUs global (or something like it) to disable it if you want to in MySettings.php</s>
 +
* bring over and test one php function from influenceus
 +
* bring over and test one javascript function from influenceus
 +
* bring the code over after that
 
* Refactor the extension to use the format as the extensions in here: wiki/extensions/AboutUs.
 
* Refactor the extension to use the format as the extensions in here: wiki/extensions/AboutUs.
 
* Remove the functionality: newly created [[DomainPage]]s include the [[InfluenceUs]] wizard.
 
* Remove the functionality: newly created [[DomainPage]]s include the [[InfluenceUs]] wizard.
Line 49: Line 58:
 
* Change the flow of the [[InfluenceUs]] wizard to include only two paths.One is the user selects delighted and he writes why is he happy about the company, and the second one is the user selects frustrated and writes why is he frustrated and what does he wants them to change.
 
* Change the flow of the [[InfluenceUs]] wizard to include only two paths.One is the user selects delighted and he writes why is he happy about the company, and the second one is the user selects frustrated and writes why is he frustrated and what does he wants them to change.
 
* Add the [[InfuenceUs]] log page in the LocalSettings file instead of putting it in extension.
 
* Add the [[InfuenceUs]] log page in the LocalSettings file instead of putting it in extension.
 +
 +
== Unrelated to influence us ==
 +
* commit the ./ require_once fix to LocalSettings.php on live (breaks maintenance scripts)
  
 
== InfluenceUs Page flow ==
 
== InfluenceUs Page flow ==

Revision as of 11:18, 14 January 2008

OurWork Edit-chalk-10bo12.png

What (summary)

The InfluenceUs task creates a wizard to InviteParticipation.

The InfluenceUs wizard provides highly motivated visitors to our site with a fun, easy, and effective way of engaging and influencing the organization they are delighted or frustrated with.

There is a substantial creative design component to this task. It will be important to socialize ideas before too much investment goes into any particular choice. Low fidelity by-hand drawings can supplement in person conversation and can be scanned for review on IRC. Here is an example where sketches have served this purpose.

Here is some text

Why this is important

Some of the most motivated visitors we attract are folks who are delighted or frustrated with the organization behind the domain page they land on.

Engagement: Makes a clear call to action for these motivated visitors.
BeABuilder: Encourages the kind of constructive collaboration we want where all involved parties benefit.
ValuableContent: Creates public conversations that deeply inform future visitors about how organizations relate with those they touch.
ViralSpiral: The influenced become influencers the next time they are frustrated with an organization.

DoneDone

  • DomainPages should include the InfluenceUs link in the skin for that page
  • The wizard is invoked by clicking a button "InfluenceUs" in the skin
  • Final submission creates an edit to the page that when consummated looks just like any other edit (but is really transcluded from a subpage of the person's User_talk page for example User_talk:AwfulAbigail/PageSheHates).
  • Includes a nice edit summary of what it just did
  • The InfluenceUs wizard feels great to use. (Perhaps uses Ajaxy techniques so that no page reloads have to occur)
  • Every time a constructive edit is made to that page, both the organization and the user are notified via email (this of course includes the initiating edit). This is done by hand by looking at the InfluenceUsLog where these contributions are logged.
  • Vinh has made the InfluenceUs design look great.

Steps to get to DoneDone

  • Change the format of the InfluenceUs messages to User:Comment instead of Comment:User.
  • Clean up the InfluenceUs Task Page.
  • page with the influenceus widget needs to be automatically reloaded when a transcluded page has been edited already done
  • make it write to a page with newline characters to make it humanly readable
  • run the influenceus wizard to understand how it works
  • if the section of a page is not found, return 0, as indicated
  • read the task page and tweak anything that seems wrong
  • Try the extension and see how it works Doesn't work ... jQuery error
  • determine where the javascript testing framework should live aboutus/wiki/test/javascript
  • pull over javascript testing framework from the Topsoil branch
  • see how MySettings.php is different from one that is working locally wasn't this ... see next
  • try back tracking to find out where it should be getting "design" as the skin name, but isn't the browser cached user_id was wrong that was causing the problem
  • the skin is trying to include ".php" (empty first name) ... perhaps the style name isn't being set correctly? figure this out
  • make sure that influence branch is staged properly
  • figure out where I was working on the php testing framework in wiki/extensions/AboutUs/Testing
  • pull over the php testing framework from already have it in aboutus
  • Fork off a new influence us
  • enable the javascript testing framework to be browsed from wiki/test/javascript by a web browser
  • enable InfluenceUs in DefaultSettings.php
  • use auInfluenceUs global (or something like it) to disable it if you want to in MySettings.php
  • bring over and test one php function from influenceus
  • bring over and test one javascript function from influenceus
  • bring the code over after that
  • Refactor the extension to use the format as the extensions in here: wiki/extensions/AboutUs.
  • Remove the functionality: newly created DomainPages include the InfluenceUs wizard.
  • when the person is frustrated, a different message is shown, asking the reason for frustration.
  • Change the flow of the InfluenceUs wizard to include only two paths.One is the user selects delighted and he writes why is he happy about the company, and the second one is the user selects frustrated and writes why is he frustrated and what does he wants them to change.
  • Add the InfuenceUs log page in the LocalSettings file instead of putting it in extension.

Unrelated to influence us

  • commit the ./ require_once fix to LocalSettings.php on live (breaks maintenance scripts)

InfluenceUs Page flow

  1. A user who visits NeedInput.com sees the big "Influence Us Wizard ... blah blah" bit
  2. When they click on it they are presented with a popup describing what influenceus is all about. They have two options on this page to go next and participate and one to close the popup.
  3. Once the user clicks "Next", he is presented with two choices : Delighted and Frustrated.
  4. If the user clicks Delighted,he is presented with "What made you delighted with this company/domain?" with an emoticon
  5. If the user clicks Frustrated,he is presented with "What made you frustrated with this company/domain?" with an appropriate emoticon
  6. After entering the message, the user clicks submit and the comment is saved.

LocalSettings

require_once("extensions/InfluenceUs/InfluenceUs.php");
$enableInfluenceUs = true;  // enable/disable influence
$addInfluenceUsTagInDomain = true; // enable/disable adding influenceus tag by default to newly created pages


Needs Attention



Retrieved from "http://aboutus.com/index.php?title=InfluenceUs_dev_task&oldid=14271919"