def addExternalRating(request): if not request.user.is_authenticated(): return HttpResponseRedirect(reverse("auth_login")) else: url = request.POST['media_url'] if 'seen_date' in request.POST: seenDate = request.POST['seen_date'] else: seenDate = mediamanager.nowDateString() rating = int(request.POST['media_rating']) print "Loading from url: "+url c = Context() # do stuff here sourceMedia = None try: sourceMedia = mediamanager.addSourceMedia(url) except UnknownSourceError, e: # Can't help it, really c['ml_error'] = e.value return renderPage(request, "ml/addrating_result.html", c) except WebLoadError, e: # Couldn't parse the url c['ml_error'] = e.value # Store error mn = MediaNotification(message="URL add failure",url=url, date=mediamanager.nowDateTimeString(), host=str(request.META['REMOTE_ADDR']), user=request.user,info="Error: "+e.value) mn.save() return renderPage(request, "ml/addrating_result.html", c)
def __syncSource(self, rit): rit.lastImportDate = mediamanager.nowDateTimeString() loader = self.siteLoaders[rit.source] if not loader: rit.lastResult = RatingImportTask.RESULT_FAILED elif not loader.isValidRatingListUrl(rit.url): self.__err("invalid url for source "+str(rit.source.id), rit.user) rit.lastResult = RatingImportTask.RESULT_FAILED else: try: errors = loader.importFromRatingList(rit.user, rit.url) itemCount = loader.last_import_count errorCount = 0 if errors: errorCount = len(errors) self.__out("synchronized "+str(itemCount)+" items, "+str(errorCount)+" errors", rit.user) if errors: for e in errors: # non-fatal errors self.__out(str(e), rit.user) rit.lastResult = RatingImportTask.RESULT_OK except WebLoadError, e: self.__err("fatal error: "+str(e.value), rit.user) rit.lastResult = RatingImportTask.RESULT_FAILED except:
def media_notify(request, media_id): c = Context() try: media = Media.objects.get(pk=media_id) c['media'] = media c['type'] = media.type c['sources'] = media.sourcemedia_set.all() except Media.DoesNotExist: raise Http404 message = request.POST.get('message', '') info = request.POST.get('info', '') if message and len(message) > 0: if not request.user.is_authenticated(): raise HttpResponseForbidden # require user to make a correction mn = MediaNotification(user=request.user,media=media,message=message, date=mediamanager.nowDateTimeString(), info=info, host=str(request.META['REMOTE_ADDR'])) mn.save() return HttpResponseRedirect(reverse("ml_media_notify_done",args=[str(media.id)])) else: return renderPage(request, "ml/media_notify.html", c)
def __msg(self,message,out,user=None): if user: out.write(mediamanager.nowDateTimeString() + " [" + str(user.id) + "] " + message + "\n") else: out.write(mediamanager.nowDateTimeString() + " " + message + "\n")