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


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

<<bundle <<test code
	<<dialog.notify (ipFilter ("", "198", "Hello1"))
	<<dialog.notify (ipFilter ("", "198.148", "Hello2"))
	<<dialog.notify (ipFilter ("", "198.148.149", "Hello3"))
	<<dialog.notify (ipFilter ("", "", "Hello4"))
	<<dialog.notify (ipFilter ("", "", "Hello5"))
	<<dialog.notify (ipFilter ("", "!", "Hello6"))
	<<dialog.notify (ipFilter ("", "!", "Hello7"))

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.