def set_record(self): try: high_score = DB.store_get('high_score') except KeyError: high_score = 0 if high_score < self.score: DB.store_put('high_score', self.score) DB.store_sync()
def load_servers(self): server_datas = DB.store_get('servers') self.servers = [] for server in server_datas: self.servers.append({ 'name': server.get('name', ''), 'url': server.get('url', ''), 'cmd': server.get('cmd', ''), 'repo': server.get('repo', '') }) self.servers.append({'name': '', 'url': '', 'cmd': '', 'repo': ''})
def set_theme(self, theme=None, *args): if not theme: theme = DB.store_get('theme') self.theme = theme self.background = THEME.get(theme).get('background') self.labels = THEME.get(theme).get('labels') self.free_place_notifier = THEME[self.theme]['labels'] self.change_board_color(self.labels) Window.clearcolor = self.background DB.store_put('theme', theme) DB.store_sync()
def deploy(self): if self.current == "deploy_screen": self.reset_screen() screen = self.current_screen if not self.branch: self.display_message(screen, u"'branch' is empty!")() self.display_error_buts_deployment() else: if not self.checked_servers: self.display_message( screen, u"at least check one server please!")() self.display_error_buts_deployment() else: requests = [] for server in self.checked_servers: name = server.input_box.name_input.text.strip() url = server.input_box.url_input.text.strip() cmd = server.input_box.cmd_input.text.strip() server_datas = DB.store_get('servers') repo = filter(lambda x: x['name'] == name, server_datas)[0].get('repo') tmp = [ self.display_message( screen, '%s authentication check' % name), self.authentication_check(name, url), self.display_message( screen, '%s branch check' % self.branch), self.branch_check(name, self.branch, repo), self.display_message(screen, '%s command check' % cmd), self.command_check(url, cmd) ] requests.extend(tmp) for server in self.checked_servers: name = server.input_box.name_input.text.strip() url = server.input_box.url_input.text.strip() cmd = server.input_box.cmd_input.text.strip() repo = filter(lambda x: x['name'] == name, server_datas)[0].get('repo') requests.append( self.display_message(screen, '%s deployment...' % name)) tmp_call = self.deploy_server(self.username, self.password, name, url, cmd, self.branch) requests.append(tmp_call) requests.append( self.display_message( screen, "Deployment complete for branch; '%s'" % self.branch)) self.reset_progess()(len(requests)) self.deploymentComplition(requests, output=True)
def __init__(self): global SOUND super(Kivy1010, self).__init__() SOUND = DB.store_get('sound') self.set_theme() self.sound = Sound() self.high_score = self.get_record() self.popup = None self.go() Clock.schedule_once(lambda x: self.check_update(), 5) Clock.schedule_once(lambda dt: self.update_score(), .04) self.movement_detect()
def delete_server(self, *args): name = self.input_box.name_input.text.strip() url = self.input_box.url_input.text.strip() repo = self.input_box.repo_input.text.strip() cmd = self.input_box.cmd_input.text.strip() tmp = {'name': name, 'url': url, 'cmd': cmd, 'repo': repo} servers = DB.store_get('servers') if filter(lambda x: x == tmp, servers): servers.pop(servers.index(tmp)) DB.store_put('servers', servers) DB.store_sync() root = findparent(self, Deployment) root.load_servers() root.servers_correction_screenbased('settings')
def add_server(self, *args): name = self.input_box.name_input.text.strip() url = self.input_box.url_input.text.strip() repo = self.input_box.repo_input.text.strip() cmd = self.input_box.cmd_input.text.strip() if name and url and cmd and repo: servers = DB.store_get('servers') servers.append({ 'name': name, 'url': url, 'cmd': cmd, 'repo': repo }) DB.store_put('servers', servers) DB.store_sync() root = findparent(self, Deployment) root.load_servers() root.servers_correction_screenbased('settings')
def __init__(self, *args, **kwargs): super(Deployment, self).__init__(*args, **kwargs) self.load_servers() self.servers_correction_screenbased('action') self.username = DB.store_get('username') self.password = DB.store_get('password')
def __init__(self, horizontal='', vertical='', spend='', level='', **kwargs): super(CustomPopup, self).__init__(**kwargs) self.board_h = horizontal self.board_v = vertical self.level = level self.spend = spend self.separator_height = 0 self.background = "" grid = self.children[0] grid.padding = (0, 0, 0, 0) box = None title = None for ch in grid.children: if str(ch).find('Label') != -1: ch.color = 0, 0, 0, 1 ch.bold = True title = CustomLabel(text=ch.text, color=ch.color, bold=ch.bold, size_hint=(1, None), height=20, padding=(5, 0)) color = filter(lambda x: str(x).find('Color') != -1, title.canvas.before.children)[0] color.rgba = (1, 1, 1, 1) grid.remove_widget(ch) elif str(ch).find('Widget') != -1: ch.size = (0, 0) elif str(ch).find('BoxLayout') != -1: grid.remove_widget(ch) box = ch else: grid.remove_widget(ch) if title: seperator = CustomLabel(size_hint=(1, None), height=2) color = filter(lambda x: str(x).find('Color') != -1, seperator.canvas.before.children)[0] color.rgba = HOVER grid.add_widget(title) grid.add_widget(seperator) if box: box.clear_widgets() try: board = DB.store_get('%sx%s-%s' % (self.board_h, self.board_v, self.level)) except KeyError: board = [] board.append({'name': DEF_USER, 'spend': self.spend, 'new': True}) board = sorted(board, key=lambda x: x['spend']) scroll = ScrollView() pre_box = GridLayout(cols=1, spacing=2, padding=(2, 2, 2, 0), size_hint_y=None) pre_box.bind(minimum_height=pre_box.setter('height')) for val in board: tmp_box = BoxLayout(orientation='horizontal', size_hint=(1, None), height=20, pos_hint={'top': 1}) if 'new' in val: label_name = TextInput(text=DEF_USER, focus=True, cursor_blink=True) label_name.bind(on_text_validate=self.dismiss) self.editable_text = label_name else: label_name = CustomLabel(text=val['name'], color=(0, 0, 0, 1)) label_spend = CustomLabel(text=':%s' % val['spend'], color=(0, 0, 0, 1)) tmp_box.add_widget(label_name) tmp_box.add_widget(label_spend) pre_box.add_widget(tmp_box) scroll.add_widget(pre_box) box.add_widget(scroll) box.padding = (0, 0, 0, 6) grid.add_widget(box) self.score_board = board
def get_record(self): try: high_score = DB.store_get('high_score') except KeyError: high_score = 0 return high_score
def get_synced_shapes(self): shapes = DB.store_get('shapes') return shapes
def get_synced_board(self): board = DB.store_get('board') return board
def set_score(self): self.score = DB.store_get('score')