diff --git a/src/server/kiwix-serve.cpp b/src/server/kiwix-serve.cpp index 571a50d..020b73a 100644 --- a/src/server/kiwix-serve.cpp +++ b/src/server/kiwix-serve.cpp @@ -107,6 +107,47 @@ static const string HTMLDiv = " \
\n \ "; +// Urlencode + +//based on javascript encodeURIComponent() + +string char2hex( char dec ) +{ + char dig1 = (dec&0xF0)>>4; + char dig2 = (dec&0x0F); + if ( 0<= dig1 && dig1<= 9) dig1+=48; //0,48inascii + if (10<= dig1 && dig1<=15) dig1+=97-10; //a,97inascii + if ( 0<= dig2 && dig2<= 9) dig2+=48; + if (10<= dig2 && dig2<=15) dig2+=97-10; + + string r; + r.append( &dig1, 1); + r.append( &dig2, 1); + return r; +} + +string urlEncode(const string &c) { + string escaped=""; + int max = c.length(); + for(int i=0; igetNextResult(urlStr, titleStr, scoreInt)) { sprintf(scoreStr, "%d", scoreInt); - content += "
  • " + titleStr+ " - " + scoreStr + "%
  • \n"; + content += "
  • " + titleStr+ " - " + scoreStr + "%
  • \n"; } } catch (const std::exception& e) {