Monday, November 08, 2010 at 12:06 AM.

system.verbs.builtins.webserver.standardMacros.domainFilter

on domainFilter (clientAddress, matchString, returnString) {
	clientAddress = string.lower (clientAddress);
	matchString = string.lower (matchString);
	if matchString beginsWith "!" {
		matchstring = string.popleading (matchstring, "!");
		if not (clientAddress endsWith matchString) {
			return (returnString)}}
	else {
		if clientAddress endsWith matchString {
			return (returnString)}};
	return ("")}; << return empty string if condition is not met.

<<bundle
	<<dialog.notify (domainFilter ("www.info.apple.com", "apple.com", "You work at Apple"))
	<<dialog.notify (domainFilter ("www.info.apple.com", "APPLE.COM", "You work at Apple"))
	<<dialog.notify (domainFilter ("www.info.apple.com", ".com", "You work are coming from a commercial domain."))
	<<dialog.notify (domainFilter ("www.info.apple.com", "ibm.com", "You work at IBM"))
	<<dialog.notify (domainFilter ("www.info.apple.com", "bogus.org", "You work at Bogus Org"))
	<<dialog.notify (domainFilter ("www.info.apple.com", "www.info.", "You work at Apple"))
	<<dialog.notify (domainFilter ("www.info.apple.com", "apple", "You work at Apple"))



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.