(function() {
Date.prototype.setWeek = function(year, week, day) {
var week1 = new Date(year, 0, 1)
var prevLastDay = new Date(week1.getTime() - 86400000 * (week1.getDay() || 7))
return this.setTime(prevLastDay.getTime() + 86400000 * ((week - 1) * 7 + day))
}
Date.prototype.setISOWeek = function(year, week, day) {
var week1 = new Date(year, 0, 4)
var prevLastDay = new Date(week1.getTime() - 86400000 * (week1.getDay() || 7))
return this.setTime(prevLastDay.getTime() + 86400000 * ((week - 1) * 7 + day))
}
Date.prototype.format = function(format) {
// yyyy, MM, dd, ddd だけ
const days = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']
return format.replace('ddd', days[this.getDay()])
.replace('yyyy', this.getFullYear())
.replace('MM', ('0' + (this.getMonth() + 1)).slice(-2))
.replace('dd', ('0' + this.getDate()).slice(-2))
}
- // 処理ここから
- const yearWeek = scrapbox.Page.title.split("'") // 新規ページの仮タイトルから、年と週番号を取得して
- const d = new Date()
- // 週番号の計算方法をここで指定するよ
- //d.setWeek(yearWeek, yearWeek, 0) // 米国式・月曜始まり
- //d.setWeek(yearWeek - 1, yearWeek, 6) // 米国式・日曜始まり
- d.setISOWeek(yearWeek, yearWeek, 0) // ISO式・月曜始まり
- //d.setISOWeek(yearWeek, yearWeek - 1, 6) // ISO式・日曜始まり
- const dateFormat = "yyyy-MM-dd"
- const dayFormat = "ddd"
- // ここで返してるものがページのタイトルと本文になるよ! 1週間分の日付と曜日を並べていきます
- return \`
-
**. [${new Date(d.setDate(d.getDate() + 1)).format(dateFormat)} ${d.format(dayFormat)}]
-
**. [${new Date(d.setDate(d.getDate() + 1)).format(dateFormat)} ${d.format(dayFormat)}]
-
**. [${new Date(d.setDate(d.getDate() + 1)).format(dateFormat)} ${d.format(dayFormat)}]
-
**. [${new Date(d.setDate(d.getDate() + 1)).format(dateFormat)} ${d.format(dayFormat)}]
-
**. [${new Date(d.setDate(d.getDate() + 1)).format(dateFormat)} ${d.format(dayFormat)}]
-
**. [${new Date(d.setDate(d.getDate() + 1)).format(dateFormat)} ${d.format(dayFormat)}]
-
**. [${new Date(d.setDate(d.getDate() + 1)).format(dateFormat)} ${d.format(dayFormat)}]
-
**. Backlog
-
`
-
})()
