ようやく.javaのファイルであったり.vmのファイルが何を意味しているのか理解できてきました。
Testポートレットの詳細画面を要素検証のNetworkにかけてみたら、 TestDetailScreenがファイルになっていることに。
TestDetailScreenを確認してみると、portlets/html/ja/ajax-test-detail.vmが表示に関するファイルとのことです。
このファイルを開いて実際に書いていきます。 まずは、URLという表記が必要なので
#ALtdcaption($l10n.TODO_URL) #ALtditem($!result.Detail.Url)
というコードをTODO_MEMOだったり、TODO_UPDATE_DATEなどが書いてある下あたりに TODO_URL版を入れます。
ただ、これだけだと単純に”URL”という文字が出ないので、 AipoLocalization_ja.propertiesというファイルの中に TODO_MEMOが書いてある近くに
TODO_URL=URL
といった形で入れます。
続いて、Test追加で入力したデータを取得しなければいけません。
これは、まずTestResultData.javaのファイルに書き入れます。
/** ◯◯ */ こういうのが並んでいる下に
/** URL */ private ALStringField url;
を入れます。
そして、initFieldの{}の中に
url = new ALStringField(); url.setTrim(false);
を書きます。
次に{}の外に
public String getUrl(){ return url.getValue(); } public void setUrl(String string){ url.setValue(string); }
を書き入れます。
最後にTestResultData.javaのファイル内の getResultDataDetail{}の中に
rd.setUrl(record.getUrl());
を同じようにrd.setで始まるようなコードの下に書けばOKです。
続いてサムネイルですが、
やり方は、URLの表示のさせ方と同じなのですが、 一つ手を加える必要があります。
TestResultData.javaのファイルに
public String getUrl() { return ALEipUtils.getMessageList(url.getValue()); }
こういったコードがありますが、このままだとURLが自動改行されてしまい、 そのままURLを表示したくても、出来ません。
なので、改行させない用のgetUrlの箱を用意する必要があります。
このコードの下部に
public String getUrl2() { return url.getValue(); }
こういった形で新しいgetUrlを作ってあげて、Urlをそのまま取得するようにします。
こうするとサムネイルが上手いこと表示されます。
最後に、ajax-test-detail.vmファイル内の40行目あたり
#ALtablefooter() #ALbuttonheader()
のすぐ上あたりに以下のコードを書き入れます。
<td><a href="$!result.Detail.Url2"><img title="$!result.Detail.Url2" src="http://capture.heartrails.com/medium?$!result.Detail.Url2" alt="$!result.Detail.Url2" width="200" height="300" /></a></tb>
するとUrl2の方のURLを取得し、バグが起きることはないはずです。
そして、 AipoLocalization_ja.propertiesに
TODO_SETFIELDNAME_THUMBNAIL= サムネイル
といったコードを入れれば
「サムネイル」もしっかり入っているはずです。