「サブリソースに新規リソースを作成」→「キャンセルボタンを押す」の後のページ遷移を変えたい  【解決済み】

質問全般・改善要望
Kenny
メンバー
メンバー
記事: 155
登録日時: 2011年5月28日(土) 13:41

「サブリソースに新規リソースを作成」→「キャンセルボタンを押す」の後のページ遷移を変えたい

投稿記事by Kenny » 2017年9月11日(月) 17:49

MODXバージョン 1.0.19J
PHPのバージョン 7.1.2
データベースのバージョン 5.6.23-log

お世話になります。

新規リソース作成後のページ遷移については、以前こちらでお教えいただきました。

今回は、通常、
「サブリソースに新規リソースを作成」→「キャンセルボタンを押す」→「サブリソース一覧」へ遷移されると思います。

これを「サブリソース一覧」ではなく、任意のページへ遷移させたいと考えModxのシステムイベントを調べてみたのですが、見当たりません。

この様な場合は、任意のページへ遷移させることは不可能でしょうか。

どうぞよろしくお願いします。
アバター
yama
管理人
記事: 2911
登録日時: 2009年7月29日(水) 02:50

「サブリソースに新規リソースを作成」→「キャンセルボタンを押す」の後のページ遷移を変えたい

投稿記事by yama » 2017年9月12日(火) 21:54

http://170912111317-13078.evo.demo.modx.jp/manager/
OnDocFormSaveが使えると思います。サンプルを作りました
Kenny
メンバー
メンバー
記事: 155
登録日時: 2011年5月28日(土) 13:41

「サブリソースに新規リソースを作成」→「キャンセルボタンを押す」の後のページ遷移を変えたい

投稿記事by Kenny » 2017年9月13日(水) 09:59

Yama様

いつもありがとうございます!

早速試してみようと思い、「とあるテンプレート」で作動さる場合、以下のようにしてみたのですが、どうもうまくいかず…。

$tid = $_POST['template']; //とあるリソース配下のid

if ($tid == '2' ) {

// OnDocFormSave
$url = 'http://www.yahoo.co.jp/';
exit(sprintf("<script>parent.location.href='%s';</script>",$url));

}
アバター
yama
管理人
記事: 2911
登録日時: 2009年7月29日(水) 02:50

「サブリソースに新規リソースを作成」→「キャンセルボタンを押す」の後のページ遷移を変えたい

投稿記事by yama » 2017年9月13日(水) 10:53

https://goo.gl/YgViVZ
YahooやGoogleは他ドメインのページのフレーム内で表示されないように設定されているためではないでしょうか?
この場合、IEではメッセージが表示されますがFirefoxやChromeでは何も表示されません。
クッションとなるページを自サイト内に作ればリダイレクトできると思います。
Kenny
メンバー
メンバー
記事: 155
登録日時: 2011年5月28日(土) 13:41

「サブリソースに新規リソースを作成」→「キャンセルボタンを押す」の後のページ遷移を変えたい

投稿記事by Kenny » 2017年9月13日(水) 11:19

Yama様

有難うございます。

こちらのデモページで
http://170912111317-13078.evo.demo.modx.jp/manager/

左にある「新着情報」のフォルダの中で「サブリソースを追加(テンプレート:Bootstrap(2) で)」→キャンセルボタンを押した時に、
ダッシュボード(http://170912111317-13078.evo.demo.modx.jp/manager/index.php?a=2)へ遷移させたい場合

$tid = $_POST['template'];
if ($tid == '2' ) {
$url = 'http://170912111317-13078.evo.demo.modx.jp/manager/index.php?a=2';
exit(sprintf("<script>parent.location.href='%s';</script>",$url));
}

この様な形で入れたのですが、やはり動きません。
アバター
yama
管理人
記事: 2911
登録日時: 2009年7月29日(水) 02:50

「サブリソースに新規リソースを作成」→「キャンセルボタンを押す」の後のページ遷移を変えたい  【解決済み】

投稿記事by yama » 2017年9月13日(水) 12:52

すいません、保存時じゃなくてキャンセル時ですね
http://170912111317-13078.evo.demo.modx.jp/manager/
これでどうでしょう?

コード: 全て選択

// OnDocFormRender
if($modx->documentObject['template']!=2) return;
?>
<script>
jQuery('#cancel').click(function(){
  parent.location.href = 'http://modx.jp';
});
</script>
Kenny
メンバー
メンバー
記事: 155
登録日時: 2011年5月28日(土) 13:41

「サブリソースに新規リソースを作成」→「キャンセルボタンを押す」の後のページ遷移を変えたい

投稿記事by Kenny » 2017年9月13日(水) 13:34

Yama様

ありがごとうございます!
うまく動きました。
こんな風に書くんですね。勉強になりました。

重ね重ね有難うございました!