diff --git a/pms/forms.py b/pms/forms.py
index 2f93df555..1614159b5 100644
--- a/pms/forms.py
+++ b/pms/forms.py
@@ -157,7 +157,11 @@ class ObjectiveForm(BaseForm):
for field_name, field_instance in self.fields.items():
if isinstance(field_instance, HorillaMultiSelectField):
self.errors.pop(field_name, None)
- if add_assignees and len(self.data.getlist(field_name)) < 1 and add_assignees:
+ if (
+ add_assignees
+ and len(self.data.getlist(field_name)) < 1
+ and add_assignees
+ ):
raise forms.ValidationError({field_name: "This field is required"})
cleaned_data = super().clean()
data = self.fields[field_name].queryset.filter(
@@ -217,6 +221,13 @@ class AddAssigneesForm(BaseForm):
table_html = render_to_string("common_form.html", context)
return table_html
+ def __init__(self, *args, **kwargs):
+ super().__init__(*args, **kwargs)
+ if self.instance:
+ self.fields["assignees"].queryset = self.fields[
+ "assignees"
+ ].queryset.exclude(id__in=self.instance.assignees.all())
+
class EmployeeObjectiveForm(BaseForm):
"""
@@ -242,7 +253,6 @@ class EmployeeObjectiveForm(BaseForm):
model = EmployeeObjective
fields = [
"objective_id",
- "key_result_id",
"start_date",
"end_date",
"status",
@@ -261,12 +271,11 @@ class EmployeeObjectiveForm(BaseForm):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
reload_queryset(self.fields)
- self.fields["key_result_id"].choices = list(
- self.fields["key_result_id"].choices
- )
- self.fields["key_result_id"].choices.append(
- ("create_new_key_result", "Create new Key result")
- )
+ try:
+ del self.fields["key_result_id"]
+ except Exception as _err:
+ pass
+
def as_p(self):
"""
diff --git a/pms/templates/okr/okr_list.html b/pms/templates/okr/okr_list.html
index ccf5cbcae..ae7339254 100644
--- a/pms/templates/okr/okr_list.html
+++ b/pms/templates/okr/okr_list.html
@@ -229,7 +229,7 @@
{% if perms.pms.add_employeeobjective %}
{% endif %}
{% if perms.pms.change_objective %}
@@ -571,7 +571,6 @@
})
activeTab = $(".oh-tabs__tab.oh-tabs__tab--active");
if (!activeTab.length) {
- console.log("++++++++");
$('[data-target="#self_objective"]').click()
}
});
diff --git a/pms/views.py b/pms/views.py
index 8de22ea0b..d0c7b37cf 100644
--- a/pms/views.py
+++ b/pms/views.py
@@ -672,7 +672,7 @@ def add_assignees(request, obj_id):
objective = Objective.objects.get(id=obj_id)
form = AddAssigneesForm(instance=objective)
if request.method == "POST":
- form = AddAssigneesForm(request.POST, objective)
+ form = AddAssigneesForm(request.POST, instance=objective)
if form.is_valid():
objective = form.save()
assignees = form.cleaned_data["assignees"]
@@ -746,12 +746,6 @@ def update_employee_objective(request, emp_obj_id):
form = EmployeeObjectiveForm(request.POST, instance=emp_objective)
if form.is_valid:
emp_obj = form.save(commit=False)
- krs = form.cleaned_data["key_result_id"]
- if krs:
- for kr in krs:
- emp_kr = EmployeeKeyResult(
- employee_objective_id=emp_objective, key_result_id=kr
- ).save()
emp_obj.save()
messages.success(request, _("Employee objective Updated successfully"))
return HttpResponse("")