Commit c28beb42 authored by Tomasz Wysocki's avatar Tomasz Wysocki Committed by Claude Paroz
Browse files

Refactored and commented strip_tags utility

parent 074d3183
Loading
Loading
Loading
Loading
+6 −6
Original line number Diff line number Diff line
@@ -162,15 +162,15 @@ def _strip_once(value):

def strip_tags(value):
    """Returns the given HTML with all tags stripped."""
    while True:
        if not ('<' in value or '>' in value):
            return value
    # Note: in typical case this loop executes _strip_once once. Loop condition
    # is redundant, but helps to reduce number of executions of _strip_once.
    while '<' in value and '>' in value:
        new_value = _strip_once(value)
        if new_value == value:
            # _strip_once was not able to detect more tags
            return value
        else:
            break
        value = new_value
    return value
strip_tags = allow_lazy(strip_tags)