[FW][IMP] digest: milkify the digest email template

This PR contains a revamp of the digest email in the new "Milk" style replacing
the old purple with the new one. This has been adapted in all digest data too.

The images of the digest email's tips have been replaced by "milkified"
versions of them, already available on odoo cdn by the way.

Task-3338467

closes odoo/odoo#158351

Forward-port-of: odoo/odoo#157896
Forward-port-of: odoo/odoo#125432
Related: odoo/enterprise#58992
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
This commit is contained in:
Odoo's Mergebot
2024-03-20 19:56:42 +00:00
committed by Odoo Online
57 changed files with 94 additions and 95 deletions
Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.0 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

+5 -5
View File
@@ -34,7 +34,7 @@
<div>
<p class="tip_title">Tip: Did you know Odoo has built-in lead mining?</p>
<p class="tip_content">For a sales team, there is nothing worse than being dry on leads. Fortunately, in just a few clicks, you can generate leads specifically targeted to your needs: company size, industry, etc. To help you test the feature, we offer you 200 credits for free.</p>
<img src="https://download.odoocdn.com/digests/crm/static/src/img/generate-leads.gif" width="540" class="illustration_border" />
<img src="https://download.odoocdn.com/digests/crm/static/src/img/milk-generate-leads.gif" width="540" class="illustration_border" />
</div>
</field>
</record>
@@ -46,7 +46,7 @@
<div>
<p class="tip_title">Tip: Opportunity win rate is predicted with AI</p>
<p class="tip_content">Odoo's artificial intelligence engine predicts the success rate of each opportunity based on your history. You can always update the success rate manually, but if you let Odoo do the job the score is updated while the opportunity moves forward in your sales cycle.</p>
<img src="https://download.odoocdn.com/digests/crm/static/src/img/probability-rate.gif" width="540" class="illustration_border" />
<img src="https://download.odoocdn.com/digests/crm/static/src/img/milk-probability-rate.gif" width="540" class="illustration_border" />
</div>
</field>
</record>
@@ -58,7 +58,7 @@
<div>
<p class="tip_title">Tip: Manage your pipeline</p>
<p class="tip_content">A great tip to boost sales efficiency is to always define a next step on each opportunity. To manage ongoing activities, click on any status of the progress bar to filter opportunities based on their next activities' status. Click on the grey area of the progress bar to see all opportunities that have no next activity.</p>
<img src="https://download.odoocdn.com/digests/crm/static/src/img/pipeline-progress.gif" width="540" class="illustration_border" />
<img src="https://download.odoocdn.com/digests/crm/static/src/img/milk-pipeline-progress.gif" width="540" class="illustration_border" />
</div>
</field>
</record>
@@ -70,7 +70,7 @@
<div>
<p class="tip_title">Tip: Do not waste time recording customers' data</p>
<p class="tip_content">Did you know you can search a company by name or VAT number to instantly fill in all its data? Odoo autocompletes everything for you: logo, address, company size, business information, social media accounts, etc.</p>
<img src="https://download.odoocdn.com/digests/crm/static/src/img/autofill.gif" width="540" class="illustration_border" />
<img src="https://download.odoocdn.com/digests/crm/static/src/img/milk-autofill.gif" width="540" class="illustration_border" />
</div>
</field>
</record>
@@ -82,7 +82,7 @@
<div>
<p class="tip_title">Tip: Turn a selection of opportunities into a map</p>
<p class="tip_content">Did you know you can turn a list of opportunities into a map view, using the top-right map icon? A lot of screens in Odoo can be turned into a map: tasks, contacts, delivery orders, etc.</p>
<img src="https://download.odoocdn.com/digests/crm/static/src/img/mapview-toggle.gif" width="540" class="illustration_border" />
<img src="https://download.odoocdn.com/digests/crm/static/src/img/milk-mapview-toggle.gif" width="540" class="illustration_border" />
</div>
</field>
</record>
Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 62 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 23 KiB

+68 -69
View File
@@ -11,7 +11,7 @@
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=no;"/>
<meta http-equiv="X-UA-Compatible" content="IE=9; IE=8; IE=7; IE=EDGE" />
<style type="text/css">
<t t-set="color_company" t-value="company.email_secondary_color or '#875a7b'"/>
<t t-set="color_company" t-value="company.email_secondary_color or '#714B67'"/>
/* Remove space around the email design. */
html,
body {
@@ -26,44 +26,48 @@
text-decoration: none;
}
#header_background {
background-color: <t t-out="color_company"/>;
padding-top:70px;
padding-top:20px;
}
#header {
border-start: 1px solid <t t-out="color_company"/>;
border-end: 1px solid <t t-out="color_company"/>;
border-top: 1px solid #d8dadd;
}
.global_layout {
width: 588px;
margin: 0 auto;
background-color: #ffffff;
border-left: 1px solid #d8dadd;
border-right: 1px solid #d8dadd;
}
.company_name {
display: inline;
vertical-align: middle;
color: #878d97;
font-weight: bold;
color: #8f8f8f;
font-size: 25px;
font-size: 24px;
}
.header_title {
font-weight: bold;
color: #282f33;
color: #374151;
font-size: 18px;
word-break: break-all;
}
.button {
color: #ffffff;
}
.td_button {
background-color: <t t-out="color_company"/>;
border-radius: 5px;
border-radius: 3px;
white-space: nowrap;
}
.td_button_connect {
background-color: <t t-out="color_company"/>;
}
#button_connect {
font-size: 15px;
color: #ffffff;
font-size: 16px;
}
#button_open_report {
color: #007e84;
font-size: 14px;
}
.header_date {
color: #8f8f8f;
font-size: 12px;
color: #878d97;
font-size: 14px;
}
.tip_title {
margin-top: 0;
@@ -72,16 +76,16 @@
}
.tip_content {
margin: 0 auto;
color: #333333;
color: #374151;
text-align: justify;
text-justify: inter-word;
margin: 15px auto 0 auto;
font-size: 15px;
font-size: 16px;
line-height: 25px;
}
.tip_button {
background-color: <t t-out="color_company"/>;
border-radius: 5px;
border-radius: 3px;
padding: 10px;
text-decoration: none;
}
@@ -90,42 +94,37 @@
}
.illustration_border {
width: 100%;
border: 1px solid #808080;
border: 1px solid #d8dadd;
margin-top: 20px;
}
.kpi_row_footer {
padding-bottom: 20px;
}
.kpi_header {
font-size: 15px;
font-size: 14px;
font-weight: bold;
color: #282f33;
}
#button_open_report {
font-size: 12px;
font-weight: normal;
color: #374151;
}
.kpi_cell {
width: 33%;
text-align: center;
padding-top: 2px;
padding-top: 10px;
padding: 0;
}
.kpi_value {
color: #282f33;
color: #374151;
font-weight: bold;
text-decoration: none;
font-size: 30px;
font-size: 28px;
}
.kpi_border_col {
color: #00A09D;
color: #374151;
}
.kpi_value_label {
display: inline-block;
margin-bottom: 10px;
color: #888888;
font-size: 12px;
text-transform: uppercase;
color: #878d97;
font-size: 14px;
}
.kpi_margin_margin {
margin-bottom: 10px;
@@ -136,11 +135,11 @@
}
.preference {
margin-bottom: 15px;
color: #6b6d70;
font-size: 15px;
color: #374151;
font-size: 14px;
}
.by_odoo {
color: #8f8f8f;
color: #878d97;
font-size: 12px;
}
.odoo_link_text {
@@ -148,16 +147,16 @@
color: <t t-out="color_company"/>;
}
.run_business {
color: #2d2a26;
color: #374151;
margin: 15px auto;
font-size: 18px;
}
#footer {
background-color: #eeeeee;
color: #8f8f8f;
background-color: #F9FAFB;
color: #878d97;
text-align: center;
font-size: 20px;
border: 1px solid #eeeeee;
border: 1px solid #F9FAFB;
border-top: 0;
}
#stock_tip {
@@ -182,7 +181,7 @@
}
#header {
padding: 15px 20px;
border: 1px solid #eeeeee;
border: 1px solid #F9FAFB;
}
.company_name {
font-size: 15px;
@@ -269,15 +268,15 @@
<!-- DIGEST MAIN TEMPLATE -->
<template id="digest_mail_main">
<table cellspacing="0" cellpadding="0" style="width: 100%;border: 1px solid #eeeeee;border-bottom: 0;" align="center">
<table cellspacing="0" cellpadding="0" style="width: 100%;background-color: #F9FAFB;" align="center">
<tbody>
<tr>
<td id="header_background" align="center">
<table cellspacing="0" cellpadding="0" border="0" id="header" class="global_layout">
<tbody>
<tr>
<td style="padding: 20px 20px 0px 20px;" class="p0"><p t-field="company.name" class="company_name" /></td>
<td align="right" style="padding: 20px 20px 0px 0px;" class="p0">
<td style="padding: 20px 20px 5px 20px;" class="p0"><p t-field="company.name" class="company_name" /></td>
<td align="right" style="padding: 20px 20px 5px 0px;" class="p0">
<table>
<tbody>
<tr>
@@ -300,7 +299,7 @@
</td>
</tr>
<tr>
<td style="padding: 0px 0px 20px 20px;" class="p0" colspan="2">
<td style="padding: 10px 0px 20px 20px;" class="p0" colspan="2">
<span t-esc="formatted_date" class="header_date"/>
</td>
</tr>
@@ -310,14 +309,14 @@
</tr>
</tbody>
</table>
<table cellspacing="0" cellpadding="0" border="0" style="width: 100%;background-color: #eeeeee;">
<table cellspacing="0" cellpadding="0" border="0" style="width: 100%;background-color: #F9FAFB;">
<tbody>
<tr>
<td align="center">
<table cellspacing="0" cellpadding="0" border="0" class="global_layout">
<tbody>
<tr t-if="tips" t-foreach="tips" t-as="tip">
<td colspan="3" style="width: 100%;padding: 20px;border: 1px solid #eeeeee;">
<td colspan="3" style="width: 100%;padding: 20px;border: 1px solid #F9FAFB;">
<table>
<tbody>
<tr>
@@ -335,16 +334,16 @@
<table t-if="kpi_info.get('kpi_col1') or kpi_info.get('kpi_col2') or kpi_info.get('kpi_col3')"
t-att-data-field="kpi_info['kpi_name']" cellspacing="0" cellpadding="10" style="width: 100%;margin-bottom: 5px;">
<tr class="kpi_header">
<td colspan="2" style="padding: 0px 0px 10px 0px;">
<span t-esc="kpi_info['kpi_fullname']" />
<td colspan="2" style="padding: 0px 0px 5px 0px;">
<span style="text-transform: uppercase;" t-esc="kpi_info['kpi_fullname']" />
</td>
<td t-if="kpi_info['kpi_action']" align="right" style="padding: 0px 0px 10px 0px;">
<td t-if="kpi_info['kpi_action']" align="right" style="padding: 0px 0px 5px 0px;">
<table>
<tbody>
<tr>
<td class="td_button td_button_open_report" style="padding: 1px 10px;height: 24px;">
<td class="td_button td_button_open_report" style="padding: 1px 5px;height: 24px;">
<a t-att-href="'/web#action=%s' % kpi_info['kpi_action']">
<span class="button" id="button_open_report">Open Report</span>
<span class="button" id="button_open_report">➔ Open Report</span>
</a>
</td>
</tr>
@@ -353,21 +352,21 @@
</td>
</tr>
<tr style="vertical-align: top;">
<td t-if="kpi_info.get('kpi_col1')" class="kpi_cell" style="border-top: 2px solid #00A09D;">
<td t-if="kpi_info.get('kpi_col1')" class="kpi_cell" style="padding-top: 10px; border-top: 1px solid #e6e6e6;">
<div t-call="digest.digest_tool_kpi">
<t t-set="kpi_value" t-value="kpi_info['kpi_col1']['value']" />
<t t-set="kpi_margin" t-value="kpi_info['kpi_col1'].get('margin')" />
<t t-set="kpi_subtitle" t-value="kpi_info['kpi_col1']['col_subtitle']" />
</div>
</td>
<td t-if="kpi_info.get('kpi_col2')" class="kpi_cell" t-att-style="'border-top: 2px solid ' + (company.email_secondary_color or '#875a7b')">
<td t-if="kpi_info.get('kpi_col2')" class="kpi_cell" style="padding-top: 10px; border-top: 1px solid #e6e6e6;">
<div t-call="digest.digest_tool_kpi">
<t t-set="kpi_value" t-value="kpi_info['kpi_col2']['value']" />
<t t-set="kpi_margin" t-value="kpi_info['kpi_col2'].get('margin')" />
<t t-set="kpi_subtitle" t-value="kpi_info['kpi_col2']['col_subtitle']" />
</div>
</td>
<td t-if="kpi_info.get('kpi_col3')" class="kpi_cell" style="border-top: 2px solid #00A09D;">
<td t-if="kpi_info.get('kpi_col3')" class="kpi_cell" style="padding-top: 10px; border-top: 1px solid #e6e6e6;">
<div t-call="digest.digest_tool_kpi">
<t t-set="kpi_value" t-value="kpi_info['kpi_col3']['value']" />
<t t-set="kpi_margin" t-value="kpi_info['kpi_col3'].get('margin')" />
@@ -387,10 +386,10 @@
</tbody>
<tfoot>
<tr>
<td style="padding: 20px;border: 1px solid #eeeeee;">
<td style="padding: 20px; border-bottom: 1px solid #d8dadd;">
<table border="0" width="100%">
<tbody>
<tr style="background-color: #eeeeee;">
<tr style="background-color: #F9FAFB;">
<td align="center" colspan="3" valign="center" style="padding: 15px;">
<div t-if="preferences" t-foreach="preferences" t-as="preference" class="preference">
<t t-out="preference" />
@@ -402,14 +401,14 @@
–
<a t-attf-href="/digest/#{object.id}/unsubscribe?token=#{unsubscribe_token}&amp;user_id=#{user.id}" target="_blank"
style="text-decoration: none;">
<span style="color: #8f8f8f;">Unsubscribe</span>
<span style="color: #878d97;">Unsubscribe</span>
</a>
</t>
<t t-elif="object and object._name == 'digest.digest'">
–
<a t-att-href="'/web#view_type=form&amp;model=digest.digest&amp;id=%s' % object.id" target="_blank"
style="text-decoration: none;">
<span style="color: #8f8f8f;">Unsubscribe</span>
<span style="color: #878d97;">Unsubscribe</span>
</a>
</t>
</div>
@@ -451,14 +450,14 @@
<!-- MOBILE BANNER -->
<template id="digest_section_mobile">
<td colspan="3" style="padding: 20px;width:100%">
<td colspan="3" style="padding: 20px;width:100%; border-bottom: 1px solid #d8dadd;">
<table>
<tbody>
<tr>
<td align="right" style="width: 50%;">
<img src="https://www.odoo.com/web/image/24717933/odoo-mobile.png" alt="Odoo Mobile" />
<td align="right" style="width: 33%;">
<img src="https://www.odoo.com/web/image/38874595-16ef5349/odoo-mobile.png" alt="Odoo Mobile" />
</td>
<td align="left" style="width: 50%;">
<td align="left" style="width: 66%;">
<table>
<tbody>
<tr>
@@ -497,16 +496,16 @@
<!-- KPI DISPLAY -->
<template id="digest_tool_kpi">
<span t-esc="kpi_value" style="color: #00A09D;font-weight: bold;text-decoration: none;" class="kpi_value kpi_border_col" />
<span t-esc="kpi_value" style="color: #374151;text-decoration: none;" class="kpi_value kpi_border_col" />
<br/>
<span t-esc="kpi_subtitle" class="kpi_value_label" />
<table t-if="kpi_margin" class="kpi_margin_margin" align="center" border="0" cellspacing="0" cellpadding="0">
<tr>
<td t-if="kpi_margin &gt; 0.0" class="kpi_margin positive_kpi_margin" style="padding: 5px 10px;font-size: 12px;text-decoration: none;border-radius: 5px;border: 1px solid #c4ecd7;border-radius: 5px; background-color: #c4ecd7;color: #17613a;">
▲ <t t-esc="'%.2f' % kpi_margin" /> %
<td t-if="kpi_margin &gt; 0.0" class="kpi_margin positive_kpi_margin" style="padding: 3px 10px;font-size: 12px;text-decoration: none;border-radius: 50px;border: 1px solid #c4ecd7;border-radius: 5px; background-color: #c4ecd7;color: #17613a;">
⬆ <t t-esc="'%.2f' % kpi_margin" /> %
</td>
<td t-elif="kpi_margin &lt; 0.0" class="kpi_margin negative_kpi_margin" style="padding: 5px 10px;font-size: 12px;text-decoration: none;border-radius: 5px;border: 1px solid #f4cfce;background-color: #f7dddc;color: #712b29;">
▼ <t t-esc="'%.2f' % kpi_margin" /> %
<td t-elif="kpi_margin &lt; 0.0" class="kpi_margin negative_kpi_margin" style="padding: 3px 10px;font-size: 12px;text-decoration: none;border-radius: 50px;border: 1px solid #f4cfce;background-color: #f7dddc;color: #712b29;">
⬇ <t t-esc="'%.2f' % kpi_margin" /> %
</td>
</tr>
</table>
+5 -5
View File
@@ -19,7 +19,7 @@
<div>
<p class="tip_title">Tip: Speed up your workflow with shortcuts</p>
<p class="tip_content">Press ALT in any screen to highlight shortcuts for every button in the screen. It is useful to process multiple documents in batch.</p>
<img src="https://download.odoocdn.com/digests/digest/static/src/img/alt-shortcuts.gif" width="540" class="illustration_border" />
<img src="https://download.odoocdn.com/digests/digest/static/src/img/milk-alt-shortcuts.gif" width="540" class="illustration_border" />
</div>
</field>
</record>
@@ -31,7 +31,7 @@
<div>
<p class="tip_title">Tip: Click on an avatar to chat with a user</p>
<p class="tip_content">Have a question about a document? Click on the responsible user's picture to start a conversation. If his avatar has a green dot, he is online.</p>
<img src="https://download.odoocdn.com/digests/digest/static/src/img/avatar.gif" width="540" class="illustration_border" />
<img src="https://download.odoocdn.com/digests/digest/static/src/img/milk-avatar.gif" width="540" class="illustration_border" />
</div>
</field>
</record>
@@ -43,7 +43,7 @@
<div>
<p class="tip_title">Tip: A calculator in Odoo</p>
<p class="tip_content">When editing a number, you can use formulae by typing the `=` character. This is useful when computing a margin or a discount on a quotation, sale order or invoice.</p>
<img src="https://download.odoocdn.com/digests/digest/static/src/img/calculator.gif" width="540" class="illustration_border" />
<img src="https://download.odoocdn.com/digests/digest/static/src/img/milk-calculator.gif" width="540" class="illustration_border" />
</div>
</field>
</record>
@@ -55,7 +55,7 @@
<div>
<p class="tip_title">Tip: How to ping users in internal notes?</p>
<p class="tip_content">Type "@" to notify someone in a message, or "#" to link to a channel. Try to notify @OdooBot to test the feature.</p>
<img src="https://download.odoocdn.com/digests/digest/static/src/img/notifications.gif" width="540" class="illustration_border" />
<img src="https://download.odoocdn.com/digests/digest/static/src/img/milk-notifications.png" width="540" class="illustration_border" />
</div>
</field>
</record>
@@ -68,7 +68,7 @@
<p class="tip_title">Tip: Knowledge is power</p>
<p class="tip_content">When following documents, use the pencil icon to fine-tune the information you want to receive.
Follow a project / sales team to keep track of this project's tasks / this team's opportunities.</p>
<img src="https://download.odoocdn.com/digests/digest/static/src/img/following.png" width="540" class="illustration_border" />
<img src="https://download.odoocdn.com/digests/digest/static/src/img/milk-following.png" width="540" class="illustration_border" />
</div>
</field>
</record>
+2 -2
View File
@@ -343,13 +343,13 @@ class Digest(models.Model):
new_perioridicy_str=new_perioridicy_str)
)
elif self.periodicity == 'daily' and user.has_group('base.group_erp_manager'):
preferences.append(Markup('<p>%s<br /><a href="%s" target="_blank" style="color:#875A7B; font-weight: bold;">%s</a></p>') % (
preferences.append(Markup('<p>%s<br /><a href="%s" target="_blank" style="color:#017e84; font-weight: bold;">%s</a></p>') % (
_('Prefer a broader overview?'),
f'/digest/{self.id:d}/set_periodicity?periodicity=weekly',
_('Switch to weekly Digests')
))
if user.has_group('base.group_erp_manager'):
preferences.append(Markup('<p>%s<br /><a href="%s" target="_blank" style="color:#875A7B; font-weight: bold;">%s</a></p>') % (
preferences.append(Markup('<p>%s<br /><a href="%s" target="_blank" style="color:#017e84; font-weight: bold;">%s</a></p>') % (
_('Want to customize this email?'),
f'/web#view_type=form&model={self._name}&id={self.id:d}',
_('Choose the metrics you care about')
Binary file not shown.

Before

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 52 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 33 KiB

+1 -1
View File
@@ -9,7 +9,7 @@
<div>
<p class="tip_title">Tip: Snap pictures of your receipts with the remote app</p>
<p class="tip_content">Do not keep your expense tickets in your pockets any longer. Just snap a picture of your receipt and let Odoo digitalizes it for you. The OCR and Artificial Intelligence will fill the data automatically.</p>
<img src="https://download.odoocdn.com/digests/hr_expense/static/src/img/expense.png" width="540" class="illustration_border" />
<img src="https://download.odoocdn.com/digests/hr_expense/static/src/img/milk-expense.png" width="540" class="illustration_border" />
</div>
</field>
</record>
Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

+1 -1
View File
@@ -18,7 +18,7 @@
By setting an alias to a job position, emails sent to this address create applications automatically. You can even use multiple trackers to get statistics according to the source of the application: LinkedIn, Monster, Indeed, etc.
<t t-set="record" t-value="object.env['hr.job'].search([('alias_name', '!=', False)], limit=1)" />
<t t-if="record.alias_email">
<a t-attf-href="mailto:{{record.alias_email}}" target="_blank" style="color: #875a7b; text-decoration: none;">Try sending an email</a>
<a t-attf-href="mailto:{{record.alias_email}}" target="_blank" style="color: #714B67; text-decoration: none;">Try sending an email</a>
</t>
</p>
</div>
+1 -1
View File
@@ -17,7 +17,7 @@
<div>
<p class="tip_title">Tip: Use canned responses to chat faster</p>
<p class="tip_content">Use canned responses to define templates of messages in the livechat app. To load a canned response, start your sentence with ':' and select the template.</p>
<img src="https://download.odoocdn.com/digests/im_livechat/static/src/img/canned-responses.gif" width="540" class="illustration_border" />
<img src="https://download.odoocdn.com/digests/im_livechat/static/src/img/milk-canned-responses.gif" width="540" class="illustration_border" />
</div>
</field>
</record>
Binary file not shown.

Before

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

+1 -1
View File
@@ -7,7 +7,7 @@
–
<a t-attf-href="/mailing/report/unsubscribe?token=#{mailing_report_token}&amp;user_id=#{user_id}"
target="_blank" style="text-decoration: none;">
<span style="color: #8f8f8f;">Turn off Mailing Reports</span>
<span style="color: #878d97;">Turn off Mailing Reports</span>
</a>
</t>
</xpath>
+1 -1
View File
@@ -9,7 +9,7 @@
<div>
<p class="tip_title">Tip: Use tablets in the shop to control manufacturing</p>
<p class="tip_content">With the Odoo work center control panel, your worker can start work orders in the shop and follow instructions of the worksheet. Quality tests are perfectly integrated into the process. Workers can trigger feedback loops, maintenance alerts, scrap products, etc.</p>
<img src="https://download.odoocdn.com/digests/mrp/static/src/img/mrp-tablet.png" width="540" class="illustration_border" />
<img src="https://download.odoocdn.com/digests/mrp/static/src/img/milk-mrp-tablet.png" width="540" class="illustration_border" />
</div>
</field>
</record>
Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

+1 -1
View File
@@ -31,7 +31,7 @@
<t t-set="project_record" t-value="object.env['project.project'].search([('alias_name', '!=', False), ('alias_domain_id', '!=', False)], limit=1, order='sequence asc')"/>
<p class="tip_title">Tip: Create tasks from incoming emails</p>
<t t-if="project_record.alias_email">
<p class="tip_content">Emails sent to <a t-attf-href="mailto:{{project_record.alias_email}}" target="_blank" style="color: #875a7b; text-decoration: none;"><t t-out="project_record.alias_email" /></a> will generate tasks in your <t t-out="project_record.name"></t> project.</p>
<p class="tip_content">Emails sent to <a t-attf-href="mailto:{{project_record.alias_email}}" target="_blank" style="color: #714B67; text-decoration: none;"><t t-out="project_record.alias_email" /></a> will generate tasks in your <t t-out="project_record.name"></t> project.</p>
</t>
<t t-else="">
<p class="tip_content">Create tasks by sending an email to the email address of your project.</p>
+1 -1
View File
@@ -9,7 +9,7 @@
<div>
<p class="tip_title">Tip: How to keep late receipts under control?</p>
<p class="tip_content">When creating a purchase order, have a look at the vendor's <i>On Time Delivery</i> rate: the percentage of products shipped on time. If it is too low, activate the <i>automated reminders</i>. A few days before the due shipment, Odoo will send the vendor an email to ask confirmation of shipment dates and keep you informed in case of any delays. To get the vendor's performance statistics, click on the OTD rate.</p>
<img src="https://download.odoocdn.com/digests/purchase/static/src/img/OTDPurchase.gif" width="540" class="illustration_border" />
<img src="https://download.odoocdn.com/digests/purchase/static/src/img/milk-OTDPurchase.gif" width="540" class="illustration_border" />
</div>
</field>
</record>
Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

+2 -2
View File
@@ -14,7 +14,7 @@
<div>
<p class="tip_title">Tip: Odoo supports configurable products</p>
<p class="tip_content">Struggling with a complex product catalog? Try out the Product Configurator to help sales configure a product with different options: colors, size, capacity, etc. Make sale orders encoding easier and error-proof.</p>
<img src="https://download.odoocdn.com/digests/sale_management/static/src/img/Sales-configure-products.gif" width="540" class="illustration_border" />
<img src="https://download.odoocdn.com/digests/sale_management/static/src/img/milk-Sales-configure-products.gif" width="540" class="illustration_border" />
</div>
</field>
</record>
@@ -26,7 +26,7 @@
<div>
<p class="tip_title">Tip: Sell or buy products in bulk with matrixes</p>
<p class="tip_content">Selling the same product in different sizes or colors? Try the product grid and populate your orders with multiple quantities of each variant. This feature also exists in the Purchase application.</p>
<img src="https://download.odoocdn.com/digests/sale_management/static/src/img/t-shirts.png" width="540" class="illustration_border" />
<img src="https://download.odoocdn.com/digests/sale_management/static/src/img/milk-t-shirts.png" width="540" class="illustration_border" />
</div>
</field>
</record>
Binary file not shown.

Before

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

+5 -5
View File
@@ -9,7 +9,7 @@
<div>
<p class="tip_title">Tip: Engage with visitors to convert them into leads</p>
<p class="tip_content">Monitor your visitors while they are browsing your website with the Odoo Social app. Engage with them in just a click using a live chat request or a push notification. If they have completed one of your forms, you can send them an SMS, or call them right away while they are browsing your website.</p>
<img src="https://download.odoocdn.com/digests/website/static/src/img/website-visitors.gif" width="540" class="illustration_border" />
<img src="https://download.odoocdn.com/digests/website/static/src/img/milk-website-visitors.gif" width="540" class="illustration_border" />
</div>
</field>
</record>
@@ -21,7 +21,7 @@
<div>
<p class="tip_title">Tip: Use royalty-free photos</p>
<p class="tip_content">Search in the media dialogue when you need photos to illustrate your website. Odoo's integration with Unsplash, featuring millions of royalty free and high quality photos, makes it possible for you to get the perfect picture, in just a few clicks.</p>
<img src="https://download.odoocdn.com/digests/website/static/src/img/image-search.gif" width="540" class="illustration_border" />
<img src="https://download.odoocdn.com/digests/website/static/src/img/milk-image-search.gif" width="540" class="illustration_border" />
</div>
</field>
</record>
@@ -33,7 +33,7 @@
<div>
<p class="tip_title">Tip: Search Engine Optimization (SEO)</p>
<p class="tip_content">To get more visitors, you should target keywords that are often searched in Google. With the built-in SEO tool, once you define a few keywords, Odoo will recommend you the best keywords to target. Then adapt your title and description accordingly to boost your traffic.</p>
<img src="https://download.odoocdn.com/digests/website/static/src/img/SEO-keywords.gif" width="540" class="illustration_border" />
<img src="https://download.odoocdn.com/digests/website/static/src/img/milk-SEO-keywords.gif" width="540" class="illustration_border" />
</div>
</field>
</record>
@@ -45,7 +45,7 @@
<div>
<p class="tip_title">Tip: Use illustrations to spice up your website</p>
<p class="tip_content">Not only can you search for royalty-free illustrations, their colors are also converted so that they always fit your Theme.</p>
<img src="https://download.odoocdn.com/digests/website/static/src/img/digest_tip_website_illustrations.gif" width="540" class="illustration_border" />
<img src="https://download.odoocdn.com/digests/website/static/src/img/milk-website-illustrations.gif" width="540" class="illustration_border" />
</div>
</field>
</record>
@@ -57,7 +57,7 @@
<div>
<p class="tip_title">Tip: Add shapes to energize your Website</p>
<p class="tip_content">More than 90 shapes exist and their colors are picked to match your Theme.</p>
<img src="https://download.odoocdn.com/digests/website/static/src/img/digest_tip_website_shapes.gif" width="540" class="illustration_border" />
<img src="https://download.odoocdn.com/digests/website/static/src/img/milk-website-shapes.gif" width="540" class="illustration_border" />
</div>
</field>
</record>
Binary file not shown.

Before

Width:  |  Height:  |  Size: 86 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 67 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 59 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 72 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 57 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 108 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 66 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 46 KiB