def view_genre(self, msg): conn = sqlite3.connect('movies.db') c = conn.cursor() genre = (self.text,) for row in c.execute('SELECT * FROM films WHERE genre=?', genre): li.text = f'Genere selezionato: {self.text}' body_table = jp.Tbody(style='overflow:auto;', a=movie_table) row_table = jp.Tr(style='') div_table1 = jp.Td(style='width: 447px;', a=row_table) div_title_film = jp.Div(style='cursor: pointer;', text=row[0], a=div_table1, click=open_film) div_table2 = jp.Td(style='width: 183px;', a=row_table) div_director_film = jp.Div(style='cursor: pointer;', text=row[8], a=div_table2, click=open_film) div_table3 = jp.Td(style='width: 100px;', a=row_table) div_date_film = jp.Div(style='cursor: pointer;', text=row[3], a=div_table3, click=open_film) div_title_film.additional_properties = row div_director_film.additional_properties = row div_date_film.additional_properties = row row_table.additional_properties = {'Titolo': row[0], 'Regista': row[8], 'Data di uscita': row[3]} body_table.add(row_table) conn.commit() conn.close() button_sort_director.additional_properties = [self.text, 'Regista'] button_sort_title.additional_properties = [self.text, 'Titolo'] li2.set_classes('block') div1.remove_component(div2) movie_table.add(body_table) div1.add(div_sort_buttons) div1.add(movie_table)
def sort_by_director(self, msg): movie_table.delete_components() body_table_sorted = jp.Tbody(style='overflow:auto;') with open('movies.json', encoding="utf8") as f: data = json.load(f) data.sort(key=get_key_director) for i in data: if i['Major_Genre'] == self.additional_properties[0]: li.text = f'Genere selezionato: {self.additional_properties[0]}' row_table = jp.Tr(style='') div_table1 = jp.Td(style='width: 447px;', a=row_table) div_title_film = jp.Div(style='cursor: pointer;', text=i['Titolo'], a=div_table1, click=open_film) div_table2 = jp.Td(style='width: 183px;', a=row_table) div_director_film = jp.Div(style='cursor: pointer;', text=i['Regista'], a=div_table2, click=open_film) div_table3 = jp.Td(style='width: 100px;', a=row_table) div_date_film = jp.Div(style='cursor: pointer;', text=i['Data di uscita'], a=div_table3, click=open_film) div_title_film.additional_properties = [i] div_director_film.additional_properties = [i] div_date_film.additional_properties = [i] body_table_sorted.add(row_table) movie_table.add(body_table_sorted)
def view_genre(self, msg): with open('movies.json', encoding="utf8") as f: data = json.load(f) for i in data: if i['Major_Genre'] == self.text: li.text = f'Genere selezionato: {self.text}' body_table = jp.Tbody(style='overflow:auto;', a=movie_table) row_table = jp.Tr(style='') div_table1 = jp.Td(style='width: 447px;', a=row_table) div_title_film = jp.Div(style='cursor: pointer;', text=i['Titolo'], a=div_table1, click=open_film) div_table2 = jp.Td(style='width: 183px;', a=row_table) div_director_film = jp.Div(style='cursor: pointer;', text=i['Regista'], a=div_table2, click=open_film) div_table3 = jp.Td(style='width: 100px;', a=row_table) div_date_film = jp.Div(style='cursor: pointer;', text=i['Data di uscita'], a=div_table3, click=open_film) div_title_film.additional_properties = [i] div_director_film.additional_properties = [i] div_date_film.additional_properties = [i] row_table.additional_properties = { 'Titolo': i['Titolo'], 'Regista': i['Regista'], 'Data di uscita': i['Data di uscita'] } body_table.add(row_table) button_sort_director.additional_properties = [self.text, 'Regista'] button_sort_title.additional_properties = [self.text, 'Titolo'] li2.set_classes('block') div1.remove_component(div2) movie_table.add(body_table) div1.add(div_sort_buttons) div1.add(movie_table)
def sort_by_director(self, msg): movie_table.delete_components() body_table_sorted = jp.Tbody(style='overflow:auto;') conn = sqlite3.connect('movies.db') c = conn.cursor() for row in c.execute('SELECT * FROM films ORDER BY director'): if row[7] == self.additional_properties[0]: li.text = f'Genere selezionato: {self.additional_properties[0]}' row_table = jp.Tr(style='') div_table1 = jp.Td(style='width: 447px;', a=row_table) div_title_film = jp.Div(style='cursor: pointer;', text=row[0], a=div_table1, click=open_film) div_table2 = jp.Td(style='width: 183px;', a=row_table) div_director_film = jp.Div(style='cursor: pointer;', text=row[8], a=div_table2, click=open_film) div_table3 = jp.Td(style='width: 100px;', a=row_table) div_date_film = jp.Div(style='cursor: pointer;', text=row[3], a=div_table3, click=open_film) div_title_film.additional_properties = row div_director_film.additional_properties = row div_date_film.additional_properties = row body_table_sorted.add(row_table) movie_table.add(body_table_sorted)