コード例 #1
0
ファイル: views.py プロジェクト: virtualtam/chordgenerator
def index(request):
    """ Contains explanatory text. Nothing needs to be loaded. """
    if "asciif" in request.GET and request.GET["asciif"] == "asciif":
        keys = ASCIIKEYS
        asciiselect = True
    else:
        keys = UNIKEYS
        asciiselect = False
    if "key" in request.GET:
        key = request.GET["key"]
        if key not in keys:
            if key in MAPKEYS.keys():
                key = MAPKEYS[key]
            else:  # Someone's been playing silly buggers with the GET request.
                key = "C"
                # So we return C as simple.
    else:
        key = "C"
    if "scales" in request.GET:
        chosenscale = request.GET["scales"]
        if chosenscale not in SCALE_ARRAY:
            if chosenscale in MAPSCALES.keys():
                chosenscale = MAPSCALES[chosenscale]
            else:  # Again, enemy action from the GET request.
                chosenscale = "Major"
    else:
        chosenscale = "Major"
    scaletable = populate_scale_chords(chosenscale, key, CHORDTYPE_ARRAY)
    if asciiselect:
        scales = sorted([un_unicode_accdtls(i) for i in SCALE_ARRAY])
        chosenscale = un_unicode_accdtls(chosenscale)
    else:
        scales = sorted(SCALE_ARRAY)
    c = RequestContext(
        request, {
            "keys": keys,
            "chosenkey": key,
            "asciiselect": asciiselect,
            "scaletable": scaletable,
            "scales": scales,
            "chosenscale": chosenscale
        })
    return TemplateResponse(request,
                            'chordgenerator/chordgenerator.html',
                            context=c)
コード例 #2
0
ファイル: views.py プロジェクト: peterkmurphy/chordgenerator
def index(request):
    """ Contains explanatory text. Nothing needs to be loaded. """
    if "asciif" in request.GET and request.GET["asciif"] == "asciif":
        keys = ASCIIKEYS
        asciiselect = True;
    else:
        keys = UNIKEYS;
        asciiselect = False;
    if "key" in request.GET:
        key = request.GET["key"]
        if key not in keys:
            if key in MAPKEYS.keys():
                key = MAPKEYS[key];
            else: # Someone's been playing silly buggers with the GET request.
                key = "C"; # So we return C as simple.
    else:
        key = "C";
    if "scales" in request.GET:
        chosenscale = request.GET["scales"]
        if chosenscale not in SCALE_ARRAY:
            if chosenscale in MAPSCALES.keys():
                chosenscale = MAPSCALES[chosenscale];
            else: # Again, enemy action from the GET request.
                chosenscale = "Major";
    else:
        chosenscale = "Major"
    scaletable = populate_scale_chords(chosenscale, key, CHORDTYPE_ARRAY)
    if asciiselect:
        scales = sorted([un_unicode_accdtls(i) for i in SCALE_ARRAY]);
        chosenscale = un_unicode_accdtls(chosenscale);
    else:
        scales = sorted(SCALE_ARRAY);
    c = {"keys": keys, "chosenkey": key, "asciiselect":asciiselect,
            "scaletable":scaletable, "scales":scales,
            "chosenscale":chosenscale}
    return render(request, 'chordgenerator/chordgenerator.html', c)
コード例 #3
0
def chordtabletag(value, arg = False):
    ''' Takes an argument (value) that is assumed to be of type scale_chords.
    The function is really a wrapper around chordgentable. The arg argument
    indicates whether it is ASCII-only (True) or Unicode (False).
    '''
    output = chordgentableneu([value]);
    try:
        
# Any exception - any at all - returns an empty string.

        output = chordgentableneu([value]);
        if arg:
            output = un_unicode_accdtls(output);
        return mark_safe(output);

# And if it all turns to shit...

    except:
        return "";
コード例 #4
0
def chordtabletag(value, arg=False):
    ''' Takes an argument (value) that is assumed to be of type scale_chords.
    The function is really a wrapper around chordgentable. The arg argument
    indicates whether it is ASCII-only (True) or Unicode (False).
    '''
    output = chordgentableneu([value])
    try:

        # Any exception - any at all - returns an empty string.

        output = chordgentableneu([value])
        if arg:
            output = un_unicode_accdtls(output)
        return mark_safe(output)


# And if it all turns to shit...

    except:
        return ""