|
@@ -50,58 +50,6 @@ to_integer(L) when erlang:is_list(L) -> erlang:list_to_integer(L);
|
|
to_integer(F) when erlang:is_float(F) -> erlang:round(F).
|
|
to_integer(F) when erlang:is_float(F) -> erlang:round(F).
|
|
|
|
|
|
|
|
|
|
-% HTML encode/decode
|
|
|
|
-
|
|
|
|
-html_encode(L, Fun) when erlang:is_function(Fun) ->
|
|
|
|
- Fun(L);
|
|
|
|
-html_encode(L, EncType) when erlang:is_atom(L) ->
|
|
|
|
- html_encode(nitro:to_list(L), EncType);
|
|
|
|
-html_encode(L, EncType) when erlang:is_integer(L) ->
|
|
|
|
- html_encode(erlang:integer_to_list(L), EncType);
|
|
|
|
-html_encode(L, EncType) when erlang:is_float(L) ->
|
|
|
|
- html_encode(erlang:float_to_list(L, [{decimals, 9}, compact]), EncType);
|
|
|
|
-html_encode(L, false) -> L;
|
|
|
|
-html_encode(L, true) -> L;
|
|
|
|
-html_encode(L, whites) ->
|
|
|
|
- html_encode_whites(nitro:to_list(lists:flatten([L]))).
|
|
|
|
-html_encode(<<>>) -> <<>>;
|
|
|
|
-html_encode([]) -> [];
|
|
|
|
-html_encode(B) when is_binary(B) ->
|
|
|
|
- html_encode(erlang:binary_to_list(B));
|
|
|
|
-html_encode([$\n|T]) -> "<br>" ++ html_encode(T);
|
|
|
|
-html_encode([H|T]) ->
|
|
|
|
- case H of
|
|
|
|
- $< -> "<" ++ html_encode(T);
|
|
|
|
- $> -> ">" ++ html_encode(T);
|
|
|
|
- $" -> """ ++ html_encode(T);
|
|
|
|
- $` -> "'" ++ html_encode(T);
|
|
|
|
- $' -> "'" ++ html_encode(T);
|
|
|
|
- $& -> "&" ++ html_encode(T);
|
|
|
|
- BigNum when erlang:is_integer(BigNum) andalso BigNum > 255 ->
|
|
|
|
- %% Any integers above 255 are converted to their HTML encode equivalent,
|
|
|
|
- %% Example: 7534 gets turned into ᵮ
|
|
|
|
- [$&, $# | nitro:to_list(BigNum)] ++ ";" ++ html_encode(T);
|
|
|
|
- Tup when erlang:is_tuple(Tup) ->
|
|
|
|
- erlang:throw({html_encode, encountered_tuple, Tup});
|
|
|
|
- _ -> [H|html_encode(T)]
|
|
|
|
- end.
|
|
|
|
-
|
|
|
|
-html_encode_whites([]) -> [];
|
|
|
|
-html_encode_whites([H|T]) ->
|
|
|
|
- case H of
|
|
|
|
- $\s -> " " ++ html_encode_whites(T);
|
|
|
|
- $\t -> " " ++ html_encode_whites(T);
|
|
|
|
- $< -> "<" ++ html_encode_whites(T);
|
|
|
|
- $> -> ">" ++ html_encode_whites(T);
|
|
|
|
- $" -> """ ++ html_encode_whites(T);
|
|
|
|
- $' -> "'" ++ html_encode_whites(T);
|
|
|
|
- $` -> "'" ++ html_encode_whites(T);
|
|
|
|
- $& -> "&" ++ html_encode_whites(T);
|
|
|
|
- $\n -> "<br>" ++ html_encode_whites(T);
|
|
|
|
- _ -> [H|html_encode_whites(T)]
|
|
|
|
- end.
|
|
|
|
-
|
|
|
|
-
|
|
|
|
%% URL encode/decode
|
|
%% URL encode/decode
|
|
|
|
|
|
url_encode(S) -> quote_plus(S).
|
|
url_encode(S) -> quote_plus(S).
|