Posts Tagged greasemonkey
Greasemonkey script for Lotus Connections dynamic drop-down menus
Posted by brett in greasemonkey, projects on October 5, 2009
Install this script from userscripts.org: IBM Lotus Connections Drop-down menus
IBM’s Lotus Connections software is an enterprise social software application that consolidates a lot of collaboration and information sharing within the enterprise to a single location. We use Lotus Connections quite extensively within IBM and it has been an amazing improvement over many of our previous tools and methods for project, team, and professional collaboration.
The recently announced Lotus Connections 2.5 features communities, blogs, wikis, file sharing, social bookmarking, activities, profiles, and a customizable dashboard. I can tell you that I use every single one of those features on a daily basis and its been a great step forward in so many ways. Knowledge is being better shared across our enterprise and it can be found more easily. Projects and teams can stay organized and on track. To-dos can be assigned and tracked.
While my overall satisfaction with the product is quite high, one small design issue bugs me. Thankfully, Lotus Connections is a web application that I can use the Greasemonkey addon for Firefox to alter aspects of the design. I often find myself having to switch between sections in Lotus Connections–On a wiki page and need browse to a wiki section within a community. The default design has a top bar menu with only top-most navigation items:

Getting around Lotus Connections sometimes requires clicking through multiple unnecessary pages. I decided to add drop-down menus to each menu item to reduce the number of clicks to get around. I eventually discovered the ATOM feeds for each Lotus Connections area and determined I could add links for specific areas such as a list of all your communities or a list of all files that have been shared with you (had to blur out the actual files in the screenshot):

Overall, this script helps improve an already awesome application a bit more. I’m hoping to convince the Lotus Connections teams to implement some kind of navigation that either matches this experience or something similar for being able to more quickly navigate to specific items in your network.
Using this script
You can use this script on http://ibm.com/communities, which is an IBM implementation of Lotus Connections 2.5. You can also customize the locations that this Greasemonkey script runs to include your own installations. For example, if you want it to run against http://mybusiness.com/connections/* you would include that location:

Improving navigation for IBM’s My developerWorks with Greasemonkey
Posted by brett in greasemonkey, webdev on October 4, 2009
I recently released a version of my Lotus Connections greasemonkey script for adding dynamic drop-down menus for use with IBM’s myDeveloperWorks. You can download this script from userscripts.org: IBM My developerWorks drop-down menus
Improvements to myDeveloperWorks
MyDeveloperWorks is awesome but sometimes navigating between sections gets annoying if you are someone that constantly uses this site. Jumping between Blogs to your Groups could involve multiple page loads and clicks by default. This script can help eliminate that unnecessary browsing by adding drop-down menus to the site’s existing menu.

Default menu on myDeveloperWorks
When you install this script, it will add some standard drop-down menus and it will also load your specific items such as your groups, bookmarks, and activities.

Showing dynamic and customized drop-down menus that are added by this script
Script details
Interested in the code? This Greasemonkey script uses jQuery 1.2.3 to perform most of its work. jQuery makes creating Greasemonkey scripts amazingly easy to work with the Document Object Model (DOM) as well as adding fancy effects and performing Ajax calls.
jQuery is mostly focused on the user of selectors to uniquely identify content in a similar manner to CSS selectors. This selector behavior is awesome for greasemonkey scripts because you cannot always easily parse a site’s HTML with standard Javascript and the code becomes extremely complex. jQuery allows you spend your time on improving the user experience rather than deal with the plumbing.