# カレンダープラグイン

イベントとカレンダーセクションはかつてGeeklogのコアコードの一部でしたが、Geeklog 1.4.1よりプラグインとして分離されました。

## 設定

カレンダープラグインの設定は、「管理者用メニュー - コンフィギュレーション - カレンダー」から変更できます。

### カレンダーのメイン設定

項目(変数) | デフォルト | 説明
--- | --- | ---
ログインを要求する(calendarloginrequired) | いいえ(0) | はい(1)にすると、登録ユーザーしかカレンダーにアクセスできなくなります。 この設定値よりも、「管理者用メニュー - コンフィギュレーション - Geeklog - ユーザーと投稿」の「すべてにログインを要求する(loginrequired)」の設定の方が優先されます。「すべてにログインを要求する」をはい(1)にすると、カレンダープラグインでログインを要求していなくても、ゲストユーザーはカレンダーにアクセスできなくなります。
メニューに表示しない(hidecalendarmenu) | いいえ(0) | はい(1)にすると、サイトのメニューに「カレンダー」メニューを表示しません。
個人カレンダーを有効にする(personalcalendars) | いいえ(0) | はい(1)にすると、登録ユーザーが個人カレンダーを持てるようになります。
イベント投稿を管理者が承認する(eventsubmission) | はい(1) | はい(1)にすると、ユーザーが投稿したイベントは管理者の承認待ちの状態になり、いいえ(0)にすると、即座に登録・表示されるようになります。
イベント予告を表示する(showupcomingevents) | はい(1) | はい(1)にすると、別のブロックに近い将来のイベントを表示します。
イベント予告を表示する期間(upcomingeventsrange) | 14(日) | 何日先の予定まで表示するかを指定します。
時間制(hour_mode) | 12 | イベントを投稿・編集するときに12時間制にするか24時間制にするかを指定します。「管理者用メニュー - コンフィギュレーション - Geeklog - 言語とロケール」の「時間制(hour_mode)」の設定値がデフォルトとして設定されています。
イベントの種類(event_types) | Anniversary, Appointment, Birthday, Business, Education, Holiday, Meeting, Miscellaneous, Personal, Phone Call, Special Occasion, Travel, Vacation (訳注)日本語版では、記念日、約束、誕生日、打ち合わせ、セミナー、休日、会議、用事、個人の用事、電話、特別な行事、旅行、休暇となっています。 | サイトカレンダーと個人カレンダーで使用されるイベントの種類です。
メールで通知する(notification) | いいえ(0) | はい(1)にすると、サイトカレンダーに新規イベントが投稿されたときに、管理者にEメールで通知します。個人カレンダーのイベントの場合は通知されません。
所有者の削除と共に削除する(delete_event) | いいえ(0) | はい(1)にすると、イベント所有者のアカウントが削除されたときに、所有していたすべてのイベントが削除され、いいえ(0)にすると、Rootグループに属するユーザー(たとえば、サイトの管理者)に引き継がれるます。これはサイトのイベントにしか当てはまりません。つまり、ユーザーの個人カレンダーのイベントは常に削除されます。

イベント保存後の画面遷移(aftersave)

カレンダー管理を表示する(list)

イベントを保存した後にどのページへ移動するかを設定します。

- 作成したイベントを表示する(item): イベントの詳細を表示します。
- カレンダー管理を表示する(list): 管理者用のイベントのリストを表示します(デフォルト)。
- カレンダーを表示する(plugin): カレンダーを表示します。
- Homeを表示する(home): サイトのHomeページ(トップページ)を表示します。
- 管理画面TOPを表示する(admin): 管理画面を表示します。

reCAPTCHA(recaptcha)

'reCAPTCHA V3'

使用するreCAPTCHAのバージョンを設定します。

- 無効: reCAPTCHAを表示しません。
- reCAPTCHA V2: reCAPTCHA V2を表示します
- reCAPTCHA V2 Invisible: reCAPTCHA V2 Invisibleを表示します。
- reCAPTCHA V3: reCAPTCHA V3を表示します。(初期値)

詳しくは、reCAPTCHAプラグインのドキュメントをご覧になるか、Google reCAPTCHAをご覧ください。

reCAPTCHA V3のスコア(recaptcha_score) | 0.5 | reCAPTCHA V3用のスコアを指定します。有効な値は 0.0 (botでも人間として受け入れられるかもしれない) - 1.0 (人間しか受け入れない) です。
パーミッションのデフォルト[0](default_permissions[0]) | 表示・編集 | イベントに関する所有者のパーミッションのデフォルトを指定します。
パーミッションのデフォルト[1](default_permissions[1]) | 表示 | イベントに関するグループのパーミッションのデフォルトを指定します。
パーミッションのデフォルト[2](default_permissions[2]) | 表示 | イベントに関するメンバーのパーミッションのデフォルトを指定します。
パーミッションのデフォルト[3](default_permissions[3]) | 表示 | イベントに関するゲストユーザーのパーミッションのデフォルトを指定します。
自動タグ[event: ]のパーミッション[0](autotag_permissions_event[0]) | 利用する | 自動タグの利用に関する所有者(デフォルトはRootユーザー)のパーミッションを指定します。
自動タグ[event: ]のパーミッション[1](autotag_permissions_event[1]) | 利用する | 自動タグの利用に関するCalendar Adminグループのパーミッションを指定します。
自動タグ[event: ]のパーミッション[2](autotag_permissions_event[2]) | 利用する | 自動タグの利用に関するメンバーのパーミッションを指定します。
自動タグ[event: ]のパーミッション[3](autotag_permissions_event[3]) | 利用する | 自動タグの利用に関するゲストユーザーのパーミッションを指定します。

### イベントブロック

項目(変数) | デフォルト | 説明
--- | --- | ---
有効(block_enable) | true | ブロックを有効化します。
左ブロックで表示する(block_isleft) | 1 | 左ブロックで表示(1)、あるいは右(0)に表示します。
ブロックの順番(block_order) | 50 | ブロックカラムの並べ替え番号を指定します。
話題オプション(block_topic_option) | 'all' | 'すべて'なら、すべてのページで表示。'ホームページのみ'ならホームページのみで表示。'話題を選択する'なら選択された話題でのみ表示されます。
話題(block_topic) |  | 話題オプションが '話題を選択する'のときだけ表示されます。
グループ(block_group_id) | Calendar Admin | パーミッションで使われるグループ
イベントブロックのパーミッション[0](block_permissions[0]) | 表示 | ダイナミックブロックの表示に関するブロック管理者(デフォルトはRootユーザー)のパーミッションを設定します。
イベントブロックのパーミッション[1](block_permissions[1]) | 表示 | ダイナミックブロックの表示に関する、アサインされた管理者グループ(コンフィグオプションblock_group_idを参照)のパーミッションを設定します。
イベントブロックのパーミッション[2](block_permissions[2]) | 表示 | ダイナミックブロックの表示に関するメンバーのパーミッションを設定します。
イベントブロックのパーミッション[3](block_permissions[3]) | 表示 | ダイナミックブロックの表示に関するゲストユーザーのパーミッションを設定します。

## 他の設定

Geeklogの主要設定の一部がカレンダープラグインと関連していることに注意してください。

- 時間と日付は、Geeklogのメインの設定にある現在の言語とロケールの設定に従ってフォーマットされます。

## 自動タグ

カレンダープラグインは、`[event:]`自動タグを提供します。このタグを使用すれば、URLを記述しなくてもカレンダーのイベントにリンクを張ることができます。コロンの後にイベントIDを記述してください。イベントにリンクが張られ、イベントのタイトルがリンクテキストとして使用されます。別の方法としては、イベントIDの後に半角スペースに続けて独自のリンクテキストを指定することもできます(閉じカッコの前でなければなりません)。

geeklog.netを例に取ると、

- `[event:20090805065311513]` は `<a href="https://www.geeklog.net/calendar/event.php?eid=20090805065311513">FrOSCon - Free and Open Source Software Conference</a>` に変換されます。
- `[event:20090805065311513 FrOSCon 2009]` は `<a href="https://www.geeklog.net/calendar/event.php?eid=20090805065311513">FrOSCon 2009</a>` に変換されます。