2

roundcube にログイン アラートを追加しようとしていますが、期待するクライアント側のイベントを取得していないようです。beforeloginイベントを聴きたい。

私のJavaScriptコードは次のようになります:

if (window.rcmail) {
  rcmail.addEventListener('beforelogin', function() {
    console.log("Got beforelogin");
    window.alert("Alert");
  });
  rcmail.addEventListener('init', function() {
    console.log("Got init");
  });
}

そしてそれはログに記録します

Got init

コンソールログに、しかし驚いたことに、ログに記録されません

Got beforelogin

また、アラートも表示されません。

サーバー側では、javascript が追加されます

class myalert extends rcube_plugin
{
    function init()
    {
        $this->add_hook('template_object_loginform', array($this,'myalert'));
    }

    function myalert($args)
    {
       $this->include_script('myalert.js');
       return $args;
    }
}

roundcube クライアント側イベントの命名規則を誤解していませんか? 間違った方法で追加しましたか?他に見逃したものはありますか?

4

1 に答える 1