예제 #1
0
def interface(request,webgis_id):
    config = Config.objects.get(site=1)
    webgis = get_object_or_404(WebGis,pk=webgis_id)
    maps = webgis.map_set.all()
    webgisinfo = ContextualInfo.objects.filter(webgis=webgis.id)

    #WEBGIS CATALOGO DATI
#    catalogodati = CatalogoDatiW.objects.all()
#    catalogobase = CatalogoBase.objects.all()

#    #enviro
#    ambito_spaziale = AmbitoSpaziale.objects.all()
#    ambito_climatico = AmbitoClimatico.objects.all()
#    ambito_temporale = AmbitoTemporale.objects.all()
#    ambito_variabile = AmbitoVariabile.objects.all()

    results = list(maps) + list([webgis]) + list(webgisinfo) + list([config])
    # results = results + list(catalogodati) + list(catalogobase)
    # results = results + list(ambito_spaziale) + list(ambito_climatico) + list(ambito_temporale) + list(ambito_variabile)

    t = loader.get_template('webgis/webgisinterface.html')
    c = RequestContext(request, {
        'maps': serializers.serialize(
            "json", results, ensure_ascii=True, extras=('mapbaselayer_set',),
            relations='max_extent'
        )
    })

    return  HttpResponse(t.render(c))
예제 #2
0
def ajax_load_matches(request):
    if not request.is_ajax():
        raise Http404

    league_id = request.GET.get('sendValue')

    sql_string = "SELECT MATCH_ID, HOME_TEAM_ID, VISITOR_TEAM_ID FROM sentiosp_drupal6.tf_match WHERE MATCH_LEAGUE_ID =" + league_id + ";"
    cursor = connection.cursor()
    cursor.execute(sql_string)
    matches = cursor.fetchall()

    home_team_ids = list(match[1] for match in matches)
    away_team_ids = list(match[2] for match in matches)
    team_ids = list(set(home_team_ids + away_team_ids))

    sql_string = "SELECT TEAM_ID, TEAM_NAME FROM sentiosp_drupal6.td_team WHERE "

    for team_id in team_ids:
        sql_string += " TEAM_ID = " + str(team_id) + " OR"

    sql_string += " FALSE"
    cursor = connection.cursor()
    cursor.execute(sql_string)
    returned_data = cursor.fetchall()
    team_names = dict(returned_data)

    data = list()

    for match in matches:
        try:
            data.append((match[0], team_names[match[1]], team_names[match[2]] ))
        except:
            print match
    return HttpResponse(simplejson.dumps(data), mimetype='application/json')
예제 #3
0
def load_players(request): # TODO : Gereksiz fazla cagiriliyor olabilir, kontrol et.
    if not request.is_ajax():
        raise Http404

    match_id = 17
    match = Match_info(match_id = match_id)
    match.save()

    teams = get_teams(match_id)

    rosters = [None,None]

    rosters[0] = get_match_roster(match_id, teams[0][0])
    rosters[1] = get_match_roster(match_id, teams[0][1])


    players = [list(),list()]
    for i in range(len(rosters)):
        for element in rosters[i]:
            name_string = element[1][0] + ". " + element[2]
            players[i].append((name_string,element[3]))

    players.append(teams[0])
    # TODO: Buradan sonrasi degisecek. Players list'indeki data ile doldur.

#    data = load_match_roster_with_id(17)
#    data_dict = dict((y, x) for x, y in data)
#
#    team_1_id = data_dict.values()[0]
#    sql_strings = ["", ""]
#    for key, value in data_dict.iteritems():
#        if value == team_1_id:
#            sql_strings[0] += " PLAYER_ID = " + str(key) + " OR"
#        else:
#            sql_strings[1] += " PLAYER_ID = " + str(key) + " OR"
#
#    team_players = list()
#    cursor = connection.cursor()
#    sql_string_base = "SELECT PLAYER_FULL_NAME, PLAYER_ID FROM sentiosp_drupal6.td_player WHERE "
#    for sql_string in sql_strings:
#        sql_string = sql_string_base + sql_string + " FALSE"
#        cursor.execute(sql_string)
#
#        data = cursor.fetchall()
#        data_list = list()
#
#        for element in data:
#            element_list = list(element)
#            element_list[0] = element[0].title()
#            data_list.append(element_list)
#
#        team_players.append(data_list)

    return HttpResponse(simplejson.dumps(players), mimetype='application/json')
예제 #4
0
def add_matix():
    data = xlrd.open_workbook(r'模糊关联实验数据.xlsx')
    table = data.sheets()[2]
    arr = []
    name = []
    x = table.row_values(0)[0]
    drgnum = {}
    rowc = table.nrows
    for i in range(rowc + 1):
        if i == rowc:
            arr.append(drgnum)
        else:
            if table.row_values(i)[0] != x:
                arr.append(drgnum)
                drgnum = {}
                x = table.row_values(i)[0]
            name.append(table.row_values(i)[1] + 'low')
            name.append(table.row_values(i)[1] + 'middle')
            name.append(table.row_values(i)[1] + 'high')
            if table.row_values(i)[3] != 0:
                drgnum[table.row_values(i)[1] + 'low'] = table.row_values(i)[3]
            if table.row_values(i)[4] != 0:
                drgnum[table.row_values(i)[1] +
                       'middle'] = table.row_values(i)[4]
            if table.row_values(i)[5] != 0:
                drgnum[table.row_values(i)[1] +
                       'high'] = table.row_values(i)[5]
    name = list(set(name))
    name1 = []
    for i in name:
        s = []
        s.append(i)
        name1.append(s)
    return name1, arr
예제 #5
0
def update_chart(request):
    if not request.is_ajax():
        raise Http404

    player_info_str = request.GET.getlist('sendValue[]')
    slider_values = player_info_str.pop(0).split(';')

    player_info = (player.split('-') for player in player_info_str) # Team_id , jersey_num

    match_id = Match_info.objects.all().reverse()[0].match_id # Latest match id

#    match_min_lower = '0'
#    match_min_upper = '90'

    match_min_lower = slider_values[0]
    match_min_upper = slider_values[1]

    data = list()

    if(len(player_info_str)):
        sql_string_base = "SELECT JERSEY_NUMBER, SUM(DISTANCE) FROM sentiosp_drupal6.tf_match_stats_processed WHERE MATCH_ID = "\
                    + str(match_id) + " AND MATCH_MINUTE <= " + match_min_upper \
                     + " AND MATCH_MINUTE >= " + match_min_lower
        cursor = connection.cursor()
        for player in player_info:
            sql_string = sql_string_base + " AND JERSEY_NUMBER = " + player[1] + " AND TEAM_ID = " + player[0]
            cursor.execute(sql_string)
            returned_data =  cursor.fetchone()
            if returned_data[0] is not None and returned_data[1] is not None:
                data.append(returned_data)

            print 'test'

#        for player in player_info:
#            sql_string += "( JERSEY_NUMBER = " + player[1] + " AND TEAM_ID = " + player[0] + " ) OR "
#        sql_string += "FALSE )"
#        cursor.execute(sql_string)
#        returned_data =  cursor.fetchall()

#    player_ids = request.GET.getlist('sendValue[]')
#    sql_string = "SELECT PLAYER_FULL_NAME, PLAYER_ID FROM sentiosp_drupal6.td_player WHERE "
#    for id in player_ids:
#        sql_string += " PLAYER_ID = " + id + " OR"
#    sql_string += " FALSE"

#    print sql_string

#    cursor = connection.cursor()
#    cursor.execute(sql_string)
#    data = cursor.fetchall()

    return HttpResponse(simplejson.dumps(data), mimetype='application/json')
예제 #6
0
def makenext(a):
    List = []
    for i in range(len(a)):
        for j in range(i + 1, len(a)):
            s = a[i] + a[j]
            s1 = list(set(s))
            if len(s1) == len(a[i]) + 1:
                flat = 0
                for k in List:
                    if set(s1).issubset(k) == True:
                        flat = 1
                if flat == 0:
                    List.append(s1)
    return List
예제 #7
0
def create_token(instance, created, *args, **kwargs):
    from multiprocessing.dummy import list
    ALPHABET = list('abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789')

    if created:
        i = instance.id
        if i == 0:
            return ALPHABET[0]
        s = ''
        base = len(ALPHABET)
        while i > 0:
            s += ALPHABET[i % base]
            i /= base
        instance.token = s[::-1]
        instance.save()
예제 #8
0
def add_matix():    
    data=xlrd.open_workbook(r'分组准备表1.xlsx')
    dic={}
    table=data.sheets()[1]
    rowc=table.nrows
    for i in range(rowc):
        str1=table.row_values(i)[0].strip()
        dic[str1]=[]
        dic[str1].append(round(table.row_values(i)[1],2))
        dic[str1].append(round(table.row_values(i)[2],2))
        dic[str1].append(round(table.row_values(i)[3],2))
        #print(str,dic[str])
    table=data.sheets()[0]
    arr=[]
    name=[]
    x=table.row_values(0)[0]
    drgnum={}
    rowc=table.nrows
    for i in range(rowc+1):
        if i==rowc:
            arr.append(drgnum)
        else:    
            if table.row_values(i)[0]!=x:
                arr.append(drgnum)
                drgnum={}
                x=table.row_values(i)[0]

            name.append(table.row_values(i)[1]+'low('+str(dic[table.row_values(i)[1]][0])+')')
            name.append(table.row_values(i)[1]+'middle('+str(dic[table.row_values(i)[1]][1])+')')
            name.append(table.row_values(i)[1]+'high('+str(dic[table.row_values(i)[1]][2])+')')
            if table.row_values(i)[3]!=0:
                drgnum[table.row_values(i)[1]+'low('+str(dic[table.row_values(i)[1]][0])+')']=table.row_values(i)[3]
            if table.row_values(i)[4]!=0:
                drgnum[table.row_values(i)[1]+'middle('+str(dic[table.row_values(i)[1]][1])+')']=table.row_values(i)[4]
            if table.row_values(i)[5]!=0:
                drgnum[table.row_values(i)[1]+'high('+str(dic[table.row_values(i)[1]][2])+')']=table.row_values(i)[5]
    name = list(set(name))
    name1=[]
    for i in name:
        s=[]
        s.append(i)
        name1.append(s)
    return name1,arr
예제 #9
0
from multiprocessing.dummy import list

__author__ = 'cingusoft'

ALPHABET = list("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789")

#Bijective methods for encode and decode id
def url_encode(i):
    if i == 0:
        return ALPHABET[0]
    s = ''
    base = len(ALPHABET)
    while i > 0:
        s += ALPHABET[i % base]
        i /= base
    return s[::-1]

def url_decode(s):
    i = 0
    base = len(ALPHABET)
    for char in s:
        i = i*base+ALPHABET.index(char)
    return i
예제 #10
0
from multiprocessing.dummy import list

__author__ = 'cingusoft'

ALPHABET = list(
    "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789")


#Bijective methods for encode and decode id
def url_encode(i):
    if i == 0:
        return ALPHABET[0]
    s = ''
    base = len(ALPHABET)
    while i > 0:
        s += ALPHABET[i % base]
        i /= base
    return s[::-1]


def url_decode(s):
    i = 0
    base = len(ALPHABET)
    for char in s:
        i = i * base + ALPHABET.index(char)
    return i