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 0e74473f853..a74707e9ca0 100644 --- a/addons/hr_recruitment/hr_recruitment_view.xml +++ b/addons/hr_recruitment/hr_recruitment_view.xml @@ -176,6 +176,9 @@ + + + diff --git a/addons/hr_recruitment/security/ir.model.access.csv b/addons/hr_recruitment/security/ir.model.access.csv index 8b029c9324a..086e63e542b 100644 --- a/addons/hr_recruitment/security/ir.model.access.csv +++ b/addons/hr_recruitment/security/ir.model.access.csv @@ -8,3 +8,5 @@ access_survey_hr_user,survey.hr.user,survey.model_survey,base.group_hr_user,1,1, access_crm_meeting_hruser,crm.meeting.hruser,base_calendar.model_crm_meeting,base.group_hr_user,1,1,1,1 access_hr_recruitment_source_hr_officer,hr.recruitment.source,model_hr_recruitment_source,base.group_hr_user,1,1,1,1 access_hr_recruitment_source_all,hr.recruitment.source,model_hr_recruitment_source,,1,0,0,0 +access_hr_applicant_category,hr.applicant_category,model_hr_applicant_category,,1,0,0,0 +access_hr_applicant_category_manager,hr.applicant_category,model_hr_applicant_category,base.group_hr_manager,1,1,1,1 diff --git a/addons/project/security/ir.model.access.csv b/addons/project/security/ir.model.access.csv index 3f79cfee3de..d9f6cb9d2f6 100644 --- a/addons/project/security/ir.model.access.csv +++ b/addons/project/security/ir.model.access.csv @@ -18,3 +18,5 @@ access_account_analytic_line_project,account.analytic.line project,analytic.mode access_project_task_history,project.task.history project,project.model_project_task_history,project.group_project_user,1,1,1,0 access_project_task_history_cumulative,project.task.history project,project.model_project_task_history_cumulative,project.group_project_manager,1,0,0,0 access_resource_calendar,project.resource_calendar manager,resource.model_resource_calendar,project.group_project_manager,1,0,0,0 +access_project_category,project.project_category,model_project_category,,1,0,0,0 +access_project_category_manager,project.project_category,model_project_category,project.group_project_manager,1,1,1,1