1

我有圆形立方体-最新版本 1.2.0 - webmail 与一起使用。我在该服务器上托管多个域,并使用 IIS 作为 Roundcube 的 Web 服务器。可以通过其中 xxxx 是我托管的域名访问网络邮件。https://mail.xxxx.tld

bindings使用IIS 的网站设置,所有域都指向 IIS 上的一个网站。

在 Roundcube config.inc.php 中:

$config['default_host'] = array('mail.x1.net', 'mail.x2.net', 'mail.x3.org', 'mail.x4.net');

因此,在登录页面中有如下屏幕截图所示的服务器列表:

在此处输入图像描述

默认情况下始终选择服务器列表中的第一台服务器。我需要得到的是根据访问登录页面的 URL 使选定的服务器或什至使单个服务器可用。

现在,我不是说如何实现它,无论是客户端使用 javascript 还是服务器端使用 PHP,我只是说我可以在哪里应用任何实现来满足该要求?

我已尝试修改skins/larry/templates/login.html,但除了以下内容外,我无法找到登录表单的任何详细信息:

<roundcube:form name="form" method="post">
<roundcube:object name="loginform" form="form" size="40" submit=true />
</form> 

换句话说,所有三个表单元素,用户名、密码和服务器都是从生成的<roundcube:object name="loginform" form="form" size="40" submit=true />,那么我在哪里可以修改这个对象呢?

4

1 回答 1

0

我发现有两种方法:

  1. 很长的路要走,学习 Roundcube API 并构建一个插件。
  2. 简短的方法,在末尾添加一个小skins/larry/templates/login.html

以下是我添加的脚本:

<script>
/* By: Said Bakr
 Making only one select list server item equals to the current host.
*/
$(document).ready(function() {
    my_host = $(location).attr('hostname');
    $("#rcmloginhost option").each(function(){
      if ($(this).val().replace(/^(.*)\:\/\//i, "") != my_host){
        $(this).remove();
      } 
    })
});
</script>
</body>
于 2016-06-17T16:14:53.217 回答