events-list.html 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. <!-- show the list of Events -->
  2. <div class="container">
  3. <h1>{{'Events' | translate}}
  4. <button ng-click="$state.go('event.new')" class="btn btn-success">
  5. <span class="fa fa-plus-circle vcenter"></span>
  6. {{'Add event' | translate}}
  7. </button>
  8. </h1>
  9. <div class="panel panel-primary table-striped top5">
  10. <div class="panel-heading">{{'Events' | translate}}</div>
  11. <div class="panel-body">
  12. <form class="form-inline">
  13. <div class="form-group">
  14. <label for="query-events">{{'Search:' | translate}}</label>
  15. <input eventman-focus type="text" id="query-events" class="form-control" placeholder="{{'Event title' | translate}}" ng-model="query" ng-model-options="{debounce: 600}">
  16. </div>
  17. <div class="form-group">
  18. <label for="events-order">Sort by:</label>
  19. <select id="events-order" class="form-control" ng-model="eventsOrderProp">
  20. <option value="title">{{'Title' | translate}}</option>
  21. <option value="-title">{{'Title (descending)' | translate}}</option>
  22. <option value="begin_date">{{'Date' | translate}}</option>
  23. <option value="-begin_date">{{'Date (descending)' | translate}}</option>
  24. </select>
  25. </div>
  26. </form>
  27. <div ng-include=" 'modal-confirm-action.html' " class="hidden"></div>
  28. <table class="table table-striped">
  29. <thead>
  30. <tr>
  31. <th><strong>{{'Event' | translate}}</strong></th>
  32. <th ng-if="hasPermission('event|update')" class="hcenter"><strong>{{'Attendees / Registered' | translate}}</strong></th>
  33. <th ng-if="hasPermission('event|update')"><strong>{{'Actions' | translate}}</strong></th>
  34. </tr>
  35. </thead>
  36. <tbody>
  37. <tr ng-repeat="event in events | splittedFilter:query | orderBy:eventsOrderProp">
  38. <td>
  39. <span><strong>{{event.title}}</strong></span>
  40. <p>{{'Begins:' | translate}} {{event['begin-date'] | date:'fullDate'}} {{event['begin-time'] | date:'HH:mm'}}<br/>
  41. {{'Ends:' | translate}} {{event['end-date'] | date:'fullDate' }} {{event['end-time'] | date:'HH:mm'}}</p>
  42. </td>
  43. <td ng-if="hasPermission('persons|read')" class="hcenter">
  44. <p><span ng-init="attendeesNr = (event.persons | attendeesFilter).length">{{attendeesNr}}</span> / {{event.persons.length || 0}} ({{((attendeesNr / (event.persons.length || 0) * 100) || 0).toFixed()}}%)</p>
  45. </td>
  46. <td ng-if="hasPermission('event|update')">
  47. <button ng-if="hasPermission('ticket|create')" ng-click="$state.go('event.ticket.new', {id: event._id})" class="btn btn-link fa fa-user-plus" type="button" title="{{'Register' | translate}}"></button>
  48. <button ng-if="hasPermission('persons|update')" ng-click="$state.go('event.info', {id: event._id})" class="btn btn-link fa fa-list" type="button" title="{{'Manage attendees' | translate}}"></button>
  49. <button ng-if="hasPermission('event|delete')" ng-click="remove(event._id)" type="button" class="btn btn-link fa fa-trash fa-lg" title="{{'Delete' | translate}}"></button>
  50. </td>
  51. </tr>
  52. </tbody>
  53. </table>
  54. </div>
  55. </div>
  56. </div>