Reg Exp
Web Design
Notes Client
Prevent Snooping
If you know something about URL syntax, there's a few ways someone can "peer" into the design of your database. One of these is through the "default" navigator. Every database has one and Lotus has not provided a way to prevent this from being opened. If you have access to a database, then you can see the list of public views. To do this, use the following URL syntax:


This will show you the database icon, database title, and list of public views that are not hidden. For example, you can see the list in this database by clicking here.

You will notice that the default navigator in this database says "no views found". This is because all the views are either hidden from web browsers altogether (in the design properties, as seen here) or listed with parentheses around the name so they are hidden from the list. So you can't see the names of our views in this database.

But how do you get around?

In the R5 client interface, we use an outline. The outline can open any view we want, so the outlines are linked to the hidden views. So, in the client, we use an outline to list all of our views and the user can navigate through the views all they want (plus, the user doesn't have to do the CTRL+SHIFT+CLICK to see hidden views -- all views are displayed in the outline). But from the browser there's no way to see the names of the views.

Another Possibility

Another thing that can be done is creating two sets of views - one for Notes clients and one for web browsers. The ones for Notes clients are only visible to Notes clients and the ones for web browsers are hidden. Each pair of views (one Notes client, one web browser) has the same alias, so code doesn't need to change based on the environment. For example, you can have a view named "All Documents (Notes) | AllDocs" that is hidden from web browsers and another one named "All Documents (Web) | AllDocs" that is hidden from Notes clients. Domino will use the correct one based on your current environment.

Keep in mind that the second method doubles the number of views in your database, and views (along with their indexes) make up the largest portion, by far, of the size of a database. So if a database is already pretty large, we wouldn't recommend doubling the number of views for the web version.