最新版 TeamPage 5.2.68 のご紹介
この記事では TeamPage 5.2.65〜5.2.68 での新機能や修正点を紹介します。
バグ修正
• 期間が「終日」のイベントが、カレンダー画面で一日前または後に表示されるバグを修正しました。
• 同じく「終日」イベントが iCal フィードで一日ずれて出力されるバグを修正しました。
• 同じく Outlook に出力した内容でも一日ずれるバグを修正しました。
• ある添付ファイルの名前が他の添付ファイルと同じ名前である場合に、ダイジェスト(まとめメール)での添付ファイルの表示がおかしくなる問題を修正しました。
• 同じ名前のファイルが複数添付されている記事がダイジェストの本文に表示されるときに添付ファイルの表示が正しく行われないことがある問題を修正しました。
• TeamPage が HTTPS で運用されている場合、YouTube ウィジェットで埋め込まれた動画へのアクセスに HTTP ではなく HTTPS を使うように修正しました。以前までは、動画へのアクセスに HTTP を使っていたため、HTTPS で運用された TeamPage では、ブラウザによっては YouTube の動画が再生されないことがありました。
• セットアップ アシスタントを閉じるボタンを、閲覧中のユーザーがそのボタンを閉じる権限がない場合、表示しないように変更しました。以前までは、閉じる権限のないユーザーにもボタンが表示され、ボタンをクリックしたときにエラーが表示されるようになっていました。
• 空のリンク(HTML の <a href="">リンク文字</a>)を含むコンテンツの PDF 出力が正しく動作しない問題を修正しました。
• サーチプラス検索でヒットした記事を展開表示したときに表示されるアイコン画像への URL を修正しました。以前のバージョンまでは、URL が誤っているため、アイコン画像が正しく表示されませんでした。
• リッチテキスト エディタ (TinyMCE) の「画像の挿入/編集」ダイアログで境界線の値を設定しない場合に画像の挿入が正しく動作しない問題を修正しました。
• 検索フィルタが適用され、なおかつ少なくとも1件の記事に他の記事へのリンクが含まれたページを閲覧したとき、「StackOverflowError」が表示されることがある問題を修正しました。
• TeamPage サーバーで使用されるメールの既定の「From」アドレスとして使われるメールアドレスを修正しました。この問題は、TeamPage の開発言語である SDL の <email> タグを使う場合にのみ影響するもので、通常の使用においては影響はありません。
• TeamPage から配信されたメール通知やウォッチ通知をユーザーがメールソフトで受け取り、それに対して書いた返信メールが TeamPage に到着したとき、そのメールを記事(コメント)として投稿処理するときのルーティングに関連したバグを修正しました。TeamPage は、サーバー メールボックス のルールに従って投稿先のスペースを判断します。メールが TeamPage に到着すると、TeamPage はそのメールが TeamPage から配信されたメール通知やウォッチ通知への返信かどうかを判断し、「返信である」と判断した場合は、メール通知やウォッチ通知の元となった記事(コメント先の記事)のスペースを調べ、既定で、到着したメールをそのスペースのモデレーション スペース(コメントを投稿するスペース)に投稿します。しかし、返信メールの件名に「@スペース名」を手動で挿入する、または送信先アドレスで「inbox+スペース名」を指定するなどすることにより、ルーティングの動作を上書きして投稿先スペースを変更(指定)できます。前のバージョンまでは、このルーティングの上書きが正しく働かず、返信メールは常に既定のモデレーション スペースへと投稿され、結果として誤ったスペースに投稿されることがありました。
• メールの件名に含まれる「@スペース名」のような特殊な命令語が、それが正しく書かれていない場合でも、TeamPage に投稿されるときに削除(除去)されるバグを修正しました。このバージョンからは、スペースのメールボックスに届いたメールの件名に含まれる「@スペース名」は、削除されずにそのまま残ります。何故なら、スペースのメールボックスに届いたメールはそのスペースに投稿されることが決まっているからです。
• 予定の記事(イベントの記事)をカレンダー画面に表示する方法を変更し、未入力の日付や時刻がエラーを発生させる問題を修正しました。
その他の改善
• Attivio AIE 3.5.1 のサポートを追加しました。Attivio プレミアム検索をお使いのお客様は、新しい AIE の様々な改善や新機能を利用できます。
• TeamPage に組み込まれた Java のバージョンを 6 から 7 に変更しました。Java を使用するプラグインをご使用の場合は、再コンパイルを推奨します。
• Attivio AIE 3.5.1 プレミアム検索モジュールに対応しました。
• TeamPage のインストーラーに含まれる Java のバージョンを 6 から 7 に上げました。プラグインで Java を使っている場合は、再コンパイルを推奨します。
• Traction Software 社へ送信するフィードバックのフォームで使用される既定の URL を HTTP から HTTPS に変更しました。
• 記事を削除するとき、削除に関するコメント(削除する理由など)を、「新規記事の投稿」または「コメントの投稿」権限のあるスペースに投稿できるようにしました。前のバージョンまでは、「記事の削除」権限のあるユーザーが、いずれかのスペースで「コメントの投稿」権限はあるもののどのスペースでも「新規記事の投稿」権限がない場合、記事の削除ができないことがありました。
開発者向けの機能
• SDK と GWT フォーム API ((si.sdk.data.EntrySourceFactory を使用する FormFactories) におけるカスタム エントリー タイプ (custom entry type) と記事クラス (entry class) との分別を修復しました。
この変更の主たる目的は、「記事」を特定の entry class に結びつけ、記事を特別な編集フォームで作成/編集するためのプラグインを作成しやすくすることです。
例えば、「タスク」という entry class を何か別の custom entry type に結びつけると、この種の「記事」を別の論理的な名前で扱えるようになります。
これは、ビルドインされている custom entry type (例えば、タスク、マイルストーン、プロジェクト、予定など) の「サブタイプ」用の作成/編集フォームをデザインするときに特に便利な機能となります。
FormFactory の設定ファイルで source=entry が指定されている場合、そのフォームで作成される記事(エントリー)の custom type は entry_custom_type 属性で指定されたもののままですが、entry_class 属性で entry class を指定できるようになりました。
次のコードは、FormFactory 設定ファイルの例です。(server ディレクトリ下の /config/data/form にある *.properties ファイルです)
# config/data/forms/myform.properties class=tsi.sdk.data.EntryFormFactory display_name=My Custom Form # located in the current directory xml=config.data.forms.myform-schema sdl=config.data.forms.myform-layout sources=entry # These entries will be treated just like all other tasks, including belonging # to the "task" index entry type (config/entry/indextypes/task.properties) entry_custom_type=task # But they will belong to the "mine" entry class (config/entry/classes/mine.properties) # so that they will open in this form for editing. entry_class=mine
Entry.getEntryClass によって返される EntryClass の値は、記事に埋め込まれた "_class" エントリープロパティの値が反映されます。記事に "_class" エントリープロパティが存在しない場合や未知の EntryClass 名が指定されている場合は、代わりに custom entry type と同じ名前の EntryClass が使われます(記事が custom entry type に紐付いている場合)。
エントリープロパティ "_class" が優先されるので、記事の EntryClass は記事の編集に使うべきフォームを判別できます。これまでプラグインの制作者は、サイドバーの「記事の編集」ボタンをクリックした時に正しい編集フォームが表示されるように src/com/traction/sdl/gwtrpc/shared.sdl をハックする必要がありましたが、今後はその必要がなくなります。(既存のプラグインで shared.sdl をハックしている場合、この改善点を利用するには、プラグイン中のファイルを修正する必要があります)
• LabelNamesTag の実装クラスは、このバージョンで、正しく getLableNameIterator (com.traction.sdk.sdl.Scope scope, com.traction.sdk.LabelNameSet) を呼び出すように修正されました。