diff --git a/addons/hr_recruitment/__openerp__.py b/addons/hr_recruitment/__openerp__.py
index 0de2eb5c94e..1a6abbef976 100644
--- a/addons/hr_recruitment/__openerp__.py
+++ b/addons/hr_recruitment/__openerp__.py
@@ -19,12 +19,13 @@
# along with this program. If not, see .
#
##############################################################################
+
{
'name': 'Recruitment Process',
'version': '1.0',
'category': 'Human Resources',
- "sequence": 24,
- "summary": "Recruitment Process, Job Descriptions",
+ 'sequence': 24,
+ 'summary': 'Recruitment Process, Job Descriptions',
'description': """
Manages job positions and the recruitment process.
==================================================
@@ -46,7 +47,7 @@ system to store and search in your CV base.
'base_calendar',
'fetchmail',
],
- 'update_xml': [
+ 'data': [
'wizard/hr_recruitment_employee_hired.xml',
'wizard/hr_recruitment_create_partner_job_view.xml',
'hr_recruitment_view.xml',
@@ -57,19 +58,18 @@ system to store and search in your CV base.
'board_hr_recruitment_statistical_view.xml',
'hr_recruitment_installer_view.xml',
'res_config_view.xml',
- ],
- 'init_xml': [
'hr_recruitment_data.xml'
],
- 'demo_xml': [
+ 'demo': [
'hr_recruitment_demo.yml',
],
- 'test':[
- 'test/recruitment_process.yml',
- ],
+ 'js': ['static/src/js/hr_recruitment.js'],
+ 'test': [
+ 'test/recruitment_process.yml',
+ ],
'installable': True,
'auto_install': False,
- 'certificate' : '001073437025460275621',
+ 'certificate': '001073437025460275621',
'application': True,
}
diff --git a/addons/hr_recruitment/hr_recruitment.py b/addons/hr_recruitment/hr_recruitment.py
index 0ace2574d65..81a7ae6129e 100644
--- a/addons/hr_recruitment/hr_recruitment.py
+++ b/addons/hr_recruitment/hr_recruitment.py
@@ -198,6 +198,7 @@ class hr_applicant(base_stage, osv.Model):
When the case is over, the state is set to \'Done\'.\
If the case needs to be reviewed then the state is \
set to \'Pending\'.'),
+ 'categ_ids': fields.many2many('hr.applicant_category', string='Categories'),
'company_id': fields.many2one('res.company', 'Company'),
'user_id': fields.many2one('res.users', 'Responsible'),
# Applicant Columns
@@ -350,7 +351,7 @@ class hr_applicant(base_stage, osv.Model):
if isinstance(ids, (str, int, long)):
ids = [ids]
if update_vals is None: vals = {}
-
+
update_vals.update({
'description': msg.get('body'),
'email_from': msg.get('from'),
@@ -510,7 +511,7 @@ class hr_job(osv.osv):
_inherits = {'mail.alias': 'alias_id'}
_columns = {
'survey_id': fields.many2one('survey', 'Interview Form', help="Choose an interview form for this job position and you will be able to print/answer this interview from all applicants who apply for this job"),
- 'alias_id': fields.many2one('mail.alias', 'Alias', ondelete="cascade", required=True,
+ 'alias_id': fields.many2one('mail.alias', 'Alias', ondelete="cascade", required=True,
help="Email alias for this job position. New emails will automatically "
"create new applicants for this job position."),
}
@@ -521,13 +522,13 @@ class hr_job(osv.osv):
def _auto_init(self, cr, context=None):
"""Installation hook to create aliases for all jobs and avoid constraint errors."""
-
- # disable the unique alias_id not null constraint, to avoid spurious warning during
+
+ # disable the unique alias_id not null constraint, to avoid spurious warning during
# super.auto_init. We'll reinstall it afterwards.
self._columns['alias_id'].required = False
super(hr_job,self)._auto_init(cr, context=context)
-
+
registry = RegistryManager.get(cr.dbname)
mail_alias = registry.get('mail.alias')
hr_jobs = registry.get('hr.job')
@@ -555,7 +556,7 @@ class hr_job(osv.osv):
mail_alias = self.pool.get('mail.alias')
if not vals.get('alias_id'):
vals.pop('alias_name', None) # prevent errors during copy()
- alias_id = mail_alias.create_unique_alias(cr, uid,
+ alias_id = mail_alias.create_unique_alias(cr, uid,
# Using '+' allows using subaddressing for those who don't
# have a catchall domain setup.
{'alias_name': 'jobs+'+vals['name']},
@@ -573,7 +574,7 @@ class hr_job(osv.osv):
res = super(hr_job, self).unlink(cr, uid, ids, context=context)
mail_alias.unlink(cr, uid, alias_ids, context=context)
return res
-
+
def action_print_survey(self, cr, uid, ids, context=None):
if context is None:
context = {}
@@ -591,4 +592,12 @@ class hr_job(osv.osv):
'nodestroy':True,
}
+class applicant_category(osv.osv):
+ """ Category of applicant """
+ _name = "hr.applicant_category"
+ _description = "Category of applicant"
+ _columns = {
+ 'name': fields.char('Name', size=64, required=True, translate=True),
+ }
+
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/hr_recruitment/hr_recruitment_view.xml b/addons/hr_recruitment/hr_recruitment_view.xml
index 6261b17c45f..d1866f124af 100644
--- a/addons/hr_recruitment/hr_recruitment_view.xml
+++ b/addons/hr_recruitment/hr_recruitment_view.xml
@@ -176,6 +176,9 @@
+
+
+
@@ -265,6 +268,7 @@
+