@ -19,13 +19,13 @@ from .models import Event, Prospect, ActivityType
from . filters import ProspectFilter
from . forms import CSVImportForm
from . mixins import CRM AccessMixin
from . mixins import bizdev AccessMixin
import csv
from io import TextIOWrapper
from datetime import datetime
# @permission_required('crm.view_crm ', raise_exception=True)
# @permission_required('bizdev.view_bizdev ', raise_exception=True)
# def prospect_form(request, pk=None):
# # Get the prospect instance if pk is provided (edit mode)
# prospect = get_object_or_404(Prospect, pk=pk) if pk else None
@ -42,7 +42,7 @@ from datetime import datetime
# action = 'updated' if pk else 'added'
# messages.success(request,
# f'Prospect {prospect.entity_name} has been {action} successfully!')
# return redirect('crm :events')
# return redirect('bizdev :events')
# else:
# form = ProspectForm(instance=prospect)
@ -52,9 +52,9 @@ from datetime import datetime
# 'first_title': prospect.entity_name if prospect else 'Add Prospect',
# 'second_title': prospect.full_name() if prospect else None
# }
# return render(request, 'crm /prospect_form.html', context)
# return render(request, 'bizdev /prospect_form.html', context)
# # @permission_required('crm.view_crm ', raise_exception=True)
# # @permission_required('bizdev.view_bizdev ', raise_exception=True)
# # def add_prospect(request):
# # if request.method == 'POST':
# # entity_name = request.POST.get('entity_name')
@ -82,17 +82,17 @@ from datetime import datetime
# # modified_by=request.user
# # )
# # messages.success(request, f'Prospect {name} has been added successfully!')
# # return redirect('crm :events') # or wherever you want to redirect after success
# # return redirect('bizdev :events') # or wherever you want to redirect after success
# # except Exception as e:
# # messages.error(request, f'Error adding prospect: {str(e)}')
# # return render(request, 'crm /add_prospect.html')
# # return render(request, 'bizdev /add_prospect.html')
# class EventCreateView(CRM AccessMixin, CreateView):
# class EventCreateView(bizdev AccessMixin, CreateView):
# model = Event
# form_class = EventForm
# template_name = 'crm /event_form.html'
# success_url = reverse_lazy('crm :planned_events')
# template_name = 'bizdev /event_form.html'
# success_url = reverse_lazy('bizdev :planned_events')
# def get_initial(self):
# initial = super().get_initial()
@ -106,11 +106,11 @@ from datetime import datetime
# form.instance.modified_by = self.request.user
# return super().form_valid(form)
# class EditEventView(CRM AccessMixin, UpdateView):
# class EditEventView(bizdev AccessMixin, UpdateView):
# model = Event
# form_class = EventForm
# template_name = 'crm /event_form.html'
# success_url = reverse_lazy('crm :planned_events')
# template_name = 'bizdev /event_form.html'
# success_url = reverse_lazy('bizdev :planned_events')
# def form_valid(self, form):
# form.instance.modified_by = self.request.user
@ -118,7 +118,7 @@ from datetime import datetime
# messages.success(self.request, 'Event updated successfully!')
# return response
# class StartEventView(CRM AccessMixin, BaseUpdateView):
# class StartEventView(bizdev AccessMixin, BaseUpdateView):
# model = Event
# http_method_names = ['post', 'get']
@ -132,23 +132,23 @@ from datetime import datetime
# if event.type == 'MAIL':
# return HttpResponseRedirect(
# reverse_lazy('crm :setup_email_campaign', kwargs={'event_id': event.id})
# reverse_lazy('bizdev :setup_email_campaign', kwargs={'event_id': event.id})
# )
# elif event.type == 'SMS':
# return HttpResponseRedirect(
# reverse_lazy('crm :setup_sms_campaign', kwargs={'event_id': event.id})
# reverse_lazy('bizdev :setup_sms_campaign', kwargs={'event_id': event.id})
# )
# elif event.type == 'PRESS':
# return HttpResponseRedirect(
# reverse_lazy('crm :setup_press_release', kwargs={'event_id': event.id})
# reverse_lazy('bizdev :setup_press_release', kwargs={'event_id': event.id})
# )
# messages.success(request, 'Event started successfully!')
# return HttpResponseRedirect(reverse_lazy('crm :planned_events'))
# return HttpResponseRedirect(reverse_lazy('bizdev :planned_events'))
# class EventListView(CRM AccessMixin, ListView):
# class EventListView(bizdev AccessMixin, ListView):
# model = Event
# template_name = 'crm /events.html'
# template_name = 'bizdev /events.html'
# context_object_name = 'events' # We won't use this since we're providing custom context
# def get_context_data(self, **kwargs):
@ -161,9 +161,9 @@ from datetime import datetime
# ).order_by('-date')
# return context
# class ProspectListView(CRM AccessMixin, ListView):
# class ProspectListView(bizdev AccessMixin, ListView):
# model = Prospect
# template_name = 'crm /prospect_list.html'
# template_name = 'bizdev /prospect_list.html'
# context_object_name = 'prospects'
# filterset_class = ProspectFilter
@ -178,8 +178,8 @@ from datetime import datetime
# )
# return context
# class CSVImportView(CRM AccessMixin, FormView):
# template_name = 'crm /csv_import.html'
# class CSVImportView(bizdev AccessMixin, FormView):
# template_name = 'bizdev /csv_import.html'
# form_class = CSVImportForm
# success_url = reverse_lazy('prospect-list')
@ -247,10 +247,10 @@ from datetime import datetime
# return super().form_valid(form)
# class SendBulkEmailView(CRM AccessMixin, FormView):
# template_name = 'crm /send_bulk_email.html'
# class SendBulkEmailView(bizdev AccessMixin, FormView):
# template_name = 'bizdev /send_bulk_email.html'
# form_class = BulkEmailForm
# success_url = reverse_lazy('crm :prospect-list')
# success_url = reverse_lazy('bizdev :prospect-list')
# def form_valid(self, form):
# prospects = form.cleaned_data['prospects']