Parcourir la source

timezone fixed to Sydney for meeting date.

master
Patrick Peng Sun il y a 8 ans
Parent
révision
f8a35b8bce
4 fichiers modifiés avec 19 ajouts et 10 suppressions
  1. +4
    -2
      crmMeeting.go
  2. +5
    -2
      crmMeeting_test.go
  3. +1
    -0
      spa/editmeeting.html
  4. +9
    -6
      spaEditMeeting.go

+ 4
- 2
crmMeeting.go Voir le fichier

@@ -111,12 +111,14 @@ func crmGetMeeting(id string) (ret crmdMeeting, err error) {

func (m crmdMeeting) StartDate() string {
t, _ := time.Parse(getCrmTimeLayout(), m.DateStart)
return t.Format("02 January, 2006")
AEST, _ := time.LoadLocation("Australia/Sydney")
return t.In(AEST).Format("02 January, 2006")
}

func (m crmdMeeting) StartHour() string {
AEST, _ := time.LoadLocation("Australia/Sydney")
t, _ := time.Parse(getCrmTimeLayout(), m.DateStart)
return t.Format("15:04")
return t.In(AEST).Format("15:04")
}

func (m crmdMeeting) DurationHour() string {

+ 5
- 2
crmMeeting_test.go Voir le fichier

@@ -232,12 +232,15 @@ func TestCreateMeeting(t *testing.T) {
}

func TestDecodeDate(t *testing.T) {
layout := "2 January, 2006 15:04"
value := "23 July, 2017 10:30"
layout := "2 January, 2006 15:04 MST"
value := "23 July, 2017 10:30 AEST"
tt, err := time.Parse(layout, value)
if err != nil {
log.Print(err)
return
}
log.Println(tt)

utc, err := time.LoadLocation("UTC")
log.Println(tt.In(utc))
}

+ 1
- 0
spa/editmeeting.html Voir le fichier

@@ -89,6 +89,7 @@
</div>
<div class="col s12 m12 l12">
<b>主办方须知</b>
<p>活动时间按照澳洲东岸时间(悉尼,墨尔本)时间为准。</p>
<p>活动内容将上报校友会备案。校友会全体在册人员将收到你的活动邀请,各位校友自行选择参加或不参加。</p>
<p>主办者将收到具体的人数更新,以及本次活动签到用的二维码。</p>
<p>所有当天参加活动的校友,通过公众号扫码即可签到</p>

+ 9
- 6
spaEditMeeting.go Voir le fichier

@@ -183,18 +183,21 @@ func (m *crmdMeeting) validateFormFile(r *http.Request) (ok bool) {
}

func (m *crmdMeeting) buildStartDate(date, hour, duration string) {
layout := "2 January, 2006 15:04"
value := strings.TrimSpace(date) + " " + strings.TrimSpace(hour)
layout := "2 January, 2006 15:04 MST"
value := strings.TrimSpace(date) + " " + strings.TrimSpace(hour) + " AEST" //Force Sydney time
t, err := time.Parse(layout, value)
if err != nil {
m.addSpaErr("开始日期,时间,无法识别")
return
}
m.DateStart = t.Format(getCrmTimeLayout())
log.Println(m.DateStart)
utc, err := time.LoadLocation("UTC")
if err == nil {
m.DateStart = t.In(utc).Format(getCrmTimeLayout())
log.Println(m.DateStart)

m.buildDuration(duration)
m.DateEnd = t.Add(time.Second * time.Duration(m.Duration)).Format(getCrmTimeLayout())
m.buildDuration(duration)
m.DateEnd = t.In(utc).Add(time.Second * time.Duration(m.Duration)).Format(getCrmTimeLayout())
}
}

func (m *crmdMeeting) buildDuration(duration string) {

Chargement…
Annuler
Enregistrer