def set_capacity(c_data): __pg_request( conf.get_conf('queries.conf')['set_ability'].replace( '$name$', c_data['name']).replace('$description$', c_data['desc'])) return __pg_request( conf.get_conf('queries.conf')['get_ability_spe'].replace( '$name$', c_data['name']))
def update_codex(codex_id, name): __pg_request( conf.get_conf('queries.conf')['update_codex'].replace( '$name$', name).replace('$id$', codex_id)) return __pg_request( conf.get_conf('queries.conf')['get_codex_id'].replace( '$id$', codex_id))
def add_bottle(): bottle = conf.get_conf('bottle.conf') productor = conf.get_conf('productor.conf') if request.method == 'GET': title = "Add new bottles to your cave" button_label = 'Validate' button_targed_page = 'add.html' return render_template('add.html', title=title, page_title=page_title, bottle=bottle, button_label=button_label, productor=productor) else: #POST bottle_attribute_dic = {} #for attribute in bottle: # bottle_attribute_dic[db_name[attribute]] = request.form[attribute] #if m_save.add_bottle(bottle_attribute_dic): # title="Bottles added !" #else: title = 'Error in bottles creation' button_label = 'Return to the main page' button_target_page = '/index/' return render_template('add.html', title=title, page_title=page_title, button_label=button_label, button_target_page=button_target_page)
def set_list(l_data): __pg_request( conf.get_conf('queries.conf')['set_list'].replace( '$name$', l_data['name']).replace('$cid$', l_data['codex'])) return __pg_request( conf.get_conf('queries.conf')['get_list_by_name'].replace( '$name$', l_data['name']))
def set_squad(s_data): __pg_request( conf.get_conf('queries.conf')['set_squad'].replace( '$name$', s_data['name']).replace('$max$', s_data['s_max']).replace( '$min$', s_data['s_min'])) return __pg_request( conf.get_conf('queries.conf')['get_squad_id'].replace( '$name$', s_data['name']))
def set_weapon(data): # data is a dico __pg_request( conf.get_conf('queries.conf')['set_weapon'].replace( '$name$', data['name']).replace('$range$', data['range']).replace( '$type$', data['type']).replace('$S$', data['S']).replace( '$AP$', data['AP']).replace('$D$', data['D']).replace( '$abilities$', data['abilities']).replace('$cost$', data['cost'])) return __pg_request( conf.get_conf('queries.conf')['get_weapon_like'].replace( '$name$', data['name']))
def set_film(data_film): __pg_request( conf.get_conf('queries.conf')['set_film'].replace( '%NAME%', data_film['name']).replace('%CDATE%', data_film['creation']).replace( '%RESUME%', data_film['resume'])) for director in data_film['directors'].split(','): __pg_request( conf.get_conf('queries.conf')['set_film_creator'].replace( '%NAME%', data_film['name']).replace('%CREATOR%', director)) log.write_log('appli.log', 'm_IO.set_film | Create a new film ' + data_film['name']) return True
def add_film(): label_conf = conf.get_conf('template' + language + '.conf') if request.method == 'GET': return render_template( 'add_film.html' ,app_name = label_conf['app_name'] ,button_label = label_conf['return_button'] ,title = label_conf['add_label'] ,fields = label_conf['add_fields'] ,buttons = label_conf['add_button'] ,directors = io.get_directors_short() ) else: #POST request_data={} request_data['directors']='' i=True for key in request.form: if key[:9:] == 'directors': #director if i==True: i=False request_data['directors']=request.form[key] else: tmp=request_data['directors'] request_data['directors']=tmp+','+request.form[key] else: request_data[key]=request.form[key] io.set_film(request_data) return film()
def list_create(): field_list = {} for field in conf.get_conf('list.conf')['field'].split(','): if field.split(':')[1] == 'codex': codex.codex() field_list[field.split(':')[1]] = raw_input(field.split(':')[0]) print_lists(io.set_list(field_list))
def print_list(li): sep = ' | ' p_li = '* ' for field in conf.get_conf('list.conf')['display'].split(','): p_li = p_li + io.add_space(str(li[int(field.split(':')[2])]), int(field.split(':')[1])) + sep print p_li[:-2:] + '*'
def add_director(): label_conf = conf.get_conf('template' + language + '.conf') if request.method == 'GET': return render_template( 'add_director.html' ,app_name = label_conf['app_name'] ,button_label = label_conf['return_button'] ,fields=label_conf['add_director_fields'] ,buttons = label_conf['add_button'] ,nats=io.get_nationalities() ) else: #POST request_data={} request_data['nationalities']='' i=True for key in request.form: if key[:3:] == 'nat': if i==True: i=False request_data['nationalities']=request.form[key] else: tmp=request_data['nationalities'] request_data['nationalities']=tmp+','+request.form[key] else: request_data[key]=request.form[key] io.set_director(request_data) return creator()
def print_unit(unit): sep = ' | ' u = '* ' for field in conf.get_conf('unit.conf')['unit_display'].split(','): u = u + io.add_space(unit[int(field.split(':')[2])], int(field.split(':')[1])) + sep print u[:-2:] + '*'
def set_director(data_director): #insert director __pg_request( conf.get_conf('queries.conf')['set_director'].replace( '%NAME%', data_director['name']).replace( '%BIRTH%', data_director['birth']).replace( '%DEATH%', data_director['death']).replace("''", 'null')) for i in data_director['nationalities'].split(','): #insert nationalities __pg_request( conf.get_conf('queries.conf')['set_director_nat'].replace( '%NAME%', data_director['name']).replace('%NATID%', i)) log.write_log( 'appli.log', 'm_IO.set_director | Create a new director ' + data_director['name']) return True
def get_notes_spe(film_id): log.write_log( 'appli.log', 'm_IO.get_notes_films_spec | Get note table link with film name for one specific film' ) return __pg_request( conf.get_conf('queries.conf')['get_notes_spec'].replace( '%FILMID%', film_id))
def index(): label_conf = conf.get_conf('template' + language + '.conf') return render_template( 'index.html' ,app_name = label_conf['app_name'] ,title = label_conf['index_title'] ,options = label_conf['index_actions'].split(',') )
def set_nationality(data): __pg_request( conf.get_conf('queries.conf')['set_nat'].replace( '%LABEL%', data['label']).replace('%FULL%', data['full_name'])) log.write_log( 'appli.log', 'm_IO.set_nationality | add new nationality : ' + data['label']) return True
def creator(): label_conf = conf.get_conf('template' + language + '.conf') return render_template( 'display.html' ,app_name = label_conf['app_name'] ,button_label = label_conf['return_button'].split(',') ,title = label_conf['creator_title'] ,display_list = io.get_directors_nat() )
def notes(): label_conf = conf.get_conf('template' + language + '.conf') return render_template( 'display.html' ,app_name = label_conf['app_name'] ,button_label = label_conf['return_button'].split(',') ,title = label_conf['note_title'] ,display_list = io.get_notes_films() )
def index(): page_conf = conf.get_conf('context_index_' + language + '.conf') return render_template( 'index.html', app_name=app_n, title=page_conf['title'] # ,subtitle = page_conf['subtitle'] , options=page_conf['buttons'].split(','))
def set_unit(d): # d is a dico # TODO refactoring with foreach key in dico __pg_request( conf.get_conf('queries.conf')['set_unit'].replace( '$name$', d['name']).replace('$type$', d['type']).replace( '$codex$', d['codex']).replace('$M$', d['m']).replace( '$WS$', d['ws']).replace('$BS$', d['bs']).replace( '$S$', d['s']).replace('$T$', d['t']).replace( '$A$', d['a']).replace('$Ld$', d['ld']).replace( '$Sg$', d['sg']).replace('$point$', d['point']).replace( '$power$', d['power']).replace( '$W$', d['w']).replace( '$squad$', str(d['squad']))) return __pg_request( conf.get_conf('queries.conf')['get_unit_name'].replace( '$name$', d['name']))
def print_weapons(weapons): sep = ' | ' sep_line = io.add_space('', 104).replace(' ', '*') header = '* ' for field in conf.get_conf('weapon.conf')['fields_size'].split(','): header = header + io.add_space(field.split(':')[0], int(field.split(':')[1])) + sep header = header[:-2:] + '*' print sep_line print header print sep_line for weapon in weapons: print_weapon(weapon) print sep_line
def print_units(units): sep = ' | ' star = io.add_space('', 139).replace(' ', '*') header = '* ' for field in conf.get_conf('unit.conf')['unit_display'].split(','): header = header + io.add_space( field.split(':')[0], int(field.split(':')[1])) + sep header = header[:-2:] + '*' print star print header print star for unit in units: print_unit(unit) print star
def print_lists(lists): sep = ' | ' sep_line = io.add_space('', 83).replace(' ', '*') header = '* ' for field in conf.get_conf('list.conf')['display'].split(','): header = header + io.add_space( field.split(':')[0], int(field.split(':')[1])) + sep header = header[:-3:] + '*' print sep_line print header print sep_line for i_list in lists: print_list(i_list) print sep_line
def add_codex(): io.cls() print '****************************' print '* Current codex list *' print '****************************' print_codex(io.get_codex_full()) print '***********************' print '* Add a codex *' print '***********************' print_codex( io.set_codex( raw_input( conf.get_conf('codex.conf')['get_codex_label'].split(':')[1] + ' : '))) raw_input('Codex added ...')
def get_directors_nat(): data_nat = {} # compress director nat into list l[name] = {nat1, nat2} for record in __pg_request( conf.get_conf('queries.conf')['get_director_nat']): if record[0] in data_nat.keys(): data_nat[record[0]] = data_nat[record[0]] + ', ' + record[2] else: data_nat[record[0]] = record[2] directors = [] for director in __pg_request( conf.get_conf('queries.conf')['get_director']): tmp = [] for item in list(director): tmp.append(item) tmp.append(data_nat[director[0]]) directors.append(tuple(tmp)) log.write_log('appli.log', 'm_IO.get_director_nat | Get directors with nationality') return directors
def add_unit(squad_id): u_data = {} u_data['squad'] = squad_id for field in conf.get_conf('unit.conf')['unit_fields'].split(','): if field.split(':')[0] == 'codex': codex.codex() if field.split(':')[0] == 'type': ut.unit_type() u_data[field.split(':')[0]] = raw_input(field.split(':')[1] + ' ') unit_id = io.set_unit(u_data)[0][0] raw_input('\nUnit add, now link unit and weapon ' + str(unit_id)) io.cls() unit_weapon(unit_id) raw_input('all weapons added, now add abilities') unit_capacity(unit_id)
def set_note(data_note): __pg_request( conf.get_conf('queries.conf')['set_note'].replace( '%NOTEBY%', data_note['note_by']).replace( '%FNOTE%', data_note['final_note']).replace( '%ART%', data_note['art_note']).replace( '%STORY%', data_note['story_note']).replace( '%FUN%', data_note['fun_note']).replace( '%FILM%', data_note['film_id']).replace( '%COM%', data_note['comment'].replace("'", "''"))) log.write_log( 'appli.log', 'm_IO.get_notes_films | Get note table link with film name for one specific film' ) return True
def __pg_request(query): db_conf = conf.get_conf('db.conf') try: conn = pg.connect("dbname='" + str(db_conf['DB']) + "' user='******'USER']) + "' host='" + str(db_conf['IP']) + "' password='******'PWD']) + "'") cursor = conn.cursor() cursor.execute(query) data = cursor.fetchall() cursor.close() except ValueError: print 'Unable to connect database : \n' + ValueError m_log.write_log( 'appli.log', 'm_IO.add_bottle_pg | Unable to manage the database link' + str(ValueError)) return False return data
def get_weapon_spe(name): #name is a string return __pg_request( conf.get_conf('queries.conf')['get_weapon_like'].replace( '$name$', name))
def get_weapon_ids(ids): #ids = id1,id2,id3 return __pg_request( conf.get_conf('queries.conf')['get_weapon_ids'].replace('$id$', ids))