def _paginate(self, query, appstruct): """ wraps the current SQLA query with pagination """ if self.use_paginate: # Url builder for page links from functools import partial page_url = partial(get_page_url, request=self.request) current_page = self._get_current_page(appstruct) items_per_page = convert_to_int( appstruct.get('items_per_page', 30), 30 ) self.logger.debug( " + Page : %s, items per page : %s" % ( current_page, items_per_page ) ) self.logger.debug(query) page = paginate.Page( query, current_page, url=page_url, items_per_page=items_per_page ) self.logger.debug(page) return page else: return query
def get_max_allowedfilesize(): """ Return the max allowed filesize configured in autonomie """ default = 1048576 # 1MB settings = get_current_registry().settings size = settings.get("autonomie.maxfilesize", default) return convert_to_int(size, default)
def get_current_customer_id_from_request(request): """ Return the current customer from the request object :param obj request: The current pyramid request object """ result = None if 'customer' in request.params: result = convert_to_int(request.params.get('customer')) return result
def _get_max_allowed_file_size(self, request): """ Return the max allowed filesize configured in autonomie """ if self._max_allowed_file_size is None: settings = request.registry.settings size = settings.get("autonomie.maxfilesize", self.default_max_size) self._max_allowed_file_size = convert_to_int( size, self.default_max_size) return self._max_allowed_file_size
def _get_year_from_request(request): """ Retrieve the current year from the request Usefull for ExpenseKmType edition :param obj request: The Pyramid request object :returns: A year :rtype: int """ return convert_to_int(request.matchdict['year'], datetime.date.today().year)
def _get_current_page(self, appstruct): """ Return the current requested page """ if 'page' in self.request.GET: res = self.request.GET['page'] elif 'page' in appstruct: res = appstruct['page'] else: res = 1 return convert_to_int(res, 1)
def _get_max_allowed_file_size(self, request): """ Return the max allowed filesize configured in autonomie """ if self._max_allowed_file_size is None: settings = request.registry.settings size = settings.get("autonomie.maxfilesize", self.default_max_size) self._max_allowed_file_size = convert_to_int( size, self.default_max_size ) return self._max_allowed_file_size
def pre_format(self, appstruct): """ Pre format the posted appstruct to handle Estimation specific mechanisms """ payment_times = appstruct.pop('payment_times', None) if payment_times is not None: if convert_to_int(payment_times, 1) == -1: appstruct['manualDeliverables'] = 1 else: appstruct['manualDeliverables'] = 0 return appstruct
def test_convert_to_int(self): self.assertEqual(convert_to_int('25'), 25) self.assertEqual(convert_to_int('NOOK', 25), 25) self.assertRaises(ValueError, convert_to_int, 'NOOK')
def _get_current_page(self, appstruct): """ Return the current requested page """ res = self.request.GET.get('page', appstruct['page']) return convert_to_int(res)
def test_convert_to_int(self): self.assertEqual(convert_to_int("25"), 25) self.assertEqual(convert_to_int("NOOK", 25), 25) self.assertRaises(ValueError, convert_to_int, "NOOK")