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
|
Update of /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/webserver/data/responders/default/data/prefs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9363 Removed Files: fileDefault fileAutoIndex ODBdefault ODBautoIndex Log Message: mainResponder is now the default responder, these items were part of the previous default responder --- ODBautoIndex DELETED --- --- fileAutoIndex DELETED --- --- fileDefault DELETED --- --- ODBdefault DELETED --- |
|
From: creedon <icr...@us...> - 2005-06-18 17:28:59
|
Update of /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/adminSite/website In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10802 Removed Files: renewLicense Log Message: not needed for open source version --- renewLicense DELETED --- |
|
From: creedon <icr...@us...> - 2005-06-18 17:19:18
|
Update of /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6209 Modified Files: init Log Message: added config.mainResponder.callbacks.subscriptionsServer Index: init =================================================================== RCS file: /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/init,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** init 16 Jun 2005 22:29:30 -0000 1.3 --- init 18 Jun 2005 17:18:56 -0000 1.4 *************** *** 1,3 **** FrontierVcsFile:1:scpt:mainResponder.init ! on init () { ÇInitialize mainResponder ÇChanges Ç6/16/05; 11:19:53 AM by TAC Ç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", "manila.root", "prefs.root"}}; //PBS 11/20/99: update everything every night by default 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 = "localhost"); 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 Ç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 = "localhost"}; 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 Ç6/16/05; 11:59:11 PM by TAC Ç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 = "localhost"); 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 = "localhost"}; 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-06-16 22:31:54
|
Update of /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/adminSite/prefs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20917 Modified Files: dbToUpdateCheck Log Message: fix for when pta^.postArgs.dbToUpdate is not defined Index: dbToUpdateCheck =================================================================== RCS file: /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/adminSite/prefs/dbToUpdateCheck,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** dbToUpdateCheck 26 Mar 2005 21:45:14 -0000 1.1.1.1 --- dbToUpdateCheck 16 Jun 2005 22:31:45 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:scpt:mainResponder.adminSite.prefs.dbToUpdateCheck ! on dbToUpdateCheck (dbname) { ÇChanges Ç6/26/02; 10:46:48 PM by JES ÇCreated. local (pta = html.getpagetableaddress ()); if pta^.method == "POST" { if not defined (pta^.postArgs.updateNow) { local (updateList = pta^.postArgs.dbToUpdate); if typeOf (updateList) != listType { updateList = {updateList}}; config.mainresponder.prefs.updateNightlyList = updateList}}; local (checkbox = "<input type=\"checkbox\" name=\"dbToUpdate\" value=\"" + dbname + "\""); if config.mainresponder.prefs.updateNightlyList contains dbname { checkbox = checkbox + " checked>"} else { checkbox = checkbox + ">"}; return ("<tr><td colspan=\"2\">" + checkbox + " " + dbname + "</td></tr>")} \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:scpt:mainResponder.adminSite.prefs.dbToUpdateCheck ! on dbToUpdateCheck (dbname) { ÇChanges Ç6/16/05; 2:19:17 PM by TAC Çfix for when pta^.postArgs.dbToUpdate is not defined Ç6/26/02; 10:46:48 PM by JES ÇCreated. local (pta = html.getpagetableaddress ()); if pta^.method == "POST" { if not (defined (pta^.postArgs.updateNow)) { local (updateList= {}); if defined (pta^.postArgs.dbToUpdate) { updateList = pta^.postArgs.dbToUpdate; if typeOf (updateList) != listType { updateList = {updateList}}}; config.mainresponder.prefs.updateNightlyList = updateList}}; local (checkbox = "<input type=\"checkbox\" name=\"dbToUpdate\" value=\"" + dbname + "\""); if config.mainresponder.prefs.updateNightlyList contains dbname { checkbox = checkbox + " checked>"} else { checkbox = checkbox + ">"}; return ("<tr><td colspan=\"2\">" + checkbox + " " + dbname + "</td></tr>")} \ No newline at end of file |
|
From: creedon <icr...@us...> - 2005-06-16 22:31:26
|
Update of /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/controlPanel In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20661 Modified Files: emailConfig Log Message: de-Manilazation Index: emailConfig =================================================================== RCS file: /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/controlPanel/emailConfig,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** emailConfig 26 Mar 2005 21:45:21 -0000 1.1.1.1 --- emailConfig 16 Jun 2005 22:31:17 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:scpt:mainResponder.controlPanel.emailConfig ! on emailConfig (flAddFormTags = true) { ÇChanges Ç4/13/04; 12:40:22 AM by JES ÇOptional param, flAddFormTags, used for calling this page within a radio.prefs.browser outline. Ç12/17/01; 2:30:49 PM by PBS ÇCreated. Email Frontier configuration to someone (such as UserLand). No passwords are included in the email. local (pta = html.getpagetableaddress ()); pta^.title = "Email Config"; workspace.pt = pta^; local (htmltext = "", indentlevel = 0); on add (s) { htmltext = htmltext + string.filledstring ("\t", indentlevel) + s + "\r"}; bundle { //prompt add ("<p>Enter an email address in the form below and click on Submit, and an extensive status report for your Frontier configuration will be sent through email to the designated address. (No passwords are included in the email.)</p>")}; local (email = user.prefs.mailaddress); bundle { //send email if args are present local (args); new (tabletype, @args); if pta^.method == "POST" { args = pta^.postArgs} else { //it's a GET webserver.parseargs (pta^.searchargs, @args)}; if defined (args.email) { email = args.email; try { mainResponder.utilities.mailConfig (args.email); local (t); new (tabletype, @t); t.email = args.email; t.now = clock.now (); add ("<p><font color=\"#00008B\">A configuration email has been sent to " + email + " on " + t.now + ".</font></p>")} else { if sizeOf (user.prefs.mailHost) == 0 { add ("<p><font color=\"#8B0000\">Can't send your configuration information via email because your outgoing (SMTP) mail server has not been set.</font></p>")} else { add ("<p><font color=\"#8B0000\">" + tryError + "</font></p>")}}} else { if sizeOf (user.prefs.mailHost) == 0 { add ("<p>In order for Frontier to send your configuration information via email, you will need to first set your outgoing (SMTP) mail server.</p>")}}}; if flAddFormTags { add ("<form method=\"GET\">"); indentlevel++}; add ("<table cellspacing=\"10\" cellpadding=\"0\">"); indentlevel++; add ("<tr><td>Email to:</td><td><input type=text size=\"50\" name=\"email\" value=\"" + email + "\"></td></tr>"); add ("<tr><td> </td><td><input type=\"submit\" value=\"Send Email\"></td></tr>"); add ("</table>"); indentlevel--; if flAddFormTags { add ("</form>"); indentlevel--}; return (htmltext)} \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:scpt:mainResponder.controlPanel.emailConfig ! on emailConfig (flAddFormTags = true) { ÇChanges Ç6/16/05; 10:56:30 AM by TAC Çcommented workspace.pt = pta^ Ç4/13/04; 12:40:22 AM by JES ÇOptional param, flAddFormTags, used for calling this page within a radio.prefs.browser outline. Ç12/17/01; 2:30:49 PM by PBS ÇCreated. Email Frontier configuration to someone (such as UserLand). No passwords are included in the email. local (pta = html.getpagetableaddress ()); pta^.title = "Email Config"; Çworkspace.pt = pta^ local (htmltext = "", indentlevel = 0); on add (s) { htmltext = htmltext + string.filledstring ("\t", indentlevel) + s + "\r"}; bundle { //prompt add ("<p>Enter an email address in the form below and click on Submit, and an extensive status report for your Frontier configuration will be sent through email to the designated address. (No passwords are included in the email.)</p>")}; local (email = user.prefs.mailaddress); bundle { //send email if args are present local (args); new (tabletype, @args); if pta^.method == "POST" { args = pta^.postArgs} else { //it's a GET webserver.parseargs (pta^.searchargs, @args)}; if defined (args.email) { email = args.email; try { mainResponder.utilities.mailConfig (args.email); local (t); new (tabletype, @t); t.email = args.email; t.now = clock.now (); add ("<p><font color=\"#00008B\">A configuration email has been sent to " + email + " on " + t.now + ".</font></p>")} else { if sizeOf (user.prefs.mailHost) == 0 { add ("<p><font color=\"#8B0000\">Can't send your configuration information via email because your outgoing (SMTP) mail server has not been set.</font></p>")} else { add ("<p><font color=\"#8B0000\">" + tryError + "</font></p>")}}} else { if sizeOf (user.prefs.mailHost) == 0 { add ("<p>In order for Frontier to send your configuration information via email, you will need to first set your outgoing (SMTP) mail server.</p>")}}}; if flAddFormTags { add ("<form method=\"GET\">"); indentlevel++}; add ("<table cellspacing=\"10\" cellpadding=\"0\">"); indentlevel++; add ("<tr><td>Email to:</td><td><input type=text size=\"50\" name=\"email\" value=\"" + email + "\"></td></tr>"); add ("<tr><td> </td><td><input type=\"submit\" value=\"Send Email\"></td></tr>"); add ("</table>"); indentlevel--; if flAddFormTags { add ("</form>"); indentlevel--}; return (htmltext)} \ No newline at end of file |
|
From: creedon <icr...@us...> - 2005-06-16 22:31:22
|
Update of /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/adminSite/website In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20572 Modified Files: maintenance Log Message: de-Manilazation Index: maintenance =================================================================== RCS file: /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/adminSite/website/maintenance,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** maintenance 26 Mar 2005 21:45:17 -0000 1.1.1.1 --- maintenance 16 Jun 2005 22:31:12 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:scpt:mainResponder.adminSite.website.maintenance ! on maintenance () { ÇChanges Ç9/8/02; 4:46:12 PM by JES ÇFixed a typo. Implemented the Reset search enging index function, with a confirmation page. Ç8/18/02; 10:08:53 PM by JES ÇCreated. Render a page of server maintenance functions. local (pta = html.getPageTableAddress ()); pta^.title = "Maintenance"; local (htmltext); on add (s) { htmltext = htmltext + (s + "\r");}; local (backupConfirmText = "", searchConfirmText = ""); if pta^.method == "POST" { local (adrargs = @pta^.postArgs); case true { //figure out which button the user clicked defined (adrargs^.backupNow) { thread.callScript (@manilaSuite.backups.backupAllSites, {}); local (notificationlist = config.manila.backups.notifyList); if typeOf (notificationlist) == listType { notificationlist = ""; local (oneaddr); for oneaddr in config.manila.backups.notifyList { notificationlist = notificationlist + oneaddr + ", "}; notificationlist = string.delete (notificationlist, sizeOf (notificationlist) - 1, 2)}; backupConfirmText = "Manila site backups have been started. When the backups are complete, an email notification will be sent to " + notificationlist + " when the backup operation is complete."}; defined (adrargs^.indexNow) { local (adr); for adr in @config.manila.sites { local (adrsite = adr^); try {adrsite^.["#newsSite"].search.indexQueue.flRunning = true}}; searchConfirmText = "All Manila sites on this server have been scheduled to be re-indexed by the Search Engine Server."}; defined (adrargs^.resetIndex) { add ("<form method=\"POST\">"); add ("<p>Are you sure you want to completely reset the entire search engine index?</p><p>This operation cannot be undone.</p>"); add ("<p><br /><input type=\"submit\" name=\"cancel\" value=\"Cancel\" /> <input type=\"submit\" name=\"resetIndexConfirm\" value=\"Reset Index\" /></p>"); add ("</form>"); return (htmltext)}; defined (adrargs^.resetIndexConfirm) { mainResponder.search.utilities.assureIndex (); local (indexpath = mainResponder.search.utilities.getIndexPath ()); local (adrindex = @[indexpath].index); local (adrpageinfo = @[indexpath].pageInfo); new (tableType, adrindex); new (tableType, adrpageinfo); fileMenu.saveMyRoot (adrindex); searchConfirmText = "The search engine index has been completely reset. Sites for which indexing is enabled will have new or changed pages indexed."}}}; bundle { //explanatory text add ("<p>This page provides access to server-wide maintenance functions like Backups, Search Engine Indexing options.</p>")}; bundle { //database update options add ("<h4><a name=\"updates\"></a>Updates</h4>"); add ("<form method=\"POST\">"); bundle { //explanatory text add ("<p>Frontier can automatically connect to a server at UserLand, to get new features and bug fixes. Only those parts that have changed since the last update will be installed. To update your databases now, click the Update Now button.</p>")}; add (mainResponder.adminSite.prefs.updateNowButton (false)); add ("</form>")}; add ("<br /><hr size=\"1\">"); bundle { //backup options add ("<h4><a name=\"manilaBackups\"></a>Backup Manila Sites</h4>"); add ("<form method=\"POST\">"); bundle { //explanatory text add ("<p>To make an immediate backup of all sites which have automatic backups enabled, click the Backup Now button.</p>")}; bundle { //Backup Now and Backup All Sites buttons add ("<p><br /><input type=\"submit\" name=\"backupNow\" value=\"Backup Now\" /></p>")}; if backupConfirmText == "" { add ("<p><br />You can enable backups for any site by clicking the site's name on the <a href=\"" + mainResponder.adminSite.urls.home + "\">home page</a>, and then clicking the enable link, in the Backups section.</p>")} else { add ("<br /><b>" + backupConfirmText + "</b></p>")}; add ("</form>")}; add ("<br /><hr size=\"1\">"); bundle { //search engine indexing options add ("<h4><a name=\"searchEngine\"></a>Search Engine</h4>"); if config.mainResponder.prefs.flSearchEngine { add ("<form method=\"POST\">"); bundle { //explanatory text add ("<p>To re-index all Manila sites for which Search Engine Indexing is enabled, click the Index Now button. To clear the Search Engine index completely, click the Reset Index button.</p>")}; bundle { //Index Now and Reset Index buttons add ("<p><br /><input type=\"submit\" name=\"indexNow\" value=\"Index Now\" /> <input type=\"submit\" name=\"resetIndex\" value=\"Reset Index\" /></p>")}; add ("</form>"); if searchConfirmText != "" { add ("<b><br /><b>" + searchConfirmText + "</b></p>")}} else { //disabled -- let the admin know add ("<p>Search Engine Indexing options are unavailable because the Search Engine is currently disabled. To turn on the Search Engine, use the Search Engine settings page.</p>")}}; return (htmltext)} \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:scpt:mainResponder.adminSite.website.maintenance ! on maintenance () { ÇChanges Ç6/16/05; 2:53:00 PM by TAC Çde-Manilaize Ç9/8/02; 4:46:12 PM by JES ÇFixed a typo. Implemented the Reset search enging index function, with a confirmation page. Ç8/18/02; 10:08:53 PM by JES ÇCreated. Render a page of server maintenance functions. local (pta = html.getPageTableAddress ()); pta^.title = "Maintenance"; local (htmltext); on add (s) { htmltext = htmltext + (s + "\r");}; local (backupConfirmText = "", searchConfirmText = ""); if pta^.method == "POST" { local (adrargs = @pta^.postArgs); case true { //figure out which button the user clicked Çdefined (adrargs^.backupNow) // 6/16/05; 2:52:33 PM by TAC - disabled, Manila specific code, eventually remove? Çthread.callScript (@manilaSuite.backups.backupAllSites, {}) Çlocal (notificationlist = config.manila.backups.notifyList) Çif typeOf (notificationlist) == listType Çnotificationlist = "" Çlocal (oneaddr) Çfor oneaddr in config.manila.backups.notifyList Çnotificationlist = notificationlist + oneaddr + ", " Çnotificationlist = string.delete (notificationlist, sizeOf (notificationlist) - 1, 2) ÇbackupConfirmText = "Manila site backups have been started. When the backups are complete, an email notification will be sent to " + notificationlist + " when the backup operation is complete." defined (adrargs^.indexNow) { local (adr); for adr in @config.manila.sites { local (adrsite = adr^); try {adrsite^.["#newsSite"].search.indexQueue.flRunning = true}}; searchConfirmText = "All Manila sites on this server have been scheduled to be re-indexed by the Search Engine Server."}; defined (adrargs^.resetIndex) { add ("<form method=\"POST\">"); add ("<p>Are you sure you want to completely reset the entire search engine index?</p><p>This operation cannot be undone.</p>"); add ("<p><br /><input type=\"submit\" name=\"cancel\" value=\"Cancel\" /> <input type=\"submit\" name=\"resetIndexConfirm\" value=\"Reset Index\" /></p>"); add ("</form>"); return (htmltext)}; defined (adrargs^.resetIndexConfirm) { mainResponder.search.utilities.assureIndex (); local (indexpath = mainResponder.search.utilities.getIndexPath ()); local (adrindex = @[indexpath].index); local (adrpageinfo = @[indexpath].pageInfo); new (tableType, adrindex); new (tableType, adrpageinfo); fileMenu.saveMyRoot (adrindex); searchConfirmText = "The search engine index has been completely reset. Sites for which indexing is enabled will have new or changed pages indexed."}}}; bundle { //explanatory text add ("<p>This page provides access to server-wide maintenance functions like Backups, Search Engine Indexing options.</p>")}; bundle { //database update options add ("<h4><a name=\"updates\"></a>Updates</h4>"); add ("<form method=\"POST\">"); bundle { //explanatory text add ("<p>Frontier can automatically connect to a server at UserLand, to get new features and bug fixes. Only those parts that have changed since the last update will be installed. To update your databases now, click the Update Now button.</p>")}; add (mainResponder.adminSite.prefs.updateNowButton (false)); add ("</form>")}; Ç6/16/05; 2:52:33 PM by TAC - disabled, Manila specific code, eventually remove? Çadd ("<br /><hr size=\"1\">") Çbundle //backup options Çadd ("<h4><a name=\"manilaBackups\"></a>Backup Manila Sites</h4>") Çadd ("<form method=\"POST\">") Çbundle //explanatory text Çadd ("<p>To make an immediate backup of all sites which have automatic backups enabled, click the Backup Now button.</p>") Çbundle //Backup Now and Backup All Sites buttons Çadd ("<p><br /><input type=\"submit\" name=\"backupNow\" value=\"Backup Now\" /></p>") Çif backupConfirmText == "" Çadd ("<p><br />You can enable backups for any site by clicking the site's name on the <a href=\"" + mainResponder.adminSite.urls.home + "\">home page</a>, and then clicking the enable link, in the Backups section.</p>") Çelse Çadd ("<br /><b>" + backupConfirmText + "</b></p>") Çadd ("</form>") add ("<br /><hr size=\"1\">"); bundle { //search engine indexing options add ("<h4><a name=\"searchEngine\"></a>Search Engine</h4>"); if config.mainResponder.prefs.flSearchEngine { add ("<form method=\"POST\">"); bundle { //explanatory text add ("<p>To re-index all Manila sites for which Search Engine Indexing is enabled, click the Index Now button. To clear the Search Engine index completely, click the Reset Index button.</p>")}; bundle { //Index Now and Reset Index buttons add ("<p><br /><input type=\"submit\" name=\"indexNow\" value=\"Index Now\" /> <input type=\"submit\" name=\"resetIndex\" value=\"Reset Index\" /></p>")}; add ("</form>"); if searchConfirmText != "" { add ("<b><br /><b>" + searchConfirmText + "</b></p>")}} else { //disabled -- let the admin know add ("<p>Search Engine Indexing options are unavailable because the Search Engine is currently disabled. To turn on the Search Engine, use the Search Engine settings page.</p>")}}; return (htmltext)} \ No newline at end of file |
|
From: creedon <icr...@us...> - 2005-06-16 22:31:17
|
Update of /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/adminSite/data/localization/languages/english/outlines In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20526 Modified Files: prefs Log Message: de-Manilazation Index: prefs =================================================================== RCS file: /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/adminSite/data/localization/languages/english/outlines/prefs,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** prefs 26 Mar 2005 21:45:10 -0000 1.1.1.1 --- prefs 16 Jun 2005 22:31:07 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:optx:mainResponder.adminSite.data.localization.languages.english.outlines.prefs ! Server Settings Basic Settings You can edit the contact information for the webmaster, SMTP server and serial number used for this server. <%radio.prefs.stringPref ("Webmaster name", @user.prefs.name)%> <%radio.prefs.stringPref ("Webmaster email address", @user.prefs.mailAddress)%> <%radio.prefs.stringPref ("Organization", @user.prefs.organization)%> <%radio.prefs.stringPref ("Outgoing (SMTP) mail server", @user.prefs.mailHost)%> <%radio.prefs.stringPref ("Serial Number", @user.prefs.serialNumber)%> Security You can set security access controls on all content that the server renders. The values on this page control the global settings. The directory and script settings can be over-ridden at the site level, while IP address security is global. <%mainResponder.adminSite.prefs.securityLevel ("Admin security level")%> <%radio.prefs.checkboxPref ("Check this box to allow directory listings by default.", @config.mainresponder.globals.allowDirectoryListings)%> <%radio.prefs.checkboxPref ("Check this box to allow script listings by default.", @config.mainresponder.globals.allowScriptListings)%> <%radio.prefs.checkboxPref ("Check this box to allow scripts to run by default.", @config.mainresponder.globals.allowScriptsToRun)%> <br /> <b>Blocking HTTP requests by IP address</b> <%radio.prefs.checkboxPref ("Check this box to allow HTTP access <i>only</i> from the following IP addresses.", @config.mainresponder.prefs.flAllowByIpOnly)%> <%radio.prefs.textAreaPref ("IP addresses<br>separated by<br>commas", @config.mainresponder.prefs.allowedIpAddresses)%> <br /> <b>Membership</b> <%radio.prefs.checkboxPref ("Check this box to use the more secure encrypted cookie format. The encrypted format does not store passwords in membership cookies. Instead it hashes the password, plus additional information, to make membership more secure.", @config.mainresponder.prefs.flMembershipHashedCookies)%> Administrators You can add or remove administrators access to the Frontier Admin Site or edit the information for an existing administrator. You can also grant access to the WebEdit server to an administrator. <%mainResponder.adminSite.prefs.listAdministrators ()%> <br /><%mainResponder.adminSite.prefs.addOrEditAdministrator ()%> Domains The settings on this page are used configure virtual domains and sub-sites. For each site hosted on your server, there's a domain, a path, and a collection of objects which comprise the site. For a site hosted from an object database -- a Manila site for example, the objects will be specified by a database address. For a site hosted fom the filesystem, the objects will be specified by the path to a folder on disk. To map a domain and path to a site, type the domain name, and the path under the domain where the site will be served. In the Object field, enter either an object database address or the path to a folder of files on disk. Then click the Add Site button to add the site to the hierarchy. You can specify a redirect by entering the URL to redirect to, starting with http:\\// without a trailing slash, for example http:\\//www.example.com -- This will redirect all requests for the specified URL to the site of your choosing. <%local (pta = html.getPageTableAddress ()); pta^.flAddSubmitButton = false; if defined (pta^.postArgs.delete) {""} else {mainResponder.adminSite.prefs.addMappingToSiteTree () + "<br /><br />"}%> <b>Domains on this server</b> <%mainResponder.adminSite.prefs.listDomains ()%> Search Engine You can enable and set up the search engine server on this page. <%radio.prefs.checkboxPref ("Check this box to enable the search engine.", @config.mainResponder.prefs.flSearchEngine)%> <%radio.prefs.stringPref ("Search page URL", @config.mainResponder.urls.searchHome,size:80, maxlength:300)%> <%radio.prefs.numberPref ("Index stored pages every", @config.mainResponder.search.prefs.minutesBetweenIndexes, 1, textToRight:" minute(s).")%> <%radio.prefs.checkboxPref ("Check this box if you want to store the full text of indexed pages, so that excerpts can be displayed in search results.", @config.mainResponder.search.prefs.flStoreFullText)%> <%radio.prefs.checkboxPref ("Check this box to allow public search submissions.", @config.mainresponder.prefs.flAllowPublicSearchSubmissions)%> <%radio.prefs.checkboxPref ("Check this box to enable search engine logging", @config.mainResponder.search.prefs.flLogEnabled)%> MIME Types <%if defined (searchArgTable.itemToEdit) {"To change the MIME type associated with the ." + searchArgTable.itemToEdit + " extension, fill in the Type input box and click the Submit button."} else {"To add a new MIME type, fill in the suffix and its MIME type, then click the Add New Type button. To delete one or more types, check its checkbox and click the Delete button at the bottom of the page. To edit a type, click an Edit link on the right."}%> <%mainResponder.adminSite.prefs.mimeTypes ()%> Update Notification Frontier can automatically connect to a server at UserLand each night, to check the availability of new features and bug fixes. When software updates are available, Frontier will notify you via email. It's recommended that you turn this feature on. <%radio.prefs.checkboxPref ("Check this box to receive email notification when new software updates are available.", @config.mainResponder.prefs.flUpdateNightly)%> <br />You can view a list of pending software updates, and optionally install them via the <%"<a href=\"" + mainResponder.adminSite.urls.updates + "\">"%>Updates page</a>. <br /><b>Databases to update</b> Check the box next to each database that you want to be updated when installing new software. It's strongly recommended that you enable updating all of these databases. <%mainResponder.adminSite.prefs.dbToUpdateCheck ("Frontier.root")%> <%mainResponder.adminSite.prefs.dbToUpdateCheck ("mainResponder.root")%> <%mainResponder.adminSite.prefs.dbToUpdateCheck ("manila.root")%> <%mainResponder.adminSite.prefs.dbToUpdateCheck ("prefs.root")%> Backups This page contains the global backup settings for Manila sites, Frontier databases, and discussion group archives in XML. <br /> <b>Manila Sites</b> For Manila sites which have backups enabled, Frontier can automatically backup the sites nightly. Backups are incremental -- only new or changed parts will be backed up. <%radio.prefs.checkboxPref ("Check this box to automatically back up enabled Manila sites every night.", @config.manila.backups.flEnabled)%> <%radio.prefs.stringPref ("Backup folder", @config.manila.backups.backupFolder, size:60)%> <%radio.prefs.stringPref ("Send email notification to", @config.manila.backups.notifyList, size:35)%> <%radio.prefs.numberPref ("Start backups at", @config.manila.backups.hourToBackUp, lowerbound:0, upperbound:23, textToRight:" hours after midnight.")%> Note: You can manually backup any site whenever you want via the administrative interface for the site, accessed by clicking the site's name on the Admin <a href="/">home page</a>. <br /><br /><B>Databases</b> Frontier can automatically save all changed databases every minute, and make backup copies each night. It's strongly recommended that you enable the saving of changed databases every minute. Depending on the size of your databases, nightly backups may take some time, so you may want to only enable this feature if your databases are small, or if the server traffic is low at night. <%radio.prefs.checkboxPref ("Check this box to save all changed databases every minute.", @config.mainresponder.prefs.flSaveDatabasesEveryMinute)%> <%radio.prefs.checkboxPref ("Check this box to back up all changed files in the Guest Databases folder every night?", @config.mainResponder.prefs.flBackupNightly)%> <%radio.prefs.stringPref ("Backup folder", @config.mainResponder.prefs.backupFolder, size:60)%> <br /><br /><b>Discussion group archives</b> The discussion group archives feature saves an XML file for every discussion group message. Only new or changed discussion group messages will be archived in XML. <%radio.prefs.checkboxPref ("Check this box to archive changes to discussion group messages in XML?", @config.mainResponder.prefs.flArchiveDiscuss)%> <%radio.prefs.stringPref ("Archive folder", @config.mainResponder.prefs.discussArchiveFolder, size:60)%> Logging and Statistics Frontier can maintain logs detailing what happens on your server and statistics that provide a cumulative view. You can choose which logs and stats Frontier should maintain, and where to store the logs. <br> <%radio.prefs.checkboxPref ("Check this box to log every HTTP request.", @config.mainResponder.prefs.flLog)%> <%radio.prefs.checkboxPref ("Check this box to log every XML-RPC and SOAP request.", @user.betty.prefs.flKeepServerLog)%> <%radio.prefs.checkboxPref ("Check this box to log root updates.", @user.rootUpdates.prefs.flShowUpdatesToUser)%> <%radio.prefs.checkboxPref ("Check this box to enable search engine logging", @config.mainResponder.search.prefs.flLogEnabled)%> <%radio.prefs.checkboxPref ("Check this box to log scheduled tasks.", @user.scheduler.prefs.logInGuestDatabase)%> <%radio.prefs.checkboxPref ("Check this box to close and re-open the log database every hour, to reclaim allocated memory.", @config.mainresponder.prefs.flLogReopenHourly)%> <%radio.prefs.stringPref ("Log folder", @user.log.prefs.folder, size:70, maxlength:300)%> <br> <b>Common Log Format</b> Common log format is a text file format used by popular web servers like Apache. Many log analysis programs used to generate traffic graphs and summaries can read this format. Settings in this section enable or disable the output of common log text files, and determine what information is included. <%table.surePath ("system.temp.mainResponder.misc.flCommonLog"); local (ad...@sy..., adr...@us..., s); if method != "POST" {adr^ = defined (adrcallback^)}; s=radio.prefs.checkboxPref ("Check this box to log HTTP requests in common log format.", adr); if method == "POST" {if adr^ {script.newScriptObject ("on commonLog (pta)\r\treturn (webserver.postFilters.commonLog (pta, true))", adrcallback)} else {if defined (adrcallback^) {delete (adrcallback)}}}; delete (adr); s%> <%radio.prefs.checkboxPref ("Check this box to use common log date format.", @user.webserver.prefs.commonLog.flUseCommonLogDateFormat)%> <%radio.prefs.checkboxPref ("Check this box to include virtual hosts.", @user.webserver.prefs.commonLog.flIncludeVirtualHosts)%> <%radio.prefs.checkboxPref ("Check this box to include referers.", @user.webserver.prefs.commonLog.flIncludeReferers)%> <%radio.prefs.checkboxPref ("Check this box to include User-Agents.", @user.webserver.prefs.commonLog.flIncludeUserAgents)%> <br> <b>Statistics</b> Frontier can count hits on a per-domain basis, complie nightly discussion group stats, and write XML reports listing the most read sites. <%radio.prefs.checkboxPref ("Check this box to compile discussion group stats every night.", @config.mainresponder.prefs.flDiscussStatsNightly)%> <%radio.prefs.checkboxPref ("Check this box to count total hits for each domain hosted on this server.", @user.webserver.prefs.flDomainStats)%> <%radio.prefs.checkboxPref ("Check this box to write nightly XML reports listing most-read sites.", @config.manila.prefs.flXmlSitesReport)%> Database Subscriptions You can publish a guest database and allow other people to subscribe to changes made to the guest database. Changes to the guest database made using WebEdit will be added to the updates flow for the database.<br /><br /> <%radio.prefs.checkboxPref ("Check this box to enable database subscriptions from this server to other copies of Frontier or Radio UserLand.", @config.mainresponder.prefs.flSubscriptions)%> <br /><b>Subscribable databases</b> Below is a list of all databases on this server. To enable or disable subscriptions for a given database, check or uncheck the box next to its name and click the Submit button below.<br /><br /> <%mainResponder.adminSite.prefs.listSubscribableDatabases ()%> WebEdit WebEdit allows remote access to your databases, from one copy of Frontier to another. On this page you can enable and disable the WebEdit server, add users, edit user information, and manage the custody of checked-out objects. <%local (pta = html.getPageTableAddress ()); pta^.flAddSubmitButton = false; if not defined (system.temp.mainResponder.misc) {new (tableType, @system.temp.mainResponder.misc)}; ""%> <%local (adrpref = @system.temp.mainResponder.misc.flWebEditEnabled, adrhandlers = @user.betty.rpcHandlers.webEdit); if method != "POST" {if defined (adrhandlers^) {adrpref^ = true} else {adrpref^ = false}}; local (s = radio.prefs.checkboxPref ("Check this box to enable the WebEdit server.", adrpref)); if method == "POST" {if adrpref^ {adrhandlers^ = @webeditServer.rpcHandlers.webEdit} else {try {delete (adrhandlers)}}}; s%> <br /><input type="submit" value="Submit"> <br> <b>Add User</b> To add a new WebEdit user, enter the user's name, email address and password below, and click the Add User button.<br><br> <%mainResponder.adminSite.prefs.addWebeditUser ()%> <br> <b>Current users</b> Below is a list of users who currently have WebEdit access to this server. To remove a user, check the box next to the user's name, and then click the Remove Users button below.<br><br> <%mainResponder.adminSite.prefs.listWebeditUsers ()%> <br> <b>Objects</b> The following objects have been checked out with WebEdit. To force the check-in of an object, check the box next to its name, and then click the Force Check-In button below.<br><br> <%mainResponder.adminSite.prefs.listObjects ()%> Debugging The settings on this page are for people who develop web applications in the Frontier environment. The debugging features help find problems with your code, and to isolate performance bottlenecks. Note that enabling these features can degrade server performance, and cause Frontier to use more memory and disk space than normal, so you should only enable them if needed. <br> <b>mainResponder debugging</b> <%radio.prefs.checkboxPref ("Check this box to run mainResponder in debug mode. This will cause low-level errors to display an error window in the Frontier application.", @config.mainresponder.prefs.flDebug)%> <%radio.prefs.checkboxPref ("Check this box to copy the paramtable to scratchpad.params after every request.", @config.mainresponder.prefs.flKeepParamTable)%> <br> <b>Profiling</b> Profiling allows you to find out what scripts and kernel verbs are being executed and for how long. It's a way of finding performance bottlenecks. With the feature enabled, you can view a web page showing the amount of time Frontier spent in each script and verb in processing the request by adding /profile/ to the begining of the path to the page. <%radio.prefs.checkboxPref ("Check this box to enable profiling.", @config.mainresponder.prefs.flProfiling)%> <br> <b>Miscellaneous</b> Below are miscellaneous debugging features which may be useful depending on the type of application you're developing. <%radio.prefs.checkboxPref ("Check this box to record automatic database opens in system.temp.", @config.mainresponder.prefs.flLogDatabaseOpens)%> <%radio.prefs.checkboxPref ("Check this box to log available memory.", @config.mainresponder.prefs.flLogMemavail)%> Email Config <%flAddSubmitButton = false; mainResponder.controlPanel.emailConfig ()%> Manila Preferences This page contains basic Manila preferences, which apply to all Manila sites on this server. <br> <b>Email subscriptions</b> The email subscriptions feature allows Manila site members to choose to receive responses to discussion group messages directly in email. <%radio.prefs.checkboxPref ("Check this box to allow email subscriptions to discussion group messages.", @config.manila.prefs.flDiscussAllowEmailSubscriptions)%> <br> <b>Mail-to-Weblog</b> The Mail-to-Weblog feature allows Managing Editors to configure Manila to periodically check an email account for new messages and post any messages whose subject matches their secret subject. <%radio.prefs.checkboxPref ("Check this box to allow Managing Editors to use the Mail-to-Weblog feature.", @config.manila.prefs.flMailToWeblogEnabled)%> <%radio.prefs.numberPref ("Check for new mail-to-weblog messages every", @config.manila.prefs.mailToWeblogSecsBetwChecks, 30, 5600, textToRight:" seconds.")%> <br> <b>Radio hosting</b> The Radio Hosting feature allows managing editors to configure their discussion group to host Radio UserLand comments. <%radio.prefs.checkboxPref ("Check this box to enable Radio Hosting.", @config.manila.prefs.flRadioHostingEnabled)%> <br> <b>Weblogs.Com community</b> <a href="http://www.weblogs.com/">Weblogs.Com</a> is a centralized service operated by UserLand that simply presents a list of weblogs that have changed in the last three hours. If this feature is enabled, managing editors can choose to have their sites automatically appear in the list of changed sites on Weblogs.Com, whenever their home page changes. <%local (adrpref = @config.manila.prefs.flSendUpdateNoticesToUserLand); if not defined (adrpref^) {adrpref^ = false}; radio.prefs.checkboxPref ("Check this box to notify Weblogs.Com when Manila sites' home pages are updated.", adrpref)%> <br> <b>TrackBack</b> Trackback is a set of specifications published by SixApart, the company that develops Movable Type, which is used to notify other sites when a post is created which links to the site. A TrackBack notification message is called a "ping". For news item sites, Manila supports both outbound and inbound TrackBack pings, as well as auto-discovery. <%radio.prefs.checkboxPref ("Check this box to enable TrackBack for news item sites.", @config.manila.prefs.flTrackbackEnabled)%> <br> <b>Radio Community Server integration</b> RCS provides a list of updated sites, a page of rankings with the top-100 most read sites today and for all time, and also tracks referers for individual sites. These settings allow RCS to also track changes and statistics for the Manila sites on your server. <%radio.prefs.checkboxPref ("Check this box if you want Manila sites to appear on the RCS updates page.", @config.manila.prefs.flRcsUpdatesListsManilaSites)%> <%radio.prefs.checkboxPref ("Check this box if you want Manila sites to be included in the RCS rankings page.", @config.manila.prefs.flRcsStatsCountManilaSites)%> <%radio.prefs.checkboxPref ("Check this box if you want RCS to track referers for Manila sites.", @config.manila.prefs.flRcsReferersCountManilaSites)%> <br> <b>Publish and Subscribe</b> The Publish and Subscribe feature allows news readers and aggregators which support the feature to request notification from Manila whenever a site's RSS feed changes. When a feed changes, Manila sends a small XML-RPC or SOAP message to all subscribers notifying them of the change. <%table.surePath ("system.temp.mainResponder.misc.flManilaPubSubEnabled"); local (adrpref = @system.temp.mainResponder.misc.flManilaPubSubEnabled, adrhandlers = @user.betty.rpcHandlers.manilaRss); if method != "POST" {if defined (adrhandlers^) {adrpref^ = true} else {adrpref^ = false}}; local (s = radio.prefs.checkboxPref ("Check this box to enable publish-and-subscribe for Manila RSS feeds.", adrpref)); if method == "POST" {if adrpref^ {adrhandlers^ = @manilaSuite.rss.rpcHandlers} else {try {delete (adrhandlers)}}}; s%> Hosting The hosting preferences let you choose the setup options for new sites on this server: who can create new sites, the domain of the sites and where the sites are created. You can also setup shared membership, default site language and editing tool, and customize the default home page text. <%mainResponder.adminSite.prefs.hosting ()%> RPC Interfaces XML-RPC and SOAP are open protocols, that allow software running on separate computers to make procedure calls over the Internet. Manila supports both XML-RPC and SOAP. You can enable or disable Manila's XML-RPC and SOAP interfaces using the settings on this page. <br> <%if not defined (system.temp.mainResponder.misc) {new (tableType, @system.temp.mainResponder.misc)}; local (adrpref = @system.temp.mainResponder.misc.flManilaRpcEnabled, adrhandlers = @user.betty.rpcHandlers.manila); if method != "POST" {if defined (adrhandlers^) {adrpref^ = true} else {adrpref^ = false}}; local (s = radio.prefs.checkboxPref ("Check this box to enable Manila's XML-RPC interfaces.", adrpref)); if method == "POST" {if adrpref^ {adrhandlers^ = @manilaSuite.rpcHandlers} else {try {delete (adrhandlers)}}}; s%> <%local (adrpref = @system.temp.mainResponder.misc.flManilaSoapEnabled, adrhandlers = @user.soap.rpcHandlers.manila); if method != "POST" {if defined (adrhandlers^) {adrpref^ = true} else {adrpref^ = false}}; local (s = radio.prefs.checkboxPref ("Check this box to enable Manila's SOAP interfaces.", adrpref)); if method == "POST" {if adrpref^ {adrhandlers^ = @manilaSuite.rpcHandlers} else {try {delete (adrhandlers)}}}; s%> <%local (adrpref = @system.temp.mainResponder.misc.flManilaBloggerApiEnabled, adrhandlers = @user.betty.rpcHandlers.blogger); if method != "POST" {if defined (adrhandlers^) {adrpref^ = true} else {adrpref^ = false}}; local (s = radio.prefs.checkboxPref ("Check this box to enable Manila's BloggerAPI interfaces.", adrpref)); if method == "POST" {if adrpref^ {adrhandlers^ = @manilaSuite.bloggerApi.rpcHandlers} else {try {delete (adrhandlers)}}}; s%> <%local (adrpref = @system.temp.mainResponder.misc.flManilaMetaWeblogApiEnabled, adrhandlers = @user.betty.rpcHandlers.metaWeblog, adrsoaphandlers = @user.soap.rpcHandlers.metaWeblog); if method != "POST" {if defined (adrhandlers^) {adrpref^ = true} else {adrpref^ = false}}; local (s = radio.prefs.checkboxPref ("Check this box to enable the Meta-Weblog API for Manila.", adrpref)); if method == "POST" {if adrpref^ {adrhandlers^ = @manilaSuite.metaWeblogApi.rpcHandlers; adrsoaphandlers^ = @manilaSuite.metaWeblogApi.rpcHandlers} else {try {delete (adrhandlers)}; try {delete (adrsoaphandlers)}}}; s%> <%local (adrpref = @system.temp.mainResponder.misc.flManilaPluginRpcEnabled); if method != "POST" {if defined (user.betty.rpcHandlers.manilaPlugins) {adrpref^ = true} else {adrpref^ = false}}; local (s = radio.prefs.checkboxPref ("Check this box to enable RPC interfaces for Manila Plug-ins.", adrpref)); if method == "POST" {if adrpref^ {manilaSuite.plugins.enableRpcHandlers ()} else {manilaSuite.plugins.disableRpcHandlers ()}}; s%> Themes This page lists all of the Manila Themes and Discussion Group Themes that are installed on this server. You can enable or disable a Theme by checking or un-checking the box next to its name, and clicking the Submit button at the bottom of the page. <br> <%mainResponder.adminSite.prefs.themes ()%> Static Files <b>Static Rendering</b> The Static Rendering feature allows pages in Manila sites to be rendered to disk or an FTP server, where they can be served by a static web server. <br> <%radio.prefs.checkboxPref ("Check this box to enable static rendering.", @config.manila.prefs.flStaticRenderingEnabled)%> <br> File System rendering allows rendered pages to be written to disk or a shared volume. <%radio.prefs.checkboxPref ("Check this box to enable file system based static rendering.", @config.manila.prefs.flStaticRenderingFileEnabled)%> <%radio.prefs.stringPref ("Folder for static rendering", @config.manila.prefs.staticRenderingFolder)%> <%radio.prefs.stringPref ("URL for static rendering", @config.manila.prefs.staticRenderingUrl)%> <br> FTP rendering allows rendered pages to be sent to an FTP server. <%radio.prefs.checkboxPref ("Check this box to enable FTP based static rendering.", @config.manila.prefs.flStaticRenderingFTPEnabled)%> <br> <b>Static Pictures</b> Manila can write uploaded pictures to disk or a shared volume, where they can be served by a server that's optimized for serving image files. <br> <%radio.prefs.checkboxPref ("Check this box to enable the static pictures feature.", @config.manila.prefs.flWritePicturesToStaticServer)%> <br> <%radio.prefs.stringPref ("Folder for static pictures", @config.manila.prefs.staticFilesFolder)%> <%radio.prefs.stringPref ("URL for static pictures", @config.manila.prefs.staticFilesUrl)%> <br> <b>Gems</b> You can choose to allow Manila editors to upload files of any kind. These files will be written to disk, and are intended to be served by a static server like Apache or IIS. <br> <%radio.prefs.checkboxPref ("Check this box to allow editors to upload files of any type.", @config.manila.prefs.flGemsEnabled)%> <br> <%radio.prefs.stringPref ("Folder for Gems", @config.manila.prefs.gemsFolder)%> <%radio.prefs.stringPref ("URL for Gems", @config.manila.prefs.gemsUrl)%> <%mainResponder.adminSite.prefs.megabytePref ("Gems size limit", @config.manila.prefs.gemsLimit, texttoright:"MB")%> Site Downloads The Manila site download feature allows Manila site editors to download their sites as a Frontier database. On this page, you can enable or disable Manila site downloads, and specify the folder and URL from which the databases will be served.<br><br> <%radio.prefs.checkboxPref ("Check this box to allow Manila editors to download their sites.", @config.manila.prefs.flSiteDownloadsEnabled)%> <br> <%radio.prefs.stringPref ("Folder for exported site databases", @config.manila.prefs.siteDownloadFolder)%> <%radio.prefs.stringPref ("URL for site databases", @config.manila.prefs.siteDownloadUrl)%> <br> <%radio.prefs.checkboxPref ("Check this box if downloaded Manila sites will be served by Frontier. Un-check it if they will be served by a static server such as Apache or IIS.", @config.manila.prefs.flFrontierServesDownloadedSites)%> Legal Macros <%mainResponder.adminSite.prefs.legalMacros ()%> News Aggregator <%xml.aggregator.init (); radio.prefs.checkboxPref ("Check this box to enable the news aggregator on this server. If it's enabled, Frontier will automatically scan subscribed channels once per hour.", @aggregatorData.prefs.enabled)%> <br><b>Features for your users</b> <%radio.prefs.checkboxPref ("Check this box to allow Managing Editors to subscribe to any news feed.", @config.manila.prefs.flAggregatorAllowAnyRssUrl)%> <%radio.prefs.checkboxPref ("Check this box to automatically subscribe to all sites on this server.", @config.manila.prefs.flAggregatorSubAllSitesOnServer)%> <br><b>When and how the aggregator runs</b>: <br>At what minute past the top of each hour should the aggregator scan for news? <%radio.prefs.numberPref ("Minute to scan", @aggregatorData.prefs.minuteToRead, upperbound:59)%> <br>The aggregator is multi-threaded. This means it can read read several RSS feeds at the same time. The larger this number the quicker it will finish each scan, but it may make the server slower while the scan is running. <%radio.prefs.numberPref ("Number of threads", @aggregatorData.prefs.maxThreads, lowerbound:1, upperbound:10)%> <br><b>Archiving options</b>: <br>The news aggregator can automatically delete old stories from the database. It is highly recommended that you enable this option.<br><br> <%radio.prefs.checkboxPref ("Check this box to automatically delete old news items once an hour.", @aggregatorData.prefs.flArchive)%> <br>How old must an item be (in hours) in order to be deleted? <%radio.prefs.numberPref ("Hours before deletion", @aggregatorData.prefs.hoursBeforeArchive, lowerbound:1, upperbound:100)%> Subscriptions <%mainResponder.adminSite.prefs.subscriptions ()%> Plug-ins Manila plug-ins can extend Manila's functionality in many ways. On this page, you can specify which plug-ins are available by default. To configure plug-in availability for specific sites, use the administrative interface for the site, accessed by clicking the site's name on the Admin <a href="/">home page</a>. <br> <b>Global settings</b> <%radio.prefs.checkboxPref ("Check this box to make all plug-ins available by default.", @config.manila.prefs.flPluginsVisibleByDefault)%> <%radio.prefs.checkboxPref ("Check this box to enable #isVisible scripts for registered plug-ins.", @config.manila.prefs.flPluginVisibilityScriptsEnabled)%> <br> <b>Plug-in Settings</b> To override the visibility setting for specific plug-ins, choose an option from the pop-up menu next to each plug-in's name below: <%mainResponder.adminSite.prefs.pluginSettings ()%> \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:optx:mainResponder.adminSite.data.localization.languages.english.outlines.prefs ! Server Settings Basic Settings You can edit the contact information for the webmaster, SMTP server and serial number used for this server. <%radio.prefs.stringPref ("Webmaster name", @user.prefs.name)%> <%radio.prefs.stringPref ("Webmaster email address", @user.prefs.mailAddress)%> <%radio.prefs.stringPref ("Organization", @user.prefs.organization)%> <%radio.prefs.stringPref ("Outgoing (SMTP) mail server", @user.prefs.mailHost)%> Security You can set security access controls on all content that the server renders. The values on this page control the global settings. The directory and script settings can be over-ridden at the site level, while IP address security is global. <%mainResponder.adminSite.prefs.securityLevel ("Admin security level")%> <%radio.prefs.checkboxPref ("Check this box to allow directory listings by default.", @config.mainresponder.globals.allowDirectoryListings)%> <%radio.prefs.checkboxPref ("Check this box to allow script listings by default.", @config.mainresponder.globals.allowScriptListings)%> <%radio.prefs.checkboxPref ("Check this box to allow scripts to run by default.", @config.mainresponder.globals.allowScriptsToRun)%> <br /> <b>Blocking HTTP requests by IP address</b> <%radio.prefs.checkboxPref ("Check this box to allow HTTP access <i>only</i> from the following IP addresses.", @config.mainresponder.prefs.flAllowByIpOnly)%> <%radio.prefs.textAreaPref ("IP addresses<br>separated by<br>commas", @config.mainresponder.prefs.allowedIpAddresses)%> <br /> <b>Membership</b> <%radio.prefs.checkboxPref ("Check this box to use the more secure encrypted cookie format. The encrypted format does not store passwords in membership cookies. Instead it hashes the password, plus additional information, to make membership more secure.", @config.mainresponder.prefs.flMembershipHashedCookies)%> Administrators You can add or remove administrators access to the Frontier Admin Site or edit the information for an existing administrator. You can also grant access to the WebEdit server to an administrator. <%mainResponder.adminSite.prefs.listAdministrators ()%> <br /><%mainResponder.adminSite.prefs.addOrEditAdministrator ()%> Domains The settings on this page are used configure virtual domains and sub-sites. For each site hosted on your server, there's a domain, a path, and a collection of objects which comprise the site. For a site hosted from an object database -- a Manila site for example, the objects will be specified by a database address. For a site hosted fom the filesystem, the objects will be specified by the path to a folder on disk. To map a domain and path to a site, type the domain name, and the path under the domain where the site will be served. In the Object field, enter either an object database address or the path to a folder of files on disk. Then click the Add Site button to add the site to the hierarchy. You can specify a redirect by entering the URL to redirect to, starting with http:\\// without a trailing slash, for example http:\\//www.example.com -- This will redirect all requests for the specified URL to the site of your choosing. <%local (pta = html.getPageTableAddress ()); pta^.flAddSubmitButton = false; if defined (pta^.postArgs.delete) {""} else {mainResponder.adminSite.prefs.addMappingToSiteTree () + "<br /><br />"}%> <b>Domains on this server</b> <%mainResponder.adminSite.prefs.listDomains ()%> Search Engine You can enable and set up the search engine server on this page. <%radio.prefs.checkboxPref ("Check this box to enable the search engine.", @config.mainResponder.prefs.flSearchEngine)%> <%radio.prefs.stringPref ("Search page URL", @config.mainResponder.urls.searchHome,size:80, maxlength:300)%> <%radio.prefs.numberPref ("Index stored pages every", @config.mainResponder.search.prefs.minutesBetweenIndexes, 1, textToRight:" minute(s).")%> <%radio.prefs.checkboxPref ("Check this box if you want to store the full text of indexed pages, so that excerpts can be displayed in search results.", @config.mainResponder.search.prefs.flStoreFullText)%> <%radio.prefs.checkboxPref ("Check this box to allow public search submissions.", @config.mainresponder.prefs.flAllowPublicSearchSubmissions)%> <%radio.prefs.checkboxPref ("Check this box to enable search engine logging", @config.mainResponder.search.prefs.flLogEnabled)%> MIME Types <%if defined (searchArgTable.itemToEdit) {"To change the MIME type associated with the ." + searchArgTable.itemToEdit + " extension, fill in the Type input box and click the Submit button."} else {"To add a new MIME type, fill in the suffix and its MIME type, then click the Add New Type button. To delete one or more types, check its checkbox and click the Delete button at the bottom of the page. To edit a type, click an Edit link on the right."}%> <%mainResponder.adminSite.prefs.mimeTypes ()%> Update Notification Frontier can automatically connect to a server at UserLand each night, to check the availability of new features and bug fixes. When software updates are available, Frontier will notify you via email. It's recommended that you turn this feature on. <%radio.prefs.checkboxPref ("Check this box to receive email notification when new software updates are available.", @config.mainResponder.prefs.flUpdateNightly)%> <br />You can view a list of pending software updates, and optionally install them via the <%"<a href=\"" + mainResponder.adminSite.urls.updates + "\">"%>Updates page</a>. <br /><b>Databases to update</b> Check the box next to each database that you want to be updated when installing new software. It's strongly recommended that you enable updating all of these databases. <%mainResponder.adminSite.prefs.dbToUpdateCheck ("Frontier.root")%> <%mainResponder.adminSite.prefs.dbToUpdateCheck ("mainResponder.root")%> <%mainResponder.adminSite.prefs.dbToUpdateCheck ("prefs.root")%> Backups This page contains the global backup settings for Manila sites, Frontier databases, and discussion group archives in XML. <br /> <b>Databases</b> Frontier can automatically save all changed databases every minute, and make backup copies each night. It's strongly recommended that you enable the saving of changed databases every minute. Depending on the size of your databases, nightly backups may take some time, so you may want to only enable this feature if your databases are small, or if the server traffic is low at night. <%radio.prefs.checkboxPref ("Check this box to save all changed databases every minute.", @config.mainresponder.prefs.flSaveDatabasesEveryMinute)%> <%radio.prefs.checkboxPref ("Check this box to back up all changed files in the Guest Databases folder every night?", @config.mainResponder.prefs.flBackupNightly)%> <%radio.prefs.stringPref ("Backup folder", @config.mainResponder.prefs.backupFolder, size:60)%> <br /><br /><b>Discussion group archives</b> The discussion group archives feature saves an XML file for every discussion group message. Only new or changed discussion group messages will be archived in XML. <%radio.prefs.checkboxPref ("Check this box to archive changes to discussion group messages in XML?", @config.mainResponder.prefs.flArchiveDiscuss)%> <%radio.prefs.stringPref ("Archive folder", @config.mainResponder.prefs.discussArchiveFolder, size:60)%> Logging and Statistics Frontier can maintain logs detailing what happens on your server and statistics that provide a cumulative view. You can choose which logs and stats Frontier should maintain, and where to store the logs. <br> <%radio.prefs.checkboxPref ("Check this box to log every HTTP request.", @config.mainResponder.prefs.flLog)%> <%radio.prefs.checkboxPref ("Check this box to log every XML-RPC and SOAP request.", @user.betty.prefs.flKeepServerLog)%> <%radio.prefs.checkboxPref ("Check this box to log root updates.", @user.rootUpdates.prefs.flShowUpdatesToUser)%> <%radio.prefs.checkboxPref ("Check this box to enable search engine logging", @config.mainResponder.search.prefs.flLogEnabled)%> <%radio.prefs.checkboxPref ("Check this box to log scheduled tasks.", @user.scheduler.prefs.logInGuestDatabase)%> <%radio.prefs.checkboxPref ("Check this box to close and re-open the log database every hour, to reclaim allocated memory.", @config.mainresponder.prefs.flLogReopenHourly)%> <%radio.prefs.stringPref ("Log folder", @user.log.prefs.folder, size:70, maxlength:300)%> <br> <b>Common Log Format</b> Common log format is a text file format used by popular web servers like Apache. Many log analysis programs used to generate traffic graphs and summaries can read this format. Settings in this section enable or disable the output of common log text files, and determine what information is included. <%table.surePath ("system.temp.mainResponder.misc.flCommonLog"); local (ad...@sy..., adr...@us..., s); if method != "POST" {adr^ = defined (adrcallback^)}; s=radio.prefs.checkboxPref ("Check this box to log HTTP requests in common log format.", adr); if method == "POST" {if adr^ {script.newScriptObject ("on commonLog (pta)\r\treturn (webserver.postFilters.commonLog (pta, true))", adrcallback)} else {if defined (adrcallback^) {delete (adrcallback)}}}; delete (adr); s%> <%radio.prefs.checkboxPref ("Check this box to use common log date format.", @user.webserver.prefs.commonLog.flUseCommonLogDateFormat)%> <%radio.prefs.checkboxPref ("Check this box to include virtual hosts.", @user.webserver.prefs.commonLog.flIncludeVirtualHosts)%> <%radio.prefs.checkboxPref ("Check this box to include referers.", @user.webserver.prefs.commonLog.flIncludeReferers)%> <%radio.prefs.checkboxPref ("Check this box to include User-Agents.", @user.webserver.prefs.commonLog.flIncludeUserAgents)%> <br> <b>Statistics</b> Frontier can count hits on a per-domain basis, complie nightly discussion group stats, and write XML reports listing the most read sites. <%radio.prefs.checkboxPref ("Check this box to compile discussion group stats every night.", @config.mainresponder.prefs.flDiscussStatsNightly)%> <%radio.prefs.checkboxPref ("Check this box to count total hits for each domain hosted on this server.", @user.webserver.prefs.flDomainStats)%> Database Subscriptions You can publish a guest database and allow other people to subscribe to changes made to the guest database. Changes to the guest database made using WebEdit will be added to the updates flow for the database.<br /><br /> <%radio.prefs.checkboxPref ("Check this box to enable database subscriptions from this server to other copies of Frontier or Radio UserLand.", @config.mainresponder.prefs.flSubscriptions)%> <br /><b>Subscribable databases</b> Below is a list of all databases on this server. To enable or disable subscriptions for a given database, check or uncheck the box next to its name and click the Submit button below.<br /><br /> <%mainResponder.adminSite.prefs.listSubscribableDatabases ()%> WebEdit WebEdit allows remote access to your databases, from one copy of Frontier to another. On this page you can enable and disable the WebEdit server, add users, edit user information, and manage the custody of checked-out objects. <%local (pta = html.getPageTableAddress ()); pta^.flAddSubmitButton = false; if not defined (system.temp.mainResponder.misc) {new (tableType, @system.temp.mainResponder.misc)}; ""%> <%local (adrpref = @system.temp.mainResponder.misc.flWebEditEnabled, adrhandlers = @user.betty.rpcHandlers.webEdit); if method != "POST" {if defined (adrhandlers^) {adrpref^ = true} else {adrpref^ = false}}; local (s = radio.prefs.checkboxPref ("Check this box to enable the WebEdit server.", adrpref)); if method == "POST" {if adrpref^ {adrhandlers^ = @webeditServer.rpcHandlers.webEdit} else {try {delete (adrhandlers)}}}; s%> <br /><input type="submit" value="Submit"> <br> <b>Add User</b> To add a new WebEdit user, enter the user's name, email address and password below, and click the Add User button.<br><br> <%mainResponder.adminSite.prefs.addWebeditUser ()%> <br> <b>Current users</b> Below is a list of users who currently have WebEdit access to this server. To remove a user, check the box next to the user's name, and then click the Remove Users button below.<br><br> <%mainResponder.adminSite.prefs.listWebeditUsers ()%> <br> <b>Objects</b> The following objects have been checked out with WebEdit. To force the check-in of an object, check the box next to its name, and then click the Force Check-In button below.<br><br> <%mainResponder.adminSite.prefs.listObjects ()%> Debugging The settings on this page are for people who develop web applications in the Frontier environment. The debugging features help find problems with your code, and to isolate performance bottlenecks. Note that enabling these features can degrade server performance, and cause Frontier to use more memory and disk space than normal, so you should only enable them if needed. <br> <b>mainResponder debugging</b> <%radio.prefs.checkboxPref ("Check this box to run mainResponder in debug mode. This will cause low-level errors to display an error window in the Frontier application.", @config.mainresponder.prefs.flDebug)%> <%radio.prefs.checkboxPref ("Check this box to copy the paramtable to scratchpad.params after every request.", @config.mainresponder.prefs.flKeepParamTable)%> <br> <b>Profiling</b> Profiling allows you to find out what scripts and kernel verbs are being executed and for how long. It's a way of finding performance bottlenecks. With the feature enabled, you can view a web page showing the amount of time Frontier spent in each script and verb in processing the request by adding /profile/ to the begining of the path to the page. <%radio.prefs.checkboxPref ("Check this box to enable profiling.", @config.mainresponder.prefs.flProfiling)%> <br> <b>Miscellaneous</b> Below are miscellaneous debugging features which may be useful depending on the type of application you're developing. <%radio.prefs.checkboxPref ("Check this box to record automatic database opens in system.temp.", @config.mainresponder.prefs.flLogDatabaseOpens)%> <%radio.prefs.checkboxPref ("Check this box to log available memory.", @config.mainresponder.prefs.flLogMemavail)%> Email Config <%flAddSubmitButton = false; mainResponder.controlPanel.emailConfig ()%> \ No newline at end of file |
|
From: creedon <icr...@us...> - 2005-06-16 22:29:57
|
Update of /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19818 Modified Files: init Log Message: added creation of config.mainresponder.prefs.legalMacros Index: init =================================================================== RCS file: /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/init,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** init 16 Jun 2005 06:17:27 -0000 1.2 --- init 16 Jun 2005 22:29:30 -0000 1.3 *************** *** 1,3 **** FrontierVcsFile:1:scpt:mainResponder.init ! on init () { ÇInitialize mainResponder ÇChanges Ç6/15/05; 11:51:28 AM by TAC Ç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) { // 6/15/05; 11:50:19 AM by TAC 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.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", "manila.root", "prefs.root"}}; //PBS 11/20/99: update everything every night by default 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 = "localhost"); 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 Ç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 = "localhost"}; 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 Ç6/16/05; 11:19:53 AM by TAC Ç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", "manila.root", "prefs.root"}}; //PBS 11/20/99: update everything every night by default 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 = "localhost"); 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 Ç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 = "localhost"}; 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-06-16 22:28:36
|
Update of /cvsroot/frontierkernel/odbs/frontierRoot/system/startup In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19427 Modified Files: startupScript Log Message: added creation of user.callbacks.sendmail Index: startupScript =================================================================== RCS file: /cvsroot/frontierkernel/odbs/frontierRoot/system/startup/startupScript,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** startupScript 16 Jun 2005 02:05:00 -0000 1.4 --- startupScript 16 Jun 2005 22:28:25 -0000 1.5 *************** *** 1,3 **** FrontierVcsFile:1:scpt:system.startup.startupScript ! ÇThis script runs when Frontier opens the Frontier.root file. ÇChanges Ç6/15/05; 6:52:11 PM by TAC Çrewrite for Open Source release, bring in code from startup.startupScript, userland.firstRootRun, userland.finishInstall, and userland.cleanRoot ÇOld code Çstartup.startupScript <http://cvs.sourceforge.net/viewcvs.py/frontierkernel/odbs/frontierRoot/system/startup/startupScript?rev=1.1&view=markup> Çuserland.firstRootRun <http://cvs.sourceforge.net/viewcvs.py/frontierkernel/odbs/frontierRoot/system/verbs/builtins/userland/Attic/firstRootRun?rev=1.1&view=markup> Çuserland.finishInstall <http://cvs.sourceforge.net/viewcvs.py/frontierkernel/odbs/frontierRoot/system/verbs/builtins/userland/Attic/finishInstall?rev=1.1&view=markup> Çuserland.cleanRoot <http://cvs.sourceforge.net/viewcvs.py/frontierkernel/odbs/frontierRoot/system/verbs/builtins/userland/Attic/cleanRoot?rev=1.1&view=markup> Ç06/08/01; 11:24:35 PM by JES ÇWhen opening databases defined at user.databases, skip objects which aren't tables. This avoids the condition where startup wouldn't complete, if there's an item #1 in the user.databases table. Ç06/02/01; 8:34:20 PM by PBS ÇDo the web-based install and open the Control Panel if this is the first root run. Ç04/28/01; 7:48:46 PM by JES ÇCall Frontier.tools.startup in a try block, so that the startup process will finish even if Tools installation fails. Ç04/20/01; 4:49:05 PM by JES ÇCall tools.startup to install Tools at startup. Ç10/7/99; 4:20:26 PM by PBS ÇOnly run the #startup script in a guest database if runStartupScript exists and is true. Previously, it would be run whether runStartupScript was true or false. Çhttp://frontier.userland.com/stories/storyReader$1760 Ç10/6/99; 10:21:35 PM by PBS ÇOnly set the taskTime for the overnight task if it's in the past. This fixes a bug when the taskTime was before midnight, but it was being set for the next day, so the overnight task wouldn't run. Çhttp://frontier.userland.com/stories/storyReader$1761 Ç8/19/99; 6:44:48 AM by DW ÇMake sure that taskTimes in user.scheduler.tasks are in the future. ÇWe do this much more quickly than scheduler.monitor would. Çhttp://discuss.userland.com/msgReader$9658 local (flEnableAgents = true, flOpenDatabases = true, flEnableHttpServer = true); // can be set by the external startup script local (flFirstRootRun = true); bundle { // miscellaneous variable initializations and checks, phase 1 of 2 Frontier.pathString = file.folderFromPath (frontier.getFilePath ())}; bundle { // first root run, phase 1 of 2 if defined (user.prefs.firstRootRun) { flFirstRootRun = user.prefs.firstRootRun}; if flFirstRootRun { // license agreement, finish cleanup on user's machine Frontier.enableAgents (false); // try to keep agents from reporting errors while window.frontmost () != "" { // open windows can mess things up later on window.hide (window.frontmost ())}; Çreturn (false) // enable for testing new (tableType, @system.temp); new (tableType, @root.user); backups.init (); batchExporter.init (); export.init (); rootUpdates.init (); // set up user.rootUpdates, even though root updates uses tcp, its ok to set up here as no tcp calls are made at this time webEdit.init (); bundle { // set up user.prefs new (tableType, @user.prefs); user.prefs.firstRootRun = true; user.prefs.flShortTimeStamp = true; user.prefs.flWinStandardMaximize = true; user.prefs.frontierIsServer = false; user.prefs.initials = ""; user.prefs.mailAddress = ""; user.prefs.mailHost = ""; user.prefs.name = ""; user.prefs.openAboutWindow = false; user.prefs.organization = ""; Frontier.setupUserPrefsFonts (); bundle { // set up user.prefs.dialogs new (tableType, @user.prefs.dialogs); user.prefs.dialogs.newSuiteName = ""; user.prefs.dialogs.jumpAddress = "websites"}; // or should this be workspace? bundle { // set up user.prefs.search new (tableType, @user.prefs.search); user.prefs.search.searchFor = "9.0.1"; user.prefs.search.replaceWith = Frontier.version (); user.prefs.search.caseSensitive = false; user.prefs.search.closeWindows = true; user.prefs.search.flatSearch = false; user.prefs.search.frontWindowOnly = false; user.prefs.search.wholeWords = false; user.prefs.search.wrapAround = true; user.prefs.search.winStandardFindCommand = false}; bundle { // set up user.prefs.commonStyles case sys.os () { "MacOS" { if system.environment.isCarbon { user.prefs.commonStyles = Frontier.data.commonStylesMacCarbon} else { user.prefs.commonStyles = Frontier.data.commonStylesMac}}; "Win95"; "WinNT" { user.prefs.commonStyles = Frontier.data.commonStylesWin}}}}; bundle { // set up the quick script window clipboard.putvalue ("dialog.notify (\"Hello World!\")"); window.quickScript (); editmenu.selectall (); editmenu.paste (); window.close ("Quick Script")}; bundle { // set up root window local (w = "root"); window.open (w); window.setPosition (w, 0, 0); editMenu.setFont (user.prefs.fonts.tableFont); editMenu.setFontSize (user.prefs.fonts.tableFontSize); window.zoom (w)}; bundle { // set up user.callbacks new (tableType, @user.callbacks); new (tableType, @user.callbacks.closeWindow); new (tableType, @user.callbacks.cmd2click); new (tableType, @user.callbacks.compileChangedScript); new (tableType, @user.callbacks.control2click); new (tableType, @user.callbacks.fileWriteWholeFile); new (tableType, @user.callbacks.opCollapse); new (tableType, @user.callbacks.opCursorMoved); new (tableType, @user.callbacks.openWindow); new (tableType, @user.callbacks.opExpand); new (tableType, @user.callbacks.opInsert); new (tableType, @user.callbacks.opReturnKey); new (tableType, @user.callbacks.opRightClick); new (tableType, @user.callbacks.opStruct2Click); new (tableType, @user.callbacks.option2click); new (tableType, @user.callbacks.resume); new (tableType, @user.callbacks.saveWindow); new (tableType, @user.callbacks.shutdown); new (tableType, @user.callbacks.startup); new (tableType, @user.callbacks.suspend); new (tableType, @user.callbacks.systemTrayIcon2Click); new (tableType, @user.callbacks.systemTrayIconRightClick); new (tableType, @user.callbacks.statusMessage)}; bundle { // set up user.menus new (tableType, @user.menus); Çuser.menus.bookmarkMenu = userland.virginBookmarkMenu user.menus.customMenu = Frontier.data.virginCustomMenu}; bundle { // clear applications paths in system.verbs.apps local (adrAppsTable = @system.verbs.apps, i); for i = 1 to sizeof (adrAppsTable^) { local (adrAppInfo = @adrAppsTable^ [i].appInfo); if defined (adrAppInfo^) { adrAppInfo^.path = ""}}}; bundle { // set up Frontier.tools.thread Frontier.tools.thread.ct = 0; Frontier.tools.thread.enabled = true}; bundle { // set up workspace new (tableType, @root.workspace); new (outlineType, @workspace.notepad)}; bundle { // miscellaneous new (tableType, @root.scratchpad); new (tableType, @system.deskscripts); new (tableType, @user.databases); new (tableType, @user.protocols); };Çnew (tableType, @websites.["#data"]) bundle { // open mainResponder.root, hidden and add to user.databases local (appFolder = Frontier.getSubFolder ("apps")); if not defined ( [appFolder + "mainResponder.root"] ) { Frontier.installApp ("mainResponder.root", false)}}; bundle { // open prefs.root, hidden and add to user.databases local (f = Frontier.getSubFolder ("www") + "prefs.root"); if not (defined ([f])) { fileMenu.open (f, true);}; //open hidden ÇAdd an entry to the user.databases table. local (adrTable = @user.databases.["prefs.root"]); new (tableType, adrTable); adrTable^.f = f; adrTable^.openOnStartup = true; adrTable^.runStartupScript = false; adrTable^.supportsSubscribe = false}; Çbundle //initialize responders Çuser.webserver.responders.websiteFramework.data.docTree.samples = @websites.samples Çtry Çdelete (@user.webserver.responders.websiteFramework.data.docTree.allSites) Çtry Çdelete (@user.webserver.responders.websiteFramework.data.docTree.contents) Ç Çif defined (user.webserver.responders.manilaEdit) Çdelete (@user.webserver.responders.manilaEdit)}; };ÇfileMenu.save () bundle { // system.temp.Frontier if defined (system.temp.Frontier) { //only run the startup script once return}; new (tableType, @system.temp.Frontier); system.temp.Frontier.startupTime = clock.now (); system.temp.Frontier.startingUp = true}; bundle { // miscellaneous variable initializations and checks, phase 2 of 2 system.menus.data.currentsuite = ""; system.menus.data.currentmenu = 0; bundle { // check for presence of Psapi.dll if sys.os () == "WinNT" { if not (sys.appIsRunning ("Frontier.exe")) { // 11/27/04; 12:14:40 PM by TAC - would it be possible for Frontier to install this on its own? dialog.alert ("You need to run the Frontier Psapi Installer for certain Frontier verbs to work properly.")}}}}; bundle { //open the about window if the pref says we should Çadded 12/16/98; 6:47:28 PM by DW if not defined (user.prefs.openAboutWindow) { user.prefs.openAboutWindow = true}; if user.prefs.openAboutWindow { window.about ()}}; bundle { //initialize the log, next bit of code could add a log item Çadded 12/16/98; 6:52:40 PM by DW if defined (log.startup) { log.startup ()}}; bundle { //run the external startup script local (fname = "frontierStartupCommands.txt"); local (f = file.folderFromPath (Frontier.getProgramPath ()) + fname); if file.exists (f) { try { evaluate (string (file.readWholeFile (f)))} else { log.add ("Error running " + fname + ": \"" + tryError + "\"", "startupError", flwptext:true)}}}; bundle { // tcp based services webserver.init (); // needs to load first betty.init (); // needs to load second soap.init ()}; bundle { // people based services people.init (); // needs to load first custody.init (); webEditServer.init ()}; bundle { //open all the databases that have openOnStartup true Çadded 12/16/98; 6:23:16 PM by DW if defined (user.databases) { if flOpenDatabases { local (i, flmsg = false); for i = 1 to sizeof (user.databases) { if typeOf (user.databases[i]) == tableType { //06/08/01 JES: avert item #1 errors with user.databases [i] { local (flopened = false); try { if openOnStartup { msg (this + ": Opening " + file.fileFromPath (f)); flmsg = true; fileMenu.open (f, hidden:true); flopened = true}} else { log.add ("Startup error opening guest database " + nameof (user.databases [i]) + ": \"" + tryError + "\"", "startupError", flwptext:true)}; if flopened { if defined (runStartupScript) { if runStartupScript { //PBS 10/7/99: check the value of runStartupScript: only run the script if the boolean is true local (adrscript = @[filespec (f)].["#startup"]); if defined (adrscript^) { try { adrscript^ ()} else { log.add ("Error running #startup script in guest database " + nameof (user.databases [i]) + ": \"" + tryError + "\"", "startupError", flwptext:true)}}}}}}}}; if flmsg { msg ("")}}}}; try { //04/28/2001 JES: prevent startup from failing if Tool installation fails. Frontier.tools.startup ()}; scheduler.init (); html.init (); bundle { // webBrowser webBrowser.init (); if system.environment.isMac { try {new (tableType, @user.odbEditors.data.openFiles)}}; //Empty out the list of externally-edited files. if system.environment.isWindows { user.webBrowser.winDefaultBrowserApp = file.findApplication ("htm")}}; bundle { // first root run, phase 2 of 3 if flFirstRootRun { bundle { // set up websites table and related with websites.["#ftpSite"] { folder = file.folderFromPath (Frontier.getProgramPath ()) + "Websites" + file.getPathChar (); Çfile.sureFolder (folder) url = file.fileToURL (folder); isLocal = true}; user.html.sites.default = websites.["#ftpSite"]}; bundle { // personalize this copy of Frontier, configure network settings, and complete the installation local (flWebBasedInstall = true); if flWebBasedInstall { Ç11/29/04; 11:17:45 AM by TAC - the following seems like it should be done as part of mainRepsonder startup, init. IIRC, members.root is a feature of mainResponder bundle { //create the Admin membership group if needed local (adrRoot = @[system.temp.mainResponder.membersRootFile]); local (adrGroup = @adrRoot^.admin); if not defined (adrGroup^) { new (tableType, adrGroup)}; if not defined (adrGroup^.callbacks) { new (tableType, @adrGroup^.callbacks)}; if not defined (adrGroup^.cookieDomain) { adrGroup^.cookieDomain = ""}; if not defined (adrGroup^.cookieExpires) { adrGroup^.cookieExpires = "Mon, 01 Apr 2030 07:00:00 GMT"}; if not defined (adrGroup^.cookieName) { adrGroup^.cookieName = "Admin"}; if not defined (adrGroup^.mailReturnAddress) { adrGroup^.mailReturnAddress = user.prefs.mailAddress}; if not defined (adrGroup^.mailSubject) { adrGroup^.mailSubject = "Admin"}; if not defined (adrGroup^.mailTemplate) { wp.newTextObject ("", @adrGroup^.mailTemplate)}; if not defined (adrGroup^.openToPublic) { adrGroup^.openToPublic = false}; if not defined (adrGroup^.users) { new (tableType, @adrGroup^.users)}}; bundle { // prep for web based install via mainResponder admin website, disabled until mR can be rewritten from the perspective of the open source release local (portString = ""); if user.inetd.config.http2.port != 80 { portString = ":" + user.inetd.config.http2.port}; if not defined (system.temp.Frontier.setupFrontier) { new (tableType, @system.temp.Frontier.setupFrontier)}; system.temp.Frontier.setupFrontier.flAllowLocalAccessToSetupPage = true; local (setupUrl = "http://127.0.0.1" + portString + "/setupFrontier"); if not defined (system.temp.installer) { new (tableType, @system.temp.installer)}; system.temp.installer.urlToOpen = setupUrl}} else { on infoDialog () { //prompt the user for name, org and initials on kernelCall (adrName, adrInitials, adrOrg, adrEmail) { kernel (dialog.getUserInfo)}; local (name, initials, organization, email); case sys.os () { "Win95"; "WinNT" { if not (kernelCall (@name, @initials, @organization, @email)) { return (false)}; if initials == "" { dialog.alert ("You must specify your initials."); infoDialog ()}; user.prefs.name = name; user.prefs.initials = initials; user.prefs.organization = organization; user.prefs.mailAddress = email}; "MacOS" { bundle { //initialize user.prefs.name etc using info from Internet Config try { name = ic.geticpreference (ic.eventinfo.realName)}; try { organization = ic.geticpreference (ic.eventinfo.organization)}; try { email = ic.geticpreferece (ic.eventinfo.emailAddress)}; user.prefs.name = name; user.prefs.organization = organization; if name != "" { local (i); user.prefs.initials = name [1]; for i = 3 to sizeof (name) { if name [i] == ' ' { user.prefs.initials = user.prefs.initials + name [i+1]}}}}; card.run (@system.cards.userInfoDialog)}}; return (true)}; infoDialog ()}}; //AR 09/27/04 : personalize install ÇrootUpdates.getCurrent ("Frontier") // 11/29/04; 6:57:54 PM by TAC - if we get a root update then we'll need to use rootUpdates.update bundle { // about window local (w); window.about (); w = window.frontMost (); window.zoom (w); menus.scripts.styleCommand ("medium"); window.setPosition (w, 25, 75); };Çwindow.close (s) bundle { // license edit (@system.startup.license); // 12/4/04; 9:26:35 PM by TAC - i rather do this near the beginning of phase 1 firstRootRun but had a problem with this window and setting up the quick script window wp.setSelect (0, 0)}}}; system.callbacks.startup (); //call user's startup scripts bundle { // build menu bar system.menus.buildMenuBar (); system.menus.buildSuitesSubmenu ()}; //5.0 Frontier.enableAgents (flEnableAgents); if flEnableHttpServer { //6.0, daemons don't start up until all the startup code has run new (tableType, @user.inetd.listens); inetd.start ()}; //start up all daemons with startup set true bundle { // first root run, phase 3 of 3 if flFirstRootRun { if defined (system.temp.installer.urlToOpen) { Çwindow.update ("About Frontier") webBrowser.openUrl (system.temp.installer.urlToOpen); webBrowser.bringToFront ()}; user.prefs.firstRootRun = false}}; system.temp.Frontier.startingUp = false; //signal to all who care, let the hits begin! msg (""); fileMenu.save (); Ç Çbundle //license agreement Çlocal (editLicense = false) Çif sys.os () == "MacOS" Çon itemhit (itemnumber) Çcase (itemnumber) Ç1 Çyes ÇeditLicense = true Çreturn (false) Çstop processing the dialog Ç2 Çno Çreturn (false) Çstop processing the dialog Çreturn (true) Çkeep processing the dialog Çdialog.run (517, 1, @itemhit) Çelse Çif dialog.yesNo ("Frontier is licensed software. Do you want to read the license agreement now?") ÇeditLicense = true Çif editLicense Çbundle //get root update ÇproxyInit () Çif user.prefs.serialNumber != "" and not (string.lower (user.prefs.serialNumber) contains "trial") ÇrootUpdates.init () \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:scpt:system.startup.startupScript ! ÇThis script runs when Frontier opens the Frontier.root file. ÇChanges Ç6/15/05; 6:52:11 PM by TAC Çrewrite for Open Source release, bring in code from startup.startupScript, userland.firstRootRun, userland.finishInstall, and userland.cleanRoot ÇOld code Çstartup.startupScript <http://cvs.sourceforge.net/viewcvs.py/frontierkernel/odbs/frontierRoot/system/startup/startupScript?rev=1.1&view=markup> Çuserland.firstRootRun <http://cvs.sourceforge.net/viewcvs.py/frontierkernel/odbs/frontierRoot/system/verbs/builtins/userland/Attic/firstRootRun?rev=1.1&view=markup> Çuserland.finishInstall <http://cvs.sourceforge.net/viewcvs.py/frontierkernel/odbs/frontierRoot/system/verbs/builtins/userland/Attic/finishInstall?rev=1.1&view=markup> Çuserland.cleanRoot <http://cvs.sourceforge.net/viewcvs.py/frontierkernel/odbs/frontierRoot/system/verbs/builtins/userland/Attic/cleanRoot?rev=1.1&view=markup> Ç06/08/01; 11:24:35 PM by JES ÇWhen opening databases defined at user.databases, skip objects which aren't tables. This avoids the condition where startup wouldn't complete, if there's an item #1 in the user.databases table. Ç06/02/01; 8:34:20 PM by PBS ÇDo the web-based install and open the Control Panel if this is the first root run. Ç04/28/01; 7:48:46 PM by JES ÇCall Frontier.tools.startup in a try block, so that the startup process will finish even if Tools installation fails. Ç04/20/01; 4:49:05 PM by JES ÇCall tools.startup to install Tools at startup. Ç10/7/99; 4:20:26 PM by PBS ÇOnly run the #startup script in a guest database if runStartupScript exists and is true. Previously, it would be run whether runStartupScript was true or false. Çhttp://frontier.userland.com/stories/storyReader$1760 Ç10/6/99; 10:21:35 PM by PBS ÇOnly set the taskTime for the overnight task if it's in the past. This fixes a bug when the taskTime was before midnight, but it was being set for the next day, so the overnight task wouldn't run. Çhttp://frontier.userland.com/stories/storyReader$1761 Ç8/19/99; 6:44:48 AM by DW ÇMake sure that taskTimes in user.scheduler.tasks are in the future. ÇWe do this much more quickly than scheduler.monitor would. Çhttp://discuss.userland.com/msgReader$9658 local (flEnableAgents = true, flOpenDatabases = true, flEnableHttpServer = true); // can be set by the external startup script local (flFirstRootRun = true); bundle { // miscellaneous variable initializations and checks, phase 1 of 2 Frontier.pathString = file.folderFromPath (frontier.getFilePath ())}; bundle { // first root run, phase 1 of 2 if defined (user.prefs.firstRootRun) { flFirstRootRun = user.prefs.firstRootRun}; if flFirstRootRun { // license agreement, finish cleanup on user's machine Frontier.enableAgents (false); // try to keep agents from reporting errors while window.frontmost () != "" { // open windows can mess things up later on window.hide (window.frontmost ())}; Çreturn (false) // enable for testing new (tableType, @system.temp); new (tableType, @root.user); backups.init (); batchExporter.init (); export.init (); rootUpdates.init (); // set up user.rootUpdates, even though root updates uses tcp, its ok to set up here as no tcp calls are made at this time webEdit.init (); bundle { // set up user.prefs new (tableType, @user.prefs); user.prefs.firstRootRun = true; user.prefs.flShortTimeStamp = true; user.prefs.flWinStandardMaximize = true; user.prefs.frontierIsServer = false; user.prefs.initials = ""; user.prefs.mailAddress = ""; user.prefs.mailHost = ""; user.prefs.name = ""; user.prefs.openAboutWindow = false; user.prefs.organization = ""; Frontier.setupUserPrefsFonts (); bundle { // set up user.prefs.dialogs new (tableType, @user.prefs.dialogs); user.prefs.dialogs.newSuiteName = ""; user.prefs.dialogs.jumpAddress = "websites"}; // or should this be workspace? bundle { // set up user.prefs.search new (tableType, @user.prefs.search); user.prefs.search.searchFor = "9.0.1"; user.prefs.search.replaceWith = Frontier.version (); user.prefs.search.caseSensitive = false; user.prefs.search.closeWindows = true; user.prefs.search.flatSearch = false; user.prefs.search.frontWindowOnly = false; user.prefs.search.wholeWords = false; user.prefs.search.wrapAround = true; user.prefs.search.winStandardFindCommand = false}; bundle { // set up user.prefs.commonStyles case sys.os () { "MacOS" { if system.environment.isCarbon { user.prefs.commonStyles = Frontier.data.commonStylesMacCarbon} else { user.prefs.commonStyles = Frontier.data.commonStylesMac}}; "Win95"; "WinNT" { user.prefs.commonStyles = Frontier.data.commonStylesWin}}}}; bundle { // set up the quick script window clipboard.putvalue ("dialog.notify (\"Hello World!\")"); window.quickScript (); editmenu.selectall (); editmenu.paste (); window.close ("Quick Script")}; bundle { // set up root window local (w = "root"); window.open (w); window.setPosition (w, 0, 0); editMenu.setFont (user.prefs.fonts.tableFont); editMenu.setFontSize (user.prefs.fonts.tableFontSize); window.zoom (w)}; bundle { // set up user.callbacks new (tableType, @user.callbacks); new (tableType, @user.callbacks.closeWindow); new (tableType, @user.callbacks.cmd2click); new (tableType, @user.callbacks.compileChangedScript); new (tableType, @user.callbacks.control2click); new (tableType, @user.callbacks.fileWriteWholeFile); new (tableType, @user.callbacks.opCollapse); new (tableType, @user.callbacks.opCursorMoved); new (tableType, @user.callbacks.openWindow); new (tableType, @user.callbacks.opExpand); new (tableType, @user.callbacks.opInsert); new (tableType, @user.callbacks.opReturnKey); new (tableType, @user.callbacks.opRightClick); new (tableType, @user.callbacks.opStruct2Click); new (tableType, @user.callbacks.option2click); new (tableType, @user.callbacks.resume); new (tableType, @user.callbacks.saveWindow); new (tableType, @user.callbacks.sendmail); new (tableType, @user.callbacks.shutdown); new (tableType, @user.callbacks.startup); new (tableType, @user.callbacks.statusMessage); new (tableType, @user.callbacks.suspend); new (tableType, @user.callbacks.systemTrayIcon2Click); new (tableType, @user.callbacks.systemTrayIconRightClick)}; bundle { // set up user.menus new (tableType, @user.menus); Çuser.menus.bookmarkMenu = userland.virginBookmarkMenu user.menus.customMenu = Frontier.data.virginCustomMenu}; bundle { // clear applications paths in system.verbs.apps local (adrAppsTable = @system.verbs.apps, i); for i = 1 to sizeof (adrAppsTable^) { local (adrAppInfo = @adrAppsTable^ [i].appInfo); if defined (adrAppInfo^) { adrAppInfo^.path = ""}}}; bundle { // set up Frontier.tools.thread Frontier.tools.thread.ct = 0; Frontier.tools.thread.enabled = true}; bundle { // set up workspace new (tableType, @root.workspace); new (outlineType, @workspace.notepad)}; bundle { // miscellaneous new (tableType, @root.scratchpad); new (tableType, @system.deskscripts); new (tableType, @user.databases); new (tableType, @user.protocols); };Çnew (tableType, @websites.["#data"]) bundle { // open mainResponder.root, hidden and add to user.databases local (appFolder = Frontier.getSubFolder ("apps")); if not defined ( [appFolder + "mainResponder.root"] ) { Frontier.installApp ("mainResponder.root", false)}}; bundle { // open prefs.root, hidden and add to user.databases local (f = Frontier.getSubFolder ("www") + "prefs.root"); if not (defined ([f])) { fileMenu.open (f, true);}; //open hidden ÇAdd an entry to the user.databases table. local (adrTable = @user.databases.["prefs.root"]); new (tableType, adrTable); adrTable^.f = f; adrTable^.openOnStartup = true; adrTable^.runStartupScript = false; adrTable^.supportsSubscribe = false}; Çbundle //initialize responders Çuser.webserver.responders.websiteFramework.data.docTree.samples = @websites.samples Çtry Çdelete (@user.webserver.responders.websiteFramework.data.docTree.allSites) Çtry Çdelete (@user.webserver.responders.websiteFramework.data.docTree.contents) Ç Çif defined (user.webserver.responders.manilaEdit) Çdelete (@user.webserver.responders.manilaEdit)}; };ÇfileMenu.save () bundle { // system.temp.Frontier if defined (system.temp.Frontier) { //only run the startup script once return}; new (tableType, @system.temp.Frontier); system.temp.Frontier.startupTime = clock.now (); system.temp.Frontier.startingUp = true}; bundle { // miscellaneous variable initializations and checks, phase 2 of 2 system.menus.data.currentsuite = ""; system.menus.data.currentmenu = 0; bundle { // check for presence of Psapi.dll if sys.os () == "WinNT" { if not (sys.appIsRunning ("Frontier.exe")) { // 11/27/04; 12:14:40 PM by TAC - would it be possible for Frontier to install this on its own? dialog.alert ("You need to run the Frontier Psapi Installer for certain Frontier verbs to work properly.")}}}}; bundle { //open the about window if the pref says we should Çadded 12/16/98; 6:47:28 PM by DW if not defined (user.prefs.openAboutWindow) { user.prefs.openAboutWindow = true}; if user.prefs.openAboutWindow { window.about ()}}; bundle { //initialize the log, next bit of code could add a log item Çadded 12/16/98; 6:52:40 PM by DW if defined (log.startup) { log.startup ()}}; bundle { //run the external startup script local (fname = "frontierStartupCommands.txt"); local (f = file.folderFromPath (Frontier.getProgramPath ()) + fname); if file.exists (f) { try { evaluate (string (file.readWholeFile (f)))} else { log.add ("Error running " + fname + ": \"" + tryError + "\"", "startupError", flwptext:true)}}}; bundle { // tcp based services webserver.init (); // needs to load first betty.init (); // needs to load second soap.init ()}; bundle { // people based services people.init (); // needs to load first custody.init (); webEditServer.init ()}; bundle { //open all the databases that have openOnStartup true Çadded 12/16/98; 6:23:16 PM by DW if defined (user.databases) { if flOpenDatabases { local (i, flmsg = false); for i = 1 to sizeof (user.databases) { if typeOf (user.databases[i]) == tableType { //06/08/01 JES: avert item #1 errors with user.databases [i] { local (flopened = false); try { if openOnStartup { msg (this + ": Opening " + file.fileFromPath (f)); flmsg = true; fileMenu.open (f, hidden:true); flopened = true}} else { log.add ("Startup error opening guest database " + nameof (user.databases [i]) + ": \"" + tryError + "\"", "startupError", flwptext:true)}; if flopened { if defined (runStartupScript) { if runStartupScript { //PBS 10/7/99: check the value of runStartupScript: only run the script if the boolean is true local (adrscript = @[filespec (f)].["#startup"]); if defined (adrscript^) { try { adrscript^ ()} else { log.add ("Error running #startup script in guest database " + nameof (user.databases [i]) + ": \"" + tryError + "\"", "startupError", flwptext:true)}}}}}}}}; if flmsg { msg ("")}}}}; try { //04/28/2001 JES: prevent startup from failing if Tool installation fails. Frontier.tools.startup ()}; scheduler.init (); html.init (); bundle { // webBrowser webBrowser.init (); if system.environment.isMac { try {new (tableType, @user.odbEditors.data.openFiles)}}; //Empty out the list of externally-edited files. if system.environment.isWindows { user.webBrowser.winDefaultBrowserApp = file.findApplication ("htm")}}; bundle { // first root run, phase 2 of 3 if flFirstRootRun { bundle { // set up websites table and related with websites.["#ftpSite"] { folder = file.folderFromPath (Frontier.getProgramPath ()) + "Websites" + file.getPathChar (); Çfile.sureFolder (folder) url = file.fileToURL (folder); isLocal = true}; user.html.sites.default = websites.["#ftpSite"]}; bundle { // personalize this copy of Frontier, configure network settings, and complete the installation local (flWebBasedInstall = true); if flWebBasedInstall { Ç11/29/04; 11:17:45 AM by TAC - the following seems like it should be done as part of mainRepsonder startup, init. IIRC, members.root is a feature of mainResponder bundle { //create the Admin membership group if needed local (adrRoot = @[system.temp.mainResponder.membersRootFile]); local (adrGroup = @adrRoot^.admin); if not defined (adrGroup^) { new (tableType, adrGroup)}; if not defined (adrGroup^.callbacks) { new (tableType, @adrGroup^.callbacks)}; if not defined (adrGroup^.cookieDomain) { adrGroup^.cookieDomain = ""}; if not defined (adrGroup^.cookieExpires) { adrGroup^.cookieExpires = "Mon, 01 Apr 2030 07:00:00 GMT"}; if not defined (adrGroup^.cookieName) { adrGroup^.cookieName = "Admin"}; if not defined (adrGroup^.mailReturnAddress) { adrGroup^.mailReturnAddress = user.prefs.mailAddress}; if not defined (adrGroup^.mailSubject) { adrGroup^.mailSubject = "Admin"}; if not defined (adrGroup^.mailTemplate) { wp.newTextObject ("", @adrGroup^.mailTemplate)}; if not defined (adrGroup^.openToPublic) { adrGroup^.openToPublic = false}; if not defined (adrGroup^.users) { new (tableType, @adrGroup^.users)}}; bundle { // prep for web based install via mainResponder admin website, disabled until mR can be rewritten from the perspective of the open source release local (portString = ""); if user.inetd.config.http2.port != 80 { portString = ":" + user.inetd.config.http2.port}; if not defined (system.temp.Frontier.setupFrontier) { new (tableType, @system.temp.Frontier.setupFrontier)}; system.temp.Frontier.setupFrontier.flAllowLocalAccessToSetupPage = true; local (setupUrl = "http://127.0.0.1" + portString + "/setupFrontier"); if not defined (system.temp.installer) { new (tableType, @system.temp.installer)}; system.temp.installer.urlToOpen = setupUrl}} else { on infoDialog () { //prompt the user for name, org and initials on kernelCall (adrName, adrInitials, adrOrg, adrEmail) { kernel (dialog.getUserInfo)}; local (name, initials, organization, email); case sys.os () { "Win95"; "WinNT" { if not (kernelCall (@name, @initials, @organization, @email)) { return (false)}; if initials == "" { dialog.alert ("You must specify your initials."); infoDialog ()}; user.prefs.name = name; user.prefs.initials = initials; user.prefs.organization = organization; user.prefs.mailAddress = email}; "MacOS" { bundle { //initialize user.prefs.name etc using info from Internet Config try { name = ic.geticpreference (ic.eventinfo.realName)}; try { organization = ic.geticpreference (ic.eventinfo.organization)}; try { email = ic.geticpreferece (ic.eventinfo.emailAddress)}; user.prefs.name = name; user.prefs.organization = organization; if name != "" { local (i); user.prefs.initials = name [1]; for i = 3 to sizeof (name) { if name [i] == ' ' { user.prefs.initials = user.prefs.initials + name [i+1]}}}}; card.run (@system.cards.userInfoDialog)}}; return (true)}; infoDialog ()}}; //AR 09/27/04 : personalize install ÇrootUpdates.getCurrent ("Frontier") // 11/29/04; 6:57:54 PM by TAC - if we get a root update then we'll need to use rootUpdates.update bundle { // about window local (w); window.about (); w = window.frontMost (); window.zoom (w); menus.scripts.styleCommand ("medium"); window.setPosition (w, 25, 75); };Çwindow.close (s) bundle { // license edit (@system.startup.license); // 12/4/04; 9:26:35 PM by TAC - i rather do this near the beginning of phase 1 firstRootRun but had a problem with this window and setting up the quick script window wp.setSelect (0, 0)}}}; system.callbacks.startup (); //call user's startup scripts bundle { // build menu bar system.menus.buildMenuBar (); system.menus.buildSuitesSubmenu ()}; //5.0 Frontier.enableAgents (flEnableAgents); if flEnableHttpServer { //6.0, daemons don't start up until all the startup code has run new (tableType, @user.inetd.listens); inetd.start ()}; //start up all daemons with startup set true bundle { // first root run, phase 3 of 3 if flFirstRootRun { if defined (system.temp.installer.urlToOpen) { Çwindow.update ("About Frontier") webBrowser.openUrl (system.temp.installer.urlToOpen); webBrowser.bringToFront ()}; user.prefs.firstRootRun = false}}; system.temp.Frontier.startingUp = false; //signal to all who care, let the hits begin! msg (""); fileMenu.save (); Ç Çbundle //license agreement Çlocal (editLicense = false) Çif sys.os () == "MacOS" Çon itemhit (itemnumber) Çcase (itemnumber) Ç1 Çyes ÇeditLicense = true Çreturn (false) Çstop processing the dialog Ç2 Çno Çreturn (false) Çstop processing the dialog Çreturn (true) Çkeep processing the dialog Çdialog.run (517, 1, @itemhit) Çelse Çif dialog.yesNo ("Frontier is licensed software. Do you want to read the license agreement now?") ÇeditLicense = true Çif editLicense Çbundle //get root update ÇproxyInit () Çif user.prefs.serialNumber != "" and not (string.lower (user.prefs.serialNumber) contains "trial") ÇrootUpdates.init () \ No newline at end of file |
|
From: creedon <icr...@us...> - 2005-06-16 06:28:39
|
Update of /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/resources/adminSite In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13398 Removed Files: userlandLogo Log Message: removed --- userlandLogo DELETED --- |
|
From: creedon <icr...@us...> - 2005-06-16 06:18:31
|
Update of /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/resources/adminSite In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8841 Removed Files: headerBackground Log Message: removed --- headerBackground DELETED --- |
|
From: creedon <icr...@us...> - 2005-06-16 06:18:14
|
Update of /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8642 Modified Files: menu Log Message: remove manila specific items Index: menu =================================================================== RCS file: /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/menu,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** menu 26 Mar 2005 21:45:06 -0000 1.1.1.1 --- menu 16 Jun 2005 06:18:05 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:mbar:mainResponder.menu ! AAEFAQAABOEAAQAAAAAAAAAAAAABAwBBAvgDGQAAAAAAAAZHZW5ldmEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgCzAZYCVwMmAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAG6AAACPwAAAAAADwZHZW5ldmEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAsjO617lsheYAAC7eAAAA4gEjAaoCpExBTkT///////8AAAAAAABtYWMgAAAAAAAAAAAAAAAAU2VydmVyDQlTZXQgQWRtaW4gUGFzc3dvcmQuLi4NCU9wZW4gQWRtaW4gU2l0ZQ0JPW1haW5SZXNwb25kZXIubWVudUNvbW1hbmRzLmVuYWJsZURpc2FibGVNZW51SXRlbSAoKQ0JLQ0JT3Blbg0JCWNvbmZpZy5yb290DQkJZGlzY3Vzcy5yb290DQkJaW5kZXgucm9vdA0JCW1haW5SZXNwb25kZXIucm9vdA0JCW1lbWJlcnMucm9vdA0JCXRlbXAubWFpblJlc3BvbmRlcg0JCXVzZXIuZGF0YWJhc2VzDQkJdXNlci5iZXR0eS5ycGNIYW5kbGVycw0JCXVzZXIuYmV0dHkucXVldWVPdXRnb2luZw0JLQ0JTWFrZSBhbiBIVFRQIFJlcXVlc3QuLi4NCUFkZCB0byB1c2VyLmRhdGFiYXNlcy4uLg0JQ2xvc2UvSGlkZSBXaW5kb3dzDQlXYWtlIGFsbCBUaHJlYWRzDQlNYXAgdG8gRG9tYWluLi4uDQlMb29rdXAgRG9tYWluLi4uDQlSZXZlcnNlIERvbWFpbiBMb29rdXAuLi4NCS0NCUluc3RhbGwgU2l0ZS4uLg0JVW5pbnN0YWxsIFNpdGUNCUNoYW5nZSBTaXRlIFVSTC4uLg0JLQ0JU2VhcmNoIEVuZ2luZQ0JCUluZGV4IFN0b3JlZCBQYWdlcw0JCURlbGV0ZSBQYWdlIEZyb20gSW5kZXguLi4NCQlFZGl0IFBhZ2UgSW5mby4uLg2AAAAAAAAAAAAAAAoAAAAAAAAGrlIoAAAAAAAKAAAAAAAABq5TBAAAAAAACgAAAAAAAAaucVgAAAAAAAAAAAAAAAAAAAAAAAoAAAAAAAAGrnHEAAAAAAAKAAAAAAAABq5xyAAAAAAACgAAAAAAAAauceQAAAAAAAoAAAAAAAAGrnHwAAAAAAAKAAAAAAAABq5x/AAAAAAACgAAAAAAAAaucggAAAAAAAoAAAAAAAAGrnIUAAAAAAAKAAAAAAAABq5yIAAAAAAACgAAAAAAAAauciwAAAAAAAAAAAAAAAoAAAAAAAAGrnI4AAAAAAAKAAAAAAAABq5yRAAAAAAACgAAAAAAAAauclAAAAAAAAoAAAAAAAAGrnJcAAAAAAAKAAAAAAAABq5yaAAAAAAACgAAAAAAAAaucnQAAAAAAAoAAAAAAAAGrnKYAAAAAAAAAAAAAAAKAAAAAAAABq5ypAAAAAAACgAAAAAAAAaucrAAAAAAAAoAAAAAAAAGrnK8AAAAAAAAAAAAAAAAAAAAAAAKAAAAAAAABq5y2AAAAAAACgAAAAAAAAaucvQAAAAAAAoAAAAAAAAGrnMQAAIAAAD2AAAGcAACAAAADwVBcmlhbAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACgAAAAAAAAAAAAAAAAAAtDnydbyg7XgAAAAqAAABZgFYAi4C2UxBTkT///////8AAAAAAABtYWMgAAAAAAAAAAAAAAAAQ2hhbmdlcw0JNC8xMy8wNDsgMTowNTo0OCBBTSBieSBKRVMNCQlVcGRhdGVkIHBhc3N3b3JkIHByb21wdC4NCTkvMzAvMDM7IDE6MDI6NTMgUE0gYnkgSkVTDQkJU3RvcmUgdGhlIGFkbWluIHBhc3N3b3JkIGFzIGEgYmluYXJ5IHZhbHVlLg1pZiBub3QgKG1haW5SZXNwb25kZXIubWVudUNvbW1hbmRzLm11c3RCZVNpeFBvaW50T25lICgpKQ0JcmV0dXJuIChmYWxzZSkNbG9jYWwgKHBhc3N3b3JkKQ1pZiBkaWFsb2cuZ2V0UGFzc3dvcmQgKCJTZXQgcGFzc3dvcmQgZm9yIHRoZSBGcm9udGllciBBZG1pbiB3ZWJzaXRlOiIsIEBwYXNzd29yZCkNCWJ1bmRsZSAvL2NyZWF0ZSB0aGUgQWRtaW4gbWVtYmVyc2hpcCBncm91cCBpZiBuZWVkZWQNCQlsb2NhbCAoYWRyUm9vdCA9IEBbc3lzdGVtLnRlbXAubWFpblJlc3BvbmRlci5tZW1iZXJzUm9vdEZpbGVdKQ0JCWxvY2FsIChhZHJHcm91cCA9IEBhZHJSb290Xi5hZG1pbikNCQlpZiBub3QgZGVmaW5lZCAoYWRyR3JvdXBeKQ0JCQluZXcgKHRhYmxlVHlwZSwgYWRyR3JvdXApDQkJaWYgbm90IGRlZmluZWQgKGFkckdyb3VwXi5jYWxsYmFja3MpDQkJCW5ldyAodGFibGVUeXBlLCBAYWRyR3JvdXBeLmNhbGxiYWNrcykNCQlpZiBub3QgZGVmaW5lZCAoYWRyR3JvdXBeLmNvb2tpZURvbWFpbikNCQkJYWRyR3JvdXBeLmNvb2tpZURvbWFpbiA9ICIiDQkJaWYgbm90IGRlZmluZWQgKGFkckdyb3VwXi5jb29raWVFeHBpcmVzKQ0JCQlhZHJHcm91cF4uY29va2llRXhwaXJlcyA9ICJNb24sIDAxIEFwciAyMDMwIDA3OjAwOjAwIEdNVCINCQlpZiBub3QgZGVmaW5lZCAoYWRyR3JvdXBeLmNvb2tpZU5hbWUpDQkJCWFkckdyb3VwXi5jb29raWVOYW1lID0gIkFkbWluIg0JCWlmIG5vdCBkZWZpbmVkIChhZHJHcm91cF4ubWFpbFJldHVybkFkZHJlc3MpDQkJCWFkckdyb3VwXi5tYWlsUmV0dXJuQWRkcmVzcyA9IHVzZXIucHJlZnMubWFpbEFkZHJlc3MNCQlpZiBub3QgZGVmaW5lZCAoYWRyR3JvdXBeLm1haWxTdWJqZWN0KQ0JCQlhZHJHcm91cF4ubWFpbFN1YmplY3QgPSAiQWRtaW4iDQkJaWYgbm90IGRlZmluZWQgKGFkckdyb3VwXi5tYWlsVGVtcGxhdGUpDQkJCXdwLm5ld1RleHRPYmplY3QgKCIiLCBAYWRyR3JvdXBeLm1haWxUZW1wbGF0ZSkNCQlpZiBub3QgZGVmaW5lZCAoYWRyR3JvdXBeLm9wZW5Ub1B1YmxpYykNCQkJYWRyR3JvdXBeLm9wZW5Ub1B1YmxpYyA9IGZhbHNlDQkJaWYgbm90IGRlZmluZWQgKGFkckdyb3VwXi51c2VycykNCQkJbmV3ICh0YWJsZVR5cGUsIEBhZHJHcm91cF4udXNlcnMpDQkNCWxvY2FsIChhZHJNZW1iZXIgPSBtYWluUmVzcG9uZGVyLm1lbWJlcnMuZ2V0TWVt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bmRlci5zZWFyY2guc2VydmVyLmluZGV4U3RvcmVkUGFnZXMgKCkNgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAAAIAAAAkAAABFwAFAgAADwVBcmlhbAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACgAAAAAAAAAAAAAGVAAAstdaK7RFwEYAAABDAAABJgE/Ae4CwExBTkT///////8AAAAAAABtYWMgAAAAAAAAAAAAAAAAaWYgbm90IChjb25maWcubWFpblJlc3BvbmRlci5wcmVmcy5mbFNlYXJjaEVuZ2luZSkNCWRpYWxvZy5hbGVydCAoIkNhbid0IGRlbGV0ZSBhIHBhZ2UgYmVjYXVzZSB0aGlzIG1hY2hpbmUgaXMgbm90IGEgc2VhcmNoIGVuZ2luZSBzZXJ2ZXIuIikNCXJldHVybiAoZmFsc2UpDWxvY2FsICh1cmwpDWlmIGRpYWxvZy5hc2sgKCJVUkwgb2YgcGFnZSB0byBkZWxldGU/IiwgQHVybCkNCW1haW5SZXNwb25kZXIuc2VhcmNoLnNlcnZlci5kZUluZGV4UGFnZSAodXJsLCBmbERpYWxvZ3M6dHJ1ZSkNgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAAAIAAABOAAACQAAMAgAADwVBcmlhbAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACgAAAAAABQAFAAAGVAAAstdZlbRFwEEAAABBAAABJgE/Ae4CwExBTkT///////8AAAAAAABtYWMgAAAAAAAAAAAAAAAAaWYgbm90IChjb25maWcubWFpblJlc3BvbmRlci5wcmVmcy5mbFNlYXJjaEVuZ2luZSkNCWRpYWxvZy5hbGVydCAoIkNhbid0IEVkaXQgUGFnZSBJbmZvIGJlY2F1c2UgdGhpcyBtYWNoaW5lIGlzIG5vdCBhIHNlYXJjaCBlbmdpbmUgc2VydmVyLiIpDQlyZXR1cm4gKGZhbHNlKQ1sb2NhbCAodXJsKQ1pZiBkaWFsb2cuYXNrICgiVVJMIG9mIHBhZ2U/IiwgQHVybCkNCWxvY2FsIChpbmRleFBhdGggPSBtYWluUmVzcG9uZGVyLnNlYXJjaC51dGlsaXRpZXMuZ2V0SW5kZXhQYXRoICgpKQ0JbWFpblJlc3BvbmRlci5zZWFyY2gudXRpbGl0aWVzLmFzc3VyZUluZGV4ICgpDQlsb2NhbCAoYWRyUGFnZUluZm9UYWJsZSA9IEBbaW5kZXhQYXRoXS5wYWdlSW5mbykNCWxvY2FsIChhZHJQYWdlSW5mbyA9IEBhZHJQYWdlSW5mb1RhYmxlXi5bdXJsXSkNCWlmIG5vdCBkZWZpbmVkIChhZHJQYWdlSW5mb14pDQkJZGlhbG9nLmFsZXJ0ICgiQ2FuJ3QgZWRpdCBpbmZvIGZvciAiICsgdXJsICsgIiBiZWNhdXNlIHRoZSBwYWdlIGlzbid0IGluIHRoZSBpbmRleC4iKQ0JCXJldHVybiAoZmFsc2UpDQllZGl0IChhZHJQYWdlSW5mbykNgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAA \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:mbar:mainResponder.menu ! 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VHlwZSwgQGFkckdyb3VwXi5jYWxsYmFja3MpDQkJaWYgbm90IGRlZmluZWQgKGFkckdyb3VwXi5jb29raWVEb21haW4pDQkJCWFkckdyb3VwXi5jb29raWVEb21haW4gPSAiIg0JCWlmIG5vdCBkZWZpbmVkIChhZHJHcm91cF4uY29va2llRXhwaXJlcykNCQkJYWRyR3JvdXBeLmNvb2tpZUV4cGlyZXMgPSAiTW9uLCAwMSBBcHIgMjAzMCAwNzowMDowMCBHTVQiDQkJaWYgbm90IGRlZmluZWQgKGFkckdyb3VwXi5jb29raWVOYW1lKQ0JCQlhZHJHcm91cF4uY29va2llTmFtZSA9ICJBZG1pbiINCQlpZiBub3QgZGVmaW5lZCAoYWRyR3JvdXBeLm1haWxSZXR1cm5BZGRyZXNzKQ0JCQlhZHJHcm91cF4ubWFpbFJldHVybkFkZHJlc3MgPSB1c2VyLnByZWZzLm1haWxBZGRyZXNzDQkJaWYgbm90IGRlZmluZWQgKGFkckdyb3VwXi5tYWlsU3ViamVjdCkNCQkJYWRyR3JvdXBeLm1haWxTdWJqZWN0ID0gIkFkbWluIg0JCWlmIG5vdCBkZWZpbmVkIChhZHJHcm91cF4ubWFpbFRlbXBsYXRlKQ0JCQl3cC5uZXdUZXh0T2JqZWN0ICgiIiwgQGFkckdyb3VwXi5tYWlsVGVtcGxhdGUpDQkJaWYgbm90IGRlZmluZWQgKGFkckdyb3VwXi5vcGVuVG9QdWJsaWMpDQkJCWFkckdyb3VwXi5vcGVuVG9QdWJsaWMgPSBmYWxzZQ0JCWlmIG5vdCBkZWZpbmVkIChhZHJHcm91cF4udXNlcnMpDQkJCW5ldyAodGFibGVUeXBlLCBAYWRyR3JvdXBeLnVzZXJzKQ0JDQlsb2NhbCAoYWRyTWVtYmVyID0gbWFpblJlc3BvbmRlci5tZW1iZXJzLmdldE1lbWJlclRhYmxlICgiQWRtaW4iLCB1c2VyLnByZWZzLm1haWxBZGRyZXNzKSkNCWlmIG5vdCBkZWZpbmVkIChhZHJNZW1iZXJeKQ0JCW5ldyAodGFibGVUeXBlLCBhZHJNZW1iZXIpDQlhZHJNZW1iZXJeLnBhc3N3b3JkID0gYmluYXJ5IChwYXNzd29yZCkNCWlmIG5vdCBk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ZiBub3QgKGNvbmZpZy5tYWluUmVzcG9uZGVyLnByZWZzLmZsU2VhcmNoRW5naW5lKQ0JZGlhbG9nLmFsZXJ0ICgiQ2FuJ3QgZGVsZXRlIGEgcGFnZSBiZWNhdXNlIHRoaXMgbWFjaGluZSBpcyBub3QgYSBzZWFyY2ggZW5naW5lIHNlcnZlci4iKQ0JcmV0dXJuIChmYWxzZSkNbG9jYWwgKHVybCkNaWYgZGlhbG9nLmFzayAoIlVSTCBvZiBwYWdlIHRvIGRlbGV0ZT8iLCBAdXJsKQ0JbWFpblJlc3BvbmRlci5zZWFyY2guc2VydmVyLmRlSW5kZXhQYWdlICh1cmwsIGZsRGlhbG9nczp0cnVlKQ2AAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAAAAAgAAAE4AAAJAAAwCAAAPBUFyaWFsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAAAAAAAFAAUAAAZUAACy11mVtEXAQQAAAEQAAAEmAT8B7gLATEFORP///////wAAAAAAAG1hYyAAAAAAAAAAAAAAAABpZiBub3QgKGNvbmZpZy5tYWluUmVzcG9uZGVyLnByZWZzLmZsU2VhcmNoRW5naW5lKQ0JZGlhbG9nLmFsZXJ0ICgiQ2FuJ3QgRWRpdCBQYWdlIEluZm8gYmVjYXVzZSB0aGlzIG1hY2hpbmUgaXMgbm90IGEgc2VhcmNoIGVuZ2luZSBzZXJ2ZXIuIikNCXJldHVybiAoZmFsc2UpDWxvY2FsICh1cmwpDWlmIGRpYWxvZy5hc2sgKCJVUkwgb2YgcGFnZT8iLCBAdXJsKQ0JbG9jYWwgKGluZGV4UGF0aCA9IG1haW5SZXNwb25kZXIuc2VhcmNoLnV0aWxpdGllcy5nZXRJbmRleFBhdGggKCkpDQltYWluUmVzcG9uZGVyLnNlYXJjaC51dGlsaXRpZXMuYXNzdXJlSW5kZXggKCkNCWxvY2FsIChhZHJQYWdlSW5mb1RhYmxlID0gQFtpbmRleFBhdGhdLnBhZ2VJbmZvKQ0JbG9jYWwgKGFkclBhZ2VJbmZvID0gQGFkclBhZ2VJbmZvVGFibGVeLlt1cmxdKQ0JaWYgbm90IGRlZmluZWQgKGFkclBhZ2VJbmZvXikNCQlkaWFsb2cuYWxlcnQgKCJDYW4ndCBlZGl0IGluZm8gZm9yICIgKyB1cmwgKyAiIGJlY2F1c2UgdGhlIHBhZ2UgaXNuJ3QgaW4gdGhlIGluZGV4LiIpDQkJcmV0dXJuIChmYWxzZSkNCWVkaXQgKGFkclBhZ2VJbmZvKQ2AAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAAA= \ No newline at end of file |
|
From: creedon <icr...@us...> - 2005-06-16 06:17:36
|
Update of /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7971 Modified Files: init Log Message: added config.mainresponder.prefs.baseUrl for adminSite setupFrontier Index: init =================================================================== RCS file: /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/init,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** init 26 Mar 2005 21:45:05 -0000 1.1.1.1 --- init 16 Jun 2005 06:17:27 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:scpt:mainResponder.init ! on init () { ÇInitialize mainResponder. ÇChanges: Ç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.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.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", "manila.root", "prefs.root"}}; //PBS 11/20/99: update everything every night by default 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 = "localhost"); 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 Ç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 = "localhost"}; 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 Ç6/15/05; 11:51:28 AM by TAC Ç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) { // 6/15/05; 11:50:19 AM by TAC 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.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", "manila.root", "prefs.root"}}; //PBS 11/20/99: update everything every night by default 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 = "localhost"); 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 Ç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 = "localhost"}; 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-06-16 06:17:09
|
Update of /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/adminSite/website In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7763 Modified Files: 23homeTemplate Log Message: changes for webbased install Index: 23homeTemplate =================================================================== RCS file: /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/adminSite/website/23homeTemplate,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** 23homeTemplate 26 Mar 2005 21:45:16 -0000 1.1.1.1 --- 23homeTemplate 16 Jun 2005 06:16:55 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:optx:mainResponder.adminSite.website.["#homeTemplate"] ! <body bgcolor="#FFFFFF" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" style="background-image: url('/mainResponderResources/adminSite/headerBackground'); background-repeat: no-repeat;"> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td colspan="2"> <table width="100%" cellpadding="0" border="0" cellspacing="0"><tr> <td width="1"><img src="/mainResponderResources/adminSite/shim" width="1" height="36"></td> <td align="center"><%menu ("white")%></td> </tr></table> </td> </tr> <tr> <td width="175"><img src="/mainResponderResources/adminSite/shim" width="175" height="45" border="0" usemap="#header"><map name="header"><area shape="rect" href="http://frontier.userland.com/" coords="13, 7, 166, 29" /></map></td> <td align="right"><a href="http://www.userland.com/"><img src="/mainResponderResources/adminSite/userlandLogo" width="140" height="20" border="0"></a></td> </tr> </table> <div align="center"> <table width="90%" border="0" cellspacing="0" cellpadding="4"> <tr> <td valign="top"> <table border="0" width="100%" cellspacing="12" cellpadding="0"> <tr> <td valign="top"> <p><font size="+1"><b><%viewPageTitle ()%></b></font></p> {bodytext} </td> <td width="30"> </td> <td width="160" valign="top"> <div align="center"><%mainResponder.adminSite.macros.search ()%></div> <table width="160" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="11"><img src="/mainResponderResources/adminSite/box/topLeft" width="11" height="12"></td> <td background="/mainResponderResources/adminSite/box/top"><img src="/mainResponderResources/adminSite/box/top" width="5" height="12"></td> <td width="15"><img src="/mainResponderResources/adminSite/box/topRight" width="15" height="12"></td> </tr> <tr> <td width="11" background="/mainResponderResources/adminSite/box/left"><img src="/mainResponderResources/adminSite/box/left" width="11" height="4"></td> <td bgcolor="#EEEEEE"><%mainResponder.adminSite.macros.statusCenter ()%></td> <td width="15" background="/mainResponderResources/adminSite/box/right"><img src="/mainResponderResources/adminSite/box/right" width="15" height="6"></td> </tr> <tr> <td width="11"><img src="/mainResponderResources/adminSite/box/bottomLeft" width="11" height="16"></td> <td background="/mainResponderResources/adminSite/box/bottom"><img src="/mainResponderResources/adminSite/box/bottom" width="4" height="16"></td> <td width="15"><img src="/mainResponderResources/adminSite/box/bottomRight" width="15" height="16"></td> </tr> </table> </td> </tr> </table> </td> </tr> </table> </div> <br /><br /><br /> <hr width="95%" size="1"> <br /> <div align="center"> © Copyright 2001-<%date.year ()%> <a href="http://www.userland.com/">UserLand Software, Inc</a>.<br /> <font size="-1"><i>Last update: <%timeModified (adrobject)%>.</i></font><br /> </div> </body> </html> \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:optx:mainResponder.adminSite.website.["#homeTemplate"] ! <body> <div id="banner"> <a href="" style="font-family:verdana, arial, sans-serif;color:#FFF;font-size:20px;font-weight:normal;text-transform:uppercase;letter-spacing: .2em;"> Frontier </a> <br/> <span class="description"> High performance Web content management, object database, system-level and Internet scripting environment, including source code editing and debugging. </span> </div> <div id="content" style="border-right: 1px dotted #999; float: left; width: 75%;"> <div class="blogbody"> <%menu ("black")%> <br/> <p class="title"> <%viewPageTitle ()%> </p> {bodytext} <div class="footer"> <p> This Page was last update: <%timeModified (adrobject)%> <br/> Page template based on <a href="http://www.bryanbell.com/">Bryan Bell's</a> <a href="http://www.bryanbell.com/2002/07/23#a63">Moveable Manila: green</a>. <br/> © Copyright <%date.year ()%> </p> <p> <a href="http://jigsaw.w3.org/css-validator/"> <img style="border:0;width:88px;height:31px" src="http://jigsaw.w3.org/css-validator/images/vcss" alt="Valid CSS!"> </a> </p> </div> </div> </div> <div align="center" id="links"> <br/> <div align="center"> <%mainResponder.adminSite.macros.search ()%> </div> <table width="160" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="11"><img src="/mainResponderResources/adminSite/box/topLeft" width="11" height="12"></td> <td background="/mainResponderResources/adminSite/box/top"><img src="/mainResponderResources/adminSite/box/top" width="5" height="12"></td> <td width="15"><img src="/mainResponderResources/adminSite/box/topRight" width="15" height="12"></td> </tr> <tr> <td width="11" background="/mainResponderResources/adminSite/box/left"><img src="/mainResponderResources/adminSite/box/left" width="11" height="4"></td> <td bgcolor="#EEEEEE"><%mainResponder.adminSite.macros.statusCenter ()%></td> <td width="15" background="/mainResponderResources/adminSite/box/right"><img src="/mainResponderResources/adminSite/box/right" width="15" height="6"></td> </tr> <tr> <td width="11"><img src="/mainResponderResources/adminSite/box/bottomLeft" width="11" height="16"></td> <td background="/mainResponderResources/adminSite/box/bottom"><img src="/mainResponderResources/adminSite/box/bottom" width="4" height="16"></td> <td width="15"><img src="/mainResponderResources/adminSite/box/bottomRight" width="15" height="16"></td> </tr> </table> </div> </body> </html> \ No newline at end of file |
|
From: creedon <icr...@us...> - 2005-06-16 06:17:03
|
Update of /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/localization/languages/english/strings/setupFrontier In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7741 Modified Files: newUserConfirmMessage Log Message: changes for webbased install Index: newUserConfirmMessage =================================================================== RCS file: /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/localization/languages/english/strings/setupFrontier/newUserConfirmMessage,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** newUserConfirmMessage 26 Mar 2005 21:45:50 -0000 1.1.1.1 --- newUserConfirmMessage 16 Jun 2005 06:16:50 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:wptx:mainResponder.localization.languages.english.strings.setupFrontier.newUserConfirmMessage ! <p><br>The setup process is complete and your first Manila website has been created.</p> <%local (whenTrialExpires = date.nextMonth (date.nextMonth (userland.trialVersion.whenInstalled))); if userland.trialVersion.flTrialVersion {"<p>This fully-functional trial installation of Frontier will work until " + date.longString (whenTrialExpires) + ".</p>"} else {""}%> <p>Click the Continue button below to go to the Frontier Admin website for the first time. You will be asked to log in with the email address and password you've supplied.</p> <p>You can return to the Admin website at any time, using the Open Admin Site command in Frontier's Server menu.<br><br></p> \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:wptx:mainResponder.localization.languages.english.strings.setupFrontier.newUserConfirmMessage ! <p><br>The setup process is complete.</p> <p>Click the Continue button below to go to the Frontier Admin website for the first time. You will be asked to log in with the email address and password you've supplied.</p> <p>You can return to the Admin website at any time, using the Open Admin Site command in Frontier's Server menu.<br><br></p> \ No newline at end of file |
|
From: creedon <icr...@us...> - 2005-06-16 02:05:12
|
Update of /cvsroot/frontierkernel/odbs/frontierRoot/system/startup In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22425 Modified Files: startupScript Log Message: now do webbased install Index: startupScript =================================================================== RCS file: /cvsroot/frontierkernel/odbs/frontierRoot/system/startup/startupScript,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** startupScript 14 Jun 2005 07:33:39 -0000 1.3 --- startupScript 16 Jun 2005 02:05:00 -0000 1.4 *************** *** 1,3 **** FrontierVcsFile:1:scpt:system.startup.startupScript ! ÇThis script runs when Frontier opens the Frontier.root file. ÇChanges Ç11/27/04; 8:16:58 AM by TAC Çrewrite for Open Source release, bring in code from startup.startupScript, userland.firstRootRun, userland.finishInstall, and userland.cleanRoot ÇOld code Çstartup.startupScript <http://cvs.sourceforge.net/viewcvs.py/frontierkernel/odbs/frontierRoot/system/startup/startupScript?only_with_tag=initial_frontier_root&view=markup> Çuserland.firstRootRun <http://cvs.sourceforge.net/viewcvs.py/frontierkernel/odbs/frontierRoot/system/verbs/builtins/userland/firstRootRun?only_with_tag=initial_frontier_root&view=markup> Çuserland.finishInstall <http://cvs.sourceforge.net/viewcvs.py/frontierkernel/odbs/frontierRoot/system/verbs/builtins/userland/finishInstall?only_with_tag=initial_frontier_root&view=markup> Çuserland.cleanRoot <http://cvs.sourceforge.net/viewcvs.py/frontierkernel/odbs/frontierRoot/system/verbs/builtins/userland/Attic/cleanRoot?only_with_tag=initial_frontier_root&view=markup> Ç06/08/01; 11:24:35 PM by JES ÇWhen opening databases defined at user.databases, skip objects which aren't tables. This avoids the condition where startup wouldn't complete, if there's an item #1 in the user.databases table. Ç06/02/01; 8:34:20 PM by PBS ÇDo the web-based install and open the Control Panel if this is the first root run. Ç04/28/01; 7:48:46 PM by JES ÇCall Frontier.tools.startup in a try block, so that the startup process will finish even if Tools installation fails. Ç04/20/01; 4:49:05 PM by JES ÇCall tools.startup to install Tools at startup. Ç10/7/99; 4:20:26 PM by PBS ÇOnly run the #startup script in a guest database if runStartupScript exists and is true. Previously, it would be run whether runStartupScript was true or false. Çhttp://frontier.userland.com/stories/storyReader$1760 Ç10/6/99; 10:21:35 PM by PBS ÇOnly set the taskTime for the overnight task if it's in the past. This fixes a bug when the taskTime was before midnight, but it was being set for the next day, so the overnight task wouldn't run. Çhttp://frontier.userland.com/stories/storyReader$1761 Ç8/19/99; 6:44:48 AM by DW ÇMake sure that taskTimes in user.scheduler.tasks are in the future. ÇWe do this much more quickly than scheduler.monitor would. Çhttp://discuss.userland.com/msgReader$9658 local (flEnableAgents = true, flOpenDatabases = true, flEnableHttpServer = true); // can be set by the external startup script local (flFirstRootRun = true); bundle { // miscellaneous variable initializations and checks, phase 1 of 2 Frontier.pathString = file.folderFromPath (frontier.getFilePath ())}; bundle { // first root run, phase 1 of 2 if defined (user.prefs.firstRootRun) { // 2004-11-13 TAC flFirstRootRun = user.prefs.firstRootRun}; if flFirstRootRun { // license agreement, finish cleanup on user's machine Frontier.enableAgents (false); // try to keeps agents from reporting errors while window.frontmost () != "" { // open windows can mess things up later on window.hide (window.frontmost ())}; Çreturn (false) // enable for debugging new (tableType, @system.temp); new (tableType, @root.user); backups.init (); batchExporter.init (); export.init (); rootUpdates.init (); // set up user.rootUpdates, even though root updates uses tcp, its ok to set up here as no tcp calls are made at this time webEdit.init (); bundle { // set up user.prefs new (tableType, @user.prefs); user.prefs.firstRootRun = true; user.prefs.flShortTimeStamp = true; user.prefs.flWinStandardMaximize = true; user.prefs.frontierIsServer = false; user.prefs.initials = ""; user.prefs.mailAddress = ""; user.prefs.mailHost = ""; user.prefs.name = ""; user.prefs.openAboutWindow = false; user.prefs.organization = ""; bundle { // set up user.prefs.fonts local (defaultfont, defaultsize); new (tableType, @user.prefs.fonts); case sys.os () { "MacOS" { defaultfont = "Geneva"; defaultsize = 12; if system.environment.isCarbon { defaultsize = 10}}; "WinNT"; "Win95" { defaultfont = "Arial"; defaultsize = 10}}; if not defined (user.prefs.fonts.outlineFont) { user.prefs.fonts.outlineFont = defaultfont}; if not defined (user.prefs.fonts.outlineFontSize) { user.prefs.fonts.outlineFontSize = defaultsize}; if not defined (user.prefs.fonts.tableFont) { user.prefs.fonts.tableFont = defaultfont}; if not defined (user.prefs.fonts.tableFontSize) { user.prefs.fonts.tableFontSize = defaultsize}; if not defined (user.prefs.fonts.wptextFont) { user.prefs.fonts.wptextFont = defaultfont}; if not defined (user.prefs.fonts.wptextFontSize) { user.prefs.fonts.wptextFontSize = defaultsize}; if not defined (user.prefs.fonts.scriptFont) { user.prefs.fonts.scriptFont = defaultfont}; if not defined (user.prefs.fonts.scriptFontSize) { user.prefs.fonts.scriptFontSize = defaultsize}; if not defined (user.prefs.fonts.menuBarFont) { case sys.os () { "Win95"; "WinNT" { user.prefs.fonts.menuBarFont = defaultfont}; "MacOS" { ÇChicago with System 7, Charcoal with OS 8. if system.environment.isCarbon { user.prefs.fonts.menuBarFont = defaultfont} else { if sys.osVersion () beginsWith "8" { user.prefs.fonts.menuBarFont = "Charcoal"} else { user.prefs.fonts.menuBarFont = "Chicago"}}}}}; if not defined (user.prefs.fonts.menuBarFontSize) { user.prefs.fonts.menuBarFontSize = defaultsize}}; bundle { // set up user.prefs.dialogs new (tableType, @user.prefs.dialogs); user.prefs.dialogs.newSuiteName = ""; user.prefs.dialogs.jumpAddress = "websites"}; // or should this be workspace? bundle { // set up user.prefs.search new (tableType, @user.prefs.search); user.prefs.search.searchFor = "9.0.1"; user.prefs.search.replaceWith = Frontier.version (); user.prefs.search.caseSensitive = false; user.prefs.search.closeWindows = true; user.prefs.search.flatSearch = false; user.prefs.search.frontWindowOnly = false; user.prefs.search.wholeWords = false; user.prefs.search.wrapAround = true; user.prefs.search.winStandardFindCommand = false}; bundle { // set up user.prefs.commonStyles case sys.os () { "MacOS" { if system.environment.isCarbon { user.prefs.commonStyles = Frontier.data.commonStylesMacCarbon} else { user.prefs.commonStyles = Frontier.data.commonStylesMac}}; "Win95"; "WinNT" { user.prefs.commonStyles = Frontier.data.commonStylesWin}}}}; bundle { // set up the quick script window clipboard.putvalue ("dialog.notify (\"Hello World!\")"); window.quickScript (); editmenu.selectall (); editmenu.paste (); window.close ("Quick Script")}; bundle { // set up root window local (w = "root"); window.open (w); window.setPosition (w, 0, 0); editMenu.setFont (user.prefs.fonts.tableFont); editMenu.setFontSize (user.prefs.fonts.tableFontSize); window.zoom (w)}; bundle { // set up user.callbacks new (tableType, @user.callbacks); new (tableType, @user.callbacks.closeWindow); new (tableType, @user.callbacks.cmd2click); new (tableType, @user.callbacks.compileChangedScript); new (tableType, @user.callbacks.control2click); new (tableType, @user.callbacks.fileWriteWholeFile); new (tableType, @user.callbacks.opCollapse); new (tableType, @user.callbacks.opCursorMoved); new (tableType, @user.callbacks.openWindow); new (tableType, @user.callbacks.opExpand); new (tableType, @user.callbacks.opInsert); new (tableType, @user.callbacks.opReturnKey); new (tableType, @user.callbacks.opRightClick); new (tableType, @user.callbacks.opStruct2Click); new (tableType, @user.callbacks.option2click); new (tableType, @user.callbacks.resume); new (tableType, @user.callbacks.saveWindow); new (tableType, @user.callbacks.shutdown); new (tableType, @user.callbacks.startup); new (tableType, @user.callbacks.suspend); new (tableType, @user.callbacks.systemTrayIcon2Click); new (tableType, @user.callbacks.systemTrayIconRightClick); new (tableType, @user.callbacks.statusMessage)}; bundle { // set up user.menus new (tableType, @user.menus); Çuser.menus.bookmarkMenu = userland.virginBookmarkMenu user.menus.customMenu = Frontier.data.virginCustomMenu}; bundle { // clear applications paths in system.verbs.apps local (adrAppsTable = @system.verbs.apps, i); for i = 1 to sizeof (adrAppsTable^) { local (adrAppInfo = @adrAppsTable^ [i].appInfo); if defined (adrAppInfo^) { adrAppInfo^.path = ""}}}; bundle { // set up Frontier.tools.thread Frontier.tools.thread.ct = 0; Frontier.tools.thread.enabled = true}; bundle { // set up workspace new (tableType, @root.workspace); new (outlineType, @workspace.notepad)}; bundle { // miscellaneous new (tableType, @root.scratchpad); new (tableType, @system.deskscripts); new (tableType, @user.databases); new (tableType, @user.protocols); };Çnew (tableType, @websites.["#data"]) Ç Çbundle //initialize responders Çuser.webserver.responders.websiteFramework.data.docTree.samples = @websites.samples Çtry Çdelete (@user.webserver.responders.websiteFramework.data.docTree.allSites) Çtry Çdelete (@user.webserver.responders.websiteFramework.data.docTree.contents) Ç Çif defined (user.webserver.responders.manilaEdit) Çdelete (@user.webserver.responders.manilaEdit) Ç Ç Çbundle //misc Frontier 8 stuff Ç Çlocal (adr, sizeTable = sizeOf (workspace), i) // ? - no initializations of workspace? Çfor i = sizeTable downTo 1 Çlocal (adr = @workspace [i]) Çlocal (name = nameOf (adr^)) Çcase string.lower (name) Ç"notepad" Ç"userlandsamples" Çcontinue Çdelete (adr) Ç Ç Çreturn (true) Çbundle // open prefs.root, hidden and add to user.databases Çlocal (f = Frontier.getSubFolder ("www") + "prefs.root") Çif not defined ([f]) ÇfileMenu.open (f, true) //open it hidden Ç ÇAdd an entry to the user.databases table. Çlocal (adrTable = @user.databases.["prefs.root"]) Çnew (tableType, adrTable) ÇadrTable^.f = f ÇadrTable^.openOnStartup = true ÇadrTable^.runStartupScript = false ÇadrTable^.supportsSubscribe = false Çbundle // open mainResponder.root, hidden and add to user.databases Çlocal (appFolder = Frontier.getSubFolder ("apps")) Çif not defined ( [appFolder + "mainResponder.root"] ) ÇFrontier.installApp ("mainResponder.root", false) Ç11/29/04; 11:17:45 AM by TAC - the following seems like it should be done as part of mainRepsonder startup, init. if I remember correctly, members.root is a feature of mainResponder Çbundle //create the Admin membership group if needed Çlocal (adrRoot = @[system.temp.mainResponder.membersRootFile]) Çlocal (adrGroup = @adrRoot^.admin) Çif not defined (adrGroup^) Çnew (tableType, adrGroup) Çif not defined (adrGroup^.callbacks) Çnew (tableType, @adrGroup^.callbacks) Çif not defined (adrGroup^.cookieDomain) ÇadrGroup^.cookieDomain = "" Çif not defined (adrGroup^.cookieExpires) ÇadrGroup^.cookieExpires = "Mon, 01 Apr 2030 07:00:00 GMT" Çif not defined (adrGroup^.cookieName) ÇadrGroup^.cookieName = "Admin" Çif not defined (adrGroup^.mailReturnAddress) ÇadrGroup^.mailReturnAddress = user.prefs.mailAddress Çif not defined (adrGroup^.mailSubject) ÇadrGroup^.mailSubject = "Admin" Çif not defined (adrGroup^.mailTemplate) Çwp.newTextObject ("", @adrGroup^.mailTemplate) Çif not defined (adrGroup^.openToPublic) ÇadrGroup^.openToPublic = false Çif not defined (adrGroup^.users) Çnew (tableType, @adrGroup^.users) Çbundle // prep for web based install via mainResponder admin website, disabled until mR can be rewritten from the perspective of the open source release Çlocal (portString = "") Çif user.inetd.config.http2.port != 80 ÇportString = ":" + user.inetd.config.http2.port Çif not defined (system.temp.Frontier.setupFrontier) Çnew (tableType, @system.temp.Frontier.setupFrontier) Çsystem.temp.Frontier.setupFrontier.flAllowLocalAccessToSetupPage = true Çlocal (setupUrl = "http://127.0.0.1" + portString + "/setupFrontier") Çif not defined (system.temp.installer) Çnew (tableType, @system.temp.installer) Çsystem.temp.installer.urlToOpen = setupUrl}; };ÇfileMenu.save () bundle { // system.temp.Frontier if defined (system.temp.Frontier) { //only run the startup script once return}; new (tableType, @system.temp.Frontier); system.temp.Frontier.startupTime = clock.now (); system.temp.Frontier.startingUp = true}; bundle { // miscellaneous variable initializations and checks, phase 2 of 2 system.menus.data.currentsuite = ""; system.menus.data.currentmenu = 0; Çbundle // make sure proxy prefs exist, now in webBrowser.init Çif not defined (user.webBrowser) Çnew (tableType, @user.webBrowser) Çif not defined (user.webBrowser.proxy) Çnew (tableType, @user.webBrowser.proxy) Çif not defined (user.webBrowser.proxy.domain) Çuser.webBrowser.proxy.domain = "" Çif not defined (user.webBrowser.proxy.password) Çuser.webBrowser.proxy.password = "" Çif not defined (user.webBrowser.proxy.port) Çuser.webBrowser.proxy.port = 80 Çif not defined (user.webBrowser.proxy.username) Çuser.webBrowser.proxy.username = "" Çif not defined (user.webBrowser.proxy.enabled) // 11/14/04; 4:00:48 PM by TAC Çuser.webBrowser.proxy.enabled = false bundle { // check for presence of Psapi.dll if sys.os () == "WinNT" { if not (sys.appIsRunning ("Frontier.exe")) { // 11/27/04; 12:14:40 PM by TAC - would it be possible for Frontier to install this on its own? dialog.alert ("You need to run the Frontier Psapi Installer for certain Frontier verbs to work properly.")}}}}; bundle { //open the about window if the pref says we should Çadded 12/16/98; 6:47:28 PM by DW if not defined (user.prefs.openAboutWindow) { user.prefs.openAboutWindow = true}; if user.prefs.openAboutWindow { window.about ()}}; bundle { //initialize the log, next bit of code could add a log item Çadded 12/16/98; 6:52:40 PM by DW if defined (log.startup) { log.startup ()}}; bundle { //run the external startup script local (fname = "frontierStartupCommands.txt"); local (f = file.folderFromPath (Frontier.getProgramPath ()) + fname); if file.exists (f) { try { evaluate (string (file.readWholeFile (f)))} else { log.add ("Error running " + fname + ": \"" + tryError + "\"", "startupError", flwptext:true)}}}; bundle { // tcp based services webserver.init (); // needs to load first betty.init (); // needs to load second soap.init ()}; bundle { // people based services people.init (); // needs to load first custody.init (); webEditServer.init ()}; bundle { //open all the databases that have openOnStartup true Çadded 12/16/98; 6:23:16 PM by DW if defined (user.databases) { if flOpenDatabases { local (i, flmsg = false); for i = 1 to sizeof (user.databases) { if typeOf (user.databases[i]) == tableType { //06/08/01 JES: avert item #1 errors with user.databases [i] { local (flopened = false); try { if openOnStartup { msg (this + ": Opening " + file.fileFromPath (f)); flmsg = true; fileMenu.open (f, hidden:true); flopened = true}} else { log.add ("Startup error opening guest database " + nameof (user.databases [i]) + ": \"" + tryError + "\"", "startupError", flwptext:true)}; if flopened { if defined (runStartupScript) { if runStartupScript { //PBS 10/7/99: check the value of runStartupScript: only run the script if the boolean is true local (adrscript = @[filespec (f)].["#startup"]); if defined (adrscript^) { try { adrscript^ ()} else { log.add ("Error running #startup script in guest database " + nameof (user.databases [i]) + ": \"" + tryError + "\"", "startupError", flwptext:true)}}}}}}}}; if flmsg { msg ("")}}}; Çelse Çnew (tableType, @user.databases)}; try { //04/28/2001 JES: prevent startup from failing if Tool installation fails. Frontier.tools.startup ()}; scheduler.init (); html.init (); bundle { // webBrowser webBrowser.init (); if system.environment.isMac { try {new (tableType, @user.odbEditors.data.openFiles)}}; //Empty out the list of externally-edited files. if system.environment.isWindows { user.webBrowser.winDefaultBrowserApp = file.findApplication ("htm")}}; bundle { // first root run, phase 2 of 3 if flFirstRootRun { bundle { // set up websites table and related with websites.["#ftpSite"] { folder = file.folderFromPath (Frontier.getProgramPath ()) + "Websites" + file.getPathChar (); Çfile.sureFolder (folder) url = file.fileToURL (folder); isLocal = true}; user.html.sites.default = websites.["#ftpSite"]}; Çwe do this until we can whip mainResponder into shape for the open source relase, then we would use the urlToOpen below on infoDialog () { //prompt the user for name, org and initials on kernelCall (adrName, adrInitials, adrOrg, adrEmail) { kernel (dialog.getUserInfo)}; local (name, initials, organization, email); case sys.os () { "Win95"; "WinNT" { if not (kernelCall (@name, @initials, @organization, @email)) { return (false)}; if initials == "" { dialog.alert ("You must specify your initials."); infoDialog ()}; user.prefs.name = name; user.prefs.initials = initials; user.prefs.organization = organization; user.prefs.mailAddress = email}; "MacOS" { bundle { //initialize user.prefs.name etc using info from Internet Config try { name = ic.geticpreference (ic.eventinfo.realName)}; try { organization = ic.geticpreference (ic.eventinfo.organization)}; try { email = ic.geticpreferece (ic.eventinfo.emailAddress)}; user.prefs.name = name; user.prefs.organization = organization; if name != "" { local (i); user.prefs.initials = name [1]; for i = 3 to sizeof (name) { if name [i] == ' ' { user.prefs.initials = user.prefs.initials + name [i+1]}}}}; card.run (@system.cards.userInfoDialog); // 11/25/04; 1:41:26 PM by TAC - disabled ÇwebBrowser.openUrl ("http://127.0.0.1:5336/hCard/userInfo/") }};ÇwebBrowser.bringToFront () return (true)}; infoDialog (); //AR 09/27/04 : personalize install, disabled web-based install for open source release // ? - replace with browser based interface? ÇrootUpdates.getCurrent ("Frontier") // 11/29/04; 6:57:54 PM by TAC - if we get a root update then we'll need to use rootUpdates.update bundle { // about window local (w); window.about (); w = window.frontMost (); window.zoom (w); menus.scripts.styleCommand ("medium"); window.setPosition (w, 25, 75); };Çwindow.close (s) bundle { // license edit (@system.startup.license); // 12/4/04; 9:26:35 PM by TAC - i rather do this near the beginning of phase 1 firstRootRun but had a problem with this window and setting up the quick script window wp.setSelect (0, 0)}}}; system.callbacks.startup (); //call user's startup scripts bundle { // build menu bar system.menus.buildMenuBar (); system.menus.buildSuitesSubmenu ()}; //5.0 Frontier.enableAgents (flEnableAgents); if flEnableHttpServer { //6.0, daemons don't start up until all the startup code has run new (tableType, @user.inetd.listens); inetd.start ()}; //start up all daemons with startup set true bundle { // first root run, phase 3 of 3 if flFirstRootRun { Çif defined (system.temp.installer.urlToOpen) Çwindow.update ("About Frontier") ÇwebBrowser.openUrl (system.temp.installer.urlToOpen) ÇwebBrowser.bringToFront () user.prefs.firstRootRun = false}}; system.temp.Frontier.startingUp = false; //signal to all who care, let the hits begin! msg (""); fileMenu.save (); Ç Ç ÇÇfinish the job started by userland.cleanRoot Çsystem.menus.buildMenuBar () Çif not (userland.finishInstall ()) //PBS 06/02/01: web-based install ÇinfoDialog () Çbundle //license agreement Çlocal (editLicense = false) Çif sys.os () == "MacOS" Çon itemhit (itemnumber) Çcase (itemnumber) Ç1 Çyes ÇeditLicense = true Çreturn (false) Çstop processing the dialog Ç2 Çno Çreturn (false) Çstop processing the dialog Çreturn (true) Çkeep processing the dialog Çdialog.run (517, 1, @itemhit) Çelse Çif dialog.yesNo ("Frontier is licensed software. Do you want to read the license agreement now?") ÇeditLicense = true Çif editLicense Çbundle //get root update ÇproxyInit () Çif user.prefs.serialNumber != "" and not (string.lower (user.prefs.serialNumber) contains "trial") ÇrootUpdates.init () \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:scpt:system.startup.startupScript ! ÇThis script runs when Frontier opens the Frontier.root file. ÇChanges Ç6/15/05; 6:52:11 PM by TAC Çrewrite for Open Source release, bring in code from startup.startupScript, userland.firstRootRun, userland.finishInstall, and userland.cleanRoot ÇOld code Çstartup.startupScript <http://cvs.sourceforge.net/viewcvs.py/frontierkernel/odbs/frontierRoot/system/startup/startupScript?rev=1.1&view=markup> Çuserland.firstRootRun <http://cvs.sourceforge.net/viewcvs.py/frontierkernel/odbs/frontierRoot/system/verbs/builtins/userland/Attic/firstRootRun?rev=1.1&view=markup> Çuserland.finishInstall <http://cvs.sourceforge.net/viewcvs.py/frontierkernel/odbs/frontierRoot/system/verbs/builtins/userland/Attic/finishInstall?rev=1.1&view=markup> Çuserland.cleanRoot <http://cvs.sourceforge.net/viewcvs.py/frontierkernel/odbs/frontierRoot/system/verbs/builtins/userland/Attic/cleanRoot?rev=1.1&view=markup> Ç06/08/01; 11:24:35 PM by JES ÇWhen opening databases defined at user.databases, skip objects which aren't tables. This avoids the condition where startup wouldn't complete, if there's an item #1 in the user.databases table. Ç06/02/01; 8:34:20 PM by PBS ÇDo the web-based install and open the Control Panel if this is the first root run. Ç04/28/01; 7:48:46 PM by JES ÇCall Frontier.tools.startup in a try block, so that the startup process will finish even if Tools installation fails. Ç04/20/01; 4:49:05 PM by JES ÇCall tools.startup to install Tools at startup. Ç10/7/99; 4:20:26 PM by PBS ÇOnly run the #startup script in a guest database if runStartupScript exists and is true. Previously, it would be run whether runStartupScript was true or false. Çhttp://frontier.userland.com/stories/storyReader$1760 Ç10/6/99; 10:21:35 PM by PBS ÇOnly set the taskTime for the overnight task if it's in the past. This fixes a bug when the taskTime was before midnight, but it was being set for the next day, so the overnight task wouldn't run. Çhttp://frontier.userland.com/stories/storyReader$1761 Ç8/19/99; 6:44:48 AM by DW ÇMake sure that taskTimes in user.scheduler.tasks are in the future. ÇWe do this much more quickly than scheduler.monitor would. Çhttp://discuss.userland.com/msgReader$9658 local (flEnableAgents = true, flOpenDatabases = true, flEnableHttpServer = true); // can be set by the external startup script local (flFirstRootRun = true); bundle { // miscellaneous variable initializations and checks, phase 1 of 2 Frontier.pathString = file.folderFromPath (frontier.getFilePath ())}; bundle { // first root run, phase 1 of 2 if defined (user.prefs.firstRootRun) { flFirstRootRun = user.prefs.firstRootRun}; if flFirstRootRun { // license agreement, finish cleanup on user's machine Frontier.enableAgents (false); // try to keep agents from reporting errors while window.frontmost () != "" { // open windows can mess things up later on window.hide (window.frontmost ())}; Çreturn (false) // enable for testing new (tableType, @system.temp); new (tableType, @root.user); backups.init (); batchExporter.init (); export.init (); rootUpdates.init (); // set up user.rootUpdates, even though root updates uses tcp, its ok to set up here as no tcp calls are made at this time webEdit.init (); bundle { // set up user.prefs new (tableType, @user.prefs); user.prefs.firstRootRun = true; user.prefs.flShortTimeStamp = true; user.prefs.flWinStandardMaximize = true; user.prefs.frontierIsServer = false; user.prefs.initials = ""; user.prefs.mailAddress = ""; user.prefs.mailHost = ""; user.prefs.name = ""; user.prefs.openAboutWindow = false; user.prefs.organization = ""; Frontier.setupUserPrefsFonts (); bundle { // set up user.prefs.dialogs new (tableType, @user.prefs.dialogs); user.prefs.dialogs.newSuiteName = ""; user.prefs.dialogs.jumpAddress = "websites"}; // or should this be workspace? bundle { // set up user.prefs.search new (tableType, @user.prefs.search); user.prefs.search.searchFor = "9.0.1"; user.prefs.search.replaceWith = Frontier.version (); user.prefs.search.caseSensitive = false; user.prefs.search.closeWindows = true; user.prefs.search.flatSearch = false; user.prefs.search.frontWindowOnly = false; user.prefs.search.wholeWords = false; user.prefs.search.wrapAround = true; user.prefs.search.winStandardFindCommand = false}; bundle { // set up user.prefs.commonStyles case sys.os () { "MacOS" { if system.environment.isCarbon { user.prefs.commonStyles = Frontier.data.commonStylesMacCarbon} else { user.prefs.commonStyles = Frontier.data.commonStylesMac}}; "Win95"; "WinNT" { user.prefs.commonStyles = Frontier.data.commonStylesWin}}}}; bundle { // set up the quick script window clipboard.putvalue ("dialog.notify (\"Hello World!\")"); window.quickScript (); editmenu.selectall (); editmenu.paste (); window.close ("Quick Script")}; bundle { // set up root window local (w = "root"); window.open (w); window.setPosition (w, 0, 0); editMenu.setFont (user.prefs.fonts.tableFont); editMenu.setFontSize (user.prefs.fonts.tableFontSize); window.zoom (w)}; bundle { // set up user.callbacks new (tableType, @user.callbacks); new (tableType, @user.callbacks.closeWindow); new (tableType, @user.callbacks.cmd2click); new (tableType, @user.callbacks.compileChangedScript); new (tableType, @user.callbacks.control2click); new (tableType, @user.callbacks.fileWriteWholeFile); new (tableType, @user.callbacks.opCollapse); new (tableType, @user.callbacks.opCursorMoved); new (tableType, @user.callbacks.openWindow); new (tableType, @user.callbacks.opExpand); new (tableType, @user.callbacks.opInsert); new (tableType, @user.callbacks.opReturnKey); new (tableType, @user.callbacks.opRightClick); new (tableType, @user.callbacks.opStruct2Click); new (tableType, @user.callbacks.option2click); new (tableType, @user.callbacks.resume); new (tableType, @user.callbacks.saveWindow); new (tableType, @user.callbacks.shutdown); new (tableType, @user.callbacks.startup); new (tableType, @user.callbacks.suspend); new (tableType, @user.callbacks.systemTrayIcon2Click); new (tableType, @user.callbacks.systemTrayIconRightClick); new (tableType, @user.callbacks.statusMessage)}; bundle { // set up user.menus new (tableType, @user.menus); Çuser.menus.bookmarkMenu = userland.virginBookmarkMenu user.menus.customMenu = Frontier.data.virginCustomMenu}; bundle { // clear applications paths in system.verbs.apps local (adrAppsTable = @system.verbs.apps, i); for i = 1 to sizeof (adrAppsTable^) { local (adrAppInfo = @adrAppsTable^ [i].appInfo); if defined (adrAppInfo^) { adrAppInfo^.path = ""}}}; bundle { // set up Frontier.tools.thread Frontier.tools.thread.ct = 0; Frontier.tools.thread.enabled = true}; bundle { // set up workspace new (tableType, @root.workspace); new (outlineType, @workspace.notepad)}; bundle { // miscellaneous new (tableType, @root.scratchpad); new (tableType, @system.deskscripts); new (tableType, @user.databases); new (tableType, @user.protocols); };Çnew (tableType, @websites.["#data"]) bundle { // open mainResponder.root, hidden and add to user.databases local (appFolder = Frontier.getSubFolder ("apps")); if not defined ( [appFolder + "mainResponder.root"] ) { Frontier.installApp ("mainResponder.root", false)}}; bundle { // open prefs.root, hidden and add to user.databases local (f = Frontier.getSubFolder ("www") + "prefs.root"); if not (defined ([f])) { fileMenu.open (f, true);}; //open hidden ÇAdd an entry to the user.databases table. local (adrTable = @user.databases.["prefs.root"]); new (tableType, adrTable); adrTable^.f = f; adrTable^.openOnStartup = true; adrTable^.runStartupScript = false; adrTable^.supportsSubscribe = false}; Çbundle //initialize responders Çuser.webserver.responders.websiteFramework.data.docTree.samples = @websites.samples Çtry Çdelete (@user.webserver.responders.websiteFramework.data.docTree.allSites) Çtry Çdelete (@user.webserver.responders.websiteFramework.data.docTree.contents) Ç Çif defined (user.webserver.responders.manilaEdit) Çdelete (@user.webserver.responders.manilaEdit)}; };ÇfileMenu.save () bundle { // system.temp.Frontier if defined (system.temp.Frontier) { //only run the startup script once return}; new (tableType, @system.temp.Frontier); system.temp.Frontier.startupTime = clock.now (); system.temp.Frontier.startingUp = true}; bundle { // miscellaneous variable initializations and checks, phase 2 of 2 system.menus.data.currentsuite = ""; system.menus.data.currentmenu = 0; bundle { // check for presence of Psapi.dll if sys.os () == "WinNT" { if not (sys.appIsRunning ("Frontier.exe")) { // 11/27/04; 12:14:40 PM by TAC - would it be possible for Frontier to install this on its own? dialog.alert ("You need to run the Frontier Psapi Installer for certain Frontier verbs to work properly.")}}}}; bundle { //open the about window if the pref says we should Çadded 12/16/98; 6:47:28 PM by DW if not defined (user.prefs.openAboutWindow) { user.prefs.openAboutWindow = true}; if user.prefs.openAboutWindow { window.about ()}}; bundle { //initialize the log, next bit of code could add a log item Çadded 12/16/98; 6:52:40 PM by DW if defined (log.startup) { log.startup ()}}; bundle { //run the external startup script local (fname = "frontierStartupCommands.txt"); local (f = file.folderFromPath (Frontier.getProgramPath ()) + fname); if file.exists (f) { try { evaluate (string (file.readWholeFile (f)))} else { log.add ("Error running " + fname + ": \"" + tryError + "\"", "startupError", flwptext:true)}}}; bundle { // tcp based services webserver.init (); // needs to load first betty.init (); // needs to load second soap.init ()}; bundle { // people based services people.init (); // needs to load first custody.init (); webEditServer.init ()}; bundle { //open all the databases that have openOnStartup true Çadded 12/16/98; 6:23:16 PM by DW if defined (user.databases) { if flOpenDatabases { local (i, flmsg = false); for i = 1 to sizeof (user.databases) { if typeOf (user.databases[i]) == tableType { //06/08/01 JES: avert item #1 errors with user.databases [i] { local (flopened = false); try { if openOnStartup { msg (this + ": Opening " + file.fileFromPath (f)); flmsg = true; fileMenu.open (f, hidden:true); flopened = true}} else { log.add ("Startup error opening guest database " + nameof (user.databases [i]) + ": \"" + tryError + "\"", "startupError", flwptext:true)}; if flopened { if defined (runStartupScript) { if runStartupScript { //PBS 10/7/99: check the value of runStartupScript: only run the script if the boolean is true local (adrscript = @[filespec (f)].["#startup"]); if defined (adrscript^) { try { adrscript^ ()} else { log.add ("Error running #startup script in guest database " + nameof (user.databases [i]) + ": \"" + tryError + "\"", "startupError", flwptext:true)}}}}}}}}; if flmsg { msg ("")}}}}; try { //04/28/2001 JES: prevent startup from failing if Tool installation fails. Frontier.tools.startup ()}; scheduler.init (); html.init (); bundle { // webBrowser webBrowser.init (); if system.environment.isMac { try {new (tableType, @user.odbEditors.data.openFiles)}}; //Empty out the list of externally-edited files. if system.environment.isWindows { user.webBrowser.winDefaultBrowserApp = file.findApplication ("htm")}}; bundle { // first root run, phase 2 of 3 if flFirstRootRun { bundle { // set up websites table and related with websites.["#ftpSite"] { folder = file.folderFromPath (Frontier.getProgramPath ()) + "Websites" + file.getPathChar (); Çfile.sureFolder (folder) url = file.fileToURL (folder); isLocal = true}; user.html.sites.default = websites.["#ftpSite"]}; bundle { // personalize this copy of Frontier, configure network settings, and complete the installation local (flWebBasedInstall = true); if flWebBasedInstall { Ç11/29/04; 11:17:45 AM by TAC - the following seems like it should be done as part of mainRepsonder startup, init. IIRC, members.root is a feature of mainResponder bundle { //create the Admin membership group if needed local (adrRoot = @[system.temp.mainResponder.membersRootFile]); local (adrGroup = @adrRoot^.admin); if not defined (adrGroup^) { new (tableType, adrGroup)}; if not defined (adrGroup^.callbacks) { new (tableType, @adrGroup^.callbacks)}; if not defined (adrGroup^.cookieDomain) { adrGroup^.cookieDomain = ""}; if not defined (adrGroup^.cookieExpires) { adrGroup^.cookieExpires = "Mon, 01 Apr 2030 07:00:00 GMT"}; if not defined (adrGroup^.cookieName) { adrGroup^.cookieName = "Admin"}; if not defined (adrGroup^.mailReturnAddress) { adrGroup^.mailReturnAddress = user.prefs.mailAddress}; if not defined (adrGroup^.mailSubject) { adrGroup^.mailSubject = "Admin"}; if not defined (adrGroup^.mailTemplate) { wp.newTextObject ("", @adrGroup^.mailTemplate)}; if not defined (adrGroup^.openToPublic) { adrGroup^.openToPublic = false}; if not defined (adrGroup^.users) { new (tableType, @adrGroup^.users)}}; bundle { // prep for web based install via mainResponder admin website, disabled until mR can be rewritten from the perspective of the open source release local (portString = ""); if user.inetd.config.http2.port != 80 { portString = ":" + user.inetd.config.http2.port}; if not defined (system.temp.Frontier.setupFrontier) { new (tableType, @system.temp.Frontier.setupFrontier)}; system.temp.Frontier.setupFrontier.flAllowLocalAccessToSetupPage = true; local (setupUrl = "http://127.0.0.1" + portString + "/setupFrontier"); if not defined (system.temp.installer) { new (tableType, @system.temp.installer)}; system.temp.installer.urlToOpen = setupUrl}} else { on infoDialog () { //prompt the user for name, org and initials on kernelCall (adrName, adrInitials, adrOrg, adrEmail) { kernel (dialog.getUserInfo)}; local (name, initials, organization, email); case sys.os () { "Win95"; "WinNT" { if not (kernelCall (@name, @initials, @organization, @email)) { return (false)}; if initials == "" { dialog.alert ("You must specify your initials."); infoDialog ()}; user.prefs.name = name; user.prefs.initials = initials; user.prefs.organization = organization; user.prefs.mailAddress = email}; "MacOS" { bundle { //initialize user.prefs.name etc using info from Internet Config try { name = ic.geticpreference (ic.eventinfo.realName)}; try { organization = ic.geticpreference (ic.eventinfo.organization)}; try { email = ic.geticpreferece (ic.eventinfo.emailAddress)}; user.prefs.name = name; user.prefs.organization = organization; if name != "" { local (i); user.prefs.initials = name [1]; for i = 3 to sizeof (name) { if name [i] == ' ' { user.prefs.initials = user.prefs.initials + name [i+1]}}}}; card.run (@system.cards.userInfoDialog)}}; return (true)}; infoDialog ()}}; //AR 09/27/04 : personalize install ÇrootUpdates.getCurrent ("Frontier") // 11/29/04; 6:57:54 PM by TAC - if we get a root update then we'll need to use rootUpdates.update bundle { // about window local (w); window.about (); w = window.frontMost (); window.zoom (w); menus.scripts.styleCommand ("medium"); window.setPosition (w, 25, 75); };Çwindow.close (s) bundle { // license edit (@system.startup.license); // 12/4/04; 9:26:35 PM by TAC - i rather do this near the beginning of phase 1 firstRootRun but had a problem with this window and setting up the quick script window wp.setSelect (0, 0)}}}; system.callbacks.startup (); //call user's startup scripts bundle { // build menu bar system.menus.buildMenuBar (); system.menus.buildSuitesSubmenu ()}; //5.0 Frontier.enableAgents (flEnableAgents); if flEnableHttpServer { //6.0, daemons don't start up until all the startup code has run new (tableType, @user.inetd.listens); inetd.start ()}; //start up all daemons with startup set true bundle { // first root run, phase 3 of 3 if flFirstRootRun { if defined (system.temp.installer.urlToOpen) { Çwindow.update ("About Frontier") webBrowser.openUrl (system.temp.installer.urlToOpen); webBrowser.bringToFront ()}; user.prefs.firstRootRun = false}}; system.temp.Frontier.startingUp = false; //signal to all who care, let the hits begin! msg (""); fileMenu.save (); Ç Çbundle //license agreement Çlocal (editLicense = false) Çif sys.os () == "MacOS" Çon itemhit (itemnumber) Çcase (itemnumber) Ç1 Çyes ÇeditLicense = true Çreturn (false) Çstop processing the dialog Ç2 Çno Çreturn (false) Çstop processing the dialog Çreturn (true) Çkeep processing the dialog Çdialog.run (517, 1, @itemhit) Çelse Çif dialog.yesNo ("Frontier is licensed software. Do you want to read the license agreement now?") ÇeditLicense = true Çif editLicense Çbundle //get root update ÇproxyInit () Çif user.prefs.serialNumber != "" and not (string.lower (user.prefs.serialNumber) contains "trial") ÇrootUpdates.init () \ No newline at end of file |
|
From: creedon <icr...@us...> - 2005-06-16 02:03:32
|
Update of /cvsroot/frontierkernel/odbs/frontierRoot/system/menus/scripts In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21658 Modified Files: windowFormatter Log Message: now calls Frontier.setupUserPrefsFonts Index: windowFormatter =================================================================== RCS file: /cvsroot/frontierkernel/odbs/frontierRoot/system/menus/scripts/windowFormatter,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** windowFormatter 26 Mar 2005 19:41:53 -0000 1.1.1.1 --- windowFormatter 16 Jun 2005 02:03:16 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:scpt:system.menus.scripts.windowFormatter ! on windowFormatter (adrWindow) { local (oldtarget = target.get ()); bundle { //set up user.prefs.fonts -- borrowed from userland.firstRootRun local (defaultfont, defaultsize); case sys.os () { "MacOS" { defaultfont = "Geneva"; defaultsize = 12}; "WinNT"; "Win95" { defaultfont = "Arial"; defaultsize = 10}}; if not defined (user.prefs.fonts.outlineFont) { user.prefs.fonts.outlineFont = defaultfont}; if not defined (user.prefs.fonts.outlineFontSize) { user.prefs.fonts.outlineFontSize = defaultsize}; if not defined (user.prefs.fonts.tableFont) { user.prefs.fonts.tableFont = defaultfont}; if not defined (user.prefs.fonts.tableFontSize) { user.prefs.fonts.tableFontSize = defaultsize}; if not defined (user.prefs.fonts.wptextFont) { user.prefs.fonts.wptextFont = defaultfont}; if not defined (user.prefs.fonts.wptextFontSize) { user.prefs.fonts.wptextFontSize = defaultsize}; if not defined (user.prefs.fonts.scriptFont) { user.prefs.fonts.scriptFont = defaultfont}; if not defined (user.prefs.fonts.scriptFontSize) { user.prefs.fonts.scriptFontSize = defaultsize}; if not defined (user.prefs.fonts.menuBarFont) { case sys.os () { "Win95"; "WinNT" { user.prefs.fonts.menuBarFont = defaultfont}; "MacOS" { ÇChicago with System 7, Charcoal with OS 8. if sys.osVersion () beginsWith "8" { user.prefs.fonts.menuBarFont = "Charcoal"} else { user.prefs.fonts.menuBarFont = "Chicago"}}}}; if not defined (user.prefs.fonts.menuBarFontSize) { user.prefs.fonts.menuBarFontSize = defaultsize}}; on doformat (w) { local (height, width, t, l); msg (w); try { window.open (w); target.set (w); on formatoutline (font, fontsize) { editmenu.setfont (font); editmenu.setfontsize (fontsize); op.firstsummit (); op.fullexpand (); window.zoom (w); op.fullcollapse (); op.expand (1); if typeof (w^) == scripttype { Çmake glue scripts look more reasonable if op.countSummits () == 1 { op.go (right, 1)}}; while true { op.expand (1); if not op.go (down, 1) { break}}; op.firstsummit ()}; case typeof (w^) { outlinetype { formatoutline (user.prefs.fonts.outlineFont, user.prefs.fonts.outlineFontSize)}; scripttype { formatoutline (user.prefs.fonts.scriptFont, user.prefs.fonts.scriptFontSize); script.uncompile (w)}; menubartype { formatoutline (user.prefs.fonts.menuBarFont, user.prefs.fonts.menuBarFontSize)}; tabletype { table.go (up, infinity); editmenu.setfont (user.prefs.fonts.tableFont); editmenu.setfontsize (user.prefs.fonts.tableFontSize); window.zoom (w)}; wptexttype { wp.setSelect (0, 0)}}; window.scroll (down, infinity); Çwindow.getPosition (w, @t, @l) bundle { Çcenter the window local (maxheight = 420, maxwidth = 500); window.getSize (w, @width, @height); if height > maxheight { height = maxheight}; if width > maxwidth { width = maxwidth}; window.setSize (w, width, height); l = (maxwidth - width) / 2; t = (maxheight - height) / 2; if t < 50 { t = 50}; if l < 20 { l = 50}; window.setPosition (w, l, t)}; window.update (w); if window.getFile (w) == nil { close (w)}; target.clear ()}; sys.systemTask (); return (true)}; on visit (adr) { if timecreated (adr) != 0 { Çthe object is displayed in its own window doformat (adr)}}; case typeof (adrWindow^) { tabletype { table.visit (adrWindow, @visit)}} else { doformat (adrWindow)}; target.set (oldtarget); filemenu.save ()} \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:scpt:system.menus.scripts.windowFormatter ! on windowFormatter (adrWindow) { ÇChanges Ç6/15/05; 6:49:46 PM by TAC Çreplaced set up user.prefs.fonts bundle with call to script local (oldtarget = target.get ()); Frontier.setupUserPrefsFonts (); // 6/15/05; 6:49:46 PM by TAC on doformat (w) { local (height, width, t, l); msg (w); try { window.open (w); target.set (w); on formatoutline (font, fontsize) { editmenu.setfont (font); editmenu.setfontsize (fontsize); op.firstsummit (); op.fullexpand (); window.zoom (w); op.fullcollapse (); op.expand (1); if typeof (w^) == scripttype { Çmake glue scripts look more reasonable if op.countSummits () == 1 { op.go (right, 1)}}; while true { op.expand (1); if not op.go (down, 1) { break}}; op.firstsummit ()}; case typeof (w^) { outlinetype { formatoutline (user.prefs.fonts.outlineFont, user.prefs.fonts.outlineFontSize)}; scripttype { formatoutline (user.prefs.fonts.scriptFont, user.prefs.fonts.scriptFontSize); script.uncompile (w)}; menubartype { formatoutline (user.prefs.fonts.menuBarFont, user.prefs.fonts.menuBarFontSize)}; tabletype { table.go (up, infinity); editmenu.setfont (user.prefs.fonts.tableFont); editmenu.setfontsize (user.prefs.fonts.tableFontSize); window.zoom (w)}; wptexttype { wp.setSelect (0, 0)}}; window.scroll (down, infinity); Çwindow.getPosition (w, @t, @l) bundle { Çcenter the window local (maxheight = 420, maxwidth = 500); window.getSize (w, @width, @height); if height > maxheight { height = maxheight}; if width > maxwidth { width = maxwidth}; window.setSize (w, width, height); l = (maxwidth - width) / 2; t = (maxheight - height) / 2; if t < 50 { t = 50}; if l < 20 { l = 50}; window.setPosition (w, l, t)}; window.update (w); if window.getFile (w) == nil { close (w)}; target.clear ()}; sys.systemTask (); return (true)}; on visit (adr) { if timecreated (adr) != 0 { Çthe object is displayed in its own window doformat (adr)}}; case typeof (adrWindow^) { tabletype { table.visit (adrWindow, @visit)}} else { doformat (adrWindow)}; target.set (oldtarget); filemenu.save ()} \ No newline at end of file |
|
From: creedon <icr...@us...> - 2005-06-16 02:00:59
|
Update of /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/Frontier In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20112 Added Files: setupUserPrefsFonts Log Message: several scripts contained similar code, created this script and now call it --- NEW FILE: setupUserPrefsFonts --- (This appears to be a binary file; contents omitted.) |
|
From: creedon <icr...@us...> - 2005-06-16 01:57:38
|
Update of /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/userland In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv17921 Removed Files: addServerMenu completeSetup Log Message: moved to Frontier table --- addServerMenu DELETED --- --- completeSetup DELETED --- |
|
From: creedon <icr...@us...> - 2005-06-16 01:01:16
|
Update of /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/webserver In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23297 Modified Files: init Log Message: added port settings for Mac OS X Index: init =================================================================== RCS file: /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/webserver/init,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** init 26 Mar 2005 19:44:07 -0000 1.1.1.1 --- init 16 Jun 2005 01:01:06 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:scpt:system.verbs.builtins.webserver.init ! ÇChange Notes: Ç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. 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 not defined (user.inetd.config.http2) { user.inetd.config.http2 = webserver.data.inetd.config.http2}}; 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.responders) { user.webserver.responders = webserver.data.responders}; 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}; if not defined (user.webserver.prefs.mimeTypes) { user.webserver.prefs.mimeTypes = webserver.data.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 { //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 { //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 Ç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. 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 not defined (user.inetd.config.http2) { user.inetd.config.http2 = webserver.data.inetd.config.http2}; 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}}; 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.responders) { user.webserver.responders = webserver.data.responders}; 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}; if not defined (user.webserver.prefs.mimeTypes) { user.webserver.prefs.mimeTypes = webserver.data.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 { //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 { //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-06-16 00:55:34
|
Update of /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/webserver/data/inetd/config/http2 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20370 Modified Files: timeout count Log Message: values reflect what was being set by script Index: count =================================================================== RCS file: /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/webserver/data/inetd/config/http2/count,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** count 26 Mar 2005 19:44:11 -0000 1.1.1.1 --- count 16 Jun 2005 00:55:25 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:long:system.verbs.builtins.webserver.data.inetd.config.http2.count ! 10 \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:long:system.verbs.builtins.webserver.data.inetd.config.http2.count ! 30 \ No newline at end of file Index: timeout =================================================================== RCS file: /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/webserver/data/inetd/config/http2/timeout,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** timeout 26 Mar 2005 19:44:11 -0000 1.1.1.1 --- timeout 16 Jun 2005 00:55:25 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:long:system.verbs.builtins.webserver.data.inetd.config.http2.timeout ! 10 \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:long:system.verbs.builtins.webserver.data.inetd.config.http2.timeout ! 30 \ No newline at end of file |
|
From: creedon <icr...@us...> - 2005-06-16 00:55:29
|
Update of /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/webserver/data/inetd/config/http In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20336 Modified Files: timeout count Log Message: values reflect what was being set by script Index: count =================================================================== RCS file: /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/webserver/data/inetd/config/http/count,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** count 26 Mar 2005 19:44:10 -0000 1.1.1.1 --- count 16 Jun 2005 00:55:20 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:long:system.verbs.builtins.webserver.data.inetd.config.http.count ! 10 \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:long:system.verbs.builtins.webserver.data.inetd.config.http.count ! 30 \ No newline at end of file Index: timeout =================================================================== RCS file: /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/webserver/data/inetd/config/http/timeout,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** timeout 26 Mar 2005 19:44:11 -0000 1.1.1.1 --- timeout 16 Jun 2005 00:55:20 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:long:system.verbs.builtins.webserver.data.inetd.config.http.timeout ! 10 \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:long:system.verbs.builtins.webserver.data.inetd.config.http.timeout ! 30 \ No newline at end of file |
|
From: creedon <icr...@us...> - 2005-06-15 23:36:39
|
Update of /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/adminSite/macros In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13063 Modified Files: statusCenter Log Message: minor tweaks to work with open source release Index: statusCenter =================================================================== RCS file: /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/adminSite/macros/statusCenter,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** statusCenter 26 Mar 2005 21:45:14 -0000 1.1.1.1 --- statusCenter 15 Jun 2005 23:36:31 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:scpt:mainResponder.adminSite.macros.statusCenter ! on statusCenter () { ÇChanges ÇThu, Jul 15, 2004 at 5:00:47 PM by JS ÇUpdated trial version notice. Ç5/19/04; 6:31:44 PM by JES ÇAdded support for control panel add-ins. They appear below Tools. Ç6/7/02; 2:57:43 PM by JES ÇCreated. local (pta = html.getPageTableAddress ()); local (htmltext = "", indentlevel = 0); on add (s) { htmltext = htmltext + (string.filledString ("\t", indentlevel) + s + "\r\n");}; on addSubItem (s) { add ("<div class=\"small\" style=\"padding-left: 5px; padding-bottom: 5px;\">"); indentlevel++; add (s); add ("</div>"); indentlevel--}; ÇNotes -- to do? ÇAdd "web server" and "xml-rpc/soap" sections? ÇSupport center? (probably not yet) bundle { //trial status if defined (userland.trialVersion.flTrialVersion) { if userland.trialVersion.flTrialVersion { local (storeurl = mainResponder.adminSite.urls.store); local (ctdays = 60 - ((number (clock.now ()) - number (userland.trialVersion.whenInstalled)) / (24 * 60 * 60)) ); local (serialNumberUrl = "http://127.0.0.1:" + user.inetd.config.http2.port + mainResponder.adminSite.urls.serialNumber); add ("<div class=\"small\" style=\"padding-bottom: 5px;\"><b><a href=\"" + storeUrl + "\">Trial version</a></b></div>"); addSubItem (ctdays + " days remaining. Click <a href=\"" + serialNumberUrl + "\">here</a> to enter your serial number. A license costs $1,099, and an academic license costs $499. We accept all major credit cards. Why delay? <i>Get yours today!</i>")}}}; bundle { //server status on tooltip (s) { return ("title=\"Click this link for a detailed readout of " + s + " on this server.\"")}; bundle { //header-link add ("<div class=\"small\" style=\"padding-bottom: 5px;\"><b><a href=\"" + mainResponder.adminSite.urls.readouts + "\">Server Status</a></b></div>")}; bundle { //up-since, hits local (uphours = (number (clock.now ()) - number (user.webserver.stats.upsince)) / 3600); addSubItem ("Up for " + uphours + " hours; " + string.addCommas (user.webserver.stats.hits) + " total <a href=\"" + mainResponder.adminSite.urls.http + "\" " + tooltip ("hits") + ">hits</a>; " + user.webserver.stats.maxConnections + " max connections.")}; bundle { //RAM usage local (s); if defined (system.environment.isCarbon) and system.environment.isCarbon { //the way RAM works on MacOS X is totally different local (programName = file.fileFromPath (frontier.getProgramPath ())); programName = string.replaceAll (programName, "ª", ""); local (psout = sys.unixShellCommand ("ps -auxww | grep \"" + programName + "\"") ); while psout contains " " { psout = string.replaceAll (psout, " ", " ")}; local (memUsage = double (string.nthField (psout, " ", 5)) * 1024); local (resident = double (string.nthField (psout, " ", 6)) * 1024); s = "Total memory usage: " + string.gigabyteString (memUsage) + "; Resident: " + string.gigabyteString (resident) + "."} else { //original Windows and Mac Classic behavior s = "Available RAM: " + string.gigabytestring (memavail ()) + "; "; s = s + "Smallest: " + string.megabytestring (user.webserver.stats.minMemAvail) + "; "; s = s + "Largest: " + string.megabytestring (user.webserver.stats.maxMemAvail) + "."}; addSubItem (s)}; bundle { //databases local (totalSizeDouble = double (file.size (Frontier.getFilePath ()))); local (adr); for adr in @system.compiler.files { totalSizeDouble = totalSizeDouble + file.size (nameOf (adr^))}; addSubItem ((sizeOf (system.compiler.files) + 1) + " open <a href=\"" + mainResponder.adminSite.urls.databases + "\" " + tooltip ("open databases") + ">databases</a>, total size " + string.gigabyteString (totalSizeDouble) + ".")}; bundle { //Frontier disk usage local (nomad = Frontier.pathString); local (pc = file.getPathChar ()); while string.countFields (nomad, pc) > 1 { nomad = file.folderFromPath (nomad)}; local (homeVolSize = file.volumeSizeDouble (nomad)); local (homeVolFree = file.freeSpaceOnVolumeDouble (nomad)); local (percentFree = (number (homeVolFree / homeVolSize * 1000)) / 10.0); addSubItem (string.gigabyteString (homeVolFree) + " of " + string.gigaByteString (homeVolSize) + " available on <a href=\"" + mainResponder.adminSite.urls.disk + "\" " + tooltip ("disk status") + ">disk</a>. (" + percentFree + "%)")}}; bundle { //tools status local (adr, cttools = 0); for adr in @user.tools.databases { try { if adr^.flInstalled { local (adrtool = @[adr^.path]); if defined (adrtool^) { //is the database opened? local (toolname = Frontier.tools.cleanToolName (file.fileFromPath (adr^.path))); local (adrsuite = @adrtool^.[toolname + "Suite"]); if defined (adrsuite^) { //tools aren't required to have a suite sub-table if defined (adrsuite^.statusCenterMessage) { local (displayname = toolname + " Tool"); local (adrinfo = @adrtool^.[toolname + "Info"]); bundle { //get displayname if defined (adrinfo^) { if defined (adrinfo^.name) { if sizeOf (adrinfo^.name) > 0 { if adrinfo^.name != toolname { displayname = adrinfo^.name}}}}}; local (s); s = adrsuite^.statusCenterMessage (); local (toollink = displayname); local (host = pta^.host); bundle { //set host host = pta^.host; if host contains ":" { host = string.nthField (host, ":", 1)}; local (adrlisten); if defined (adrinfo^.localUrl) { adrlisten = @user.inetd.config.http} else { if defined (user.inetd.config.http2) { adrlisten = @user.inetd.config.http2}}; local (port = adrlisten^.port); if defined (adrlisten^.apparentPort) { port = adrlisten^.apparentPort}; if port != 80 { host = host + ":" + port}}; if defined (adrinfo^) and defined (adrinfo^.localUrl) { if adrinfo^.localUrl beginsWith "http://" { toollink = html.getLink (toollink, adrinfo^.localUrl)} else { local (url = adrinfo^.localUrl); if not (url beginsWith "/") { url = "/" + url}; toollink = html.getLink (toollink, "http://" + host + adrinfo^.localUrl)}} else { //default link to the Tool's website if defined (adrtool^.[toolname + "Website"]) { toollink = html.getLink (toollink, "http://" + host + "/" + toolname + "/")}}; add ("<table cellpadding=\"0\" cellspacing=\"0\" border=\"0\"><tr><td class=\"small\" style=\"padding-bottom:5px;\"><b>" + toollink + "</b><br />" + s + "</td></tr></table>"); cttools++}}}}}}}; bundle { //addins if defined (config.mainResponder.controlPanel.wizards) { local (adr); for adr in @config.mainResponder.controlPanel.wizards { local (addinlink); addinlink = html.getLink (nameOf (adr^) + " add-in", "addIns" + "?command=" + nameOf (adr^)); add ("<table cellpadding=\"0\" cellspacing=\"0\" border=\"0\"><tr><td class=\"small\" style=\"padding-bottom:5px;\"><b>" + addinlink + "</b></td></tr></table>")}}}; bundle { //version info local (osname = system.environment.osFullNameForDisplay, osversion); if system.environment.isMac { if defined (system.environment.isCarbon) and system.environment.isCarbon { osname = "MacOS X"; bundle { //set osversion ÇJES 8/4/02: MacOS X returns a version string in decimal, but the visual representation is actually the hexadecimal version -- we get something like 16.1.5, but that really should be displayed as 10.1.5. 0x10 == 16. Strange, but true... local (firstpart = string.nthField (system.environment.osVersionString, ".", 1)); osversion = string.delete (system.environment.osVersionString, 1, sizeOf (firstpart)); osversion = number (string.nthField (string.hex (firstpart), "x", 2)) + osversion}} else { osname = "MacOS"; osversion = system.environment.osVersionString}} else { //windows -- add service pack name osversion = system.environment.osVersionString; if defined (system.environment.winServicePackNumber) { osversion = osversion + " " + string.trimWhiteSpace (system.environment.winServicePackNumber)}}; add ("<div class=\"small\">Frontier v" + Frontier.version () + "<br />" + osname + " v" + osversion + ".</div>")}; return (htmltext)}; Çbundle //test code ÇstatusCenter () \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:scpt:mainResponder.adminSite.macros.statusCenter ! on statusCenter () { ÇChanges Ç1/24/05; 10:49:20 AM by TAC Çdisabled trial version check for open source release Çupdated testing bundle ÇThu, Jul 15, 2004 at 5:00:47 PM by JS ÇUpdated trial version notice. Ç5/19/04; 6:31:44 PM by JES ÇAdded support for control panel add-ins. They appear below Tools. Ç6/7/02; 2:57:43 PM by JES ÇCreated. local (pta = html.getPageTableAddress ()); local (htmltext = "", indentlevel = 0); on add (s) { htmltext = htmltext + (string.filledString ("\t", indentlevel) + s + "\r\n");}; on addSubItem (s) { add ("<div class=\"small\" style=\"padding-left: 5px; padding-bottom: 5px;\">"); indentlevel++; add (s); add ("</div>"); indentlevel--}; ÇNotes -- to do? ÇAdd "web server" and "xml-rpc/soap" sections? ÇSupport center? (probably not yet) Çbundle // 1/24/05; 10:48:53 AM by TAC - disabled for open source release, eventually remove? Çif defined (userland.trialVersion.flTrialVersion) Çif userland.trialVersion.flTrialVersion Çlocal (storeurl = mainResponder.adminSite.urls.store) Çlocal (ctdays = 60 - ((number (clock.now ()) - number (userland.trialVersion.whenInstalled)) / (24 * 60 * 60)) ) Çlocal (serialNumberUrl = "http://127.0.0.1:" + user.inetd.config.http2.port + mainResponder.adminSite.urls.serialNumber) Çadd ("<div class=\"small\" style=\"padding-bottom: 5px;\"><b><a href=\"" + storeUrl + "\">Trial version</a></b></div>") ÇaddSubItem (ctdays + " days remaining. Click <a href=\"" + serialNumberUrl + "\">here</a> to enter your serial number. A license costs $1,099, and an academic license costs $499. We accept all major credit cards. Why delay? <i>Get yours today!</i>") bundle { //server status on tooltip (s) { return ("title=\"Click this link for a detailed readout of " + s + " on this server.\"")}; bundle { //header-link add ("<div class=\"small\" style=\"padding-bottom: 5px;\"><b><a href=\"" + mainResponder.adminSite.urls.readouts + "\">Server Status</a></b></div>")}; bundle { //up-since, hits local (uphours = (number (clock.now ()) - number (user.webserver.stats.upsince)) / 3600); addSubItem ("Up for " + uphours + " hours; " + string.addCommas (user.webserver.stats.hits) + " total <a href=\"" + mainResponder.adminSite.urls.http + "\" " + tooltip ("hits") + ">hits</a>; " + user.webserver.stats.maxConnections + " max connections.")}; bundle { //RAM usage local (s); if defined (system.environment.isCarbon) and system.environment.isCarbon { //the way RAM works on MacOS X is totally different local (programName = file.fileFromPath (frontier.getProgramPath ())); programName = string.replaceAll (programName, "ª", ""); local (psout = sys.unixShellCommand ("ps -auxww | grep \"" + programName + "\"") ); while psout contains " " { psout = string.replaceAll (psout, " ", " ")}; local (memUsage = double (string.nthField (psout, " ", 5)) * 1024); local (resident = double (string.nthField (psout, " ", 6)) * 1024); s = "Total memory usage: " + string.gigabyteString (memUsage) + "; Resident: " + string.gigabyteString (resident) + "."} else { //original Windows and Mac Classic behavior s = "Available RAM: " + string.gigabytestring (memavail ()) + "; "; s = s + "Smallest: " + string.megabytestring (user.webserver.stats.minMemAvail) + "; "; s = s + "Largest: " + string.megabytestring (user.webserver.stats.maxMemAvail) + "."}; addSubItem (s)}; bundle { //databases local (totalSizeDouble = double (file.size (Frontier.getFilePath ()))); local (adr); for adr in @system.compiler.files { totalSizeDouble = totalSizeDouble + file.size (nameOf (adr^))}; addSubItem ((sizeOf (system.compiler.files) + 1) + " open <a href=\"" + mainResponder.adminSite.urls.databases + "\" " + tooltip ("open databases") + ">databases</a>, total size " + string.gigabyteString (totalSizeDouble) + ".")}; bundle { //Frontier disk usage local (nomad = Frontier.pathString); local (pc = file.getPathChar ()); while string.countFields (nomad, pc) > 1 { nomad = file.folderFromPath (nomad)}; local (homeVolSize = file.volumeSizeDouble (nomad)); local (homeVolFree = file.freeSpaceOnVolumeDouble (nomad)); local (percentFree = (number (homeVolFree / homeVolSize * 1000)) / 10.0); addSubItem (string.gigabyteString (homeVolFree) + " of " + string.gigaByteString (homeVolSize) + " available on <a href=\"" + mainResponder.adminSite.urls.disk + "\" " + tooltip ("disk status") + ">disk</a>. (" + percentFree + "%)")}}; bundle { //tools status local (adr, cttools = 0); for adr in @user.tools.databases { try { if adr^.flInstalled { local (adrtool = @[adr^.path]); if defined (adrtool^) { //is the database opened? local (toolname = Frontier.tools.cleanToolName (file.fileFromPath (adr^.path))); local (adrsuite = @adrtool^.[toolname + "Suite"]); if defined (adrsuite^) { //tools aren't required to have a suite sub-table if defined (adrsuite^.statusCenterMessage) { local (displayname = toolname + " Tool"); local (adrinfo = @adrtool^.[toolname + "Info"]); bundle { //get displayname if defined (adrinfo^) { if defined (adrinfo^.name) { if sizeOf (adrinfo^.name) > 0 { if adrinfo^.name != toolname { displayname = adrinfo^.name}}}}}; local (s); s = adrsuite^.statusCenterMessage (); local (toollink = displayname); local (host = pta^.host); bundle { //set host host = pta^.host; if host contains ":" { host = string.nthField (host, ":", 1)}; local (adrlisten); if defined (adrinfo^.localUrl) { adrlisten = @user.inetd.config.http} else { if defined (user.inetd.config.http2) { adrlisten = @user.inetd.config.http2}}; local (port = adrlisten^.port); if defined (adrlisten^.apparentPort) { port = adrlisten^.apparentPort}; if port != 80 { host = host + ":" + port}}; if defined (adrinfo^) and defined (adrinfo^.localUrl) { if adrinfo^.localUrl beginsWith "http://" { toollink = html.getLink (toollink, adrinfo^.localUrl)} else { local (url = adrinfo^.localUrl); if not (url beginsWith "/") { url = "/" + url}; toollink = html.getLink (toollink, "http://" + host + adrinfo^.localUrl)}} else { //default link to the Tool's website if defined (adrtool^.[toolname + "Website"]) { toollink = html.getLink (toollink, "http://" + host + "/" + toolname + "/")}}; add ("<table cellpadding=\"0\" cellspacing=\"0\" border=\"0\"><tr><td class=\"small\" style=\"padding-bottom:5px;\"><b>" + toollink + "</b><br />" + s + "</td></tr></table>"); cttools++}}}}}}}; bundle { //addins if defined (config.mainResponder.controlPanel.wizards) { local (adr); for adr in @config.mainResponder.controlPanel.wizards { local (addinlink); addinlink = html.getLink (nameOf (adr^) + " add-in", "addIns" + "?command=" + nameOf (adr^)); add ("<table cellpadding=\"0\" cellspacing=\"0\" border=\"0\"><tr><td class=\"small\" style=\"padding-bottom:5px;\"><b>" + addinlink + "</b></td></tr></table>")}}}; bundle { //version info local (osname = system.environment.osFullNameForDisplay, osversion); if system.environment.isMac { if defined (system.environment.isCarbon) and system.environment.isCarbon { if date.versionLessThan (Frontier.version (), "10.1a1") { // 1/22/05; 12:34:08 PM by TAC osname = "MacOS X"; bundle { //set osversion ÇJES 8/4/02: MacOS X returns a version string in decimal, but the visual representation is actually the hexadecimal version -- we get something like 16.1.5, but that really should be displayed as 10.1.5. 0x10 == 16. Strange, but true... local (firstpart = string.nthField (system.environment.osVersionString, ".", 1)); osversion = string.delete (system.environment.osVersionString, 1, sizeOf (firstpart)); osversion = number (string.nthField (string.hex (firstpart), "x", 2)) + osversion}} else { osname = system.environment.osFullNameForDisplay; osversion = system.environment.osVersionString}} else { osname = "MacOS"; osversion = system.environment.osVersionString}} else { //windows -- add service pack name osversion = system.environment.osVersionString; if defined (system.environment.winServicePackNumber) { osversion = osversion + " " + string.trimWhiteSpace (system.environment.winServicePackNumber)}}; add ("<div class=\"small\">Frontier v" + Frontier.version () + "<br />" + osname + " v" + osversion + "</div>")}; // 1/22/05; 12:36:00 PM by TAC - removed period at end, easier to read return (htmltext)}; Çbundle //testing Çlocal (pagetable); new (tableType, @pagetable) Çpagetable.method = "GET" Çhtml.setPageTableAddress (@pagetable) ÇstatusCenter () Çhtml.deletePageTableAddress () \ No newline at end of file |
|
From: creedon <icr...@us...> - 2005-06-15 23:32:01
|
Update of /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/adminSite/website In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11116 Modified Files: 23pageHeader setupFrontier 23template Log Message: fixes so that adminSite can be used to complete Frontier install Index: 23pageHeader =================================================================== RCS file: /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/adminSite/website/23pageHeader,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** 23pageHeader 26 Mar 2005 21:45:16 -0000 1.1.1.1 --- 23pageHeader 15 Jun 2005 23:31:50 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:optx:mainResponder.adminSite.website.["#pageHeader"] ! <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title><%title%></title> <META HTTP-EQUIV="Expires" CONTENT="Mon, 01 Jan 1990 01:00:00 GMT"> <%metaTags ()%> <%string (prefsSuite.javaScriptSource)%> <style type="text/css"> body { margin-top: 0px; margin-left: 0px; margin-right: 0px; margin-bottom: 0px; } body, td, p { font-family: verdana, sans-serif; font-size: 12px; } h2 { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 24px; font-weight: bold } .header { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 40px; font-weight: bold } .realsmall { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 9px; } .small { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10px; } .smallAlignTop { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10px; vertical-align: top; } .adminMenuLink { font-weight: bold } .adminMenuLinkFontCurrent { font-weight: bold } </style> </head> <%bodyTag ()%> \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:optx:mainResponder.adminSite.website.["#pageHeader"] ! <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title><%title%></title> <META HTTP-EQUIV="Expires" CONTENT="Mon, 01 Jan 1990 01:00:00 GMT"> <%metaTags ()%> <%string (prefsSuite.javaScriptSource)%> <style type="text/css"> body { margin:0px 0px 10px 0px; background: #FFFFFF; } A { color: #336666; font-family: verdana, arial, sans-serif; font-size:10px; text-decoration: none; font-weight:bold; } A:link { color: #336666; text-decoration: none; } A:visited { color: #669999; text-decoration: none; } A:active { color: #FFFF00; } A:hover { color: #000000; } #banner { font-family:verdana, arial, sans-serif; color:#FFF; font-size:20px; font-weight:normal; border-bottom:1px dotted #000000; border-top:3px solid #003333; background:#336666; padding:15px; text-transform:uppercase; letter-spacing: .2em; } .description { font-family:verdana, arial, sans-serif; color:#99CCCC; font-size:12px; font-weight:bold; text-transform:none; } #content { background:#fff; margin-right:15px; padding-bottom:20px; } #links { background:#fff; padding-right:15px; } .blog { padding-left:15px; padding-top:15px; padding-right:15px; } .blogbody { font-family:georgia, verdana, arial, sans-serif; color:#333; font-size:13px; font-weight:normal; background:#FFF; line-height:15px; padding-left:10px; padding-right:10px; padding-top:10px; } .title { font-family: verdana, arial; font-size: 15px; color: #003333; text-transform: uppercase; font-weight:bold; } .footer { font-family:georgia, verdana, arial, sans-serif; color:#333; font-size:11px; font-weight:normal; line-height:11px; padding-left:10px; padding-right:10px; padding-top:10px; border-top:1px dotted #999; text-align:center; } #menu { margin-bottom:15px; background:#FFF; } .date { font-family:verdana, arial, sans-serif; color:#666; font-size:9px; font-weight:bold; text-align:center; background:#EEE; line-height:14px; padding:2px; margin-top:10px; text-transform:uppercase; letter-spacing: .2em; } .posted { font-family:verdana, arial, sans-serif; font-size: 11px; color: #003366; margin-bottom:15px; } .side { font-family:verdana, arial, sans-serif; color:#333; font-size:11px; font-weight:normal; background:#FFF; line-height:14px; padding:2px; } .sidetitle { font-family:verdana, arial, sans-serif; color:#666; font-size:9px; font-weight:bold; background:#EEE; line-height:14px; padding:2px; margin-top:10px; text-align:center; text-transform:uppercase; letter-spacing: .2em; } .dlHeader{ font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10px; padding:4px; text-transform:uppercase; letter-spacing: .2em; } .dlCountReadsTitle, .dlSubjectTitle, .dlCountMessagesTitle, .dlPostedTitle, .dlMessageLinkTitle, .dlAuthorTitle { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10px; color:#333; padding:4px; } .dlSubject, .dlCountMessages, .dlPosted, .dlCountReads, .dlAuthor, .dlMessageLink { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10px; padding:4px; } .discussHeader { font-family:georgia, verdana, arial, sans-serif; color:#333; font-size:11px; font-weight:normal; line-height:11px; } .discussResponceList { font-family:georgia, verdana, arial, sans-serif; color:#333; font-size:11px; font-weight:normal; line-height:11px; padding-left:10px; padding-right:10px; padding-top:10px; margin-top:10px; border-top:1px dotted #999; } .hCalendarMonthYearRow, .dCalendarMonthYearRow { font-family:verdana, arial, sans-serif; color:#003366; font-size:10px; font-weight:bold; line-height:14px; padding:2px; } .hCalendarDayNameRow, .dCalendarDayNameRow { color:#666; font-family:verdana, arial, sans-serif; font-size:10px; font-weight:bold; line-height:14px; padding:2px; } .hCalendarDayRow, .dCalendarDayRow { color:#666; font-family:verdana, arial, sans-serif; font-size:10px; font-weight:normal; line-height:14px; padding:2px; } .hCalendarDayLinked, .dCalendarDayLinked { color:#666; background-color: #EEEEEE; font-family:verdana, arial, sans-serif; font-size:10px; font-weight:normal; line-height:14px; padding:2px; } .hCalendarDayCurrent, .dCalendarDayCurrent { color: #FFFFFF; background-color: #DCDCDC; font-family:verdana, arial, sans-serif; font-size:10px; font-weight:normal; line-height:14px; padding:2px; } td { font-family:georgia, verdana, arial, sans-serif; color:#333; font-size:13px; font-weight:normal; line-height:15px; } .adminMenuLink:hover { border-bottom: solid; } .adminMenuLinkFont { } .adminMenuLinkFontCurrent { border-bottom: solid; } </style> </head> <%bodyTag ()%> \ No newline at end of file Index: 23template =================================================================== RCS file: /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/adminSite/website/23template,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** 23template 26 Mar 2005 21:45:17 -0000 1.1.1.1 --- 23template 15 Jun 2005 23:31:51 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:optx:mainResponder.adminSite.website.["#template"] ! <body bgcolor="#FFFFFF" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" style="background-image: url('/mainResponderResources/adminSite/headerBackground'); background-repeat: no-repeat;"> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td colspan="2"> <table width="100%" cellpadding="0" border="0" cellspacing="0"><tr> <td width="1"><img src="/mainResponderResources/adminSite/shim" width="1" height="36"></td> <td align="center"><%menu ("white")%></td> </tr></table> </td> </tr> <tr> <td width="175"><img src="/mainResponderResources/adminSite/shim" width="175" height="45" border="0" usemap="#header"><map name="header"><area shape="rect" href="http://frontier.userland.com/" coords="13, 7, 166, 29" /></map></td> <td align="right"><a href="http://www.userland.com/"><img src="/mainResponderResources/adminSite/userlandLogo" width="140" height="20" border="0"></a></td> </tr> </table> <div align="center"> <table width="85%" border="0" cellspacing="0" cellpadding="4"> <tr> <td valign="top"> <table border="0" width="100%" cellspacing="12" cellpadding="0"> <tr> <td> <p><font size="+1"><b><%viewPageTitle ()%></b></font></p> {bodytext} </td> </tr> </table> </td> </tr> </table> </div> <br /><br /><br /> <hr width="95%" size="1"> <br /> <div align="center"> © Copyright 2001-<%date.year ()%> <a href="http://www.userland.com/">UserLand Software, Inc</a>.<br /> <font size="-1"><i>Last update: <%timeModified (adrobject)%>.</i></font><br /> </div> </body> </html> \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:optx:mainResponder.adminSite.website.["#template"] ! <body> <div id="banner"> <a href="" style="font-family:verdana, arial, sans-serif;color:#FFF;font-size:20px;font-weight:normal;text-transform:uppercase;letter-spacing: .2em;"> Frontier </a> <br/> <span class="description"> High performance Web content management, object database, system-level and Internet scripting environment, including source code editing and debugging. </span> </div> <div id="content"> <div class="blogbody"> <%menu ("black")%> <br/> <p class="title"> <%viewPageTitle ()%> </p> {bodytext} <div class="footer"> <p> This Page was last update: <%timeModified (adrobject)%> <br/> Page template based on <a href="http://www.bryanbell.com/">Bryan Bell's</a> <a href="http://www.bryanbell.com/2002/07/23#a63">Moveable Manila: green</a>. <br/> © Copyright <%date.year ()%> </p> <p> <a href="http://jigsaw.w3.org/css-validator/"> <img style="border:0;width:88px;height:31px" src="http://jigsaw.w3.org/css-validator/images/vcss" alt="Valid CSS!"> </a> </p> </div> </div> </div> </body> </html> \ No newline at end of file Index: setupFrontier =================================================================== RCS file: /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/adminSite/website/setupFrontier,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** setupFrontier 26 Mar 2005 21:45:19 -0000 1.1.1.1 --- setupFrontier 15 Jun 2005 23:31:51 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:scpt:mainResponder.adminSite.website.setupFrontier ! on setupFrontier () { ÇChanges Ç5/18/04; 11:37:08 PM by JES ÇOn OS X, handle options for not enabling port forwarding, and setting the actual port. Ç4/13/04; 1:35:37 AM by JES ÇGive a confirmation page after submitting forms to let the user know what's about to happen when they log in. Ç3/12/04; 4:25:55 PM by JES ÇSave all open databases after processing a POST. Prevents possible configuration errors if Frontier is exitted before databases are saved after initial setup. Ç8/21/02; 7:17:33 PM by JES ÇFixed a bug which would prevent the setup from succeeding on Windows and MacOS Classic. Ç4/11/02; 10:27:06 PM by JES ÇCreated. Cribbed from radio.html.setupFrontier. local (flOpenAdminSite = true); //set to false to open the first Manila site instead. local (pta = html.getPageTableAddress ()); Çworkspace.pt = pta^ pta^.title = "It Worked!"; local (htmltext, indentlevel = 0); on add (s) { htmltext = htmltext + string.filledstring ("\t", indentlevel) + s + "\r"}; bundle { //set up a temp table to save messages for redirected pages if not defined (system.temp.frontier.setupFrontier) { new (tableType, @system.temp.frontier.setupFrontier)}}; local (errorMessage = "", confirmMessage = "", postedSection = "", flError = false, flConfirmPage = false, flPortForwardPage = false); if pta^.method == "POST" { Çworkspace.pt = pta^; edit (@workspace.pt) local (adrargs = @pta^.postArgs); on getInitials (s) { local (initials = ""); bundle { //strip off parentheticals if s contains "(" { s = string.nthField (s, "(", 1)}; if s contains "[" { s = string.nthField (s, "[", 1)}; if s contains "{" { s = string.nthField (s, "{", 1)}}; s = string.trimWhiteSpace (s); initials = string.upper (s[1]); local (i, ct = sizeOf (s)); if sizeOf (s) > 1 { local (flNextCharIsInitial = false); for i = 2 to ct { if flNextCharIsInitial { if string.isAlpha (s[i]) { initials = initials + string.upper (s[i])}; flNextCharIsInitial = false}; if not string.isAlpha (s[i]) { flNextCharIsInitial = true}}}; return (initials)}; on setName (name) { user.prefs.name = name; bundle { //set user.prefs.initials user.prefs.initials = getInitials (name)}}; on setEmail (email) { user.prefs.mailAddress = email}; on saveDatabases () { local (rootPath = window.getFile (@root)); on visitproc (f) { if f != rootPath { fileMenu.save (f)} else { fileMenu.saveMyRoot (@root)}; return (true)}; table.visitOpenDatabases (@visitproc); target.set (@root); fileMenu.save ()}; local (flFinishSetup = false); if defined (adrargs^.setupFrontier) { //personalization postedSection = "setupFrontier"; local (name = adrargs^.name); local (organization = adrargs^.organization); local (serverDomain = adrargs^.serverDomain); local (email = adrargs^.email); local (mailhost = adrargs^.mailHost); local (password = adrargs^.password); local (repeat = adrargs^.repeatPassword); if system.environment.isMac { //convert name, organization to Mac text name = latinToMac.convert (name); organization = latinToMac.convert (organization)}; setName (name); setEmail (email); user.prefs.organization = organization; user.prefs.mailHost = mailhost; config.manila.prefs.baseUrl = "http://" + serverDomain + "/"; bundle { //check that the password is ok, and that it matches the repeat password if sizeOf (password) < 4 { errorMessage = "Can't continue setting up Frontier because the password you supplied is not at least four characters long."; flError = true}; if not flError { if password != repeat { errorMessage = "Can't continue setting up Frontier because the password you supplied does not match the repeat password."; flError = true}}}; bundle { //set up Admin member for access to control panel bundle { //create the Admin membership group if needed local (adrRoot = @[system.temp.mainResponder.membersRootFile]); local (adrGroup = @adrRoot^.admin); if not defined (adrGroup^) { new (tableType, adrGroup)}; if not defined (adrGroup^.callbacks) { new (tableType, @adrGroup^.callbacks)}; if not defined (adrGroup^.cookieDomain) { adrGroup^.cookieDomain = ""}; if not defined (adrGroup^.cookieExpires) { adrGroup^.cookieExpires = "Mon, 01 Apr 2030 07:00:00 GMT"}; if not defined (adrGroup^.cookieName) { adrGroup^.cookieName = "Admin"}; if not defined (adrGroup^.mailReturnAddress) { adrGroup^.mailReturnAddress = user.prefs.mailAddress}; if not defined (adrGroup^.mailSubject) { adrGroup^.mailSubject = "Admin"}; if not defined (adrGroup^.mailTemplate) { wp.newTextObject ("", @adrGroup^.mailTemplate)}; if not defined (adrGroup^.openToPublic) { adrGroup^.openToPublic = false}; if not defined (adrGroup^.users) { new (tableType, @adrGroup^.users)}}; local (adrMember = mainResponder.members.getMemberTable ("Admin", user.prefs.mailAddress)); if not defined (adrMember^) { new (tableType, adrMember)}; adrMember^.password = password; if not defined (adrMember^.personalInfo) { new (tableType, @adrMember^.personalInfo)}; if not defined (adrMember^.personalInfo.name) { adrMember^.personalInfo.name = user.prefs.name}}; if not flError { //complete the setup try { //trap network errors if system.environment.isCarbon { //we need to run the port forwarding page now flPortForwardPage = true} else { //Windows and Classic don't need to deal with port forwarding local (urlParts = string.urlSplit (config.manila.prefs.baseUrl)); userland.completeSetup (urlParts[2], password); flConfirmPage = true; }}Çsystem.temp.Frontier.setupFrontier.flAllowLocalAccessToSetupPage = false //require login from now on else { //network or other error errorMessage = tryError; flError = true}}}; if defined (adrargs^.proxy) { //set proxy settings postedSection = "proxy"; try { //convert port to a number -- if not, it's an error adrargs^.port = number (adrargs^.port)} else { errorMessage = "Can't set your proxy settings because the port you entered is not valid."; adrargs^.enabled = false; flError = true}; user.webBrowser.proxy.domain = adrargs^.domain; user.webBrowser.proxy.username = adrargs^.username; user.webBrowser.proxy.password = binary (adrargs^.password); user.webBrowser.proxy.enabled = false; if not flError { user.webBrowser.proxy.port = adrargs^.port}; if defined (adrargs^.enabled) { if adrargs^.enabled { user.webBrowser.proxy.enabled = true}}; //PBS 12/31/01: *true*, not false (that was a bug) if flError { //redirect to the proxy settings section of the page mainResponder.redirect ("http://" + pta^.host + pta^.uri + "#proxy")} else { confirmMessage = "Your proxy server information has been set."; mainResponder.redirect ("http://" + pta^.host + pta^.uri)}}; if defined (adrargs^.portForward) { //set port forwarding preferences local (adminPassword = adrargs^.password); local (flRememberAdminPassword = defined (adrargs^.flRememberAdminPassword)); local (flEnablePortForwarding = defined (adrargs^.flEnablePortForwarding)); local (actualPort = number (adrargs^.port)); if actualPort != user.inetd.config.http.port { local (flRunning = inetd.isDaemonRunning (@user.inetd.config.http)); if flRunning { //stop server, set port, restart server inetd.stopOne (@user.inetd.config.http); user.inetd.config.http.port = actualPort; inetd.startOne (@user.inetd.config.http)} else { //just set port user.inetd.config.http.port = actualPort}}; if flRememberAdminPassword and flEnablePortForwarding { user.prefs.portForwardingAdminPassword = binary (adminPassword)}; local (password = mainResponder.members.getMemberTable ("Admin", user.prefs.mailAddress)^.password); local (urlparts = string.urlSplit (config.manila.prefs.baseUrl)); userland.completeSetup (urlparts[2], password, adminPassword, flRememberAdminPassword, flEnablePortForwarding); flConfirmPage = true; };Çsystem.temp.Frontier.setupFrontier.flAllowLocalAccessToSetupPage = false //require login from now on Çif defined (adrargs^.confirmSetup) //redirect to the Control Panel home page ÇmainResponder.redirect ("http://" + pta^.host + "/") bundle { //if redirecting, set messages in the temp table, and don't bother to finish rendering saveDatabases (); if defined (pta^.responderAttributes.redirectUrl) { temp.frontier.postedSection = postedSection; temp.frontier.setupFrontier.flError = flError; temp.frontier.setupFrontier.errorMessage = errorMessage; temp.frontier.setupFrontier.message = confirmMessage; return ("")} else { //no redirect -- make sure messages are cleared temp.frontier.postedSection = ""; temp.frontier.setupFrontier.flError = false; temp.frontier.setupFrontier.errorMessage = ""; temp.frontier.setupFrontier.message = ""}}}; if flConfirmPage and (not flError) { //render the confirmation page bundle { //Confirmation page pta^.title = "Congratulations!"; local (adminSiteUrl = "http://" + pta^.host + "/"); local (t); new (tableType, @t); t.adminSiteUrl = adminSiteUrl; add (mainResponder.getString ("setupFrontier.newUserConfirmMessage", @t)); bundle { //add the Continue button add ("<form method=\"GET\" action=\"" + adminSiteUrl + "\">"); add ("<input type=\"submit\" value=\"Continue\" onclick=\"document.location='" + adminSiteUrl + "'\">"); add ("</form>")}; system.temp.Frontier.setupFrontier.flAllowLocalAccessToSetupPage = false}; //require login from now on Çbundle //redirect to admin website home page Çif flOpenAdminSite //see the first line of this script above Çlocal (port, adminSiteUrl) Çport = user.inetd.config.http2.port Çif port == 80 ÇadminSiteUrl = "http://127.0.0.1/" Çelse ÇadminSiteUrl = "http://127.0.0.1:" + port + "/" ÇmainResponder.redirect (adminSiteUrl) Çelse Çlocal (myManilaServerSiteUrl = manilaSuite.getSiteUrl (@myManilaServerManilaWebsite)) ÇmainResponder.redirect (myManilaServerSiteUrl) Çreturn ("")} else { //render the welcome/setup form bundle { //change the template to the setup template, which doesn't have navigation links to the rest of the control panel table.assign (@pta^.template, "setup"); pta^.indirectTemplate = true}; if flPortForwardPage { //oops -- unix: we have to deal with port forwarding local (t); new (tableType, @t); t.adminPassword = ""; t.rememberAdminPassword = "checked"; t.enablePortForwarding = "checked"; t.actualPort = user.inetd.config.http.port; if defined (user.prefs.portForwardingAdminPassword) { t.adminPassword = string (user.prefs.portForwardingAdminPassword)}; add (mainResponder.getString ("setupFrontier.portForward", @t))} else { //the main setup form and proxy settings local (name = user.prefs.name, email = user.prefs.mailAddress, organization = user.prefs.organization, mailHost = user.prefs.mailHost); if system.environment.isMac { //convert name, organization to latin text name = latinToMac.macToLatin (name); organization = latinToMac.macToLatin (organization)}; bundle { //render the new user page local (t); new (tabletype, @t); bundle { //add personal info to replacement table t.username = name; t.useremail = email; t.userorganization = organization; t.userpassword = ""; local (urlparts = string.urlSplit (config.manila.prefs.baseUrl)); t.serverdomain = urlparts[2]; try { //try to get the admin password from the Admin membership group local (adrMember = mainResponder.members.getMemberTable ("Admin", user.prefs.mailAddress)); if defined (adrMember^) { t.userpassword = adrMember^.password}}; t.mailhost = mailHost}; bundle { //add proxy settings to replacement table with user.webBrowser.proxy { t.proxydomain = user.webBrowser.proxy.domain; t.proxyusername = user.webBrowser.proxy.username; t.proxypassword = string (user.webBrowser.proxy.password); t.proxyport = user.webBrowser.proxy.port; if user.webBrowser.proxy.enabled { t.proxyenabled = "checked"} else { t.proxyenabled = ""}}}; bundle { //add error or confirmation messages to replacement table t.proxyConfirm = ""; t.setupError = ""; t.proxyError = ""; if defined (system.temp.frontier.postedSection) { //only defined after the first POST if defined (system.temp.frontier.setupFrontier.flError) { //only defined after the first POST if temp.frontier.setupFrontier.flError { case temp.frontier.postedSection { "setupFrontier" { t.setupError = "<p><font color=\"red\">" + temp.frontier.setupFrontier.errorMessage + "</font></p>"}; "proxy" { t.proxyError = "<p><font color=\"red\">" + temp.frontier.setupFrontier.errorMessage + "</font></p>"}}} else { case temp.frontier.postedSection { "proxy" { t.proxyConfirm = "<p><font color=\"navy\">" + temp.frontier.setupFrontier.message + "</font></p>"}}}}}}; add (mainResponder.getString ("setupFrontier.main", @t))}}}; return (htmltext)}; Çbundle //testing Çlocal (pagetable); new (tableType, @pagetable) Çpagetable.method = "GET" Çhtml.setPageTableAddress (@pagetable) ÇsetupFrontier () Çhtml.deletePageTableAddress () \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:scpt:mainResponder.adminSite.website.setupFrontier ! on setupFrontier () { ÇChanges Ç6/15/05; 11:34:39 AM by TAC Çchanged config.manila.prefs.baseUrl to config.mainResponder.prefs.baseUrl Çchanged references to userland table, to Frontier table Ç5/18/04; 11:37:08 PM by JES ÇOn OS X, handle options for not enabling port forwarding, and setting the actual port. Ç4/13/04; 1:35:37 AM by JES ÇGive a confirmation page after submitting forms to let the user know what's about to happen when they log in. Ç3/12/04; 4:25:55 PM by JES ÇSave all open databases after processing a POST. Prevents possible configuration errors if Frontier is exitted before databases are saved after initial setup. Ç8/21/02; 7:17:33 PM by JES ÇFixed a bug which would prevent the setup from succeeding on Windows and MacOS Classic. Ç4/11/02; 10:27:06 PM by JES ÇCreated. Cribbed from radio.html.setupFrontier. local (flOpenAdminSite = true); //set to false to open the first Manila site instead. local (pta = html.getPageTableAddress ()); Çworkspace.pt = pta^ pta^.title = "It Worked!"; local (htmltext, indentlevel = 0); on add (s) { htmltext = htmltext + string.filledstring ("\t", indentlevel) + s + "\r"}; bundle { //set up a temp table to save messages for redirected pages if not defined (system.temp.frontier.setupFrontier) { new (tableType, @system.temp.frontier.setupFrontier)}}; local (errorMessage = "", confirmMessage = "", postedSection = "", flError = false, flConfirmPage = false, flPortForwardPage = false); if pta^.method == "POST" { Çworkspace.pt = pta^; edit (@workspace.pt) local (adrargs = @pta^.postArgs); on getInitials (s) { local (initials = ""); bundle { //strip off parentheticals if s contains "(" { s = string.nthField (s, "(", 1)}; if s contains "[" { s = string.nthField (s, "[", 1)}; if s contains "{" { s = string.nthField (s, "{", 1)}}; s = string.trimWhiteSpace (s); initials = string.upper (s[1]); local (i, ct = sizeOf (s)); if sizeOf (s) > 1 { local (flNextCharIsInitial = false); for i = 2 to ct { if flNextCharIsInitial { if string.isAlpha (s[i]) { initials = initials + string.upper (s[i])}; flNextCharIsInitial = false}; if not string.isAlpha (s[i]) { flNextCharIsInitial = true}}}; return (initials)}; on setName (name) { user.prefs.name = name; bundle { //set user.prefs.initials user.prefs.initials = getInitials (name)}}; on setEmail (email) { user.prefs.mailAddress = email}; on saveDatabases () { local (rootPath = window.getFile (@root)); on visitproc (f) { if f != rootPath { fileMenu.save (f)} else { fileMenu.saveMyRoot (@root)}; return (true)}; table.visitOpenDatabases (@visitproc); target.set (@root); fileMenu.save ()}; local (flFinishSetup = false); if defined (adrargs^.setupFrontier) { //personalization postedSection = "setupFrontier"; local (name = adrargs^.name); local (organization = adrargs^.organization); local (serverDomain = adrargs^.serverDomain); local (email = adrargs^.email); local (mailhost = adrargs^.mailHost); local (password = adrargs^.password); local (repeat = adrargs^.repeatPassword); if system.environment.isMac { //convert name, organization to Mac text name = latinToMac.convert (name); organization = latinToMac.convert (organization)}; setName (name); setEmail (email); user.prefs.organization = organization; user.prefs.mailHost = mailhost; config.mainResponder.prefs.baseUrl = "http://" + serverDomain + "/"; bundle { //check that the password is ok, and that it matches the repeat password if sizeOf (password) < 4 { errorMessage = "Can't continue setting up Frontier because the password you supplied is not at least four characters long."; flError = true}; if not flError { if password != repeat { errorMessage = "Can't continue setting up Frontier because the password you supplied does not match the repeat password."; flError = true}}}; bundle { //set up Admin member for access to control panel bundle { //create the Admin membership group if needed local (adrRoot = @[system.temp.mainResponder.membersRootFile]); local (adrGroup = @adrRoot^.admin); if not defined (adrGroup^) { new (tableType, adrGroup)}; if not defined (adrGroup^.callbacks) { new (tableType, @adrGroup^.callbacks)}; if not defined (adrGroup^.cookieDomain) { adrGroup^.cookieDomain = ""}; if not defined (adrGroup^.cookieExpires) { adrGroup^.cookieExpires = "Mon, 01 Apr 2030 07:00:00 GMT"}; if not defined (adrGroup^.cookieName) { adrGroup^.cookieName = "Admin"}; if not defined (adrGroup^.mailReturnAddress) { adrGroup^.mailReturnAddress = user.prefs.mailAddress}; if not defined (adrGroup^.mailSubject) { adrGroup^.mailSubject = "Admin"}; if not defined (adrGroup^.mailTemplate) { wp.newTextObject ("", @adrGroup^.mailTemplate)}; if not defined (adrGroup^.openToPublic) { adrGroup^.openToPublic = false}; if not defined (adrGroup^.users) { new (tableType, @adrGroup^.users)}}; local (adrMember = mainResponder.members.getMemberTable ("Admin", user.prefs.mailAddress)); if not defined (adrMember^) { new (tableType, adrMember)}; adrMember^.password = password; if not defined (adrMember^.personalInfo) { new (tableType, @adrMember^.personalInfo)}; if not defined (adrMember^.personalInfo.name) { adrMember^.personalInfo.name = user.prefs.name}}; if not flError { //complete the setup try { //trap network errors if system.environment.isCarbon { //we need to run the port forwarding page now flPortForwardPage = true} else { //Windows and Classic don't need to deal with port forwarding local (urlParts = string.urlSplit (config.mainResponder.prefs.baseUrl)); Frontier.completeSetup (urlParts[2], password); flConfirmPage = true; }}Çsystem.temp.Frontier.setupFrontier.flAllowLocalAccessToSetupPage = false //require login from now on else { //network or other error errorMessage = tryError; flError = true}}}; if defined (adrargs^.proxy) { //set proxy settings postedSection = "proxy"; try { //convert port to a number -- if not, it's an error adrargs^.port = number (adrargs^.port)} else { errorMessage = "Can't set your proxy settings because the port you entered is not valid."; adrargs^.enabled = false; flError = true}; user.webBrowser.proxy.domain = adrargs^.domain; user.webBrowser.proxy.username = adrargs^.username; user.webBrowser.proxy.password = binary (adrargs^.password); user.webBrowser.proxy.enabled = false; if not flError { user.webBrowser.proxy.port = adrargs^.port}; if defined (adrargs^.enabled) { if adrargs^.enabled { user.webBrowser.proxy.enabled = true}}; //PBS 12/31/01: *true*, not false (that was a bug) if flError { //redirect to the proxy settings section of the page mainResponder.redirect ("http://" + pta^.host + pta^.uri + "#proxy")} else { confirmMessage = "Your proxy server information has been set."; mainResponder.redirect ("http://" + pta^.host + pta^.uri)}}; if defined (adrargs^.portForward) { //set port forwarding preferences local (adminPassword = adrargs^.password); local (flRememberAdminPassword = defined (adrargs^.flRememberAdminPassword)); local (flEnablePortForwarding = defined (adrargs^.flEnablePortForwarding)); local (actualPort = number (adrargs^.port)); if actualPort != user.inetd.config.http.port { local (flRunning = inetd.isDaemonRunning (@user.inetd.config.http)); if flRunning { //stop server, set port, restart server inetd.stopOne (@user.inetd.config.http); user.inetd.config.http.port = actualPort; inetd.startOne (@user.inetd.config.http)} else { //just set port user.inetd.config.http.port = actualPort}}; if flRememberAdminPassword and flEnablePortForwarding { user.prefs.portForwardingAdminPassword = binary (adminPassword)}; local (password = mainResponder.members.getMemberTable ("Admin", user.prefs.mailAddress)^.password); local (urlparts = string.urlSplit (config.mainResponder.prefs.baseUrl)); Frontier.completeSetup (urlparts[2], password, adminPassword, flRememberAdminPassword, flEnablePortForwarding); flConfirmPage = true; };Çsystem.temp.Frontier.setupFrontier.flAllowLocalAccessToSetupPage = false //require login from now on Çif defined (adrargs^.confirmSetup) //redirect to the Control Panel home page ÇmainResponder.redirect ("http://" + pta^.host + "/") bundle { //if redirecting, set messages in the temp table, and don't bother to finish rendering saveDatabases (); if defined (pta^.responderAttributes.redirectUrl) { temp.frontier.postedSection = postedSection; temp.frontier.setupFrontier.flError = flError; temp.frontier.setupFrontier.errorMessage = errorMessage; temp.frontier.setupFrontier.message = confirmMessage; return ("")} else { //no redirect -- make sure messages are cleared temp.frontier.postedSection = ""; temp.frontier.setupFrontier.flError = false; temp.frontier.setupFrontier.errorMessage = ""; temp.frontier.setupFrontier.message = ""}}}; if flConfirmPage and (not flError) { //render the confirmation page bundle { //Confirmation page pta^.title = "Congratulations!"; local (adminSiteUrl = "http://" + pta^.host + "/"); local (t); new (tableType, @t); t.adminSiteUrl = adminSiteUrl; add (mainResponder.getString ("setupFrontier.newUserConfirmMessage", @t)); bundle { //add the Continue button add ("<form method=\"GET\" action=\"" + adminSiteUrl + "\">"); add ("<input type=\"submit\" value=\"Continue\" onclick=\"document.location='" + adminSiteUrl + "'\">"); add ("</form>")}; system.temp.Frontier.setupFrontier.flAllowLocalAccessToSetupPage = false}; //require login from now on Çbundle //redirect to admin website home page Çif flOpenAdminSite //see the first line of this script above Çlocal (port, adminSiteUrl) Çport = user.inetd.config.http2.port Çif port == 80 ÇadminSiteUrl = "http://127.0.0.1/" Çelse ÇadminSiteUrl = "http://127.0.0.1:" + port + "/" ÇmainResponder.redirect (adminSiteUrl) Çelse Çlocal (myManilaServerSiteUrl = manilaSuite.getSiteUrl (@myManilaServerManilaWebsite)) ÇmainResponder.redirect (myManilaServerSiteUrl) Çreturn ("")}} else { //render the welcome/setup form bundle { //change the template to the setup template, which doesn't have navigation links to the rest of the control panel table.assign (@pta^.template, "setup"); pta^.indirectTemplate = true}; if flPortForwardPage { //oops -- unix: we have to deal with port forwarding local (t); new (tableType, @t); t.adminPassword = ""; t.rememberAdminPassword = "checked"; t.enablePortForwarding = "checked"; t.actualPort = user.inetd.config.http.port; if defined (user.prefs.portForwardingAdminPassword) { t.adminPassword = string (user.prefs.portForwardingAdminPassword)}; add (mainResponder.getString ("setupFrontier.portForward", @t))} else { //the main setup form and proxy settings local (name = user.prefs.name, email = user.prefs.mailAddress, organization = user.prefs.organization, mailHost = user.prefs.mailHost); if system.environment.isMac { //convert name, organization to latin text name = latinToMac.macToLatin (name); organization = latinToMac.macToLatin (organization)}; bundle { //render the new user page local (t); new (tabletype, @t); bundle { //add personal info to replacement table t.username = name; t.useremail = email; t.userorganization = organization; t.userpassword = ""; local (urlparts = string.urlSplit (config.mainResponder.prefs.baseUrl)); t.serverdomain = urlparts[2]; try { //try to get the admin password from the Admin membership group local (adrMember = mainResponder.members.getMemberTable ("Admin", user.prefs.mailAddress)); if defined (adrMember^) { t.userpassword = adrMember^.password}}; t.mailhost = mailHost}; bundle { //add proxy settings to replacement table with user.webBrowser.proxy { t.proxydomain = user.webBrowser.proxy.domain; t.proxyusername = user.webBrowser.proxy.username; t.proxypassword = string (user.webBrowser.proxy.password); t.proxyport = user.webBrowser.proxy.port; if user.webBrowser.proxy.enabled { t.proxyenabled = "checked"} else { t.proxyenabled = ""}}}; bundle { //add error or confirmation messages to replacement table t.proxyConfirm = ""; t.setupError = ""; t.proxyError = ""; if defined (system.temp.frontier.postedSection) { //only defined after the first POST if defined (system.temp.frontier.setupFrontier.flError) { //only defined after the first POST if temp.frontier.setupFrontier.flError { case temp.frontier.postedSection { "setupFrontier" { t.setupError = "<p><font color=\"red\">" + temp.frontier.setupFrontier.errorMessage + "</font></p>"}; "proxy" { t.proxyError = "<p><font color=\"red\">" + temp.frontier.setupFrontier.errorMessage + "</font></p>"}}} else { case temp.frontier.postedSection { "proxy" { t.proxyConfirm = "<p><font color=\"navy\">" + temp.frontier.setupFrontier.message + "</font></p>"}}}}}}; add (mainResponder.getString ("setupFrontier.main", @t))}}}; return (htmltext)}; Çbundle //testing Çlocal (pagetable); new (tableType, @pagetable) Çpagetable.method = "GET" Çhtml.setPageTableAddress (@pagetable) ÇsetupFrontier () Çhtml.deletePageTableAddress () \ No newline at end of file |
|
From: creedon <icr...@us...> - 2005-06-15 23:31:54
|
Update of /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/adminSite/website/23templates In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11090 Modified Files: setup Log Message: fixes so that adminSite can be used to complete Frontier install Index: setup =================================================================== RCS file: /cvsroot/frontierkernel/odbs/mainResponderRoot/mainResponder/adminSite/website/23templates/setup,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** setup 26 Mar 2005 21:45:19 -0000 1.1.1.1 --- setup 15 Jun 2005 23:31:45 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:optx:mainResponder.adminSite.website.["#templates"].setup ! <body bgcolor="#FFFFFF" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" style="background-image: url('/mainResponderResources/adminSite/headerBackground'); background-repeat: no-repeat;"> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td colspan="2"> <table width="100%" cellpadding="0" border="0" cellspacing="0"><tr> <td width="1"><img src="/mainResponderResources/adminSite/shim" width="1" height="36"></td> <td align="center"> </td> </tr></table> </td> </tr> <tr> <td width="175"><img src="/mainResponderResources/adminSite/shim" width="175" height="45" border="0" usemap="#header"><map name="header"><area shape="rect" href="http://frontier.userland.com/" coords="13, 7, 166, 29" /></map></td> <td align="right"><a href="http://www.userland.com/"><img src="/mainResponderResources/adminSite/userlandLogo" width="140" height="20" border="0"></a></td> </tr> </table> <div align="center"> <table width="85%" border="0" cellspacing="0" cellpadding="4"> <tr> <td valign="top"> <table border="0" width="100%" cellspacing="12" cellpadding="0"> <tr> <td> <p><font size="+1"><b><%viewPageTitle ()%></b></font></p> {bodytext} </td> </tr> </table> </td> </tr> </table> </div> <br /><br /><br /> <hr width="95%" size="1"> <br /> <div align="center"> © Copyright 2001-<%date.year ()%> <a href="http://www.userland.com/">UserLand Software, Inc</a>.<br /> <font size="-1"><i>Last update: <%timeModified (adrobject)%>.</i></font><br /> </div> </body> </html> \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:optx:mainResponder.adminSite.website.["#templates"].setup ! <body> <div id="banner"> <a href="" style="font-family:verdana, arial, sans-serif;color:#FFF;font-size:20px;font-weight:normal;text-transform:uppercase;letter-spacing: .2em;"> Frontier </a> <br/> <span class="description"> High performance Web content management, object database, system-level and Internet scripting environment, including source code editing and debugging. </span> </div> <div id="content" style="width: 100%;"> <div class="blogbody"> <p class="title"> <%viewPageTitle ()%> </p> {bodytext} <div class="footer"> <p> This Page was last update: <%timeModified (adrobject)%> <br/> Page template based on <a href="http://www.bryanbell.com/">Bryan Bell's</a> <a href="http://www.bryanbell.com/2002/07/23#a63">Moveable Manila: green</a>. <br/> © Copyright <%date.year ()%> </p> <p> <a href="http://jigsaw.w3.org/css-validator/"> <img style="border:0;width:88px;height:31px" src="http://jigsaw.w3.org/css-validator/images/vcss" alt="Valid CSS!"> </a> </p> </div> </div> </div> </body> </html> \ No newline at end of file |