diff options
author | Raphael Kabo <raphaelkabo@hey.com> | 2023-10-07 14:30:24 +0100 |
---|---|---|
committer | Raphael Kabo <raphaelkabo@hey.com> | 2023-10-07 15:38:47 +0100 |
commit | b795d07ed7a1b705b72b171f8e8de267a720223b (patch) | |
tree | b8ae3df8dbb89f839f29328e817f030dc22b89f8 /views/partials/eventForm.handlebars | |
parent | 9341659fd7a791d77454dd33743e42d952dbd202 (diff) |
refactor: event form and api routes
Diffstat (limited to 'views/partials/eventForm.handlebars')
-rwxr-xr-x | views/partials/eventForm.handlebars | 141 |
1 files changed, 141 insertions, 0 deletions
diff --git a/views/partials/eventForm.handlebars b/views/partials/eventForm.handlebars new file mode 100755 index 0000000..36da7b8 --- /dev/null +++ b/views/partials/eventForm.handlebars @@ -0,0 +1,141 @@ +<div class="form-group row"> + <label for="eventName" class="col-sm-2 col-form-label">Event name</label> + <div class="form-group col-sm-10"> + <input type="text" class="form-control" id="eventName" name="eventName" placeholder="Make it snappy." x-model="data.eventName" > + </div> +</div> +<div class="form-group row"> + <label for="eventLocation" class="col-sm-2 col-form-label">Location</label> + <div class="form-group col-sm-10"> + <input type="text" class="form-control" id="eventLocation" name="eventLocation" placeholder="Be specific." x-model="data.eventLocation"> + </div> +</div> +<div class="form-group row"> + <label for="eventStart" class="col-sm-2 col-form-label">Starts</label> + <div class="form-group col-sm-4"> + <input type="datetime-local" class="form-control" id="eventStart" name="eventStart" x-model="data.eventStart"> + </div> +</div> +<div class="form-group row"> + <label for="eventEnd" class="col-sm-2 col-form-label">Ends</label> + <div class="form-group col-sm-4"> + <input type="datetime-local" class="form-control" id="eventEnd" name="eventEnd" x-model="data.eventEnd"> + </div> +</div> +<div class="form-group row"> + <label for="timezone" class="col-sm-2 col-form-label">Timezone</label> + <div class="form-group col-sm-10"> + <select class="select2" id="timezone" name="timezone" x-ref="timezone"></select> + </div> +</div> +<div class="form-group row"> + <label for="eventDescription" class="col-sm-2 col-form-label">Description</label> + <div class="form-group col-sm-10"> + <textarea class="form-control expand" id="eventDescription" name="eventDescription" placeholder="You can always edit it later." x-model="data.eventDescription" ></textarea> + <small class="form-text"><a href="https://commonmark.org/help/">Markdown</a> formatting supported.</small> + </div> +</div> +<div class="form-group row"> + <label for="eventURL" class="col-sm-2 col-form-label">Link</label> + <div class="form-group col-sm-10"> + <input type="url" class="form-control" id="eventURL" name="eventURL" placeholder="For tickets or another event page (optional)." x-model="data.eventURL" > + </div> +</div> +<div class="form-group row"> + <label for="eventImage" class="col-sm-2 col-form-label">Cover image</label> + <div class="form-group col-sm-10"> + <div class="image-preview" id="image-preview"> + <label for="image-upload" id="image-label">Choose file</label> + <input type="file" name="imageUpload" id="image-upload" accept="image/jpeg,image/gif,image/png" x-ref="eventImageUpload" /> + </div> + <small class="form-text">Recommended dimensions (w x h): 920px by 300px.</small> + {{#if eventData.image}} + <button type="button" class="btn btn-danger" id="deleteImage">Delete image</button> + {{/if}} + </div> +</div> +<div class="form-group row"> + <label for="hostName" class="col-sm-2 col-form-label">Host name</label> + <div class="form-group col-sm-10"> + <input type="text" class="form-control" id="hostName" name="hostName" placeholder="Will be shown on the event page (optional)." x-model="data.hostName" > + </div> +</div> +<div class="form-group row"> + <label for="creatorEmail" class="col-sm-2 col-form-label">Your email</label> + <div class="form-group col-sm-10"> + <input type="email" class="form-control" id="creatorEmail" name="creatorEmail" placeholder="Will not be shown anywhere (optional)" x-model="data.creatorEmail" > + <small class="form-text">If you provide your email, we will send your secret editing password here, and use it to notify you of updates to the event.</small> + </div> +</div> +<div class="form-group row"> + <div class="col-sm-2">Options</div> + <div class="col-sm-10"> + <div class="form-check"> + <input class="form-check-input" type="checkbox" id="eventGroupCheckbox" name="eventGroupCheckbox" x-model="data.eventGroupCheckbox"> + <label class="form-check-label" for="eventGroupCheckbox"> + This event is part of an event group + </label> + </div> + <div class="card my-2" id="eventGroupData" x-show="data.eventGroupCheckbox"> + <div class="card-header"> + <strong>Link this event to an event group</strong> + </div> + <div class="card-body"> + <div class="form-group row"> + <label for="eventGroupID" class="col-12">Event group ID</label> + <div class="form-group col-12"> + <input type="text" class="form-control" id="eventGroupID" name="eventGroupID" placeholder="" x-model="data.eventGroupID" > + <small class="form-text">You can find this short string of characters in the event group's link, in your confirmation email, or on the event group's page.</small> + </div> + </div> + <div class="form-group row"> + <label for="eventGroupEditToken" class="col-12">Event group secret editing code</label> + <div class="form-group col-12"> + <input type="text" class="form-control" id="eventGroupEditToken" name="eventGroupEditToken" placeholder="" x-model="data.eventGroupEditToken" > + <small class="form-text">You can find this long string of characters in the confirmation email you received when you created the event group.</small> + </div> + </div> + </div> + </div> + <div class="form-check"> + <input class="form-check-input" type="checkbox" id="interactionCheckbox" name="interactionCheckbox" x-model="data.interactionCheckbox"> + <label class="form-check-label" for="interactionCheckbox"> + Users can post comments on this event + </label> + </div> + <div class="form-check"> + <input class="form-check-input" type="checkbox" id="joinCheckbox" name="joinCheckbox" x-model="data.joinCheckbox"> + <label class="form-check-label" for="joinCheckbox"> + Users can mark themselves as attending this event + </label> + </div> + <div class="form-check" id="maxAttendeesCheckboxContainer" x-show="data.joinCheckbox"> + <input class="form-check-input" type="checkbox" id="maxAttendeesCheckbox" name="maxAttendeesCheckbox" x-model="data.maxAttendeesCheckbox"> + <label class="form-check-label" for="maxAttendeesCheckbox"> + Set a limit on the maximum number of attendees + </label> + </div> + </div> +</div> +<div class="form-group row" id="maxAttendeesContainer" x-show="data.maxAttendeesCheckbox && data.joinCheckbox"> + <label for="maxAttendees" class="col-sm-2 col-form-label">Attendee limit</label> + <div class="form-group col-sm-10"> + <input type="number" class="form-control" id="maxAttendees" name="maxAttendees" placeholder="Enter a number." x-model="data.maxAttendees" > + </div> +</div> +<div class="form-group row"> + <div class="col-12"> + <div + class="alert alert-danger" + role="alert" + x-show="errors.length > 0" + > + <p><i class="fas fa-exclamation-triangle"></i> Please fix these errors:</p> + <ul> + <template x-for="error in errors"> + <li x-text="error.message"></li> + </template> + </ul> + </div> + </div> +</div> |