Sign On Manager - List of Problems

Hey Sriram,

I was testing grease monkey over a wide set of web sites, and here are some of the typical problems I found .

1. Element Overlap : There are sites (eg. digg.com) that has its advertisements at a z-index of 20000. That was burying the default sign on manager dialog box way below the surface. This was one bug that I fixed

2. Javascript Login Form : Sites like Ugenie create a Login form only when the login button is created. As they manipulate the DOM, I have no clue whether or not is the form password enabled. There are two ways to solve this
(a) watch all click events, and scan the form for password fields
(b) add this to the greasemonkey menu, and let the user start the recording.
In any case, looks like i must allows a [start record] and a [stop record] button. Will doing this just make SignOn Manager, a action playback tool ? Weird....gotta think about this.

Also for an update, I have made the script smaller, added dragging functionality, and changed the UI to show just 2 simple buttons.
One feature request I got was some way to have a configuration box where users can enable/disable forms, and look at their passwords.
Another news is that I discovered SSOCircle. Since OpenID will not support attribute exchange till version 2.0, is it worthwhile to make this SAML compliant ?
Gotta see....right now, busy with the configuration screen...

Sign On Manager tested

Hi Sriram,

Here are quick updates on the Sign On Manager.

- The persistance manager has changed and is now simpler
- The experiment of programming with grease monkey seems to work well. I used the simulator with Firebug debugging capabilities to the maximum
- I have seen the script working with userscripts.org, digg, slashdot and yahoo mail


Things that I would be working on

1. Usability and better Console
- Make the console dragable and minimizable
- Should be able to cancel auto submit for certain pages
2. Change the FormFiller code to neglect fields that are not found

GreaseMonkey Sucks !!!

Hi Sriram,

I know I don't really mean it, and I love GreaseMonkey, but at times, it does gets frustrating to write for Grease Monkey. Not because of its Wrapped Environment, but more because of the error reporting and all that. So I thought of doing a little experiment on developing GreaseMonkey Scripts. Some premises are

  • I hate the obscure errors that say that the error is in greasemonkey.js !!!
  • There is lot of functionality that I use across scripts
  • I would prefer to see logging in FireBug, rather than the JavaScript Console
  • Firebug helps me better debugging, and i can do quick experiments with a page using FireBug
  • Most times, I prefer to have a local version of the page to which the script will be applied, I am not on the Internet at all times
  • GM_registerMenuCommand adds all the menus the TOOLS > GM > UserScript menu, and I hate navigating to that location everytime during testing, just to activate the command
  • GM_setValue, puts that value in about:config, and I am not happy about reloading that about:config, and search for greasemonkey everytime some value is changed - maybe a list of values can be used
So here is the experiment that I am working on. You can take a look at the script developed using this approach SignOnManager Post

STEP 1 .
I have all the common utilities in the UTIL directory, and my build.xml just combines all the files to a single GM script. I am currently working on deploying the scripts to GM using ANT, but even though I am modifying config.xml, the changes are not getting picked up.

STEP 2.
Its always easier to start if the page is a part of the actual page [After all, GM was invented for teh sole purpose of adding scripts to pages] . So, I wrote a GM simulator that overrides the GM functions and has page specific implementations. Check out the HTML file in the SIGN on Manager folder. The GM Simulator saves all the values as cookies, and also adds the menu to the panel under it.

Here is the GreaseMonkey Simulator file :http://www.box.net/shared/vqfqi8cnbg
Lets see how this approach helps me out !!


-Parashu

My Experimental Workspace




Life is a game, but so also is cricket !!!

Hi Sriram,

I don't give a damn about the world cup cricket, but many of my friends do. As the world cup season caught up, people were talking about cricket all the time, and I felt left out. Well, to catch their attention, here my script that shows the cricket score as my status message on meebo IM. Infact, it can read and dynamic RSS feed, and put data in as the status message.

Script Location : http://userscripts.org/scripts/show/6750

Note on how to change the script to display data from any other RSS

Check line number 61 [url : ...blah ], and change the url to point to the url of the RSS
Then change the line number 88 [statusText = x.childNodes], and make the child nodes point to location of the information you need to display.
Ok agreed, that I could have made this simpler, but I am not really getting time to change this. Of course, in grease monkey, it is allowed to be quick and dirty..... !! :)

- Parashu

List of Widgets on this blog

Hi Parash,

Distribution is the key in Web 2.0. Mashing of of content can create pretty useful site. This tech blog is a very ripe space to try all the different widgets that Sriram has come across. Here is a (dynamic) list of widgets and javascriptlets that are on this blog

  1. On the left, there is the Meebo Me Widget. You can talk to Sriram if he is online, directly from this page
  2. Then there is all his workspace shared using the Box.net MyBox Widget.
  3. All the actions of the users are recorded using the http://www.robotreplay.com/ scriptlet
  4. Of course, there is the Google Analytics embedded in the blog
  5. Then there is the Digg, that allows people to DIGG this page.
Looking forward to add more widgets to the blog !!!

Twitter Meebo Integration

Hi Sriram,

Twitter seems to have completely captivated me. I am not sure how great is the idea of publishing my personal life, but I like posting Twitters, and see my name appearing on the home page. Even better for me, I am in the opposite timezone, and dont have much competition either !!
Well, all that I wanted was some really quick way to keep posting twitters. Also, I thought that tit would be a great idea to have twitters as my status message.
I use meebo for IM, and here it is, the grease monkey script for Twitter. Instructions to use this are also on the user script page, so check it out. Just to give you an idea of how it looks, here is a screenshot of my meebo page.


P.S. That background is that meeboMap image. I used this script to have that as my background. It is supposed to show the number of Meebo users around the world !!!


- Parash

Sign On Manager

Hi Sriram,

Working actively on Identity and Access Management, and talking about things like SAML, WS-FED and Single Sign On and things, I still don't understand how I was putting up with the pain of entering passwords in every site that I visit regularly. I think it is a high time i get this single sign on thing for sites that I visit. Also, remembering those zillions user names, passwords, mail ids, is really a pain.
So here is a grease monkey script (which I am planning to convert to an extension very soon). In addition to form-filling your credentials, it also submits the form (either using a javascript link or submit button). As a second step, I plan to store these credentials not at the client, but at an OpenID server (may be as attributes), so that a single password, and you can use this extension safely on any computer. However, Gary Krall from pip.verisignlabs.com tells me that OpenID v2 is not yet available.
Also, I was talking to Roger Zimmerman about integrating this functionality with Sxipper firefox extension, but he has put me on hold owing to IP issues !!! :(
Anyway, i am continuting active development on this project, and hope to complete it very soon !!!