Sélectionner une révision Git
Bifurcation depuis
Le Filament / Confédération Générale des SCOP / cgscop_timesheet
Le projet source a une visibilité limitée.
form_widgets.js 2,27 Kio
/*---------------------------------------------------------------
Copyright 2020 Le Filament
License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
------------------------------------------------------------------*/
odoo.define('cgscop_alfresco.form_widgets', function(require) {
"use strict";
var core = require('web.core');
var form_widgets = require('cmis_web.form_widgets');
var session = require('web.session');
form_widgets.CmisObjectWrapper.include({
/* Surcharge les fonction parse_object (téléchargement)
* et get_content_url (preview) pour passer le ticket
* l'url appelée
*/
parse_object: function (cmis_object) {
this._super.apply(this, arguments);
if (this.cmis_session.alf_ticket) {
this.url = this.cmis_session.getContentStreamURL(this.objectId, 'attachment', {'alf_ticket': this.cmis_session.alf_ticket});
}
},
get_content_url: function () {
var options = {}
if (this.cmis_session.alf_ticket) {
options = {'alf_ticket': this.cmis_session.alf_ticket};
}
return this.cmis_session.getContentStreamURL(this.objectId, 'inline', options);
},
}),
form_widgets.FieldCmisFolder.include({
/**
* Surcharge la fonction d'initialisation de la session CMIS pour
* passer le token de l'utilisateur
*/
init_cmis_session: function () {
var self = this;
$.when(this.cmis_config_loaded).done(function () {
self.cmis_session = cmis.createSession(self.cmis_location);
self.cmis_session.setGlobalHandlers(self.on_cmis_error, self.on_cmis_error);
// CGSCOP : appel vers la fonction custom
self._rpc({route:'/web/alfresco/session', params:{
'username': session.username
}}).done(function (result) {
self.cmis_session['alf_ticket'] = result;
self.cmis_session.setCredentials('ROLE_TICKET', result);
});
self.cmis_session_initialized.resolve();
self.cmis_session.setCharacterSet(document.characterSet);
});
},
});
});