Граф коммитов

243 Коммитов

Автор SHA1 Сообщение Дата
ian%hixie.ch 8db0d6ded5 Some minor code fixups with no semantic change. Also, fixed the getArgumentsAsString method to not screw up the output when there are empty arrays in the arguments hash (as can happen when you call createArgument, which happens when getArgument is called and the argument is missing) and when the arguments hash contains scalars. 2002-07-16 15:50:14 +00:00
ian%hixie.ch a35d045656 Add support for a command which does nothing but pass its argument to the output system. This is especially useful for templates that want to show other templates without actually doing anything else, and so the command is called 'showTemplate'. 2002-07-16 15:46:28 +00:00
ian%hixie.ch 5a6c17d958 Let's try a different tactic in a scalar context. If there's no data, return undef. 2002-07-07 15:42:57 +00:00
ian%hixie.ch 299f260287 Update the string data source to use the new input metadata APIs 2002-07-07 00:13:29 +00:00
ian%hixie.ch 62165e7d5b Typo: adddress should be address. Doesn't make any particular difference to anything unless someone has already written automated installation scripts... 2002-07-06 17:59:10 +00:00
ian%hixie.ch 12d86e0428 Change the 'row' method of the ResultsFrame API to return an array in an array context, a hashref in a scalar context, and the value on its own if there is only one returned value. (Controversial change. This could introduce hard to spot regressions, and might be backed out at some point.) 2002-07-06 17:52:21 +00:00
ian%hixie.ch c5ff59c053 Introduce the service.uaStringInterpreter.<protocol> service, which takes a UA string and splits it into name, version, manufacturer, platform and comment. This is the HTTP implementation of that service. 2002-07-06 17:49:22 +00:00
ian%hixie.ch c931d0e91f Added the following filters to the Template Toolkit toolbox: htmlcomment, xmlcomment, xml, cdata, htmljs, js, css. Added support for named [% BLOCK %], which had been removed when the template processing code was overridden. 2002-07-06 16:14:58 +00:00
ian%hixie.ch 67ff1ef52d Remove XXX comment about needing an API to enable or disable UI elements, since that need has disappeared now that we use provide that information reliably in the user object. Also split a long line into two for no particular reason. 2002-07-06 16:12:42 +00:00
ian%hixie.ch 724d714a02 Changed the default handling of the generic output module. Now, if there's no generic dispatcher for an output command, it'll effectively synthesise one on the fly, using the method name as the string name and the arguments as an array of values for a 'data' variable. This means that applications can skip out on implementing a generic dispatcher now. Anyone using strings with dot separators (i.e. anyone writing libraries) still need to have generic output dispatcher methods though, to map the method call to a string name. 2002-07-06 16:05:48 +00:00
ian%hixie.ch 927a78dfd7 Made the SMTP 'timeout' value configurable at setup time (defaults to 5 seconds) 2002-07-06 16:02:07 +00:00
ian%hixie.ch 3f748a7c22 Implement getArgumentsTree(), which returns a hash tree representing the first value of each unique argument name in a branch, using dots as the separator. Finally replaced the hardcoded non-extensible meta data stuff with a proper getMetaData() API. Implemented that in the various Input modules. Renamed 'parameter' to 'property' in the CGI Input module. Added '--batch-force-defaults' as an argument handled by the CommandLine Input module. Made CommandLine derive from Default instead of Arguments, so that it can pick up the default handling of metadata and default output protocol. 2002-07-06 15:59:56 +00:00
ian%hixie.ch 7c56b08e2b Update to TemplateToolkit format 2002-06-30 21:35:27 +00:00
ian%hixie.ch 19251aa801 Include character set information in the HTTP headers 2002-06-30 21:34:57 +00:00
ian%hixie.ch b0b0c2d2b3 HTTP needs RFC822 dates for its Date: line 2002-06-30 21:33:21 +00:00
ian%hixie.ch 24c018b496 Primitive POST support (work in progress) 2002-06-30 21:30:43 +00:00
ian%hixie.ch f4a812c534 Oops, wrong repository... 2002-06-30 21:05:35 +00:00
ian%hixie.ch 71c3a67ce8 Initial checkin 2002-06-30 21:02:35 +00:00
ian%hixie.ch ce4478beee Some versions of the Net::SMTP module handle the timeout by raising a SIG ALRM, so handle this case as well. Also increase the timeout by ten seconds since in the real world, some servers are actually that slow. We might need to make this asynchronous at some point. 2002-05-26 15:08:48 +00:00
ian%hixie.ch 42ac389024 Perl 5.005_03 compatability: the precedence of the not and comma operators changed at some point, so disambiguate this usage. 2002-05-26 15:05:37 +00:00
ian%hixie.ch 78a7589fdc Cache the Term::ReadLine input device. On some systems, it has to be cached, otherwise you end up trying to open too many input handles or something like that. This also means we can have session history where available. 2002-05-26 15:03:48 +00:00
ian%hixie.ch 8ffd16f0b1 Add some null checking -- if the string is undefined, then turn it into the empty string. This avoids many undefined value warnings when the data provided by the user is incomplete. 2002-05-26 15:02:33 +00:00
ian%hixie.ch f5ec789f5f Implemented rowsAffected(), which will return the number of database rows that were affected by the last execution of the statement associated with the results frame. 2002-05-26 15:00:56 +00:00
ian%hixie.ch 4d9ba65cdd Preliminary work in making the user prefs notifications page nicer. 2002-05-07 12:16:24 +00:00
ian%hixie.ch 2eccf38d60 Add the hidden userPrefs.userID fields to the user prefs page so that changes to users other than yourself actually take effect. 2002-05-07 12:16:01 +00:00
ian%hixie.ch 50edfae326 pendingCommands.defined doesn't seem to work... Let's try pendingCommands.ref. It's technically more correct anyway. 2002-05-07 03:04:37 +00:00
ian%hixie.ch e14122ee41 Forgot to fully convert the templates to Template Toolkit: nested dots need to be escaped differently now. 2002-05-07 03:03:00 +00:00
ian%hixie.ch 7f1b1bc44d Fix some bugs with the pendingCommand escaping code: First, extra spaces were being inserted (so much for s///x). Second, the escaping was actually modifying the original keys. Third, there were some logic errors that caused underescaping or resulted in the wrong key being escaped. 2002-05-07 01:50:22 +00:00
ian%hixie.ch 02aa6e26db Lots of tweaks, mainly to make the source look pretty. Also hid the Settings header if there are no important settings. 2002-05-07 01:32:28 +00:00
ian%hixie.ch 6e4c646189 Correct a typo: Output is done through the application object, not the user prefs object... 2002-05-06 23:05:08 +00:00
ian%hixie.ch fea723a0a6 Add an additional check that the change ID is valid 2002-05-06 22:59:22 +00:00
ian%hixie.ch f343303e4e Forgot to fully convert the templates to Template Toolkit: nested dots need to be escaped differently now. Also added filters to the URI fragments so that spaces get escaped properly. They'll be stuck together at some point. 2002-05-06 21:15:05 +00:00
ian%hixie.ch 08859612f4 Forgot to fully convert the templates to Template Toolkit: nested dots need to be escaped differently now 2002-05-06 21:05:28 +00:00
ian%hixie.ch b89f14c971 Add more information to the hash passed to the change of address outputs 2002-05-06 21:01:48 +00:00
ian%hixie.ch 35e07fb8e3 Remove the 'html' bit from the filenames. 2002-05-06 21:00:53 +00:00
ian%hixie.ch cd26de7c63 E-mail templates 2002-05-06 12:53:53 +00:00
ian%hixie.ch e67e2cad39 Remove the 'html' bit from the filenames. 2002-05-06 11:03:12 +00:00
ian%hixie.ch 9fd73998f6 Ok, handle undef in getArgumentsFromString the same as an empty string. This function sometimes gets called with the result of peekArgument(), which could be undef. 2002-05-06 10:10:57 +00:00
ian%hixie.ch 190d3e3373 There's a bug somewhere which results in the expansion of an undefined string. This assertion should help track it down. 2002-05-06 09:55:19 +00:00
ian%hixie.ch 6cc76a9d5b Oops, forgot to make the primary key ID an auto_increment column. 2002-05-06 09:53:01 +00:00
ian%hixie.ch 4bb1faa917 getFields returns an arrayref, so we have to dereference it before using it in a foreach loop. 2002-05-06 05:51:02 +00:00
ian%hixie.ch 24bcc8e7ed Oops, I was stomping on the fieldsByID property by treating it as a function instead of a hash. Also add in an assertion to check that insertField() is always called with a real field. 2002-05-06 05:50:06 +00:00
ian%hixie.ch 3afbf82b63 Make user fields all provide the user.field service so that they can be easily recognised. 2002-05-06 05:48:48 +00:00
ian%hixie.ch 8c45554054 Change the expected field category name from 'detail' to 'personal' for consistency 2002-05-06 05:26:00 +00:00
ian%hixie.ch 11fa7fcc76 When getting ones password sent without getting a login failed message first, the pending command is the request to send a new password... so you get sent back to that once your password is sent. That's not good. This fixes it by moving the pendingCommands code to the login.failed page and making the login.detailsSent page only show the continue button when appropriate. 2002-05-06 05:17:00 +00:00
ian%hixie.ch d33c4d1a80 User Preferences Screens 2002-05-06 04:55:59 +00:00
ian%hixie.ch 4fe03788dd Fixing the spelling of getRightsForGroups() where it is declared and used. Also fixing one of the SQL statements to use rights.rightID not rights.ID. 2002-05-06 04:36:42 +00:00
ian%hixie.ch 06fe39d85b Rename 'setting' to 'settings' throughout to be consistent. Also, make it so that someone with the right to change all groups gets to be the equivalent of an owner even in groups where he is only marked as administrator. 2002-05-06 03:54:14 +00:00
ian%hixie.ch e7fd1d788a Hardcoded constants strike again... Changing the setup code to let the first administrator have the rights to let other people be administrators. 2002-05-06 03:10:50 +00:00
ian%hixie.ch c917916adf comment clarification 2002-05-05 22:43:05 +00:00