Project

General

Profile

Backport(バックポート) #3989

OpenPNEが設置されているURLをJavaScriptコードから取得できるようにする

Added by Youichi Kimura over 7 years ago. Updated over 7 years ago.

Status:
Fixed(完了)
Priority:
Normal(通常)
Target version:
Start date:
2013-06-17
Due date:
% Done:

100%


Description

概要

OpenPNE3.8.x からは openpne.apiBase の値を取得することで JavaScript コードから api.php へのパスを把握することができるが、SNS が設置されている URL (pc_frontend のルート URL) は取得できる状態にはなっていない。OpenPNE が http://example.com/sns/ のようにサブディレクトリ以下に設置されている場合もあるため、ルート URL を / に決め打ちすることはできない。

現状、opTimelinePlugin のように JavaScript で動的にページを更新するプラグインでは url_for('@homepage') を代わりとして多用しており、適切な用法でないだけでなく url_for を使用するために PHP コードに依存してしまうという問題が存在する。

参考: https://github.com/tejimaya/opTimelinePlugin/blob/master/apps/pc_frontend/modules/timeline/templates/_timelineTemplate.php#L23

仕様

source:apps/pc_frontend/templates/_layout.php

$jsonData = array(
  'apiKey' => $sf_user->getMemberApiKey(),
  'apiBase' => app_url_for('api', 'homepage'),
);

echo javascript_tag('
var openpne = '.json_encode($jsonData).';
');

に baseUrl の項目を追加し、JavaScript コードから openpne.baseUrl で OpenPNE が設置されている URL を取得できるようにする。


Related issues

Related to OpenPNE 3 - Enhancement(機能追加・改善) #3365: OpenPNEが設置されているURLをJavaScriptコードから取得できるようにする Won't fix(対応せず) 2013-06-17

Associated revisions

Revision ea7f2db0 (diff)
Added by Youichi Kimura over 7 years ago

add openpne.baseUrl for client-side rendering (fixes #3989, BP from #3365)

(cherry picked from commit 7977e6467f1553eadd986e657601b600827c837e)

Revision 2fd30b22 (diff)
Added by Youichi Kimura over 7 years ago

add openpne.baseUrl in smartphone layout for client-side rendering (fixes #3989, BP from #3365)

(cherry picked from commit 625d3853c4f45d411daafea876ec0b938e22d7a7)

Revision 1ce8278c
Added by kaoru n over 7 years ago

Merge pull request #353 from upsilon/t-3989

add openpne.baseUrl for client-side rendering (fixes #3989, BP from #3365)

History

#1 Updated by Youichi Kimura over 7 years ago

#2 Updated by Youichi Kimura over 7 years ago

  • Status changed from New(新規) to Pending Review(レビュー待ち)
  • % Done changed from 0 to 50

下記 Pull Request を作成しました
https://github.com/openpne/OpenPNE3/pull/353

#3 Updated by kaoru n over 7 years ago

  • Status changed from Pending Review(レビュー待ち) to Pending Testing(テスト待ち)
  • % Done changed from 50 to 70

レビューしました

#4 Updated by isao sano over 7 years ago

  • Status changed from Pending Testing(テスト待ち) to Pending Merge(マージ待ち)
  • % Done changed from 70 to 80

単体試験完了しました。
問題ありません。

#5 Updated by kaoru n over 7 years ago

  • Status changed from Pending Merge(マージ待ち) to Fixed(完了)
  • % Done changed from 80 to 100

マージしました

Also available in: Atom PDF