diff --git a/addons/hr_recruitment/models/hr_job.py b/addons/hr_recruitment/models/hr_job.py index 745136ccb13..b38863a6510 100644 --- a/addons/hr_recruitment/models/hr_job.py +++ b/addons/hr_recruitment/models/hr_job.py @@ -27,6 +27,8 @@ class Job(models.Model): new_application_count = fields.Integer( compute='_compute_new_application_count', string="New Application", help="Number of applications that are new in the flow (typically at first step of the flow)") + old_application_count = fields.Integer( + compute='_compute_old_application_count', string="Old Application") manager_id = fields.Many2one( 'hr.employee', related='department_id.manager_id', string="Department Manager", readonly=True, store=True) @@ -100,6 +102,11 @@ class Job(models.Model): [("job_id", "=", job.id), ("stage_id", "=", job._get_first_stage().id)] ) + @api.depends('application_count', 'new_application_count') + def _compute_old_application_count(self): + for job in self: + job.old_application_count = job.application_count - job.new_application_count + def _alias_get_creation_values(self): values = super(Job, self)._alias_get_creation_values() values['alias_model_id'] = self.env['ir.model']._get('hr.applicant').id diff --git a/addons/hr_recruitment/models/hr_recruitment.py b/addons/hr_recruitment/models/hr_recruitment.py index bdd0e9afd4a..34eab92ed24 100644 --- a/addons/hr_recruitment/models/hr_recruitment.py +++ b/addons/hr_recruitment/models/hr_recruitment.py @@ -196,7 +196,7 @@ class Applicant(models.Model): application_data_mapped = dict((data['email_from'], data['email_from_count']) for data in application_data) applicants = self.filtered(lambda applicant: applicant.email_from) for applicant in applicants: - applicant.application_count = application_data_mapped.get(applicant.email_from, 1) - 1 + applicant.application_count = application_data_mapped.get(applicant.email_from, 1) (self - applicants).application_count = False @api.depends_context('lang') diff --git a/addons/hr_recruitment/static/src/scss/hr_job.scss b/addons/hr_recruitment/static/src/scss/hr_job.scss index e82bea66df9..cd52a47b952 100644 --- a/addons/hr_recruitment/static/src/scss/hr_job.scss +++ b/addons/hr_recruitment/static/src/scss/hr_job.scss @@ -3,7 +3,7 @@ &.o_kanban_ungrouped .o_kanban_record { width: 350px; &:not(.o_kanban_ghost) { - height: 180px; + height: 160px; @include media-breakpoint-down(sm) { height: 150px; } @@ -31,6 +31,10 @@ right: 30px; } } + + .text_top_padding{ + padding-top: 0.375rem; + } } .o_kanban_record_subtitle { diff --git a/addons/hr_recruitment/views/hr_job_views.xml b/addons/hr_recruitment/views/hr_job_views.xml index 9f93145579c..dccf91f95e4 100644 --- a/addons/hr_recruitment/views/hr_job_views.xml +++ b/addons/hr_recruitment/views/hr_job_views.xml @@ -24,6 +24,7 @@ +
@@ -60,9 +61,14 @@
-
+
+ +
+ Applications
+
+
-
+
diff --git a/addons/survey/controllers/main.py b/addons/survey/controllers/main.py index 21ca100b7d4..ba2d02bb75d 100644 --- a/addons/survey/controllers/main.py +++ b/addons/survey/controllers/main.py @@ -558,7 +558,6 @@ class Survey(http.Controller): return self._redirect_with_error(access_data, access_data['validity_code']) survey_sudo, answer_sudo = access_data['survey_sudo'], access_data['answer_sudo'] - return request.render('survey.survey_page_print', { 'is_html_empty': is_html_empty, 'review': review, diff --git a/addons/website_hr_recruitment/models/hr_recruitment.py b/addons/website_hr_recruitment/models/hr_recruitment.py index 58e7d72b671..9fa0c65b82e 100644 --- a/addons/website_hr_recruitment/models/hr_recruitment.py +++ b/addons/website_hr_recruitment/models/hr_recruitment.py @@ -3,7 +3,7 @@ from werkzeug import urls -from odoo import api, fields, models +from odoo import api, fields, models, _ from odoo.tools.translate import html_translate @@ -31,7 +31,9 @@ class Applicant(models.Model): def website_form_input_filter(self, request, values): if 'partner_name' in values: - values.setdefault('name', '%s\'s Application' % values['partner_name']) + applicant_job = self.env['hr.job'].sudo().search([('id', '=', values['job_id'])]).name if 'job_id' in values else False + name = '%s - %s' % (values['partner_name'], applicant_job) if applicant_job else _("%s's Application", values['partner_name']) + values.setdefault('name', name) if values.get('job_id'): stage = self.env['hr.recruitment.stage'].sudo().search([ ('fold', '=', False), diff --git a/addons/website_hr_recruitment/views/hr_job_views.xml b/addons/website_hr_recruitment/views/hr_job_views.xml index 7c4ed6ecfb5..28f757fc16e 100644 --- a/addons/website_hr_recruitment/views/hr_job_views.xml +++ b/addons/website_hr_recruitment/views/hr_job_views.xml @@ -11,11 +11,22 @@ Published + + +
+ + + +
+
- - Job Description - + + + Published + Not published + +
@@ -29,7 +40,7 @@