Advertisement
Guest User

test

a guest
Nov 18th, 2019
164
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 19.74 KB | None | 0 0
  1. @http.route('/jobs/apply/<model("hr.job"):job>', type='http', auth="public", website=True)
  2.  
  3. def jobs_apply(self, job):
  4.  
  5. error = {}
  6.  
  7. default = {}
  8.  
  9. source = request.env['hr.recruitment.source'].sudo().search([])
  10.  
  11. if 'l10n_mn_website_hr_recruitment_error' in request.session:
  12.  
  13. error = request.session.pop('l10n_mn_website_hr_recruitment_error')
  14.  
  15. default = request.session.pop('l10n_mn_website_hr_recruitment_default')
  16.  
  17. print' \n\n %s \n\n '%source
  18.  
  19. return request.render("l10n_mn_website_hr_recruitment.apply", {
  20.  
  21. 'job': job,
  22.  
  23. 'sources': source,
  24.  
  25. 'error': error,
  26.  
  27. 'default': default,
  28.  
  29. })
  30.  
  31. def _get_applicant_char_fields(self):
  32.  
  33. return ['email_from', 'partner_name', 'description',
  34.  
  35. ]
  36.  
  37. def _get_applicant_relational_fields(self):
  38.  
  39. return ['department_id', 'job_id']
  40.  
  41. @http.route('/jobs/education', methods=['POST'], type='http', auth="public", website=True)
  42.  
  43. def jobs_education(self, **post):
  44.  
  45. error = {}
  46.  
  47. default = {}
  48.  
  49. source = request.env['hr.recruitment.source'].sudo().search([])
  50.  
  51. soft1 = request.env['software.technic'].sudo().search([])
  52.  
  53. soft2 = request.env['software.technic'].sudo().search([])
  54.  
  55. soft3 = request.env['software.technic'].sudo().search([])
  56.  
  57. soft4 = request.env['software.technic'].sudo().search([])
  58.  
  59. soft5 = request.env['software.technic'].sudo().search([])
  60.  
  61. if 'l10n_mn_website_hr_recruitment_error' in request.session:
  62.  
  63. error = request.session.pop('l10n_mn_website_hr_recruitment_error')
  64.  
  65. default = request.session.pop('l10n_mn_website_hr_recruitment_default')
  66.  
  67. for field_name in []:
  68.  
  69. if not post.get(field_name):
  70.  
  71. error[field_name] = 'missing'
  72.  
  73. if error:
  74.  
  75. request.session['l10n_mn_website_hr_recruitment_error'] = error
  76.  
  77. ufile = post.pop('ufile')
  78.  
  79. if ufile:
  80.  
  81. error['ufile'] = 'reset'
  82.  
  83. request.session['l10n_mn_website_hr_recruitment_default'] = post
  84.  
  85. return request.redirect('/jobs/apply/%s' % post.get("job_id"))
  86.  
  87. # public user can't create applicants (duh)
  88.  
  89. env = request.env(user=SUPERUSER_ID)
  90.  
  91. value = {
  92.  
  93. 'source_id' : env.ref('hr_recruitment.source_website_company').id,
  94.  
  95. 'name': '%s\'s Application' % post.get('partner_name'),
  96.  
  97. }
  98.  
  99. applicant_id = env['hr.applicant'].create({
  100.  
  101. 'email_from':post.get('email_from'),
  102.  
  103. 'partner_name':post.get('partner_name'),
  104.  
  105. #'name':post.get('partner_name'),
  106.  
  107. 'job_id':int(post.get("job_id")),
  108.  
  109. 'department_id':int(post.get("department_id")),
  110.  
  111. 'name':value['name'],
  112.  
  113. 'description':post.get('description'),
  114.  
  115. 'last_name':post.get('last_name'),
  116.  
  117. 'gender':post.get('gender'),
  118.  
  119. 'date_of_birth':post.get('date_of_birth'),
  120.  
  121. 'age':post.get('age'),
  122.  
  123. 'place_of_birth':post.get('place_of_birth'),
  124.  
  125. 'ssnid':post.get('ssnid'),
  126.  
  127. 'major':post.get('major'),
  128.  
  129. 'address':post.get('address'),
  130.  
  131. 'partner_phone':post.get('phone'),
  132.  
  133. 'emergency_phone':post.get('emergency_phone'),}).id
  134.  
  135. job_obj = request.registry.get('hr.job')
  136.  
  137. job = job_obj.browse(request.cr, request.uid, int(post.get("job_id")), context=request.context)
  138.  
  139. x = None
  140.  
  141. if job.cv_settings_id.education_lines_set or (not job.cv_settings_id):
  142.  
  143. print'\n\n need education lines \n\n'
  144.  
  145. x = "l10n_mn_website_hr_recruitment.education"
  146.  
  147. elif job.cv_settings_id.employment_lines_set:
  148.  
  149. x = "l10n_mn_website_hr_recruitment.employment"
  150.  
  151. elif job.cv_settings_id.family_set:
  152.  
  153. x = "l10n_mn_website_hr_recruitment.family"
  154.  
  155. else : x = "l10n_mn_website_hr_recruitment.other"
  156.  
  157. print (post)
  158.  
  159. # return request.render("l10n_mn_website_hr_recruitment.education",
  160.  
  161. return request.render(x,
  162.  
  163. { 'job_id':job,
  164.  
  165. 'applicant_id':applicant_id,
  166.  
  167. 'sources': source,
  168.  
  169. 'error': error,
  170.  
  171. 'default': default,
  172.  
  173. 'soft1':soft1,
  174.  
  175. 'soft2':soft2,
  176.  
  177. 'soft3':soft3,
  178.  
  179. 'soft4':soft4,
  180.  
  181. 'soft5':soft5,
  182.  
  183. })
  184.  
  185. @http.route('/jobs/employment', methods=['POST'], type='http', auth="public", website=True)
  186.  
  187. def jobs_employment(self, **post):
  188.  
  189. error = {}
  190.  
  191. default = {}
  192.  
  193. source = request.env['hr.recruitment.source'].sudo().search([])
  194.  
  195. if 'l10n_mn_website_hr_recruitment_error' in request.session:
  196.  
  197. error = request.session.pop('l10n_mn_website_hr_recruitment_error')
  198.  
  199. default = request.session.pop('l10n_mn_website_hr_recruitment_default')
  200.  
  201. for field_name in []:
  202.  
  203. if not post.get(field_name):
  204.  
  205. error[field_name] = 'missing'
  206.  
  207. if error:
  208.  
  209. request.session['l10n_mn_website_hr_recruitment_error'] = error
  210.  
  211. ufile = post.pop('ufile')
  212.  
  213. if ufile:
  214.  
  215. error['ufile'] = 'reset'
  216.  
  217. request.session['l10n_mn_website_hr_recruitment_default'] = post
  218.  
  219. return request.redirect('/jobs/apply/%s' % post.get("job_id"))
  220.  
  221. # public user can't create applicants (duh)
  222.  
  223. env = request.env(user=SUPERUSER_ID)
  224.  
  225. school = []
  226.  
  227. language = []
  228.  
  229. courses = []
  230.  
  231. soft = []
  232.  
  233. if post.get('school_1'):
  234.  
  235. school.append((0,0,{ 'school_location':post.get('school_1'),
  236.  
  237. 'entered_date' :post.get('school_start_1'),
  238.  
  239. 'finished_date' :post.get('school_end_1'),
  240.  
  241. 'profession_name' :post.get('school_major_1'),
  242.  
  243. }))
  244.  
  245. if post.get('school_2'):
  246.  
  247. school.append((0,0,{ 'school_location':post.get('school_2'),
  248.  
  249. 'entered_date' :post.get('school_start_2'),
  250.  
  251. 'finished_date' :post.get('school_end_2'),
  252.  
  253. 'profession_name' :post.get('school_major_2'),
  254.  
  255. }))
  256.  
  257. if post.get('school_3'):
  258.  
  259. school.append((0,0,{ 'school_location':post.get('school_3'),
  260.  
  261. 'entered_date' :post.get('school_start_3'),
  262.  
  263. 'finished_date' :post.get('school_end_3'),
  264.  
  265. 'profession_name' :post.get('school_major_3'),
  266.  
  267. }))
  268.  
  269. if post.get('school_4'):
  270.  
  271. school.append((0,0,{ 'school_location':post.get('school_4'),
  272.  
  273. 'entered_date' :post.get('school_start_4'),
  274.  
  275. 'finished_date' :post.get('school_end_4'),
  276.  
  277. 'profession_name' :post.get('school_major_4'),
  278.  
  279. }))
  280.  
  281. if post.get('language_1'):
  282.  
  283. language.append((0,0,{ 'language':post.get('language_1'),
  284.  
  285. 'duration':post.get('language_duration_1'),
  286.  
  287. 'speaking_skill' :post.get('language_speak_1'),
  288.  
  289. 'reading_skill' :post.get('language_reading_1'),
  290.  
  291. 'listening_skill' :post.get('language_listen_1'),
  292.  
  293. 'writing_skill':post.get('language_write_1'),
  294.  
  295. }))
  296.  
  297. if post.get('language_2'):
  298.  
  299. language.append((0,0,{ 'language':post.get('language_2'),
  300.  
  301. 'duration':post.get('language_duration_2'),
  302.  
  303. 'speaking_skill' :post.get('language_speak_2'),
  304.  
  305. 'reading_skill' :post.get('language_reading_2'),
  306.  
  307. 'listening_skill' :post.get('language_listen_2'),
  308.  
  309. 'writing_skill':post.get('language_write_2'),
  310.  
  311. }))
  312.  
  313. if post.get('language_3'):
  314.  
  315. language.append((0,0,{ 'language':post.get('language_3'),
  316.  
  317. 'duration':post.get('language_duration_3'),
  318.  
  319. 'speaking_skill' :post.get('language_speak_3'),
  320.  
  321. 'reading_skill' :post.get('language_reading_3'),
  322.  
  323. 'listening_skill' :post.get('language_listen_3'),
  324.  
  325. 'writing_skill':post.get('language_write_3'),
  326.  
  327. }))
  328.  
  329. if post.get('language_4'):
  330.  
  331. language.append((0,0,{ 'language':post.get('language_4'),
  332.  
  333. 'duration':post.get('language_duration_4'),
  334.  
  335. 'speaking_skill' :post.get('language_speak_4'),
  336.  
  337. 'reading_skill' :post.get('language_reading_4'),
  338.  
  339. 'listening_skill' :post.get('language_listen_4'),
  340.  
  341. 'writing_skill':post.get('language_write_4'),
  342.  
  343. }))
  344.  
  345. if post.get('language_5'):
  346.  
  347. language.append((0,0,{ 'language':post.get('language_5'),
  348.  
  349. 'duration':post.get('language_duration_5'),
  350.  
  351. 'speaking_skill' :post.get('language_speak_5'),
  352.  
  353. 'reading_skill' :post.get('language_reading_5'),
  354.  
  355. 'listening_skill' :post.get('language_listen_5'),
  356.  
  357. 'writing_skill':post.get('language_write_5'),
  358.  
  359. }))
  360.  
  361. if post.get('course_1'):
  362.  
  363. courses.append((0,0,{ 'name':post.get('course_1'),
  364.  
  365. 'subject' :post.get('course_subject_1'),
  366.  
  367. 'date' :post.get('course_date_1'),
  368.  
  369. 'duration':post.get('course_duration_1'),
  370.  
  371. }))
  372.  
  373. if post.get('course_2'):
  374.  
  375. courses.append((0,0,{ 'name':post.get('course_2'),
  376.  
  377. 'subject' :post.get('course_subject_2'),
  378.  
  379. 'date' :post.get('course_date_2'),
  380.  
  381. 'duration':post.get('course_duration_2'),
  382.  
  383. }))
  384.  
  385. if post.get('course_3'):
  386.  
  387. courses.append((0,0,{ 'name':post.get('course_3'),
  388.  
  389. 'subject' :post.get('course_subject_3'),
  390.  
  391. 'date' :post.get('course_date_3'),
  392.  
  393. 'duration':post.get('course_duration_3'),
  394.  
  395. }))
  396.  
  397. if post.get('course_4'):
  398.  
  399. courses.append((0,0,{ 'name':post.get('course_4'),
  400.  
  401. 'subject' :post.get('course_subject_4'),
  402.  
  403. 'date' :post.get('course_date_4'),
  404.  
  405. 'duration':post.get('course_duration_4'),
  406.  
  407. }))
  408.  
  409. if post.get('course_5'):
  410.  
  411. courses.append((0,0,{ 'name':post.get('course_5'),
  412.  
  413. 'subject' :post.get('course_subject_5'),
  414.  
  415. 'date' :post.get('course_date_5'),
  416.  
  417. 'duration':post.get('course_duration_5'),
  418.  
  419. }))
  420.  
  421. if post.get('soft_1'):
  422.  
  423. soft.append((0,0,{ 'name':post.get('soft_1'),
  424.  
  425. 'software_skill' :post.get('soft_level_1'),
  426.  
  427. }))
  428.  
  429. if post.get('soft_2'):
  430.  
  431. soft.append((0,0,{ 'name':post.get('soft_2'),
  432.  
  433. 'software_skill' :post.get('soft_level_2'),
  434.  
  435. }))
  436.  
  437. if post.get('soft_3'):
  438.  
  439. soft.append((0,0,{ 'name':post.get('soft_3'),
  440.  
  441. 'software_skill' :post.get('soft_level_3'),
  442.  
  443. }))
  444.  
  445. if post.get('soft_4'):
  446.  
  447. soft.append((0,0,{ 'name':post.get('soft_4'),
  448.  
  449. 'software_skill' :post.get('soft_level_4'),
  450.  
  451. }))
  452.  
  453. if post.get('soft_5'):
  454.  
  455. soft.append((0,0,{ 'name':post.get('soft_5'),
  456.  
  457. 'software_skill' :post.get('soft_level_5'),
  458.  
  459. }))
  460.  
  461. app_obj = request.registry.get('hr.applicant')
  462.  
  463. app = app_obj.browse(request.cr, request.uid, int(post.get('applicant_id')), context=request.context)
  464.  
  465. app.write({ 'education_lines': school,
  466.  
  467. 'language_lines': language,
  468.  
  469. 'course_lines': courses ,
  470.  
  471. 'software_skill_lines': soft})
  472.  
  473. job_obj = request.registry.get('hr.job')
  474.  
  475. job = job_obj.browse(request.cr, request.uid, app.job_id.id, context=request.context)
  476.  
  477. print'\n\n------selected listening skill is %s ------\n\n' %post.get('language_listen_1')
  478.  
  479. x = None
  480.  
  481. if (job.cv_settings_id and job.cv_settings_id.employment_lines_set) or (not job.cv_settings_id):
  482.  
  483. x = "l10n_mn_website_hr_recruitment.employment"
  484.  
  485. elif (job.cv_settings_id and job.cv_settings_id.family_set):
  486.  
  487. x = "l10n_mn_website_hr_recruitment.family"
  488.  
  489. else : x = "l10n_mn_website_hr_recruitment.other"
  490.  
  491. print (post)
  492.  
  493. print 'error \n\n',x
  494.  
  495. return request.render(x,
  496.  
  497. { 'applicant_id':int(post.get('applicant_id')),
  498.  
  499. 'sources': source,
  500.  
  501. 'error': error,
  502.  
  503. 'default': default,
  504.  
  505. 'job_id': job
  506.  
  507. })
  508.  
  509. @http.route('/jobs/family', methods=['POST'], type='http', auth="public", website=True)
  510.  
  511. def jobs_family(self, **post):
  512.  
  513. error = {}
  514.  
  515. default = {}
  516.  
  517. source = request.env['hr.recruitment.source'].sudo().search([])
  518.  
  519. family_mem1 = request.env['hr.employee.family.member'].sudo().search([])
  520.  
  521. family_mem2 = request.env['hr.employee.family.member'].sudo().search([])
  522.  
  523. family_mem3 = request.env['hr.employee.family.member'].sudo().search([])
  524.  
  525. family_mem4 = request.env['hr.employee.family.member'].sudo().search([])
  526.  
  527. family_mem5 = request.env['hr.employee.family.member'].sudo().search([])
  528.  
  529. family_mem6 = request.env['hr.employee.family.member'].sudo().search([])
  530.  
  531. family_mem7 = request.env['hr.employee.family.member'].sudo().search([])
  532.  
  533. family_mem8 = request.env['hr.employee.family.member'].sudo().search([])
  534.  
  535. family_mem9 = request.env['hr.employee.family.member'].sudo().search([])
  536.  
  537. if 'l10n_mn_website_hr_recruitment_error' in request.session:
  538.  
  539. error = request.session.pop('l10n_mn_website_hr_recruitment_error')
  540.  
  541. default = request.session.pop('l10n_mn_website_hr_recruitment_default')
  542.  
  543. for field_name in []:
  544.  
  545. if not post.get(field_name):
  546.  
  547. error[field_name] = 'missing'
  548.  
  549. if error:
  550.  
  551. request.session['l10n_mn_site_hr_recruitment_error'] = error
  552.  
  553. ufile = post.pop('ufile')
  554.  
  555. if ufile:
  556.  
  557. error['ufile'] = 'reset'
  558.  
  559. request.session['l10n_mn_website_hr_recruitment_default'] = post
  560.  
  561. return request.redirect('/jobs/apply/%s' % post.get("job_id"))
  562.  
  563. # public user can't create applicants (duh)
  564.  
  565. env = request.env(user=SUPERUSER_ID)
  566.  
  567. employment = []
  568.  
  569. verify = []
  570.  
  571. if post.get('company_1'):
  572.  
  573. employment.append((0,0,{ 'organization':post.get('company_1'),
  574.  
  575. 'job_title' :post.get('job_1'),
  576.  
  577. 'entered_date' :post.get('entered_1'),
  578.  
  579. 'resigned_date' :post.get('resigned_1'),
  580.  
  581. 'resigned_reason' :post.get('reason_1'),
  582.  
  583. 'wage' :post.get('salary_1'),
  584.  
  585. 'supers' :post.get('manager_1'),
  586.  
  587. 'responsibility' :post.get('responsibility_1'),
  588.  
  589. }))
  590.  
  591. if post.get('company_2'):
  592.  
  593. employment.append((0,0,{ 'organization':post.get('company_2'),
  594.  
  595. 'job_title' :post.get('job_2'),
  596.  
  597. 'entered_date' :post.get('entered_2'),
  598.  
  599. 'resigned_date' :post.get('resigned_2'),
  600.  
  601. 'resigned_reason' :post.get('reason_2'),
  602.  
  603. 'wage' :post.get('salary_2'),
  604.  
  605. 'supers' :post.get('manager_2'),
  606.  
  607. 'responsibility' :post.get('responsibility_2'),
  608.  
  609. }))
  610.  
  611. if post.get('company_3'):
  612.  
  613. employment.append((0,0,{ 'organization':post.get('company_3'),
  614.  
  615. 'job_title' :post.get('job_3'),
  616.  
  617. 'entered_date' :post.get('entered_3'),
  618.  
  619. 'resigned_date' :post.get('resigned_3'),
  620.  
  621. 'resigned_reason' :post.get('reason_3'),
  622.  
  623. 'wage' :post.get('salary_3'),
  624.  
  625. 'supers' :post.get('manager_3'),
  626.  
  627. 'responsibility' :post.get('responsibility_3'),
  628.  
  629. }))
  630.  
  631. if post.get('company_4'):
  632.  
  633. employment.append((0,0,{ 'organization':post.get('company_4'),
  634.  
  635. 'job_title' :post.get('job_4'),
  636.  
  637. 'entered_date' :post.get('entered_4'),
  638.  
  639. 'resigned_date' :post.get('resigned_4'),
  640.  
  641. 'resigned_reason' :post.get('reason_4'),
  642.  
  643. 'wage' :post.get('salary_4'),
  644.  
  645. 'supers' :post.get('manager_4'),
  646.  
  647. 'responsibility' :post.get('responsibility_4'),
  648.  
  649. }))
  650.  
  651. if post.get('company_5'):
  652.  
  653. employment.append((0,0,{ 'organization':post.get('company_5'),
  654.  
  655. 'job_title' :post.get('job_5'),
  656.  
  657. 'entered_date' :post.get('entered_5'),
  658.  
  659. 'resigned_date' :post.get('resigned_5'),
  660.  
  661. 'resigned_reason' :post.get('reason_5'),
  662.  
  663. 'wage' :post.get('salary_5'),
  664.  
  665. 'supers' :post.get('manager_5'),
  666.  
  667. 'responsibility' :post.get('responsibility_5'),
  668.  
  669. }))
  670.  
  671. if post.get('verify_name_1'):
  672.  
  673. print'\n\n has verify contact %s \n\n '%post.get('verify_name_1')
  674.  
  675. verify.append((0,0,{ 'name':post.get('verify_name_1'),
  676.  
  677. 'company' :post.get('verify_company_1'),
  678.  
  679. 'job' :post.get('verify_job_1'),
  680.  
  681. 'phone' :post.get('verify_phone_1'),
  682.  
  683. }))
  684.  
  685. if post.get('verify_name_2'):
  686.  
  687. verify.append((0,0,{ 'name':post.get('verify_name_2'),
  688.  
  689. 'company' :post.get('verify_company_2'),
  690.  
  691. 'job' :post.get('verify_job_2'),
  692.  
  693. 'phone' :post.get('verify_phone_2'),
  694.  
  695. }))
  696.  
  697. app_obj = request.registry.get('hr.applicant')
  698.  
  699. app = app_obj.browse(request.cr, request.uid, int(post.get('applicant_id')), context=request.context)
  700.  
  701. print'\n\n applicant is %s \n\n '%app
  702.  
  703. app.write({'employment_lines': employment,
  704.  
  705. })
  706.  
  707. print'\n\n verify %s \n\n '%verify
  708.  
  709. job_obj = request.registry.get('hr.job')
  710.  
  711. job = job_obj.browse(request.cr, request.uid, app.job_id.id, context=request.context)
  712.  
  713. if (app.job_id.cv_settings_id.work_verify_lines_set) or (not job.cv_settings_id):
  714.  
  715. app.write({'work_verify_lines': verify,
  716.  
  717. })
  718.  
  719. if (app.job_id.cv_settings_id.idea_set) or (not job.cv_settings_id):
  720.  
  721. app.write({
  722.  
  723. 'idea1': post.get('idea1') ,
  724.  
  725. 'idea2': post.get('idea2'),
  726.  
  727. 'idea3': post.get('idea3') ,
  728.  
  729. 'idea4': post.get('idea4'),
  730.  
  731. })
  732.  
  733. job_obj = request.registry.get('hr.job')
  734.  
  735. job = job_obj.browse(request.cr, request.uid, app.job_id.id, context=request.context)
  736.  
  737. x = None
  738.  
  739. if job.cv_settings_id.family_set or (not job.cv_settings_id):
  740.  
  741. x = "l10n_mn_website_hr_recruitment.family"
  742.  
  743. else : x = "l10n_mn_website_hr_recruitment.other"
  744.  
  745. print 'error11111 \n\n', x
  746.  
  747. return request.render(x,
  748.  
  749. { 'applicant_id':int(post.get('applicant_id')),
  750.  
  751. 'sources': source,
  752.  
  753. 'error': error,
  754.  
  755. 'default': default,
  756.  
  757. 'job_id':job,
  758.  
  759. 'family_mem1':family_mem1,
  760.  
  761. 'family_mem2':family_mem2,
  762.  
  763. 'family_mem3':family_mem3,
  764.  
  765. 'family_mem4':family_mem4,
  766.  
  767. 'family_mem5':family_mem5,
  768.  
  769. 'family_mem6':family_mem6,
  770.  
  771. 'family_mem7':family_mem7,
  772.  
  773. 'family_mem8':family_mem8,
  774.  
  775. 'family_mem9':family_mem9,
  776.  
  777. })
  778.  
  779. @http.route('/jobs/other', methods=['POST'], type='http', auth="public", website=True)
  780.  
  781. def jobs_other(self, **post):
  782.  
  783. error = {}
  784.  
  785. default = {}
  786.  
  787. source = request.env['hr.recruitment.source'].sudo().search([])
  788.  
  789. if 'l10n_mn_website_hr_recruitment_error' in request.session:
  790.  
  791. error = request.session.pop('l10n_mn_website_hr_recruitment_error')
  792.  
  793. default = request.session.pop('l10n_mn_website_hr_recruitment_default')
  794.  
  795. for field_name in []:
  796.  
  797. if not post.get(field_name):
  798.  
  799. error[field_name] = 'missing'
  800.  
  801. if error:
  802.  
  803. request.session['l10n_mn_site_hr_recruitment_error'] = error
  804.  
  805. ufile = post.pop('ufile')
  806.  
  807. if ufile:
  808.  
  809. error['ufile'] = 'reset'
  810.  
  811. request.session['l10n_mn_website_hr_recruitment_default'] = post
  812.  
  813. return request.redirect('/jobs/apply/%s' % post.get("job_id"))
  814.  
  815. # public user can't create applicants (duh)
  816.  
  817. env = request.env(user=SUPERUSER_ID)
  818.  
  819. family1 = []
  820.  
  821. family2 = []
  822.  
  823. if post.get('fam1_who_1'):
  824.  
  825. family1.append((0,0,{ 'family_member_id':post.get('fam1_who_1'),
  826.  
  827. 'name':post.get('fam1_name_1'),
  828.  
  829. 'date_of_birth' :post.get('fam1_bdate_1'),
  830.  
  831. 'place_of_birth' :post.get('fam1_bplace_1'),
  832.  
  833. 'current_job' :post.get('fam1_job_1'),
  834.  
  835. 'contact' :post.get('fam1_phone_1'),
  836.  
  837. }))
  838.  
  839. if post.get('fam1_who_2'):
  840.  
  841. family1.append((0,0,{ 'family_member_id':post.get('fam1_who_2'),
  842.  
  843. 'name':post.get('fam1_name_2'),
  844.  
  845. 'date_of_birth' :post.get('fam1_bdate_2'),
  846.  
  847. 'place_of_birth' :post.get('fam1_bplace_2'),
  848.  
  849. 'current_job' :post.get('fam1_job_2'),
  850.  
  851. 'contact' :post.get('fam1_phone_2'),
  852.  
  853. }))
  854.  
  855. if post.get('fam1_who_3'):
  856.  
  857. family1.append((0,0,{ 'family_member_id':post.get('fam1_who_3'),
  858.  
  859. 'name':post.get('fam1_name_3'),
  860.  
  861. 'date_of_birth' :post.get('fam1_bdate_3'),
  862.  
  863. 'place_of_birth' :post.get('fam1_bplace_3'),
  864.  
  865. 'current_job' :post.get('fam1_job_3'),
  866.  
  867. 'contact' :post.get('fam1_phone_3'),
  868.  
  869. }))
  870.  
  871. if post.get('fam1_who_4'):
  872.  
  873. family1.append((0,0,{ 'family_member_id':post.get('fam1_who_4'),
  874.  
  875. 'name':post.get('fam1_name_4'),
  876.  
  877. 'date_of_birth' :post.get('fam1_bdate_4'),
  878.  
  879. 'place_of_birth' :post.get('fam1_bplace_4'),
  880.  
  881. 'current_job' :post.get('fam1_job_4'),
  882.  
  883. 'contact' :post.get('fam1_phone_4'),
  884.  
  885. }))
  886.  
  887. if post.get('fam1_who_5'):
  888.  
  889. family1.append((0,0,{ 'family_member_id':post.get('fam1_who_5'),
  890.  
  891. 'name':post.get('fam1_name_5'),
  892.  
  893. 'date_of_birth' :post.get('fam1_bdate_5'),
  894.  
  895. 'place_of_birth' :post.get('fam1_bplace_5'),
  896.  
  897. 'current_job' :post.get('fam1_job_5'),
  898.  
  899. 'contact' :post.get('fam1_phone_5'),
  900.  
  901. }))
  902.  
  903. if post.get('fam2_who_1'):
  904.  
  905. family2.append((0,0,{ 'family_member_id':post.get('fam2_who_1'),
  906.  
  907. 'name':post.get('fam2_name_1'),
  908.  
  909. 'date_of_birth' :post.get('fam2_bdate_1'),
  910.  
  911. 'place_of_birth' :post.get('fam2_bplace_1'),
  912.  
  913. 'current_organization' :post.get('fam2_job_1'),
  914.  
  915. 'contact' :post.get('fam2_phone_1'),
  916.  
  917. }))
  918.  
  919. if post.get('fam2_who_2'):
  920.  
  921. family2.append((0,0,{ 'family_member_id':post.get('fam2_who_2'),
  922.  
  923. 'name':post.get('fam2_name_2'),
  924.  
  925. 'date_of_birth' :post.get('fam2_bdate_2'),
  926.  
  927. 'place_of_birth' :post.get('fam2_bplace_2'),
  928.  
  929. 'current_organization' :post.get('fam2_job_2'),
  930.  
  931. 'contact' :post.get('fam2_phone_2'),
  932.  
  933. }))
  934.  
  935. if post.get('fam2_who_3'):
  936.  
  937. family2.append((0,0,{ 'family_member_id':post.get('fam2_who_3'),
  938.  
  939. 'name':post.get('fam2_name_3'),
  940.  
  941. 'date_of_birth' :post.get('fam2_bdate_3'),
  942.  
  943. 'place_of_birth' :post.get('fam2_bplace_3'),
  944.  
  945. 'current_organization' :post.get('fam2_job_3'),
  946.  
  947. 'contact' :post.get('fam2_phone_3'),
  948.  
  949. }))
  950.  
  951. if post.get('fam2_who_4'):
  952.  
  953. family2.append((0,0,{ 'family_member_id':post.get('fam2_who_4'),
  954.  
  955. 'name':post.get('fam2_name_4'),
  956.  
  957. 'date_of_birth' :post.get('fam2_bdate_4'),
  958.  
  959. 'place_of_birth' :post.get('fam2_bplace_4'),
  960.  
  961. 'current_job' :post.get('fam2_job_4'),
  962.  
  963. 'contact' :post.get('fam2_phone_4'),
  964.  
  965. }))
  966.  
  967. app_obj = request.registry.get('hr.applicant')
  968.  
  969. app = app_obj.browse(request.cr, request.uid, int(post.get('applicant_id')), context=request.context)
  970.  
  971. app.write({'family_members_1': family1,
  972.  
  973. 'family_members_2': family2,
  974.  
  975. 'family_members_num': post.get('family_members_num') ,
  976.  
  977. })
  978.  
  979. job_obj = request.registry.get('hr.job')
  980.  
  981. job = job_obj.browse(request.cr, request.uid, app.job_id.id, context=request.context)
  982.  
  983. return request.render("l10n_mn_website_hr_recruitment.other",
  984.  
  985. { 'applicant_id':int(post.get('applicant_id')),
  986.  
  987. 'job_id': job,
  988.  
  989. 'sources': source,
  990.  
  991. 'error': error,
  992.  
  993. 'default': default,
  994.  
  995. })
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement