Reflect attendee type with generic icon

pull/258/head
Francis Lachapelle 2019-07-04 15:10:41 -04:00
parent 5f08b25d9c
commit e24082183f
6 changed files with 29 additions and 10 deletions

1
NEWS
View File

@ -10,6 +10,7 @@ Enhancements
- [web] updated Angular Material to version 1.1.19
- [web] replaced bower packages by npm packages
- [web] restored mail threads (#3478, #4616, #4735)
- [web] reflect attendee type with generic icon (person/group/resource)
Bug fixes
- [web] fixed wrong translation of custom calendar categories

View File

@ -322,8 +322,7 @@
data = @"";
[newRecord setObject: data forKey: @"c_telephonenumber"];
// Custom attribute for group-lookups. See LDAPSource.m where
// it's set.
// Custom attribute for group lookups. See LDAPSource.m.
data = [oldRecord objectForKey: @"isGroup"];
if (data)
{
@ -335,7 +334,14 @@
[newRecord setObject: @"vcard" forKey: @"c_component"];
}
// c_info => note
// Custom attribute for resource lookups. See LDAPSource.m.
data = [oldRecord objectForKey: @"isResource"];
if (data)
{
[newRecord setObject: data forKey: @"isResource"];
}
// c_info => note + contactInfo
data = [oldRecord objectForKey: @"c_info"];
if ([data length] > 0)
{

View File

@ -268,7 +268,7 @@
readonly="true">
<md-chip-template>
<div class="md-contact-avatar">
<sg-avatar-image sg-email="$chip.email" size="26">person</sg-avatar-image>
<sg-avatar-image sg-email="$chip.email" size="26">{{ editor.defaultIconForAttendee($chip) }}</sg-avatar-image>
</div>
<div class="md-contact-name">{{$chip.name || $chip.email}}</div>
<md-icon ng-class="'icon-' + $chip.partstat"><!-- partstat --></md-icon>

View File

@ -53,11 +53,6 @@
</md-list-item>
<!-- attendees -->
<md-list-item ng-repeat="currentAttendee in editor.component.attendees track by currentAttendee.email">
<md-button class="md-icon-button"
label:aria-label="Delete"
ng-click="editor.removeAttendee(currentAttendee, eventForm)">
<md-icon>remove_circle</md-icon>
</md-button>
<md-button class="md-icon-button"
label:aria-label="Role"
ng-click="editor.component.$attendees.nextRole(currentAttendee)"
@ -70,11 +65,16 @@
</md-button>
<sg-avatar-image class="md-avatar"
sg-email="currentAttendee.email"
size="40">person</sg-avatar-image>
size="40">{{ editor.defaultIconForAttendee(currentAttendee) }}</sg-avatar-image>
<div class="sg-tile-content sg-padded--right">
<div class="sg-md-subhead"><div>{{currentAttendee.name}}</div></div>
<div class="sg-md-body"><div>{{currentAttendee.email}}</div></div>
</div>
<md-button class="md-icon-button"
label:aria-label="Delete"
ng-click="editor.removeAttendee(currentAttendee, eventForm)">
<md-icon>close</md-icon>
</md-button>
<md-divider><!-- divider --></md-divider>
</md-list-item>
</md-list>

View File

@ -169,6 +169,8 @@
uid: card.c_uid,
domain: card.c_domain,
isMSExchange: card.ismsexchange,
isGroup: card.$isList(),
isResource: card.isresource,
name: card.c_cn,
email: card.$preferredEmail(),
role: Attendees.ROLES.REQ_PARTICIPANT,

View File

@ -337,6 +337,16 @@
form.$setDirty();
};
this.defaultIconForAttendee = function (attendee) {
if (attendee.isGroup) {
return 'group';
} else if (attendee.isResource) {
return 'meeting_room';
} else {
return 'person';
}
};
this.nextSlot = function () {
findSlot(1);
};