def apply_filters(self, query, params): if params.get('filter[signed]'): query = query.filter_by(signed=params.get('filter[signed]')) if params.get('filter[module_id]'): query = query.filter_by(module_id=params.get('filter[module_id]')) if params.get('filter[call_id]'): query = query.filter_by(call_id=params.get('filter[call_id]')) if params.get('filter[address]'): if params.get('filter[address]')[0:2] == '0x': account_id = params.get('filter[address]')[2:] elif params.get('filter[address]')[0:3] == 'did': did = Did.query(self.session).filter_by(did=params.get('filter[address]')).first() account_id = ss58_decode(did.address, SUBSTRATE_ADDRESS_TYPE) else: account_id = ss58_decode(params.get( 'filter[address]'), SUBSTRATE_ADDRESS_TYPE) query = query.filter_by(address=account_id) return query
def apply_filters(self, query, params): if params.get('filter[address]'): if len(params.get('filter[address]')) == 64: account_id = params.get('filter[address]') else: try: account_id = ss58_decode(params.get('filter[address]'), settings.SUBSTRATE_ADDRESS_TYPE) except ValueError: return query.filter(False) search_index = SearchIndex.query(self.session).filter( SearchIndex.index_type_id.in_([ settings.SEARCH_INDEX_BALANCETRANSFER, settings.SEARCH_INDEX_CLAIMS_CLAIMED, settings.SEARCH_INDEX_BALANCES_DEPOSIT, settings.SEARCH_INDEX_STAKING_REWARD ]), SearchIndex.account_id == account_id).order_by( SearchIndex.sorting_value.desc()) query = Event.query(self.session).filter( tuple_(Event.block_id, Event.event_idx).in_( [[s.block_id, s.event_idx] for s in search_index])).order_by(Event.block_id.desc()) return query
def apply_filters(self, query, params): if params.get('filter[address]'): if len(params.get('filter[address]')) == 64: account_id = params.get('filter[address]') else: try: account_id = ss58_decode(params.get('filter[address]'), settings.SUBSTRATE_ADDRESS_TYPE) except ValueError: return query.filter(False) else: account_id = None if params.get('filter[search_index]'): self.exclude_params = False if type(params.get('filter[search_index]')) != list: params['filter[search_index]'] = [ params.get('filter[search_index]') ] search_index = SearchIndex.query(self.session).filter( SearchIndex.index_type_id.in_( params.get('filter[search_index]')), SearchIndex.account_id == account_id).order_by( SearchIndex.sorting_value.desc()) query = query.filter( tuple_(Extrinsic.block_id, Extrinsic.extrinsic_idx).in_( [[s.block_id, s.extrinsic_idx] for s in search_index])) else: self.exclude_params = True if params.get('filter[signed]'): query = query.filter_by(signed=params.get('filter[signed]')) if params.get('filter[module_id]'): query = query.filter_by( module_id=params.get('filter[module_id]')) if params.get('filter[call_id]'): query = query.filter_by(call_id=params.get('filter[call_id]')) if params.get('filter[address]'): query = query.filter_by(address=account_id) return query
def apply_filters(self, query, params): if params.get('filter[address]'): if len(params.get('filter[address]')) == 64: account_id = params.get('filter[address]') else: try: account_id = ss58_decode(params.get('filter[address]'), settings.SUBSTRATE_ADDRESS_TYPE) except ValueError: return query.filter(False) else: account_id = None if params.get('filter[search_index]'): if type(params.get('filter[search_index]')) != list: params['filter[search_index]'] = [ params.get('filter[search_index]') ] search_index = SearchIndex.query(self.session).filter( SearchIndex.index_type_id.in_( params.get('filter[search_index]')), SearchIndex.account_id == account_id).order_by( SearchIndex.sorting_value.desc()) query = query.filter( tuple_(Event.block_id, Event.event_idx).in_([[s.block_id, s.event_idx] for s in search_index])) else: if params.get('filter[module_id]'): query = query.filter_by( module_id=params.get('filter[module_id]')) if params.get('filter[event_id]'): query = query.filter_by( event_id=params.get('filter[event_id]')) else: query = query.filter( Event.event_id.notin_( ['ExtrinsicSuccess', 'ExtrinsicFailed'])) return query
def apply_filters(self, query, params): if params.get('filter[author]'): if len(params.get('filter[author]')) == 64: account_id = params.get('filter[author]') else: try: account_id = ss58_decode(params.get('filter[author]'), settings.SUBSTRATE_ADDRESS_TYPE) except ValueError: return query.filter(False) query = query.filter_by(author=account_id) return query
def apply_filters(self, query, params): if params.get('filter[address]'): if len(params.get('filter[address]')) == 64: account_id = params.get('filter[address]') else: account_id = ss58_decode(params.get('filter[address]'), SUBSTRATE_ADDRESS_TYPE) query = query.filter_by(address=account_id) if params.get('filter[success]'): query = query.filter_by(success=True) if params.get('filter[error]'): query = query.filter_by(error=True) return query
def apply_filters(self, query, params): if params.get('filter[address]'): if len(params.get('filter[address]')) == 64: account_id = params.get('filter[address]') else: try: account_id = ss58_decode(params.get('filter[address]'), SUBSTRATE_ADDRESS_TYPE) except ValueError: return query.filter(False) else: account_id = None if params.get('filter[search_index]'): search_index = SearchIndex.query(self.session).filter_by( index_type_id=params.get('filter[search_index]'), account_id=account_id).order_by( SearchIndex.sorting_value.desc()) query = query.filter( tuple_(Event.block_id, Event.event_idx).in_([[s.block_id, s.event_idx] for s in search_index])) else: if params.get('filter[module_id]'): query = query.filter_by( module_id=params.get('filter[module_id]')) if params.get('filter[event_id]'): query = query.filter_by( event_id=params.get('filter[event_id]')) return query
def apply_filters(self, query, params): if params.get('filter[signed]'): query = query.filter_by(signed=params.get('filter[signed]')) if params.get('filter[module_id]'): query = query.filter_by(module_id=params.get('filter[module_id]')) if params.get('filter[call_id]'): query = query.filter_by(call_id=params.get('filter[call_id]')) if params.get('filter[address]'): if len(params.get('filter[address]')) == 64: account_id = params.get('filter[address]') else: account_id = ss58_decode(params.get('filter[address]'), SUBSTRATE_ADDRESS_TYPE) query = query.filter_by(address=account_id) return query