[IMP] added sub type of apllicant assigned and improved code for others,improved code for alias error,added unread message box

bzr revid: tpa@tinyerp.com-20130726120553-pkksdzihs8a3fq7d
This commit is contained in:
Turkesh Patel (Open ERP) 2013-07-26 17:35:53 +05:30
parent e4fd9bb105
commit 2973e67036
4 changed files with 53 additions and 9 deletions

View File

@ -94,6 +94,7 @@ class hr_applicant(base_stage, osv.Model):
_inherit = ['mail.thread', 'ir.needaction_mixin']
_track = {
'state': {
'hr_recruitment.mt_applicant_new': lambda self, cr, uid, obj, ctx=None: obj.state == 'draft',
'hr_recruitment.mt_applicant_hired': lambda self, cr, uid, obj, ctx=None: obj.state == 'done',
'hr_recruitment.mt_applicant_refused': lambda self, cr, uid, obj, ctx=None: obj.state == 'cancel',
},
@ -407,9 +408,6 @@ class hr_applicant(base_stage, osv.Model):
context['default_department_id'] = vals.get('department_id')
obj_id = super(hr_applicant, self).create(cr, uid, vals, context=context)
applicant = self.browse(cr, uid, obj_id, context=context)
if applicant.job_id:
self.pool.get('hr.job').message_post(cr, uid, [applicant.job_id.id], body=_('Applicant <b>created</b>'), subtype="hr_recruitment.mt_job_new_applicant", context=context)
return obj_id
def case_open(self, cr, uid, ids, context=None):

View File

@ -461,12 +461,13 @@
<field name="alias_user_id" ref="base.user_root"/>
</record>
<!-- Job-related subtypes for messaging / Chatter -->
<record id="mt_job_new_applicant" model="mail.message.subtype">
<field name="name">New Applicant</field>
<field name="res_model">hr.job</field>
</record>
<!-- Applicant-related subtypes for messaging / Chatter -->
<record id="mt_applicant_new" model="mail.message.subtype">
<field name="name">Applicant Created</field>
<field name="res_model">hr.applicant</field>
<field name="default" eval="False"/>
<field name="description">Applicant created</field>
</record>
<record id="mt_stage_changed" model="mail.message.subtype">
<field name="name">Stage Changed</field>
<field name="res_model">hr.applicant</field>
@ -485,12 +486,32 @@
<field name="default" eval="False"/>
<field name="description">Applicant refused</field>
</record>
<!-- Job-related subtypes for messaging / Chatter -->
<record id="mt_job_applicant_new" model="mail.message.subtype">
<field name="name">Applicant Created</field>
<field name="res_model">hr.job</field>
<field name="default" eval="False"/>
<field name="parent_id" eval="ref('mt_applicant_new')"/>
<field name="relation_field">job_id</field>
</record>
<record id="mt_job_applicant_stage" model="mail.message.subtype">
<field name="name">Application Stage Changed</field>
<field name="res_model">hr.job</field>
<field name="default" eval="False"/>
<field name="parent_id" eval="ref('mt_stage_changed')"/>
<field name="relation_field">job_id</field>
</record>
<record id="mt_job_applicant_new" model="mail.message.subtype">
<field name="name">Applicant Assigned</field>
<field name="res_model">hr.job</field>
<field name="default" eval="False"/>
<field name="parent_id" eval="ref('mt_applicant_hired')"/>
<field name="relation_field">job_id</field>
</record>
<!-- Applicant Categories(Tag) -->
<record id="tag_applicant_reserve" model="hr.applicant_category">
<field name="name">Reserve</field>

View File

@ -310,6 +310,18 @@
<field name="context">{'search_default_job_id': [active_id], 'default_job_id': active_id}</field>
</record>
<record id="view_job_filter_recruitment" model="ir.ui.view">
<field name="name">Job</field>
<field name="model">hr.job</field>
<field name="inherit_id" ref="hr.view_job_filter"/>
<field name="arch" type="xml">
<field name="department_id" positon="after">
<separator/>
<filter string="Unread Messages" name="message_unread" domain="[('message_unread','=',True)]"/>
</field>
</field>
</record>
<record id="hr_job_survey" model="ir.ui.view">
<field name="name">hr.job.form1</field>
<field name="model">hr.job</field>
@ -355,6 +367,7 @@
<field name="no_of_hired_employee"/>
<field name="manager_id"/>
<field name="survey_id"/>
<field name="message_summary"/>
<field name="state"/>
<templates>
<t t-name="kanban-box">
@ -373,7 +386,7 @@
</div>
<div class = "oe_kanban_content">
<t t-if="record.manager_id.raw_value">
<img t-att-src="kanban_image('hr.employee', 'image_medium', record.manager_id.raw_value[0])" class="oe_kanban_avatar oe_job_avatar"/>
<img t-att-src="kanban_image('hr.employee', 'image_medium', record.manager_id.raw_value[0])" t-att-title="record.manager_id.value" class="oe_kanban_avatar oe_job_avatar"/>
</t>
<t t-if="record.manager_id.raw_value === false">
<img t-att-src='_s + "/base/static/src/img/avatar.png"' class="oe_kanban_avatar oe_job_avatar"/>
@ -414,6 +427,9 @@
<a t-if="record.state.raw_value == 'open'" data-name="job_recruitment" data-type="object" class="oe_kanban_action">Launch Recruitment</a>
<a t-if="record.state.raw_value == 'recruit'" data-name="job_open" data-type="object" class="oe_kanban_action">Recruitment Done</a>
</div>
<div class="oe_kanban_footer_left oe_job_messages">
<t t-raw="record.message_summary.raw_value"/>
</div>
</div>
</div>
</t>

View File

@ -240,6 +240,15 @@ class mail_alias(osv.Model):
vals['alias_parent_model_id'] = model_id
return super(mail_alias, self).create(cr, uid, vals, context=context)
def write(self, cr, uid, ids, vals, context=None):
""""give uniqe alias name if given alias name is allready assigned"""
if vals.get('alias_name'):
alias_name = remove_accents(vals['alias_name']).lower().split('@')[0]
alias_name = re.sub(r'[^\w+.]+', '-', alias_name)
alias_name = self._find_unique(cr, uid, alias_name, context=context)
vals['alias_name'] = alias_name
write_res = super(mail_alias, self).write(cr, uid, ids, vals, context=context)
def open_document(self, cr, uid, ids, context=None):
alias = self.browse(cr, uid, ids, context=context)[0]
if not alias.alias_model_id or not alias.alias_force_thread_id: