Hi All,
Let me share a story of a short xPages engagement. One of our customer decided to change their intranet portal, they developed a new portal based on Tomcat. the old portal contained a Notes application also. this was developed by using the classical HTML + Notes method. The application wasn't applied the corporate portal look and feel, and it was shortcomings in functionalities. The management was thinking about to migrate the database to another platform. The IT Operations Manager was asked my help to show this application can be facelifted and integrated into the new portal by using Lotus technologies, so they can keep this app on Lotus Domino platform.
The customer request were
- cover all functions of the old application
- presenting views and document
- represent document relations (doclinks)
- quick search and full-text search
- intagration into the new intranet portal
- look and feel
- portlet compatibility
- don't touch the old database
Plus fix these issues:
- Views should keep position and search results after opening documents
- attachment download from views
I started the development with xPages of course. Created two pages, one for the Views and another for the document. On the View page I developed Quick Search, Full-text search, added some code to keep search results and view positions. Then I created a new column in the View Controls (not in the original view) which presented links to attachments in the documents. ( Attachment links were calculated by using the row variable - richtext item - embedded objects ). At the first test I saw a problem. If there were multiple attachments, view rows were getting higher. So, I changed the links to one icon which presented a dojo TooltipDialog with the list off attachments. This works better and looks great!
On the documents there were doclinks, which needed to be changed. As i was developed the UI in a different database I wasn't able to connect the document to it's xPages. Doclink are converted to URL links and they are pointing directly to the document in the other database. So, I created a workaround. I extracted the document uniqueID from the doclink object with JavaScript (NotesDoc -> RichText -> DocLink -> UniqueID) and created a button with an onClick event to open the specified document with the xPage. As there were multiple doclink, I used a repeat control.
So, this was only 3 days all together with development, testing, applying the corporate css and portlet integration.
The customer's management is now happy, the see the new design, and the application is still on Domino!