<?php

// (Shirai075): fs_moodleの設定を表示するメニューをサイト管理に追加 (2008/07/21)

// ------------------------------------------------------------
pagecheck();
// ------------------------------------------------------------

function fsconfig_check_courseSettings()
{
    global $CFG, $fsCFG;

// (Shirai185): モジュールの追加／更新時の「保存してコースに戻る」時と，画面下のジャンプボタンを押してモジュールからコースに戻る際に，ページトップではなくモジュールの属するセクションへジャンプする機能の追加 (2010/04/08)
    print_section_header_fs_switch('FS_DISABLE_BACKTOSECTION');
    echo '　細かな気遣いの改良です．３つの改良からなります．';
    newline();
    echo '　コース上のあるセクションにモジュールを追加したり，既存のモジュールに修正を行ったとします．';
    echo '画面下の「保存してコースに戻る」ボタンをクリックするとオリジナルのMoodleでは元のコースのページトップに戻ります．';
    echo 'これをモジュールが属していたセクションにジャンプするように変更する改良です．';
    newline();
    echo '　コース上のセクションの説明を変更した場合も同様です．';
    echo '「変更を保存する」ボタンを押すと，やはりページトップに戻ってしまいますので，これも改善します．';
    newline();
    echo '　そして最後．コース上のモジュールをクリックしてモジュールを表示したとします．';
    echo 'たとえばフォーラムなど．その際に画面下に元のコースに戻るためのジャンプボタンがあるのですが，';
    echo 'これを押した際に，同様にそのモジュールが属しているセクションに戻ります．';
    newline();
    newline();
    print_notice_message('注意', '残念ながら本機能はＩＥでは動作しません．Firefoxでの動作を確認しています．');
    newline();
    print_fs_switch_condition('FS_DISABLE_BACKTOSECTION');
    print_section_footer();

// Shirai192): Wikiなどのコンテンツに更新があったことをコースの画面上に表示する機能を追加 (2010/08/03)
    print_section_header('Wikiなどのコンテンツの更新チェック機能に関する設定');
    echo '　本機能を用いるとWikiなどのコンテンツに更新があったかどうかを調べてコース画面上でチェックできます．';
//  echo '現在はWikiのみに対応していますが，将来的には単語帳（Glossary）にも対応する予定です．';
    print_subsection_header_fs_switch('FS_DISABLE_RA_LINK_JAVASCRIPT');
    echo '　コンテンツの更新の有無をチェックした結果を各リソースの右隣に表示する際に，カレンダーブロックのミニカレンダー用いているものと同じJavaScriptを用いてリストをポップアップ表示します．';
    echo '万が一，このリスト表示のポップアップ表示が正常に機能しない場合，この表示をより低レベルなHTML（と少しだけJavaScriptを用いた）表示に変更することで正常に表示できるようになるかも知れません．';
    echo '特定のブラウザやクライアント端末のみで不具合が発生する場合はご連絡下さい．';
    echo '自動的に判別して高度な表示が低レベルな表示かを切り替えるようにfs_moodleを改善します．';
    echo '更新には多少の時間が必要です．それまでの間のつなぎとしてどうしても必要な時のみこのスイッチを有効（つまり高度な表示を無効）に変更して下さい．それ以外の場合はデフォルトのままで構いません．';
    print_fs_switch_condition('FS_DISABLE_RA_LINK_JAVASCRIPT');
    print_subsection_footer();
    print_subsection_header_fs_switch('FS_ENABLE_RA_LINK_CUSTOMATTRIBUTE');
    echo '　Wikiなどの更新情報をコースに表示する際に用いる属性を変更できます．';
    echo 'このスイッチを無効に設定した場合はフォーラムの未読と同じ属性を用いて表示します．';
    echo '安全である反面，フォーラムの未読と紛らわしいという欠点があります．';
    echo 'このスイッチを有効にした場合は，以下の'.color_blue('$fsCFG->ra_link_customattribute').'で指定した属性を用いて表示します．';
    print_fs_switch_condition('FS_ENABLE_RA_LINK_CUSTOMATTRIBUTE');
    print_subsection_footer();
    print_subsection_header_fs_cfg('ra_link_customattribute');
    echo '　Wikiなどの更新情報を表す文字列，”更新：＊”を表示する際の属性を指定するための設定です．';
    echo 'この設定を利用するには'.color_blue('FS_ENABLE_RA_LINK_CUSTOMATTRIBUTE').'を有効にする必要があります．';
    newline();
    echo '　現在，'.color_blue('$fsCFG->ra_link_customattribute').'は';
    echo color_blue($fsCFG->ra_link_customattribute).'が設定されています．';
    newline();
    echo '　なお，'.color_blue('FS_ENABLE_RA_LINK_CUSTOMATTRIBUTE').'は';
    if (fs_function_enable('FS_ENABLE_RA_LINK_CUSTOMATTRIBUTE')) {
        echo color_blue('有効').'なので上記設定が利用されます．';
    } else {
        echo color_blue('無効').'なので標準の設定（未読と同じ）が利用されます．';
    }
    print_fs_cfg_condition('ra_link_customattribute');
    print_subsection_footer();
    print_subsection_header('Wikiに関する設定');
    print_subsubsection_header_fs_switch('FS_DISABLE_RA_WIKI');
    echo '　Wikiの更新情報をコース画面に表示するかどうかを指定するスイッチです．';
    print_fs_switch_condition('FS_DISABLE_RA_WIKI');
    print_subsubsection_footer();
    print_subsubsection_header_fs_cfg('ra_wiki_numberofdays');
    echo '　Wikiの更新を遡ってチェックする日数です．';
    newline();
    echo '　現在，'.color_blue('$fsCFG->ra_wiki_numberofdays').'は';
    if (!isset($fsCFG->ra_wiki_numberofdays)) {
        echo color_red('設定されていません！');
    } else {
        echo color_blue('設定されています').'．設定値は'.color_blue($fsCFG->ra_wiki_numberofdays).'日分です．';
    }
    print_fs_cfg_condition('ra_wiki_numberofdays');
    print_subsubsection_footer();
    print_subsubsection_header_fs_cfg('ra_wiki_maxnum');
    echo '　Wikiの更新チェック結果を一覧表示する際に表示する最大項目数です．';
    newline();
    echo '　現在，'.color_blue('$fsCFG->ra_wiki_maxnum').'は';
    if (!isset($fsCFG->ra_wiki_maxnum)) {
        echo color_red('設定されていません！');
    } else {
        echo color_blue('設定されています').'．設定値は'.color_blue($fsCFG->ra_wiki_maxnum).'項目です．';
    }
    print_fs_cfg_condition('ra_wiki_maxnum');
    print_subsubsection_footer();
    print_subsection_footer();

    print_subsection_header('用語集（Glossary）に関する設定');
    print_subsubsection_header_fs_switch('FS_DISABLE_RA_GLOSSARY');
    echo '　用語集の更新情報をコース画面に表示するかどうかを指定するスイッチです．';
    print_fs_switch_condition('FS_DISABLE_RA_GLOSSARY');
    print_subsubsection_footer();
    print_subsubsection_header_fs_cfg('ra_glossary_numberofdays');
    echo '　用語集の更新を遡ってチェックする日数です．';
    newline();
    echo '　現在，'.color_blue('$fsCFG->ra_glossary_numberofdays').'は';
    if (!isset($fsCFG->ra_glossary_numberofdays)) {
        echo color_red('設定されていません！');
    } else {
        echo color_blue('設定されています').'．設定値は'.color_blue($fsCFG->ra_glossary_numberofdays).'日分です．';
    }
    print_fs_cfg_condition('ra_glossary_numberofdays');
    print_subsubsection_footer();
    print_subsubsection_header_fs_cfg('ra_glossary_maxnum');
    echo '　用語集の更新チェック結果を一覧表示する際に表示する最大項目数です．';
    newline();
    echo '　現在，'.color_blue('$fsCFG->ra_glossary_maxnum').'は';
    if (!isset($fsCFG->ra_glossary_maxnum)) {
        echo color_red('設定されていません！');
    } else {
        echo color_blue('設定されています').'．設定値は'.color_blue($fsCFG->ra_glossary_maxnum).'項目です．';
    }
    print_fs_cfg_condition('ra_glossary_maxnum');
    print_subsubsection_footer();
    print_subsection_footer();

    print_section_footer();

    print_section_header_fs_switch('FS_DISABLE_NEEDPASSWORD2COURSEENROLE');
    echo '　ユーザ自身の手によりコースから登録抹消するパーミッションを有効に設定した場合，何らかのミスによりユーザがいつの間にかコースから消えてしまっていたりします．';
    echo 'ちょっとした好奇心でコースから登録抹消した場合，改めて登録をコース管理者に要請する必要（＝手間）が生じます．';
    echo 'ではパーミッションを許可に設定しなければ良いのですが，これも問題があります．';
    echo 'たとえば登録キーの登録されていない誰でも登録が可能なコースがあったとします．';
    echo 'ユーザはちょっとした好奇心からコースに登録して入室し，でも実際には興味のあるコースではなかった場合です．';
    echo '常にマイコースにその試しに登録したコースが現れてしまい邪魔です．';
    echo 'コースから登録抹消したくても自分ではできませんので，結局，コース管理者の手を煩わせることとなります．';
    newline();
    echo '　本機能が有効であれば，登録キーの登録されているコースからユーザが自ら登録抹消を試みた場合，';
    echo '登録キーの入力を要求する画面が表示されます．';
    echo 'ここで正しい登録キーを入力しないと，本来の登録抹消（Yes/No）の画面が表示されなくなります．';
    echo 'もし登録時は登録キーによるユーザ自身による登録を要求するが，コースからの登録抹消に登録キーの入力が不要としたい場合は，';
    echo 'コースへの登録を締め切った後に，登録キーを削除すればＯＫです．';
    print_fs_switch_condition('FS_DISABLE_NEEDPASSWORD2COURSEENROLE');
    print_section_footer();

    print_section_header('学校のロゴ画像などを画面上部に表示する方法');
    echo '　いまのところ，この機能をfs_moodleで実装する予定はありませんが，FAQの一つですのでリンクを記述しておきます．';
    echo '詳しくは<a href="http://moodle.org/mod/forum/discuss.php?d=150736" target="_blank">こちらのページ</a>をご覧下さい．';
    print_section_footer();

    print_section_header_fs_switch('FS_ENABLE_NOSHOW_SHOWONLYTOPICBUTTON');
    echo '　喜多先生が考えた改良です．';
    newline();
    echo '　トピックスフォーマットにおいて各セクション（トピック）の外枠の右端にある□のアイコンをクリックすると，他のセクションが消えます．';
    echo 'これはこれで便利な機能なのですが意外と便利に使いこなしている方は少なく，逆に誤ってこのアイコンをクリックしてしまい，「自分だけコンテンツが少なく表示される！」という問い合わせを受けた，という事例が２例報告されたため，この機能を無効にするスイッチを設けました．';
    echo 'この機能を有効にするとサイト全体で「コースの特定のトピックだけを表示するアイコン」はトピックスフォーマットにおいて表示されなくなります．';
    newline();
    echo '　なお，fs_moodleにおいては'.color_blue('モバイルモード').'を有効にすることで，より高度なトピックスの展開／閉じる機能が使えます．';
    echo 'もし標準の機能を「使いたい／紛らわしい」という意見が対立した場合，トピックス表示の操作を希望する方にはモバイルモードの利用をお勧め下さい．';
    print_fs_switch_condition('FS_ENABLE_NOSHOW_SHOWONLYTOPICBUTTON');
    print_section_footer();
}

fsconfig_check_courseSettings();

?>