foreach $pair (@pairs) { ($key, $value) = split (/=/, $pair); # Convert plusses to spaces $key =~ tr/+/ /; # Convert Hex values to ASCII $key =~ s/%([a-fA-F0-9] [a-fA-F0-9])/pack("C", hex($1))/eg; $value =~ tr/+/ /; $value =~ s/%([a-fA-F0-9] [a-fA-F0-9])/pack("C", hex($1))/eg; # Eliminiate SSI's $value =~s///g; # If we already have a key with this name, allow for # multiple values!!! if ($formdata{$key}) { $formdata{$key} .= ", $value"; } else { $formdata{$key} = $value; } } #### open DATA, $data; #### function changeLoc(formNum) { if ( document.forms[0].elements[formNum].options[document.forms[0].elements[formNum].selectedIndex].value == "Corporate Home" ) { parent.location.href = "http://www.somesite.com/"; } else if ( document.forms[0].elements[formNum].options[document.forms[0].elements[formNum].selectedIndex].value != "nogo" || page != "") { top.i3.location.href = document.forms[0].elements[formNum].options[document.forms[0].elements[formNum].selectedIndex].value; } document.forms[0].elements[formNum].selectedIndex = 0; } #### function changeLoc(formNum) { page = document.forms[0].elements[formNum].options[document.forms[0].elements[formNum].selectedIndex].value; if ( page == "Corporate Home" ) { parent.location.href = "http://www.somesite.com/"; } else if ( page != "nogo" || page != "") { top.i3.location.href = page; } document.forms[0].elements[formNum].selectedIndex = 0; } #### sub update_foo { my ( $self, $data ) = @_; my $id = $data->{ textID }; delete $data->{ textID }; if ( $id !~ /^\d+$/ ) { croak "textID '$id' in update_foo must be numeric."; } my ( $field_values, $values ) = $self->_format_update_data( $data ); my $sql = "UPDATE giText SET $field_values WHERE textID = ?"; push @$values, $id; my $return = $self->_update_database( $sql, $values ); $self->{ _dbh }->commit if ! $self->{ _error }; return $return; }