"""
    This macro displays a rating
    <<MyRating()>>
    <<MyRating(2)>>
    <<MyRating(2,5)>>
    <<MyRating(6,10)>>
    <<MyRating(6,10,<!>)
    <<MyRating(6,10,X-(,:-))
"""

from MoinMoin import wikiutil
from MoinMoin.parser.text_moin_wiki import Parser as WikiParser

def macro_MyRating(macro,rating=0,scale=5,empty=u'{o}',full=u'{*}'):

    f = macro.formatter
    _ = macro.request.getText

    text = ( full + ' ' ) * rating
    text += ( empty + ' ' ) * ( scale - rating)
    text = wikiutil.renderText(macro.request, WikiParser, text)
    #text = text.strip()

    return text

