def obj_update(self, bundle, **kwargs): bundle.obj = Repeater.get(kwargs['pk']) assert bundle.obj.domain == kwargs['domain'] bundle = self._update(bundle) assert bundle.obj.domain == kwargs['domain'] bundle.obj.save() return bundle
def quick_find(request): query = request.GET.get('q') redirect = request.GET.get('redirect') != 'false' if not query: return HttpResponseBadRequest('GET param "q" must be provided') def deal_with_couch_doc(doc): domain = doc.get('domain') or doc.get('domains', [None])[0] if request.couch_user.is_superuser or (domain and request.couch_user.is_domain_admin(domain)): doc_info = get_doc_info(doc, domain_hint=domain) else: raise Http404() if redirect and doc_info.link: messages.info(request, _("We've redirected you to the %s matching your query") % doc_info.type_display) return HttpResponseRedirect(doc_info.link) else: return json_response(doc_info) try: doc = get_db().get(query) except ResourceNotFound: pass else: return deal_with_couch_doc(doc) try: doc = Repeater.get_db().get(query) except ResourceNotFound: pass else: return deal_with_couch_doc(doc) raise Http404()
def quick_find(request): query = request.GET.get('q') redirect = request.GET.get('redirect') != 'false' if not query: return HttpResponseBadRequest('GET param "q" must be provided') def deal_with_couch_doc(doc): domain = doc.get('domain') or doc.get('domains', [None])[0] if request.couch_user.is_superuser or ( domain and request.couch_user.is_domain_admin(domain)): doc_info = get_doc_info(doc, domain_hint=domain) else: raise Http404() if redirect and doc_info.link: messages.info( request, _("We've redirected you to the %s matching your query") % doc_info.type_display) return HttpResponseRedirect(doc_info.link) elif request.couch_user.is_superuser: return HttpResponseRedirect('{}?id={}'.format( reverse('doc_in_es'), doc.get('_id'))) else: return json_response(doc_info) try: doc = get_db().get(query) except ResourceNotFound: pass else: return deal_with_couch_doc(doc) try: doc = Repeater.get_db().get(query) except ResourceNotFound: pass else: return deal_with_couch_doc(doc) raise Http404()
def obj_get_list(self, bundle, domain, **kwargs): repeaters = Repeater.by_domain(domain) return list(repeaters)