mirror of
https://github.com/EGroupware/egroupware.git
synced 2025-06-26 21:01:30 +02:00
Fix missing calendar owner labels when they weren't in the default options
This commit is contained in:
parent
c6501b6a88
commit
d02a1d31a6
@ -324,42 +324,11 @@ var et2_calendar_planner = (function(){ "use strict"; return et2_calendar_view.e
|
|||||||
// Labels for the rows
|
// Labels for the rows
|
||||||
row_labels: function() {
|
row_labels: function() {
|
||||||
var labels = [];
|
var labels = [];
|
||||||
var accounts = egw.accounts();
|
|
||||||
var already_added = [];
|
var already_added = [];
|
||||||
for(var i = 0; i < this.options.owner.length; i++)
|
for(var i = 0; i < this.options.owner.length; i++)
|
||||||
{
|
{
|
||||||
var user = this.options.owner[i];
|
var user = this.options.owner[i];
|
||||||
if(parseInt(user) === 0)
|
if (user < 0) // groups
|
||||||
{
|
|
||||||
// 0 means current user
|
|
||||||
user = egw.user('account_id');
|
|
||||||
}
|
|
||||||
if (isNaN(user)) // resources
|
|
||||||
{
|
|
||||||
var planner = this;
|
|
||||||
var label = egw.link_title('resources',user.match(/\d+/)[0],function(name) {
|
|
||||||
for(var j = 0; j < labels.length; j++)
|
|
||||||
{
|
|
||||||
if(labels[j].id == this)
|
|
||||||
{
|
|
||||||
labels[j].label = name;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
var row = planner.getWidgetById('planner_row_'+this);
|
|
||||||
if(row && row.set_label)
|
|
||||||
{
|
|
||||||
row.set_label(name);
|
|
||||||
}
|
|
||||||
},user);
|
|
||||||
if(!label) label = user;
|
|
||||||
if(already_added.indexOf(user) < 0)
|
|
||||||
{
|
|
||||||
labels.push({id: user, label: label, data: {participants:user,owner:''}});
|
|
||||||
already_added.push(''+user);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else if (user < 0) // groups
|
|
||||||
{
|
{
|
||||||
egw.accountData(user,'account_fullname',true,function(result) {
|
egw.accountData(user,'account_fullname',true,function(result) {
|
||||||
for(var id in result)
|
for(var id in result)
|
||||||
@ -374,15 +343,11 @@ var et2_calendar_planner = (function(){ "use strict"; return et2_calendar_view.e
|
|||||||
}
|
}
|
||||||
else // users
|
else // users
|
||||||
{
|
{
|
||||||
user = parseInt(user);
|
var label = this._get_owner_name(user);
|
||||||
for(var j = 0; j < accounts.length && already_added.indexOf(''+user) < 0; j++)
|
if(already_added.indexOf(user) < 0)
|
||||||
{
|
{
|
||||||
if(accounts[j].value === user)
|
labels.push({id: user, label: label, data: {participants:user,owner:''}});
|
||||||
{
|
|
||||||
labels.push({id: user, label: accounts[j].label, data: {participants:user,owner:user}});
|
|
||||||
already_added.push(''+user);
|
already_added.push(''+user);
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -308,28 +308,13 @@ var et2_calendar_view = (function(){ "use strict"; return et2_valueWidget.extend
|
|||||||
* @memberOf et2_calendar_view
|
* @memberOf et2_calendar_view
|
||||||
*/
|
*/
|
||||||
_get_owner_name: function _get_owner_name(user) {
|
_get_owner_name: function _get_owner_name(user) {
|
||||||
|
var label = undefined;
|
||||||
if(parseInt(user) === 0)
|
if(parseInt(user) === 0)
|
||||||
{
|
{
|
||||||
// 0 means current user
|
// 0 means current user
|
||||||
user = egw.user('account_id');
|
user = egw.user('account_id');
|
||||||
}
|
}
|
||||||
if (isNaN(user)) // resources or contact
|
if (!isNaN(user))
|
||||||
{
|
|
||||||
var application = 'home-accounts';
|
|
||||||
switch(user[0])
|
|
||||||
{
|
|
||||||
case 'c':
|
|
||||||
application = 'addressbook';
|
|
||||||
break;
|
|
||||||
case 'r':
|
|
||||||
application = 'resources';
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
// This might not have a value right away
|
|
||||||
// send an empty function or it won't ask the server
|
|
||||||
user = egw.link_title(application,user.match(/\d+/)[0], function() {}, this);
|
|
||||||
}
|
|
||||||
else // users
|
|
||||||
{
|
{
|
||||||
user = parseInt(user);
|
user = parseInt(user);
|
||||||
var accounts = egw.accounts('both');
|
var accounts = egw.accounts('both');
|
||||||
@ -337,12 +322,21 @@ var et2_calendar_view = (function(){ "use strict"; return et2_valueWidget.extend
|
|||||||
{
|
{
|
||||||
if(accounts[j].value === user)
|
if(accounts[j].value === user)
|
||||||
{
|
{
|
||||||
user = accounts[j].label;
|
label = accounts[j].label;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return user;
|
if(typeof label === 'undefined')
|
||||||
|
{
|
||||||
|
// Not found? Ask the sidebox owner widget, it gets updated
|
||||||
|
if(app.calendar && app.calendar.sidebox_et2 && app.calendar.sidebox_et2.getWidgetById('owner'))
|
||||||
|
{
|
||||||
|
user = app.calendar.sidebox_et2.getWidgetById('owner').options.select_options.find(function(element) {return element.id == user;}) || {};
|
||||||
|
label = user.label;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return label;
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Loading…
x
Reference in New Issue
Block a user