HTML-FormTemplate

 view release on metacpan or  search on metacpan

ChangeLog  view on Meta::CPAN


	* Updated HTML::FormTemplate (now v2.03 up from v2.021) to fix a bug in the
	make_html_input_echo() method where the user input was not being
	HTML-escaped like in make_html_input_form(), allowing for users to leave
	deceptive messages, hyperlinks, or script attacks.  After the change, the
	raw input is always displayed, so viewers see exactly what was entered. 
	Note that this module was always intended to treat input as plain text, and
	users should never be entering HTML and expect it to be treated as such on
	display.  No other functional changes.

	* Note that this fix was actually done on 2004-09-26, but actually releasing 
	the fix on CPAN was neglected until 2005-07-18.

	* Updated copyright statement range to 2004, when the fix was made.

	* Updated external dependency on CGI::MultiValuedHash to v1.09 from v1.081 
	(not required to fix the bug, but a good idea none-the-less).

2003-03-16   Darren Duncan <perl@DarrenDuncan.net>

	* Release 2.021.

	* This is a small maintenance release that is mainly for improving
	documentation.  Similar maintenance releases are being done with all of my
	distributions simultaneously.  A lot of it was formatting issues that were
	easy to miss before; the other bullet points below list the non-formatting
	issues.  These files had formatting fixes: FormTemplate.pm, ChangeLog.

	* The distribution file layouts have also been standardized, with modules
	going in a "lib" folder and tests going in a "t" folder.  "test.pl" was
	changed to "t/HTML-FormTemplate.t" and "FormTemplate.pm" was changed
	to "lib/HTML/FormTemplate.pm".

	* Updated all Copyright statements to a better (and longer) version, which
	is dated 1999-2003.  Your rights to use these modules haven't changed, but
	they may now be easier to understand.  These statements appear once in the
	ReadMe file at the bottom (under "AUTHOR"), and twice in each module (.pm
	file), a full version at the bottom (under "AUTHOR") and a shorter version
	at the top (in code comments).

	* Added the "use warnings" pragma at the top of all files beside "use
	strict"; every occurance of "use strict" gained a "use warnings" whether it
	was in the module proper or in its test script or in its SYNOPSIS.  This
	should save users from having to put -w on the command line for them.

	* Incremented the module $VERSION number by 0.001, and all test scripts to
	require the new version.  Also, where any of my modules use others of my
	modules, they now require the latest version as of this writing, for
	simplicity of maintenance.

	* Updated all test scripts to read $verbose from @ARGV (command line
	arguments), and other test script improvements.

	* Updated these sections of the ReadMe file: INSTALLATION.

2001-09-03   Darren Duncan <perl@DarrenDuncan.net>

	* Release 2.02.

	* This release is primarily for making the html that this class outputs more 
	like W3C's new XHTML standard, and give it better support for stylesheets.  
	The public interface for this module has not changed, so you can continue 
	using it as you did before.  You are recommended to use HTML::EasyTags 1.06 
	or later with this, though version 1.03 will still work.

	* Any code changes are mostly cosmetic.  When generating forms or reports 
	within tables, this class now generates the table/tr/td html tags without 
	any attributes; they used align/valign/cellspacing/cellpadding before.  
	It is recommended that you use a stylesheet to align cell contents the way 
	that you want, for example: 'TD {text-align: left; vertical-align: top}'.

	* All occurances of the "font" tag and their effects have been removed.  
	What this means is that form elements which were colored before, such as 
	each of the required/error/private flags and the error text, are now not 
	coloured.  However, since all of these are still identifiable by their 
	character composition, this shouldn't be a serious problem.

	* The SYNOPSIS documentation has been updated such that it's corresponding 
	sample output has three examples: html for initial run and when Submit is 
	clicked, plus what the generated email looks like.

	* A BUGS section has been added to the documentation near the top that 
	mentions remaining compatability issues with the XHTML or HTML standards.  
	However, this module's output should continue to work with web browsers.

2001-06-04   Darren Duncan <perl@DarrenDuncan.net>

	* Release 2.01.

	* Fixed bug related to organizing field groups into tables.  Previously the 
	field definition attributes [table_rows/rows, table_cols/cols, table_acrf] 
	were not fetched properly, causing strange effects like having a single 
	table column when two were requested.  The table feature now works properly.

	* Removed a small design flaw where the "type" attribute of field definitions 
	had needed to be a certain typecase in order to be recognized, due to some 
	chicken-and-egg scenario where normal definition parsing could only be done 
	once we knew what field type to parse it as, but to know the type you had to 
	parse.  The new version removes that restriction so now you can mix the 
	typecase of "type" as much as any other attribute as is your wish.

	* Small update to the make_table_from_list() method where the HTML code for 
	each table cell now appears on its own line for greater readability.

	* The module POD was updated, mostly in Name, Synopsis, Properties.

2001-04-03   Darren Duncan <perl@DarrenDuncan.net>

	* Release 2.0.

	* This release marks the largest update of this module since it was first 
	released on CPAN; at least half of the code and documentation was re-written.
	Many things were added and a few things were removed; those that were not 
	removed should be backwards-compatible with release 1.05.  

	* HTML::FormTemplate is no longer subclassed from HTML::EasyTags, which 
	means you can no longer call the latter's methods from an object of the 
	former.  Prime examples of these are the autoloaded methods named after HTML 
	tags.  Also no longer available are: groups_by_default(), prologue_tag(), 
	comment_tag(), make_html_tag(), make_html_tag_group(), start_html(), 
	end_html().  If you want to use any of those then you need to instantiate 
	an HTML::EasyTags object yourself to call them from.  HTML::FormTemplate 
	does still *use* the other class internally of course.  This change was made 
	largely to address a glaring usability issue that is inherent with 
	autoloading.  That is, a user could mis-spell a method name and they would 
	not get an appropriate run-time error because an autoloaded HTML-making 
	method got called instead.

	* Autoloading was completely removed and now there is an explicit method for 
	each one of the form field types; the method has the same name as the type.
	However, these are shims, and the real work is still done elsewhere.

	* The lower-level methods that do the actual making of form field HTML saw 
	the most changes and were completely rewritten.  As part of the rewrite, 
	functionality that was crammed into 3 methods is now handled by 9 which are 
	more specialized.

	* All ten single field types now have group counterparts.  Although the 
	usefulness of some of these may vary, you at least now have the choice.
	Added are: reset_group, submit_group, popup_menu_group, scrolling_list_group.
	The latter two cases differ from their single-field equivalents by 
	distributing any default values so that each group member gets one rather 
	than one field getting all.  The most useful is probably popup_menu_group.



( run in 2.875 seconds using v1.01-cache-2.11-cpan-411bb0df24b )