[IMP] website_hr_recruitment, *: improve pages design

*: website

Old 'website_hr_recruitment' templates looked outdated, so they have
been improved in terms of usability and design, by applying the
following changes:

- Old images used in `/jobs` and `/jobs/detail/` have been replaced by
new ones, taken from the Odoo official profile in social media.

- A `Connect with us` section has been added to the right column of
`/jobs`, including a separator, links and social media icons.

- Job entries in `/jobs` now show the city of the office, its country
and its department, as shown in the filters.

- In `/jobs/*`, old header with a breadcrumb has been replaced by
the topbar seen above, including a link to previous page in the
navigation flow.

- Design in `/jobs/detail/` has been improved, including a redesign of
the `Our Product` block or the image gallery at the end of the page.

- Header in `jobs/apply/*` has been improved and includes a column with
the address of the job position.

- In `jobs/apply/*`, the design of the form group has been revamped and
also has been added a right column including a snippet with the contact
information of the recruiter tracking the job application process.

- Overall design has been improved in the `/job-thank-you` view,
including the recruiter snippet seen above.

- Job description is now editable and not truncated. Additionally, a
default job description has also been added.

- Every new job entry has now a default short description, editable.

- If there is either no available job or not any valid job after the job
search, the `No jobs available` view has also been improved.

- Illustrations with dynamic colors have been included in
`/jobs/detail` (`Our Product` block) and `/job-thank-you`.

- `boolean_toggle` widget used in `website_hr_recruitment`'s
backend, in its job entry kanban has been improved.

- Syntax has been adapted to BS5.

- Tests have also been updated to the changes in the templates.

task-2406626

Part-of: odoo/odoo#67913
Co-authored-by: Benoit Socias <bso@odoo.com>
Co-authored-by: qsm-odoo <qsm@odoo.com>
This commit is contained in:
Carlos Valverde
2023-05-12 19:54:08 +02:00
committed by qsm-odoo
co-authored by Benoit Socias qsm-odoo
parent 4978d2d107
commit d3b7e1c127
17 changed files with 627 additions and 365 deletions
@@ -120,6 +120,9 @@ $-editor-messages-margin-x: 2%;
color: #aaa;
}
}
&[data-oe-type=html].oe_empty:empty {
@extend %o-editor-messages;
}
}
.editor_enable [data-oe-readonly]:hover {
cursor: default;
+196 -196
View File
@@ -5,7 +5,7 @@
<field name="is_published">True</field>
<field name="website_description" type="html">
<!-- Description text and ratings -->
<section class="pt32">
<section class="pt0">
<div class="container">
<div class="row">
<div class="col-lg-8 pb32" itemprop="description">
@@ -137,12 +137,12 @@
</div>
</section>
<!-- What's great -->
<section class="pt40">
<section class="s_comparisons pt24 pb24" data-snippet="s_comparisons">
<div class="container">
<h2>What's great in the job?</h2>
<br/>
<div class="row">
<div class="col-lg-8 pb40" itemprop="description">
<div class="row align-items-center">
<div class="col-sm-7 pb40" itemprop="description">
<h2>What's great in the job?</h2>
<br/>
<ul class="lead">
<li>Great team of smart people, in a friendly and open culture</li>
<li>No dumb managers, no stupid tools to use, no rigid working hours</li>
@@ -152,18 +152,21 @@
<li>Real responsibilities and challenges in a fast evolving company</li>
</ul>
</div>
<div class="col-lg-3 offset-lg-1 pb40">
<div>
<h5>Our Product</h5>
<p>Discover our products.</p>
<p><a href="/" class="btn btn-outline-primary" target="_blank"><small><b>READ</b></small></a></p>
<div data-name="Box" class="col-sm-4 offset-sm-1 pt16 pb16">
<div class="card shadow text-center">
<h5 class="card-header o_colored_level text-bg-primary">Our Product</h5>
<div class="card-body p-0 pt-3">
<img class="img-fluid o_we_custom_image pb24" src="/website_hr_recruitment/static/src/img/job_product.svg" style="width: 75% !important;" alt="Our Product"/>
<p>Discover our products.</p>
<p><a href="/" class="btn btn-primary" target="_blank"><small><b>READ</b></small></a></p>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- What we offer -->
<section class="s_features pt40 pb40 bg-200" data-name="Features" data-snippet="s_features">
<section class="s_features pt64 pb40 bg-200" data-name="Features" data-snippet="s_features">
<div class="container">
<h2>What We Offer</h2>
<br/>
@@ -199,28 +202,25 @@
</div>
</section>
<!-- Photos -->
<section class="pt24 pb16">
<section class="o_jobs_image_gallery s_image_gallery pt24 pb24 o_grid o_spc-medium" data-vcss="001" data-columns="3" style="overflow: hidden;" data-snippet="s_images_wall" data-name="Images Wall">
<div class="container">
<div class="row">
<div class="col-md-12 col-lg-6 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_3.jpg"/>
<div class="row s_nb_column_fixed">
<div class="col-lg-8">
<img src="/website_hr_recruitment/static/src/img/job_image_9.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
<div class="col-md-6 col-lg-3 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_2.jpg"/>
</div>
<div class="col-md-6 col-lg-3 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_4.jpg"/>
<div class="col-lg-4">
<img src="/website_hr_recruitment/static/src/img/job_image_10.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
</div>
<div class="row">
<div class="col-md-6 col-lg-3 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_6.jpg"/>
<div class="row s_nb_column_fixed">
<div class="col-lg-3">
<img src="/website_hr_recruitment/static/src/img/job_image_11.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
<div class="col-md-6 col-lg-3 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_5.jpg"/>
<div class="col-lg-3">
<img src="/website_hr_recruitment/static/src/img/job_image_12.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
<div class="col-md-12 col-lg-6 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_1.jpg"/>
<div class="col-lg-6">
<img src="/website_hr_recruitment/static/src/img/job_image_13.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
</div>
</div>
@@ -232,7 +232,7 @@
<field name="is_published">True</field>
<field name="website_description" type="html">
<!-- Description text and ratings -->
<section class="pt32">
<section class="pt0">
<div class="container">
<div class="row">
<div class="col-lg-8 pb32" itemprop="description">
@@ -364,12 +364,12 @@
</div>
</section>
<!-- What's great -->
<section class="pt40">
<section class="s_comparisons pt24 pb24" data-snippet="s_comparisons">
<div class="container">
<h2>What's great in the job?</h2>
<br/>
<div class="row">
<div class="col-lg-8 pb40">
<div class="row align-items-center">
<div class="col-sm-7 pb40">
<h2>What's great in the job?</h2>
<br/>
<ul class="lead">
<li>Great team of smart people, in a friendly and open culture</li>
<li>No dumb managers, no stupid tools to use, no rigid working hours</li>
@@ -379,18 +379,21 @@
<li>Real responsibilities and challenges in a fast evolving company</li>
</ul>
</div>
<div class="col-lg-3 offset-lg-1 pb40">
<div>
<h5>Our Product</h5>
<p>Discover our products.</p>
<p><a href="/" class="btn btn-outline-primary" target="_blank"><small><b>READ</b></small></a></p>
<div data-name="Box" class="col-sm-4 offset-sm-1 pt16 pb16">
<div class="card shadow text-center">
<h5 class="card-header o_colored_level text-bg-primary">Our Product</h5>
<div class="card-body p-0 pt-3">
<img class="img-fluid o_we_custom_image pb24" src="/website_hr_recruitment/static/src/img/job_product.svg" style="width: 75% !important;" alt="Our Product"/>
<p>Discover our products.</p>
<p><a href="/" class="btn btn-primary" target="_blank"><small><b>READ</b></small></a></p>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- What we offer -->
<section class="s_features pt40 pb40 bg-200" data-name="Features" data-snippet="s_features">
<section class="s_features pt64 pb40 bg-200" data-name="Features" data-snippet="s_features">
<div class="container">
<h2>What We Offer</h2>
<br/>
@@ -426,28 +429,25 @@
</div>
</section>
<!-- Photos -->
<section class="pt24 pb16">
<section class="o_jobs_image_gallery s_image_gallery pt24 pb24 o_grid o_spc-medium" data-vcss="001" data-columns="3" style="overflow: hidden;" data-snippet="s_images_wall" data-name="Images Wall">
<div class="container">
<div class="row">
<div class="col-md-12 col-lg-6 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_3.jpg"/>
<div class="row s_nb_column_fixed">
<div class="col-lg-8">
<img src="/website_hr_recruitment/static/src/img/job_image_9.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
<div class="col-md-6 col-lg-3 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_2.jpg"/>
</div>
<div class="col-md-6 col-lg-3 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_4.jpg"/>
<div class="col-lg-4">
<img src="/website_hr_recruitment/static/src/img/job_image_10.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
</div>
<div class="row">
<div class="col-md-6 col-lg-3 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_6.jpg"/>
<div class="row s_nb_column_fixed">
<div class="col-lg-3">
<img src="/website_hr_recruitment/static/src/img/job_image_11.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
<div class="col-md-6 col-lg-3 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_5.jpg"/>
<div class="col-lg-3">
<img src="/website_hr_recruitment/static/src/img/job_image_12.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
<div class="col-md-12 col-lg-6 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_1.jpg"/>
<div class="col-lg-6">
<img src="/website_hr_recruitment/static/src/img/job_image_13.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
</div>
</div>
@@ -459,7 +459,7 @@
<field name="is_published">True</field>
<field name="website_description" type="html">
<!-- Description text and ratings -->
<section class="pt32">
<section class="pt0">
<div class="container">
<div class="row">
<div class="col-lg-8 pb32" itemprop="description">
@@ -591,12 +591,12 @@
</div>
</section>
<!-- What's great -->
<section class="pt40">
<section class="s_comparisons pt24 pb24" data-snippet="s_comparisons">
<div class="container">
<h2>What's great in the job?</h2>
<br/>
<div class="row">
<div class="col-lg-8 pb40">
<div class="row align-items-center">
<div class="col-sm-7 pb40">
<h2>What's great in the job?</h2>
<br/>
<ul class="lead">
<li>Great team of smart people, in a friendly and open culture</li>
<li>No dumb managers, no stupid tools to use, no rigid working hours</li>
@@ -606,18 +606,21 @@
<li>Real responsibilities and challenges in a fast evolving company</li>
</ul>
</div>
<div class="col-lg-3 offset-lg-1 pb40">
<div>
<h5>Our Product</h5>
<p>Discover our products.</p>
<p><a href="/" class="btn btn-outline-primary" target="_blank"><small><b>READ</b></small></a></p>
<div data-name="Box" class="col-sm-4 offset-sm-1 pt16 pb16">
<div class="card shadow text-center">
<h5 class="card-header o_colored_level text-bg-primary">Our Product</h5>
<div class="card-body p-0 pt-3">
<img class="img-fluid o_we_custom_image pb24" src="/website_hr_recruitment/static/src/img/job_product.svg" style="width: 75% !important;" alt="Our Product"/>
<p>Discover our products.</p>
<p><a href="/" class="btn btn-primary" target="_blank"><small><b>READ</b></small></a></p>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- What we offer -->
<section class="s_features pt40 pb40 bg-200" data-name="Features" data-snippet="s_features">
<section class="s_features pt64 pb40 bg-200" data-name="Features" data-snippet="s_features">
<div class="container">
<h2>What We Offer</h2>
<br/>
@@ -653,28 +656,25 @@
</div>
</section>
<!-- Photos -->
<section class="pt24 pb16">
<section class="o_jobs_image_gallery s_image_gallery pt24 pb24 o_grid o_spc-medium" data-vcss="001" data-columns="3" style="overflow: hidden;" data-snippet="s_images_wall" data-name="Images Wall">
<div class="container">
<div class="row">
<div class="col-md-12 col-lg-6 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_3.jpg"/>
<div class="row s_nb_column_fixed">
<div class="col-lg-8">
<img src="/website_hr_recruitment/static/src/img/job_image_9.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
<div class="col-md-6 col-lg-3 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_2.jpg"/>
</div>
<div class="col-md-6 col-lg-3 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_4.jpg"/>
<div class="col-lg-4">
<img src="/website_hr_recruitment/static/src/img/job_image_10.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
</div>
<div class="row">
<div class="col-md-6 col-lg-3 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_6.jpg"/>
<div class="row s_nb_column_fixed">
<div class="col-lg-3">
<img src="/website_hr_recruitment/static/src/img/job_image_11.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
<div class="col-md-6 col-lg-3 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_5.jpg"/>
<div class="col-lg-3">
<img src="/website_hr_recruitment/static/src/img/job_image_12.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
<div class="col-md-12 col-lg-6 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_1.jpg"/>
<div class="col-lg-6">
<img src="/website_hr_recruitment/static/src/img/job_image_13.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
</div>
</div>
@@ -685,7 +685,7 @@
<record id="hr.job_ceo" model="hr.job">
<field name="website_description" type="html">
<!-- Description text and ratings -->
<section class="pt32">
<section class="pt0">
<div class="container">
<div class="row">
<div class="col-lg-8 pb32" itemprop="description">
@@ -817,12 +817,12 @@
</div>
</section>
<!-- What's great -->
<section class="pt40">
<section class="s_comparisons pt24 pb24" data-snippet="s_comparisons">
<div class="container">
<h2>What's great in the job?</h2>
<br/>
<div class="row">
<div class="col-lg-8 pb40">
<div class="row align-items-center">
<div class="col-sm-7 pb40">
<h2>What's great in the job?</h2>
<br/>
<ul class="lead">
<li>Great team of smart people, in a friendly and open culture</li>
<li>No dumb managers, no stupid tools to use, no rigid working hours</li>
@@ -832,18 +832,21 @@
<li>Real responsibilities and challenges in a fast evolving company</li>
</ul>
</div>
<div class="col-lg-3 offset-lg-1 pb40">
<div>
<h5>Our Product</h5>
<p>Discover our products.</p>
<p><a href="/" class="btn btn-outline-primary" target="_blank"><small><b>READ</b></small></a></p>
<div data-name="Box" class="col-sm-4 offset-sm-1 pt16 pb16">
<div class="card shadow text-center">
<h5 class="card-header o_colored_level text-bg-primary">Our Product</h5>
<div class="card-body p-0 pt-3">
<img class="img-fluid o_we_custom_image pb24" src="/website_hr_recruitment/static/src/img/job_product.svg" style="width: 75% !important;" alt="Our Product"/>
<p>Discover our products.</p>
<p><a href="/" class="btn btn-primary" target="_blank"><small><b>READ</b></small></a></p>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- What we offer -->
<section class="s_features pt40 pb40 bg-200" data-name="Features" data-snippet="s_features">
<section class="s_features pt64 pb40 bg-200" data-name="Features" data-snippet="s_features">
<div class="container">
<h2>What We Offer</h2>
<br/>
@@ -879,28 +882,25 @@
</div>
</section>
<!-- Photos -->
<section class="pt24 pb16">
<section class="o_jobs_image_gallery s_image_gallery pt24 pb24 o_grid o_spc-medium" data-vcss="001" data-columns="3" style="overflow: hidden;" data-snippet="s_images_wall" data-name="Images Wall">
<div class="container">
<div class="row">
<div class="col-md-12 col-lg-6 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_3.jpg"/>
<div class="row s_nb_column_fixed">
<div class="col-lg-8">
<img src="/website_hr_recruitment/static/src/img/job_image_9.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
<div class="col-md-6 col-lg-3 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_2.jpg"/>
</div>
<div class="col-md-6 col-lg-3 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_4.jpg"/>
<div class="col-lg-4">
<img src="/website_hr_recruitment/static/src/img/job_image_10.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
</div>
<div class="row">
<div class="col-md-6 col-lg-3 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_6.jpg"/>
<div class="row s_nb_column_fixed">
<div class="col-lg-3">
<img src="/website_hr_recruitment/static/src/img/job_image_11.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
<div class="col-md-6 col-lg-3 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_5.jpg"/>
<div class="col-lg-3">
<img src="/website_hr_recruitment/static/src/img/job_image_12.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
<div class="col-md-12 col-lg-6 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_1.jpg"/>
<div class="col-lg-6">
<img src="/website_hr_recruitment/static/src/img/job_image_13.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
</div>
</div>
@@ -911,7 +911,7 @@
<record id="hr.job_cto" model="hr.job">
<field name="website_description" type="html">
<!-- Description text and ratings -->
<section class="pt32">
<section class="pt0">
<div class="container">
<div class="row">
<div class="col-lg-8 pb32" itemprop="description">
@@ -1043,12 +1043,12 @@
</div>
</section>
<!-- What's great -->
<section class="pt40">
<section class="s_comparisons pt24 pb24" data-snippet="s_comparisons">
<div class="container">
<h2>What's great in the job?</h2>
<br/>
<div class="row">
<div class="col-lg-8 pb40">
<div class="row align-items-center">
<div class="col-sm-7 pb40">
<h2>What's great in the job?</h2>
<br/>
<ul class="lead">
<li>Great team of smart people, in a friendly and open culture</li>
<li>No dumb managers, no stupid tools to use, no rigid working hours</li>
@@ -1058,18 +1058,21 @@
<li>Real responsibilities and challenges in a fast evolving company</li>
</ul>
</div>
<div class="col-lg-3 offset-lg-1 pb40">
<div>
<h5>Our Product</h5>
<p>Discover our products.</p>
<p><a href="/" class="btn btn-outline-primary" target="_blank"><small><b>READ</b></small></a></p>
<div data-name="Box" class="col-sm-4 offset-sm-1 pt16 pb16">
<div class="card shadow text-center">
<h5 class="card-header o_colored_level text-bg-primary">Our Product</h5>
<div class="card-body p-0 pt-3">
<img class="img-fluid o_we_custom_image pb24" src="/website_hr_recruitment/static/src/img/job_product.svg" style="width: 75% !important;" alt="Our Product"/>
<p>Discover our products.</p>
<p><a href="/" class="btn btn-primary" target="_blank"><small><b>READ</b></small></a></p>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- What we offer -->
<section class="s_features pt40 pb40 bg-200" data-name="Features" data-snippet="s_features">
<section class="s_features pt64 pb40 bg-200" data-name="Features" data-snippet="s_features">
<div class="container">
<h2>What We Offer</h2>
<br/>
@@ -1105,28 +1108,25 @@
</div>
</section>
<!-- Photos -->
<section class="pt24 pb16">
<section class="o_jobs_image_gallery s_image_gallery pt24 pb24 o_grid o_spc-medium" data-vcss="001" data-columns="3" style="overflow: hidden;" data-snippet="s_images_wall" data-name="Images Wall">
<div class="container">
<div class="row">
<div class="col-md-12 col-lg-6 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_3.jpg"/>
<div class="row s_nb_column_fixed">
<div class="col-lg-8">
<img src="/website_hr_recruitment/static/src/img/job_image_9.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
<div class="col-md-6 col-lg-3 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_2.jpg"/>
</div>
<div class="col-md-6 col-lg-3 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_4.jpg"/>
<div class="col-lg-4">
<img src="/website_hr_recruitment/static/src/img/job_image_10.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
</div>
<div class="row">
<div class="col-md-6 col-lg-3 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_6.jpg"/>
<div class="row s_nb_column_fixed">
<div class="col-lg-3">
<img src="/website_hr_recruitment/static/src/img/job_image_11.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
<div class="col-md-6 col-lg-3 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_5.jpg"/>
<div class="col-lg-3">
<img src="/website_hr_recruitment/static/src/img/job_image_12.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
<div class="col-md-12 col-lg-6 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_1.jpg"/>
<div class="col-lg-6">
<img src="/website_hr_recruitment/static/src/img/job_image_13.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
</div>
</div>
@@ -1137,7 +1137,7 @@
<record id="hr.job_trainee" model="hr.job">
<field name="website_description" type="html">
<!-- Description text and ratings -->
<section class="pt32">
<section class="pt0">
<div class="container">
<div class="row">
<div class="col-lg-8 pb32" itemprop="description">
@@ -1269,12 +1269,12 @@
</div>
</section>
<!-- What's great -->
<section class="pt40">
<section class="s_comparisons pt24 pb24" data-snippet="s_comparisons">
<div class="container">
<h2>What's great in the job?</h2>
<br/>
<div class="row">
<div class="col-lg-8 pb40">
<div class="row align-items-center">
<div class="col-sm-7 pb40">
<h2>What's great in the job?</h2>
<br/>
<ul class="lead">
<li>Great team of smart people, in a friendly and open culture</li>
<li>No dumb managers, no stupid tools to use, no rigid working hours</li>
@@ -1284,18 +1284,21 @@
<li>Real responsibilities and challenges in a fast evolving company</li>
</ul>
</div>
<div class="col-lg-3 offset-lg-1 pb40">
<div>
<h5>Our Product</h5>
<p>Discover our products.</p>
<p><a href="/" class="btn btn-outline-primary" target="_blank"><small><b>READ</b></small></a></p>
<div data-name="Box" class="col-sm-4 offset-sm-1 pt16 pb16">
<div class="card shadow text-center">
<h5 class="card-header o_colored_level text-bg-primary">Our Product</h5>
<div class="card-body p-0 pt-3">
<img class="img-fluid o_we_custom_image pb24" src="/website_hr_recruitment/static/src/img/job_product.svg" style="width: 75% !important;" alt="Our Product"/>
<p>Discover our products.</p>
<p><a href="/" class="btn btn-primary" target="_blank"><small><b>READ</b></small></a></p>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- What we offer -->
<section class="s_features pt40 pb40 bg-200" data-name="Features" data-snippet="s_features">
<section class="s_features pt64 pb40 bg-200" data-name="Features" data-snippet="s_features">
<div class="container">
<h2>What We Offer</h2>
<br/>
@@ -1331,28 +1334,25 @@
</div>
</section>
<!-- Photos -->
<section class="pt24 pb16">
<section class="o_jobs_image_gallery s_image_gallery pt24 pb24 o_grid o_spc-medium" data-vcss="001" data-columns="3" style="overflow: hidden;" data-snippet="s_images_wall" data-name="Images Wall">
<div class="container">
<div class="row">
<div class="col-md-12 col-lg-6 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_3.jpg"/>
<div class="row s_nb_column_fixed">
<div class="col-lg-8">
<img src="/website_hr_recruitment/static/src/img/job_image_9.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
<div class="col-md-6 col-lg-3 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_2.jpg"/>
</div>
<div class="col-md-6 col-lg-3 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_4.jpg"/>
<div class="col-lg-4">
<img src="/website_hr_recruitment/static/src/img/job_image_10.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
</div>
<div class="row">
<div class="col-md-6 col-lg-3 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_6.jpg"/>
<div class="row s_nb_column_fixed">
<div class="col-lg-3">
<img src="/website_hr_recruitment/static/src/img/job_image_11.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
<div class="col-md-6 col-lg-3 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_5.jpg"/>
<div class="col-lg-3">
<img src="/website_hr_recruitment/static/src/img/job_image_12.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
<div class="col-md-12 col-lg-6 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_1.jpg"/>
<div class="col-lg-6">
<img src="/website_hr_recruitment/static/src/img/job_image_13.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
</div>
</div>
@@ -1363,7 +1363,7 @@
<record id="hr.job_hrm" model="hr.job">
<field name="website_description" type="html">
<!-- Description text and ratings -->
<section class="pt32">
<section class="pt0">
<div class="container">
<div class="row">
<div class="col-lg-8 pb32" itemprop="description">
@@ -1495,12 +1495,12 @@
</div>
</section>
<!-- What's great -->
<section class="pt40">
<section class="s_comparisons pt24 pb24" data-snippet="s_comparisons">
<div class="container">
<h2>What's great in the job?</h2>
<br/>
<div class="row">
<div class="col-lg-8 pb40">
<div class="row align-items-center">
<div class="col-sm-7 pb40">
<h2>What's great in the job?</h2>
<br/>
<ul class="lead">
<li>Great team of smart people, in a friendly and open culture</li>
<li>No dumb managers, no stupid tools to use, no rigid working hours</li>
@@ -1510,18 +1510,21 @@
<li>Real responsibilities and challenges in a fast evolving company</li>
</ul>
</div>
<div class="col-lg-3 offset-lg-1 pb40">
<div>
<h5>Our Product</h5>
<p>Discover our products.</p>
<p><a href="/" class="btn btn-outline-primary" target="_blank"><small><b>READ</b></small></a></p>
<div data-name="Box" class="col-sm-4 offset-sm-1 pt16 pb16">
<div class="card shadow text-center">
<h5 class="card-header o_colored_level text-bg-primary">Our Product</h5>
<div class="card-body p-0 pt-3">
<img class="img-fluid o_we_custom_image pb24" src="/website_hr_recruitment/static/src/img/job_product.svg" style="width: 75% !important;" alt="Our Product"/>
<p>Discover our products.</p>
<p><a href="/" class="btn btn-primary" target="_blank"><small><b>READ</b></small></a></p>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- What we offer -->
<section class="s_features pt40 pb40 bg-200" data-name="Features" data-snippet="s_features">
<section class="s_features pt64 pb40 bg-200" data-name="Features" data-snippet="s_features">
<div class="container">
<h2>What We Offer</h2>
<br/>
@@ -1557,28 +1560,25 @@
</div>
</section>
<!-- Photos -->
<section class="pt24 pb16">
<section class="o_jobs_image_gallery s_image_gallery pt24 pb24 o_grid o_spc-medium" data-vcss="001" data-columns="3" style="overflow: hidden;" data-snippet="s_images_wall" data-name="Images Wall">
<div class="container">
<div class="row">
<div class="col-md-12 col-lg-6 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_3.jpg"/>
<div class="row s_nb_column_fixed">
<div class="col-lg-8">
<img src="/website_hr_recruitment/static/src/img/job_image_9.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
<div class="col-md-6 col-lg-3 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_2.jpg"/>
</div>
<div class="col-md-6 col-lg-3 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_4.jpg"/>
<div class="col-lg-4">
<img src="/website_hr_recruitment/static/src/img/job_image_10.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
</div>
<div class="row">
<div class="col-md-6 col-lg-3 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_6.jpg"/>
<div class="row s_nb_column_fixed">
<div class="col-lg-3">
<img src="/website_hr_recruitment/static/src/img/job_image_11.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
<div class="col-md-6 col-lg-3 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_5.jpg"/>
<div class="col-lg-3">
<img src="/website_hr_recruitment/static/src/img/job_image_12.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
<div class="col-md-12 col-lg-6 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_1.jpg"/>
<div class="col-lg-6">
<img src="/website_hr_recruitment/static/src/img/job_image_13.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
</div>
</div>
@@ -11,10 +11,19 @@ class Job(models.Model):
_name = 'hr.job'
_inherit = ['hr.job', 'website.seo.metadata', 'website.published.multi.mixin']
@mute_logger('odoo.addons.base.models.ir_qweb')
def _get_default_description(self):
return self.env['ir.qweb']._render('website_hr_recruitment.default_description', raise_if_not_found=False)
@mute_logger('odoo.addons.base.models.ir_qweb')
def _get_default_website_description(self):
return self.env['ir.qweb']._render("website_hr_recruitment.default_website_description", raise_if_not_found=False)
description = fields.Html(
'Job Description', translate=html_translate,
default=_get_default_description, prefetch=False,
sanitize_overridable=True,
sanitize_attributes=False, sanitize_form=False)
website_published = fields.Boolean(help='Set if the application is published on the website of the company.')
website_description = fields.Html(
'Website description', translate=html_translate,
File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 150 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 88 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 99 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 100 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 93 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 99 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 92 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 102 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 119 KiB

@@ -1,25 +1,28 @@
.o_website_hr_recruitment_jobs_list {
#jobs_grid_left {
ul.flex-column > li.nav-item > a {
padding: .5rem 1rem;
border-radius: 0.125rem;
}
}
.card {
padding: 15px;
box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.17);
&:hover {
transition: box-shadow 0.3s cubic-bezier(0.55, 0, 0.1, 1);
box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.1), 0 2px 2px 0 rgba(0, 0, 0, 0.05);
}
.o_website_hr_recruitment_jobs_list {
#jobs_grid {
.o_job_infos {
.fa {
color: map-get($theme-colors, 'primary');
margin-right: 8px;
color: theme-color('secondary');
margin-right: .5rem;
}
}
.card {
&, * {
transition: all .1s;
}
&:hover {
box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.1), 0 2px 2px 0 rgba(0, 0, 0, 0.05);
}
}
.o_jobs_unpublished {
opacity: .6;
}
}
.o_website_hr_recruitment_job_description {
//The ellipsis may not be supported on all platforms, the text will just break for them
max-height: 60px; //Limit to 3 lines
@@ -63,3 +66,20 @@
border-color: #35979c;
background-color: #fff;
}
%o_website_hr_recruitment_hover {
transition: .5s;
&:hover {
transform: scale(1.01, 1.01);
box-shadow: 0 0 20px rgba(0, 0, 0, 0.25) !important;
}
}
.o_jobs_image_gallery.s_image_gallery img {
@extend %o_website_hr_recruitment_hover;
}
#jobs_section, #jobs_thankyou {
.s_company_team .o_jobs_hr_recruiter {
@extend %o_website_hr_recruitment_hover;
}
}
@@ -6,7 +6,7 @@
function applyForAJob(jobName, application) {
return [{
content: "Select Job",
trigger: `.oe_website_jobs h3 span:contains(${jobName})`,
trigger: `.oe_website_jobs h3:contains(${jobName})`,
}, {
content: "Apply",
trigger: ".js_hr_recruitment a:contains('Apply')",
@@ -31,7 +31,7 @@
trigger: ".s_website_form_send",
}, {
content: "Check the form is submitted without errors",
trigger: ".oe_structure:has(h1:contains('Congratulations'))",
trigger: "#jobs_thankyou h1:contains('Congratulations')",
}];
}
@@ -17,7 +17,7 @@
<xpath expr="//div[@name='kanban_boxes']" position="inside">
<field name="website_url" invisible="1"/>
<div class="col-6">
<field name="is_published" widget='boolean_toggle'/>
<field name="is_published" widget="boolean_toggle" class="me-1"/>
<t t-if="record.is_published.raw_value">Published</t>
<t t-else="">Not published</t>
</div>
@@ -3,81 +3,101 @@
<template id="index" name="Jobs">
<t t-call="website.layout">
<div id="wrap" class="o_website_hr_recruitment_jobs_list bg-100">
<div class="oe_structure">
<section class="pt48 pb32 bg-200">
<div class="container">
<div class="row">
<div class="col-lg-12 text-center">
<h2 class="h1 text-secondary">Our Job Offers</h2>
<h3 class="text-muted">Join us and help disrupt the enterprise market!</h3>
<p>
Join us, we offer you an extraordinary chance to learn, to
develop and to be part of an exciting experience and
team.
</p>
</div>
</div>
</div>
</section>
</div>
<div id="wrap" class="o_website_hr_recruitment_jobs_list o_colored_level o_cc o_cc2">
<!-- Snippet area -->
<div class="oe_structure" id="oe_structure_hr_recruitment_index_top"/>
<!-- Topbar -->
<nav class="navbar navbar-light border-top shadow-sm d-print-none w-100 o_colored_level">
<div class="container">
<div class="d-flex flex-column flex-md-row flex-md-wrap flex-lg-nowrap align-items-center justify-content-between w-100">
<!-- Title -->
<span class="navbar-brand h5 my-0 me-sm-auto">Our Job Offers</span>
</div>
</div>
</nav>
<!-- Content -->
<div class="container oe_website_jobs">
<div class="row pt48 pb48">
<div class="d-none" id="jobs_grid_left">
</div>
<div class="row pt48 pb16">
<div class="d-none" id="jobs_grid_left"/>
<div class="col-lg" id="jobs_grid">
<div t-if="not jobs">
<div class="text-center text-muted">
<h3 class="css_editable_hidden"><a t-attf-href="/contactus">Contact us</a> for job opportunities.</h3>
<h4 groups="hr_recruitment.group_hr_recruitment_manager">
Create new job pages from the <strong><i>+New</i></strong> top-right button.
</h4>
</div>
</div>
<a t-foreach="jobs" t-as="job" t-attf-href="/jobs/detail/#{ slug(job) }" t-attf-class="text-decoration-none#{' mt-3' if job_index else ''}">
<div class="card card-default mb32">
<div class="card-body" t-att-data-publish="job.website_published and 'on' or 'off'">
<span t-if="not job.website_published" class="badge text-bg-danger mb8 p-2">unpublished</span>
<h3 class="text-secondary mt0 mb4">
<span t-field="job.name"/>
</h3>
<h5 t-if="job.no_of_recruitment &gt;= 1">
<t t-esc="job.no_of_recruitment"/> open positions
</h5>
<div t-if="editable"
t-field="job.description"
class="mt16 mb0 css_non_editable_mode_hidden"/>
<div t-esc="job.description or ''"
class="mt16 mb0 css_editable_mode_hidden o_website_hr_recruitment_job_description"
/>
<div class="o_job_infos mt16">
<span t-field="job.address_id" t-options='{
"widget": "contact",
"fields": ["address"],
"no_tag_br": True
}'/>
<div t-if="job.contract_type_id">
<i class="fa fa-fw fa-suitcase" title="Employment type" role="img" aria-label="Employment type"/><span t-field="job.contract_type_id"/>
</div>
<div>
<i class="fa fa-fw fa-clock-o" title="Publication date" role="img" aria-label="Publication date"/><span t-field="job.write_date"/>
</div>
<div class="row flex-column">
<t t-if="not jobs">
<div class="col">
<div class="alert alert-info text-center text-muted" groups="hr_recruitment.group_hr_recruitment_manager">
Create new job pages from the <strong>+ <i>New</i></strong> top-right button.
</div>
<div class="col-lg-12 text-center pt24">
<p class="h5 fw-light text-muted pb24">
There are currently no open job opportunities,<br class="mb-2"/>
but feel free to <span class="fw-bold">contact us</span> for a spontaneous application.
</p>
<img class="img-fluid o_we_custom_image pb24" src="/website_hr_recruitment/static/src/img/job_not_found.svg" style="width: 50% !important;" alt="Job not found"/>
</div>
</div>
</t>
<div t-foreach="jobs" t-as="job" class="col-lg mb32">
<div t-attf-class="card #{not job.website_published and 'o_jobs_unpublished'}">
<a t-attf-href="/jobs/detail/#{ slug(job) }"
t-attf-class="text-decoration-none text-reset"
draggable="false">
<div class="card-body p-4">
<div class="mt0 d-flex justify-content-between align-items-center">
<h3 t-field="job.name"/>
<span t-if="not job.website_published" class="badge bg-danger mb8 p-2">unpublished</span>
</div>
<t t-set="open_positions_label">%s open positions</t>
<h5 t-if="job.no_of_recruitment >= 3"
class="text-reset"
t-out="open_positions_label % job.no_of_recruitment"/>
<t t-set="job_desc_edition_placeholder">Insert a Job Description...</t>
<div class="oe_empty text-muted mb16"
t-field="job.description"
t-att-data-editor-message="job_desc_edition_placeholder"/>
<div class="o_job_infos d-flex flex-column">
<span t-field="job.address_id" class="fw-light" t-options='{"widget": "contact", "fields": ["city"], "no_tag_br": True, "null_text": "Remote"}'/>
<div t-if="job.department_id"
class="d-inline-flex align-items-center">
<i class="fa fa-sitemap fa-fw"/><span t-field="job.department_id" class="fw-light" t-options='{"fields": ["name"], "no_tag_br": True}'/>
</div>
<div t-if="job.contract_type_id"
class="d-inline-flex align-items-center">
<i class="fa fa-suitcase fa-fw" title="Employment type" role="img" aria-label="Employment type"/><span t-field="job.contract_type_id" class="fw-light"/>
</div>
</div>
</div>
</a>
</div>
</div>
</a>
</div>
</div>
</div>
</div>
<!-- Snippet area -->
<div class="oe_structure" id="oe_structure_hr_recruitment_index_bottom"/>
</div>
</t>
</template>
<!-- Job Detail -->
<template id="detail" name="Job Detail" track="1">
<t t-call="website.layout">
<t t-set="additional_title">Job Detail</t>
<!-- Topbar -->
<nav class="navbar navbar-light border-top shadow-sm d-print-none">
<div class="container">
<div class="d-flex flex-column flex-md-row flex-md-wrap flex-lg-nowrap justify-content-between w-100">
<!-- Title -->
<span class="navbar-brand h4 my-0 me-auto">
<a t-attf-href="/jobs">
<i class="fa fa-long-arrow-left text-primary me-2"/>All Jobs
</a>
</span>
</div>
</div>
</nav>
<!-- Content -->
<div id="wrap" class="js_hr_recruitment">
<div itemscope="itemscope" itemtype="https://schema.org/JobPosting">
<meta t-if="job.contract_type_id" itemprop="employmentType" t-att-content="job.contract_type_id.sudo().name"/>
@@ -90,18 +110,6 @@
<span itemprop="jobLocation" itemscope="itemscope" itemtype="https://schema.org/Place">
<meta itemprop="address" t-att-content="job.address_id.sudo().contact_address"/>
</span>
<!-- Breadcrumb -->
<section class="bg-200">
<div class="container">
<nav aria-label="breadcrumb">
<ol class="breadcrumb ps-0">
<li class="breadcrumb-item"><a href="/jobs" class="text-secondary fw-bold">Jobs</a></li>
<li class="breadcrumb-item active" aria-current="page"><span itemprop="title" t-field="job.name"/></li>
</ol>
</nav>
</div>
</section>
<!-- Job name -->
<section class="pb32">
<div class="container">
@@ -113,16 +121,16 @@
<h5 class="fw-light" t-field="job.address_id" t-options='{
"widget": "contact",
"fields": ["city"],
"no_tag_br": True
"no_tag_br": True,
"null_text": "Remote"
}'/>
</div>
</div>
</section>
<!-- Job Description -->
<div t-field="job.website_description"/>
<div class="oe_structure">
<section class="o_job_bottom_bar mt32 mb32">
<section class="o_job_bottom_bar mt24 mb48">
<div class="text-center">
<a role="button" t-attf-href="/jobs/apply/#{job.id}" class="btn btn-primary btn-lg">Apply Now!</a>
</div>
@@ -133,6 +141,7 @@
</t>
</template>
<!-- Apply -->
<template id="apply">
<t t-call="website.layout">
<t t-set="additional_title">Apply Job</t>
@@ -314,6 +323,15 @@
</t>
</template>
<!-- Job Default Description -->
<template id="default_description" name="Job Description">
<p>
You can customize this sample job description with a short overview of
the job position, defining specific terms and benefits. Keep it simple
an clear.
</p>
</template>
<template id="default_website_description">
<!-- Description text and ratings -->
<section class="pt32">
@@ -450,12 +468,12 @@
</div>
</section>
<!-- What's great -->
<section class="pt40">
<section class="s_comparisons pt24 pb24" data-snippet="s_comparisons">
<div class="container">
<h2>What's great in the job?</h2>
<br/>
<div class="row">
<div class="col-lg-8 pb40">
<div class="row align-items-center">
<div class="col-sm-7 pb40">
<h2>What's great in the job?</h2>
<br/>
<ul class="lead">
<li>Great team of smart people, in a friendly and open culture</li>
<li>No dumb managers, no stupid tools to use, no rigid working hours</li>
@@ -465,18 +483,21 @@
<li>Real responsibilities and challenges in a fast evolving company</li>
</ul>
</div>
<div class="col-lg-3 offset-lg-1 pb40">
<div>
<h5>Our Product</h5>
<p>Discover our products.</p>
<p><a href="/" class="btn btn-primary" target="_blank"><small><b>READ</b></small></a></p>
<div data-name="Box" class="col-sm-4 offset-sm-1 pt16 pb16">
<div class="card shadow text-center">
<h5 class="card-header o_colored_level text-bg-primary">Our Product</h5>
<div class="card-body p-0 pt-3">
<img class="img-fluid o_we_custom_image pb24" src="/website_hr_recruitment/static/src/img/job_product.svg" style="width: 75% !important;" alt="Our Product"/>
<p>Discover our products.</p>
<p><a href="/" class="btn btn-primary" target="_blank"><small><b>READ</b></small></a></p>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- What we offer -->
<section class="s_features pt40 pb40 bg-200" data-name="Features" data-snippet="s_features">
<section class="s_features pt64 pb40 bg-200" data-name="Features" data-snippet="s_features">
<div class="container" itemprop="employerOverview">
<h2>What We Offer</h2>
<br/>
@@ -512,34 +533,32 @@
</div>
</section>
<!-- Photos -->
<section class="pt24 pb16">
<section class="o_jobs_image_gallery s_image_gallery pt24 pb24 o_grid o_spc-medium" data-vcss="001" data-columns="3" style="overflow: hidden;" data-snippet="s_images_wall" data-name="Images Wall">
<div class="container">
<div class="row">
<div class="col-md-12 col-lg-6 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_3.jpg"/>
<div class="row s_nb_column_fixed">
<div class="col-lg-8">
<img src="/website_hr_recruitment/static/src/img/job_image_9.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
<div class="col-md-6 col-lg-3 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_2.jpg"/>
</div>
<div class="col-md-6 col-lg-3 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_4.jpg"/>
<div class="col-lg-4">
<img src="/website_hr_recruitment/static/src/img/job_image_10.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
</div>
<div class="row">
<div class="col-md-6 col-lg-3 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_6.jpg"/>
<div class="row s_nb_column_fixed">
<div class="col-lg-3">
<img src="/website_hr_recruitment/static/src/img/job_image_11.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
<div class="col-md-6 col-lg-3 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_5.jpg"/>
<div class="col-lg-3">
<img src="/website_hr_recruitment/static/src/img/job_image_12.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
<div class="col-md-12 col-lg-6 mt16 mb16">
<img alt="" class="img img-fluid" src="/website_hr_recruitment/static/src/img/job_image_1.jpg"/>
<div class="col-lg-6">
<img src="/website_hr_recruitment/static/src/img/job_image_13.jpg" class="img img-fluid d-block h-100 w-100 shadow" style="object-fit: cover;"/>
</div>
</div>
</div>
</section>
</template>
<!-- Thank You -->
<record id="thankyou" model="website.page">
<field name="url">/job-thank-you</field>
<field name="is_published">True</field>
@@ -549,55 +568,80 @@
<field name="key">website_hr_recruitment.thankyou</field>
<field name="arch" type="xml">
<t name="Thank you (Recruitment)" t-name="website_hr_recruitment.thankyou">
<t t-if="request.session.get('form_builder_model_model', '') == 'hr.applicant'">
<t t-set="job_sudo" t-value="request.website._website_form_last_record().sudo().job_id"/>
</t>
<t t-call="website.layout">
<div id="wrap">
<div class="oe_structure">
<div class="container">
<div class="row pt40">
<div class="col-lg-12">
<h1 class="text-center">Congratulations!</h1>
<p class="text-center">
Your application has been posted successfully.
</p>
</div>
<t t-if="request.session.get('form_builder_model_model', '') == 'hr.applicant'">
<t t-set="job" t-value="request.website._website_form_last_record().sudo().job_id"/>
<t t-set="responsible" t-value="job and job.user_id.website_published and job.user_id "/>
</t>
<t t-if="responsible">
<div class="col-lg-12">
<h3 class="mb32 text-center">Your application has been sent to:</h3>
<div class="oe_structure"/>
<div id="jobs_thankyou" class="container">
<div class="row pt24 pb24">
<div class="col pt24 pb24 text-center">
<h1 class="fw-bolder">Congratulations!</h1>
<p class="fw-light pb24">
Your application has been posted successfully,<br class="mb-2"/>
We usually respond within 3 days...
</p>
<img class="img-fluid o_we_custom_image" t-attf-style="width:{{ '50%' if (job_sudo and job_sudo.user_id) else '25%' }} !important;" src="/website_hr_recruitment/static/src/img/job_congratulations.svg" alt="Congratulations!"/>
<div class="row" id="o_recruitment_thank_cta">
<div class="col-lg-12 text-center mt32 mb48">
<p>
<span class="h5 fw-light">In the meantime,</span><br/>
<span class="h3 mt8 mb32 fw-bold">Take a look around our website:</span>
</p>
<a role="button" href="/" class="btn btn-primary btn-lg">Home</a><a role="button" href="/" class="btn btn-primary btn-lg ms-3">About Us</a><a role="button" href="/" class="btn btn-primary btn-lg ms-3">Products</a>
</div>
<div class="col-lg-1 offset-lg-4">
<p t-field="responsible.avatar_128" t-options="{'widget': 'image', 'qweb_img_responsive': False, 'class': 'rounded-circle d-block mx-auto o_image_64_cover'}"/>
</div>
<div class="col-lg-5 o_responsible_data">
<h4 class="mt0" t-field="responsible.name"/>
<p t-field="responsible.function"/>
<t t-if='responsible.email'>
<i class="fa fa-envelope" role="img" aria-label="Email" title="Email"></i> <a t-attf-href="mailto:#{responsible.email}" t-esc="responsible.email"/>
</t>
<t t-if='responsible.phone'>
<br/><i class="fa fa-phone" role="img" aria-label="Phone" title="Phone"></i> <span t-field="responsible.phone"/>
</t>
</div>
<div class="col-lg-12 mt32 mb32 text-center">
<span>
We usually reply between one and three days.<br/>
Feel free to contact him/her if you have further questions.
</span>
</div>
</t>
</div>
<div class="row" id="o_recruitment_thank_cta">
<div class="col-lg-12 text-center mb32">
In the meantime,
<h3 class="mt8 mb32">Look around on our website:</h3>
<a role="button" href="/" class="btn btn-primary btn-lg">Continue To Our Website</a>
</div>
</div>
<!-- HR Recruiter Block -->
<t t-if="job_sudo and job_sudo.user_id">
<div class="col-lg-4 align-self-center ps-4 o_cc o_cc2 rounded">
<section class="s_text_block pt24" data-snippet="s_text_block" data-name="Text">
<div class="container">
<p class="text-center mb-0 fs-3 lead">Your <b>contact</b> information is:</p>
</div>
</section>
<section class="s_company_team pt12" data-snippet="s_company_team" data-name="Team">
<div class="container-fluid">
<div class="row justify-content-center">
<div class="o_jobs_hr_recruiter col-10 o_cc o_cc1 mt24 p-4 border border-primary rounded shadow">
<div class="row align-items-center">
<div class="col-lg-5 pb16 o_not_editable">
<img t-att-src="image_data_uri(job_sudo.user_id.avatar_256)" class="img-fluid" loading="lazy"/>
</div>
<div class="col-lg-7">
<h2 class="o_default_snippet_text" t-field="job_sudo.user_id.name"/>
<p class="fw-light" t-field="job_sudo.user_id.job_title"/>
</div>
</div>
<div class="row">
<ul class="list-unstyled">
<li><i class="fa fa-phone fa-fw me-2"></i><span class="o_force_ltr" t-field="job_sudo.user_id.work_phone"/></li>
<li class="d-inline-flex align-items-baseline"><i class="fa fa-envelope fa-fw me-2"></i><span><a class="text-break" t-attf-href="mailto:#{job_sudo.user_id.email}" t-field="job_sudo.user_id.email"/></span></li>
</ul>
</div>
</div>
</div>
</div>
</section>
<section class="s_text_block pt24" data-snippet="s_text_block" data-name="Text">
<div class="container">
<p class="lead alert px-0">
I usually <strong>answer applications within 3 days</strong>.
<br/><br/>
The next step is either a call or a meeting in our offices.
<br/><br/>
Feel free to <strong>contact me if you want a faster
feedback</strong> or if you don't get news from me
quickly enough.
</p>
</div>
</section>
</div>
</t>
</div>
</div>
<div class="oe_structure"/>
</div>
</t>
</t>
@@ -685,17 +729,39 @@
<template id="job_right_side_bar" inherit_id="website_hr_recruitment.index" active="True" name="Right Side Bar">
<xpath expr="//div[@id='jobs_grid']" position="after">
<div class="col-lg-3 oe_structure oe_empty" id="jobs_grid_left">
<div class="col-lg-4 oe_structure oe_empty" id="jobs_grid_right">
<section class="">
<div class="container">
<div class="row">
<div class="col-lg-12">
<img src="/website_hr_recruitment/static/src/img/job_image_1.jpg" class="img-fluid" alt="About us"/>
<h4 class="mt24 mb8">About us</h4>
<p>
<div class="col-lg-12 pb24">
<img src="/website_hr_recruitment/static/src/img/job_image_8.jpg" class="img-fluid" alt="About us"/>
<p class="mt24 mb8">
We are a team of passionate people whose goal is to improve everyone's life through disruptive products.
We build great products to solve your business problems.
</p>
<div class="s_hr text-start pt16 pb16" data-snippet="s_hr" data-name="Separator">
<hr class="w-100 mx-auto" style="border-top-width: 1px; border-top-style: solid; border-top-color: var(--400) !important;"/>
</div>
<div id="connect">
<ul class="list-unstyled text-nowrap">
<li><i class="fa fa-comment fa-fw me-2"></i><span><a href="/contactus">Contact us</a></span></li>
<li><i class="fa fa-envelope fa-fw me-2"></i><span><a href="mailto:info@yourcompany.example.com">info@yourcompany.example.com</a></span></li>
<li><i class="fa fa-phone fa-fw me-2"></i><span class="o_force_ltr"><a href="tel:+1 (650) 691-3277">+1 (650) 691-3277</a></span></li>
</ul>
<!-- Social media -->
<div class="s_social_media text-start" data-name="Social Media" data-snippet="s_social_media">
<h5 class="s_social_media_title d-none">Follow us</h5>
<a href="/website/social/facebook" class="s_social_media_facebook text-decoration-none" target="_blank">
<i class="fa fa-facebook rounded-empty-circle btn btn-outline-primary shadow-sm"></i>
</a>
<a href="/website/social/twitter" class="s_social_media_twitter text-decoration-none" target="_blank">
<i class="fa fa-twitter rounded-empty-circle btn btn-outline-primary shadow-sm"></i>
</a>
<a href="/website/social/linkedin" class="s_social_media_linkedin text-decoration-none" target="_blank">
<i class="fa fa-linkedin rounded-empty-circle btn btn-outline-primary shadow-sm"></i>
</a>
</div>
</div>
</div>
</div>
</div>