def item_voucher_send(request, pk): try: item_voucher = ItemVoucher.objects.get(id=int(pk)) except ItemVoucher.DoesNotExist: return render(request, 'memecache/message.html', { 'message': 'פרס לא קיים', 'rtl': 'dir="rtl"' }) if None == get_product(request.user, str(item_voucher.product.id)): return render(request, 'memecache/message.html', { 'message': u'אין גישה לחנות', 'rtl': 'dir="rtl"' }) if item_voucher.customer != request.user: return render(request, 'memecache/message.html', { 'message': u'זה לא הפרס שלך', 'rtl': 'dir="rtl"' }) sender_name = get_user_fullname_or_username(request.user) html_message = render_to_string( "memecache/email_voucher_use.html", { 'ROOT_URL': kuterless.settings.SITE_URL, 'sender_name': sender_name, 'item_voucher': item_voucher }) to_users_list = [item_voucher.shop.admin_user] send_html_message_to_users(u'מימוש פרס של ' + sender_name, html_message, to_users_list) post_update_to_user(item_voucher.shop.admin_user.id, u'מימוש פרס של ' + sender_name, details_url=item_voucher.get_absolute_url()) return render(request, 'memecache/message.html', { 'message': 'הפרס נשלח למימוש', 'rtl': 'dir="rtl"' })
def item_voucher_send(request, pk): try: item_voucher = ItemVoucher.objects.get(id = int(pk)) except ItemVoucher.DoesNotExist: return render(request, 'memecache/message.html', { 'message' : 'פרס לא קיים', 'rtl': 'dir="rtl"'}) if None == get_product( request.user, str( item_voucher.product.id)): return render(request, 'memecache/message.html', { 'message' : u'אין גישה לחנות', 'rtl': 'dir="rtl"'}) if item_voucher.customer != request.user: return render(request, 'memecache/message.html', { 'message' : u'זה לא הפרס שלך', 'rtl': 'dir="rtl"'}) sender_name = get_user_fullname_or_username(request.user) html_message = render_to_string("memecache/email_voucher_use.html", {'ROOT_URL': kuterless.settings.SITE_URL, 'sender_name': sender_name, 'item_voucher': item_voucher}) to_users_list = [item_voucher.shop.admin_user] send_html_message_to_users(u'מימוש פרס של ' + sender_name, html_message, to_users_list) post_update_to_user(item_voucher.shop.admin_user.id, u'מימוש פרס של ' + sender_name, details_url = item_voucher.get_absolute_url()) return render(request, 'memecache/message.html', { 'message' : 'הפרס נשלח למימוש', 'rtl': 'dir="rtl"'})
def user_coplay_report(request, username=None): if username: try: user = User.objects.get(username=username) except User.DoesNotExist: return HttpResponse('User not found') else: user = request.user if not is_in_the_same_segment(user, request.user): return render(request, 'coplay/message.html', { 'message': 'משתמש ממודר', 'rtl': 'dir="rtl"' }) if user == request.user: page_name = u'הפעילות שלי ' else: page_name = u'הפעילות של ' + get_user_fullname_or_username(user) open_tasks_list_by_urgancy_list, closed_tasks_list_by_relevancy_list, aborted_tasks_list_by_relevancy_list, missed_tasks_list_by_relevancy_list = get_tasks_lists( ) active_discussions_by_urgancy_list, locked_discussions_by_relevancy_list = get_discussions_lists( ) user_s_open_tasks_list = [] other_users_open_tasks_list = [] failed_tasks_list = [] user_closed_tasks_list = [] for task in open_tasks_list_by_urgancy_list: if can_user_acess_discussion(task.parent, request.user): if task.responsible == user: user_s_open_tasks_list.append(task) else: discussion = task.parent if user in discussion.get_followers_list(): other_users_open_tasks_list.append(task) tasks_by_recent_closed_at_date = Task.objects.all().exclude( status=Task.MISSED).order_by("-closed_at") for task in tasks_by_recent_closed_at_date: discussion = task.parent if user in discussion.get_followers_list( ) and can_user_acess_discussion(discussion, request.user): status = task_get_status(task) if status == Task.ABORTED: failed_tasks_list.append(task) number_of_closed_tasks_for_others = 0 for task in closed_tasks_list_by_relevancy_list: if task.responsible == user: user_closed_tasks_list.append(task) if task.parent.owner != user: number_of_closed_tasks_for_others += 1 user_discussions_active = [] user_discussions_locked = [] for discussion in active_discussions_by_urgancy_list: if user in discussion.get_followers_list( ) and can_user_acess_discussion(discussion, request.user): user_discussions_active.append(discussion) for discussion in locked_discussions_by_relevancy_list: if user in discussion.get_followers_list( ) and can_user_acess_discussion(discussion, request.user): user_discussions_locked.append(discussion) number_of_closed_tasks = len(user_closed_tasks_list) number_of_views = 0 views_list = Viewer.objects.filter(user=user) for view in views_list: if view.discussion.owner != user: number_of_views += view.get_views_counter() number_of_feedbacks = user.feedback_set.all().count() number_of_votes = user.vote_set.all().count() number_of_task_closing = Task.objects.filter(closed_by=user).count() number_of_aborted_tasks = Task.objects.filter(status=Task.ABORTED, responsible=user).count() followers_list = get_followers_list(user) following_list = get_following_list(user) if request.user.is_authenticated(): is_following = is_user_is_following(request.user, user) else: is_following = False user_updates_query_set = user.recipient.all().order_by("-created_at") return render( request, 'coplay/coplay_report.html', { 'number_of_closed_tasks': number_of_closed_tasks, 'number_of_closed_tasks_for_others': number_of_closed_tasks_for_others, 'number_of_aborted_tasks': number_of_aborted_tasks, 'number_of_task_closing': number_of_task_closing, 'number_of_views': number_of_views, 'number_of_feedbacks': number_of_feedbacks, 'number_of_votes': number_of_votes, 'user_updates_that_viewer_can_access_list': user_updates_query_set, 'tasks_open_by_increased_time_left': user_s_open_tasks_list, 'tasks_others_open_by_increased_time_left': other_users_open_tasks_list, 'discussions_active_by_increase_time_left': user_discussions_active, 'discussions_locked_by_increase_locked_at': user_discussions_locked, 'tasks_closed_by_reverse_time': user_closed_tasks_list, 'tasks_failed_by_reverse_update_time': failed_tasks_list, 'applicabale_user': user, 'followers_list': followers_list, 'following_list': following_list, 'is_following': is_following, 'page_name': page_name, 'description': user.userprofile.description, 'location_desc': user.userprofile.location_desc, 'followed_discussions_tags': user.userprofile.followed_discussions_tags.all() })
def user_coplay_report(request, username=None): if username: try: user = User.objects.get(username=username) except User.DoesNotExist: return HttpResponse('User not found') else: user = request.user if not is_in_the_same_segment( user, request.user): return render(request, 'coplay/message.html', { 'message' : 'משתמש ממודר', 'rtl': 'dir="rtl"'}) if user == request.user: page_name = u'הפעילות שלי ' else: page_name = u'הפעילות של ' + get_user_fullname_or_username(user) open_tasks_list_by_urgancy_list, closed_tasks_list_by_relevancy_list, aborted_tasks_list_by_relevancy_list , missed_tasks_list_by_relevancy_list = get_tasks_lists() active_discussions_by_urgancy_list, locked_discussions_by_relevancy_list = get_discussions_lists() user_s_open_tasks_list = [] other_users_open_tasks_list = [] failed_tasks_list = [] user_closed_tasks_list = [] for task in open_tasks_list_by_urgancy_list: if can_user_acess_discussion(task.parent, request.user): if task.responsible == user: user_s_open_tasks_list.append(task) else: discussion = task.parent if user in discussion.get_followers_list(): other_users_open_tasks_list.append(task) tasks_by_recent_closed_at_date = Task.objects.all().exclude(status = Task.MISSED).order_by("-closed_at") for task in tasks_by_recent_closed_at_date: discussion = task.parent if user in discussion.get_followers_list() and can_user_acess_discussion(discussion, request.user): status = task_get_status(task) if status == Task.ABORTED: failed_tasks_list.append(task) number_of_closed_tasks_for_others = 0 for task in closed_tasks_list_by_relevancy_list: if task.responsible == user: user_closed_tasks_list.append(task) if task.parent.owner != user: number_of_closed_tasks_for_others +=1 user_discussions_active = [] user_discussions_locked = [] for discussion in active_discussions_by_urgancy_list: if user in discussion.get_followers_list() and can_user_acess_discussion( discussion, request.user): user_discussions_active.append(discussion) for discussion in locked_discussions_by_relevancy_list: if user in discussion.get_followers_list() and can_user_acess_discussion( discussion, request.user): user_discussions_locked.append(discussion) number_of_closed_tasks = len(user_closed_tasks_list) number_of_views = 0 views_list = Viewer.objects.filter( user = user) for view in views_list: if view.discussion.owner != user: number_of_views += view.get_views_counter() number_of_feedbacks = user.feedback_set.all().count() number_of_votes = user.vote_set.all().count() number_of_task_closing = Task.objects.filter( closed_by = user ).count() number_of_aborted_tasks = Task.objects.filter( status=Task.ABORTED, responsible = user ).count() followers_list = get_followers_list(user) following_list = get_following_list(user) if request.user.is_authenticated(): is_following = is_user_is_following(request.user, user) else: is_following = False user_updates_query_set = user.recipient.all().order_by("-created_at") return render(request, 'coplay/coplay_report.html', { 'number_of_closed_tasks' : number_of_closed_tasks, 'number_of_closed_tasks_for_others': number_of_closed_tasks_for_others, 'number_of_aborted_tasks' : number_of_aborted_tasks, 'number_of_task_closing' : number_of_task_closing, 'number_of_views' : number_of_views , 'number_of_feedbacks' : number_of_feedbacks , 'number_of_votes' : number_of_votes , 'user_updates_that_viewer_can_access_list': user_updates_query_set, 'tasks_open_by_increased_time_left': user_s_open_tasks_list, 'tasks_others_open_by_increased_time_left': other_users_open_tasks_list, 'discussions_active_by_increase_time_left': user_discussions_active, 'discussions_locked_by_increase_locked_at': user_discussions_locked, 'tasks_closed_by_reverse_time': user_closed_tasks_list, 'tasks_failed_by_reverse_update_time': failed_tasks_list, 'applicabale_user': user, 'followers_list' :followers_list, 'following_list' :following_list, 'is_following' :is_following, 'page_name': page_name, 'description': user.userprofile.description, 'location_desc': user.userprofile.location_desc, 'followed_discussions_tags': user.userprofile.followed_discussions_tags.all() } )