def test_contact_view_list(self): """Test Function to check Contact list""" response = self.client.get('/contact/') self.assertEqual(response.context['module'], 'contact_list') self.assertTrue(response.context['form'], ContactSearchForm(self.user)) self.assertEqual(response.status_code, 200) self.assertTemplateUsed(response, 'frontend/contact/list.html') request = self.factory.post('/contact/', data={ 'from_date': datetime.now(), 'to_date': datetime.now(), 'contact_name': '123' }) request.user = self.user request.session = {} response = contact_list(request) self.assertEqual(response.status_code, 200)
def contact_list(request): """Contact list for the logged in user **Attributes**: * ``template`` - dialer_contact/contact/list.html * ``form`` - ContactSearchForm **Logic Description**: * List all contacts from phonebooks belonging to the logged in user """ sort_col_field_list = ['id', 'phonebook', 'contact', 'status', 'first_name', 'last_name', 'email', 'updated_date'] pag_vars = get_pagination_vars(request, sort_col_field_list, default_sort_field='id') form = ContactSearchForm(request.user, request.POST or None) phonebook_id_list = Phonebook.objects.values_list('id', flat=True).filter(user=request.user) contact_no = '' contact_name = '' phonebook = '' contact_status = STATUS_CHOICE.ALL post_var_with_page = 0 if form.is_valid(): field_list = ['contact_no', 'contact_name', 'contact_status', 'phonebook'] unset_session_var(request, field_list) contact_no = getvar(request, 'contact_no', setsession=True) contact_name = getvar(request, 'contact_name', setsession=True) contact_status = getvar(request, 'contact_status', setsession=True) phonebook = getvar(request, 'phonebook', setsession=True) post_var_with_page = 1 if request.GET.get('page') or request.GET.get('sort_by'): post_var_with_page = 1 contact_no = request.session.get('session_contact_no') contact_name = request.session.get('session_contact_name') contact_status = request.session.get('session_contact_status') phonebook = request.session.get('session_phonebook') form = ContactSearchForm(request.user, initial={'contact_no': contact_no, 'contact_name': contact_name, 'status': contact_status, 'phonebook': phonebook}) if post_var_with_page == 0: # default # unset session var field_list = ['contact_no', 'contact_name', 'contact_status', 'phonebook'] unset_session_var(request, field_list) kwargs = {} if phonebook and phonebook != '0': kwargs['phonebook'] = phonebook if contact_status and int(contact_status) != STATUS_CHOICE.ALL: kwargs['status'] = contact_status contact_no_type = '1' contact_no = source_desti_field_chk(contact_no, contact_no_type, 'contact') for i in contact_no: kwargs[i] = contact_no[i] contact_list = [] all_contact_list = [] contact_count = 0 if phonebook_id_list: contact_list = Contact.objects.values('id', 'phonebook__name', 'contact', 'last_name', 'first_name', 'email', 'status', 'updated_date')\ .filter(phonebook__in=phonebook_id_list) if kwargs: contact_list = contact_list.filter(**kwargs) if contact_name: # Search on contact name contact_name_filter = ( Q(last_name__icontains=contact_name) | Q(first_name__icontains=contact_name) ) if contact_name_filter: contact_list = contact_list.filter(contact_name_filter) all_contact_list = contact_list.order_by(pag_vars['sort_order']) contact_list = all_contact_list[pag_vars['start_page']:pag_vars['end_page']] contact_count = all_contact_list.count() data = { 'contact_list': contact_list, 'all_contact_list': all_contact_list, 'total_contacts': contact_count, 'CONTACT_COLUMN_NAME': CONTACT_COLUMN_NAME, 'col_name_with_order': pag_vars['col_name_with_order'], 'msg': request.session.get('msg'), 'error_msg': request.session.get('error_msg'), 'form': form, } request.session['msg'] = '' request.session['error_msg'] = '' return render_to_response('dialer_contact/contact/list.html', data, context_instance=RequestContext(request))
def contact_list(request): """Contact list for the logged in user **Attributes**: * ``template`` - frontend/contact/list.html * ``form`` - ContactSearchForm **Logic Description**: * List all contacts from phonebooks belonging to the logged in user """ sort_col_field_list = ['id', 'phonebook', 'contact', 'status', 'first_name', 'last_name', 'updated_date'] default_sort_field = 'id' pagination_data =\ get_pagination_vars(request, sort_col_field_list, default_sort_field) PAGE_SIZE = pagination_data['PAGE_SIZE'] sort_order = pagination_data['sort_order'] start_page = pagination_data['start_page'] end_page = pagination_data['end_page'] form = ContactSearchForm(request.user) phonebook_id_list = Phonebook.objects.values_list('id', flat=True)\ .filter(user=request.user) search_tag = 1 contact_no = '' contact_name = '' phonebook = '' contact_status = STATUS_CHOICE.ALL if request.method == 'POST': form = ContactSearchForm(request.user, request.POST) if form.is_valid(): field_list = ['contact_no', 'contact_name', 'contact_status', 'phonebook'] unset_session_var(request, field_list) contact_no = getvar(request, 'contact_no', setsession=True) contact_name = getvar(request, 'contact_name', setsession=True) contact_status = getvar(request, 'contact_status', setsession=True) phonebook = getvar(request, 'phonebook', setsession=True) post_var_with_page = 0 try: if request.GET.get('page') or request.GET.get('sort_by'): post_var_with_page = 1 contact_no = request.session.get('session_contact_no') contact_name = request.session.get('session_contact_name') contact_status = request.session.get('session_contact_status') phonebook = request.session.get('session_phonebook') form = ContactSearchForm(request.user, initial={'contact_no': contact_no, 'contact_name': contact_name, 'status': contact_status, 'phonebook': phonebook}) else: post_var_with_page = 1 if request.method == 'GET': post_var_with_page = 0 except: pass if post_var_with_page == 0: # default # unset session var field_list = ['contact_no', 'contact_name', 'contact_status', 'phonebook'] unset_session_var(request, field_list) kwargs = {} if phonebook and phonebook != '0': kwargs['phonebook'] = phonebook if contact_status and int(contact_status) != STATUS_CHOICE.ALL: kwargs['status'] = contact_status contact_no_type = '1' contact_no = type_field_chk(contact_no, contact_no_type, 'contact') for i in contact_no: kwargs[i] = contact_no[i] contact_list = [] all_contact_list = [] contact_count = 0 if phonebook_id_list: contact_list = Contact.objects.values('id', 'phonebook__name', 'contact', 'last_name', 'first_name', 'status', 'updated_date')\ .filter(phonebook__in=phonebook_id_list) if kwargs: contact_list = contact_list.filter(**kwargs) if contact_name: # Search on contact name q = (Q(last_name__icontains=contact_name) | Q(first_name__icontains=contact_name)) if q: contact_list = contact_list.filter(q) all_contact_list = contact_list.order_by(sort_order) contact_list = all_contact_list[start_page:end_page] contact_count = all_contact_list.count() template = 'frontend/contact/list.html' data = { 'module': current_view(request), 'contact_list': contact_list, 'all_contact_list': all_contact_list, 'total_contacts': contact_count, 'PAGE_SIZE': PAGE_SIZE, 'CONTACT_COLUMN_NAME': CONTACT_COLUMN_NAME, 'col_name_with_order': pagination_data['col_name_with_order'], 'msg': request.session.get('msg'), 'error_msg': request.session.get('error_msg'), 'form': form, 'dialer_setting_msg': user_dialer_setting_msg(request.user), 'search_tag': search_tag, } request.session['msg'] = '' request.session['error_msg'] = '' return render_to_response(template, data, context_instance=RequestContext(request))
def contact_list(request): """Contact list for the logged in user **Attributes**: * ``template`` - frontend/contact/list.html * ``form`` - ContactSearchForm **Logic Description**: * List all contacts from phonebooks belonging to the logged in user """ sort_col_field_list = ["id", "phonebook", "contact", "status", "first_name", "last_name", "email", "updated_date"] default_sort_field = "id" pagination_data = get_pagination_vars(request, sort_col_field_list, default_sort_field) PAGE_SIZE = pagination_data["PAGE_SIZE"] sort_order = pagination_data["sort_order"] start_page = pagination_data["start_page"] end_page = pagination_data["end_page"] form = ContactSearchForm(request.user) phonebook_id_list = Phonebook.objects.values_list("id", flat=True).filter(user=request.user) search_tag = 1 contact_no = "" contact_name = "" phonebook = "" contact_status = STATUS_CHOICE.ALL if request.method == "POST": form = ContactSearchForm(request.user, request.POST) if form.is_valid(): field_list = ["contact_no", "contact_name", "contact_status", "phonebook"] unset_session_var(request, field_list) contact_no = getvar(request, "contact_no", setsession=True) contact_name = getvar(request, "contact_name", setsession=True) contact_status = getvar(request, "contact_status", setsession=True) phonebook = getvar(request, "phonebook", setsession=True) post_var_with_page = 0 try: if request.GET.get("page") or request.GET.get("sort_by"): post_var_with_page = 1 contact_no = request.session.get("session_contact_no") contact_name = request.session.get("session_contact_name") contact_status = request.session.get("session_contact_status") phonebook = request.session.get("session_phonebook") form = ContactSearchForm( request.user, initial={ "contact_no": contact_no, "contact_name": contact_name, "status": contact_status, "phonebook": phonebook, }, ) else: post_var_with_page = 1 if request.method == "GET": post_var_with_page = 0 except: pass if post_var_with_page == 0: # default # unset session var field_list = ["contact_no", "contact_name", "contact_status", "phonebook"] unset_session_var(request, field_list) kwargs = {} if phonebook and phonebook != "0": kwargs["phonebook"] = phonebook if contact_status and int(contact_status) != STATUS_CHOICE.ALL: kwargs["status"] = contact_status contact_no_type = "1" contact_no = type_field_chk(contact_no, contact_no_type, "contact") for i in contact_no: kwargs[i] = contact_no[i] contact_list = [] all_contact_list = [] contact_count = 0 if phonebook_id_list: contact_list = Contact.objects.values( "id", "phonebook__name", "contact", "last_name", "first_name", "email", "status", "updated_date" ).filter(phonebook__in=phonebook_id_list) if kwargs: contact_list = contact_list.filter(**kwargs) if contact_name: # Search on contact name q = Q(last_name__icontains=contact_name) | Q(first_name__icontains=contact_name) if q: contact_list = contact_list.filter(q) all_contact_list = contact_list.order_by(sort_order) contact_list = all_contact_list[start_page:end_page] contact_count = all_contact_list.count() template = "frontend/contact/list.html" data = { "contact_list": contact_list, "all_contact_list": all_contact_list, "total_contacts": contact_count, "PAGE_SIZE": PAGE_SIZE, "CONTACT_COLUMN_NAME": CONTACT_COLUMN_NAME, "col_name_with_order": pagination_data["col_name_with_order"], "msg": request.session.get("msg"), "error_msg": request.session.get("error_msg"), "form": form, "dialer_setting_msg": user_dialer_setting_msg(request.user), "search_tag": search_tag, } request.session["msg"] = "" request.session["error_msg"] = "" return render_to_response(template, data, context_instance=RequestContext(request))
def contact_list(request): """Contact list for the logged in user **Attributes**: * ``template`` - dialer_contact/contact/list.html * ``form`` - ContactSearchForm **Logic Description**: * List all contacts from phonebooks belonging to the logged in user """ sort_col_field_list = [ 'id', 'phonebook', 'contact', 'status', 'first_name', 'last_name', 'email', 'updated_date' ] pag_vars = get_pagination_vars(request, sort_col_field_list, default_sort_field='id') form = ContactSearchForm(request.user, request.POST or None) phonebook_id_list = Phonebook.objects.values_list( 'id', flat=True).filter(user=request.user) contact_no = '' contact_name = '' phonebook = '' contact_status = STATUS_CHOICE.ALL post_var_with_page = 0 if form.is_valid(): field_list = [ 'contact_no', 'contact_name', 'contact_status', 'phonebook' ] unset_session_var(request, field_list) contact_no = getvar(request, 'contact_no', setsession=True) contact_name = getvar(request, 'contact_name', setsession=True) contact_status = getvar(request, 'contact_status', setsession=True) phonebook = getvar(request, 'phonebook', setsession=True) post_var_with_page = 1 if request.GET.get('page') or request.GET.get('sort_by'): post_var_with_page = 1 contact_no = request.session.get('session_contact_no') contact_name = request.session.get('session_contact_name') contact_status = request.session.get('session_contact_status') phonebook = request.session.get('session_phonebook') form = ContactSearchForm(request.user, initial={ 'contact_no': contact_no, 'contact_name': contact_name, 'status': contact_status, 'phonebook': phonebook }) if post_var_with_page == 0: # default # unset session var field_list = [ 'contact_no', 'contact_name', 'contact_status', 'phonebook' ] unset_session_var(request, field_list) kwargs = {} if phonebook and phonebook != '0': kwargs['phonebook'] = phonebook if contact_status and int(contact_status) != STATUS_CHOICE.ALL: kwargs['status'] = contact_status contact_no_type = '1' contact_no = source_desti_field_chk(contact_no, contact_no_type, 'contact') for i in contact_no: kwargs[i] = contact_no[i] contact_list = [] all_contact_list = [] contact_count = 0 if phonebook_id_list: contact_list = Contact.objects\ .values('id', 'phonebook__name', 'contact', 'last_name', 'first_name', 'email', 'status', 'updated_date')\ .filter(phonebook__in=phonebook_id_list) if kwargs: contact_list = contact_list.filter(**kwargs) if contact_name: # Search on contact name contact_name_filter = (Q(last_name__icontains=contact_name) | Q(first_name__icontains=contact_name)) if contact_name_filter: contact_list = contact_list.filter(contact_name_filter) all_contact_list = contact_list.order_by(pag_vars['sort_order']) contact_list = all_contact_list[ pag_vars['start_page']:pag_vars['end_page']] contact_count = all_contact_list.count() data = { 'contact_list': contact_list, 'all_contact_list': all_contact_list, 'total_contacts': contact_count, 'CONTACT_COLUMN_NAME': CONTACT_COLUMN_NAME, 'col_name_with_order': pag_vars['col_name_with_order'], 'msg': request.session.get('msg'), 'error_msg': request.session.get('error_msg'), 'form': form, } request.session['msg'] = '' request.session['error_msg'] = '' return render_to_response('dialer_contact/contact/list.html', data, context_instance=RequestContext(request))
def contact_list(request): """Contact list for the logged in user **Attributes**: * ``template`` - frontend/contact/list.html * ``form`` - ContactSearchForm **Logic Description**: * List all contacts from phonebooks belonging to the logged in user """ sort_col_field_list = [ 'id', 'phonebook', 'contact', 'status', 'first_name', 'last_name', 'updated_date' ] default_sort_field = 'id' pagination_data =\ get_pagination_vars(request, sort_col_field_list, default_sort_field) PAGE_SIZE = pagination_data['PAGE_SIZE'] sort_order = pagination_data['sort_order'] start_page = pagination_data['start_page'] end_page = pagination_data['end_page'] form = ContactSearchForm(request.user) phonebook_id_list = Phonebook.objects.values_list('id', flat=True)\ .filter(user=request.user) search_tag = 1 contact_no = '' contact_name = '' phonebook = '' contact_status = STATUS_CHOICE.ALL if request.method == 'POST': form = ContactSearchForm(request.user, request.POST) if form.is_valid(): field_list = [ 'contact_no', 'contact_name', 'contact_status', 'phonebook' ] unset_session_var(request, field_list) contact_no = getvar(request, 'contact_no', setsession=True) contact_name = getvar(request, 'contact_name', setsession=True) contact_status = getvar(request, 'contact_status', setsession=True) phonebook = getvar(request, 'phonebook', setsession=True) post_var_with_page = 0 try: if request.GET.get('page') or request.GET.get('sort_by'): post_var_with_page = 1 contact_no = request.session.get('session_contact_no') contact_name = request.session.get('session_contact_name') contact_status = request.session.get('session_contact_status') phonebook = request.session.get('session_phonebook') form = ContactSearchForm(request.user, initial={ 'contact_no': contact_no, 'contact_name': contact_name, 'status': contact_status, 'phonebook': phonebook }) else: post_var_with_page = 1 if request.method == 'GET': post_var_with_page = 0 except: pass if post_var_with_page == 0: # default # unset session var field_list = [ 'contact_no', 'contact_name', 'contact_status', 'phonebook' ] unset_session_var(request, field_list) kwargs = {} if phonebook and phonebook != '0': kwargs['phonebook'] = phonebook if contact_status and int(contact_status) != STATUS_CHOICE.ALL: kwargs['status'] = contact_status contact_no_type = '1' contact_no = type_field_chk(contact_no, contact_no_type, 'contact') for i in contact_no: kwargs[i] = contact_no[i] contact_list = [] all_contact_list = [] contact_count = 0 if phonebook_id_list: contact_list = Contact.objects.values('id', 'phonebook__name', 'contact', 'last_name', 'first_name', 'status', 'updated_date')\ .filter(phonebook__in=phonebook_id_list) if kwargs: contact_list = contact_list.filter(**kwargs) if contact_name: # Search on contact name q = (Q(last_name__icontains=contact_name) | Q(first_name__icontains=contact_name)) if q: contact_list = contact_list.filter(q) all_contact_list = contact_list.order_by(sort_order) contact_list = all_contact_list[start_page:end_page] contact_count = all_contact_list.count() template = 'frontend/contact/list.html' data = { 'module': current_view(request), 'contact_list': contact_list, 'all_contact_list': all_contact_list, 'total_contacts': contact_count, 'PAGE_SIZE': PAGE_SIZE, 'CONTACT_COLUMN_NAME': CONTACT_COLUMN_NAME, 'col_name_with_order': pagination_data['col_name_with_order'], 'msg': request.session.get('msg'), 'error_msg': request.session.get('error_msg'), 'form': form, 'dialer_setting_msg': user_dialer_setting_msg(request.user), 'search_tag': search_tag, } request.session['msg'] = '' request.session['error_msg'] = '' return render_to_response(template, data, context_instance=RequestContext(request))