aboutsummaryrefslogtreecommitdiffstats
path: root/Bugzilla/Util.pm
diff options
context:
space:
mode:
Diffstat (limited to 'Bugzilla/Util.pm')
-rw-r--r--Bugzilla/Util.pm13
1 files changed, 13 insertions, 0 deletions
diff --git a/Bugzilla/Util.pm b/Bugzilla/Util.pm
index 511ba2592..c0d671744 100644
--- a/Bugzilla/Util.pm
+++ b/Bugzilla/Util.pm
@@ -30,6 +30,7 @@ use strict;
use base qw(Exporter);
@Bugzilla::Util::EXPORT = qw(is_tainted trick_taint detaint_natural
html_quote url_quote value_quote xml_quote
+ css_class_quote
lsearch max min
trim format_time);
@@ -73,6 +74,13 @@ sub url_quote {
return $toencode;
}
+sub css_class_quote {
+ my ($toencode) = (@_);
+ $toencode =~ s/ /_/g;
+ $toencode =~ s/([^a-zA-Z0-9_\-.])/uc sprintf("&#x%x;",ord($1))/eg;
+ return $toencode;
+}
+
sub value_quote {
my ($var) = (@_);
$var =~ s/\&/\&/g;
@@ -260,6 +268,11 @@ replaced with their appropriate HTML entities.
Quotes characters so that they may be included as part of a url.
+=item C<css_class_quote($val)>
+
+Quotes characters so that they may be used as CSS class names. Spaces
+are replaced by underscores.
+
=item C<value_quote($val)>
As well as escaping html like C<html_quote>, this routine converts newlines