feedbackモジュールの初期設定変更について

feedbackモジュールの初期設定変更について

- Yuuki Murakami の投稿
返信数: 3

いつもお世話になっております。村上です。
今回、皆様のお知恵を拝借させていただきたく、書込みさせていただきました。

バージョン2.6.1を利用しており、フィードバックモジュールを新規作成しようとすると
以下のような画面が表示されると思います。Moodleのバージョンが2.6くらいから
項目のメニューをクリックしないと展開する設定になっていると思います。

feedback

問題になっているのは教員が学生に対してアンケートを実施するにあたり
[ 質問および回答設定 ]も折りたたまれているため、教員が開かずに設定を終了してしまいます

ですがデフォルトの設定値は[ 匿名 ]になっているため、意識せずに設定画面を
終了してしまうと、アンケートを行ってもユーザ名が特定できなくなります。
feedback2


[ ユーザ名を記録する ]の設定はmoodle/mod/feedback/mod_form.phpの50行目付近

        $mform->addElement('header', 'feedbackhdr', get_string('questionandsubmission', 'feedback'));

        $options=array();
        $options[1]  = get_string('anonymous', 'feedback');
        $options[2]  = get_string('non_anonymous', 'feedback');
        $mform->addElement('select',
                           'anonymous',
                           get_string('anonymous_edit', 'feedback'),
                           $options);

ここでanonymousとnon_anonymousを入れ替えると、先程のプルダウンの匿名・ユーザ名を
記録し、回答とともに表示する表示は入れ替わり、デフォルト値が匿名ではなくなりますが
実際には表示上だけで記録する設定でも匿名になったたまになっています。

フィードバックのデフォルト設定を意識させるためには以下の2つのどちらかを行いたいと考えています。

・フィードバックのメニューを折りたたまずに全表示させて[ 匿名 ]になっている事をユーザに気づかせる
・デフォルト値を匿名でなく、記録する設定にする

色々とソースを見ながら調べておりますが解決しておらず、悩んでおります。
実際にフィードバックを使っている方でいい運用方法がございましたら、ご教授していただけないでしょうか?

宜しくお願い致します。

Yuuki Murakami への返信

Re: feedbackモジュールの初期設定変更について

- Yuuki Murakami の投稿

自己レスになります。何とかして2つの解決策の1つをソースファイルで調べていると見つけました。

moodle/lib/formslib.php の2831行目
========================================================
         // Define collapsible classes for fieldsets.
         $arialive = '';
         $fieldsetclasses = array('clearfix');
         if (isset($this->_collapsibleElements[$header->getName()])) {
             $fieldsetclasses[] = 'collapsible';
             if ($this->_collapsibleElements[$header->getName()]) {
 //                $fieldsetclasses[] = 'collapsed';  <-コメントアウト
                   $fieldsetclasses[] = 'expanded'; /*  <-追記 */
             }
         }

========================================================

この箇所を修正する事で「すべてが展開する」状態になりました。
他にも回避方法があるかもしれませんが、デフォルト設定でフィードバックを
実施した場合、匿名でユーザ名が残らない為、匿名設定である事を作成段階で
気が付けるかなと思います。

フィードバックのデフォルト設定の「匿名」から「ユーザ名を記録する」設定を
変更されている方がいらっしゃいましたら、情報をいただけると嬉しいです。

宜しくお願い致します。

Yuuki Murakami への返信

Re: feedbackモジュールの初期設定変更について

- udagawa mitsuru の投稿

宇田川です。

mod/feedback/mod_form.php の63行目付近を以下のように変更すれば良さそうです。

        $options=array();
        $options[2]  = get_string('non_anonymous', 'feedback');
        $options[1]  = get_string('anonymous', 'feedback');
        $mform->addElement('select',
                           'anonymous',
                           get_string('anonymous_edit', 'feedback'),
                           $options);

$options[] の順番を入れ替えているだけですが、画面も意図したように表示され、出力されるHTMLソースを確認してもoptionタグ中のvalue要素にも悪い影響はなさそうです。

添付 キャプチャ1.PNG
udagawa mitsuru への返信

Re: feedbackモジュールの初期設定変更について

- Yuuki Murakami の投稿

宇田川様

返信ありがとうございます。
早速ですが、修正を行い試してみたら
思っていた動きになりました。本当にありがとうございます。

Moodleに慣れた人であれば、このユーザ名を記録する設定を
デフォルトに設定に変更すればいいですが、不慣れなユーザは
項目を確認する意味合いも込めて、折りたたみを全てオープンする
設定も併用した方がいいかもしれませんね。