プロジェクト

全般

プロフィール

Backport(バックポート) #3989

完了

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

Youichi Kimura さんが8年以上前に追加. 約8年前に更新.

ステータス:
Fixed(完了)
優先度:
Normal(通常)
担当者:
対象バージョン:
開始日:
2013-06-17
期日:
進捗率:

100%

予定工数:

説明

概要

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 を取得できるようにする。


関連するチケット 1 (0件未完了1件完了)

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

操作

他の形式にエクスポート: Atom PDF