パスワードの変更を設定してあるユーザの一覧表示

Re: パスワードの変更を設定してあるユーザの一覧表示

- Tatsuya Shirai の投稿
返信数: 0

お久し振りです.

ようやく戻って来ました^^;

さて,本改良,ユーザー登録時期の4月には結構,便利な機能だったと思いますが,Moodle1.9の頃のコードではダメです.Moodle2.8のみの検証ですが,以下のように改良することで,再び使えるようになりました.

http://www.suzuka-ct.ac.jp/mech/moodle2/mod/wiki/view.php?pageid=3000

user/filters/lib..php に以下の改造を行い,更にuser/filtersフォルダに添付のuser_preferences_yesno.phpを追加して下さい.

(1) 冒頭

require_once($CFG->dirroot.'/user/filters/cohort.php');
require_once($CFG->dirroot.'/user/filters/user_filter_forms.php');
require_once($CFG->dirroot.'/user/filters/checkbox.php');
// (Shirai025): パスワード変更の強制がOnのままのユーザを発見するためのフィルタをユーザリストの表示に追加 (2009/05/08)(2015/05/09)
// (Shirai025): ここから追加
require_once($CFG->dirroot.'/user/filters/user_preferences_yesno.php');
// (Shirai025): ここまで追加
/**
 * User filtering wrapper class.

(2) function user_filtering()

        if (empty($fieldnames)) {
            $fieldnames = array('realname' => 0, 'lastname' => 1, 'firstname' => 1, 'username' => 1, 'email' => 1, 'city' => 1, 'country' => 1,
                                'confirmed' => 1, 'suspended' => 1, 'profile' => 1, 'courserole' => 1, 'systemrole' => 1,
                                'cohort' => 1, 'firstaccess' => 1, 'lastaccess' => 1, 'neveraccessed' => 1, 'timemodified' => 1,
                                'nevermodified' => 1, 'auth' => 1, 'mnethostid' => 1);
// (Shirai132): パスワード変更の強制がOnのままのユーザを発見するためのフィルタをユーザリストの表示に追加 (2009/05/08)
// (Shirai132): ここから追加
            $fieldnames['forcepasswordchange'] = 1;
// (Shirai132): ここまで追加
        }

(3) function get_field()

            case 'confirmed':   return new user_filter_yesno('confirmed', get_string('confirmed', 'admin'), $advanced, 'confirmed');
            case 'suspended':   return new user_filter_yesno('suspended', get_string('suspended', 'auth'), $advanced, 'suspended');
// (Shirai025): パスワード変更の強制がOnのままのユーザを発見するためのフィルタをユーザリストの表示に追加 (2009/05/08)
// (Shirai025): ここから追加
            case 'forcepasswordchange':   return new user_filter_user_preferences_yesno('forcepasswordchange', get_string('forcepasswordchange'), $advanced, 'auth_forcepasswordchange');
// (Shirai025): ここまで追加
            case 'profile':     return new user_filter_profilefield('profile', get_string('profilefields', 'admin'), $advanced);