You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

69 lines
3.5 KiB

  1. <div id="roster" ng-controller="RosterController as rosterCtrl">
  2. <ul id="rosterlist" class="{if="isset($conf) && $conf.roster == 'show'"}offlineshown{/if} active all">
  3. <span ng-if="contacts == null" class="nocontacts">
  4. {$c->__('roster.no_contacts')}
  5. </span>
  6. <li class="subheader search">{$c->__('roster.results')}</li>
  7. <div id="spinner">
  8. <img src="{$base_uri}/app/widgets/Roster/img/movim_cloud.svg"/>
  9. </div>
  10. <div
  11. ng-if="contacts != null && !group.tombstone"
  12. ng-repeat="group in contacts"
  13. id="group{{::group.agroup}}"
  14. ng-class="{groupshown: rosterCtrl.groupIsShown(group.agroup)}" >
  15. <li class="subheader" ng-click="rosterCtrl.showHideGroup(group.agroup)">
  16. {{::group.agroup}}
  17. <span class="info">{{rosterCtrl.getOnlineCount(group.agroupitems)}}/{{group.agroupitems.length}}</span>
  18. </li>
  19. <li
  20. ng-repeat="myjid in group.agroupitems"
  21. ng-if="!myjid.tombstone"
  22. id="{{::myjid.ajid}}"
  23. class="{{myjid.ajiditems.rosterview.inactive}} action {{myjid.ajiditems.rosterview.presencetxt}}"
  24. ng-attr-title="{{rosterCtrl.getContactTitle(myjid.ajiditems)}}"
  25. ng-class="{condensed: myjid.ajiditems.status != '' && myjid.ajiditems.status != null }">
  26. <!--ng-class="rosterCtrl.getContactClient(myjid.ajiditems)"-- >-->
  27. <div
  28. class="action"
  29. ng-if="myjid.ajiditems.rosterview.tune != '' || myjid.ajiditems.rosterview.type != '' || myjid.ajiditems.rosterview.subscription != 'both'"
  30. ng-switch on="myjid.ajiditems.rosterview.type">
  31. <i ng-switch-when="handheld" class="md md-smartphone"></i>
  32. <i ng-switch-when="phone" class="md md-smartphone"></i>
  33. <i ng-switch-when="web" class="md md-language"></i>
  34. <i ng-switch-when="bot" class="md md-memory"></i>
  35. <i ng-if="myjid.ajiditems.rosterview.tune" class="md md-play-arrow"></i>
  36. <i ng-if="myjid.ajiditems.rosterview.subscription == 'to'" class="md md-call-received"></i>
  37. <i ng-if="myjid.ajiditems.rosterview.subscription == 'from'" class="md md-call-made"></i>
  38. <i ng-if="myjid.ajiditems.rosterview.subscription == 'none'" class="md md-do-not-disturb"></i>
  39. </div>
  40. <span
  41. ng-if="::myjid.ajiditems.rosterview.avatar != false"
  42. class="icon bubble status {{myjid.ajiditems.rosterview.presencetxt}}"
  43. style="background-image: url({{::myjid.ajiditems.rosterview.avatar}})">
  44. </span>
  45. <span
  46. ng-if="::myjid.ajiditems.rosterview.avatar== false"
  47. class="icon bubble status {{myjid.ajiditems.rosterview.presencetxt}} color {{myjid.ajiditems.rosterview.color}}">
  48. <i class="md md-person"></i>
  49. </span>
  50. <span>{{myjid.ajiditems.rosterview.name}}</span>
  51. <p ng-if="myjid.ajiditems.status != ''" class="wrap">
  52. <span>{{myjid.ajiditems.status}}</span>
  53. </p>
  54. </li>
  55. </div>
  56. </ul>
  57. <br />
  58. <a onclick="Roster_ajaxDisplaySearch()" class="button action color">
  59. <i class="md md-person-add"></i>
  60. </a>
  61. </div>