diff --git a/addons/hr_recruitment/models/hr_recruitment.py b/addons/hr_recruitment/models/hr_recruitment.py
index d6aacaebd58..02595f772e3 100644
--- a/addons/hr_recruitment/models/hr_recruitment.py
+++ b/addons/hr_recruitment/models/hr_recruitment.py
@@ -22,23 +22,10 @@ class RecruitmentSource(models.Model):
_inherits = {"utm.source": "source_id"}
source_id = fields.Many2one('utm.source', "Source", ondelete='cascade', required=True)
- url = fields.Char(string="Url parameters", compute='_compute_url')
- email = fields.Char(related='alias_id.alias_name', string="Email", readonly=True)
+ email = fields.Char(related='alias_id.display_name', string="Email", readonly=True)
job_id = fields.Many2one('hr.job', "Job ID")
alias_id = fields.Many2one('mail.alias', "Alias ID")
- @api.depends('source_id', 'source_id.name')
- @api.one
- def _compute_url(self):
- if not self.alias_id.id:
- self.url = ""
- else:
- self.url = werkzeug.url_encode({
- 'utm_campaign': self.env.ref('hr_recruitment.utm_campaign_job').name,
- 'utm_medium': self.env.ref('utm.utm_medium_website').name,
- 'utm_source': self.source_id.name
- })
-
@api.multi
def create_alias(self):
campaign = self.env.ref('hr_recruitment.utm_campaign_job')
diff --git a/addons/hr_recruitment/report/hr_recruitment_report.py b/addons/hr_recruitment/report/hr_recruitment_report.py
index 52fe9632018..2d6c9250986 100644
--- a/addons/hr_recruitment/report/hr_recruitment_report.py
+++ b/addons/hr_recruitment/report/hr_recruitment_report.py
@@ -29,6 +29,8 @@ class hr_recruitment_report(models.Model):
partner_id = fields.Many2one('res.partner', 'Partner', readonly=True)
delay_close = fields.Float('Avg. Delay to Close', digits=(16, 2), readonly=True, group_operator="avg", help="Number of Days to close the project issue")
last_stage_id = fields.Many2one('hr.recruitment.stage', 'Last Stage')
+ medium_id = fields.Many2one('utm.medium', 'Medium', readonly=True, help="This is the method of delivery. Ex: Postcard, Email, or Banner Ad")
+ source_id = fields.Many2one('utm.source', 'Source', readonly=True, help="This is the source of the link Ex: Search Engine, another domain, or name of email list")
def init(self, cr):
tools.drop_view_if_exists(cr, 'hr_recruitment_report')
@@ -48,6 +50,8 @@ class hr_recruitment_report(models.Model):
s.priority,
s.stage_id,
s.last_stage_id,
+ s.medium_id,
+ s.source_id,
sum(salary_proposed) as salary_prop,
(sum(salary_proposed)/count(*)) as salary_prop_avg,
sum(salary_expected) as salary_exp,
@@ -69,6 +73,8 @@ class hr_recruitment_report(models.Model):
s.type_id,
s.priority,
s.job_id,
- s.department_id
+ s.department_id,
+ s.medium_id,
+ s.source_id
)
""")
diff --git a/addons/hr_recruitment/views/hr_recruitment_views.xml b/addons/hr_recruitment/views/hr_recruitment_views.xml
index d01da6dbf94..b8ea391ea37 100644
--- a/addons/hr_recruitment/views/hr_recruitment_views.xml
+++ b/addons/hr_recruitment/views/hr_recruitment_views.xml
@@ -339,7 +339,7 @@
Jobs Sources
hr.recruitment.source
- tree,form
+ tree
[('job_id', '=', active_id)]
{'default_job_id': active_id}
@@ -642,29 +642,13 @@
hr.recruitment.source.tree
hr.recruitment.source
-
+
-
-
- hr.recruitment.source.form
- hr.recruitment.source
-
-
-
-
Sources of Applicants
hr.recruitment.source
diff --git a/addons/website_hr_recruitment/__openerp__.py b/addons/website_hr_recruitment/__openerp__.py
index 0d2664eb16e..9d04887474b 100644
--- a/addons/website_hr_recruitment/__openerp__.py
+++ b/addons/website_hr_recruitment/__openerp__.py
@@ -16,6 +16,7 @@ OpenERP Contact Form
'data/config_data.xml',
'views/hr_job_views.xml',
'views/templates.xml',
+ 'views/hr_recruitment_view.xml',
],
'demo': [
'data/hr_job_demo.xml',
diff --git a/addons/website_hr_recruitment/models/__init__.py b/addons/website_hr_recruitment/models/__init__.py
index 755183a1d3c..b9c76c98f6e 100644
--- a/addons/website_hr_recruitment/models/__init__.py
+++ b/addons/website_hr_recruitment/models/__init__.py
@@ -1 +1,2 @@
import hr_job
+import hr_recruitment_source
diff --git a/addons/website_hr_recruitment/models/hr_recruitment_source.py b/addons/website_hr_recruitment/models/hr_recruitment_source.py
new file mode 100644
index 00000000000..0f2d87eb5f9
--- /dev/null
+++ b/addons/website_hr_recruitment/models/hr_recruitment_source.py
@@ -0,0 +1,23 @@
+from urlparse import urljoin
+from werkzeug import url_encode
+
+from openerp import models, fields, api
+from openerp.addons.website.models.website import slug
+
+class HrRecruitmentSource(models.Model):
+ _inherit = 'hr.recruitment.source'
+
+ @api.depends('source_id', 'source_id.name', 'job_id')
+ @api.one
+ def _compute_url(self):
+ base_url = self.env['ir.config_parameter'].get_param('web.base.url')
+ for source in self:
+ source.url = urljoin(base_url, "%s?%s" % (source.job_id.website_url,
+ url_encode({
+ 'utm_campaign': self.env.ref('hr_recruitment.utm_campaign_job').name,
+ 'utm_medium': self.env.ref('utm.utm_medium_website').name,
+ 'utm_source': source.source_id.name
+ })
+ ))
+
+ url = fields.Char(compute='_compute_url', string='Url Parameters')
\ No newline at end of file
diff --git a/addons/website_hr_recruitment/views/hr_recruitment_view.xml b/addons/website_hr_recruitment/views/hr_recruitment_view.xml
new file mode 100644
index 00000000000..8c4b14dc984
--- /dev/null
+++ b/addons/website_hr_recruitment/views/hr_recruitment_view.xml
@@ -0,0 +1,13 @@
+
+
+
+ hr.recruitment.tree.inherit.url
+ hr.recruitment.source
+
+
+
+
+
+
+
+
\ No newline at end of file