import-persons.html 3.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. <!-- import tickets -->
  2. <div class="container">
  3. <div class="panel panel-primary">
  4. <div class="panel-heading">
  5. <div class="panel-title"><h1>{{'Import tickets with Eventbrite API' | translate}}</h1></div>
  6. </div>
  7. <div class="panel-body">
  8. <form name="ebAPIForm" class="well">
  9. <div class="form-group">
  10. <label for="eb-api-key">{{'OAuth token' | translate}}</label>
  11. <input ng-model="ebAPIkey" id="eb-api-key" type="password" ng-required="true">
  12. </div>
  13. <div class="form-group">
  14. <label for="eb-event-id">{{'Eventbrite Event ID' | translate}}</label>
  15. <input ng-model="ebEventID" id="eb-event-id" ng-required="true">
  16. </div>
  17. <input type="checkbox" ng-model="createNewEvent"> {{'create a new event' | translate}}
  18. <br />
  19. <div class="form-group" ng-disabled="createNewEvent">
  20. <label for="forEvent">{{'Associate tickets to this event' | translate}}</label>
  21. <select class="form-control" id="forEvent" ng-model="targetEvent" ng-required="true" ng-disabled="createNewEvent">
  22. <option ng-repeat="event in events" value="{{event._id}}">{{event.title}}</option>
  23. </select>
  24. </div>
  25. <div>
  26. <br />
  27. <input type="submit" value="{{'Import' | translate}}" ng-click="apiImport()" ng-disabled="importRunning" />
  28. </div>
  29. </form>
  30. </div>
  31. </div>
  32. <div class="panel panel-primary">
  33. <div class="panel-heading">
  34. <div class="panel-title"><h1>{{'Import tickets from Eventbrite CSV' | translate}}</h1></div>
  35. </div>
  36. <div class="panel-body">
  37. <form name="ebCSVForm" class="well">
  38. <div class="form-group">
  39. <label for="eb-csv-import">{{'CSV file' | translate}}</label>
  40. <input name="file" ng-file-select ng-model="file" type="file" id="eb-csv-import" ng-required="true">
  41. <p class="help-block">{{'CSV exported from Eventbrite' | translate}}</p>
  42. </div>
  43. <div class="form-group">
  44. <label for="forEvent">{{'Associate tickets to this event' | translate}}</label>
  45. <select class="form-control" id="forEvent" ng-model="targetEvent" ng-required="true">
  46. <option ng-repeat="event in events" value="{{event._id}}">{{event.title}}</option>
  47. </select>
  48. </div>
  49. <input type="checkbox" ng-model="deduplicate"> {{'deduplicate entries' | translate}}
  50. <div>
  51. <br />
  52. <input type="submit" value="{{'Import' | translate}}" ng-click="upload(file, '/ebcsvpersons')" ng-disabled="importRunning" />
  53. </div>
  54. <div class="form-group top5">
  55. <uib-progressbar class="progress-striped" ng-class="{active: progressbarType == 'warning'}" max="100" value="progress" type="progressbarType">{{progress}}%</uib-progressbar>
  56. </div>
  57. <div class="form-group top5">
  58. Result: total: <span>{{reply.total}}</span> valid: <span>{{reply.valid}}</span> new: <span>{{reply.new_in_event}}</span>
  59. </div>
  60. </form>
  61. </div>
  62. </div>
  63. </div>