179 lines
10 KiB
XML
179 lines
10 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<odoo>
|
|
<data>
|
|
|
|
<!--
|
|
Integrate Livechat in Common Frontend for Website
|
|
Template registering all the assets required to execute the Livechat from a page containing Odoo
|
|
-->
|
|
<template id="assets_frontend" name="im_livechat assets frontend" inherit_id="website.assets_frontend">
|
|
<xpath expr="." position="inside">
|
|
<script type="text/javascript" src="/bus/static/src/js/bus.js"></script>
|
|
<script type="text/javascript" src="/mail/static/src/js/chat_window.js"></script>
|
|
<script type="text/javascript" src="/mail/static/src/js/thread.js"></script>
|
|
<script type="text/javascript" src="/im_livechat/static/src/js/im_livechat.js"></script>
|
|
<link rel="stylesheet" href="/mail/static/src/less/chat_window.less"></link>
|
|
<link rel="stylesheet" href="/mail/static/src/less/thread.less"></link>
|
|
<link rel="stylesheet" href="/im_livechat/static/src/less/im_livechat.less"/>
|
|
</xpath>
|
|
</template>
|
|
<template id="loader" inherit_id="website.layout" name="Livechat : include loader on Website">
|
|
<xpath expr="//div[@id='wrapwrap']" position="after">
|
|
<t t-if="website and website.channel_id">
|
|
<script>
|
|
<t t-call="im_livechat.loader">
|
|
<t t-set="channel" t-value="website.channel_id.id"/>
|
|
</t>
|
|
</script>
|
|
</t>
|
|
</xpath>
|
|
</template>
|
|
|
|
<!-- Layout add footer -->
|
|
<template id="header_footer_custom" inherit_id="website.footer_default" name="Footer Rating Livechat Link">
|
|
<xpath expr="//ul[@id='products']" position="inside">
|
|
<li><a href="/livechat/">Livechat Support</a></li>
|
|
</xpath>
|
|
</template>
|
|
|
|
<!-- Page Layout -->
|
|
<template id="channel_page" name="Livechat Channel Satisfaction Page" page="True">
|
|
<t t-call="website.layout">
|
|
<div id="wrap">
|
|
<div class="container">
|
|
<!-- published button -->
|
|
<t t-call="website.publish_management">
|
|
<t t-set="object" t-value="channel"/>
|
|
<t t-set="publish_edit" t-value="True"/>
|
|
</t>
|
|
|
|
<h1><span>Livechat Channel</span> <small t-field="channel.name" /></h1>
|
|
<div t-field="channel.website_description" class="oe_structure mt16" />
|
|
<div class="row mt32">
|
|
<div class="col-md-8">
|
|
<t t-if="len(ratings) > 0">
|
|
<div class="row">
|
|
<h3>Statistics</h3>
|
|
<div class="row">
|
|
<div class="col-md-3">
|
|
<div class="panel panel-warming">
|
|
<div class="panel-body text-center bg-warning">
|
|
<img src="/rating/static/src/img/rating_5.png" style="height:50px"/>
|
|
</div>
|
|
<div class="panel-body text-center bg-warning">
|
|
<h2 style="margin: 0">
|
|
<b style="font-size: 50px">
|
|
<t t-esc="percentage['okay']" />
|
|
</b>
|
|
<small>%</small>
|
|
</h2>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="col-md-4">
|
|
<div class="panel panel-success">
|
|
<div class="panel-body text-center bg-success">
|
|
<img src="/rating/static/src/img/rating_10.png" style="height:60px"/>
|
|
</div>
|
|
<div class="panel-body text-center bg-success">
|
|
<h2 style="margin: 0">
|
|
<b style="font-size: 60px">
|
|
<t t-esc="percentage['great']" />
|
|
</b>
|
|
<small>%</small>
|
|
</h2>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="col-md-3">
|
|
<div class="panel panel-danger">
|
|
<div class="panel-body text-center bg-danger">
|
|
<img src="/rating/static/src/img/rating_1.png" style="height:40px"/>
|
|
</div>
|
|
<div class="panel-body text-center bg-danger">
|
|
<h2 style="margin: 0">
|
|
<b style="font-size: 40px">
|
|
<t t-esc="percentage['bad']" />
|
|
</b>
|
|
<small>%</small>
|
|
</h2>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="row">
|
|
<div class="col-md-12 mb32">
|
|
<h3>The <t t-esc="len(ratings)"/> last feedbacks</h3>
|
|
<div style="text-align:center">
|
|
<t t-foreach="ratings" t-as="rating" class="media">
|
|
<img t-attf-src='/rating/static/src/img/rating_#{int(rating.rating)}.png' t-att-alt="rating.res_name"/>
|
|
<t t-if="(rating_index+1) % 10 == 0">
|
|
<br/>
|
|
</t>
|
|
</t>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</t>
|
|
<t t-if="len(ratings) == 0">
|
|
<h4 style="text-align:center">This is no rating for this channel for now.</h4>
|
|
</t>
|
|
</div>
|
|
<div class="col-md-4 mb32">
|
|
<h3>The Team</h3>
|
|
<t t-foreach="team" t-as="user" class="media">
|
|
<div class="media">
|
|
<div class="pull-left" t-if='user.image_small'>
|
|
<img t-att-src="user.image_small and ('data:image/png;base64,' + user.image_small) or '/web/static/src/img/placeholder.png'"
|
|
class="img-rounded" t-att-alt="user.name"/>
|
|
</div>
|
|
<div class="media-body">
|
|
<h5><t t-esc="user.name"/></h5>
|
|
</div>
|
|
</div>
|
|
</t>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</t>
|
|
</template>
|
|
|
|
|
|
<template id="channel_list_page" name="Livechat Channel List Page">
|
|
<t t-call="website.layout">
|
|
<div id="wrap">
|
|
<div class="oe_structure"/>
|
|
<div class="container">
|
|
<h1>Livechat Support Channels</h1>
|
|
<div class="row mt32 mb32">
|
|
<t t-if="not len(channels)">
|
|
<div class="col-md-6 col-md-offset-3">
|
|
There is no public livechat channel to show.
|
|
</div>
|
|
</t>
|
|
<t t-if="len(channels)">
|
|
<div class="col-md-6 col-md-offset-3">
|
|
<t t-foreach="channels" t-as="channel">
|
|
<div class="media">
|
|
<a class="pull-left" t-attf-href="/livechat/channel/#{ slug(channel)}">
|
|
<img t-att-src="channel.image_small and ('data:image/png;base64,' + channel.image_small) or '/web/static/src/img/placeholder.png'" t-att-alt="channel.name" />
|
|
</a>
|
|
<div class="media-body">
|
|
<h4 class="media-heading"><t t-esc="channel.name"/></h4>
|
|
</div>
|
|
</div>
|
|
</t>
|
|
</div>
|
|
</t>
|
|
</div>
|
|
</div>
|
|
<div class="oe_structure"/>
|
|
</div>
|
|
</t>
|
|
</template>
|
|
|
|
</data>
|
|
</odoo>
|