author | Michael Krelin <hacker@klever.net> | 2008-02-11 21:16:01 (UTC) |
---|---|---|
committer | Michael Krelin <hacker@klever.net> | 2008-02-11 21:16:01 (UTC) |
commit | 4cd6cad3b5fda6eb09c8c36efeb9426316f35a37 (patch) (side-by-side diff) | |
tree | ed093a441a7a2621a47b628f8973cd7fda056ef4 /lib | |
parent | b5a9adac9dfe84ccf509197d24b9e04ecd3ca1d3 (diff) | |
download | libopkele-4cd6cad3b5fda6eb09c8c36efeb9426316f35a37.zip libopkele-4cd6cad3b5fda6eb09c8c36efeb9426316f35a37.tar.gz libopkele-4cd6cad3b5fda6eb09c8c36efeb9426316f35a37.tar.bz2 |
allow to add prefix to generated htmlhiddens
Signed-off-by: Michael Krelin <hacker@klever.net>
-rw-r--r-- | lib/openid_message.cc | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/lib/openid_message.cc b/lib/openid_message.cc index 521ea85..588bd62 100644 --- a/lib/openid_message.cc +++ b/lib/openid_message.cc @@ -162,22 +162,26 @@ namespace opkele { struct __om_html_outputter : public unary_function<const string&,void> { public: const basic_openid_message& om; ostream& os; + const char *pfx; - __om_html_outputter(const basic_openid_message& m,ostream& s) - : om(m), os(s) { } + __om_html_outputter(const basic_openid_message& m,ostream& s,const char *p=0) + : om(m), os(s), pfx(p) { } result_type operator()(argument_type f) { os << "<input type=\"hidden\"" - " name=\"" << util::attr_escape(f) << "\"" + " name=\""; + if(pfx) + os << util::attr_escape(pfx); + os << util::attr_escape(f) << "\"" " value=\"" << util::attr_escape(om.get_field(f)) << "\" />"; } }; - void basic_openid_message::to_htmlhiddens(ostream& o) const { - for_each(fields_begin(),fields_end(),__om_html_outputter(*this,o)); + void basic_openid_message::to_htmlhiddens(ostream& o,const char* pfx) const { + for_each(fields_begin(),fields_end(),__om_html_outputter(*this,o,pfx)); } void basic_openid_message::add_to_signed(const string& fields) { string::size_type fnc = fields.find_first_not_of(","); |