WIP to display calls in calendar

This commit is contained in:
Ralf Becker
2021-02-23 00:07:44 +02:00
parent f115c63f8a
commit cf9e3ae4e1
5 changed files with 119 additions and 6 deletions

View File

@ -11,6 +11,7 @@
* @author Nathan Gray <ng@groupware.org>
*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.EgwApp = void 0;
require("jquery");
require("jqueryui");
require("../jsapi/egw_global");
@ -190,6 +191,42 @@ var EgwApp = /** @class */ (function () {
var id_app = _senders[0].id.split('::');
egw.open(id_app[1], this.appname);
};
/**
* Open a CRM view for a contact
*
* @param _action
* @param _senders
* @param _contact_id default: use contact_id from data of _senders[0].id
*/
EgwApp.prototype.openCRMview = function (_action, _senders) {
var contact_id = _senders;
if (typeof _senders === 'object') {
var data = egw.dataGetUIDdata(_senders[0].id);
contact_id = data.data.contact_id;
}
if (typeof contact_id !== 'undefined') {
var crm_list_1 = egw.preference('crm_list', 'addressbook');
if (!crm_list_1 || crm_list_1 === '~edit~')
crm_list_1 = 'infolog';
var open_1 = function (_title) {
var title = _title || this.egw.link_title('addressbook', contact_id, open_1);
if (title) {
this.egw.openTab(contact_id, 'addressbook', 'view', {
crm_list: crm_list_1
}, {
displayName: title,
icon: this.egw.link('/api/avatar.php', {
contact_id: contact_id,
etag: (new Date).valueOf() / 86400 | 0 // cache for a day, better then no invalidation
}),
refreshCallback: 'app.addressbook.view_refresh',
id: contact_id + '-' + crm_list_1
});
}
}.bind(this);
open_1();
}
};
EgwApp.prototype._do_action = function (action_id, selected) {
};
/**

View File

@ -292,6 +292,47 @@ export abstract class EgwApp
egw.open(id_app[1], this.appname);
}
/**
* Open a CRM view for a contact
*
* @param _action
* @param _senders
* @param _contact_id default: use contact_id from data of _senders[0].id
*/
openCRMview(_action, _senders)
{
let contact_id = _senders;
if (typeof _senders === 'object')
{
let data = egw.dataGetUIDdata(_senders[0].id);
contact_id = data.data.contact_id;
}
if (typeof contact_id !== 'undefined')
{
let crm_list = egw.preference('crm_list', 'addressbook');
if (!crm_list || crm_list === '~edit~') crm_list = 'infolog';
let open = function(_title)
{
let title = _title || this.egw.link_title('addressbook', contact_id, open);
if (title)
{
this.egw.openTab(contact_id,'addressbook', 'view', {
crm_list: crm_list
}, {
displayName: title,
icon: this.egw.link('/api/avatar.php', {
contact_id: contact_id,
etag: (new Date).valueOf()/86400|0 // cache for a day, better then no invalidation
}),
refreshCallback: 'app.addressbook.view_refresh',
id: contact_id + '-'+crm_list
});
}
}.bind(this);
open();
}
}
_do_action(action_id : string, selected : [])
{
}