You can subscribe to this list here.
| 2004 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(447) |
Nov
(163) |
Dec
(57) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2005 |
Jan
(172) |
Feb
|
Mar
(123) |
Apr
(64) |
May
(1) |
Jun
(278) |
Jul
(89) |
Aug
(97) |
Sep
(62) |
Oct
(53) |
Nov
(119) |
Dec
(60) |
| 2006 |
Jan
(76) |
Feb
(1094) |
Mar
(363) |
Apr
(163) |
May
(57) |
Jun
(43) |
Jul
(39) |
Aug
(15) |
Sep
(33) |
Oct
(62) |
Nov
(8) |
Dec
|
| 2007 |
Jan
(9) |
Feb
(34) |
Mar
(2) |
Apr
(14) |
May
(8) |
Jun
(40) |
Jul
(21) |
Aug
(1) |
Sep
(20) |
Oct
(15) |
Nov
(26) |
Dec
|
| 2008 |
Jan
(1) |
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(3) |
Oct
|
Nov
|
Dec
(1) |
| 2009 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(32) |
Jun
|
Jul
|
Aug
(3) |
Sep
(3) |
Oct
|
Nov
|
Dec
|
| 2010 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2011 |
Jan
|
Feb
|
Mar
(2) |
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(7) |
Dec
|
| 2012 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: creedon <icr...@us...> - 2005-08-18 17:08:47
|
Update of /cvsroot/frontierkernel/odbs/frontierRoot/suites/DuckTape In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4575 Added Files: Tag: commercial_suite_project-branch init newAppsTableItem newDesktopScriptInstaller suiteName menu parseAete newAppsTableItemInstaller appIdStyle getAete readMe Log Message: commercial Suite Project initial import --- NEW FILE: newAppsTableItemInstaller --- (This appears to be a binary file; contents omitted.) --- NEW FILE: newAppsTableItem --- (This appears to be a binary file; contents omitted.) --- NEW FILE: menu --- FrontierVcsFile:1:mbar:suites.DuckTape.menu AAEFAQAAAtAAAQAAAAAAAAAAAAAAKwADA/0E/QAAAAAAAAZHZW5ldmEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgArAAMBpwIpAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAC+AAABKgAAAgAADwZHZW5ldmEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAvxuVSb8oyasAAAI+AAABpwG/Am8DQExBTkT///////8AAAAAAABtYWMgAAAAAAAAAAAAAAAARHVja1RhcGUNCU5ldyBhcHBzIFRhYmxlIEl0ZW0uLi4NCS0NCT0gc3VpdGVzLkR1Y2tUYXBlLm1lbnVDb21tYW5kcy5sYXVuY2hBcHBsaWNhdGlvbiAoKQ0JPSBzdWl0ZXMuRHVja1RhcGUubWVudUNvbW1hbmRzLm5ld0Rlc2t0b3BTY3JpcHRJbnN0YWxsZXIgKCkNCT0gc3VpdGVzLkR1Y2tUYXBlLm1lbnVDb21tYW5kcy5pbXBvcnRBZXRlICgpDQktDQlPcGVuIGFwcHMgVGFibGUNCVNldCBDdXJyZW50IGFwcHMgVGFibGUNCS0NCVJlYWQgTWUNCS0NCUVkaXQgTWVudQ0JRWRpdCBUYWJsZQ0JRWRpdCB1c2VyLkR1Y2tUYXBlDYAAAAAAAAAAAAAACgAAAAAAAAVTYMgAAAAAAAAAAAAAAAoAAAAAAAAFU2DMAAAAAAAKAAAAAAAABVNg0AAAAAAACgAAAAAAAAVTYNwAAAAAAAAAAAAAAAoAAAAAAAAFU2DoAAAAAAAKAAAAAAAABVNhPAAAAAAAAAAAAAAACgAAAAAAAAVTYZgAAAAAAAAAAAAAAAoAAAAAAAAFU2GkAAAAAAAKAAAAAAAABVNiSAAAAAAACgAAAAAAAAVTYlQAAgAAAAYAAAAdAAACAAAPBkdlbmV2YQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAC/G5havxu49gAAAAcAAAGnAb8CbwNATEFORP///////wAAAAAAAG1hYyAAAAAAAAAAAAAAAABEdWNrVGFwZS5uZXdBcHBzVGFibGVJdGVtICgpDYAAAAAAAAACAAAABgAAAC8AAAIAAA8GR2VuZXZhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAAAAAL8b1Ci/HEzcAAAABwEAAacBvwJvA0BMQU5E////////AAAAAAAAbWFjIAAAAAAAAAAAAAAAAGFwcC5zdGFydCAoQFt0ZW1wLkR1Y2tUYXBlLmFwcHNUYWJsZUl0ZW1OYW1lXSkNgAAAAAAAAAIAAAA8AAABjQAHAgAADwZHZW5ldmEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAvxv5Wb8cTOYAAAAUAQABpwG/Am8DQExBTkT///////8AAAAAAABtYWMgAAAAAAAAAAAAAAAAQ2hhbmdlcw0JOC83LzA1OyA1OjU0OjI0IFBNIGJ5IFRBQw0JCW1pbm9yIHR3ZWFrcyBmb3Igc2NyaXB0IGZvcm1hdA0NbG9jYWwgKGZpbGVOYW1lID0gdGVtcC5EdWNrVGFwZS5hcHBzVGFibGVJdGVtTmFtZSArICIuZnRkcyIsIHBhdGggPSBmaWxlTmFtZSkNDWlmIGZpbGUucHV0RmlsZURpYWxvZyAoIlNhdmUgbmV3IERlc2t0b3AgU2NyaXB0IEluc3RhbGxlciB3aGVyZT8iLCBAcGF0aCkNCWxvY2FsIChpbmZvVGFibGUgPSBAc3lzdGVtLnZlcmJzLmFwcHMuW3RlbXAuRHVja1RhcGUuYXBwc1RhYmxlSXRlbU5hbWVdLmFwcEluZm8pDQkNCUR1Y2tUYXBlLm5ld0Rlc2t0b3BTY3JpcHRJbnN0YWxsZXIgKHRlbXAuRHVja1RhcGUuYXBwc1RhYmxlSXRlbU5hbWUsIGluZm9UYWJsZV4uaWQsIHBhdGgpDYQAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAIAAAAAAAIAAAAAAAIAAAAAAAIAAAAAAAIAAAAAAAIAAAAAAAAACAAAAQgAAAfMAAwIAAA8GR2VuZXZhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAAAAAL8cJZW/HEzqAAAAGgEAAacBvwJvA0BMQU5E////////AAAAAAAAbWFjIAAAAAAAAAAAAAAAAGlmIGRpYWxvZy50d29XYXkgKCJSZXBsYWNlIEFwcGxlRXZlbnQgVGVybWlub2xvZ3kgRXh0ZW5zaW9uIGluZm9ybWF0aW9uIGZvciAiICsgdGVtcC5EdWNrVGFwZS5hcHBzVGFibGVJdGVtTmFtZSArICI/IiwgIk5vIiwgIlllcyIpDQlyZXR1cm4gKGZhbHNlKQ0NbG9jYWwgKGFkckFwcHNUYWJsZUl0ZW0gPSBAc3lzdGVtLnZlcmJzLmFwcHMuW3RlbXAuRHVja1RhcGUuYXBwc1RhYmxlSXRlbU5hbWVdKQ1sb2NhbCAocGF0aCA9IGFkckFwcHNUYWJsZUl0ZW1eLmFwcEluZm8ucGF0aCkNDWlmIG5vdCAoZmlsZS5leGlzdHMgKHBhdGgpKQ0JaWYgbm90IChmaWxlLmdldEZpbGVEaWFsb2cgKCJTZWxlY3QgdGhlIGFwcGxpY2F0aW9uIGZyb20gd2hpY2ggdG8gaW1wb3J0IHRoZSBhZXRlIGluZm9ybWF0aW9uLi4uIiwgIEBwYXRoLCBEdWNrVGFwZS5kYXRhLmFwcFR5cGVzKSkNCQlyZXR1cm4gKGZhbHNlKQ0NRHVja1RhcGUucGFyc2VBZXRlIChwYXRoLCBhZHJBcHBzVGFibGVJdGVtKQ2AAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAAAAAgAAAAYAAAAaAAACAAAPBkdlbmV2YQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAZUAAC/G6JZvxuicAAAAAYAAAGnAb8CbwNATEFORP///////wAAAAAAAG1hYyAAAAAAAAAAAAAAAABlZGl0IChAc3lzdGVtLnZlcmJzLmFwcHMpDYAAAAAAAAACAAAAeAAAAbIAAAIAAA8GR2VuZXZhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAAAAAL8cBrq/JATRAAAACwAAAacBvwJvA0BMQU5E////////AAAAAAAAbWFjIAAAAAAAAAAAAAAAAENoYW5nZXMNCTgvMTMvMDU7IDg6MTI6MDcgUE0gYnkgVEFDDQkJY2hhbmdlZCBjb21wYXJpc29uIG9mIGFkciBwYXJlbnQgZnJvbSBzdHJpbmcgYmFzZWQgdG8gYWRkcmVzcyBiYXNlZA0JOC83LzA1OyA2OjQzOjI5IFBNIGJ5IFRBQw0JCWNyZWF0ZWQNDWxvY2FsIChhZHIgPSB0YWJsZS5nZXRDdXJzb3JBZGRyZXNzICgpKQ0NaWYgcGFyZW50T2YgKGFkcl4pID09IEBzeXN0ZW0udmVyYnMuYXBwcw0JbG9jYWwgKHMgPSAiIikNCQ0JaWYgbm90IChkZWZpbmVkICh0ZW1wLkR1Y2tUYXBlKSkNCQluZXcgKHRhYmxlVHlwZSwgQHRlbXAuRHVja1RhcGUpDQkJDQlzID0gYWRyIC0gInN5c3RlbS52ZXJicy5hcHBzLiINCQ0JcyA9IHN0cmluZy5udGhGaWVsZCAocywgJy4nLCAxKQ0JDQlpZiBzICE9ICIiDQkJdGVtcC5EdWNrVGFwZS5hcHBzVGFibGVJdGVtTmFtZSA9IHMNhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAAAIAAAAGAAAAGAAAAgAADwZHZW5ldmEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAvxuVSb8blUkAAAAGAAABpwG/Am8DQExBTkT///////8AAAAAAABtYWMgAAAAAAAAAAAAAAAAZWRpdCAoQER1Y2tUYXBlLnJlYWRNZSkNgAAAAAAAAAIAAAAGAAAAFgAAAgAADwZHZW5ldmEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAvxuVSb8blUkAAAAGAAABpwG/Am8DQExBTkT///////8AAAAAAABtYWMgAAAAAAAAAAAAAAAAZWRpdCAoQER1Y2tUYXBlLm1lbnUpDYAAAAAAAAACAAAABgAAABEAAAIAAA8GR2VuZXZhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAAAAAL8blUm/G5VJAAAABgAAAacBvwJvA0BMQU5E////////AAAAAAAAbWFjIAAAAAAAAAAAAAAAAGVkaXQgKEBEdWNrVGFwZSkNgAAAAAAAAAIAAAAGAAAAFgAAAgAADwZHZW5ldmEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAGVAAAvyjJs78oycEAAAACAAABpwG/Am8DQExBTkT///////8AAAAAAABtYWMgAAAAAAAAAAAAAAAAZWRpdCAoQHVzZXIuRHVja1RhcGUpDYAAAAAAAA== --- NEW FILE: suiteName --- FrontierVcsFile:1:TEXT:suites.DuckTape.suiteName DuckTape --- NEW FILE: init --- (This appears to be a binary file; contents omitted.) --- NEW FILE: appIdStyle --- (This appears to be a binary file; contents omitted.) --- NEW FILE: getAete --- (This appears to be a binary file; contents omitted.) --- NEW FILE: parseAete --- (This appears to be a binary file; contents omitted.) --- NEW FILE: readMe --- FrontierVcsFile:1:wptx:suites.DuckTape.readMe This is the DuckTape suite. Created by Thomas A. Creedon on Sun, Aug 7, 2005 at 10:39:05 AM. Based on the DuckTape Tool v0.5 by Sean Elfstrom < sel...@im... >. [Why I Wrote It] [What It Does] [Things To Watch Out For] Menu Commands New apps Table Item... Create a new item in the apps table for an application you select. Launch Application for ... Launch an application associated with the current apps table. This menu item will be inactive until a new apps table item has been created or the Set Current apps Table menu item is selected from the DuckTape menu. New Desktop Script Installer for ... Create a new Desktop Script installer for the current apps table. This menu item will be inactive until a new apps table item has been created or the Set Current apps Table menu item is selected from the DuckTape menu. Replace AppleEvent Terminology Extension Information for ... Replace the AETE information for the current apps table. This menu item will be inactive until a new apps table item has been created or the Set Current apps Table menu item is selected from the DuckTape menu. Open apps Table Open the table at system.verbs.apps Set Current apps Table Allows you to set which apps table some of the menu items in the DuckTape menu will apply. Select one of the items in the system.verbs.apps table and then use this command. 8/8/05; 12:28:58 PM by TAC - this could be expressed more clearly, I think. --- NEW FILE: newDesktopScriptInstaller --- (This appears to be a binary file; contents omitted.) |
|
From: creedon <icr...@us...> - 2005-08-18 17:08:03
|
Update of /cvsroot/frontierkernel/odbs/frontierRoot/suites/DuckTape/menuCommands In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4689 Added Files: Tag: commercial_suite_project-branch importAete launchApplication newDesktopScriptInstaller Log Message: commercial Suite Project initial import --- NEW FILE: launchApplication --- (This appears to be a binary file; contents omitted.) --- NEW FILE: importAete --- (This appears to be a binary file; contents omitted.) --- NEW FILE: newDesktopScriptInstaller --- (This appears to be a binary file; contents omitted.) |
|
From: Karsten W. <kar...@us...> - 2005-08-15 20:50:01
|
Update of /cvsroot/frontierkernel/Frontier/Common/source In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4149 Modified Files: stringverbs.c Log Message: Closed 4 memory leaks in stringfunctionvalue(). The verbs: string.ansitoutf8(), string.ansitoutf16(), string.utf16toansi(), string.utf8toansi() leaked their arguments by not releasing handles returned from getexempttextvalue(). Index: stringverbs.c =================================================================== RCS file: /cvsroot/frontierkernel/Frontier/Common/source/stringverbs.c,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** stringverbs.c 14 Jan 2005 00:10:19 -0000 1.10 --- stringverbs.c 15 Aug 2005 20:49:53 -0000 1.11 *************** *** 2193,2196 **** --- 2193,2198 ---- utf16toansi (h, hresult); + disposehandle(h); // kw 2005-07-23 --- memleak + return (setheapvalue (hresult, stringvaluetype, v)); } *************** *** 2209,2212 **** --- 2211,2216 ---- utf8toansi (h, hresult); + disposehandle(h); // kw 2005-07-23 --- memleak + return (setheapvalue (hresult, stringvaluetype, v)); } *************** *** 2225,2228 **** --- 2229,2234 ---- ansitoutf8 (h, hresult); + disposehandle(h); // kw 2005-07-23 --- memleak + return (setheapvalue (hresult, stringvaluetype, v)); } *************** *** 2241,2244 **** --- 2247,2252 ---- ansitoutf16 (h, hresult); + disposehandle(h); // kw 2005-07-23 --- memleak + return (setheapvalue (hresult, stringvaluetype, v)); } |
|
From: creedon <icr...@us...> - 2005-08-13 20:39:22
|
Update of /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/security In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21330 Modified Files: blockHttpByIP Log Message: support for ip ranges Index: blockHttpByIP =================================================================== RCS file: /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/security/blockHttpByIP,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** blockHttpByIP 26 Mar 2005 21:46:13 -0000 1.1.1.1 --- blockHttpByIP 13 Aug 2005 20:39:14 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:scpt:mainResponder.security.blockHttpByIP ! ÇChange Notes ÇThursday, November 04, 1999 at 11:34:58 PM by AR ÇIf config.mainResponder.prefs.flAllowByIpOnly is true, block all requests except those originating from IP addresses listed in config.mainResponder.prefs.allowedIpAddresses. ÇThis script is intended to be called from config.mainResponder.callbacks.controlAccess.blockByIP. Ç04/16/00; 1:25:29 AM by JES Çlocalized error message Ç05/01/00; 6:42:47 PM by JES ÇChanged getString calls to use a replacement table address instead of a lists local (pt); bundle { // 4/16/00; 4:50:45 PM by JES: temporary page table for localization support Çfor localization, we have to have a page table with at least the language, so we make a temporary one new (tableType, @pt); if defined (config.mainResponder.globals.language) { pt.language = config.mainResponder.globals.language} else { if defined (user.prefs.language) { pt.language = user.prefs.language} else { pt.language = "English"}}}; if defined (config.mainResponder.prefs.flAllowByIpOnly) { if config.mainResponder.prefs.flAllowByIpOnly { local (s, ix = 1); loop { s = string.nthField (config.mainResponder.prefs.allowedIpAddresses, ",", ix++); if string.length (s) == 0 { break}; if client == string.trimWhiteSpace (s) { return (true)}}; code = 403; //if we get here, the client is calling from a blocked IP address local (replacementTable); new (tableType, @replacementTable); // 05/01/00 JES: use replacement table instead of a list replacementTable.client = client; responseBody = webserver.util.buildErrorPage ("403 FORBIDDEN", mainResponder.getString ("security.blockHttpByIp", @replacementTable, pta: @pt)); // 4/16/00 JES: localized scriptError ("!return")}}; //prevent mainResponder.respond from overwriting our response return (true) \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:scpt:mainResponder.security.blockHttpByIP ! ÇChanges Ç8/3/05; 1:40:32 PM by TAC Çsupport for ip ranges, could do more robust checking but should do the trick, inspired by a comment from Samuel Reynolds in a doc server discussion group Çranges are in the form of 127.0.0.1-127.0.0.255 Ç05/01/00; 6:42:47 PM by JES ÇChanged getString calls to use a replacement table address instead of a lists Ç04/16/00; 1:25:29 AM by JES Çlocalized error message Ç11/04/99 at 11:34:58 PM by AR ÇIf config.mainResponder.prefs.flAllowByIpOnly is true, block all requests except those originating from IP addresses listed in config.mainResponder.prefs.allowedIpAddresses. ÇThis script is intended to be called from config.mainResponder.callbacks.controlAccess.blockByIP. local (pt); bundle { // 4/16/00; 4:50:45 PM by JES: temporary page table for localization support Çfor localization, we have to have a page table with at least the language, so we make a temporary one new (tableType, @pt); if defined (config.mainResponder.globals.language) { pt.language = config.mainResponder.globals.language} else { if defined (user.prefs.language) { pt.language = user.prefs.language} else { pt.language = "English"}}}; if defined (config.mainResponder.prefs.flAllowByIpOnly) { if config.mainResponder.prefs.flAllowByIpOnly { local (s, ix = 1); loop { s = string.nthField (config.mainResponder.prefs.allowedIpAddresses, ",", ix++); if string.length (s) == 0 { break}; s = string.trimWhiteSpace (s); if s contains "-" { // range checking. inclusive if client >= string.nthField (s, "-", 1) and client <= string.nthField (s, "-", 2) { return (true)}} else { if client == s { return (true)}}}; code = 403; //if we get here, the client is calling from a blocked IP address local (replacementTable); new (tableType, @replacementTable); // 05/01/00 JES: use replacement table instead of a list replacementTable.client = client; responseBody = webserver.util.buildErrorPage ("403 FORBIDDEN", mainResponder.getString ("security.blockHttpByIp", @replacementTable, pta: @pt)); // 4/16/00 JES: localized scriptError ("!return")}}; //prevent mainResponder.respond from overwriting our response return (true) \ No newline at end of file |
|
From: creedon <icr...@us...> - 2005-08-13 20:37:59
|
Update of /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/search/client In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21035 Modified Files: buildSearchTable Log Message: added support for relative file paths Index: buildSearchTable =================================================================== RCS file: /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/search/client/buildSearchTable,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** buildSearchTable 26 Mar 2005 21:46:10 -0000 1.1.1.1 --- buildSearchTable 13 Aug 2005 20:37:52 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:scpt:mainResponder.search.client.buildSearchTable ! on buildSearchTable (adrObject, adrSearchTable, adrSitesTable=nil) { ÇBuild a table containing the search preferences for this object. ÇParams: ÇadrObject is the address of the page. ÇadrSearchTable is the address of the search table to build. ÇadrSitesTable (optional) points to a table in config.mainResponder.search.sites to use. ÇThe search table contains: ÇsupportsIndexing: does this database support indexing? This value is the value from user.databases.[dbName].supportsIndexing. ÇflIndexOnCheckIn: does this website want indexing turned on? ÇaddToIndex: XML-RPC procedure name for adding to an index. This comes from config.mainResponder.search, the sites table, or the #search table. ÇrestartIndex: XML-RPC procedure name for restarting a site index. Çdomain: the domain name of the search engine server. Çport: the port number of the search engine server. ÇsiteName: the name of the site this page is in. ÇsiteUrl: the URL of the home page of this site. Çurl: the url of this page. ÇThe search table may contain additional items or fewer items, it's not guaranteed to contain the above and the above only. local (adrUserTable, adrSearchDirectiveTable); local (dbPath); on copyPrefs (adrSource) { //copy preferences from a table into the search table ÇCopy everything but subtables. if defined (adrSource^) { local (i); for i = 1 to sizeOf (adrSource^) { local (adrItem = @adrSource^ [i]); if typeOf (adrItem^) != tableType { table.copy (adrItem, adrSearchTable)}}; return (true)}}; on getSiteRoot (adrObject) { //get the root address of this website local (nomad = adrObject); if typeOf (nomad^) != tableType { nomad = parentOf (nomad^)}; loop { if defined (nomad^.["#ftpSite"]) { return (nomad)}; if defined (nomad^.["#prefs"].ftpSite) { return (nomad)}; if defined (nomad^.["#prefs"].["#ftpSite"]) { return (nomad)}; nomad = parentOf (nomad^); if nomad == nil or nomad == @root { return (nomad)}}}; on getSearchTable (adrObject) { //get the address of the search table for this website local (nomad = adrObject); if typeOf (nomad^) != tableType { nomad = parentOf (nomad^)}; loop { if defined (nomad^.["#search"]) { return (@nomad^.["#search"])}; if defined (nomad^.["#prefs"].search) { return (@nomad^.["#prefs"].search)}; if defined (nomad^.["#prefs"].["#search"]) { return (@nomad^.["#prefs"].["#search"])}; nomad = parentOf (nomad^); if nomad == nil or nomad == @root { return (false)}}}; ÇGet the path to this database. dbPath = window.getFile (table.getRootAddress (adrObject)); ÇFind the entry for this database in user.databases. bundle { Çlocal (dbName = file.fileFromPath (dbPath)) Çif defined (user.databases.[dbName]) ÇadrUserTable = @user.databases.[dbName] ÇLoop through the user.databases table, looking for an entry where the paths match. local (i); local (lowerPath = string.lower (dbPath)); for i = 1 to sizeOf (user.databases) { if defined (user.databases [i].f) { if string.lower (user.databases [i].f) == lowerPath { adrUserTable = @user.databases [i]; break}}}}; ÇIf the user.databases table doesn't exist, or supportsIndexing doesn't exist or is false, return right away. bundle { if adrUserTable == nil { return (false)}; if not defined (adrUserTable^.supportsIndexing) { return (false)}; if not adrUserTable^.supportsIndexing { return (false)}}; ÇCopy the user.databases table into the search table. copyPrefs (adrUserTable); ÇCopy preferences from config.mainResponder.search. copyPrefs (@config.mainResponder.search); ÇNext get the sites table from config.mainResponder.search.sites. (It might not exist, that's okay.) bundle { if adrSitesTable == nil { local (adrSiteRoot = getSiteRoot (adrObject)); //get the root address of this website if (adrSiteRoot != nil) and (adrSiteRoot != @root) { local (i); local (adrTable = @config.mainResponder.search.sites); for i = 1 to sizeOf (adrTable^) { if defined (adrTable^ [i].adrSite) { if adrTable^ [i].adrSite == adrSiteRoot { adrSitesTable = @adrTable^ [i]; break}}}}}}; ÇCopy prefs from the sites table. copyPrefs (adrSitesTable); ÇFind the #search table for this site. It might not exist, that's okay. adrSearchDirectiveTable = getSearchTable (adrObject); ÇCopy prefs from the #search table. copyPrefs (adrSearchDirectiveTable); return (true)} \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:scpt:mainResponder.search.client.buildSearchTable ! on buildSearchTable (adrObject, adrSearchTable, adrSitesTable=nil) { ÇChanges ÇSun, Dec 12, 1999 at 8:34:56 PM by TAC Çadded support for relative file paths ÇBuild a table containing the search preferences for this object. ÇParams: ÇadrObject is the address of the page. ÇadrSearchTable is the address of the search table to build. ÇadrSitesTable (optional) points to a table in config.mainResponder.search.sites to use. ÇThe search table contains: ÇsupportsIndexing: does this database support indexing? This value is the value from user.databases.[dbName].supportsIndexing. ÇflIndexOnCheckIn: does this website want indexing turned on? ÇaddToIndex: XML-RPC procedure name for adding to an index. This comes from config.mainResponder.search, the sites table, or the #search table. ÇrestartIndex: XML-RPC procedure name for restarting a site index. Çdomain: the domain name of the search engine server. Çport: the port number of the search engine server. ÇsiteName: the name of the site this page is in. ÇsiteUrl: the URL of the home page of this site. Çurl: the url of this page. ÇThe search table may contain additional items or fewer items, it's not guaranteed to contain the above and the above only. local (adrUserTable, adrSearchDirectiveTable); local (dbPath); on copyPrefs (adrSource) { //copy preferences from a table into the search table ÇCopy everything but subtables. if defined (adrSource^) { local (i); for i = 1 to sizeOf (adrSource^) { local (adrItem = @adrSource^ [i]); if typeOf (adrItem^) != tableType { table.copy (adrItem, adrSearchTable)}}; return (true)}}; on getSiteRoot (adrObject) { //get the root address of this website local (nomad = adrObject); if typeOf (nomad^) != tableType { nomad = parentOf (nomad^)}; loop { if defined (nomad^.["#ftpSite"]) { return (nomad)}; if defined (nomad^.["#prefs"].ftpSite) { return (nomad)}; if defined (nomad^.["#prefs"].["#ftpSite"]) { return (nomad)}; nomad = parentOf (nomad^); if nomad == nil or nomad == @root { return (nomad)}}}; on getSearchTable (adrObject) { //get the address of the search table for this website local (nomad = adrObject); if typeOf (nomad^) != tableType { nomad = parentOf (nomad^)}; loop { if defined (nomad^.["#search"]) { return (@nomad^.["#search"])}; if defined (nomad^.["#prefs"].search) { return (@nomad^.["#prefs"].search)}; if defined (nomad^.["#prefs"].["#search"]) { return (@nomad^.["#prefs"].["#search"])}; nomad = parentOf (nomad^); if nomad == nil or nomad == @root { return (false)}}}; ÇGet the path to this database. dbPath = window.getFile (table.getRootAddress (adrObject)); ÇFind the entry for this database in user.databases. bundle { Çlocal (dbName = file.fileFromPath (dbPath)) Çif defined (user.databases.[dbName]) ÇadrUserTable = @user.databases.[dbName] ÇLoop through the user.databases table, looking for an entry where the paths match. local (i); local (lowerPath = string.lower (dbPath)); for i = 1 to sizeOf (user.databases) { if defined (user.databases [i].f) { if string.lower (fileSpec (user.databases [i].f)) == lowerPath { // Sun, Dec 12, 1999 at 8:34:56 PM by TAC - added support for relative file paths adrUserTable = @user.databases [i]; break}}}}; ÇIf the user.databases table doesn't exist, or supportsIndexing doesn't exist or is false, return right away. bundle { if adrUserTable == nil { return (false)}; if not defined (adrUserTable^.supportsIndexing) { return (false)}; if not adrUserTable^.supportsIndexing { return (false)}}; ÇCopy the user.databases table into the search table. copyPrefs (adrUserTable); ÇCopy preferences from config.mainResponder.search. copyPrefs (@config.mainResponder.search); ÇNext get the sites table from config.mainResponder.search.sites. (It might not exist, that's okay.) bundle { if adrSitesTable == nil { local (adrSiteRoot = getSiteRoot (adrObject)); //get the root address of this website if (adrSiteRoot != nil) and (adrSiteRoot != @root) { local (i); local (adrTable = @config.mainResponder.search.sites); for i = 1 to sizeOf (adrTable^) { if defined (adrTable^ [i].adrSite) { if adrTable^ [i].adrSite == adrSiteRoot { adrSitesTable = @adrTable^ [i]; break}}}}}}; ÇCopy prefs from the sites table. copyPrefs (adrSitesTable); ÇFind the #search table for this site. It might not exist, that's okay. adrSearchDirectiveTable = getSearchTable (adrObject); ÇCopy prefs from the #search table. copyPrefs (adrSearchDirectiveTable); return (true)} \ No newline at end of file |
|
From: creedon <icr...@us...> - 2005-08-13 20:37:17
|
Update of /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/search/utilities In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20917 Modified Files: compactText Log Message: replace searchEngine.cleanText with mainResponder.search.utilities.cleanText Index: compactText =================================================================== RCS file: /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/search/utilities/compactText,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** compactText 26 Mar 2005 21:46:13 -0000 1.1.1.1 --- compactText 13 Aug 2005 20:37:10 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:scpt:mainResponder.search.utilities.compactText ! on compactText (s) { ÇRemove punctuation (but not spaces) from text. ÇChanges: Ç07/19/00; 11:29:59 AM by PBS ÇDon't do the char-by-char loop, it's redundant, as searchEngine.cleanText does most of the text clean-up. s = string.lower (s); bundle { //a few punctuation characters aren't handled by searchEngine.cleanText s = string.replaceAll (s, "\"", " "); s = string.replaceAll (s, "'", " "); s = string.replaceAll (s, ",", " "); s = string.replaceAll (s, "~", " "); s = string.replaceAll (s, " ", " ", false)}; s = searchEngine.cleanText (s); s = string.replaceAll (s, ">", " "); s = string.replaceAll (s, "<", " "); local (i = sizeOf (s)); Çloop Çif i == 0 Çbreak Ç Çif string.isPunctuation (s [i]) Çdelete (@s [i]) Ç Çif mod (I, 500) == 0 Çsys.systemTask () Ç Çi-- s = string.trimWhiteSpace (s); return (s)} \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:scpt:mainResponder.search.utilities.compactText ! on compactText (s) { ÇRemove punctuation (but not spaces) from text. ÇChanges Ç8/12/05; 11:14:07 AM by TAC Çreplace searchEngine.cleanText with mainResponder.search.utilities.cleanText Ç07/19/00; 11:29:59 AM by PBS ÇDon't do the char-by-char loop, it's redundant, as searchEngine.cleanText does most of the text clean-up. s = string.lower (s); bundle { //a few punctuation characters aren't handled by searchEngine.cleanText s = string.replaceAll (s, "\"", " "); s = string.replaceAll (s, "'", " "); s = string.replaceAll (s, ",", " "); s = string.replaceAll (s, "~", " "); s = string.replaceAll (s, " ", " ", false)}; s = mainResponder.search.utilities.cleanText (s); s = string.replaceAll (s, ">", " "); s = string.replaceAll (s, "<", " "); local (i = sizeOf (s)); Çloop Çif i == 0 Çbreak Ç Çif string.isPunctuation (s [i]) Çdelete (@s [i]) Ç Çif mod (I, 500) == 0 Çsys.systemTask () Ç Çi-- s = string.trimWhiteSpace (s); return (s)} \ No newline at end of file |
|
From: creedon <icr...@us...> - 2005-08-13 20:35:58
|
Update of /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/calendar In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20650 Modified Files: getLinks Log Message: changed maxDate = nil to maxDate == nil, in case it is ever uncommented Index: getLinks =================================================================== RCS file: /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/calendar/getLinks,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** getLinks 26 Mar 2005 21:45:20 -0000 1.1.1.1 --- getLinks 13 Aug 2005 20:35:49 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:scpt:mainResponder.calendar.getLinks ! on getLinks (adrCal, theDate, url, startTime=mainResponder.calendar.getFirstDay (adrCal), maxDate=nil) { ÇGet next month and prev month links for a calendar for this day ÇChanges: ÇMon, 01 Mar 1999 13:01:37 GMT by AR ÇChanged startTime parameter to default to mainResponder.calendar.getFirstDay(adrCal) instead of date("4/1/97") Ç02/08/00; 10:59:25 AM by PBS ÇWhen building the link to the next month, start at the end of the next month, and work backward in time until a day is found. Ç04/03/00; 10:39:29 AM by PBS ÇmaxDate is a new optional parameter, needed to support time zones in Manila. If maxDate is not supplied, the default is clock.now (). Ç03/20/01; 5:01:38 PM by PBS ÇUse the new routines for getting links to prev and next months. These routines avoid looping, and skip empty months. Çon getLink (d, flForwardInTime) Çif maxDate == nil //PBS 04/02/00: maxDate is a new optional parameter needed for time zone support in Manila ÇmaxDate == clock.now () Çif d > maxDate Çd = maxDate Ç Çreturn (mainResponder.calendar.getLink (adrCal, d, url, flForwardInTime, startTime, maxDate)) local (htmlText = "", indentLevel = 0); on add (s) { htmlText = htmlText + string.filledString ("\t", indentLevel) + s + "\r"}; add ("<center><font size=\"-2\"><b>"); indentLevel++; Çadd (getLink (date.lastOfMonth (date.prevMonth (theDate)), false)) add (mainResponder.calendar.getLinkToPrevMonth (adrCal, theDate, url)); //PBS 03/20/01: faster script for getting link to next month -- plus it skips months as needed add (" "); Çadd (getLink (date.lastOfMonth (date.nextMonth (theDate)), false)) //PBS 02/08/00: start at the end of the next month and work backward in time. add (mainResponder.calendar.getLinkToNextMonth (adrCal, theDate, url)); //PBS 03/20/01: faster script for getting link to next month -- plus it skips months as needed add ("</b></font></center>"); indentLevel--; return (htmlText)} \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:scpt:mainResponder.calendar.getLinks ! on getLinks (adrCal, theDate, url, startTime=mainResponder.calendar.getFirstDay (adrCal), maxDate=nil) { ÇGet next month and prev month links for a calendar for this day ÇChanges Ç8/13/05; 1:34:07 PM by TAC Çchanged maxDate = nil to maxDate == nil, in case it is ever uncommented ÇMon, 01 Mar 1999 13:01:37 GMT by AR ÇChanged startTime parameter to default to mainResponder.calendar.getFirstDay(adrCal) instead of date("4/1/97") Ç02/08/00; 10:59:25 AM by PBS ÇWhen building the link to the next month, start at the end of the next month, and work backward in time until a day is found. Ç04/03/00; 10:39:29 AM by PBS ÇmaxDate is a new optional parameter, needed to support time zones in Manila. If maxDate is not supplied, the default is clock.now (). Ç03/20/01; 5:01:38 PM by PBS ÇUse the new routines for getting links to prev and next months. These routines avoid looping, and skip empty months. Çon getLink (d, flForwardInTime) Çif maxDate == nil //PBS 04/02/00: maxDate is a new optional parameter needed for time zone support in Manila ÇmaxDate = clock.now () Çif d > maxDate Çd = maxDate Ç Çreturn (mainResponder.calendar.getLink (adrCal, d, url, flForwardInTime, startTime, maxDate)) local (htmlText = "", indentLevel = 0); on add (s) { htmlText = htmlText + string.filledString ("\t", indentLevel) + s + "\r"}; add ("<center><font size=\"-2\"><b>"); indentLevel++; Çadd (getLink (date.lastOfMonth (date.prevMonth (theDate)), false)) add (mainResponder.calendar.getLinkToPrevMonth (adrCal, theDate, url)); //PBS 03/20/01: faster script for getting link to next month -- plus it skips months as needed add (" "); Çadd (getLink (date.lastOfMonth (date.nextMonth (theDate)), false)) //PBS 02/08/00: start at the end of the next month and work backward in time. add (mainResponder.calendar.getLinkToNextMonth (adrCal, theDate, url)); //PBS 03/20/01: faster script for getting link to next month -- plus it skips months as needed add ("</b></font></center>"); indentLevel--; return (htmlText)} \ No newline at end of file |
|
From: creedon <icr...@us...> - 2005-08-13 20:10:19
|
Update of /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/search/client In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16007 Modified Files: index Log Message: removed erroneous @pageTable from mainResponder.search.client.index call Index: index =================================================================== RCS file: /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/search/client/index,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** index 26 Mar 2005 21:46:10 -0000 1.1.1.1 --- index 13 Aug 2005 20:10:11 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:scpt:mainResponder.search.client.index ! on index (adrObject, flMsgReader=false, adrDgMsg=nil, adrSiteTable=nil) { ÇIndex an object. ÇThis is the highest-level client-side index verb. Call this whenever something is new or changed. ÇPages are indexed when: Ç1) They're checked in or sent to server via WebEdit. Ç2) A discussion group message is new or changed. ÇWed, Mar 10, 1999 at 1:33:27 PM by PBS ÇChanges: Ç01/31/00; 12:50:09 PM by PBS ÇDon't index messages in a Manila site. Allow Manila's indexing routines to handle those. Don't add anything to the log in this case. Ç01/21/00; 6:10:11 PM by PBS ÇIf the script has access to the page table, get the address of the site there and check to see if it's a Manila site. If so, don't try the standard mainResponder indexer, allow Manila's indexer to handle indexing. Ç07/15/00; 12:51:02 PM by PBS ÇFixed a bug in checking that the site is a Manila site. If a site is a Manila site, let Manila handle sending the index request to the search engine, skip the mainResponder indexer. local (dbPath = window.getFile (table.getRootAddress (adrObject))); local (adrParent = parentOf (adrObject^)); try { //PBS 01/31/00: don't index content in a Manila site, allow Manila's own indexing routines to handle indexing. try { //we might have access to the page table -- get the address of the site there. local (pta = html.getPageTableAddress ()); if manilaSuite.isManilaSite (pta^.adrSiteRootTable) { return (true)}}; if string.lower (nameOf (adrParent^)) == "messages" { local (adrDg = parentOf (adrParent^)); if string.lower (nameOf (adrDg^)) == "#discussiongroup" { local (adrSite = parentOf (adrDg^)); if manilaSuite.isManilaSite (adrSite) { return (true)}}}}; //don't index, this is a Manila site, let Manila do the indexing local (pageTable); new (tableType, @pageTable); ÇFirst make sure our prefs exist. if not defined (config.mainResponder.search) { mainResponder.search.client.logNoIndex (adrObject, "because config.mainResponder.search is undefined."); return (true)}; ÇFind out if this is a discussion group message. If it is, call indexDiscussionMessage and return. bundle { local (flDg = false); bundle { //PBS 03/15/00: new logic for finding out if it's a dg message -- supports discussion groups outside of discuss.root if string.lower (dbPath) == string.lower (system.temp.mainResponder.discussRootFile) { flDg = true} else { local (adrParent = parentOf (adrObject^)); if nameOf (adrParent^) == "messages" { //it's probably a dg message ÇCheck to see if the object is a table containing subject, body, member, and postTime fields. if defined (adrObject^.body) and defined (adrObject^.subject) and defined (adrObject^.member) and defined (adrObject^.postTime) { ÇIt's a dg message. flDg = true}}}}; if flDg { ÇMake sure the parent of adrObject is the messages table. if string.lower (nameOf (adrParent^)) == "messages" { ÇflDiscussMessage = true //PBS 03/15/00: this line appears to be extraneous return (mainResponder.search.client.indexDiscussionMessage (adrObject))} else { //it's a change to discuss.root, but it's not a changed message. Don't index, return right away. mainResponder.search.client.logNoIndex (adrObject, "is in discuss.root, but it's not the address of a discussion group message table."); return (true)}}}; //true just means this script ran okay, it doesn't indicate anything else ÇAt this point, adrObject is in a website, or it shouldn't be indexed. ÇFirst make sure it's in a website and doesn't start with # or have # in its path. ÇOtherwise return -- this object should not be indexed. bundle { if html.traversalSkip (adrObject) { mainResponder.search.client.logNoIndex (adrObject, "begins with a # sign."); return (true)}; if not (mainResponder.search.client.inWebsite (adrObject)) { mainResponder.search.client.logNoIndex (adrObject, "it's not in the content part of a website."); return (true)}}; ÇAt this point, adrObject is either a page, a part of a table that's a table, or a table containing pages. ÇIf it's a page, index it. ÇIf it's part of a table that's a page, figure out the address of the page itself. ÇIf it's a table containing pages, loop through the table, indexing each page. bundle { //build the page table for this page, we'll need it ÇBuild a page table. html.buildPageTable (adrObject, @pageTable)}; ÇIf it's a table, is it a table of pages or a table that's rendered as one web page? if typeOf (adrObject^) == tableType { ÇLook for the presence of a #renderTableWith directive. Look for a msgNum item. if defined (pageTable.renderTableWith) { if defined (adrObject^.msgNum) and defined (adrObject^.discussionRoot) { return (mainResponder.search.client.indexPage (adrObject, @pageTable, flMsgReader, adrDgMsg, adrSiteTable))} //it's a page, index it else { ÇIt's impossible to tell if it's a page or not. Don't index it, rather than index it wrongly. ÇReturn. mainResponder.search.client.logNoIndex (adrObject, "the search engine can't tell if this is a page or a table containing other pages."); return (true)}} else { //it's a table containing other pages. Loop through the objects in that table. local (i); for i = 1 to sizeOf (adrObject^) { mainResponder.search.client.index (@adrObject^ [i], flMsgReader, adrDgMsg, adrSiteTable)}; return (true)}} else { //if it's not a table, it might be contained by a table that's a page ÇLook for a renderTableWith directive. if defined (pageTable.renderTableWith) { if defined (adrParent^.msgNum) { //it's contained by a table that's a page return (mainResponder.search.client.index (adrParent, @pageTable, flMsgReader, adrDgMsg, adrSiteTable))} else { ÇWe don't know if this is a page or part of a table that's a page. Don't index, return. mainResponder.search.client.logNoIndex (adrObject, "the search engine can't tell if this is a page or an element in a table containing other pages."); return (true)}} else { //it's a page, index it return (mainResponder.search.client.indexPage (adrObject, @pageTable, flMsgReader, adrDgMsg, adrSiteTable))}}; return (true)} \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:scpt:mainResponder.search.client.index ! on index (adrObject, flMsgReader=false, adrDgMsg=nil, adrSiteTable=nil) { ÇIndex an object. ÇThis is the highest-level client-side index verb. Call this whenever something is new or changed. ÇPages are indexed when: Ç1) They're checked in or sent to server via WebEdit. Ç2) A discussion group message is new or changed. ÇChanges Ç07/15/00; 12:51:02 PM by PBS ÇFixed a bug in checking that the site is a Manila site. If a site is a Manila site, let Manila handle sending the index request to the search engine, skip the mainResponder indexer. Ç01/31/00; 12:50:09 PM by PBS ÇDon't index messages in a Manila site. Allow Manila's indexing routines to handle those. Don't add anything to the log in this case. Ç01/21/00; 6:10:11 PM by PBS ÇIf the script has access to the page table, get the address of the site there and check to see if it's a Manila site. If so, don't try the standard mainResponder indexer, allow Manila's indexer to handle indexing. Ç8/30/99; 6:50:30 PM by TAC Çremoved erroneous @pageTable from mainResponder.search.client.index call ÇWed, Mar 10, 1999 at 1:33:27 PM by PBS Çcreated? local (dbPath = window.getFile (table.getRootAddress (adrObject))); local (adrParent = parentOf (adrObject^)); try { //PBS 01/31/00: don't index content in a Manila site, allow Manila's own indexing routines to handle indexing. try { //we might have access to the page table -- get the address of the site there. local (pta = html.getPageTableAddress ()); if manilaSuite.isManilaSite (pta^.adrSiteRootTable) { return (true)}}; if string.lower (nameOf (adrParent^)) == "messages" { local (adrDg = parentOf (adrParent^)); if string.lower (nameOf (adrDg^)) == "#discussiongroup" { local (adrSite = parentOf (adrDg^)); if manilaSuite.isManilaSite (adrSite) { return (true)}}}}; //don't index, this is a Manila site, let Manila do the indexing local (pageTable); new (tableType, @pageTable); ÇFirst make sure our prefs exist. if not defined (config.mainResponder.search) { mainResponder.search.client.logNoIndex (adrObject, "because config.mainResponder.search is undefined."); return (true)}; ÇFind out if this is a discussion group message. If it is, call indexDiscussionMessage and return. bundle { local (flDg = false); bundle { //PBS 03/15/00: new logic for finding out if it's a dg message -- supports discussion groups outside of discuss.root if string.lower (dbPath) == string.lower (system.temp.mainResponder.discussRootFile) { flDg = true} else { local (adrParent = parentOf (adrObject^)); if nameOf (adrParent^) == "messages" { //it's probably a dg message ÇCheck to see if the object is a table containing subject, body, member, and postTime fields. if defined (adrObject^.body) and defined (adrObject^.subject) and defined (adrObject^.member) and defined (adrObject^.postTime) { ÇIt's a dg message. flDg = true}}}}; if flDg { ÇMake sure the parent of adrObject is the messages table. if string.lower (nameOf (adrParent^)) == "messages" { ÇflDiscussMessage = true //PBS 03/15/00: this line appears to be extraneous return (mainResponder.search.client.indexDiscussionMessage (adrObject))} else { //it's a change to discuss.root, but it's not a changed message. Don't index, return right away. mainResponder.search.client.logNoIndex (adrObject, "is in discuss.root, but it's not the address of a discussion group message table."); return (true)}}}; //true just means this script ran okay, it doesn't indicate anything else ÇAt this point, adrObject is in a website, or it shouldn't be indexed. ÇFirst make sure it's in a website and doesn't start with # or have # in its path. ÇOtherwise return -- this object should not be indexed. bundle { if html.traversalSkip (adrObject) { mainResponder.search.client.logNoIndex (adrObject, "begins with a # sign."); return (true)}; if not (mainResponder.search.client.inWebsite (adrObject)) { mainResponder.search.client.logNoIndex (adrObject, "it's not in the content part of a website."); return (true)}}; ÇAt this point, adrObject is either a page, a part of a table that's a table, or a table containing pages. ÇIf it's a page, index it. ÇIf it's part of a table that's a page, figure out the address of the page itself. ÇIf it's a table containing pages, loop through the table, indexing each page. bundle { //build the page table for this page, we'll need it ÇBuild a page table. html.buildPageTable (adrObject, @pageTable)}; ÇIf it's a table, is it a table of pages or a table that's rendered as one web page? if typeOf (adrObject^) == tableType { ÇLook for the presence of a #renderTableWith directive. Look for a msgNum item. if defined (pageTable.renderTableWith) { if defined (adrObject^.msgNum) and defined (adrObject^.discussionRoot) { return (mainResponder.search.client.indexPage (adrObject, @pageTable, flMsgReader, adrDgMsg, adrSiteTable))} //it's a page, index it else { ÇIt's impossible to tell if it's a page or not. Don't index it, rather than index it wrongly. ÇReturn. mainResponder.search.client.logNoIndex (adrObject, "the search engine can't tell if this is a page or a table containing other pages."); return (true)}} else { //it's a table containing other pages. Loop through the objects in that table. local (i); for i = 1 to sizeOf (adrObject^) { mainResponder.search.client.index (@adrObject^ [i], flMsgReader, adrDgMsg, adrSiteTable)}; return (true)}} else { //if it's not a table, it might be contained by a table that's a page ÇLook for a renderTableWith directive. if defined (pageTable.renderTableWith) { if defined (adrParent^.msgNum) { //it's contained by a table that's a page return (mainResponder.search.client.index (adrParent, flMsgReader, adrDgMsg, adrSiteTable))} // Mon, Aug 30, 1999 at 6:50:30 PM by TAC - removed erroneous @pageTable else { ÇWe don't know if this is a page or part of a table that's a page. Don't index, return. mainResponder.search.client.logNoIndex (adrObject, "the search engine can't tell if this is a page or an element in a table containing other pages."); return (true)}} else { //it's a page, index it return (mainResponder.search.client.indexPage (adrObject, @pageTable, flMsgReader, adrDgMsg, adrSiteTable))}}; return (true)} \ No newline at end of file |
|
From: creedon <icr...@us...> - 2005-08-13 20:08:05
|
Update of /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/search/server In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15628 Modified Files: indexOnePage Log Message: replace searchEngine.cleanText with mainResponder.search.utilities.cleanText Index: indexOnePage =================================================================== RCS file: /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/search/server/indexOnePage,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** indexOnePage 26 Mar 2005 21:46:12 -0000 1.1.1.1 --- indexOnePage 13 Aug 2005 20:07:57 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:scpt:mainResponder.search.server.indexOnePage ! on indexOnePage (url, title, pageText, adrStopWords=nil, indexName=nil) { ÇIndex one page. ÇChanges: Ç8/20/99; 11:41:41 AM by PBS ÇIndex all words that are not in the stop words table. Don't ignore numbers. Don't ignore words that are shorter than 3 characters. Ç07/18/00; 10:46:01 PM by PBS ÇInstead of using string.nthField, just keep deleting from the leading edge of the text, and index the first word. Performance optimization. local (lowerTitle = string.lower (title)); local (pageName); local (lowerAdr = string.lower (url)); local (lowerParent); local (i, j, numFields); local (flMessages = true); local (indexPath = mainResponder.search.utilities.getIndexPath (indexName)); local (adrIndex = @[indexPath].index); if adrStopWords == nil { adrStopWords = @searchEngine.data.stopWords}; on doMessage (s) { if flMessages { msg (s)}}; on getLastField (s) { local (ctfields = string.countFields (s, '/')); s = string.nthField (s, '/', ctfields); return (s)}; bundle { //get the page name pageName = url; pageName = getLastField (pageName)}; bundle { //get the name of the parent folder lowerParent = string.lower (url); lowerParent = string.popSuffix (lowerParent, '/'); lowerParent = getLastField (lowerParent)}; bundle { //clean the text before indexing pageText = searchEngine.cleanText (pageText)}; ÇnumFields = string.countFields (pageText, ' ') //count potential words local (ct = 0); Çfor i = 1 to numFields //loop through every potential word Çlocal (oneWord = string.nthField (pageText, ' ', i)) Ç Çif oneWord beginsWith '#' Çcontinue //it's a directive Ç ÇoneWord = string.dropNonAlphas (oneWord) ÇoneWord = string.lower (oneWord) ÇoneWord = string.popTrailing (oneWord, 's') //pop off trailing s's ÇoneWord = string.trimWhiteSpace (oneWord) Çif oneWord == "" Çcontinue Ç ÇPBS 8/20/99: commented this out -- we now index all words that are not in the stop words table. Çif sizeOf (oneWord) < 3 //we don't index very short words, except for "op" and "wp" Çif oneWord != "op" and oneWord != "wp" and oneWord != "ii" Çcontinue Ç Çif not (searchEngine.checkStopWords (oneWord, adrStopWords)) //check if this is on the list of words not to index Çcontinue //don't index Ç Çsys.systemTask () ÇdoMessage (oneWord) Ç Çlocal (firstLetter = string.mid (oneWord, 1, 1)) Ç ÇPBS 8/20/99: a word can start with a number. At this point we have letters and numbers only, so this check can be eliminated. Çif char (firstLetter) < 'a' or char (firstLetter) > 'z' Çcontinue Ç Çlocal (adrLetter = @adrIndex^.[firstLetter]) //address of this letter's table in the index Çif not defined (adrLetter^) Çnew (tableType, adrLetter) Ç Çlocal (adrWord = @adrLetter^.[oneWord]) //address of this word in the index Çif not defined (adrWord^) Çnew (tableType, adrWord) Ç Çlocal (adrPageCount = @adrWord^.[url]) //address of the count for this page in this word Çif defined (adrPageCount^) ÇadrPageCount^ = adrPageCount^ + 1 //this is a frequency count (plus the relevancy ranking, see below) Çelse ÇadrPageCount^ = 1 //first occurence of this word in the page Ç Çbundle //do relevancy ranking Çif lowerAdr contains oneWord //if the address of the page contains the word, add 100 Çif adrPageCount^ < 100 ÇadrPageCount^ = adrPageCount^ + 100 Çif string.lower (pageName) contains oneWord //if the name of the page contains the word, add 500 Çif adrPageCount^ < 500 ÇadrPageCount^ = adrPageCount^ + 500 Çif lowerParent == oneWord //if the name of the parent table equals the word and this is the default page, add 1000 Çif pageName contains "default" or pageName contains "index" Çif adrPageCount^ < 1000 ÇadrPageCount^ = adrPageCount^ + 1000 Çif lowerTitle contains oneWord //if the title of the page contains the word, add 2000 Çif adrPageCount^ < 2000 ÇadrPageCount^ = adrPageCount^ + 2000 Ç Çsys.systemTask () ÇdoMessage ("Indexing: " + url + ": " + oneWord) while sizeOf (pageText) > 0 { //PBS 07/18/00: loop through every potential word pageText = string.trimWhiteSpace (pageText); local (oneWord = string.nthField (pageText, ' ', 1)); local (wordSize = sizeOf (oneWord)); if oneWord beginsWith '#' { pageText = string.delete (pageText, 1, wordSize); continue}; //it's a directive oneWord = string.dropNonAlphas (oneWord); oneWord = string.lower (oneWord); oneWord = string.popTrailing (oneWord, 's'); //pop off trailing s's oneWord = string.trimWhiteSpace (oneWord); if oneWord == "" { pageText = string.delete (pageText, 1, wordSize); continue}; if not (searchEngine.checkStopWords (oneWord, adrStopWords)) { //check if this is on the list of words not to index pageText = string.delete (pageText, 1, wordSize); continue}; //don't index local (firstLetter = string.mid (oneWord, 1, 1)); local (adrLetter = @adrIndex^.[firstLetter]); //address of this letter's table in the index if not defined (adrLetter^) { new (tableType, adrLetter)}; local (adrWord = @adrLetter^.[oneWord]); //address of this word in the index if not defined (adrWord^) { new (tableType, adrWord)}; local (adrPageCount = @adrWord^.[url]); //address of the count for this page in this word if defined (adrPageCount^) { adrPageCount^ = adrPageCount^ + 1} //this is a frequency count (plus the relevancy ranking, see below) else { adrPageCount^ = 1}; //first occurence of this word in the page bundle { //do relevancy ranking if lowerAdr contains oneWord { //if the address of the page contains the word, add 100 if adrPageCount^ < 100 { adrPageCount^ = adrPageCount^ + 100}}; if string.lower (pageName) contains oneWord { //if the name of the page contains the word, add 500 if adrPageCount^ < 500 { adrPageCount^ = adrPageCount^ + 500}}; if lowerParent == oneWord { //if the name of the parent table equals the word and this is the default page, add 1000 if pageName contains "default" or pageName contains "index" { if adrPageCount^ < 1000 { adrPageCount^ = adrPageCount^ + 1000}}}; if lowerTitle contains oneWord { //if the title of the page contains the word, add 2000 if adrPageCount^ < 2000 { adrPageCount^ = adrPageCount^ + 2000}}}; pageText = string.delete (pageText, 1, wordSize); Çct++ Çif ct > 500 //relax on occassion Çthread.sleepFor (0) Çct = 0}; msg (""); return (true)} \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:scpt:mainResponder.search.server.indexOnePage ! on indexOnePage (url, title, pageText, adrStopWords=nil, indexName=nil) { ÇIndex one page. ÇChanges Ç8/12/05; 11:14:07 AM by TAC Çreplace searchEngine.cleanText with mainResponder.search.utilities.cleanText Ç07/18/00; 10:46:01 PM by PBS ÇInstead of using string.nthField, just keep deleting from the leading edge of the text, and index the first word. Performance optimization. Ç8/20/99; 11:41:41 AM by PBS ÇIndex all words that are not in the stop words table. Don't ignore numbers. Don't ignore words that are shorter than 3 characters. local (lowerTitle = string.lower (title)); local (pageName); local (lowerAdr = string.lower (url)); local (lowerParent); local (i, j, numFields); local (flMessages = true); local (indexPath = mainResponder.search.utilities.getIndexPath (indexName)); local (adrIndex = @[indexPath].index); if adrStopWords == nil { adrStopWords = @searchEngine.data.stopWords}; on doMessage (s) { if flMessages { msg (s)}}; on getLastField (s) { local (ctfields = string.countFields (s, '/')); s = string.nthField (s, '/', ctfields); return (s)}; bundle { //get the page name pageName = url; pageName = getLastField (pageName)}; bundle { //get the name of the parent folder lowerParent = string.lower (url); lowerParent = string.popSuffix (lowerParent, '/'); lowerParent = getLastField (lowerParent)}; bundle { //clean the text before indexing pageText = mainResponder.search.utilities.cleanText (pageText)}; ÇnumFields = string.countFields (pageText, ' ') //count potential words local (ct = 0); Çfor i = 1 to numFields //loop through every potential word Çlocal (oneWord = string.nthField (pageText, ' ', i)) Ç Çif oneWord beginsWith '#' Çcontinue //it's a directive Ç ÇoneWord = string.dropNonAlphas (oneWord) ÇoneWord = string.lower (oneWord) ÇoneWord = string.popTrailing (oneWord, 's') //pop off trailing s's ÇoneWord = string.trimWhiteSpace (oneWord) Çif oneWord == "" Çcontinue Ç ÇPBS 8/20/99: commented this out -- we now index all words that are not in the stop words table. Çif sizeOf (oneWord) < 3 //we don't index very short words, except for "op" and "wp" Çif oneWord != "op" and oneWord != "wp" and oneWord != "ii" Çcontinue Ç Çif not (searchEngine.checkStopWords (oneWord, adrStopWords)) //check if this is on the list of words not to index Çcontinue //don't index Ç Çsys.systemTask () ÇdoMessage (oneWord) Ç Çlocal (firstLetter = string.mid (oneWord, 1, 1)) Ç ÇPBS 8/20/99: a word can start with a number. At this point we have letters and numbers only, so this check can be eliminated. Çif char (firstLetter) < 'a' or char (firstLetter) > 'z' Çcontinue Ç Çlocal (adrLetter = @adrIndex^.[firstLetter]) //address of this letter's table in the index Çif not defined (adrLetter^) Çnew (tableType, adrLetter) Ç Çlocal (adrWord = @adrLetter^.[oneWord]) //address of this word in the index Çif not defined (adrWord^) Çnew (tableType, adrWord) Ç Çlocal (adrPageCount = @adrWord^.[url]) //address of the count for this page in this word Çif defined (adrPageCount^) ÇadrPageCount^ = adrPageCount^ + 1 //this is a frequency count (plus the relevancy ranking, see below) Çelse ÇadrPageCount^ = 1 //first occurence of this word in the page Ç Çbundle //do relevancy ranking Çif lowerAdr contains oneWord //if the address of the page contains the word, add 100 Çif adrPageCount^ < 100 ÇadrPageCount^ = adrPageCount^ + 100 Çif string.lower (pageName) contains oneWord //if the name of the page contains the word, add 500 Çif adrPageCount^ < 500 ÇadrPageCount^ = adrPageCount^ + 500 Çif lowerParent == oneWord //if the name of the parent table equals the word and this is the default page, add 1000 Çif pageName contains "default" or pageName contains "index" Çif adrPageCount^ < 1000 ÇadrPageCount^ = adrPageCount^ + 1000 Çif lowerTitle contains oneWord //if the title of the page contains the word, add 2000 Çif adrPageCount^ < 2000 ÇadrPageCount^ = adrPageCount^ + 2000 Ç Çsys.systemTask () ÇdoMessage ("Indexing: " + url + ": " + oneWord) while sizeOf (pageText) > 0 { //PBS 07/18/00: loop through every potential word pageText = string.trimWhiteSpace (pageText); local (oneWord = string.nthField (pageText, ' ', 1)); local (wordSize = sizeOf (oneWord)); if oneWord beginsWith '#' { pageText = string.delete (pageText, 1, wordSize); continue}; //it's a directive oneWord = string.dropNonAlphas (oneWord); oneWord = string.lower (oneWord); oneWord = string.popTrailing (oneWord, 's'); //pop off trailing s's oneWord = string.trimWhiteSpace (oneWord); if oneWord == "" { pageText = string.delete (pageText, 1, wordSize); continue}; if not (searchEngine.checkStopWords (oneWord, adrStopWords)) { //check if this is on the list of words not to index pageText = string.delete (pageText, 1, wordSize); continue}; //don't index local (firstLetter = string.mid (oneWord, 1, 1)); local (adrLetter = @adrIndex^.[firstLetter]); //address of this letter's table in the index if not defined (adrLetter^) { new (tableType, adrLetter)}; local (adrWord = @adrLetter^.[oneWord]); //address of this word in the index if not defined (adrWord^) { new (tableType, adrWord)}; local (adrPageCount = @adrWord^.[url]); //address of the count for this page in this word if defined (adrPageCount^) { adrPageCount^ = adrPageCount^ + 1} //this is a frequency count (plus the relevancy ranking, see below) else { adrPageCount^ = 1}; //first occurence of this word in the page bundle { //do relevancy ranking if lowerAdr contains oneWord { //if the address of the page contains the word, add 100 if adrPageCount^ < 100 { adrPageCount^ = adrPageCount^ + 100}}; if string.lower (pageName) contains oneWord { //if the name of the page contains the word, add 500 if adrPageCount^ < 500 { adrPageCount^ = adrPageCount^ + 500}}; if lowerParent == oneWord { //if the name of the parent table equals the word and this is the default page, add 1000 if pageName contains "default" or pageName contains "index" { if adrPageCount^ < 1000 { adrPageCount^ = adrPageCount^ + 1000}}}; if lowerTitle contains oneWord { //if the title of the page contains the word, add 2000 if adrPageCount^ < 2000 { adrPageCount^ = adrPageCount^ + 2000}}}; pageText = string.delete (pageText, 1, wordSize); Çct++ Çif ct > 500 //relax on occassion Çthread.sleepFor (0) Çct = 0};}; msg (""); return (true)} \ No newline at end of file |
|
From: creedon <icr...@us...> - 2005-08-13 20:06:52
|
Update of /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15469 Modified Files: init Log Message: partial path support for config.mainresponder.prefs.logFolder; config.mainresponder.prefs.discussArchiveFolder; config.mainresponder.prefs.backupFolder, more portable Index: init =================================================================== RCS file: /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/init,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** init 19 Jun 2005 18:27:38 -0000 1.5 --- init 13 Aug 2005 20:06:43 -0000 1.6 *************** *** 1,3 **** FrontierVcsFile:1:scpt:mainResponder.init ! on init () { ÇInitialize mainResponder ÇChanges Ç6/19/05; 10:47:10 AM by TAC Çchanged localhost value to 127.0.0.1 Çadded config.mainResponder.callbacks.subscriptionsServer Çadded config.mainresponder.prefs.legalMacros Çadded config.mainresponder.prefs.baseUrl for adminSite setupFrontier Ç3/10/03; 5:53:51 PM by JES ÇMake sure that system.environment.isRadio is defined (and false). Ç3/4/03; 3:19:15 PM by JES ÇReturn @config.mainResponder. Ç9/3/02; 1:26:05 AM by JES ÇFixed a bonehead bug -- we were calling user.rootUpdates.init to initialize the user.rootUpdates.callbacks table. We should have called rootUpdates.init instead. Ç8/28/02; 11:18:11 PM by JES ÇRegister admin site callbacks, and config.mainResponder.prefs.flLogRootUpdates. Ç8/20/02; 12:38:52 AM by JES ÇIf the port 5335 listen configured at user.inetd.config.http2 is not installed, install it, based on the default http listen. Ç8/18/02; 5:21:19 PM by JES ÇInstall the admin site pathEvaluation callback at config.mainresponder.callbacks.pathEvaluation.frontierAdminSite. Ç8/1/02; 6:59:56 PM by JES ÇInitialize new search engine prefs at config.mainResponder.search.prefs. No longer create config.mainresponder.data.searchQueue. Ç06/22/00; 3:57:55 PM by PBS ÇSet hashed cookies to true by default. Ç06/17/00; 5:29:29 PM by PBS ÇNow false by default: flKeepParamTable, flLog, flDiscussStatsNightly Ç12/11/1999 at 5:29:32 AM by AR ÇCommented out the code for hooking into the scheduler. This is now handled in mainResponder.startup. Ç11/23/99; 4:10:06 PM by PBS ÇBackups and discuss archiving now false by default. Ç11/20/99; 4:29:29 PM by PBS ÇChanged some defaults. Discuss archiving is true by default. Nightly updates are on by default; the default nightly update list contains Frontier, mainResponder, manila, and prefs.root. Save databases every minute is true by default. Logging database opens to the temp table is now false by default. Ç11/16/99; 11:48:17 PM by PBS ÇSet up prefs for flUpdateNightly, updateNightlyList, and securityLevel. The first two are prefs for automated nightly updates, the third is the security level for the Control Panel. Ç10/25/99; 4:04:59 PM by PBS Çconfig.mainResponder.prefs.flControlPanel: if true, then the /controlPanel/ system website can be accessed. It's true by default. Ç8/15/99; 9:53:42 AM by DW Çconfig.mainresponder.prefs.flLogReopenHourly, if true, we close the log file every hour. It will be re-opened by the next log.add call. In our work with the 6.1 kernel, we've determined that for busy servers this helps Frontier's memory utilization significantly, and the cost of re-opening the file once an hour is relatively small. Ç8/15/99; 9:34:07 AM by DW ÇMake sure that scheduler tasks are installed. This is also handled in mainResponder.install, but I don't want to ask people to run this script to go to 6.1, so we check to see if they're defined and if they're not we link them in. Ç8/15/99; 8:26:14 AM by DW Çinitialize config.mainresponder.prefs.flArchiveDiscuss and discussArchiveFolder. ÇWed, Mar 10, 1999 at 2:34:19 PM by PBS ÇInitialize config.mainResponder.data. ÇInitialize config.mainResponder.data.searchQueue. ÇWed, Mar 10, 1999 at 2:19:48 PM by PBS ÇInitialize the config.mainresponder.search table. ÇSet config.mainResponder.prefs.flSearchEngine to false by default. ÇThis means that this machine is not, by default, a search engine server. ÇSet config.mainResponder.prefs.flLogMemAvail to false by default. ÇTue, Mar 9, 1999 at 4:12:13 PM by PBS ÇUse Frontier.getSubFolder rather than mainResponder.getFolder. ÇSat, Mar 20, 1999 at 4:48:37 PM by PBS ÇAdded flConvertToMacText pref. ÇOn Macs, convert incoming latin text to Mac. ÇOn Windows the pref has no effect. on suretable (adrtable) { if not defined (adrtable^) { new (tabletype, adrtable)}}; suretable (@config.mainresponder); bundle { //config.mainresponder.prefs suretable (@config.mainresponder.prefs); if not defined (config.mainresponder.prefs.baseUrl) { config.mainresponder.prefs.baseUrl = "http://127.0.0.1/"}; if not defined (config.mainresponder.prefs.backupFolder) { config.mainresponder.prefs.backupFolder = Frontier.getSubFolder ("/ops/backups/")}; if not defined (config.mainresponder.prefs.defaultDiscussRoot) { config.mainresponder.prefs.defaultDiscussRoot = "discuss"}; if not defined (config.mainresponder.prefs.defaultNewsRoot) { config.mainresponder.prefs.defaultNewsRoot = "default"}; if not defined (config.mainresponder.prefs.flAllowPublicSearchSubmissions) { //PBS 3/9/99 config.mainresponder.prefs.flAllowPublicSearchSubmissions = false}; if not defined (config.mainresponder.prefs.flBackupNightly) { config.mainresponder.prefs.flBackupNightly = false}; //PBS 11/23/99: now false by default if not defined (config.mainresponder.prefs.flDiscussStatsNightly) { Çconfig.mainresponder.prefs.flDiscussStatsNightly = true config.mainresponder.prefs.flDiscussStatsNightly = false}; //PBS 06/17/00: Now false by default for 6.2. if not defined (config.mainresponder.prefs.flArchiveDiscuss) { config.mainresponder.prefs.flArchiveDiscuss = false}; //PBS 11/23/99: now false by default if not defined (config.mainresponder.prefs.discussArchiveFolder) { config.mainresponder.prefs.discussArchiveFolder = Frontier.getSubFolder ("/ops/discussArchive/")}; if not defined (config.mainresponder.prefs.flControlPanel) { //PBS 10/25/99: pref for the /controlPanel/ site config.mainresponder.prefs.flControlPanel = true}; if not defined (config.mainresponder.prefs.flDebug) { config.mainresponder.prefs.flDebug = false}; if not defined (config.mainresponder.prefs.flKeepParamTable) { Çconfig.mainresponder.prefs.flKeepParamTable = true config.mainresponder.prefs.flKeepParamTable = false}; //PBS 06/17/00: Now false by default in 6.2. if not defined (config.mainresponder.prefs.flLog) { Çconfig.mainresponder.prefs.flLog = true config.mainresponder.prefs.flLog = false}; //PBS 06/17/00: HTTP logging now off by default in 6.2. if not defined (config.mainresponder.prefs.flLogMemavail) { config.mainresponder.prefs.flLogMemavail = false}; if not defined (config.mainresponder.prefs.flLogDatabaseOpens) { config.mainresponder.prefs.flLogDatabaseOpens = false}; //PBS 11/20/99: now false by default, no to logging database opens to the temp table if not defined (config.mainresponder.prefs.flLogReopenHourly) { config.mainresponder.prefs.flLogReopenHourly = false}; if not defined (config.mainresponder.prefs.flOpenAboutWindow) { config.mainresponder.prefs.flOpenAboutWindow = true}; if not defined (config.mainresponder.prefs.flBuildPagesInBackground) { config.mainresponder.prefs.flBuildPagesInBackground = false}; //PBS 11/20/99: now false by default, no to building pages in the background if not defined (config.mainresponder.prefs.flProfiling) { config.mainresponder.prefs.flProfiling = false}; if not defined (config.mainresponder.prefs.flSaveDatabasesEveryMinute) { config.mainresponder.prefs.flSaveDatabasesEveryMinute = true}; //PBS 11/20/99: save databases every minute is now true by default if not defined (config.mainResponder.prefs.flMembershipHashedCookies) { //PBS 06/22/00: true by default config.mainResponder.prefs.flMembershipHashedCookies = true}; if not defined (config.mainresponder.prefs.flSearchEngine) { config.mainresponder.prefs.flSearchEngine = false}; if not defined (config.mainresponder.prefs.flStats) { config.mainresponder.prefs.flStats = true}; if not defined (config.mainresponder.prefs.flSubscriptions) { config.mainresponder.prefs.flSubscriptions = false}; if not defined (config.mainresponder.prefs.hitsBetweenLogSaves) { config.mainresponder.prefs.hitsBetweenLogSaves = 100}; if not defined (config.mainresponder.prefs.flConvertToMacText) { //PBS 3/20/99 config.mainresponder.prefs.flConvertToMacText = true}; if not defined (config.mainresponder.prefs.logFolder) { config.mainresponder.prefs.logFolder = Frontier.getSubFolder ("/ops/logs/")}; if not defined (config.mainresponder.prefs.legalMacros) { new (tabletype, @config.mainresponder.prefs.legalMacros)}; if not defined (config.mainresponder.prefs.legalTags) { new (tabletype, @config.mainresponder.prefs.legalTags); config.mainresponder.prefs.legalTags.i = true; config.mainresponder.prefs.legalTags.pre = true}; if not defined (config.mainresponder.prefs.flAllowByIpOnly) { //AR 11/04/1999 config.mainresponder.prefs.flAllowByIpOnly = false}; if not defined (config.mainresponder.prefs.allowedIpAddresses) { //AR 11/04/1999 config.mainresponder.prefs.allowedIpAddresses = "127.0.0.1"}; if not defined (config.mainResponder.prefs.flUpdateNightly) { //PBS 11/16/99: update various gdbs every night config.mainResponder.prefs.flUpdateNightly = true}; //PBS 11/20/99: nightly updates now true by default if not defined (config.mainResponder.prefs.updateNightlyList) { //PBS 11/16/99: list of gdbs to update nightly config.mainResponder.prefs.updateNightlyList = {"Frontier.root", "mainResponder.root", "prefs.root"}}; // 6/16/05; 1:52:08 PM by TAC - removed manila.root if not defined (config.mainResponder.prefs.securityLevel) { //PBS 11/16/99: set up security level pref config.mainResponder.prefs.securityLevel = 0}; if not defined (config.mainResponder.prefs.flLogRootUpdates) { config.mainResponder.prefs.flLogRootUpdates = true}}; bundle { //config.mainresponder.urls local (localhost = "127.0.0.1"); suretable (@config.mainresponder.urls); bundle { //discuss urls local (basediscussurl = "http://" + localhost + "/htmlInterfaces/discussionGroup/"); if not defined (config.mainResponder.urls.discussEditInBrowser) { config.mainResponder.urls.discussEditInBrowser = basediscussurl + "edit/editInBrowser$"}; if not defined (config.mainResponder.urls.discussEditInFrontier) { config.mainResponder.urls.discussEditInFrontier = basediscussurl + "edit/editInFrontier$"}; if not defined (config.mainResponder.urls.discussEnclosureDownloader) { config.mainResponder.urls.discussEnclosureDownloader = basediscussurl + "enclosureDownloader$"}; if not defined (config.mainResponder.urls.discussEnclosureRPCer) { config.mainResponder.urls.discussEnclosureRPCer = basediscussurl + "enclosureRPCer$"}; if not defined (config.mainResponder.urls.discussEnclosureViewer) { config.mainResponder.urls.discussEnclosureViewer = basediscussurl + "raw/messages/"}; if not defined (config.mainResponder.urls.discussGetChangesFromWorkstation) { config.mainResponder.urls.discussGetChangesFromWorkstation = basediscussurl + "edit/getChangesFromWorkstation"}; if not defined (config.mainResponder.urls.discussHomePage) { config.mainResponder.urls.discussHomePage = basediscussurl}; if not defined (config.mainResponder.urls.discussMsgReader) { config.mainResponder.urls.discussMsgReader = basediscussurl + "msgReader$"}; if not defined (config.mainResponder.urls.discussNewThread) { config.mainResponder.urls.discussNewThread = basediscussurl + "edit/newThread$"}; if not defined (config.mainResponder.urls.discussPostEditedMessage) { config.mainResponder.urls.discussPostEditedMessage = basediscussurl + "edit/postEditedMsg"}; if not defined (config.mainResponder.urls.discussPostMessage) { config.mainResponder.urls.discussPostMessage = basediscussurl + "edit/postMsg"}; if not defined (config.mainResponder.urls.discussTopics) { config.mainResponder.urls.discussTopics = basediscussurl + "topics"}}; bundle { //resources urls local (baseresourcesurl = "http://" + localhost + "/resources/"); if not defined (config.mainresponder.urls.frontierLogo) { config.mainresponder.urls.frontierLogo = baseresourcesurl + "logos/logoWinNT.gif"}; if not defined (config.mainresponder.urls.icons) { config.mainresponder.urls.icons = baseresourcesurl + "icons/"}; if not defined (config.mainresponder.urls.imageCowSkull) { config.mainresponder.urls.imageCowSkull = baseresourcesurl + "userlandIcons/skull"}}; bundle { //member urls local (basememberurl = "http://" + localhost + "/htmlInterfaces/logon/"); if not defined (config.mainResponder.urls.memberCheckMail) { config.mainResponder.urls.memberCheckMail = basememberurl + "checkYourMail"}; if not defined (config.mainResponder.urls.memberHome) { config.mainResponder.urls.memberHome = basememberurl + "welcome"}; if not defined (config.mainResponder.urls.memberLogoff) { config.mainResponder.urls.memberLogoff = basememberurl + "logoffConfirm"}; if not defined (config.mainResponder.urls.memberLogon) { config.mainResponder.urls.memberLogon = basememberurl}}; bundle { //misc urls if not defined (config.mainResponder.urls.newsHome) { config.mainResponder.urls.newsHome = "http://" + localhost + "/"}; if not defined (config.mainResponder.urls.searchHome) { config.mainResponder.urls.searchHome = "http://" + localhost + "/search/"}; local (basepeopleurl = "http://" + localhost + "/htmlInterfaces/people/"); if not defined (config.mainResponder.urls.prefsHome) { config.mainResponder.urls.prefsHome = basepeopleurl + "prefs/"}; if not defined (config.mainResponder.urls.profilesHome) { config.mainResponder.urls.profilesHome = basepeopleurl + "profiles/"}}}; bundle { //config.mainresponder.callbacks suretable (@config.mainresponder.callbacks); suretable (@config.mainresponder.callbacks.addMessage); suretable (@config.mainresponder.callbacks.controlAccess); suretable (@config.mainresponder.callbacks.editMessage); suretable (@config.mainresponder.callbacks.lightweightMacros); suretable (@config.mainresponder.callbacks.nightlyBackup); suretable (@config.mainResponder.callbacks.searchEngineSecurity); //PBS 3/9/99 suretable (@config.mainResponder.callbacks.subscriptionsServer); ÇAdd search engine callbacks. if not defined (config.mainResponder.callbacks.addMessage.index) { script.newScriptObject ("mainResponder.search.client.addMessageCallback (adrNewMsg)", @config.mainResponder.callbacks.addMessage.index); script.compile (@config.mainResponder.callbacks.addMessage.index)}; if not defined (config.mainResponder.callbacks.editMessage.index) { script.newScriptObject ("mainResponder.search.client.addMessageCallback (adrEditedMsg)", @config.mainResponder.callbacks.editMessage.index); script.compile (@config.mainResponder.callbacks.editMessage.index)}; ÇAdd security callback if not defined (config.mainResponder.callbacks.controlAccess.blockByIP) { //AR 11/04/1999 script.newScriptObject ("mainResponder.security.blockHttpByIP ()", @config.mainResponder.callbacks.controlAccess.blockByIP)}; ÇAdd pathEvaluation callback for the Admin site if not defined (config.mainresponder.callbacks.pathEvaluation) { //JES 8/18/02 new (tableType, @config.mainresponder.callbacks.pathEvaluation)}; if not defined (config.mainresponder.callbacks.pathEvaluation.frontierAdminSite) { //JES 8/18/02 config.mainresponder.callbacks.pathEvaluation.frontierAdminSite = @mainResponder.adminSite.callbacks.pathEvaluation}}; bundle { //config.mainresponder.data suretable (@config.mainresponder.data); };Çsuretable (@config.mainresponder.data.searchQueue) bundle { //config.mainresponder.domains suretable (@config.mainresponder.domains); if sizeof (config.mainresponder.domains) == 0 { config.mainresponder.domains.default = Frontier.getSubFolder ("/www/")}}; bundle { //config.mainresponder.globals suretable (@config.mainresponder.globals); if not defined (config.mainresponder.globals.allowDirectoryListings) { //PBS 11/19/99: default is now false config.mainresponder.globals.allowDirectoryListings = false}; if not defined (config.mainresponder.globals.allowScriptListings) { config.mainresponder.globals.allowScriptListings = false}; if not defined (config.mainresponder.globals.allowScriptsToRun) { config.mainresponder.globals.allowScriptsToRun = false}; if not defined (config.mainresponder.globals.defaultDirectoryItems) { config.mainresponder.globals.defaultDirectoryItems = {"default.html", "default", "index.html", "index"}}; if not defined (config.mainresponder.globals.defaultMembershipGroup) { config.mainresponder.globals.defaultMembershipGroup = "default"}; if not defined (config.mainresponder.globals.flRender) { config.mainresponder.globals.flRender = false}; if not defined (config.mainresponder.globals.flRenderingCache) { config.mainresponder.globals.flRenderingCache = false}}; bundle { //config.mainresponder.search suretable (@config.mainresponder.search); if not defined (config.mainresponder.search.domain) { config.mainresponder.search.domain = "127.0.0.1"}; if not defined (config.mainresponder.search.port) { config.mainresponder.search.port = 80}; if not defined (config.mainresponder.search.addToIndex) { config.mainresponder.search.addToIndex = "mainResponder.search.index"}; if not defined (config.mainresponder.search.restartIndex) { config.mainresponder.search.restartIndex = "mainResponder.search.restartIndex"}; if not defined (config.mainresponder.search.sites) { suretable (@config.mainresponder.search.sites)}; if not defined (config.mainResponder.search.prefs) { new (tableType, @config.mainResponder.search.prefs)}; if not defined (config.mainResponder.search.prefs.flLogEnabled) { config.mainResponder.search.prefs.flLogEnabled = false}; if not defined (config.mainResponder.search.prefs.flLogSearches) { config.mainResponder.search.prefs.flLogSearches = true}; if not defined (config.mainResponder.search.prefs.flLogIndex) { config.mainResponder.search.prefs.flLogIndex = true}; if not defined (config.mainResponder.search.prefs.flLogNoIndex) { config.mainResponder.search.prefs.flLogNoIndex = true}; if not defined (config.mainResponder.search.prefs.flStoreFullText) { config.mainResponder.search.prefs.flStoreFullText = false}; if not defined (config.mainResponder.search.prefs.minutesBetweenIndexes) { config.mainResponder.search.prefs.minutesBetweenIndexes = 60}; if not defined (config.mainResponder.search.prefs.hoursToCacheSearchResults) { config.mainResponder.search.prefs.hoursToCacheSearchResults = 24}}; bundle { //config.mainresponder.stats if not defined (config.mainResponder.stats) { new (tabletype, @config.mainResponder.stats)}; if not defined (config.mainResponder.stats.ctDiscussionGroupReads) { config.mainResponder.stats.ctDiscussionGroupReads = 0}}; bundle { //port 5335 listener if not defined (user.inetd.config.http2) { user.inetd.config.http2 = user.inetd.config.http; user.inetd.config.http2.port = 5336; if user.inetd.config.http2.startup { try { inetd.startOne (@user.inetd.config.http2)}}}}; try { //register admin site callbacks if not defined (user.rootUpdates.callbacks) { rootUpdates.init ()}; if not defined (user.rootUpdates.callbacks.afterInstallPart.mainResponder) { user.rootUpdates.callbacks.afterInstallPart.mainResponder = @mainResponder.adminSite.callbacks.logRootUpdate}}; bundle { //miscellaneous clean-up if not defined (system.environment.isRadio) { system.environment.isRadio = false}}; Çbundle //hook in to user.scheduler Çif not defined (user.scheduler.everyMinute.nirvanaServer) Çuser.scheduler.everyMinute.nirvanaServer = @mainresponder.background.everyminute Çif not defined (user.scheduler.hourly.nirvanaServer) Çuser.scheduler.hourly.nirvanaServer = @mainresponder.background.everyHour Çif not defined (user.scheduler.overnight.nirvanaServer) Çuser.scheduler.overnight.nirvanaServer = @mainresponder.background.everynight return (@config.mainResponder)}; Çbundle //test code Çlocal (ticks = clock.ticks ()) Çfor i = 1 to 100 Çinit () Çdialog.notify ((double (clock.ticks ()) - ticks) / 60 + " secs.") \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:scpt:mainResponder.init ! on init () { ÇInitialize mainResponder ÇChanges Ç8/6/05; 10:30:54 AM by TAC Çpartial path support for config.mainresponder.prefs.logFolder; config.mainresponder.prefs.discussArchiveFolder; config.mainresponder.prefs.backupFolder, more portable Ç6/19/05; 10:47:10 AM by TAC Çchanged localhost value to 127.0.0.1 Çadded config.mainResponder.callbacks.subscriptionsServer Çadded config.mainresponder.prefs.legalMacros Çadded config.mainresponder.prefs.baseUrl for adminSite setupFrontier Ç3/10/03; 5:53:51 PM by JES ÇMake sure that system.environment.isRadio is defined (and false). Ç3/4/03; 3:19:15 PM by JES ÇReturn @config.mainResponder. Ç9/3/02; 1:26:05 AM by JES ÇFixed a bonehead bug -- we were calling user.rootUpdates.init to initialize the user.rootUpdates.callbacks table. We should have called rootUpdates.init instead. Ç8/28/02; 11:18:11 PM by JES ÇRegister admin site callbacks, and config.mainResponder.prefs.flLogRootUpdates. Ç8/20/02; 12:38:52 AM by JES ÇIf the port 5335 listen configured at user.inetd.config.http2 is not installed, install it, based on the default http listen. Ç8/18/02; 5:21:19 PM by JES ÇInstall the admin site pathEvaluation callback at config.mainresponder.callbacks.pathEvaluation.frontierAdminSite. Ç8/1/02; 6:59:56 PM by JES ÇInitialize new search engine prefs at config.mainResponder.search.prefs. No longer create config.mainresponder.data.searchQueue. Ç06/22/00; 3:57:55 PM by PBS ÇSet hashed cookies to true by default. Ç06/17/00; 5:29:29 PM by PBS ÇNow false by default: flKeepParamTable, flLog, flDiscussStatsNightly Ç12/11/1999 at 5:29:32 AM by AR ÇCommented out the code for hooking into the scheduler. This is now handled in mainResponder.startup. Ç11/23/99; 4:10:06 PM by PBS ÇBackups and discuss archiving now false by default. Ç11/20/99; 4:29:29 PM by PBS ÇChanged some defaults. Discuss archiving is true by default. Nightly updates are on by default; the default nightly update list contains Frontier, mainResponder, manila, and prefs.root. Save databases every minute is true by default. Logging database opens to the temp table is now false by default. Ç11/16/99; 11:48:17 PM by PBS ÇSet up prefs for flUpdateNightly, updateNightlyList, and securityLevel. The first two are prefs for automated nightly updates, the third is the security level for the Control Panel. Ç10/25/99; 4:04:59 PM by PBS Çconfig.mainResponder.prefs.flControlPanel: if true, then the /controlPanel/ system website can be accessed. It's true by default. Ç8/15/99; 9:53:42 AM by DW Çconfig.mainresponder.prefs.flLogReopenHourly, if true, we close the log file every hour. It will be re-opened by the next log.add call. In our work with the 6.1 kernel, we've determined that for busy servers this helps Frontier's memory utilization significantly, and the cost of re-opening the file once an hour is relatively small. Ç8/15/99; 9:34:07 AM by DW ÇMake sure that scheduler tasks are installed. This is also handled in mainResponder.install, but I don't want to ask people to run this script to go to 6.1, so we check to see if they're defined and if they're not we link them in. Ç8/15/99; 8:26:14 AM by DW Çinitialize config.mainresponder.prefs.flArchiveDiscuss and discussArchiveFolder. ÇWed, Mar 10, 1999 at 2:34:19 PM by PBS ÇInitialize config.mainResponder.data. ÇInitialize config.mainResponder.data.searchQueue. ÇWed, Mar 10, 1999 at 2:19:48 PM by PBS ÇInitialize the config.mainresponder.search table. ÇSet config.mainResponder.prefs.flSearchEngine to false by default. ÇThis means that this machine is not, by default, a search engine server. ÇSet config.mainResponder.prefs.flLogMemAvail to false by default. ÇTue, Mar 9, 1999 at 4:12:13 PM by PBS ÇUse Frontier.getSubFolder rather than mainResponder.getFolder. ÇSat, Mar 20, 1999 at 4:48:37 PM by PBS ÇAdded flConvertToMacText pref. ÇOn Macs, convert incoming latin text to Mac. ÇOn Windows the pref has no effect. local (ps = string.popTrailing (system.verbs.builtins.Frontier.pathstring, file.getPathChar ())); // path string minus the trailing path character on suretable (adrtable) { if not defined (adrtable^) { new (tabletype, adrtable)}}; suretable (@config.mainresponder); bundle { //config.mainresponder.prefs suretable (@config.mainresponder.prefs); if not defined (config.mainresponder.prefs.baseUrl) { config.mainresponder.prefs.baseUrl = "http://127.0.0.1/"}; if not defined (config.mainresponder.prefs.backupFolder) { config.mainresponder.prefs.backupFolder = Frontier.getSubFolder ("/ops/backups/") - ps}; // 8/6/05; 10:30:54 AM by TAC if not defined (config.mainresponder.prefs.defaultDiscussRoot) { config.mainresponder.prefs.defaultDiscussRoot = "discuss"}; if not defined (config.mainresponder.prefs.defaultNewsRoot) { config.mainresponder.prefs.defaultNewsRoot = "default"}; if not defined (config.mainresponder.prefs.flAllowPublicSearchSubmissions) { //PBS 3/9/99 config.mainresponder.prefs.flAllowPublicSearchSubmissions = false}; if not defined (config.mainresponder.prefs.flBackupNightly) { config.mainresponder.prefs.flBackupNightly = false}; //PBS 11/23/99: now false by default if not defined (config.mainresponder.prefs.flDiscussStatsNightly) { Çconfig.mainresponder.prefs.flDiscussStatsNightly = true config.mainresponder.prefs.flDiscussStatsNightly = false}; //PBS 06/17/00: Now false by default for 6.2. if not defined (config.mainresponder.prefs.flArchiveDiscuss) { config.mainresponder.prefs.flArchiveDiscuss = false}; //PBS 11/23/99: now false by default if not defined (config.mainresponder.prefs.discussArchiveFolder) { config.mainresponder.prefs.discussArchiveFolder = Frontier.getSubFolder ("/ops/discussArchive/") - ps}; // 8/6/05; 10:30:54 AM by TAC if not defined (config.mainresponder.prefs.flControlPanel) { //PBS 10/25/99: pref for the /controlPanel/ site config.mainresponder.prefs.flControlPanel = true}; if not defined (config.mainresponder.prefs.flDebug) { config.mainresponder.prefs.flDebug = false}; if not defined (config.mainresponder.prefs.flKeepParamTable) { Çconfig.mainresponder.prefs.flKeepParamTable = true config.mainresponder.prefs.flKeepParamTable = false}; //PBS 06/17/00: Now false by default in 6.2. if not defined (config.mainresponder.prefs.flLog) { Çconfig.mainresponder.prefs.flLog = true config.mainresponder.prefs.flLog = false}; //PBS 06/17/00: HTTP logging now off by default in 6.2. if not defined (config.mainresponder.prefs.flLogMemavail) { config.mainresponder.prefs.flLogMemavail = false}; if not defined (config.mainresponder.prefs.flLogDatabaseOpens) { config.mainresponder.prefs.flLogDatabaseOpens = false}; //PBS 11/20/99: now false by default, no to logging database opens to the temp table if not defined (config.mainresponder.prefs.flLogReopenHourly) { config.mainresponder.prefs.flLogReopenHourly = false}; if not defined (config.mainresponder.prefs.flOpenAboutWindow) { config.mainresponder.prefs.flOpenAboutWindow = true}; if not defined (config.mainresponder.prefs.flBuildPagesInBackground) { config.mainresponder.prefs.flBuildPagesInBackground = false}; //PBS 11/20/99: now false by default, no to building pages in the background if not defined (config.mainresponder.prefs.flProfiling) { config.mainresponder.prefs.flProfiling = false}; if not defined (config.mainresponder.prefs.flSaveDatabasesEveryMinute) { config.mainresponder.prefs.flSaveDatabasesEveryMinute = true}; //PBS 11/20/99: save databases every minute is now true by default if not defined (config.mainResponder.prefs.flMembershipHashedCookies) { //PBS 06/22/00: true by default config.mainResponder.prefs.flMembershipHashedCookies = true}; if not defined (config.mainresponder.prefs.flSearchEngine) { config.mainresponder.prefs.flSearchEngine = false}; if not defined (config.mainresponder.prefs.flStats) { config.mainresponder.prefs.flStats = true}; if not defined (config.mainresponder.prefs.flSubscriptions) { config.mainresponder.prefs.flSubscriptions = false}; if not defined (config.mainresponder.prefs.hitsBetweenLogSaves) { config.mainresponder.prefs.hitsBetweenLogSaves = 100}; if not defined (config.mainresponder.prefs.flConvertToMacText) { //PBS 3/20/99 config.mainresponder.prefs.flConvertToMacText = true}; if not defined (config.mainresponder.prefs.logFolder) { config.mainresponder.prefs.logFolder = Frontier.getSubFolder ("/ops/logs/") - ps}; // 8/6/05; 10:30:54 AM by TAC if not defined (config.mainresponder.prefs.legalMacros) { new (tabletype, @config.mainresponder.prefs.legalMacros)}; if not defined (config.mainresponder.prefs.legalTags) { new (tabletype, @config.mainresponder.prefs.legalTags); config.mainresponder.prefs.legalTags.i = true; config.mainresponder.prefs.legalTags.pre = true}; if not defined (config.mainresponder.prefs.flAllowByIpOnly) { //AR 11/04/1999 config.mainresponder.prefs.flAllowByIpOnly = false}; if not defined (config.mainresponder.prefs.allowedIpAddresses) { //AR 11/04/1999 config.mainresponder.prefs.allowedIpAddresses = "127.0.0.1"}; if not defined (config.mainResponder.prefs.flUpdateNightly) { //PBS 11/16/99: update various gdbs every night config.mainResponder.prefs.flUpdateNightly = true}; //PBS 11/20/99: nightly updates now true by default if not defined (config.mainResponder.prefs.updateNightlyList) { //PBS 11/16/99: list of gdbs to update nightly config.mainResponder.prefs.updateNightlyList = {"Frontier.root", "mainResponder.root", "prefs.root"}}; // 6/16/05; 1:52:08 PM by TAC - removed manila.root if not defined (config.mainResponder.prefs.securityLevel) { //PBS 11/16/99: set up security level pref config.mainResponder.prefs.securityLevel = 0}; if not defined (config.mainResponder.prefs.flLogRootUpdates) { config.mainResponder.prefs.flLogRootUpdates = true}}; bundle { //config.mainresponder.urls local (localhost = "127.0.0.1"); suretable (@config.mainresponder.urls); bundle { //discuss urls local (basediscussurl = "http://" + localhost + "/htmlInterfaces/discussionGroup/"); if not defined (config.mainResponder.urls.discussEditInBrowser) { config.mainResponder.urls.discussEditInBrowser = basediscussurl + "edit/editInBrowser$"}; if not defined (config.mainResponder.urls.discussEditInFrontier) { config.mainResponder.urls.discussEditInFrontier = basediscussurl + "edit/editInFrontier$"}; if not defined (config.mainResponder.urls.discussEnclosureDownloader) { config.mainResponder.urls.discussEnclosureDownloader = basediscussurl + "enclosureDownloader$"}; if not defined (config.mainResponder.urls.discussEnclosureRPCer) { config.mainResponder.urls.discussEnclosureRPCer = basediscussurl + "enclosureRPCer$"}; if not defined (config.mainResponder.urls.discussEnclosureViewer) { config.mainResponder.urls.discussEnclosureViewer = basediscussurl + "raw/messages/"}; if not defined (config.mainResponder.urls.discussGetChangesFromWorkstation) { config.mainResponder.urls.discussGetChangesFromWorkstation = basediscussurl + "edit/getChangesFromWorkstation"}; if not defined (config.mainResponder.urls.discussHomePage) { config.mainResponder.urls.discussHomePage = basediscussurl}; if not defined (config.mainResponder.urls.discussMsgReader) { config.mainResponder.urls.discussMsgReader = basediscussurl + "msgReader$"}; if not defined (config.mainResponder.urls.discussNewThread) { config.mainResponder.urls.discussNewThread = basediscussurl + "edit/newThread$"}; if not defined (config.mainResponder.urls.discussPostEditedMessage) { config.mainResponder.urls.discussPostEditedMessage = basediscussurl + "edit/postEditedMsg"}; if not defined (config.mainResponder.urls.discussPostMessage) { config.mainResponder.urls.discussPostMessage = basediscussurl + "edit/postMsg"}; if not defined (config.mainResponder.urls.discussTopics) { config.mainResponder.urls.discussTopics = basediscussurl + "topics"}}; bundle { //resources urls local (baseresourcesurl = "http://" + localhost + "/resources/"); if not defined (config.mainresponder.urls.frontierLogo) { config.mainresponder.urls.frontierLogo = baseresourcesurl + "logos/logoWinNT.gif"}; if not defined (config.mainresponder.urls.icons) { config.mainresponder.urls.icons = baseresourcesurl + "icons/"}; if not defined (config.mainresponder.urls.imageCowSkull) { config.mainresponder.urls.imageCowSkull = baseresourcesurl + "userlandIcons/skull"}}; bundle { //member urls local (basememberurl = "http://" + localhost + "/htmlInterfaces/logon/"); if not defined (config.mainResponder.urls.memberCheckMail) { config.mainResponder.urls.memberCheckMail = basememberurl + "checkYourMail"}; if not defined (config.mainResponder.urls.memberHome) { config.mainResponder.urls.memberHome = basememberurl + "welcome"}; if not defined (config.mainResponder.urls.memberLogoff) { config.mainResponder.urls.memberLogoff = basememberurl + "logoffConfirm"}; if not defined (config.mainResponder.urls.memberLogon) { config.mainResponder.urls.memberLogon = basememberurl}}; bundle { //misc urls if not defined (config.mainResponder.urls.newsHome) { config.mainResponder.urls.newsHome = "http://" + localhost + "/"}; if not defined (config.mainResponder.urls.searchHome) { config.mainResponder.urls.searchHome = "http://" + localhost + "/search/"}; local (basepeopleurl = "http://" + localhost + "/htmlInterfaces/people/"); if not defined (config.mainResponder.urls.prefsHome) { config.mainResponder.urls.prefsHome = basepeopleurl + "prefs/"}; if not defined (config.mainResponder.urls.profilesHome) { config.mainResponder.urls.profilesHome = basepeopleurl + "profiles/"}}}; bundle { //config.mainresponder.callbacks suretable (@config.mainresponder.callbacks); suretable (@config.mainresponder.callbacks.addMessage); suretable (@config.mainresponder.callbacks.controlAccess); suretable (@config.mainresponder.callbacks.editMessage); suretable (@config.mainresponder.callbacks.lightweightMacros); suretable (@config.mainresponder.callbacks.nightlyBackup); suretable (@config.mainResponder.callbacks.searchEngineSecurity); //PBS 3/9/99 suretable (@config.mainResponder.callbacks.subscriptionsServer); ÇAdd search engine callbacks. if not defined (config.mainResponder.callbacks.addMessage.index) { script.newScriptObject ("mainResponder.search.client.addMessageCallback (adrNewMsg)", @config.mainResponder.callbacks.addMessage.index); script.compile (@config.mainResponder.callbacks.addMessage.index)}; if not defined (config.mainResponder.callbacks.editMessage.index) { script.newScriptObject ("mainResponder.search.client.addMessageCallback (adrEditedMsg)", @config.mainResponder.callbacks.editMessage.index); script.compile (@config.mainResponder.callbacks.editMessage.index)}; ÇAdd security callback if not defined (config.mainResponder.callbacks.controlAccess.blockByIP) { //AR 11/04/1999 script.newScriptObject ("mainResponder.security.blockHttpByIP ()", @config.mainResponder.callbacks.controlAccess.blockByIP)}; ÇAdd pathEvaluation callback for the Admin site if not defined (config.mainresponder.callbacks.pathEvaluation) { //JES 8/18/02 new (tableType, @config.mainresponder.callbacks.pathEvaluation)}; if not defined (config.mainresponder.callbacks.pathEvaluation.frontierAdminSite) { //JES 8/18/02 config.mainresponder.callbacks.pathEvaluation.frontierAdminSite = @mainResponder.adminSite.callbacks.pathEvaluation}}; bundle { //config.mainresponder.data suretable (@config.mainresponder.data); };Çsuretable (@config.mainresponder.data.searchQueue) bundle { //config.mainresponder.domains suretable (@config.mainresponder.domains); if sizeof (config.mainresponder.domains) == 0 { config.mainresponder.domains.default = Frontier.getSubFolder ("/www/")}}; bundle { //config.mainresponder.globals suretable (@config.mainresponder.globals); if not defined (config.mainresponder.globals.allowDirectoryListings) { //PBS 11/19/99: default is now false config.mainresponder.globals.allowDirectoryListings = false}; if not defined (config.mainresponder.globals.allowScriptListings) { config.mainresponder.globals.allowScriptListings = false}; if not defined (config.mainresponder.globals.allowScriptsToRun) { config.mainresponder.globals.allowScriptsToRun = false}; if not defined (config.mainresponder.globals.defaultDirectoryItems) { config.mainresponder.globals.defaultDirectoryItems = {"default.html", "default", "index.html", "index"}}; if not defined (config.mainresponder.globals.defaultMembershipGroup) { config.mainresponder.globals.defaultMembershipGroup = "default"}; if not defined (config.mainresponder.globals.flRender) { config.mainresponder.globals.flRender = false}; if not defined (config.mainresponder.globals.flRenderingCache) { config.mainresponder.globals.flRenderingCache = false}}; bundle { //config.mainresponder.search suretable (@config.mainresponder.search); if not defined (config.mainresponder.search.domain) { config.mainresponder.search.domain = "127.0.0.1"}; if not defined (config.mainresponder.search.port) { config.mainresponder.search.port = 80}; if not defined (config.mainresponder.search.addToIndex) { config.mainresponder.search.addToIndex = "mainResponder.search.index"}; if not defined (config.mainresponder.search.restartIndex) { config.mainresponder.search.restartIndex = "mainResponder.search.restartIndex"}; if not defined (config.mainresponder.search.sites) { suretable (@config.mainresponder.search.sites)}; if not defined (config.mainResponder.search.prefs) { new (tableType, @config.mainResponder.search.prefs)}; if not defined (config.mainResponder.search.prefs.flLogEnabled) { config.mainResponder.search.prefs.flLogEnabled = false}; if not defined (config.mainResponder.search.prefs.flLogSearches) { config.mainResponder.search.prefs.flLogSearches = true}; if not defined (config.mainResponder.search.prefs.flLogIndex) { config.mainResponder.search.prefs.flLogIndex = true}; if not defined (config.mainResponder.search.prefs.flLogNoIndex) { config.mainResponder.search.prefs.flLogNoIndex = true}; if not defined (config.mainResponder.search.prefs.flStoreFullText) { config.mainResponder.search.prefs.flStoreFullText = false}; if not defined (config.mainResponder.search.prefs.minutesBetweenIndexes) { config.mainResponder.search.prefs.minutesBetweenIndexes = 60}; if not defined (config.mainResponder.search.prefs.hoursToCacheSearchResults) { config.mainResponder.search.prefs.hoursToCacheSearchResults = 24}}; bundle { //config.mainresponder.stats if not defined (config.mainResponder.stats) { new (tabletype, @config.mainResponder.stats)}; if not defined (config.mainResponder.stats.ctDiscussionGroupReads) { config.mainResponder.stats.ctDiscussionGroupReads = 0}}; bundle { //port 5335 listener if not defined (user.inetd.config.http2) { user.inetd.config.http2 = user.inetd.config.http; user.inetd.config.http2.port = 5336; if user.inetd.config.http2.startup { try { inetd.startOne (@user.inetd.config.http2)}}}}; try { //register admin site callbacks if not defined (user.rootUpdates.callbacks) { rootUpdates.init ()}; if not defined (user.rootUpdates.callbacks.afterInstallPart.mainResponder) { user.rootUpdates.callbacks.afterInstallPart.mainResponder = @mainResponder.adminSite.callbacks.logRootUpdate}}; bundle { //miscellaneous clean-up if not defined (system.environment.isRadio) { system.environment.isRadio = false}}; Çbundle //hook in to user.scheduler Çif not defined (user.scheduler.everyMinute.nirvanaServer) Çuser.scheduler.everyMinute.nirvanaServer = @mainresponder.background.everyminute Çif not defined (user.scheduler.hourly.nirvanaServer) Çuser.scheduler.hourly.nirvanaServer = @mainresponder.background.everyHour Çif not defined (user.scheduler.overnight.nirvanaServer) Çuser.scheduler.overnight.nirvanaServer = @mainresponder.background.everynight return (@config.mainResponder)}; Çbundle //test code Çlocal (ticks = clock.ticks ()) Çfor i = 1 to 100 Çinit () Çdialog.notify ((double (clock.ticks ()) - ticks) / 60 + " secs.") \ No newline at end of file |
|
From: creedon <icr...@us...> - 2005-08-13 19:14:42
|
Update of /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/Frontier In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7349 Modified Files: installApp Log Message: store f as relative path, more portable in that one can move folder around with less hassle Index: installApp =================================================================== RCS file: /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/Frontier/installApp,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** installApp 13 Jun 2005 23:31:10 -0000 1.1 --- installApp 13 Aug 2005 19:14:35 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:scpt:system.verbs.builtins.Frontier.installApp ! on installApp (appRoot, flRunStartupScript = true) { ÇChanges Ç6/13/05; 4:26:18 PM by TAC Çmoved from userland table Ç11/28/04; 7:51:35 PM by TAC Çadded flRunStartupScript Ç10/26/99; 6:18:10 PM by PBS Çcreated ÇInstall one app in the Guest Databases/apps/ folder. ÇappRoot is the name of the gdb, as in mainResponder.root or manila.root. ÇThis script: Ç1) Open the gdb if it's not open. Ç2) Creates an entry in user.databases. Ç3) Runs the startup script. local (f = Frontier.getSubFolder ("apps") + appRoot); if not defined ([f]) { fileMenu.open (f, true)}; //open it hidden ÇAdd an entry to the user.databases table. local (adrTable = @user.databases.[appRoot]); new (tableType, adrTable); adrTable^.f = f; adrTable^.openOnStartup = true; adrTable^.runStartupScript = true; adrTable^.supportsSubscribe = false; if flRunStartupScript { // 11/28/04; 7:52:05 PM by TAC - run the startup script adrStartupScript = @[f].["#startup"]; if defined (adrStartupScript^) { adrStartupScript^ ()}}; //run the startup script return (true)} \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:scpt:system.verbs.builtins.Frontier.installApp ! on installApp (appRoot, flRunStartupScript = true) { ÇChanges Ç7/17/05; 5:35:23 PM by TAC Çstore f as relative path, more portable in that one can move folder around with less hassle Ç6/13/05; 4:26:18 PM by TAC Çmoved from userland table Ç11/28/04; 7:51:35 PM by TAC Çadded flRunStartupScript Ç10/26/99; 6:18:10 PM by PBS Çcreated ÇInstall one app in the Guest Databases/apps/ folder. ÇappRoot is the name of the gdb, as in mainResponder.root or manila.root. ÇThis script: Ç1) Open the gdb if it's not open. Ç2) Creates an entry in user.databases. Ç3) Runs the startup script. local (f = Frontier.getSubFolder ("apps") + appRoot); if not defined ([f]) { fileMenu.open (f, true)}; //open it hidden ÇAdd an entry to the user.databases table. local (adrTable = @user.databases.[appRoot]); new (tableType, adrTable); adrTable^.f = file.getPathChar () + (f - Frontier.pathString); adrTable^.openOnStartup = true; adrTable^.runStartupScript = true; adrTable^.supportsSubscribe = false; if flRunStartupScript { // 11/28/04; 7:52:05 PM by TAC - run the startup script adrStartupScript = @[f].["#startup"]; if defined (adrStartupScript^) { adrStartupScript^ ()}}; //run the startup script return (true)} \ No newline at end of file |
|
From: creedon <icr...@us...> - 2005-08-13 19:13:13
|
Update of /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/file In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7137 Modified Files: type creator Log Message: workaround problem kernel has with Mac OS X applications that are packagkes, they have a creator/type code and they are a folder; code cribbed from Sean Elfstrom's <sel...@im...> DuckTape Tool v0.5 Index: type =================================================================== RCS file: /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/file/type,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** type 26 Mar 2005 19:42:46 -0000 1.1.1.1 --- type 13 Aug 2005 19:13:05 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:scpt:system.verbs.builtins.file.type ! on type (path) { kernel (file.type)} \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:scpt:system.verbs.builtins.file.type ! on type (path) { ÇChanges Ç8/8/05; 4:24:26 PM by TAC Çworkaround problem kernel has with Mac OS X applications that are packagkes, they have a type code and they are a folder; code cribbed from Sean Elfstrom's <sel...@im...> DuckTape Tool v0.5 on kernelCall (path) { kernel (file.type)}; if system.environment.isCarbon { // it might be a package if file.isFolder (path) { try { // in case of error fallback to kernel return (string4 (string.mid (file.readWholeFile (path + "Contents:PkgInfo"), 1, 4)))}}}; kernelCall (path)} \ No newline at end of file Index: creator =================================================================== RCS file: /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/file/creator,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** creator 26 Mar 2005 19:42:45 -0000 1.1.1.1 --- creator 13 Aug 2005 19:13:05 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:scpt:system.verbs.builtins.file.creator ! on creator (path) { kernel (file.creator)} \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:scpt:system.verbs.builtins.file.creator ! on creator (path) { ÇChanges Ç8/8/05; 4:15:09 PM by TAC Çworkaround problem kernel has with Mac OS X applications that are packagkes, they have a creator code and they are a folder; code cribbed from Sean Elfstrom's <sel...@im...> DuckTape Tool v0.5 on kernelCall (path) { kernel (file.creator)}; if system.environment.isCarbon { // it might be a package if file.isFolder (path) { try { // in case of error fallback to kernel return (string4 (string.mid (file.readWholeFile (path + "Contents:PkgInfo"), 5, 4)))}}}; kernelCall (path)} \ No newline at end of file |
|
From: creedon <icr...@us...> - 2005-08-10 18:40:22
|
Update of /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/Frontier/tools/data/windowTypes/outlinerFile In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20849 Modified Files: save Log Message: 8/10/05; 6:27:55 AM by DW Added code that pops all the hoists before saving, then restores them. Saving with something hoisted was a disaster. It only saves the hoisted material, the rest is lost. Reported on the opml-support list by David Wilkinson. http://groups.yahoo.com/group/opmlsupport/message/873 Index: save =================================================================== RCS file: /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/Frontier/tools/data/windowTypes/outlinerFile/save,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** save 26 Mar 2005 19:42:52 -0000 1.1.1.1 --- save 10 Aug 2005 18:40:13 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:scpt:system.verbs.builtins.Frontier.tools.data.windowTypes.outlinerFile.save ! on save (adr, flClosing=false) { ÇChanges: Ç6/25/02; 1:06:47 AM by JES ÇSet the title attribute of the window after it's been saved. The title attribute is used when creating bookmarks for disk-based outline files. Ç3/26/02; 6:30:59 PM by JES ÇIf the window has an adrCloud attribute, add a <cloud> element to the OPML file. ÇWe make a local copy of the cloudData table, rename server to domain. ÇIf the window has a requestNotificationProcedure attribute, use its value for the registerProcedure cloudData sub-element. Ç8/9/01; 1:11:41 AM by JES ÇPreserve line endings for non-OPML files. ÇOn MacOS X, default to LF for the line ending. local (atts); window.attributes.getAll (@atts, adr); local (f = window.getTitle (adr)); if not (string.lower (f) endsWith (".opml")) { if not (f contains ".") { f = f + ".opml"}}; on saveFile () { try { msg ("Saving \"" + f + "\"."); //Monday, August 21, 2000 at 5:47:45 AM by DW atts.title = file.fileFromPath (f); window.setTitle (adr, atts.title); local (xmlText); if defined (atts.flOutlineDocument) { //PBS 09/15/00: it may be raw XML if not (atts.flOutlineDocument) { xmlText = string (adr^); //raw XML is just string of the outline if defined (atts.lineEnding) { //use the same line ending as the original document xmlText = string.replaceAll (xmlText, "\r", atts.lineEnding)} else { //add linefeeds if this is Windows or change to LF's if MacOS X bundle { if system.environment.isWindows { xmlText = string.replaceAll (xmlText, "\r", "\r\n")}; if system.environment.isCarbon { xmlText = string.replaceAll (xmlText, "\r", "\n")}}}; if defined (atts.fileCreator) { //02/21/2001 JES: save with recorded type/creator file.writeWholeFile (f, xmlText, atts.fileType, atts.fileCreator)} else { file.writeWholeFile (f, xmlText, 'TEXT', 'Radu')}}}; if xmlText == nil { //if it's an outlineDocument, xmlText is not yet set local (cloud, adrcloud); if defined (atts.adrCloud) { cloud = atts.adrCloud^; if not defined (cloud.domain) { table.rename (@cloud.server, "domain")}; if defined (atts.requestNotificationProcedure) { cloud.registerProcedure = atts.requestNotificationProcedure}; adrcloud = @cloud}; xmlText = op.outlineToXml (adr, adrcloud:adrcloud); //convert to outlineDocument bundle { //01/23/01 JES: support style sheet declarations if defined (atts.xmlHeaders) { local (ix = string.patternMatch ("?>", xmlText) + 3); xmlText = string.insert (atts.xmlHeaders, xmlText, ix)}}; if defined (atts.lineEnding) { //02/21/2001 JES: save the file with the recorded line-endings xmlText = string.replaceAll (xmlText, "\r", atts.lineEnding)}; if system.environment.isMac { //12/31/00 JES: convert Mac text to latin xmlText = string.macToLatin (xmlText)}; if defined (atts.fileCreator) { //02/21/2001 JES: save with recorded type/creator file.writeWholeFile (f, xmlText, atts.fileType, atts.fileCreator)} else { file.writeWholeFile (f, xmlText, 'OPML', 'Radu')}}; //PBS 09/21/00: save with Mac codes window.attributes.setOne ("f", f, adr); window.attributes.setOne ("title", atts.title); msg (""); return (true)} else { window.attributes.setOne ("savingError", tryError, adr); dialog.alert (tryError); return (false)}}; if defined (atts.f) { //save files whose path is already known f = atts.f; if f != "" { return (saveFile ())}}; if not (file.putFileDialog ("Save as:", @f)) { return (false)}; //prevent other callbacks from running local (defaultExtension = ".opml"); local (flOutlineDocument = false); if defined (atts.flOutlineDocument) { //PBS 12/26/00: check extension only with OPML documents flOutlineDocument = atts.flOutlineDocument} else { //it's a new document, so it's opml flOutlineDocument = true}; if flOutlineDocument { //ensure .opml extension if not (string.lower (f) endsWith defaultExtension) { f = f + defaultExtension}} else { //PBS 12/26/00: if no extension, use .txt extension local (fname = file.fileFromPath (f)); if not (fname contains ".") { f = f + ".txt"}}; return (saveFile ()); return (true)}; Çbundle //debugging Çsave (window.frontMost (), false) \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:scpt:system.verbs.builtins.Frontier.tools.data.windowTypes.outlinerFile.save ! on save (adr, flClosing=false) { ÇChanges: Ç8/10/05; 6:27:55 AM by DW ÇAdded code that pops all the hoists before saving, then restores them. ÇSaving with something hoisted was a disaster. It only saves the hoisted material, the rest is lost. Reported on the opml-support list by David Wilkinson. Çhttp://groups.yahoo.com/group/opmlsupport/message/873 Ç6/13/05; 2:31:51 PM by DW ÇIf it's the OPML editor, call back, so we can do an immediate scan of the folder if it's in the www folder. Makes for quicker upstreaming. It's done within a try so there's no harm if it's not present. Ç6/25/02; 1:06:47 AM by JES ÇSet the title attribute of the window after it's been saved. The title attribute is used when creating bookmarks for disk-based outline files. Ç3/26/02; 6:30:59 PM by JES ÇIf the window has an adrCloud attribute, add a <cloud> element to the OPML file. ÇWe make a local copy of the cloudData table, rename server to domain. ÇIf the window has a requestNotificationProcedure attribute, use its value for the registerProcedure cloudData sub-element. Ç8/9/01; 1:11:41 AM by JES ÇPreserve line endings for non-OPML files. ÇOn MacOS X, default to LF for the line ending. local (atts); window.attributes.getAll (@atts, adr); local (f = window.getTitle (adr)); if not (string.lower (f) endsWith (".opml")) { if not (f contains ".") { f = f + ".opml"}}; on saveFile () { try { msg ("Saving \"" + f + "\"."); //Monday, August 21, 2000 at 5:47:45 AM by DW atts.title = file.fileFromPath (f); window.setTitle (adr, atts.title); local (xmlText); if defined (atts.flOutlineDocument) { //PBS 09/15/00: it may be raw XML if not (atts.flOutlineDocument) { xmlText = string (adr^); //raw XML is just string of the outline if defined (atts.lineEnding) { //use the same line ending as the original document xmlText = string.replaceAll (xmlText, "\r", atts.lineEnding)} else { //add linefeeds if this is Windows or change to LF's if MacOS X bundle { if system.environment.isWindows { xmlText = string.replaceAll (xmlText, "\r", "\r\n")}; if system.environment.isCarbon { xmlText = string.replaceAll (xmlText, "\r", "\n")}}}; if defined (atts.fileCreator) { //02/21/2001 JES: save with recorded type/creator file.writeWholeFile (f, xmlText, atts.fileType, atts.fileCreator)} else { file.writeWholeFile (f, xmlText, 'TEXT', 'Radu')}}}; if xmlText == nil { //if it's an outlineDocument, xmlText is not yet set local (cloud, adrcloud); if defined (atts.adrCloud) { cloud = atts.adrCloud^; if not defined (cloud.domain) { table.rename (@cloud.server, "domain")}; if defined (atts.requestNotificationProcedure) { cloud.registerProcedure = atts.requestNotificationProcedure}; adrcloud = @cloud}; bundle { //get xmltext, got more complicated, 8/10/05; 6:29:23 AM by DW local (stack = {}, cursor, olddisplay = op.setdisplay (false), i); loop { stack = stack + {op.getcursor ()}; if not op.dehoist () { break}}; xmlText = op.outlineToXml (adr, adrcloud:adrcloud); //convert to OPML for i = sizeof (stack) downto 2 { local (cursor = stack [i]); op.setcursor (cursor); op.hoist ()}; op.setdisplay (olddisplay)}; bundle { //01/23/01 JES: support style sheet declarations if defined (atts.xmlHeaders) { local (ix = string.patternMatch ("?>", xmlText) + 3); xmlText = string.insert (atts.xmlHeaders, xmlText, ix)}}; if defined (atts.lineEnding) { //02/21/2001 JES: save the file with the recorded line-endings xmlText = string.replaceAll (xmlText, "\r", atts.lineEnding)}; if system.environment.isMac { //12/31/00 JES: convert Mac text to latin xmlText = string.macToLatin (xmlText)}; if defined (atts.fileCreator) { //02/21/2001 JES: save with recorded type/creator file.writeWholeFile (f, xmlText, atts.fileType, atts.fileCreator)} else { file.writeWholeFile (f, xmlText, 'OPML', 'Radu')}}; //PBS 09/21/00: save with Mac codes window.attributes.setOne ("f", f, adr); window.attributes.setOne ("title", atts.title); msg (""); bundle { //call back if it's the OPML editor, 6/13/05; 2:34:00 PM by DW if defined (system.environment.isOpmlEditor) { if system.environment.isOpmlEditor { try { dotOpmlSuite.fileSaveCallback (f)}}}}; return (true)} else { window.attributes.setOne ("savingError", tryError, adr); dialog.alert (tryError); return (false)}}; if defined (atts.f) { //save files whose path is already known f = atts.f; if f != "" { return (saveFile ())}}; if not (file.putFileDialog ("Save as:", @f)) { return (false)}; //prevent other callbacks from running local (defaultExtension = ".opml"); local (flOutlineDocument = false); if defined (atts.flOutlineDocument) { //PBS 12/26/00: check extension only with OPML documents flOutlineDocument = atts.flOutlineDocument} else { //it's a new document, so it's opml flOutlineDocument = true}; if flOutlineDocument { //ensure .opml extension if not (string.lower (f) endsWith defaultExtension) { f = f + defaultExtension}} else { //PBS 12/26/00: if no extension, use .txt extension local (fname = file.fileFromPath (f)); if not (fname contains ".") { f = f + ".txt"}}; return (saveFile ()); return (true)}; bundle { //debugging save (@system.temp.windowTypes.windows.["0000008"].window, false)} \ No newline at end of file |
|
From: creedon <icr...@us...> - 2005-08-07 23:25:05
|
Update of /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/Frontier/tools/windowTypes/callbacks In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14259 Modified Files: saveWindow Log Message: adr defined as parameter but not used in script, changed occurances of adrWindow in script to adr Index: saveWindow =================================================================== RCS file: /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/Frontier/tools/windowTypes/callbacks/saveWindow,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** saveWindow 26 Mar 2005 19:42:53 -0000 1.1.1.1 --- saveWindow 7 Aug 2005 23:24:57 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:scpt:system.verbs.builtins.Frontier.tools.windowTypes.callbacks.saveWindow ! on saveWindow (adr, flRunnable) { if adrwindow == nil { adrwindow = window.frontmost ()}; local (windowType); if window.attributes.getOne ("type", @windowType, adrwindow) { local (adrWindowType); if Frontier.tools.windowTypes.findWindowType (windowType, @adrWindowType, adrwindow) { adrscript = @adrWindowType^.saveWindow; if defined (adrscript^) { return (adrscript^ (adrwindow, flRunnable))}}}; return (true)} //default behavior \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:scpt:system.verbs.builtins.Frontier.tools.windowTypes.callbacks.saveWindow ! on saveWindow (adr, flRunnable) { ÇChanges Ç8/4/05; 11:44:07 AM by TAC Çadr defined as parameter but not used in script, changed occurances of adrWindow in script to adr if adr == nil { adr = window.frontmost ()}; local (windowType); if window.attributes.getOne ("type", @windowType, adr) { local (adrWindowType); if Frontier.tools.windowTypes.findWindowType (windowType, @adrWindowType, adr) { adrscript = @adrWindowType^.saveWindow; if defined (adrscript^) { return (adrscript^ (adr, flRunnable))}}}; return (true)} //default behavior \ No newline at end of file |
|
From: creedon <icr...@us...> - 2005-08-07 23:19:43
|
Update of /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/webserver In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13439 Modified Files: init Log Message: user.webserver.prefs.type2MIME uses tableCopyNewContents Index: init =================================================================== RCS file: /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/webserver/init,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** init 28 Jul 2005 06:31:43 -0000 1.4 --- init 7 Aug 2005 23:19:34 -0000 1.5 *************** *** 1,3 **** FrontierVcsFile:1:scpt:system.verbs.builtins.webserver.init ! ÇChanges Ç7/27/05; 6:07:04 PM by TAC Çuser.webserver.prefs.mimeTypes uses tableCopyNewContents Çuser.webserver.responders was only copying new items when the table was first created, now copies each init Çadded user.webserver.prefs.MIME2Binary Ç7/14/05; 12:29:45 AM by TAC Çuser.webserver.responders init now uses tableCopyNewContents Çadded tableCopyNewContents handler Çadded user.inetd.config.http3, edit Manila sites Çmoved port config for Mac OS X into user.inetd.config.http init so it is only done once. it was blowing over settings the user may have put in Ç6/15/05; 12:55:10 PM by TAC Çadded port settings for Mac OS X Ç9/19/02; 2:28:50 AM by JES ÇInitialize the port 5336 listener. Ç8/21/02; 9:33:34 PM by JES ÇInitialize the commonLog prefs sub-table. Ç11/5/99; 7:15:29 PM by AR ÇSet up user.webserver.postFilters.domainStats. ÇSet up user.webserver.prefs.flDomainStats. Ç10/1/98; 6:34:12 PM by DW Çno longer expects certain responders to be installed Çno longer creates the log file for the commonLog postfilter Çno longer creates user.webserver.utilities if it doesn't exist Ç12/16/98; 5:36:45 PM by DW Çroll-in of features from mainResponder project Çuser.webserver.stats and user.webserver.prefs.flStats Ç3/19/99; 2:11:09 PM by PBS ÇNew pref: user.webserver.prefs.flWaitDuringStartup. ÇDefault is true. If true, Frontier waits to handle incoming http requests while starting up. ÇIt waits by looping in webserver.server until Frontier has started up. ÇPeople running Frontier behind IIS should set this to false, or else Frontier may hang during startup. ÇEverybody else should set it to true. on tableCopyNewContents (sourceTableAddress, destinationTableAddress) { // 7/3/05; 9:21:16 AM by TAC local (adr); for adr in sourceTableAddress { if defined (destinationTableAddress^.[nameOf (adr^)]) { continue}; if not (table.copy (adr, destinationTableAddress)) { return (false)}}; return (true)}; bundle { //make sure inetd is set up inetd.init (); //this must be done before webserver will work. if not defined (user.inetd.config.http) { user.inetd.config.http = webserver.data.inetd.config.http; if system.environment.isCarbon { // 6/15/05; 12:54:55 PM by TAC user.inetd.config.http.port = 8080; user.inetd.config.http.apparentPort = 80}}; if not defined (user.inetd.config.http2) { user.inetd.config.http2 = webserver.data.inetd.config.http2}; if not defined (user.inetd.config.http3) { user.inetd.config.http3 = webserver.data.inetd.config.http3}}; bundle { //create top-level tables of user.webserver if not defined (user.webserver) { new (tableType, @user.webserver)}; if not defined (user.webserver.prefs) { new (tableType, @user.webserver.prefs)}; if not defined (user.webserver.callbacks) { new (tableType, @user.webserver.callbacks)}; if not defined (user.webserver.callbacks.filterRequest) { new (tableType, @user.webserver.callbacks.filterRequest)}; if not defined (user.webserver.callbacks.handleRequest) { new (tableType, @user.webserver.callbacks.handleRequest)}; if not defined (user.webserver.callbacks.filterPage) { new (tableType, @user.webserver.callbacks.filterPage)}; if not defined (user.webserver.cgis) { new (tableType, @user.webserver.cgis)}; Çif not defined (user.webserver.utilities) Çnew (tableType, @user.webserver.utilities) if not defined (user.webserver.actions) { user.webserver.actions= webserver.data.actions}; Çif not defined (user.webserver.cgis.samples) Çuser.webserver.cgis.samples = webserver.data.cgis.samples if not defined (user.webserver.preFilters) { user.webserver.preFilters = webserver.data.preFilters}; if not defined (user.webserver.postFilters) { user.webserver.postFilters = webserver.data.postFilters}}; bundle { //copy prefs from webserver table if not defined (user.webserver.prefs.fileNotFoundPage) { user.webserver.prefs.fileNotFoundPage = webserver.data.prefs.fileNotFoundPage}; if not defined (user.webserver.prefs.errorPage) { user.webserver.prefs.errorPage = webserver.data.prefs.errorPage}; bundle { // user.webserver.prefs.mimeTypes if not defined (user.webserver.prefs.mimeTypes) { new (tableType, @user.webserver.prefs.mimeTypes)}; tableCopyNewContents (@webserver.data.prefs.mimeTypes, @user.webserver.prefs.mimeTypes)}; if not defined (user.webserver.prefs.ext2MIME) { user.webserver.prefs.ext2MIME = webserver.data.prefs.ext2MIME}; if not defined (user.webserver.prefs.type2MIME) { user.webserver.prefs.type2MIME = webserver.data.prefs.type2MIME}; if not defined (user.webserver.prefs.MIME2icon) { user.webserver.prefs.MIME2icon = webserver.data.prefs.MIME2icon}; if not defined (user.webserver.prefs.MIME2name) { user.webserver.prefs.MIME2name = webserver.data.prefs.MIME2name}; bundle { // user.webserver.prefs.MIME2Binary if not defined (user.webserver.prefs.MIME2Binary) { new (tableType, @user.webserver.prefs.MIME2Binary)}; tableCopyNewContents (@webserver.data.prefs.MIME2Binary, @user.webserver.prefs.MIME2Binary)}}; bundle { //set the prefs values if not defined (user.webserver.prefs.chunkSize) { user.webserver.prefs.chunkSize = 24}; if not defined (user.webserver.prefs.fldebug) { user.webserver.prefs.fldebug = false}; if not defined (user.webserver.prefs.hostName) { user.webserver.prefs.hostName = ""}; if not defined (user.webserver.prefs.serverAppID) { user.webserver.prefs.serverAppID = ""}; if not defined (user.webserver.prefs.websiteFolderPath) { user.webserver.prefs.websiteFolderPath = ""}; if not defined (user.webserver.prefs.fluseDNS) { user.webserver.prefs.fluseDNS = false}; if not defined (user.webserver.prefs.flWaitDuringStartup) { //PBS 3/19/99 user.webserver.prefs.flWaitDuringStartup = true}; if not defined (user.webserver.prefs.defaultResponder) { user.webserver.prefs.defaultResponder = "default"}; if not defined (user.webserver.prefs.flStats) { //6.0 user.webserver.prefs.flStats = true}; if not defined (user.webserver.prefs.flDomainStats) { //AR 11/05/1999 user.webserver.prefs.flDomainStats = true}; //PBS 11/23/99: now true if not defined (user.webserver.prefs.commonLog) { new (tableType, @user.webserver.prefs.commonLog)}; if not defined (user.webserver.prefs.commonLog.flIncludeReferers) { user.webserver.prefs.commonLog.flIncludeReferers = false}; if not defined (user.webserver.prefs.commonLog.flIncludeUserAgents) { user.webserver.prefs.commonLog.flIncludeUserAgents = false}; if not defined (user.webserver.prefs.commonLog.flIncludeVirtualHosts) { user.webserver.prefs.commonLog.flIncludeVirtualHosts = false}; if not defined (user.webserver.prefs.commonLog.flUseCommonLogDateFormat) { user.webserver.prefs.commonLog.flUseCommonLogDateFormat = false}}; bundle { // user.webserver.responders if not defined (user.webserver.responders) { new (tableType, @user.webserver.responders)}; tableCopyNewContents (@webserver.data.responders , @user.webserver.responders)}; bundle { //6.0, initialize stats if not defined (user.webserver.stats) { new (tabletype, @user.webserver.stats)}; user.webserver.stats.maxConnections = 0; user.webserver.stats.maxMemAvail = 0; user.webserver.stats.minMemAvail = infinity; user.webserver.stats.hits = 0; user.webserver.stats.upSince = clock.now ()}; Çbundle // set up log for commonLog postFilter Çif (not defined (user.webserver.prefs.logFile)) or (not file.exists (user.webserver.prefs.logFile)) Çuser.webserver.prefs.logFile = frontier.pathstring + "Logs" + file.getPathChar () + "Web Server Log.txt" Çfile.sureFilePath (user.webserver.prefs.logFile) Çif not file.exists (user.webserver.prefs.logFile) Çfile.new (user.webserver.prefs.logFile) Çif (sys.os () == osMacOS) Çfile.setType (user.webserver.prefs.logFile, 'TEXT') Çfile.setCreator (user.webserver.prefs.logFile, 'R*ch') bundle { //AR 11/5/99: set up domainStats postFilter if not defined (user.webserver.postfilters.domainStats) { script.newScriptObject ("on domainStats (pta)" + cr + tab + "return (webserver.postFilters.domainStats (pta))", @user.webserver.postFilters.domainStats)}}; return (true) \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:scpt:system.verbs.builtins.webserver.init ! ÇChanges Ç8/3/05; 10:53:06 PM by TAC Çuser.webserver.prefs.type2MIME uses tableCopyNewContents Ç7/27/05; 6:07:04 PM by TAC Çuser.webserver.prefs.mimeTypes uses tableCopyNewContents Çuser.webserver.responders was only copying new items when the table was first created, now copies each init Çadded user.webserver.prefs.MIME2Binary Ç7/14/05; 12:29:45 AM by TAC Çuser.webserver.responders init now uses tableCopyNewContents Çadded tableCopyNewContents handler Çadded user.inetd.config.http3, edit Manila sites Çmoved port config for Mac OS X into user.inetd.config.http init so it is only done once. it was blowing over settings the user may have put in Ç6/15/05; 12:55:10 PM by TAC Çadded port settings for Mac OS X Ç9/19/02; 2:28:50 AM by JES ÇInitialize the port 5336 listener. Ç8/21/02; 9:33:34 PM by JES ÇInitialize the commonLog prefs sub-table. Ç11/5/99; 7:15:29 PM by AR ÇSet up user.webserver.postFilters.domainStats. ÇSet up user.webserver.prefs.flDomainStats. Ç10/1/98; 6:34:12 PM by DW Çno longer expects certain responders to be installed Çno longer creates the log file for the commonLog postfilter Çno longer creates user.webserver.utilities if it doesn't exist Ç12/16/98; 5:36:45 PM by DW Çroll-in of features from mainResponder project Çuser.webserver.stats and user.webserver.prefs.flStats Ç3/19/99; 2:11:09 PM by PBS ÇNew pref: user.webserver.prefs.flWaitDuringStartup. ÇDefault is true. If true, Frontier waits to handle incoming http requests while starting up. ÇIt waits by looping in webserver.server until Frontier has started up. ÇPeople running Frontier behind IIS should set this to false, or else Frontier may hang during startup. ÇEverybody else should set it to true. on tableCopyNewContents (sourceTableAddress, destinationTableAddress) { // 7/3/05; 9:21:16 AM by TAC local (adr); for adr in sourceTableAddress { if defined (destinationTableAddress^.[nameOf (adr^)]) { continue}; if not (table.copy (adr, destinationTableAddress)) { return (false)}}; return (true)}; bundle { //make sure inetd is set up inetd.init (); //this must be done before webserver will work. if not defined (user.inetd.config.http) { user.inetd.config.http = webserver.data.inetd.config.http; if system.environment.isCarbon { // 6/15/05; 12:54:55 PM by TAC user.inetd.config.http.port = 8080; user.inetd.config.http.apparentPort = 80}}; if not defined (user.inetd.config.http2) { user.inetd.config.http2 = webserver.data.inetd.config.http2}; if not defined (user.inetd.config.http3) { user.inetd.config.http3 = webserver.data.inetd.config.http3}}; bundle { //create top-level tables of user.webserver if not defined (user.webserver) { new (tableType, @user.webserver)}; if not defined (user.webserver.prefs) { new (tableType, @user.webserver.prefs)}; if not defined (user.webserver.callbacks) { new (tableType, @user.webserver.callbacks)}; if not defined (user.webserver.callbacks.filterRequest) { new (tableType, @user.webserver.callbacks.filterRequest)}; if not defined (user.webserver.callbacks.handleRequest) { new (tableType, @user.webserver.callbacks.handleRequest)}; if not defined (user.webserver.callbacks.filterPage) { new (tableType, @user.webserver.callbacks.filterPage)}; if not defined (user.webserver.cgis) { new (tableType, @user.webserver.cgis)}; Çif not defined (user.webserver.utilities) Çnew (tableType, @user.webserver.utilities) if not defined (user.webserver.actions) { user.webserver.actions= webserver.data.actions}; Çif not defined (user.webserver.cgis.samples) Çuser.webserver.cgis.samples = webserver.data.cgis.samples if not defined (user.webserver.preFilters) { user.webserver.preFilters = webserver.data.preFilters}; if not defined (user.webserver.postFilters) { user.webserver.postFilters = webserver.data.postFilters}}; bundle { //copy prefs from webserver table if not defined (user.webserver.prefs.fileNotFoundPage) { user.webserver.prefs.fileNotFoundPage = webserver.data.prefs.fileNotFoundPage}; if not defined (user.webserver.prefs.errorPage) { user.webserver.prefs.errorPage = webserver.data.prefs.errorPage}; bundle { // user.webserver.prefs.mimeTypes if not defined (user.webserver.prefs.mimeTypes) { new (tableType, @user.webserver.prefs.mimeTypes)}; tableCopyNewContents (@webserver.data.prefs.mimeTypes, @user.webserver.prefs.mimeTypes)}; if not defined (user.webserver.prefs.ext2MIME) { user.webserver.prefs.ext2MIME = webserver.data.prefs.ext2MIME}; bundle { // user.webserver.prefs.type2MIME if not defined (user.webserver.prefs.type2MIME) { new (tableType, @user.webserver.prefs.type2MIME)}; tableCopyNewContents (@webserver.data.prefs.type2MIME, @user.webserver.prefs.type2MIME)}; if not defined (user.webserver.prefs.MIME2icon) { user.webserver.prefs.MIME2icon = webserver.data.prefs.MIME2icon}; if not defined (user.webserver.prefs.MIME2name) { user.webserver.prefs.MIME2name = webserver.data.prefs.MIME2name}; bundle { // user.webserver.prefs.MIME2Binary if not defined (user.webserver.prefs.MIME2Binary) { new (tableType, @user.webserver.prefs.MIME2Binary)}; tableCopyNewContents (@webserver.data.prefs.MIME2Binary, @user.webserver.prefs.MIME2Binary)}}; bundle { //set the prefs values if not defined (user.webserver.prefs.chunkSize) { user.webserver.prefs.chunkSize = 24}; if not defined (user.webserver.prefs.fldebug) { user.webserver.prefs.fldebug = false}; if not defined (user.webserver.prefs.hostName) { user.webserver.prefs.hostName = ""}; if not defined (user.webserver.prefs.serverAppID) { user.webserver.prefs.serverAppID = ""}; if not defined (user.webserver.prefs.websiteFolderPath) { user.webserver.prefs.websiteFolderPath = ""}; if not defined (user.webserver.prefs.fluseDNS) { user.webserver.prefs.fluseDNS = false}; if not defined (user.webserver.prefs.flWaitDuringStartup) { //PBS 3/19/99 user.webserver.prefs.flWaitDuringStartup = true}; if not defined (user.webserver.prefs.defaultResponder) { user.webserver.prefs.defaultResponder = "default"}; if not defined (user.webserver.prefs.flStats) { //6.0 user.webserver.prefs.flStats = true}; if not defined (user.webserver.prefs.flDomainStats) { //AR 11/05/1999 user.webserver.prefs.flDomainStats = true}; //PBS 11/23/99: now true if not defined (user.webserver.prefs.commonLog) { new (tableType, @user.webserver.prefs.commonLog)}; if not defined (user.webserver.prefs.commonLog.flIncludeReferers) { user.webserver.prefs.commonLog.flIncludeReferers = false}; if not defined (user.webserver.prefs.commonLog.flIncludeUserAgents) { user.webserver.prefs.commonLog.flIncludeUserAgents = false}; if not defined (user.webserver.prefs.commonLog.flIncludeVirtualHosts) { user.webserver.prefs.commonLog.flIncludeVirtualHosts = false}; if not defined (user.webserver.prefs.commonLog.flUseCommonLogDateFormat) { user.webserver.prefs.commonLog.flUseCommonLogDateFormat = false}}; bundle { // user.webserver.responders if not defined (user.webserver.responders) { new (tableType, @user.webserver.responders)}; tableCopyNewContents (@webserver.data.responders , @user.webserver.responders)}; bundle { //6.0, initialize stats if not defined (user.webserver.stats) { new (tabletype, @user.webserver.stats)}; user.webserver.stats.maxConnections = 0; user.webserver.stats.maxMemAvail = 0; user.webserver.stats.minMemAvail = infinity; user.webserver.stats.hits = 0; user.webserver.stats.upSince = clock.now ()}; Çbundle // set up log for commonLog postFilter Çif (not defined (user.webserver.prefs.logFile)) or (not file.exists (user.webserver.prefs.logFile)) Çuser.webserver.prefs.logFile = frontier.pathstring + "Logs" + file.getPathChar () + "Web Server Log.txt" Çfile.sureFilePath (user.webserver.prefs.logFile) Çif not file.exists (user.webserver.prefs.logFile) Çfile.new (user.webserver.prefs.logFile) Çif (sys.os () == osMacOS) Çfile.setType (user.webserver.prefs.logFile, 'TEXT') Çfile.setCreator (user.webserver.prefs.logFile, 'R*ch') bundle { //AR 11/5/99: set up domainStats postFilter if not defined (user.webserver.postfilters.domainStats) { script.newScriptObject ("on domainStats (pta)" + cr + tab + "return (webserver.postFilters.domainStats (pta))", @user.webserver.postFilters.domainStats)}}; return (true) \ No newline at end of file |
|
From: creedon <icr...@us...> - 2005-08-07 23:18:42
|
Update of /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/file In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13278 Modified Files: getSpecialFolderPath Log Message: added Documents folder case for Mac OS Carbon, suggest by Sean Elfstrom from a doc server discussion group message Index: getSpecialFolderPath =================================================================== RCS file: /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/file/getSpecialFolderPath,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** getSpecialFolderPath 26 Mar 2005 19:42:46 -0000 1.1.1.1 --- getSpecialFolderPath 7 Aug 2005 23:18:33 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:scpt:system.verbs.builtins.file.getSpecialFolderPath ! on getSpecialFolderPath (vol, specialfolder, create) { ÇChanges: Ç5.0.1 dmb: added "temporary item" support for Windows Çmaps to the Temp directory Ç8/26/01; 11:30:11 PM by JES ÇAdded support for special folders used for MacOS X. on kernelcall (vol, specialfolder, create) { kernel (file.getSpecialFolderPath)}; case sys.os () { "MacOS" { if system.environment.isCarbon { if vol == "" { vol = file.getSystemDisk ()}; local (pc = file.getPathChar ()); local (folder); on getUserFolder () { local (username = string.nthField (sys.unixShellCommand ("who am i"), ' ', 1)); return (vol + "Users" + pc + username + pc)}; case string.lower (specialfolder) { "apple menu items" { scriptError ("Can't get the path to the Apple Menu Items folder because Mac OS X does not have an Apple Menu Items folder.")}; "applications" { folder = vol + "Applications" + pc}; "desktop folder" { folder = getUserFolder () + "Desktop" + pc}; "extensions" { folder = vol + "System" + pc + "Extensions" + pc}; "favorites" { folder = getUserFolder () + "Library" + pc + "Favorites" + pc}; "fontcollections" { folder = getUserFolder () + "Library" + pc + "FontCollections" + pc}; "fonts" { folder = getUserFolder () + "Library" + pc + "Fonts" + pc}; "preferences" { folder = getUserFolder () + "Library" + pc + "Preferences" + pc}; "startup items"; "startupitems" { scriptError ("Can't get the path to the Startup Items folder because Mac OS X does not have a Startup Items folder.")}; "system"; "system folder" { folder = vol + "System" + pc}; "temp"; "temporary items" { folder = vol + "Temporary Items" + pc}; "trash" { folder = vol + "Trash" + pc}}; if create { file.sureFilePath (folder); file.sureFolder (folder)}; return (filespec (folder))} else { //Classic kernelcall (vol, specialfolder, create)}}; "Win95"; "WinNT" { ÇMonday, December 8, 1997 at 3:59:21 PM by DW Ç"Desktop" -- Windows desktop - virtual folder at the root of the name space. Ç"DesktopDirectory" -- File system directory used to physically store file Çobjects on the desktop (not to be confused with the desktop folder itself). Ç"Fonts" -- Virtual folder containing fonts. Ç"NetHood" -- File system directory containing objects that appear in the network neighborhood. Ç"Personal" -- File system directory that serves as a common respository for documents Ç"Programs" -- File system directory that contains the user's program groups (which are also file system directories). Ç"Recent" -- File system directory that contains the user's most recently used documents. Ç"SendTo" -- File system directory that contains Send To menu items. Ç"StartMenu" -- File system directory containing Start menu items. Ç"StartUp" -- File system directory that corresponds to the user's Startup program group. Ç"Templates" -- File system directory that serves as a common repository for document templates. Ç"Windows" -- The Windows directory is the directory where an application Çshould store initialization and help files. If the user is running a shared Çversion of Windows, the Windows directory is guaranteed to be private for Çeach user. Ç"System" -- Retrieves the path of the Windows system directory. ÇThe system directory contains such files as Windows libraries, drivers, and font files case string.lower (specialfolder) { "preferences" { return (file.getPrefsSubFolder (specialfolder))}; "temp" { local (tempfolder); if vol == "" { vol = file.getSystemDisk ()}; vol = vol [1] + ":\\"; tempfolder = vol + "Temp\\"; if create and not file.exists (tempfolder) { try {file.sureFolder (tempfolder)}}; return (tempfolder)}} else { try { return (kernelcall (vol, specialfolder, create))} else { local (errormessage); if string.lower (string.firstword (specialfolder)) == "temporary" { local (folder); if vol == "" { vol = file.getSystemDisk ()}; folder = vol + "\\Temp\\"; if create { file.sureFolder (folder)}; return (true)}; errormessage = "Couldn't get the folder path because \"" + specialfolder; errormessage = errormessage + "\" is not a special folder name."; return (scriptError (errormessage))}}}}}; Çbundle //testing Çfile.getSpecialFolderPath ("", "temp", true) \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:scpt:system.verbs.builtins.file.getSpecialFolderPath ! on getSpecialFolderPath (vol, specialfolder, create) { ÇChanges Ç8/3/05; 3:20:59 PM by TAC Çadded Documents folder case for Mac OS Carbon, suggest by Sean Elfstrom from a doc server discussion group message Ç8/26/01; 11:30:11 PM by JES ÇAdded support for special folders used for MacOS X. Ç5.0.1 dmb: added "temporary item" support for Windows Çmaps to the Temp directory on kernelcall (vol, specialfolder, create) { kernel (file.getSpecialFolderPath)}; case sys.os () { "MacOS" { if system.environment.isCarbon { if vol == "" { vol = file.getSystemDisk ()}; local (pc = file.getPathChar ()); local (folder); on getUserFolder () { local (username = string.nthField (sys.unixShellCommand ("who am i"), ' ', 1)); return (vol + "Users" + pc + username + pc)}; case string.lower (specialfolder) { "apple menu items" { scriptError ("Can't get the path to the Apple Menu Items folder because Mac OS X does not have an Apple Menu Items folder.")}; "applications" { folder = vol + "Applications" + pc}; "desktop folder" { folder = getUserFolder () + "Desktop" + pc}; "documents" { folder = getUserFolder () + "Documents" + pc}; "extensions" { folder = vol + "System" + pc + "Extensions" + pc}; "favorites" { folder = getUserFolder () + "Library" + pc + "Favorites" + pc}; "fontcollections" { folder = getUserFolder () + "Library" + pc + "FontCollections" + pc}; "fonts" { folder = getUserFolder () + "Library" + pc + "Fonts" + pc}; "preferences" { folder = getUserFolder () + "Library" + pc + "Preferences" + pc}; "startup items"; "startupitems" { scriptError ("Can't get the path to the Startup Items folder because Mac OS X does not have a Startup Items folder.")}; "system"; "system folder" { folder = vol + "System" + pc}; "temp"; "temporary items" { folder = vol + "Temporary Items" + pc}; "trash" { folder = vol + "Trash" + pc}}; if create { file.sureFilePath (folder); file.sureFolder (folder)}; return (filespec (folder))} else { //Classic kernelcall (vol, specialfolder, create)}}; "Win95"; "WinNT" { ÇMonday, December 8, 1997 at 3:59:21 PM by DW Ç"Desktop" -- Windows desktop - virtual folder at the root of the name space. Ç"DesktopDirectory" -- File system directory used to physically store file Çobjects on the desktop (not to be confused with the desktop folder itself). Ç"Fonts" -- Virtual folder containing fonts. Ç"NetHood" -- File system directory containing objects that appear in the network neighborhood. Ç"Personal" -- File system directory that serves as a common respository for documents Ç"Programs" -- File system directory that contains the user's program groups (which are also file system directories). Ç"Recent" -- File system directory that contains the user's most recently used documents. Ç"SendTo" -- File system directory that contains Send To menu items. Ç"StartMenu" -- File system directory containing Start menu items. Ç"StartUp" -- File system directory that corresponds to the user's Startup program group. Ç"Templates" -- File system directory that serves as a common repository for document templates. Ç"Windows" -- The Windows directory is the directory where an application Çshould store initialization and help files. If the user is running a shared Çversion of Windows, the Windows directory is guaranteed to be private for Çeach user. Ç"System" -- Retrieves the path of the Windows system directory. ÇThe system directory contains such files as Windows libraries, drivers, and font files case string.lower (specialfolder) { "preferences" { return (file.getPrefsSubFolder (specialfolder))}; "temp" { local (tempfolder); if vol == "" { vol = file.getSystemDisk ()}; vol = vol [1] + ":\\"; tempfolder = vol + "Temp\\"; if create and not file.exists (tempfolder) { try {file.sureFolder (tempfolder)}}; return (tempfolder)}} else { try { return (kernelcall (vol, specialfolder, create))} else { local (errormessage); if string.lower (string.firstword (specialfolder)) == "temporary" { local (folder); if vol == "" { vol = file.getSystemDisk ()}; folder = vol + "\\Temp\\"; if create { file.sureFolder (folder)}; return (true)}; errormessage = "Couldn't get the folder path because \"" + specialfolder; errormessage = errormessage + "\" is not a special folder name."; return (scriptError (errormessage))}}}}}; Çbundle //testing Çfile.getSpecialFolderPath ("", "documents", true) \ No newline at end of file |
|
From: creedon <icr...@us...> - 2005-08-07 23:17:15
|
Update of /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/Frontier/data In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12999 Modified Files: objectsNotExamined Log Message: No log message. Index: objectsNotExamined =================================================================== RCS file: /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/Frontier/data/objectsNotExamined,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** objectsNotExamined 6 Jul 2005 19:03:52 -0000 1.4 --- objectsNotExamined 7 Aug 2005 23:17:05 -0000 1.5 *************** *** 1,3 **** FrontierVcsFile:1:optx:system.verbs.builtins.Frontier.data.objectsNotExamined ! examples age amplitude blue cleanupWindows counter countTables destTable ??? dir docs Basic1 duration filterExample flag frequency funStuff adventure beach chess dancing equestrianism fishing green haircolor letter list1 list2 lunchReminder mouseat name nextchar people AU picture ptrtext QSOpen readme readAllText red Sample Outline 1 Sample Outline 2 Sample Outline 3 setFontTest song soundTester styleTest subTable1 message synonym table1 entry1 entry2 entry3 entry4 table2 entry4 table3 ??? table4 ??? testColor testOutline testPicture testString testText testText2 todolist Universe watchKeys windowat wpTester yesterday suites applescripts data helloWorld loadFolder loadOSAX oldstuff editScript init installMenu menu traps EDsv EDcl FilemakerLib Version bringDBToFront bringToFront close countRecords dbIsOpen deleteAllRecords deleteRecord find findAll getAllRecords getCellByRecordID getCellNames getCellNRecords getCellNRecordsAsString getCellNthRecord getCellSize getDBSize getFirstRecord getFirstRecordID getFrontDBName getID getLastRecord getLastRecordID getLayoutNames getNRecords getNRecordsAsString getNthRecord getRecordByID getRecordIDs getRecordSize hideWindow isRunning launch lockDB newRecord nthRecordExists open openDocument openFilemakerFolder packDB quit sendToBack setCellByRecordID setCellNRecords setCellNthRecord setNthRecord setRecordByID showWindow simpleFind sort unlockDB unpackDB unsort menu ftpClient bringToFront data *Author* *Version* *Release Notes* currentid supportedClients examples oneliners fetch fileExists fileFromPath folderFromPath ftpProtocolHandler getURL isFolder launch list mkdir quit remove rename sendText store sureFilePath mail drivers Eudora getMessageTable setNotification enableFiltering init otherRoot addMessage close f items readme startup open otherRootFilter traps CSOmeNot defaultFilter shutdown startup navigator data adrOutline card modalCard outlines apple system webAuthor popupString testCard windowTitle goThere recalc setTarget spawn odbcQueryTool importSuite installMenu menu suiteName odbEditor edit editors AppleScript apps canEdit edit traps EDsv EDcl Card apps canEdit edit traps cwin swin Text apps canEdit edit traps FCls FMod states looper nthState table state01 state02 state03 state04 state05 state06 state07 state08 state09 state10 state11 state12 state13 state14 state15 state16 state17 state18 state19 state20 state21 state22 state23 state24 state25 state26 state27 state28 state29 state30 state31 state32 state33 state34 state35 state36 state37 state38 state39 state40 state41 state42 state43 state44 state45 state46 state47 state48 state49 state50 system cards agentsCard fileInfoDialog moreInfoDialog tableInfoDialog techSupport extensions odbc checkDataSource connect connectionCleaner data dll macCarbon dFork rFork macPPC dFork rFork windows odbc_shutdown odbc_startup suite importSuite installMenu menu suiteName disconnect disconnectAll DSExists examples resultsTabText returnLists returnTables returnText testBlobs cover cover_tn InsertBlobs resultBlobs RetrieveBlobs execute init menu preferences #NOTE: breakOnErrors columnDelim datasources Default maxConnections minConnections recycleTime timeout dllpath dsn formatResults pwd queries Sample rowDelim showQuery uid queryTool BuildQueryList commentToggle QueryResult ReadMe RunSQLQuery showBreakOnErrors showSQLQueryStatus SQLQuery README release notes returnLists returnRecords returnTables returnText version regex compile data adrSyntaxOptions dll macCarbon dFork rFork macPPC dFork rFork windows dllpath getPath installDLL introCaseSensitive README syntaxOptions buildTable RE_SYNTAX_AWK RE_SYNTAX_DMG RE_SYNTAX_ED RE_SYNTAX_EGREP RE_SYNTAX_EMACS RE_SYNTAX_GREP RE_SYNTAX_POSIX_AWK RE_SYNTAX_POSIX_BASIC RE_SYNTAX_POSIX_EGREP RE_SYNTAX_POSIX_EXTENDED RE_SYNTAX_POSIX_MINIMAL_BASIC RE_SYNTAX_POSIX_MINIMAL_EXTENDED RE_SYNTAX_SED syntaxBits RE_BACKSLASH_ESCAPE_IN_LISTS RE_BK_PLUS_QM RE_CHAR_CLASSES RE_CONTEXT_INDEP_ANCHORS RE_CONTEXT_INDEP_OPS RE_CONTEXT_INVALID_OPS RE_DOT_NEWLINE RE_DOT_NOT_NULL RE_HAT_LISTS_NOT_NEWLINE RE_INTERVALS RE_LIMITED_OPS RE_NEWLINE_ALT RE_NO_BK_BRACES RE_NO_BK_PARENS RE_NO_BK_REFS RE_NO_BK_VBAR RE_NO_EMPTY_RANGES RE_UNMATCHED_RIGHT_PAREN_ORD util importDLLs docServer #platform #verbClass compile default easyMatch easySearch extract free grep init join match quoteRE search split subst visit easyMatch easySearch examples data bookmarks buildEntitiesTable entities2ascii 26233136313B 26233136323B 26233136333B 26233136343B 26233136353B 26233136373B 26233136383B 26233137303B 26233137313B 26233137323B 26233137363B 26233137373B 26233138303B 26233138313B 26233138323B 26233138333B 26233138363B 26233138373B 26233139313B 26233234373B 2641456C69673B 264161637574653B 2641636972633B 264167726176653B 264172696E673B 264174696C64653B 2641756D6C3B 2643636564696C3B 264561637574653B 2645636972633B 264567726176653B 2645756D6C3B 264961637574653B 2649636972633B 264967726176653B 2649756D6C3B 264E74696C64653B 264F61637574653B 264F636972633B 264F67726176653B 264F736C6173683B 264F74696C64653B 264F756D6C3B 265561637574653B 2655636972633B 265567726176653B 2655756D6C3B 266161637574653B 2661636972633B 2661656C69673B 266167726176653B 266172696E673B 266174696C64653B 2661756D6C3B 2663636564696C3B 26636F70793B 266561637574653B 2665636972633B 266567726176653B 2665756D6C3B 266961637574653B 2669636972633B 266967726176653B 2669756D6C3B 266E6273703B 266E74696C64653B 266F61637574653B 266F636972633B 266F67726176653B 266F736C6173683B 266F74696C64653B 266F756D6C3B 267265673B 26737A6C69673B 267561637574653B 2675636972633B 267567726176653B 2675756D6C3B 2679756D6C3B 2D2D 2E2E2E 5B2667743B5D 5B266C743B5D 5B4F455D 5B5926233136383B5D 5B5E5D 5B6170706C655D 5B617070726F7820657175616C5D 5B6261736520225D 5B6261736520275D 5B62726576655D 5B6361726F6E5D 5B636564696C6C615D 5B64626C206461676765725D 5B64656C74615D 5B646F7420616363656E745D 5B646F746C65737320695D 5B66695D 5B666C5D 5B666C6F72696E5D 5B6772656174657220657175616C5D 5B68756E67617269616E20756D6C6175745D 5B696E666E6974795D 5B696E74656772616C5D 5B6C65737320657175616C5D 5B6C6F7A656E67655D 5B6D6163726F6E5D 5B6E6F7420657175616C5D 5B6F655D 5B6F676F6E656B5D 5B6F6D6567615D 5B7061727469616C20646966665D 5B7065722074686F755D 5B70695D 5B70726F647563745D 5B7261646963616C5D 5B72696E675D 5B73676C206461676765725D 5B7369676D615D 5B74726164656D61726B5D 5B7E5D html bookmarksToGlossary easyMatch easySearch enableLinks extract extractBookmarks extractRefs grep introGroups introMatch introReplace introReplaceAll iso8859Decode join parseSgml sgmlToText split stripSgmlComments subst visit extract free grep init join LICENSE match quoteRE README search split subst version visit macintosh core close count create dataSize delete duplicate exists get getAs move open print quit save saveAs set globals coerceValue countAppleListItems DDEEvent getAppleListItem getEventAttribute getEventSender insertionLoc namedElement nthElement nthWindow pattern property putAppleListItem setEventInteraction setEventTimeOut setEventTransactionID misc beginTransaction copy createPublisher cut doMenu doScript editGraphic endTransaction imageGraphic isUniform paste redo revert select show undo menus sharedMenus verbs apps amazon actorSearch artistSearch asinSearch authorSearch browseNodeSearch call data methods actorSearch artistSearch asinSearch authorSearch browseNodeSearch directorSearch keywordSearch listmaniaSearch manufacturerSearch similaritySearch upcSearch namespace path port server soapAction tag version directorSearch init keywordSearch listmaniaSearch macros box manufacturerSearch similaritySearch upcSearch AnArchie about appInfo app1supported id name path sharedMenus bringToFront clear close copyclip cut eventInfo distance fileDescriptor fileSize host isDirectory modification objectHierarchy path position size examples davestoring fetching fetchURL findAndOutline getDisinfectant getExpander outlineResults storing urlToFTPRec fetch find frontwindowrecord geturl help id index launch list mget mkdir nlist open openDocument paste printDocument quit remove rename selectall sendcommand showabout store undo utilities findInList fileToList organizeOutline BarChart addBar examples dakoTest appInfo app1Supported id name path sharedMenus getBarCount getBarValue id newWindow setBar setBarCount setBarLabel setBarValue setUnits update volumeReport BBEdit appInfo app1supported id name path sharedMenus beginTransaction bringToFront changeCase changeNotes close copy count createPublisher cut delete detab doMenu doScript editGraphic endTransaction entab eventInfo allLines autoBalance autoIndent bbedit capitalizeLines capitalizeSentences capitalizeWords characterWidth clipboard compileErrors currentLine cursorPosition delete1 differences diskBrowser diskFile displayFont displayFontSize dos editDate editingWindow endcolumn endline everyOccurrence everything firstLine firstVisibleLine fullLines generic glossaryWindow hasMailer id1 index left leftOneSpace length lineBreaks lineNumbers lowerCase mac mailerActive mailerExpanded mpwShell multi-fileDifferences none offset paragraph philipBar philipBar1 position projectBrowser raiseCase recentFile replaceCharacter replaceCode replaceString reverseIndent right rightOneSpace saveDate savedState searchResults searchString selectedText selection selection-object selectionEnd selectionEndLine selectionStart selectionStartLine showInvisibles showSpaces smartQuotes softWrapping startcolumn startline statusBar tabStops tabWidth unix unknown windowKind windowText windowWidth examples capitalizeSelSentences changeLineEndings insertTextAndSave replaceAllString prefixWithGreaterThan rePrefixSelection window1Position window2Position window2Position80Col window80Col50Line window80Columns find findDifferences get getDiskFile getSelectedText goToFunction goToLine goToMarker hardWrap id imageGraphic insertFile insertFolder insertGlossaryEntry insertLineBreaks insertProject insertText isRunning isUniform launch make objectHierarchy openDocument paste printDocument quit redo removeLineBreaks replace revert save select set sharedMenuHelp shift show twiddle undo unwrap zapGremlins blogger data appKey port protocol rpcPath server deletePost editPost getRecentPosts getTemplate getUserBlogs getUsersBlogs init mailToBlog checkMail enabled script install test menuCommands install post newPost setTemplate testing manilaBloggerApi data appKey port protocol rpcPath server runme cardEditor agent appInfo app1supported id name path sharedMenus bringToFront cleanObject countObjects countSelectedObjects data version defaults apppath folderpath objectName stubpath deleteObject editCardFile editSpecialAttributes examples coolSitesInButtons newCancelButton newDroplet newFolderIcon newOKbutton oneLiners randomColorLoop randomLoop runInClayBasket getCardAttributes getCardBackColor getCardGrid getCardGridUnits getCardSize getLastOpenedFile getNthObject getNthSelectedObject getObjectAttributes getObjectEnabled getObjectFillColor getObjectFlag getObjectFont getObjectFrame getObjectFrameColor getObjectJustification getObjectLanguage getObjectRect getObjectScript getObjectSeeThru getObjectShadowDepth getObjectText getObjectTextColor getObjectType getObjectVisible getPackedCard getPackedObject getPackedTable id invalObject memAvail newClone newObject objectExists readPackedCard renameObject runCard setCardAttributes setCardBackColor setCardGrid setCardSize setFontSizeStyle setGlobalTable setObjectAttributes setObjectEnabled setObjectFillColor setObjectFlag setObjectFont setObjectFrame setObjectFrameColor setObjectJustification setObjectLanguage setObjectRect setObjectScript setObjectSeeThru setObjectShadowDepth setObjectText setObjectTextColor setObjectType setObjectVisible specifications docserver source rbg.xxx docserver source wire compiler source oneliners utilities tightcorner tables ??? uniqueName updateObject version utilities loadFolder runTestCard web coolSitesInButtons nineCoolButtons siteInButton Eudora appInfo app1supported id name path sharedMenus attachFiles bringToFront changeNotes close closeMessage connect count countMailboxes countMailfolders countMessages createMessage data DocServerSource installDocs delete Dictionary duplicate eventInfo addresses alreadyRead alternate and appears appledouble applesingle attachmentEncoding attachType binhex body cEuTEInWin cEuWTEText conjunction contains copying date destination destroyAttachments doesNotAppear doesNotContain endsWith expansion fakeTabs field file filter forwarded FSS hasConnected hasManuallyFiltered header hqxText ignore incoming intersects is isNot kDontSend keepCopy kEuAttach kEuConnect kEudoraSuite kEuForward kEuNotify kEuPleaseNotify kEuQueue kEuRedirect kEuReply kEuSalvage kEuSendLater kEuSendNever kEuSendNext kEuSendNow kEuStartNotifying kEuStopNotifying kEuUnqueue keyEuCheck keyEuDocumentList keyEuIncludeSelf keyEuMessList keyEuNotify keyEuQueue keyEuQuoteText keyEuReplyAll keyEuSend keyEuWhen kForwarded kIn kOut kQueued kRead kRedirected kRegular kReplied kSendable kSent kTrash kUnRead kUnSendable kUnSent label location mailArrives mailbox mailboxType mailFolder mailSent manual matchTerm message neededSpace neverSent nickname nicknameFile nicknameFile1 none notes notSendable opensFilters or outgoing position preserveMacintoshInfo priority priorityHigh priorityHighest priorityLow priorityLowest priorityNormal qp queued rawNotes recipient redirected replied resizeable returnReceipt selectedText sendable sender sent setting showAll showAllHeaders signature size spaceRequired spaceWasted standard startsWith status subject tabExpansion TOCFSS tocLocation topLevel transliterationTable uniqueID unless unread useDate uuencode value verb wasteSpace when willBeDeleted willBeFetched willConnect wrap examples addToFrontier attachDocument boxLoop formResponse forwardMessage oneLiners templates exists fetchurl forward get getAlternateSignature getCurrentMessageObject getCurrentMessageTable getCurrentScript getMailboxName getMailFolderName getMessageBCC getMessageCC getMessageDate getMessageFrom getMessageObject getMessagePriority getMessageReplyTo getMessageSender getMessageSenderField getMessageStatus getMessageSubject getMessageText getMessageTo getScriptPrefsFolder getSelectedText getSetting getSignature geturl id isRunning launch make menuReadme move moveMessage newOutgoingMessage notice objectHierarchy open openDocument openMessage print printDocument printMessage queue queueMenuMessage queueSendMessage quit Readme redirect replaceSelectedText reply replyToDigest save saveAs saveMessage sendAgain sendNow set setAlternateSignature setMessageAttachments setMessageBCC setMessageCC setMessagePriority setMessageSender setMessageStatus setMessageSubject setMessageText setMessageTo setSetting setSignature toys backup readMe subUserLandList turnNotificationOff turnNotificationOn ucmds c massageText wrappercmd wrapText unqueue visitMessages Fetch appInfo app1supported id name path sharedMenus bringToFront close count create dataSize delete download duplicate eventInfo addBinSuffix addHqxSuffix addTxtSuffix allowDuplicateConnections anarchieEmulation applesingle approximateItemSize automatic automaticDefaultsToText binary binhex bookmark bookmarkListWindow bydate byhost byname bynamewithcase bypath bysize bytesTransfered byuserid caseSensitiveSorting currentDirectory currentItem custom dayMonthDates decodeApplesingle decodeBinhex decodeMacbinaryi decodeMacbinaryii decodeMachost decodeStuffit defaultBinaryFileCreator defaultBinaryFileType defaultBookmarkListFont defaultBookmarkListFontSize defaultCacheTimeout defaultPassword defaultShortcut defaultTextFont defaultTextFontSize defaultTextTabWidth defaultUploadBinaryFormat defaultUploadTextFormat directory displayServerMessages downloadFolder elapsedTransferTime encodeNames file filespec helpWindow hostname id info-macMirror initialDirectory itemFormat itemType keepConnectionsAlive link macbinaryi macbinaryii machost maximumCacheSize maximumDataPort miminumDataPort modificationDate omitDotFiles overwriteFiles parentDirectory password path proxyServer rawData remoteDirectory remoteFile remoteItem shortcutWindow showSignonDialog size socksGateway socksGatewayPort status text text1 text2 textFileCreator textWindow transcriptWindow transferMode transferWindow translateIso umichMirror unknown unknownFormat url url1 useInternetConfig usePassiveMode useProxyServer userid useSocksGateway useTypeI viewOrder word-wrapMargin wrappedText examples uploadFolder readme data ??? errorcode exists fetch get getAs geturl id index launch list mkdir move objectHierarchy open openApplication openDocument print printDocument putInto quit quitApplication remove rename save saveAs sendcommand sendTo set store utilities grindObjectModel view viewFileList Finder about aboutThisMacintosh accessoryProcess accessorySuitcase alias aliasFile appInfo app1supported id name path sharedMenus appleMenuItemsFolder applicationFile applicationProcess baxter **ReadMeScriptableFinder changesInBeta5 calculateFolderSizes capacity changeView cleanUp close closeInfo comment commentHeading completelyExpanded computer conflicts container containerWindow contentSpace controlPanel controlPanelsFolder count cpu creationDate creatorType dataSize dateHeading defs cleanupCodes 0 1 2 3 4 5 6 7 8 delete deskAccessoryFile desktop desktopObject disk diskInformationHeading docs documentFile drag duplicate eject ejectable empty emptyTrash entireContents erase examples makeRootAlias existingItems exists expandable expanded exported extensionsFolder fileSharing fileType finderParam folder fontFile fontsFolder fontSuitcase fpu freeSpace get getInfo getPrivilege group groupPrivileges grow guestPrivileges hardware icon iconSize informationWindow inheritedPrivileges insertionSpec kind kindHeading labelHeading labelIndex largestFreeBlock localVolume locked make makeChanges makeWindow memoryAvailable memoryInstalled minimumPartitionSize mmu modificationDate mounted move objectHierarchy open operatingSystem originalItem owner ownerPrivileges pageSetup partitionSize partitionSpaceUsed physicalSize position preferencesFolder previousListView print printWindow process productVersion protected putAway remoteEvents restart scriptable seeFiles seeFolders select selected set setPosition sharableContainer shared sharingPrivileges sharingStartingUp sharingWindow shortcuts showClipboard shutDown shutdownItemsFolder sizeHeading sleep smallIcon snapToGrid sort soundFile soundSystem staggeredGrid startup startupDisk startupItemsFolder statusWindow suggestedPartitionSize suitcase systemFolder temporaryItemsFolder trash trashObject uniqueID update user versionHeading view viewByAll viewFont viewFontSize viewPreferences warnBeforeEmptying windowVerb zoomWindow FinderClassic about alias appInfo app1Supported id name path sharedMenus bringToFront changeView class close closeInfo drag duplicate emptyTrash folderVerb getInfo getPrivilege grow id makeAliasList makeWindow move open pageSetup print printWindow putAway restart reveal setPosition showClipboard shutdown sleep view byComment byDate byIcon byKind byLabel byname bySize bySmallIcon byVersion windowVerb zoomWindow FinderMenu appInfo app1Supported id name path sharedMenus backup cards closeType data creatorString prompt typeString loadCards typeCreator commands backup doIt getBackupNumber makeSpace mostRecentBackup openBackupFolder setPath batchTypeCreator closeParentFolders easyTypeChanger findInFile findLockedFiles flipMenus iconSorter launchEverything listSelectedFiles makeDesktopAlias makeSystemAlias oldstuff typeCreatorDialog typeDialog DITL DLOG load copyToResourceFork outlineFolders putFilesAway reconcileDialog DITL DLOG load copyToResourceFork reconciler searchstring sendThruEudora setTypeCreator stuffer typeCreatorDialog data creator type docServerSource editFileList getSelectionList init listSelectedScripts setFileCreator ucmd code visitPaths google data apiVersion methods getCachedPage search spellingSuggestion namespace path port server soapAction docs getCachedPage init macros box search spellingSuggestion mailToTheFuture addMessage data path port server deleteMessage getAllMessages getMessage getMessageCount init testAll metaWeblog data port protocol rpcPath server editPost getPost init newPost msExplorer activate appInfo app1supported id name path sharedMenus bringToFront id openDocument openurl printDocument quit netEvents version id appInfo app1Supported id name path sharedMenus examples biapPaths getDomains httpGet ips manyThreads oneThread scriptingPaths testListen whoIs abortStream addressDecode addressEncode addressToName backup bringToFront closeStream init isRunning launch listenStream listenThread myAddress nameToAddress openStream quit readStream statusStream writeStream readMe Netscape appInfo app1supported id name path sharedMenus bringToFront eventInfo name text window examples buildCoolSitesTable coolsites Future Fantasy Bookstore Aaron A. Aardvark's AARDVARK ABSTRACT Aeon Flux Aidan Christopher Kolar Alias Alian Nation Art Crimes Austin Texas Ballroom Dancing Beatles Big Time Television Blackjack Server Bob Allison's Homepage BOB(c) BRETTnews Buena Vista Pictures Carlos' Coloring Book Christmas in New York Comics n'stuff! Computer Graphics Confession Booth Cool Site of the Day Countdown to Christmas CSU Entomology Cybersight Dealernet Dining Out on the Net Downtown Anywhere eGG Fair Play Female Bodybuilder Home Page Find the Spam! Four 11 Directory Services Game Bytes Glass Wings Gramercy Press Hawai'i's Home page Hawaii Visitor Bureau Hollyweb Home Page Publisher Hot! Hot! Hot! Hotwired Internet Art Museum for Free Internet Underground Music Archive Juggling Information Service Kaleidospace Karate Las Vegas Online Le Club Le WebLouvre Live California Election Returns Lurker's Guide to Babylon 5 Megadeath Arizona Michael's Music Page Mksdk Mosaic Communications (NetScape!) Nebraska Game and Parks Commission Netboy Nettwerk New Zealand Symphony Orchestra Oceania - The Atlantis Project Over the Coffee Paris Pathfinder Pixel Pushers Praser Maze 5 Reinventing Government Toolkit Return to InfiNet's Home Page</ ReZ.n8 Rocket Science San Francisco Examiner San Francisco Free Press Search the AP Newswire Sega Skew South Dakota Speleology (caving) Server Spider Web Star Trek: Generations Starship Design Strobe SurfNet Tabatha's days at work Tag Lines The Almost Complete List of MUSHes The Amazing Fishcam! The Capitol Steps The Climbing Archive The Creative Internet The Doggie Page The Fashion Page The Horror Web The Infobot Hotlist The Klingon Language Institute The Last Homely House The Lego Page The Mabus Homeroom The Magic 8-ball The MIT Hacks Gallery The Monster Board The Monty Python Page The Mutant Page The New York City Information Page The New York Web The Nexus Gate The North Pole The Plastic Princess Page The Public Personals The Real Beer Page The Relief Goddess Office The Stones The Tori Amos Home Page The Virtual Pub The Well's Woodstock The White House The X-Files Theodore Tugboat Uncle Bob's Christmas Page Useless WWW Pages Usenet Image Indexing Vampyre's Box of Roses Vampyres Only Virtual Chevrolet Virtual Town Web Puzzler Web World Webaholics Anonymous Wine.com WNUR Jazz Information Server Word of the Day World Birthday Web Xearth Yuval Fisher's Home Page ZStuff oneLiners randomCoolJump randomCoolSites testopen displayText fetchUrl getFrontWindowTitle getFrontWindowURL getScriptPrefsFolder getSource getWindowInfo getWindowList goBack goForward goHome id launch notes openDocument openFromGlossary openUrl quit registerProtocol registerUrlEcho reload toys urlJumper unregisterProtocol unregisterUrlEcho utilities backup viewGlossary getGlossaryHTML stuff appInfo app1supported id name path sharedMenus version createArchive id trackback changedPost discoverPingInfo discoverPingInfo-bkp getAutodiscoveryXml initOutboundUrl initPost ping readme respondToPing uBASE addField addRecord appInfo app1supported id name path sharedMenus bringToFront caseSensitive closeFile countFiles countRecords deleteRecord examples allNightStates checkStates copyBase msgStates newStates oneLiners reportStates stressBase getField getFilePath getFirstRecord getLastRecord getNextRecord getPrevRecord id isRunning launch lookupRecord newFile nthFile openFile validateFile weblogUpdates data flDebug flShowMessages port protocol rpcPath server soapAction ping publicRssPing WebStar addUser appInfo app1supported id name path sharedMenus bringToFront commands cards nightlyTasks digestLog doNightlyTasks init nightlyTasksDialog readme writeReport deleteUser domenu eventInfo accessControls actions defMimeType BufferSize errorFile hideWindow indexFile logFile logFormat logging maxListens maxUsers noAccessFile noDNS pigDelay port postProcessor preProcessor realms refuseConnections suffixMappings timeOut verboseMessages version flushCache getAccessControls getActions getBufferSize getDefMimeType getErrorFile getIndexFile getLogFile getLogFormat getMaxListens getMaxUsers getNoAccessFile getNoDNS getPigDelay getPort getPostProcessor getPreProcessor getRealms getSuffixMappings getTimeOut getVersion hideWindow id initReplyText isRunning launch objectHierarchy quit refuseConnections requestReporting restart root close defined loadSite newObject newTable open save setValue test1 sendPartial setAccessControls setActions setBufferSize setDefMimeType setErrorFile setIndexFile setLogFile setLogFormat setMaxListens setMaxUsers setNoAccessFile setNoDNS setPigDelay setPort setPostProcessor setPreProcessor setRealms setSuffixMappings setTimeOut statusReport suspendLogging validateUser verboseMessages builtins app adrAppTable alertDialog askDialog bringToFront clearNetworkApp closeAllWindows closeWindow confirmDialog countWindows editWindow enableDialogs getErrorString getFilePath getPageRectangle getPicture getTargetWindow getText getWindowPosition id linkToNetworkApp madeChanges moveWindow newWindow nthWindow openWindow performanceTest printWindow putPicture putText quit revertWindow saveWindow selectAll selectWindow setFont setFontSize setTargetWindow setWindowTitle somethingSelected zoomWindow betty examples farTest correctResponse rpcRequest rpcReturn 0001 methodResponse 0001 params 0001 param 0001 value test faultTest test localTest rpcRequest rpcReturn 0001 methodResponse 0001 params 0001 param 0001 value test macros handleForm rpc clientMulticall serverSupport callHandler multiCall test clock idleTime set timerExpired db close countItems defined delete get getModDate getNthItem getValue isTable new newTable open save set setValue dialog cards alert ask fileInfo moreInfo notify threeWay twoWay fileInfo getValue hideItem loadFromFile notify olddialogs alert ask threeWay twoWay run runFromFile runModeless setItemEnable setValue showItem dll call isLoaded load unload export addToLog callimporter callImportSubMenu card getObjectAdr importer importFolder importSubMenu lastfolder sendAllDeskScripts sendFolder sendOSAScript sendSubMenu sendToDesktop fileMenu closeAll print Frontier countThreads findertofront getProgramName hideApplication isPowerPC isRuntime new2ClickFile protocols soap xmlrpc requestToFront shipdate tools data virginRadioToolsMenu html addToGlossary buildFromOutline buildOnePage cleanForExport data images space processMacrosCallback dialog compileIfDirty data htmlDialogsDll htmlEditor draw run showHtmlDialog website #css #filters #ftpSite folder url #glossary #javaScript #prefs activeUrls addLineFeeds autoParagraphs bgcolor clayCompatibility #template #tools default directory compileIfDirty data defaultPrefs commentTemplate foldericon linkicon miniXmlCoffeeMugIcon miniXmlIcon suggestALinkTemplate template getBreadcrumbString getCanonicalName getFirstComment getInclusionFromCache initDirectoryTable popUri stripTitle suggestALinkForm viewDirectory walk editor formStart get getEditingTool tagEditor wysiwygEditor wysiwygEditorMozilla expandURLs ftp upload getOneTagValue getTableLine menu htmlMenuEnabled remove neuterJavaScript neuterMacros neuterTags oldstuff buildSiteMenu code codeCenter formfinish formstart formtextfield mailToHTML parseLinks publishBinaryObject refGlossary runDirective runDirectives shutdown table addColumn addRow delete methods html new render traversalSkip ucmds embeddedcode getRefconHtml macroprocessor testoutlinecmd testtext utilities backup buildCDF buildMCF convertclayglossary convertclaysite findAllHREFs glossaryperformance installEmbeddedScript mcfToOutline prefsReportBuild testDavenet testMacros testShutdown testtext launch anything appleMenu application appWithDocument controlPanel resource usingID menu addSuite buildMenubar clearMenubar deleteSubMenu getCommandKey getScript importSuite install isInstalled remove setCommandKey setScript toggle zoomScript mouse button location odbServer addToLog commandDecode commandEncode commandHandle commandSend daemon count daemon port init readme sampleCommand serverStart targetClear targetSet test osa compile getSource pict expressions getPicture PICTToPicture pictureToPICT scheduleUpdate setPicture point get set quickTime isPlaying open play stop radio prefs browseHelp browseHttpFile browseOpmlFile browseSystemPrefs errorString postCatcher refreshAfterPost seeAlso special ftp languagePopup mailPassword newPassword passwords wizzyEditorCheckbox xmlRpcAndSoapCheckbox templatePref re compile docs DocServer #platform #verbClass compile expand extract getPatternInfo grep join match replace split visit patternsyntax porting expand extract getPatternInfo grep join license match replace split testing comparison expand extract getPatternInfo grep join match replace replaceWithCallback split stressTest umlauts visit visit rectangle get inset outset random set rez countResources countResTypes deleteNamedResource deleteResource getNamedResource getNthResInfo getNthResource getNthResType getResource getResourceAttributes getStringResource namedResourceExists putNamedResource putResource putStringResource resourceExists setResourceAttributes rgb get set rootUpdates getCurrent getPendingUpdatesList getUpdate multiRootUpdate threadedMultiRootUpdate threadedUpdate update searchEngine checkStopWords cleanText createPreview data stopWords a about after all also an and are around be because been both but can cant did do doing down each end etc for from get had have having if in into is isnt itself lot may maybe nbsp nor not now of only onto our out per saw that the their them then there thereby therefore these they theyll theyre theyve those though through thru to under until very want was wasnt went were werent weve what when where which who whom will with within without wont would wouldnt yet you youd youll your youre yours yourself youve deIndexPage doSearch getIndexAddress getPreviewsAddress indexCurrentPage indexFolder indexLocalPage indexLocalSite indexPage indexRemotePage indexViaHTTP init mergeResults replaceAll saveIndex searchMacro stripMarkup version semaphore lock unlockAll unlock semaphores lock unlockAll unlock soap constants actorNext charsetLatin1 charsetUsAscii charsetUtf16 charsetUtf8 faultClient faultMustUnderstand faultServer faultVersionMismatch floatINF floatNaN floatNegativeINF maxInt minInt nsEncodingPrefix nsEncodingURI nsEnvelopePrefix nsEnvelopeURI nsSchemaDataPrefix nsSchemaDataURI nsSchemaPrefix nsSchemaURI responseTemplate 00001000 Envelope /atts namespace SOAP-ENV:encodingStyle xmlns:SOAP-ENV xmlns:xsd xmlns:xsi 00002000 Body /atts namespace schemaVersions 1999 nsDataPrefix nsDataURI nsPrefix nsURI 2001 nsDataPrefix nsDataURI nsPrefix nsURI decode array float main simpleType struct unknownSimpleType encode array float main simpleType struct qname body localPart namespaceURI envelope localPart namespaceURI fault localPart namespaceURI header localPart namespaceURI responder condition enabled rpc client server stringutils parseHeader xmlutils addAttributeValue addElement createMessage createRequest createResponse declareNamespaceInElement decodeAmpersands elementMatches encodeWithAmpersands getAttributeValue getCharacterData getElementName getFirstChildElement getNamedChildElement getNextSiblingElement getNthChildElement getQualifiedName hasChildren namespaceCollectDefinitions namespacePrefixToURI namespaceURIToPrefix popScope pushScope resolveHref setCharacterData setNamespacePrefixOfElement setQualifiedName speaker playNamedSound stack create dispose init pool stack1 top vals item1 item2 item3 pop push readme test visit string addCommas ansiToUtf16 ansiToUtf8 cleanMailAddress commentDelete countWords daveNetMassager delete filledString firstSentence firstWord getFileURL getNextMonth getRandomPassword getWordChar hashMD5 hasSuffix hex htmlToEmail httpResultSplit insert isNumeric iso8859encode isPunctuation lastWord latinToMac macToLatin mailMessageToTable memAvailString multipleReplaceAll nthChar nthWord parseHttpArgs percent popTrailingFilename processHtmlMacros quotedPrintableDecode ratio setWordChar trimWhiteSpace typeToString upper urlDecode urlEncode utf16ToAnsi utf8ToAnsi wildcardMatch wrap sys appIsIACAware browseNetwork getAppSize getMinAppSize setAppSize setFrontApp setMinAppSize tcp im builtinDrivers aim code _credits _version core __init__ _callsub c_ERROR c_SIGN_ON connect derror disconnect err_disconnect ferror flap_to_toc go process_loop recv_event start_log_in incoming chat_in chat_invite chat_join chat_left chat_update_buddy config error eviled goto_url im_in start update_buddy outgoing addBuddy addDeny addPermit chatAccept chatInvite chatJoin chatLeave chatSend chatWhisper evil getInfo removeBuddy sendIm setAway setConfig setIdle setInfo prefs _agent _debug _flSpawnCallbackThreads _info _seq TOC_SERV TOC_SERV_AUTH responderCallbacks im_in sampleCallbacks chat_in chat_invite chat_join chat_left chat_update_buddy config error eviled goto_url im_in start update_buddy util emptyTable encode normalize normbuds posix2date prepareRepl pwdenc repl ¡ ¢ £ ¤ ¥ ¦ § ¨ © ª « ¬ ° ± ² ³ ´ µ ¶ · ¸ ¹ º » ¼ ½ ® ¯ À Á Â Ã Ä Å Æ Ç È É Ê Î Ð Ñ Ò Ó Ô Õ Ö × Ø Ú Û Ü Ý Þ ß à á â ã ä ð õ ö ÷ ø ù ú û ü ý þ ÿ strip_html init send start startup stop jabber code closeConnection deleteHandler everyMinute examples chef chef chefMessageHandler directWeblogPoster presenceTrackingShell pubsub callbacks subscribeService unsubscribeService pubsubDocs pubsubSubscribe pubsubUnsubscribe pubsubPublishHandler pubsubSubscribe pubsubUnsubscribe readme rpc handler readme rpc rpcDocs xmlrpcCall xmlrpcResponse tcpImServer getHandler getPresenceInfo handleMessage handlers iqLoggedIn iqRegister iqRoster iqVersion message presence idTables create delete getAdr init messages iqAuth iqRegisterRequest iqRosterRequest iqVersionRequest message presence subscribe unsubscribe openConnection parseJabberId registerHandler thread waitForIqReply writeXML xmlAlphaDecode init send start startup stop builtinResponders blogger condition data helpText enabled methods login logoff post setServer script manila condition data helpText rendererInfo flRenderOnEntry name enabled methods flip homepage login logoff post replace setTitle script metaWeblog condition data helpText enabled methods login logoff post setServer script news condition enabled script rpi condition enabled script state condition enabled script callbacks startup data protocolHandler virginResponders blogger condition enabled prefs allowedScreenNames blogId flPublish password siteInfo appKey port protocol rpcPath server username script manila condition enabled prefs allowedScreenNames currentSite script metaWeblog condition enabled prefs allowedScreenNames blogId flPublish password siteInfo port protocol rpcPath server username script news condition enabled script rpi condition enabled script state condition enabled script virginRpiHandlers examples msg findDriver init log add rpi client encode server testing compare tests.base64 tests.encoding tortureTest send server start startAll stop stopAll utilities cleanError thread callScript evaluate exists getCount getCurrentID getDefaultTimeSlice getGlobalAddress getNthID getStackDump getStats getTimeSlice isSleeping kill setDefaultTimeSlice setTimeSlice sleep sleepFor sleepTicks wake wrapper userland cleanRoot copyResources createDefaultIspSite createDefaultManilaSite createDefaultSite defaultPages faq faqTitle feedback feedbackTitle home homeTitle dwRestore dwSave notepad oldstuff buildChangesOutline changes2 createReadMeFile data frontierurl sdkurl deleteArethaStats dougslist everything Frontier3toAretha loadFolder menu pages inthefolder partsExport partsList release reload sanitizer testscripts testlog testparentof unload unloadlist readme readmeSite #alink #bgcolor #filters finalfilter pagefilter #ftpSite folder isLocal url #link #template #vlink desktopScripts glossary About SetFrontierStackSize Desktop Scripts Frontier Main Readme setFrontierStackSize main setFrontierStackSize tools userlandMenu workarounds initialMacDisplayGlitch webserver data cgis samples runtimeError syntaxError tellParams tellTime icons !readme a alert.black alert.red back ball.gray ball.red binary binhex blank bomb box1 box2 broken burst c comp.blue comp.gray compressed continued default dir down dvi f folder folder.open folder.sec forward generic generic.red generic.sec hand.right hand.up icon.sheet image1 image2 image3 index layout left link movie p patch pdf pie0 pie1 pie2 pie3 pie4 pie5 pie6 pie7 pie8 portal ps quill right screw1 screw2 script sound1 sound2 sphere1 sphere2 tar tex text transfer unknown up uu uuencoded world1 world2 protoResponder responses 100 101 102 200 201 202 203 204 205 206 207 300 301 302 303 304 305 307 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 422 423 424 425 500 501 502 503 504 505 trap trapScript debugCGI dispatch echoResponder encodeArgs errorMessage fileNotFoundError handler httpHeader initCleanAndSafe processMacros sendPartial standardMacros browserFilter chooseFolder counter domainFilter ipFilter passwordFilter refererFilter usernameFilter util buildResponse directoryDisplay add finish start getMethodAdr getResponderTableAdr getServerString parseAuth parseCookies pathToAddress pathToAddressExt readBytes readUntil requestAuth setCookie unlockSemaphores version xml addTable addValue aggregator bootstrap clearCache everyMinute getEnclosureData getServicesXml init menuCommands importSubscriptions readAllServices readService rpcHandlers channelChanged saveServicesXml storyArrivedCallback subscribeService unsubscribeErrantServices unsubscribeService updateArchives updateSubscriptions alidl get compile convertToDisplayName decompile examples !pathological compile decompile tableStructure 0001 comment 0002 author 0003 foo /atts namespace 0002 bar /atts namespace /contents 0003 bar /atts namespace /contents 0004 baz /atts namespace /contents 0005 froboz /atts namespace /contents 0006 Cancoon /atts namespace /contents 0007 start taggedText xText bugShow script taggedText myComputer compile tableStructure 0001 myComputer 0001 brand 0002 model 0003 ram 0004 os taggedText myComputer2 compile report tableStructure 0001 myComputer /atts username 0002 brand 0003 model 0004 ram 0005 os taggedText myComputer3 compile tableStructure 0001 myComputer 0001 brand /atts location /contents 0002 model 0003 ram 0004 os taggedText namespaces compile decompile tableStructure 0001 lockinfo /atts namespace 0002 lockscope /atts namespace 0002 exclusive /atts namespace /contents 0003 locktype /atts namespace 0002 write /atts namespace /contents 0004 owner /atts namespace 0002 href /atts namespace /contents taggedText xText namespaces2 compile decompile tableStructure 00001000 a /atts namespace xmlns xmlns:a xmlns:c 00002000 b 00001000 c /atts namespace xmlns 00002000 d taggedText siteChanges getAndCompile report reportText tableStructure 0001 site 0001 url 0002 version 0003 docs 0004 webmaster 0005 update 0001 time 0002 serialNum 0003 file 0001 url 0002 modDate 0004 file 0001 url 0002 modDate 0005 file 0001 url 0002 modDate 0006 file 0001 url 0002 modDate 0007 file 0001 url 0002 modDate 0008 file 0001 url 0002 modDate 0009 file 0001 url 0002 modDate 0010 file 0001 url 0002 modDate 0011 file 0001 url 0002 modDate 0006 update 0001 time 0002 serialNum ... [truncated message content] |
|
From: creedon <icr...@us...> - 2005-08-07 23:16:34
|
Update of /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/re/testing In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12884 Modified Files: expand match stressTest getPatternInfo visit replace extract comparison split grep Log Message: integrated old regex.examples table into re.testing Index: comparison =================================================================== RCS file: /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/re/testing/comparison,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** comparison 26 Mar 2005 19:43:25 -0000 1.1.1.1 --- comparison 7 Aug 2005 23:16:20 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:scpt:system.verbs.builtins.re.testing.comparison ! local (s = string (regex.examples.data.bookmarks)); local { complexLinkPat = "<a[ \t\r\n]*[^>]*href[ \t\r\n]*=[ \t\r\n]*\"?([-_~%@:/\\.A-Za-z0-9]+)\"?[^>]*>([^<]*)"; theList; tt}; tt = clock.ticks(); bundle { //kernel-based theList = re.extract (re.compile (complexLinkPat), s, {1})}; Çbundle //DLL-based Çregex.extract (complexLinkPat, @s, @theList, {1}) tt = clock.ticks() - tt; dialog.notify ( tt + " ticks; " + sizeof (theList) + " elements") \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:scpt:system.verbs.builtins.re.testing.comparison ! local (s = string (re.testing.data.bookmarks)); local { complexLinkPat = "<a[ \t\r\n]*[^>]*href[ \t\r\n]*=[ \t\r\n]*\"?([-_~%@:/\\.A-Za-z0-9]+)\"?[^>]*>([^<]*)"; theList; tt}; tt = clock.ticks(); bundle { //kernel-based theList = re.extract (re.compile (complexLinkPat), s, {1})}; tt = clock.ticks() - tt; dialog.notify (tt + " ticks; " + sizeof (theList) + " elements") \ No newline at end of file Index: getPatternInfo =================================================================== RCS file: /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/re/testing/getPatternInfo,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** getPatternInfo 26 Mar 2005 19:43:25 -0000 1.1.1.1 --- getPatternInfo 7 Aug 2005 23:16:20 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:scpt:system.verbs.builtins.re.testing.getPatternInfo ! local (patternRef); patternRef = re.compile ("(?P<date>(?P<year>(\\d\\d)?\\d\\d)-(?P<month>\\d\\d)-(?P<day>\\d\\d))", flAutoCapture:false); re.getPatternInfo (patternRef, @temp.patternInfo); edit (@temp.patternInfo) \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:scpt:system.verbs.builtins.re.testing.getPatternInfo ! local (cp); cp = re.compile ("(?P<date>(?P<year>(\\d\\d)?\\d\\d)-(?P<month>\\d\\d)-(?P<day>\\d\\d))", flAutoCapture:false); re.getPatternInfo (cp, @temp.patternInfo); edit (@temp.patternInfo) \ No newline at end of file Index: grep =================================================================== RCS file: /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/re/testing/grep,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** grep 26 Mar 2005 19:43:25 -0000 1.1.1.1 --- grep 7 Aug 2005 23:16:20 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:scpt:system.verbs.builtins.re.testing.grep ! local (theList = {"aa", "aab", "a", "ab", ""}); local (patternRef); patternRef = re.compile ("^aa"); dialog.notify (re.grep (patternRef, theList)); dialog.notify (re.grep (patternRef, theList, flIncludeMatches:false)); dialog.notify (re.grep (patternRef, re.join (cr, theList) + cr)); dialog.notify (re.grep (patternRef, re.join (cr, theList) + cr, flIncludeMatches:false)) \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:scpt:system.verbs.builtins.re.testing.grep ! local (theList = {"aa", "aab", "a", "ab", ""}); local (cp = re.compile ("^aa")); dialog.notify (re.grep (cp, theList)); Çdialog.notify (re.grep (re.compile (""), theList, false)) // not sure what is wrong with this, trying to get it to return all items in theList except last one; regex call was regex.grep ("", @theList, false) dialog.notify (re.grep (cp, theList, flIncludeMatches: false)); dialog.notify (re.grep (cp, re.join (cr, theList) + cr)); dialog.notify (re.grep (cp, re.join (cr, theList) + cr, flIncludeMatches: false)) \ No newline at end of file Index: split =================================================================== RCS file: /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/re/testing/split,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** split 26 Mar 2005 19:43:25 -0000 1.1.1.1 --- split 7 Aug 2005 23:16:20 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:scpt:system.verbs.builtins.re.testing.split ! local (s = "<title>test</title>\r<body>\rtest body\r</body>"); local (patRef); patRef = re.compile ("<[^>]*>"); dialog.notify (re.split (patRef, s)); patRef = re.compile ("(<[^>]*>)"); dialog.notify (re.split (patRef, s, maxSplits:4)) \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:scpt:system.verbs.builtins.re.testing.split ! local (s = "<title>test</title>\r<body>\rtest body\r</body>"); dialog.notify (re.split (re.compile ("<[^>]*>"), s)); dialog.notify (re.split (re.compile ("(<[^>]*>)"), s, maxSplits: 4)) \ No newline at end of file Index: expand =================================================================== RCS file: /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/re/testing/expand,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** expand 26 Mar 2005 19:43:25 -0000 1.1.1.1 --- expand 7 Aug 2005 23:16:20 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:scpt:system.verbs.builtins.re.testing.expand ! local (patternRef); patternRef = re.compile ("(?P<date>(?P<year>(\\d\\d)?\\d\\d)-(?P<month>\\d\\d)-(?P<day>\\d\\d))", flAutoCapture:false); if re.match (patternRef, "2003-05-30", adrMatchInfoTable:@temp.matchInfo, flMakeGroups:true, flMakeNamedGroups:true) { dialog.notify (re.expand ("\\g<day>.\\g<month>.\\g<year>", @temp.matchInfo)); dialog.notify (re.expand ("\\g<4>.\\g<3>.\\g<2>", @temp.matchInfo)); dialog.notify (re.expand ("\\4.\\3.\\2", @temp.matchInfo))}; edit (@temp.matchInfo) \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:scpt:system.verbs.builtins.re.testing.expand ! local (cp); cp = re.compile ("(?P<date>(?P<year>(\\d\\d)?\\d\\d)-(?P<month>\\d\\d)-(?P<day>\\d\\d))", flAutoCapture:false); if re.match (cp, "2003-05-30", adrMatchInfoTable:@temp.matchInfo, flMakeGroups:true, flMakeNamedGroups:true) { dialog.notify (re.expand ("\\g<day>.\\g<month>.\\g<year>", @temp.matchInfo)); dialog.notify (re.expand ("\\g<4>.\\g<3>.\\g<2>", @temp.matchInfo)); dialog.notify (re.expand ("\\4.\\3.\\2", @temp.matchInfo))}; edit (@temp.matchInfo) \ No newline at end of file Index: visit =================================================================== RCS file: /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/re/testing/visit,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** visit 26 Mar 2005 19:43:26 -0000 1.1.1.1 --- visit 7 Aug 2005 23:16:20 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:scpt:system.verbs.builtins.re.testing.visit ! local (test = " <A href ='index.html' > <A href= 'index2.html' > "); on testCallback (adrTable) { dialog.notify (string(adrTable^)); return (true)}; local (patternRef = re.compile ("<([^>]+)>")); re.visit (patternRef, test, @testCallback, flMakeGroups:true) \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:scpt:system.verbs.builtins.re.testing.visit ! local (test = " <A href ='index.html' > <A href= 'index2.html' > "); local (cp = re.compile ("<([^>]+)>")); on testCallback (adrTable) { dialog.notify (string (adrTable^)); return (true)}; re.visit (cp, test, @testCallback, flMakeGroups: true) \ No newline at end of file Index: extract =================================================================== RCS file: /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/re/testing/extract,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** extract 26 Mar 2005 19:43:25 -0000 1.1.1.1 --- extract 7 Aug 2005 23:16:20 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:scpt:system.verbs.builtins.re.testing.extract ! local { complexLinkPat = "<a[ \t\r\n]*[^>]*href[ \t\r\n]*=[ \t\r\n]*\"?([-_~%@:/\\.A-Za-z0-9]+)\"?[^>]*>([^<]*)"; simpleLinkPat = "<a[ \t\r\n]+[^>]*href[ \t\r\n]*=[ \t\r\n]*\"([^\"]*)\"[^>]*>([^<]*)"; s = string (regex.examples.data.html); theList; tt; patRef}; tt = clock.ticks(); patRef = re.compile (simpleLinkPat); theList = re.extract (patRef, s, {2,1}); dialog.notify (clock.ticks () - tt + " ticks; " + string (theList)) \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:scpt:system.verbs.builtins.re.testing.extract ! local { complexLinkPat = "<a[ \t\r\n]*[^>]*href[ \t\r\n]*=[ \t\r\n]*\"?([-_~%@:/\\.A-Za-z0-9]+)\"?[^>]*>([^<]*)"; simpleLinkPat = "<a[ \t\r\n]+[^>]*href[ \t\r\n]*=[ \t\r\n]*\"([^\"]*)\"[^>]*>([^<]*)"; cp = re.compile (simpleLinkPat); s = string (re.testing.data.html); theList; tt = clock.ticks ()}; theList = re.extract (cp, s, {2,1}); dialog.notify (clock.ticks () - tt + " ticks; " + string (theList)) \ No newline at end of file Index: stressTest =================================================================== RCS file: /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/re/testing/stressTest,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** stressTest 26 Mar 2005 19:43:26 -0000 1.1.1.1 --- stressTest 7 Aug 2005 23:16:20 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:scpt:system.verbs.builtins.re.testing.stressTest ! if defined (system.compiler.["kernel"].re) { bundle { //re.match local (patternRef, matchInfo, s1 = "a123four", s2 = "bop bebe bop"); patternRef = re.compile ("[a-zA-Z]+[0-9]+"); if not re.match (patternRef, s1, adrMatchInfoTable:@matchInfo) { scripterror ("re.match is broken.")}; if matchInfo.matchString != "a123" { scripterror ("re.match is broken.")}; patternRef = re.compile ("(be){1,2}"); if not re.match (patternRef, s2, adrMatchInfoTable:@matchInfo) { scripterror ("re.search is broken.")}; if matchInfo.matchString != "bebe" { scripterror ("re.search is broken.")}}; bundle { //re.extract local { patternRef; complexLinkPat = "<a[ \t\r\n]*[^>]*href[ \t\r\n]*=[ \t\r\n]*\"?([-_~%@:/\\.A-Za-z0-9]+)\"?[^>]*>([^<]*)"; simpleLinkPat = "<a[ \t\r\n]+[^>]*href[ \t\r\n]*=[ \t\r\n]*\"([^\"]*)\"[^>]*>([^<]*)"; s = string (regex.examples.data.html); theList}; patternRef = re.compile (simpleLinkPat); theList = re.extract (patternRef, s, {2,1}); if sizeOf (theList) != 59 { scripterror ("re.extract is broken.")}; if theList[57][1] != "Roget's Thesaurus:" { scripterror ("re.extract is broken.")}; if theList[57][2] != "http://www2.thesaurus.com/thesaurus/" { scripterror ("re.extract is broken.")}; patternRef = re.compile (simpleLinkPat); theList = re.extract (patternRef, s, {2,1}); if sizeOf (theList) != 59 { scripterror ("re.extract is broken.")}; if theList[25][1] != "FileMaker" { scripterror ("re.extract is broken.")}; if theList[25][2] != "http://www.scripting.com/apps/filemaker.html" { scripterror ("re.extract is broken.")}}; bundle { //re.grep local (patternRef); local (theList = {"aa", "aab", "a", "ab", ""}); local (s = "aa\raab\ra\rab\r\r"); patternRef = re.compile ("^aa"); if re.grep (patternRef, theList) != {"aa", "aab"} { scripterror ("re.grep is broken.")}; if re.grep (patternRef, s) != {"aa", "aab"} { scripterror ("re.grep is broken.")}; if re.grep (patternRef, theList, flIncludeMatches:false) != {"a", "ab", ""} { scripterror ("re.grep is broken.")}; if re.grep (patternRef, s, flIncludeMatches:false) != {"a", "ab", ""} { scripterror ("re.grep is broken.")}}; bundle { //re.join local (listA = {"a", "b", "c"}, listB = {"abcd", "", "efgh", ""}); if re.join ("|", listA) != "a|b|c" { scripterror ("re.join is broken.")}; if re.join ("", listA) != "abc" { scripterror ("re.join is broken.")}; if re.join ("+/+", listB) != "abcd+/++/+efgh+/+" { scripterror ("re.join is broken.")}}; bundle { //re.split local (patternRef); local (s = "<title>test</title>\r<body>\rtest body\r</body>"); patternRef = re.compile ("<[^>]*>"); if re.split (patternRef, s) != {"", "test", "\r", "\rtest body\r", ""} { scripterror ("re.split is broken.")}; if re.split (patternRef, s, maxSplits:4) != {"", "test", "\r", "\rtest body\r</body>"} { scripterror ("re.split is broken.")}; patternRef = re.compile ("(<[^>]*>)"); if re.split (patternRef, s) != {"", "<title>", "test", "</title>", "\r", "<body>", "\rtest body\r", "</body>", ""} { scripterror ("re.split is broken.")}; if re.split (patternRef, s, maxSplits:3) != {"", "<title>", "test", "</title>", "\r<body>\rtest body\r</body>"} { scripterror ("re.split is broken.")}; local (s2 = "aBcDeFg"); patternRef = re.compile ("[a-z]+", flCaseSensitive:true); if re.split (patternRef, s2) != {"", "B", "D", "F", ""} { scripterror ("re.split is broken.")}; patternRef = re.compile ("[^a-z]+", flCaseSensitive:true); if re.split (patternRef, s2) != {"a", "c", "e", "g"} { scripterror ("re.split is broken.")}; patternRef = re.compile ("[A-Z]+", flCaseSensitive:true); if re.split (patternRef, s2) != {"a", "c", "e", "g"} { scripterror ("re.split is broken.")}; patternRef = re.compile ("[^A-Z]+", flCaseSensitive:true); if re.split (patternRef, s2) != {"", "B", "D", "F", ""} { scripterror ("re.split is broken.")}}; bundle { //re.replace local (patternRef, ct); local (s = "To be or not to be", s2); patternRef = re.compile ("(be)"); s = re.replace (patternRef, "\\1BOP", s); if s != "To beBOP or not to beBOP" { scripterror ("re.replace is broken")}; patternRef = re.compile ("(be)(bop)", flCaseSensitive:false); s = re.replace (patternRef, "\\2\\1", s); if s != "To BOPbe or not to BOPbe" { scripterror ("re.replace is broken")}; patternRef = re.compile ("(BOP)(be)"); s = re.replace (patternRef, "\\2\\1", s, maxReplacements:1); if s != "To beBOP or not to BOPbe" { scripterror ("re.replace is broken")}; patternRef = re.compile ("(BOP)(be)"); s = re.replace (patternRef, "\\2\\1", s, adrReplacementCount:@ct); if s != "To beBOP or not to beBOP" { scripterror ("re.replace is broken")}; if ct != 1 { scripterror ("re.replace is broken")}; local (test = "Check http://www.muppets.com/~gonzo/ for more info, send your q's to mailto:go...@mu...."); local (result = "Check <A HREF=\"http://www.muppets.com/~gonzo/\">http://www.muppets.com/~gonzo/</A> for more info, send your q's to <A HREF=\"mailto:go...@mu...\">mailto:go...@mu...</A>."); patternRef = re.compile ("(http|mailto)(:[/]*[A-Za-z0-9]+[-_~%@:/\\.A-Za-z0-9]+[A-Za-z/0-9])"); test = re.replace (patternRef, "<A HREF=\"\\1\\2\">\\0</A>", test); if test != result { scripterror ("re.replace is broken.")}}; bundle { //re.visit local (hits = 0); local (test = " <A href ='index.html' > <A href= 'index2.html' > "); on testCallback (adrTable) { case ++hits { 1 { if adrTable^.matchOffset != 2 { scripterror ("re.visit is broken.")}; if adrTable^.matchLength != 25 { scripterror ("re.visit is broken.")}; if adrTable^.matchString != "<A href ='index.html' >" { scripterror ("re.visit is broken.")}}; 2 { if adrTable^.matchOffset != 28 { scripterror ("re.visit is broken.")}; if adrTable^.matchLength != 33 { scripterror ("re.visit is broken.")}; if adrTable^.matchString != "<A href= 'index2.html' >" { scripterror ("re.visit is broken.")}}} else { scripterror ("re.visit is broken.")}; return (true)}; local (patternRef = re.compile ("<([^>]+)>")); re.visit (patternRef, test, @testCallback); if hits != 2 { scripterror ("re.visit is broken.")}}; bundle { //re.expand local (pat, mi); pat = re.compile ("(?P<date>(?P<year>(\\d\\d)?\\d\\d)-(?P<month>\\d\\d)-(?P<day>\\d\\d))", flAutoCapture:false); if re.match (pat, "2003-05-30", adrMatchInfoTable:@mi, flMakeGroups:true, flMakeNamedGroups:true) { if re.expand ("\\g<day>.\\g<month>.\\g<year>", @mi) != "30.05.2003" { scripterror ("re.expand is broken")}; if re.expand ("\\g<4>.\\g<3>.\\g<2>", @mi) != "30.05.2003" { scripterror ("re.expand is broken")}; if re.expand ("\\4.\\3.\\2", @mi) != "30.05.2003" { scripterror ("re.expand is broken")}}}}; dialog.notify ("No problems found.") \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:scpt:system.verbs.builtins.re.testing.stressTest ! if defined (system.compiler.["kernel"].re) { bundle { //re.match local (cp, matchInfo, s1 = "a123four", s2 = "bop bebe bop"); cp = re.compile ("[a-zA-Z]+[0-9]+"); if not re.match (cp, s1, adrMatchInfoTable:@matchInfo) { scripterror ("re.match is broken.")}; if matchInfo.matchString != "a123" { scripterror ("re.match is broken.")}; cp = re.compile ("(be){1,2}"); if not re.match (cp, s2, adrMatchInfoTable:@matchInfo) { scripterror ("re.search is broken.")}; if matchInfo.matchString != "bebe" { scripterror ("re.search is broken.")}}; bundle { //re.extract local { cp; complexLinkPat = "<a[ \t\r\n]*[^>]*href[ \t\r\n]*=[ \t\r\n]*\"?([-_~%@:/\\.A-Za-z0-9]+)\"?[^>]*>([^<]*)"; simpleLinkPat = "<a[ \t\r\n]+[^>]*href[ \t\r\n]*=[ \t\r\n]*\"([^\"]*)\"[^>]*>([^<]*)"; s = string (re.testing.data.html); theList}; cp = re.compile (simpleLinkPat); theList = re.extract (cp, s, {2,1}); if sizeOf (theList) != 59 { scripterror ("re.extract is broken.")}; if theList[57][1] != "Roget's Thesaurus:" { scripterror ("re.extract is broken.")}; if theList[57][2] != "http://www2.thesaurus.com/thesaurus/" { scripterror ("re.extract is broken.")}; cp = re.compile (simpleLinkPat); theList = re.extract (cp, s, {2,1}); if sizeOf (theList) != 59 { scripterror ("re.extract is broken.")}; if theList[25][1] != "FileMaker" { scripterror ("re.extract is broken.")}; if theList[25][2] != "http://www.scripting.com/apps/filemaker.html" { scripterror ("re.extract is broken.")}}; bundle { //re.grep local (cp); local (theList = {"aa", "aab", "a", "ab", ""}); local (s = "aa\raab\ra\rab\r\r"); cp = re.compile ("^aa"); if re.grep (cp, theList) != {"aa", "aab"} { scripterror ("re.grep is broken.")}; if re.grep (cp, s) != {"aa", "aab"} { scripterror ("re.grep is broken.")}; if re.grep (cp, theList, flIncludeMatches:false) != {"a", "ab", ""} { scripterror ("re.grep is broken.")}; if re.grep (cp, s, flIncludeMatches:false) != {"a", "ab", ""} { scripterror ("re.grep is broken.")}}; bundle { //re.join local (listA = {"a", "b", "c"}, listB = {"abcd", "", "efgh", ""}); if re.join ("|", listA) != "a|b|c" { scripterror ("re.join is broken.")}; if re.join ("", listA) != "abc" { scripterror ("re.join is broken.")}; if re.join ("+/+", listB) != "abcd+/++/+efgh+/+" { scripterror ("re.join is broken.")}}; bundle { //re.split local (cp); local (s = "<title>test</title>\r<body>\rtest body\r</body>"); cp = re.compile ("<[^>]*>"); if re.split (cp, s) != {"", "test", "\r", "\rtest body\r", ""} { scripterror ("re.split is broken.")}; if re.split (cp, s, maxSplits:4) != {"", "test", "\r", "\rtest body\r</body>"} { scripterror ("re.split is broken.")}; cp = re.compile ("(<[^>]*>)"); if re.split (cp, s) != {"", "<title>", "test", "</title>", "\r", "<body>", "\rtest body\r", "</body>", ""} { scripterror ("re.split is broken.")}; if re.split (cp, s, maxSplits:3) != {"", "<title>", "test", "</title>", "\r<body>\rtest body\r</body>"} { scripterror ("re.split is broken.")}; local (s2 = "aBcDeFg"); cp = re.compile ("[a-z]+", flCaseSensitive:true); if re.split (cp, s2) != {"", "B", "D", "F", ""} { scripterror ("re.split is broken.")}; cp = re.compile ("[^a-z]+", flCaseSensitive:true); if re.split (cp, s2) != {"a", "c", "e", "g"} { scripterror ("re.split is broken.")}; cp = re.compile ("[A-Z]+", flCaseSensitive:true); if re.split (cp, s2) != {"a", "c", "e", "g"} { scripterror ("re.split is broken.")}; cp = re.compile ("[^A-Z]+", flCaseSensitive:true); if re.split (cp, s2) != {"", "B", "D", "F", ""} { scripterror ("re.split is broken.")}}; bundle { //re.replace local (cp, ct); local (s = "To be or not to be", s2); cp = re.compile ("(be)"); s = re.replace (cp, "\\1BOP", s); if s != "To beBOP or not to beBOP" { scripterror ("re.replace is broken")}; cp = re.compile ("(be)(bop)", flCaseSensitive:false); s = re.replace (cp, "\\2\\1", s); if s != "To BOPbe or not to BOPbe" { scripterror ("re.replace is broken")}; cp = re.compile ("(BOP)(be)"); s = re.replace (cp, "\\2\\1", s, maxReplacements:1); if s != "To beBOP or not to BOPbe" { scripterror ("re.replace is broken")}; cp = re.compile ("(BOP)(be)"); s = re.replace (cp, "\\2\\1", s, adrReplacementCount:@ct); if s != "To beBOP or not to beBOP" { scripterror ("re.replace is broken")}; if ct != 1 { scripterror ("re.replace is broken")}; local (test = "Check http://www.muppets.com/~gonzo/ for more info, send your q's to mailto:go...@mu...."); local (result = "Check <A HREF=\"http://www.muppets.com/~gonzo/\">http://www.muppets.com/~gonzo/</A> for more info, send your q's to <A HREF=\"mailto:go...@mu...\">mailto:go...@mu...</A>."); cp = re.compile ("(http|mailto)(:[/]*[A-Za-z0-9]+[-_~%@:/\\.A-Za-z0-9]+[A-Za-z/0-9])"); test = re.replace (cp, "<A HREF=\"\\1\\2\">\\0</A>", test); if test != result { scripterror ("re.replace is broken.")}}; bundle { //re.visit local (hits = 0); local (test = " <A href ='index.html' > <A href= 'index2.html' > "); on testCallback (adrTable) { case ++hits { 1 { if adrTable^.matchOffset != 2 { scripterror ("re.visit is broken.")}; if adrTable^.matchLength != 25 { scripterror ("re.visit is broken.")}; if adrTable^.matchString != "<A href ='index.html' >" { scripterror ("re.visit is broken.")}}; 2 { if adrTable^.matchOffset != 28 { scripterror ("re.visit is broken.")}; if adrTable^.matchLength != 33 { scripterror ("re.visit is broken.")}; if adrTable^.matchString != "<A href= 'index2.html' >" { scripterror ("re.visit is broken.")}}} else { scripterror ("re.visit is broken.")}; return (true)}; local (cp = re.compile ("<([^>]+)>")); re.visit (cp, test, @testCallback); if hits != 2 { scripterror ("re.visit is broken.")}}; bundle { //re.expand local (pat, mi); pat = re.compile ("(?P<date>(?P<year>(\\d\\d)?\\d\\d)-(?P<month>\\d\\d)-(?P<day>\\d\\d))", flAutoCapture:false); if re.match (pat, "2003-05-30", adrMatchInfoTable:@mi, flMakeGroups:true, flMakeNamedGroups:true) { if re.expand ("\\g<day>.\\g<month>.\\g<year>", @mi) != "30.05.2003" { scripterror ("re.expand is broken")}; if re.expand ("\\g<4>.\\g<3>.\\g<2>", @mi) != "30.05.2003" { scripterror ("re.expand is broken")}; if re.expand ("\\4.\\3.\\2", @mi) != "30.05.2003" { scripterror ("re.expand is broken")}}}}; dialog.notify ("No problems found.") \ No newline at end of file Index: match =================================================================== RCS file: /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/re/testing/match,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** match 26 Mar 2005 19:43:25 -0000 1.1.1.1 --- match 7 Aug 2005 23:16:20 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:scpt:system.verbs.builtins.re.testing.match ! local (patternRef); patternRef = re.compile ("([a-z]+)"); dialog.notify (re.match (patternRef, "Hello World!")) \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:scpt:system.verbs.builtins.re.testing.match ! local (matchInfo, sr); sr = re.match (re.compile ("[a-zA-Z]+[0-9]+"), "a123four", adrMatchInfoTable: @matchInfo); dialog.notify (sr); sr = re.match (re.compile ("[0-9]+"), "a 123 four", adrMatchInfoTable: @matchInfo); dialog.notify (sr); sr = re.match (re.compile ("(be){1,2}"), "bebe bop", adrMatchInfoTable: @matchInfo); dialog.notify (sr); sr = re.match (re.compile ("(bo){1,2}"), "be bobop", adrMatchInfoTable: @matchInfo); dialog.notify (sr); sr = re.match (re.compile ("([a-z]+)"), "Hello World!"); dialog.notify (sr) \ No newline at end of file Index: replace =================================================================== RCS file: /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/re/testing/replace,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** replace 26 Mar 2005 19:43:25 -0000 1.1.1.1 --- replace 7 Aug 2005 23:16:20 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:scpt:system.verbs.builtins.re.testing.replace ! local (patternRef, ct); ÇpatternRef = re.compile ("(a|(z))(bc)") patternRef = re.compile ("\\b"); dialog.notify (re.replace (patternRef, "x", "1abc abc1")); local (test = "To be or not to be"); patternRef = re.compile ("be"); test = re.replace (patternRef, "bebop", test); dialog.notify (test); patternRef = re.compile ("(be)(bop)"); test = re.replace (patternRef, "\\2\\1", test, adrReplacementCount:@ct); dialog.notify (test + cr + "(" + ct + " replacements made)") \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:scpt:system.verbs.builtins.re.testing.replace ! local (cp, ct, test = "To be or not to be"); Çcp = re.compile ("(a|(z))(bc)") cp = re.compile ("\\b"); dialog.notify (re.replace (cp, "x", "1abc abc1")); cp = re.compile ("be"); test = re.replace (cp, "bebop", test); dialog.notify (test); cp = re.compile ("(be)(bop)"); test = re.replace (cp, "\\2\\1", test, adrReplacementCount: @ct); dialog.notify (test + cr + "(" + ct + " replacements made)") \ No newline at end of file |
|
From: creedon <icr...@us...> - 2005-08-07 23:11:56
|
Update of /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/menu In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12406 Modified Files: clearMenubar Log Message: explicitly return value of kernel call, previosuly returned whatever was the return value of the last line, not good Index: clearMenubar =================================================================== RCS file: /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/menu/clearMenubar,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** clearMenubar 7 Aug 2005 21:47:39 -0000 1.2 --- clearMenubar 7 Aug 2005 23:11:48 -0000 1.3 *************** *** 1,3 **** FrontierVcsFile:1:scpt:system.verbs.builtins.menu.clearMenubar ! on clearMenubar () { ÇChanges Ç8/7/05; 2:02:52 PM by TAC Çadded system.menus.data.currentMenuType on kernelcall () { kernel (menu.clearmenubar)}; kernelcall (); system.menus.data.currentSuite = ""; system.menus.data.currentmenu = '????'; system.menus.data.currentMenuType = nil} \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:scpt:system.verbs.builtins.menu.clearMenubar ! on clearMenubar () { ÇChanges Ç8/7/05; 3:35:48 PM by TAC Çexplicitly return value of kernel call, previosuly returned whatever was the return value of the last line, not good Çadded system.menus.data.currentMenuType on kernelcall () { kernel (menu.clearmenubar)}; local (fl = kernelcall ()); system.menus.data.currentSuite = ""; system.menus.data.currentmenu = '????'; system.menus.data.currentMenuType = nil; return (fl)} \ No newline at end of file |
|
From: creedon <icr...@us...> - 2005-08-07 21:47:47
|
Update of /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/menu In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29819 Modified Files: clearMenubar Log Message: added system.menus.data.currentMenuType = nil so that modal menus get a shot at an update Index: clearMenubar =================================================================== RCS file: /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/menu/clearMenubar,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** clearMenubar 26 Mar 2005 19:43:18 -0000 1.1.1.1 --- clearMenubar 7 Aug 2005 21:47:39 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:scpt:system.verbs.builtins.menu.clearMenubar ! on clearMenubar () { on kernelcall () { kernel (menu.clearmenubar)}; kernelcall (); system.menus.data.currentSuite = ""; system.menus.data.currentmenu = '????'} \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:scpt:system.verbs.builtins.menu.clearMenubar ! on clearMenubar () { ÇChanges Ç8/7/05; 2:02:52 PM by TAC Çadded system.menus.data.currentMenuType on kernelcall () { kernel (menu.clearmenubar)}; kernelcall (); system.menus.data.currentSuite = ""; system.menus.data.currentmenu = '????'; system.menus.data.currentMenuType = nil} \ No newline at end of file |
Update of /cvsroot/frontierkernel/odbs/frontierRoot/system/extensions/regex/examples/data/entities2ascii In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15788/examples/data/entities2ascii Removed Files: 26233136313B 26233136323B 26233136333B 26233136343B 26233136353B 26233136373B 26233136383B 26233137303B 26233137313B 26233137323B 26233137363B 26233137373B 26233138303B 26233138313B 26233138323B 26233138333B 26233138363B 26233138373B 26233139313B 26233234373B 2641456C69673B 264161637574653B 2641636972633B 264167726176653B 264172696E673B 264174696C64653B 2641756D6C3B 2643636564696C3B 264561637574653B 2645636972633B 264567726176653B 2645756D6C3B 264961637574653B 2649636972633B 264967726176653B 2649756D6C3B 264E74696C64653B 264F61637574653B 264F636972633B 264F67726176653B 264F736C6173683B 264F74696C64653B 264F756D6C3B 265561637574653B 2655636972633B 265567726176653B 2655756D6C3B 266161637574653B 2661636972633B 2661656C69673B 266167726176653B 266172696E673B 266174696C64653B 2661756D6C3B 2663636564696C3B 26636F70793B 266561637574653B 2665636972633B 266567726176653B 2665756D6C3B 266961637574653B 2669636972633B 266967726176653B 2669756D6C3B 266E6273703B 266E74696C64653B 266F61637574653B 266F636972633B 266F67726176653B 266F736C6173683B 266F74696C64653B 266F756D6C3B 267265673B 26737A6C69673B 267561637574653B 2675636972633B 267567726176653B 2675756D6C3B 2679756D6C3B 2D2D 2E2E2E 5B2667743B5D 5B266C743B5D 5B4F455D 5B5926233136383B5D 5B5E5D 5B6170706C655D 5B617070726F7820657175616C5D 5B6261736520225D 5B6261736520275D 5B62726576655D 5B6361726F6E5D 5B636564696C6C615D 5B64626C206461676765725D 5B64656C74615D 5B646F7420616363656E745D 5B646F746C65737320695D 5B66695D 5B666C5D 5B666C6F72696E5D 5B6772656174657220657175616C5D 5B696E666E6974795D 5B696E74656772616C5D 5B6C65737320657175616C5D 5B6C6F7A656E67655D 5B6D6163726F6E5D 5B6E6F7420657175616C5D 5B6F655D 5B6F676F6E656B5D 5B6F6D6567615D 5B7061727469616C20646966665D 5B7065722074686F755D 5B70695D 5B70726F647563745D 5B7261646963616C5D 5B72696E675D 5B73676C206461676765725D 5B7369676D615D 5B74726164656D61726B5D 5B7E5D dW61ySOz9gZ6trxK4etXJg Log Message: removed, re is the current way to do regular expressions, regex can be dist. as an extra if needed by someone --- 26233137303B DELETED --- --- 2661656C69673B DELETED --- --- 26233136333B DELETED --- --- 264174696C64653B DELETED --- --- 2641456C69673B DELETED --- --- 264F61637574653B DELETED --- --- 2641636972633B DELETED --- --- 5B646F7420616363656E745D DELETED --- --- 2655636972633B DELETED --- --- 5B64626C206461676765725D DELETED --- --- 5B5E5D DELETED --- --- 5B6C6F7A656E67655D DELETED --- --- 264E74696C64653B DELETED --- --- 264561637574653B DELETED --- --- 266F61637574653B DELETED --- --- 264F67726176653B DELETED --- --- 5B636564696C6C615D DELETED --- --- 5B6C65737320657175616C5D DELETED --- --- 267567726176653B DELETED --- --- 264967726176653B DELETED --- --- 26233234373B DELETED --- --- 26233139313B DELETED --- --- 5B6361726F6E5D DELETED --- --- 266172696E673B DELETED --- --- 266F636972633B DELETED --- --- 2661636972633B DELETED --- --- 264F74696C64653B DELETED --- --- 266561637574653B DELETED --- --- 5B70726F647563745D DELETED --- --- 2669636972633B DELETED --- --- 5B266C743B5D DELETED --- --- 264172696E673B DELETED --- --- 5B73676C206461676765725D DELETED --- --- 5B6D6163726F6E5D DELETED --- --- 26233137313B DELETED --- --- 2D2D DELETED --- --- 2655756D6C3B DELETED --- --- 2661756D6C3B DELETED --- --- 26737A6C69673B DELETED --- --- 2675756D6C3B DELETED --- --- 264961637574653B DELETED --- --- 267265673B DELETED --- --- 2E2E2E DELETED --- --- 264167726176653B DELETED --- --- 264F636972633B DELETED --- --- 5B6F655D DELETED --- --- 264567726176653B DELETED --- --- 2675636972633B DELETED --- --- 26233137373B DELETED --- --- 267561637574653B DELETED --- --- 2669756D6C3B DELETED --- --- 265567726176653B DELETED --- --- 5B696E666E6974795D DELETED --- --- 5B66695D DELETED --- --- 26233136353B DELETED --- --- 2643636564696C3B DELETED --- --- 26636F70793B DELETED --- --- 266961637574653B DELETED --- --- 26233138373B DELETED --- --- 5B6F676F6E656B5D DELETED --- --- 5B4F455D DELETED --- --- 2649636972633B DELETED --- --- 5B5926233136383B5D DELETED --- --- 5B6261736520275D DELETED --- --- 5B7261646963616C5D DELETED --- --- 5B7E5D DELETED --- --- 266E74696C64653B DELETED --- --- 2679756D6C3B DELETED --- --- 5B2667743B5D DELETED --- --- 26233136323B DELETED --- --- 26233138323B DELETED --- --- 26233136343B DELETED --- --- 26233136313B DELETED --- --- 26233136373B DELETED --- --- 264F756D6C3B DELETED --- --- 5B666C6F72696E5D DELETED --- --- 2645756D6C3B DELETED --- --- 5B6170706C655D DELETED --- --- 5B646F746C65737320695D DELETED --- --- 5B7065722074686F755D DELETED --- --- 266E6273703B DELETED --- --- 5B617070726F7820657175616C5D DELETED --- --- 2645636972633B DELETED --- --- 5B6772656174657220657175616C5D DELETED --- --- 266967726176653B DELETED --- --- dW61ySOz9gZ6trxK4etXJg DELETED --- --- 5B666C5D DELETED --- --- 266F74696C64653B DELETED --- --- 264161637574653B DELETED --- --- 5B696E74656772616C5D DELETED --- --- 26233138313B DELETED --- --- 5B7061727469616C20646966665D DELETED --- --- 26233138303B DELETED --- --- 266567726176653B DELETED --- --- 2649756D6C3B DELETED --- --- 266F67726176653B DELETED --- --- 5B62726576655D DELETED --- --- 5B70695D DELETED --- --- 5B7369676D615D DELETED --- --- 2665756D6C3B DELETED --- --- 265561637574653B DELETED --- --- 26233137323B DELETED --- --- 266F736C6173683B DELETED --- --- 26233136383B DELETED --- --- 5B6F6D6567615D DELETED --- --- 2641756D6C3B DELETED --- --- 5B6E6F7420657175616C5D DELETED --- --- 266F756D6C3B DELETED --- --- 264F736C6173683B DELETED --- --- 266174696C64653B DELETED --- --- 266167726176653B DELETED --- --- 5B74726164656D61726B5D DELETED --- --- 26233138333B DELETED --- --- 2663636564696C3B DELETED --- --- 266161637574653B DELETED --- --- 5B6261736520225D DELETED --- --- 5B64656C74615D DELETED --- --- 5B72696E675D DELETED --- --- 26233138363B DELETED --- --- 26233137363B DELETED --- --- 2665636972633B DELETED --- |
|
From: creedon <icr...@us...> - 2005-08-07 03:14:29
|
Update of /cvsroot/frontierkernel/odbs/frontierRoot/system/extensions/regex/examples/data In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15788/examples/data Removed Files: bookmarks buildEntitiesTable html Log Message: removed, re is the current way to do regular expressions, regex can be dist. as an extra if needed by someone --- bookmarks DELETED --- --- html DELETED --- --- buildEntitiesTable DELETED --- |
|
From: creedon <icr...@us...> - 2005-08-07 03:14:29
|
Update of /cvsroot/frontierkernel/odbs/frontierRoot/system/extensions/regex/docServer In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15788/docServer Removed Files: 23platform 23verbClass compile default easyMatch easySearch extract free grep init join match quoteRE search split subst visit Log Message: removed, re is the current way to do regular expressions, regex can be dist. as an extra if needed by someone --- quoteRE DELETED --- --- search DELETED --- --- join DELETED --- --- 23verbClass DELETED --- --- easySearch DELETED --- --- easyMatch DELETED --- --- visit DELETED --- --- subst DELETED --- --- free DELETED --- --- compile DELETED --- --- default DELETED --- --- init DELETED --- --- split DELETED --- --- grep DELETED --- --- 23platform DELETED --- --- extract DELETED --- --- match DELETED --- |
|
From: creedon <icr...@us...> - 2005-08-07 03:14:29
|
Update of /cvsroot/frontierkernel/odbs/frontierRoot/system/extensions/regex/data/util In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15788/data/util Removed Files: importDLLs Log Message: removed, re is the current way to do regular expressions, regex can be dist. as an extra if needed by someone --- importDLLs DELETED --- |
Update of /cvsroot/frontierkernel/odbs/frontierRoot/system/extensions/regex/examples In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15788/examples Removed Files: bookmarksToGlossary easyMatch easySearch enableLinks extract extractBookmarks extractRefs grep introGroups introMatch introReplace introReplaceAll iso8859Decode join parseSgml sgmlToText split stripSgmlComments subst visit Log Message: removed, re is the current way to do regular expressions, regex can be dist. as an extra if needed by someone --- extractBookmarks DELETED --- --- enableLinks DELETED --- --- join DELETED --- --- introReplace DELETED --- --- stripSgmlComments DELETED --- --- parseSgml DELETED --- --- iso8859Decode DELETED --- --- bookmarksToGlossary DELETED --- --- visit DELETED --- --- introGroups DELETED --- --- introReplaceAll DELETED --- --- easySearch DELETED --- --- subst DELETED --- --- easyMatch DELETED --- --- split DELETED --- --- grep DELETED --- --- introMatch DELETED --- --- extract DELETED --- --- sgmlToText DELETED --- --- extractRefs DELETED --- |