AipoのWiki機能で詳細画面を開くのと登録ダイアログを開く分岐処理

@iwasaki 633views 更新:2014年3月14日

AipoのWiki機能がリリースされました!

Wiki機能では新たに、詳細画面をダイアログではなく、画面にそのまま表示することを行っています。

Wikiでリンク先がある場合→クリックしたら画面を切り替えてリンク先を表示する

リンク先がない場合→登録用のダイアログを表示する

といった分岐処理が必要となります。

https://github.com/aipocom/aipo/blob/master/portlets/wiki/src/main/java/info/bliki/wiki/model/WikiModel.java

の以下の部分で分岐して表示を切り替えています。

Aipoの場合、Ajaxによる画面切替はaipo.common.showDialogとaipo.viewPageで行うので、この基本パターンにのっとれば意外と簡単に今回のように詳細画面をダイアログではない表示にすることができます。

      EipTWiki destWiki =
        WikiUtils.getEipTWiki(topic, queryPairs.get("parentId"));
      String jstext = "";
      if (null == destWiki) {
        String hrefForm =
          href.replaceFirst(
            WIKII_NTERNAL_LINK_SCREEN,
            WIKII_NTERNAL_LINK_FORM_SCREEN);
        jstext =
          "aipo.common.showDialog('"
            + hrefForm
            + "', '"
            + queryPairs.get("portletid")
            + "', "
            + queryPairs.get("callback")
            + ");";
        aTagNode.addAttribute("class", "wikiNew", true);
      } else {
        jstext =
          "aipo.viewPage('"
            + href
            + "', '"
            + queryPairs.get("portletid")
            + "');";

      }

 

 

 

 

ログイン / 新規登録してコメントする

このソースコードをストックして後で利用したり、作業に利用したソースコードをまとめることができます。

こちらもお役に立つかもしれません