黄昏通信社跡地処分推進室

黄昏通信社の跡地処分を推進しています

Everything Will Flow, part 2

二日連続の在宅勤務。
今日もフローをいじる。google からの転記はもうひとつ、終日の予定が正しく転記されないという問題がある。例によって flow は google 側が持っている「終日」の情報を拾ってこれないんだけど、にも関わらず「イベントの開始時間と終了時間にいずれも「T」という文字列が含まれない」という条件で終日であることを認識し、それを律儀に時間単位に変換する。たとえば m 月 d 日の終日の予定だとflow はそれを d 日の 00:00 から (d+1) 日の 00:00 の 24 時間の予定と(正しく)認識するんだけど、そこまでしときながらこれに office 側の「終日(isAllDay)」のフラグを付与しちゃうのだ。そうすると見事 d 日から (d+1) 日までまる二日の予定が完成することになる。くそか〜。というわけで条件分岐をつけなければならない。先ほどの「イベントの開始時間と終了時間にいずれも「T」という文字列が含まれない」ことで判定する(こんなの自力では絶対思いつかなかった)。で、終日でなければそのまま開始時間と終了時間を拾って office 側に転記すればよく、終日の場合は終了時刻から1秒減算した時刻を終了時刻として office に渡してやる。T が含まれていないということは元々の終了時間は日付しか含まれていないデータだけど、計算する上では (d+1) 日の 00:00:00 になっているので、1秒減算すると無事に d 日の 23:59:59 になってくれる。これで終日の予定も正しく転記されるようになった。実際書き込む時には isAllDay が true になっていると時刻はオミットされるのか、転記された予定を見てみると開始も終了も 「mm 月 dd 日 00:00」と出てくる。あるいは表示する時にそう表示するようになっているのかもしれない。
というところで時間切れ、昨日の宿題はまた明日以降ということに。なにやってんだかなあ。といいつつ、けっこう楽しい。