JavaScriptでGoogleカレンダーのデフォルト表示月を動的にする方法 (1
こんにちは。
今日は うちの会社のスクールの空きスケジュールを
googleカレンダーを使って公開するときに
「今月もう終わるのに今月のカレンダーの予定が出てても意味ないなー、来月の予定を表示したいなー」
現在日付が月の末日近く 例)20日 になったら、翌月のカレンダーを表示したい。
ってことで、まず 公開するgoogleカレンダー側で表示範囲を指定する方法を調べると。
に iframe srcパラメータに
&dates=表示範囲from(yyyymmdd)/ 表示範囲to (yyyymmdd) 例)&dates=20120501/201205/31 ⇒ 2012/5/1 ~ 2012/5/31 の期間を表示する。
見たいな感じでいけるらしい。
で、表示するカレンダーは月単位なので、
律儀にtoを月末にしなくとも、fromより新しい日であれば
いいのでは?ってことで、
&dates=20120501/20120502 (5/1~5/2)
で試してみたところ結果は一緒。OKこれならtoを生成するのもfrom+1日で済むのでらくちん。
ってことで動的に表示するフローは以下のとおりに。
1.月の末日近くの日付を定義 (例 20
2.現在日 > 1.の日付の場合
googleカレンダーパラメータの末尾に下記値を追加
&dates=翌月一日/翌月二日 ex) &dates=20120501/20120502
してみようとおもう。
で、PHPでちゃちゃっとやるかってとこですが、
…実はうちのスクールのwebサイトはCMSで構築してて
そのコンテンツはphpコード非対応。。あべしっ。。
というわけで、動的にするには。。javascriptでやっつけるしか無いですね。。
続きは(2 は次回までのおたのしみに。。