From: Stephen Burrows Date: Tue, 12 Apr 2011 20:25:06 +0000 (-0400) Subject: Merge branch 'master' of git://github.com/lapilofu/philo X-Git-Tag: philo-0.9~15^2~3 X-Git-Url: http://git.ithinksw.org/philo.git/commitdiff_plain/b3e16b23802c9bc5a99193f9e9551b4378ee1119?hp=93055ee2e0b531ab2390d39402f0d6bbd0b08874 Merge branch 'master' of git://github.com/lapilofu/philo --- diff --git a/contrib/julian/models.py b/contrib/julian/models.py index 5dea7a3..5c49c7e 100644 --- a/contrib/julian/models.py +++ b/contrib/julian/models.py @@ -79,10 +79,10 @@ class TimedModel(models.Model): raise ValidationError("A %s cannot end before it starts." % self.__class__.__name__) def get_start(self): - return self.start_date + return datetime.datetime.combine(self.start_date, self.start_time) if self.start_time else self.start_date def get_end(self): - return self.end_date + return datetime.datetime.combine(self.end_date, self.end_time) if self.end_time else self.end_date class Meta: abstract = True diff --git a/contrib/sobol/models.py b/contrib/sobol/models.py index b653c09..e4e4202 100644 --- a/contrib/sobol/models.py +++ b/contrib/sobol/models.py @@ -130,13 +130,13 @@ class Click(models.Model): class SearchView(MultiView): results_page = models.ForeignKey(Page, related_name='search_results_related') searches = SlugMultipleChoiceField(choices=registry.iterchoices()) - enable_ajax_api = models.BooleanField("Enable AJAX API", default=True) + enable_ajax_api = models.BooleanField("Enable AJAX API", default=True, help_text="Search results will be available only by AJAX, not as template variables.") placeholder_text = models.CharField(max_length=75, default="Search") search_form = SearchForm def __unicode__(self): - return u"%s (%s)" % (self.placeholder_text, u", ".join([display for slug, display in registry.iterchoices()])) + return u"%s (%s)" % (self.placeholder_text, u", ".join([display for slug, display in registry.iterchoices() if slug in self.searches])) def get_reverse_params(self, obj): raise ViewCanNotProvideSubpath @@ -198,7 +198,7 @@ class SearchView(MultiView): }) else: context.update({ - 'searches': [{'verbose_name': verbose_name, 'url': self.reverse('ajax_api_view', kwargs={'slug': slug}, node=request.node)} for slug, verbose_name in registry.iterchoices()] + 'searches': [{'verbose_name': verbose_name, 'url': self.reverse('ajax_api_view', kwargs={'slug': slug}, node=request.node)} for slug, verbose_name in registry.iterchoices() if slug in self.searches] }) else: form = SearchForm() diff --git a/contrib/sobol/search.py b/contrib/sobol/search.py index 843af81..33603f3 100644 --- a/contrib/sobol/search.py +++ b/contrib/sobol/search.py @@ -362,7 +362,7 @@ else: def parse_response(self, response, limit=None): strainer = self.strainer soup = BeautifulSoup(response, parseOnlyThese=strainer) - return self.parse_results(soup[:limit]) + return self.parse_results(soup.findAll(recursive=False, limit=limit)) def parse_results(self, results): """