Monday, November 08, 2010 at 12:04 AM.
system.verbs.builtins.mainResponder.search.client.inWebsite
on inWebsite (adrObject) {
<<Return true if the object is in the content part of a website, false otherwise.
<<It must not start with a # sign or have a # sign in its address.
<<There must be an #ftpSite table above it, somewhere.
on findFtpSite (adrTable) {
<<Find the #ftpSite for this object.
local (nomad = adrObject);
if typeOf (nomad^) != tableType {
nomad = parentOf (nomad^)};
on checkTable (adrTable) {
<<Check one table for the existence an #ftpSite table.
if defined (adrTable^.["#ftpSite"]) {
return (true)};
if defined (adrTable^.["#prefs"].ftpSite) {
return (true)};
if defined (adrTable^.["#prefs"].["#ftpSite"]) {
return (true)};
return (false)};
loop {
if nomad == @root or nomad == nil {
return (false)};
if html.traversalSkip (nomad) {
return (false)};
if checkTable (nomad) {
return (true)};
nomad = parentOf (nomad^)}};
if findFtpSite (adrObject) {
return (true)};
return (false)}
This listing is for code that runs in the OPML Editor environment. I created these listings because I wanted the search engines to index it, so that when I want to look up something in my codebase I don't have to use the much slower search functionality in my object database. Dave Winer.