def send_invites(request): if not request.user.is_staff: return my_utils.return_error('Invalid') result=dict() result['success']=True result['message']='success' email_list = request.POST.get('email_list',False) if not email_list: return my_utils.return_error('No list') try: temp_emails = list(set(email_list.split('|'))) target_emails = list() for email in temp_emails: if re.match('[\w.]*@\w*\.[\w.]*',email): target_emails.append(email) print target_emails my_emailer.send_invitation_mail(request.user, target_emails) except Exception as e: print str(e) return my_utils.return_error('Failed') return HttpResponse(json.dumps(result, indent=4), mimetype='application/json')
def get_location_feeds(request): result=dict() result['success']=True result['message']='success' sw = request.GET.get('sw',False) ne = request.GET.get('ne',False) if not sw or not ne: return my_utils.return_error('No GPS') try: sw_lat, sw_lng = sw.split(",") ne_lat, ne_lng = ne.split(",") except Exception as e: print str(e) return my_utils.return_error('GPS Error') try: base_id = request.GET.get('base_id',False) additional = Q() if base_id: additional = Q(id__lt = base_id) feeds = Message.objects.filter(additional, lat__range=(sw_lat,ne_lat),lng__range=(sw_lng,ne_lng), is_deleted=False).order_by('-id')[:DEFAULT_LOAD_LENGTH] if len(feeds) == DEFAULT_LOAD_LENGTH: result['load_more']=True result['feeds']=my_utils.process_messages(request,feeds) except Exception as e: print str(e) return my_utils.return_error('Error') return HttpResponse(json.dumps(result, indent=4), mimetype='application/json')
def get_info_date(request): result=dict() result['success']=True result['message']='success' try: user = User.objects.get(username=request.user.username) except Exception as e: print str(e) return my_utils.return_error('Sign in') date = request.GET.get("date",False) month = request.GET.get("month",False) year = request.GET.get("year",False) if not (month and year and date): return my_utils.return_error('No Parameter') month = int(month) year = int(year) date = int(date) query_type = Q(start_time__range=(dt.date(year, month, date), dt.date(year, month, date) + dt.timedelta(1) )) additional = Q(host=user) | Q(invited_users__contains=user.username) | Q(is_public=True) try: events = Event.objects.filter(query_type,additional,is_deleted=False) result['events']=process_events(events , user) except Exception as e: print str(e) pass return HttpResponse(json.dumps(result, indent=4), mimetype='application/json')
def update_tab_feed(request): result = dict() result["success"] = True result["message"] = "success" message = "" attach_list = "" location_info = "" lat = "" lng = "" if request.method == "POST": if request.POST["message"]: message = smart_unicode(request.POST["message"], encoding="utf-8", strings_only=False, errors="strict") if request.POST["attach_list"]: attach_list = request.POST["attach_list"] if request.POST["location_info"]: location_info = request.POST["location_info"] try: location = location_info.split("|") lat = location[0] lng = location[1] except: pass tab_id = request.POST.get("tab", -1) if tab_id is -1: return my_utils.return_error("Empty Tab") if message is not "": try: user = User.objects.get(username=request.user.username) tab = Tab.objects.get(id=tab_id) print location_info try: new_message = TabFeed( author=user, tab=tab, contents=message, lat=lat, lng=lng, attach_files=attach_list ) new_message.save() except: return my_utils.return_error("Insert Failed") # FILE CHECK attach_arr = attach_list.split(".") for attach_id in attach_arr: try: if attach_id is "": continue attach = File.objects.get(id=attach_id) attach.is_attached = True attach.save() except Exception as e: print str(e) except: return my_utils.return_error("No such User") else: return my_utils.return_error("Empty Message") return HttpResponse(json.dumps(result, indent=4), mimetype="application/json")
def register_poll(request): result=dict() result['success']=True result['message']='success' title='' detail='' option_count='' public=False if request.method == 'POST': if request.POST['title']: title=smart_unicode(request.POST['title'], encoding='utf-8', strings_only=False, errors='strict') if request.POST['detail']: detail=smart_unicode(request.POST['detail'], encoding='utf-8', strings_only=False, errors='strict') if request.POST['option_count']: option_count=request.POST['option_count'] option_list = list() for i in range(0, int(option_count)): try: order = 'option'+str(i) if request.POST[order]: option_text = smart_unicode(request.POST[order], encoding='utf-8', strings_only=False, errors='strict') option_list.append(option_text) except Exception as e: print str(e) if title is not '' and len(option_list) is not 0: try: user = User.objects.get(username=request.user.username) except Exception as e: print str(e) return my_utils.return_error('No such User') try: new_poll = Poll(author=user,title=title,contents=detail) new_poll.save() except Exception as e: print str(e) return my_utils.return_error('Insert Failed') for option in option_list: try: new_poll_item = PollItem(poll=new_poll,detail=option) new_poll_item.save() except Exception as e: print str(e) return my_utils.return_error('Insert Failed') else: return my_utils.return_error('Emtpy Title') return HttpResponse(json.dumps(result, indent=4), mimetype='application/json')
def update_notice(request): result=dict() result['success']=True result['message']='success' message='' attach_list='' location_info='' lat = '' lng = '' if request.method == 'POST': if request.POST['message']: message=smart_unicode(request.POST['message'], encoding='utf-8', strings_only=False, errors='strict') if request.POST['attach_list']: attach_list=request.POST['attach_list'] if request.POST['location_info']: location_info=request.POST['location_info'] try: location = location_info.split("|") lat = location[0] lng = location[1] except: pass if message is not '': try: user = User.objects.get(username=request.user.username) try: new_notice = Notice(author=user,contents=message,lat=lat,lng=lng,attach_files=attach_list) new_notice.save() except: return my_utils.return_error('Insert Failed') #FILE CHECK attach_arr = attach_list.split('.') for attach_id in attach_arr: try: if attach_id is '': continue attach = File.objects.get(id=attach_id) attach.is_attached=True attach.save() except Exception as e: print str(e) except: return my_utils.return_error('No such User') else: return my_utils.return_error('Empty Message') return HttpResponse(json.dumps(result, indent=4), mimetype='application/json')
def send_message(request): result=dict() result['success']=True result['message']='success' receivers_text='' message='' if request.method == 'POST': if request.POST['message']: message=smart_unicode(request.POST['message'], encoding='utf-8', strings_only=False, errors='strict') if request.POST['receivers']: receivers_text=request.POST['receivers'] print message receivers = parser.detect_users(receivers_text) receiver_list='' for receiver in receivers: receiver_list += receiver + ',' print receiver_list if message is not '': try: user = User.objects.get(username=request.user.username) except: return my_utils.return_error('Sign in first') try: new_dm = DirectMessage(author=user,contents=message) new_dm.receivers = receiver_list new_dm.save() except: return my_utils.return_error('Send Message Failure') #TODO : SEND NOTIFICATION TO USERS #SEND NOTIFICATION for receiver in receivers: try: target_user = User.objects.get(username=receiver) info = dict() info['from'] = user info['to'] = target_user info['target_object'] = new_dm register_noti(request, "new_dm",info) except: pass else: return my_utils.return_error('empty message') return HttpResponse(json.dumps(result, indent=4), mimetype='application/json')
def update_tab_comment(request): result = dict() result["success"] = True result["message"] = "success" input_message = "" if request.method == "POST": if request.POST["message"]: input_message = smart_unicode( request.POST["message"], encoding="utf-8", strings_only=False, errors="strict" ) if request.POST["feed_id"]: feed_id = request.POST["feed_id"] if input_message is not "": try: user = User.objects.get(username=request.user.username) except: return my_utils.return_error("Please Sign in first") try: message = TabFeed.objects.filter(id=feed_id, is_deleted=False)[0] except: return my_utils.return_error("No such Message") try: new_comment = TabComment(author=user, contents=input_message, message=message) new_comment.save() message.save() except: return my_utils.return_error("Insert Failed") else: return my_utils.return_error("Empty Message") try: item = dict() item["id"] = new_comment.id item["author"] = new_comment.author.username # item['author_picture']=UserProfile.objects.get(user=new_comment.author).picture.url item["author_picture"] = my_utils.get_user_thumbnail(new_comment.author) item["author_name"] = new_comment.author.last_name item["contents"] = parser.parse_text(new_comment.contents) item["reg_date"] = str(new_comment.reg_date) result["comment"] = item except Exception as e: print str(e) return HttpResponse(json.dumps(result, indent=4), mimetype="application/json")
def get_user_feed(request,user_name): result=dict() result['success']=True result['message']='success' try: user = User.objects.get(username=user_name) base_id = request.GET.get("base_id",False) additional = Q() if base_id: additional = Q(id__lt=base_id) try: messages = Message.objects.filter(additional, author=user,is_deleted=False).order_by('-reg_date')[:DEFAULT_LOAD_LENGTH] result['feeds']=my_utils.process_messages(request,messages) if len(messages) == DEFAULT_LOAD_LENGTH: result['load_more']=True except: result['success']=True result['message']='Do not have any message' except: return my_utils.return_error('No Such User') return HttpResponse(json.dumps(result, indent=4), mimetype='application/json')
def delete_feed(request, feed_id): result=dict() result['success']=True result['message']='success' try: user = User.objects.get(username=request.user.username) try: message = Message.objects.get(author=user, id=feed_id) message.is_deleted=True message.save() try: related_topics = message.related_topics.split(",") for topic_name in related_topics: if topic_name: topic = Topic.objects.get(topic_name=topic_name) topic.reference_count -=1 topic.save() related_topic_timelines = TopicTimeline.objects.filter(message=message) for timeline in related_topic_timelines: timeline.delete() except Exception as e: print str(e)+"[11234]" pass except: result['success']=True result['message']='Invalid action' except: return my_utils.return_error('Please Sign in First') return HttpResponse(json.dumps(result, indent=4), mimetype='application/json')
def get_typed_notifications(request, typed): result=dict() result['success']=True result['message']='success' result['notis']=list() try: base_id = request.GET.get("base_id",False) additional = Q() if base_id: additional = Q(id__lt=base_id) user = User.objects.get(username=request.user.username) try: if typed == 'unread': unread_notis = UserNotification.objects.filter(additional,user=user,is_read=False).order_by('-reg_date')[:DEFAULT_LOAD_LENGTH] result['notis']=process_notis(request,unread_notis) if len(unread_notis) == DEFAULT_LOAD_LENGTH: result['load_more']=True else: read_notis = UserNotification.objects.filter(additional,user=user,is_read=True).order_by('-reg_date')[:DEFAULT_LOAD_LENGTH] result['notis']=process_notis(request,read_notis) if len(read_notis) == DEFAULT_LOAD_LENGTH: result['load_more']=True except Exception as e: print str(e) result['success']=True result['message']='Invalid action' except: return my_utils.return_error('Please Sign in First') return HttpResponse(json.dumps(result, indent=4), mimetype='application/json')
def update_event_comment(request): result=dict() result['success']=True result['message']='success' input_message='' if request.method == 'POST': if request.POST['message']: input_message=smart_unicode(request.POST['message'], encoding='utf-8', strings_only=False, errors='strict') if request.POST['event_id']: event_id = request.POST['event_id'] if input_message is not '': try: user = User.objects.get(username=request.user.username) except: return my_utils.return_error('Please Sign in first') try: event = Event.objects.filter(id=event_id,is_deleted=False)[0] except: return my_utils.return_error('No such Event') try: new_comment = EventComment(author=user,contents=input_message,event=event) new_comment.save() except: return my_utils.return_error('Insert Failed') #TODO: Add To event host & comment authors NOTIFICATION else: return my_utils.return_error('Empty Message') try: item = dict() item['id']=new_comment.id item['author']=new_comment.author.username item['author_picture']=UserProfile.objects.get(user=new_comment.author).picture.url item['author_name']=new_comment.author.last_name item['contents']= parser.parse_text(new_comment.contents) item['reg_date']= str(new_comment.reg_date) result['comment']=item except Exception as e: print str(e) return HttpResponse(json.dumps(result, indent=4), mimetype='application/json')
def load_my_timeline(request): result=dict() result['success']=True result['message']='success' try: user = User.objects.get(username=request.user.username) try: base_id = request.GET.get("base_id",False) to_id = request.GET.get("to_id",False) sort_method = request.GET.get("sort","reg_date") additional = Q() load_length=DEFAULT_LOAD_LENGTH if base_id: try: if sort_method == 'reg_date': timeline = UserTimeline.objects.get(id=base_id) additional = Q(message__reg_date__lt=timeline.message.reg_date) else: timeline = UserTimeline.objects.get(id=base_id) additional = Q(message__update_date__lt=timeline.message.update_date) except: pass if to_id: try: timeline = UserTimeline.objects.get(id=base_id) additional = Q(update_date__gte=timeline.update_date) except: pass if sort_method == 'reg_date': timelines = UserTimeline.objects.filter(additional,user=user,message__is_deleted=False).order_by('-message__reg_date')[:load_length] else: timelines = UserTimeline.objects.filter(additional,user=user,message__is_deleted=False).order_by('-message__update_date')[:load_length] if len(timelines) == DEFAULT_LOAD_LENGTH: result['load_more']=True messages = list() for timeline in timelines: try: if not timeline.message.is_deleted: timeline.message.base_id=timeline.id messages.append(timeline.message) except: pass result['feeds']=my_utils.process_messages(request,messages) except Exception as e: print str(e) result['success']=True result['message']='Do not have any message' except: return my_utils.return_error('No Such User') return HttpResponse(json.dumps(result, indent=4), mimetype='application/json')
def read_notification(request, noti_id): result=dict() result['success']=True result['message']='success' result['notifications']=list() try: user = User.objects.get(username=request.user.username) try: noti = UserNotification.objects.filter(user=user, id=noti_id)[0] noti.is_read=True noti.save() except Exception as e: print str(e) return my_utils.return_error('Invalid action') except: return my_utils.return_error('Please Sign in First') return HttpResponse(json.dumps(result, indent=4), mimetype='application/json')
def recent_user_graph(request): if not request.user.is_staff: return my_utils.return_error('You cannot access to this') date_before = 90 range_const = 1 end_time = now_datetime() start_time = end_time - dt.timedelta(date_before) in_start =request.GET.get("start",False) in_end = request.GET.get("end",False) if in_start and in_end: start_time, end_time, delta, date_before = get_start_end_time(in_start, in_end) data = list() time = start_time label_list = list() y = y_axis() y.min, y.max, y.steps = 0, 20, 5 while time < end_time: next_time = time + dt.timedelta(range_const) visit_count = UserLoginHistory.objects.filter(login_date__range=(time, next_time)).count() if visit_count > y.max: y.max = visit_count+5 data.append(visit_count) label_list.append(time.strftime("%B %d, %Y")) time = next_time #t = title(text="Data From "+start_time.strftime("%B %d, %Y")+" - To "+end_time.strftime("%B %d, %Y")+"") #t.style = "{font-size: 12px;text-align: right;padding-bottom:5px;}" l = line() l.values = data l.colour = "#325AAA" l.tip = "#x_label#<br>#val# Users Visited" chart = open_flash_chart() #chart.title = t chart.y_axis = y x = x_axis() lbl = x_axis_labels(steps=30,labels=label_list) x.labels = lbl x.steps = 15 chart.x_axis = x chart.bg_colour = '#FAFAFA' chart.add_element(l) return HttpResponse(chart.render())
def attend_event(request, event_id): result=dict() result['success']=True result['message']='success' result['events']=list() if request.method == 'POST': if request.POST['attend_type']: attend_type=request.POST['attend_type'] if attend_type not in ['yes','no','wait']: return my_utils.return_error('Invalid Status') try: user = User.objects.get(username=request.user.username) username = request.user.username username +="," except Exception as e: print str(e) return my_utils.return_error('Sign in') query_type = Q(host=user) | Q(invited_users__contains=username) | Q(is_public=True) query_type = (query_type) & Q(start_time__gt = datetime.now()) try: event = Event.objects.filter(query_type,is_deleted=False,id=event_id)[0] except Exception as e: print str(e) return my_utils.return_error('Invalid Action') try: event_attend = EventParticipate.objects.get_or_create(event=event, user=user)[0] event_attend.attend_status = attend_type event_attend.save() except Exception as e: print str(e) return my_utils.return_error('Insert Failure') return HttpResponse(json.dumps(result, indent=4), mimetype='application/json')
def favorite_action(request, feed_id): result=dict() result['success']=True result['message']='success' try: user = User.objects.get(username=request.user.username) except: return my_utils.return_error('Please Sign in first') try: message = Message.objects.filter(id=feed_id,is_deleted=False)[0] except: return my_utils.return_error('No such Message') try: user_favorite = UserFavorite.objects.get_or_create(message=message,user=user)[0] user_favorite.save() except Exception as e: print str(e) return my_utils.return_error('Insert Failed') return HttpResponse(json.dumps(result, indent=4), mimetype='application/json')
def get_info(request): result=dict() result['success']=True result['message']='success' month = request.GET.get("month",False) year = request.GET.get("year",False) if not (month and year): return my_utils.return_error('No Parameter') month = int(month) year = int(year) try: user = User.objects.get(username=request.user.username) except Exception as e: print str(e) return my_utils.return_error('Sign in') start_date = first_day_of_month(month,year) end_date = first_day_of_month(month+1,year) print 'hi' print start_date print end_date print '--' query_type = Q(start_time__range=(start_date,end_date)) additional = Q(host=user) | Q(invited_users__contains=user.username) | Q(is_public=True) try: events = Event.objects.filter(query_type,additional,is_deleted=False) result['events']=process_events(events , user) except Exception as e: print str(e) pass return HttpResponse(json.dumps(result, indent=4), mimetype='application/json')
def authority_update(request): if not request.user.is_staff: return my_utils.return_error('You don\'t have access.') result=dict() result['success']=True result['message']='success' user_list = request.POST.get('user_list',False) action = request.POST.get('action',False) if not user_list: return my_utils.return_error('No user.') if not action: return my_utils.return_error('No Action.') user_list = user_list.split('|') for user_id in user_list: if user_id == '': continue try: user = User.objects.get(id=user_id) user_profile = UserProfile.objects.get(user=user) if action == 'user': user.is_staff=False if action == 'admin': user.is_staff=True if action == 'activate': user_profile.is_deactivated = False if action == 'deactivate': user_profile.is_deactivated = True user.save() user_profile.save() except Exception as e: print str(e) pass return HttpResponse(json.dumps(result, indent=4), mimetype='application/json')
def topic_unfavorite(request, topic_id): result=dict() result['success']=True result['message']='success' try: user = User.objects.get(username=request.user.username) except: return my_utils.return_error('Please Sign in first') try: topic = Topic.objects.filter(id=topic_id)[0] except: return my_utils.return_error('No such Topic') try: user_topic_favorite = UserTopicFavorite.objects.filter(topic=topic,user=user)[0] user_topic_favorite.delete() except Exception as e: print str(e) return my_utils.return_error('Delete Failed') return HttpResponse(json.dumps(result, indent=4), mimetype='application/json')
def delete_tab_comment(request, comment_id): result = dict() result["success"] = True result["message"] = "success" try: user = User.objects.get(username=request.user.username) try: comment = TabComment.objects.get(author=user, id=comment_id) comment.is_deleted = True comment.save() except: result["success"] = True result["message"] = "Invalid action" except: return my_utils.return_error("Please Sign in First") return HttpResponse(json.dumps(result, indent=4), mimetype="application/json")
def delete_event_comment(request, comment_id): result=dict() result['success']=True result['message']='success' try: user = User.objects.get(username=request.user.username) try: comment = EventComment.objects.get(author=user, id=comment_id) comment.is_deleted=True comment.save() except: result['success']=True result['message']='Invalid action' except: return my_utils.return_error('Please Sign in First') return HttpResponse(json.dumps(result, indent=4), mimetype='application/json')
def load_event(request, load_type): result=dict() result['success']=True result['message']='success' result['events']=list() try: user = User.objects.get(username=request.user.username) username = request.user.username username +="," except Exception as e: print str(e) return my_utils.return_error('Sign in') query_type = Q(host=user) | Q(invited_users__contains=username) | Q(is_public=True) if load_type == 'upcoming': query_type = (query_type) & Q(start_time__gt = datetime.now()) elif load_type == 'past': query_type = (query_type) & Q(start_time__lte = datetime.now()) elif load_type == 'me': query_type = Q(host=user) base_id = request.GET.get("base_id",False) additional = Q() if base_id: try: event = Event.objects.get(id=base_id) additional = Q(reg_date__lt=event.reg_date) except: pass try: events = Event.objects.filter(query_type,additional,is_deleted=False).order_by('-start_time')[:DEFAULT_LOAD_LENGTH] result['events']=process_events(events , user) if len(events) == DEFAULT_LOAD_LENGTH: result['load_more']=True except Exception as e: print str(e) pass return HttpResponse(json.dumps(result, indent=4), mimetype='application/json')
def delete_reply(request, reply_id): result=dict() result['success']=True result['message']='success' try: user = User.objects.get(username=request.user.username) try: reply = DirectMessageReply.objects.get(author=user, id=reply_id) reply.is_deleted=True reply.save() except: result['success']=True result['message']='Invalid action' except: return my_utils.return_error('Please Sign in First') return HttpResponse(json.dumps(result, indent=4), mimetype='application/json')
def load_message(request, load_type): result=dict() result['success']=True result['error_message']='success' result['messages']=list() try: user = User.objects.get(username=request.user.username) username = request.user.username username +="," except Exception as e: print str(e) return my_utils.return_error('Sign in first') if load_type == 'all': query_type = Q(author=user) | Q(receivers__contains=username) elif load_type == 'sent': query_type = Q(author=user) elif load_type == 'received': query_type = Q(receivers__contains=username) base_id = request.GET.get("base_id",False) additional = Q() if base_id: try: d_message = DirectMessage.objects.get(id=base_id) additional = Q(reg_date__lt=d_message.reg_date) except: pass try: d_messages = DirectMessage.objects.filter(query_type, additional,is_deleted=False).order_by('-update_date')[:DEFAULT_LOAD_LENGTH] result['messages'] = process_messages(request, d_messages) if len(d_messages) == DEFAULT_LOAD_LENGTH: result['load_more']=True except Exception as e: print str(e) return HttpResponse(json.dumps(result, indent=4), mimetype='application/json')
def load_topic_timeline(request,topic_id): result=dict() result['success']=True result['message']='success' try: base_id = request.GET.get("base_id",False) additional = Q() if base_id: additional = Q(id__lt=base_id) topic = Topic.objects.get(id=topic_id) try: timelines = TopicTimeline.objects.filter(additional, topic=topic).order_by('-update_date')[:DEFAULT_LOAD_LENGTH] if not timelines: result['feeds']=my_utils.process_messages(request, list()) return HttpResponse(json.dumps(result, indent=4), mimetype='application/json') messages = list() for timeline in timelines: try: if not timeline.message.is_deleted: timeline.message.base_id=timeline.id messages.append(timeline.message) except: pass if len(timelines) == DEFAULT_LOAD_LENGTH: result['load_more']=True result['feeds']=my_utils.process_messages(request, messages) except Exception as e: print str(e) result['success']=True result['message']='Do not have any message' except: return my_utils.return_error('No Such Topic') return HttpResponse(json.dumps(result, indent=4), mimetype='application/json')
def get_user_at_feed(request,user_name): if user_name is '': return my_utils.return_error('user_name is empty') result=dict() result['success']=True result['message']='success' try: base_id = request.GET.get("base_id",False) additional = Q() if base_id: additional = Q(id__lt=base_id) messages = Message.objects.filter(additional, related_users__contains=user_name+',',is_deleted=False).order_by('-reg_date')[:DEFAULT_LOAD_LENGTH] result['feeds']=my_utils.process_messages(request,messages) if len(messages) == DEFAULT_LOAD_LENGTH: result['load_more']=True except: result['success']=True result['message']='Do not have any message' return HttpResponse(json.dumps(result, indent=4), mimetype='application/json')
def event_detail(request, event_id): result=dict() result['success']=True result['message']='success' try: user = User.objects.get(username=request.user.username) username = request.user.username username +="," except Exception as e: print str(e) return my_utils.return_error('Sign in') query_type = Q(host=user) | Q(invited_users__contains=username) | Q(is_public=True) try: events = Event.objects.filter(query_type,is_deleted=False,id=event_id) result['event']=process_events(events, user)[0] except Exception as e: print str(e) pass return HttpResponse(json.dumps(result, indent=4), mimetype='application/json')
def get_notifications(request): result=dict() result['success']=True result['message']='success' result['unread_notis']=list() try: user = User.objects.get(username=request.user.username) try: unread_notis = UserNotification.objects.filter(user=user, is_read=False).order_by('-reg_date')[:5] unread_notis_count = UserNotification.objects.filter(user=user, is_read=False).order_by('-reg_date').count() read_notis = UserNotification.objects.filter(user=user, is_read=True).order_by('-reg_date')[:5] result['unread_notis_count']=unread_notis_count result['unread_notis']=process_notis(request,unread_notis) result['read_notis']=process_notis(request,read_notis) except Exception as e: print str(e) result['success']=True result['message']='Invalid action' except: return my_utils.return_error('Please Sign in First') return HttpResponse(json.dumps(result, indent=4), mimetype='application/json')
def load_favorite(request, user_name): result=dict() result['success']=True result['message']='success' try: user = User.objects.get(username=user_name) try: base_id = request.GET.get("base_id",False) additional = Q() if base_id: additional = Q(id__lt=base_id) favorites = UserFavorite.objects.filter(additional, user=user,message__is_deleted=False).order_by('-reg_date')[:DEFAULT_LOAD_LENGTH] messages = list() for favorite in favorites: try: if not favorite.message.is_deleted: favorite.message.base_id=favorite.id messages.append(favorite.message) except Exception as e: print str(e) pass if len(favorites) == DEFAULT_LOAD_LENGTH: result['load_more']=True result['feeds']=my_utils.process_messages(request,messages) except: result['success']=True result['message']='Do not have any message' except: return my_utils.return_error('No Such User') return HttpResponse(json.dumps(result, indent=4), mimetype='application/json')