2018年10月24日水曜日

Rainloopをちょっとだけ日本語対応してみた

1.メール一覧の日付表示を「D M月.」から「M月D日」に変更します。

1.12.1/static/js/app.js
1.12.1/static/js/admin.js
1.12.1/static/js/min/app.min.js
1.12.1/static/js/min/admin.min.js
return e.format("D MMM.") → return e.format("MMMDo")

2.テキスト罫線で飾ったメールの縦ずれが起きるので、'MS ゴシック'を追加します。

1.12.1/static/css/app.css, 1.12.1/static/css/min/app.min.css
font-family:にmonospaceが設定されている全ての先頭に'MS ゴシック',を挿入

3.iso-2022-jpでの機種依存文字(①②③やⅠⅡⅢなど)の文字化け対策

/usr/share/rainloop/rainloop/v/1.12.1/app/libraries/MailSo/Base/Utils.php
500行目(ConvertEncoding)に以下を挿入
case ($sFromEncoding === \MailSo\Base\Enumerations\Charset::ISO_2022_JP):
  if (\MailSo\Base\Utils::IsIconvSupported())
  {
    $sResult = \MailSo\Base\Utils::IconvConvertEncoding($sResult, 'iso-2022-jp-ms', $sToEncoding);
  }
  else if (\MailSo\Base\Utils::IsMbStringSupported())
  {
    $sResult = \MailSo\Base\Utils::MbConvertEncoding($sResult, 'iso-2022-jp-ms', $sToEncoding);
  }
  $sResult = (false !== $sResult) ? $sResult : $sInputString;
  break;
iso-2022-jpからエンコードするときiso-2022-jp-msを指定してやります。
同様に sjis → sjis-win や euc-jp → eucjp-win もできると思います。

4.日本語対応じゃないけど、sieveで複数個所に転送したいので、stop;をコメント化します。

1.12.1/app/libraries/RainLoop/Providers/Filters/SieveStorage.php
433行目をコメント化
   case \RainLoop\Providers\Filters\Enumerations\ActionType::FORWARD:
    $sValue = $oFilter->ActionValue();
    if (0 < \strlen($sValue))
    {
     if ($oFilter->Keep())
     {
      $aCapa['fileinto'] = true;
      $aResult[] = $sTab.'fileinto "INBOX";';
     }

     $aResult[] = $sTab.'redirect "'.$this->quote($sValue).'";';
 //    $aResult[] = $sTab.'stop;';
    }
    else
    {
     $aResult[] = $sTab.'# @Error (redirect): empty action value';
    }
    break;

5.Ver.1.13.0にしたらドロップダウンメニューのアイコンがずれるので、CSSを変更します。 app.min.css で .dropdown-menu a の display:block; を display:flex; に変更

0 件のコメント:

コメントを投稿

postfix main.cf smtpd_sender_restrictions

最近、メールサーバでキューを確認すると、やたらと???@0000.comへのバウンスメールが溜まっている。 中身を確認すると、PICほにゃららというファイル名で難読化したJavaScriptが添付されているメールです。 何が目的なのか分かりませんが、ごみメール送ってきてバウン...