Skip to content
Snippets Groups Projects
Commit e8b4e93e authored by Benjamin - Le Filament's avatar Benjamin - Le Filament
Browse files

[add] cmis file preview widget

parent 269281c3
No related branches found
No related tags found
No related merge requests found
/* ---------------------------------------------------------------
Copyright 2020 Le Filament
License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
------------------------------------------------------------------*/
odoo.define("cgscop_alfresco.cmis_file_preview", function (require) {
"use strict";
var core = require("web.core");
var registry = require('web.field_registry');
var AbstractField = require('web.AbstractField');
var basicFields = require('web.basic_fields');
var cmis_widgets = require("cmis_web.form_widgets");
var DocumentViewer = require('cmis_web.DocumentViewer')
var session = require("web.session");
var _t = core._t;
var QWeb = core.qweb;
var FieldCmisFilePreview = AbstractField.extend({
template: "CmisFilePreview",
events: {
"click": "on_click_preview"
},
on_click_preview: function (event) {
event.stopPropagation();
var self = this
// CGSCOP : appel vers la fonction custom
self._rpc({
route: "/web/alfresco/session-backend",
params: {
username: session.username,
},
}).then(function (result) {
self.cmis_session = cmis.createSession(result.backend_location);
self.cmis_session.alf_ticket = result.ticket;
self.cmis_session.setCredentials("ROLE_TICKET", result.ticket);
self.cmis_session.loadRepositories()
.ok(function (data) {
self.cmis_session.getObject(self.value)
.ok(function (object) {
var cmisObjectWrapped = new cmis_widgets.CmisObjectWrapper(self, object, self.cmis_session);
var documentViewer = new DocumentViewer(self, cmisObjectWrapped, [cmisObjectWrapped]);
documentViewer.appendTo($('body'));
})
.notOk(function (error) {
console.log(error);
});
})
.notOk(function (error) {
console.log(error);
});
});
},
});
registry.add('cmis_file_preview', FieldCmisFilePreview);
return {
FieldCmisFilePreview: FieldCmisFilePreview,
};
});
<?xml version="1.0" encoding="UTF-8" ?>
<templates id="template" xml:space="preserve">
<t t-name="CmisFilePreview">
<div class="cmis_file_preview">
<button
type="button"
t-att-class="'btn ' + widget.attrs.color"
aria-label="Preview"
data-toggle="tooltip"
title="Preview"
>
<t t-if="widget.attrs.icon">
<span
t-att-class="'fa ' + widget.attrs.icon"
/>
</t>
<span>
<t t-esc="widget.attrs.string" />
</span>
</button>
</div>
</t>
</templates>
......@@ -8,6 +8,10 @@
inherit_id="cmis_web.assets_backend"
>
<xpath expr="." position="inside">
<script
type="text/javascript"
src="/cgscop_alfresco/static/src/js/cmis_file_preview.js"
/>
<script
type="text/javascript"
src="/cgscop_alfresco/static/src/js/form_widgets.js"
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment