def showBookRankGraph(request): params = request.GET startDateISO = params.get('startDate', None) endDateISO = params.get('endDate', None) synthesizedParams = {} if startDateISO is None or endDateISO is None: today = datetime.datetime.today() + datetime.timedelta(1) endDate = datetime.datetime.strptime(toYYMMDD(today), _isoFmt) startDate = endDate - datetime.timedelta(7) startDateISO = toYYMMDD(startDate) endDateISO = toYYMMDD(endDate) numIntervals = (endDate - startDate).days else: startDate = awsRequest.parseISODate(startDateISO) endDate = awsRequest.parseISODate(endDateISO) + datetime.timedelta(1) numIntervals = (endDate - startDate).days if numIntervals < 0: msg = "The start-date needs to come before the end-date." elif numIntervals < 2: msg = "The start and end dates must be between 2 and 14 days apart." elif numIntervals > 14: msg = "The start and end dates must be between 2 and 14 days apart." else: msg = None if msg: return showBookRankGraphError(msg, params) msg = awsRequest.checkRange(startDate, endDate) if msg: return showBookRankGraphError(msg, params) return showBookRangeGraphHelper(params, synthesizedParams, startDate, endDate, startDateISO, endDateISO, numIntervals)
def getTweets_aux(request): params = request.GET asin = params['asin'] isoStartDate = params['isoDate'] log.debug("isoStartDate: %s", isoStartDate) startDate = awsRequest.parseISODate(isoStartDate) endDate = startDate + datetime.timedelta(1) tweets = awsRequest.getTweetsForAsinInInterval(asin, startDate, endDate) log.debug("Got %d tweets", len(tweets)) from django.utils import simplejson resultTweets = [] for tweet in tweets: user = tweet.twitterUser info = { 'text': tweet.text, 'id': tweet.id, 'tweetID': tweet.tweetId, 'name': user.userName, 'img': user.profileImageUrl, 'userID': user.userId } resultTweets.append(info) json = simplejson.dumps(resultTweets, indent=2) log.debug(" ==> json:%s", json) return HttpResponse(json, mimetype='application/json')