summaryrefslogtreecommitdiff
path: root/views/event.php
blob: c50e1d41949b079b43bf160537bd3c9600d92d05 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
<div class="narrow">
  <?= partial('partials/header') ?>

    <div style="clear: both;">
      <div class="alert alert-success hidden" id="test_success"><strong>Success! We found a Location header in the response!</strong><br>Your post should be on your website now!<br><a href="" id="post_href">View your post</a></div>
      <div class="alert alert-danger hidden" id="test_error"><strong>Your endpoint did not return a Location header.</strong><br>See <a href="/creating-a-micropub-endpoint">Creating a Micropub Endpoint</a> for more information.</div>
    </div>

    <form role="form" style="margin-top: 20px;" id="note_form">

      <div class="form-group" style="margin-top: 18px;">
        <label>Event Name</label>
        <input type="text" class="form-control" id="event_name" placeholder="" value="">
      </div>

      <div class="form-group" id="start_date" style="margin-top: 18px;">
        <label>Start Date/Time</label>
        <div class="form-group">
          <input type="text" class="form-control date" placeholder="<?= date('Y-m-d') ?>" value="" style="max-width: 40%; margin-right: 4px; float: left;">
          <input type="text" class="form-control time" placeholder="14:30" value="" style="max-width: 40%; margin-right: 4px; float: left;">
          <input type="text" class="form-control timezone" placeholder="-08:00" style="max-width: 15%;">
        </div>
      </div>

      <div class="form-group" id="end_date" style="margin-top: 18px;">
        <label>End Date/Time (Optional)</label>
        <div class="form-group">
          <input type="text" class="form-control date" placeholder="<?= date('Y-m-d') ?>" value="" style="max-width: 40%; margin-right: 4px; float: left;">
          <input type="text" class="form-control time" placeholder="14:30" value="" style="max-width: 40%; margin-right: 4px; float: left;">
          <input type="text" class="form-control timezone" placeholder="-08:00" style="max-width: 15%;">
        </div>
      </div>

      <div class="form-group" style="margin-top: 18px;">
        <label>Location</label>
        <input type="text" class="form-control" id="event_location" placeholder="" value="">
      </div>


      <div class="form-group" style="margin-top: 18px;">
        <label for="note_category">Tags</label>
        <input type="text" id="note_category" value="" class="form-control">
      </div>

      <div style="float: right; margin-top: 6px;">
        <button class="btn btn-success" id="btn_post">Post</button>
      </div>

    </form>

</div>

<script>
  $(function(){
    var d = new Date();
    $("#start_date .timezone").val(tz_seconds_to_offset(d.getTimezoneOffset() * 60 * -1));
  });

  $("#note_category").tokenfield({
    createTokensOnBlur: true,
    beautify: true
  });  

  $("#btn_post").click(function(){

    var event_start = $("#start_date .date").val()+"T"+$("#start_date .time").val()+$("#start_date .timezone").val();
    var event_end;
    if($("#end_date .date").val()) {
      event_end = $("#end_date .date").val()+"T"+$("#end_date .time").val()+$("#end_date .timezone").val();
    }

    var properties = {
      name: $("#event_name").val(),
      start: event_start,
      location: $("#event_location").val(),
      category: tokenfieldToArray("#note_category")
    };

    if(event_end) {
      properties.end = event_end;
    }


    $.post("/micropub/postjson", {
      data: JSON.stringify({
        "type": "h-event",
        "properties": properties
      })
    }, function(response){

      if(response.location != false) {
        $("#test_success").removeClass('hidden');
        $("#test_error").addClass('hidden');
        $("#post_href").attr("href", response.location);
        $("#note_form").slideUp(200, function(){
          $(window).scrollTop($("#test_success").position().top);
        });
      } else {
        $("#test_success").addClass('hidden');
        $("#test_error").removeClass('hidden');
      }

    });
    return false;
  });
</script>