OpenPNE Issue Tracking System: チケット
http://redmine.openpne.jp/
http://redmine.openpne.jp/favicon.ico
2016-09-29T07:06:00Z
OpenPNE Issue Tracking System
Redmine
OpenPNE 3 - Bug(バグ) #4019 (Invalid(無効)): 「携帯電話のIP帯域をチェックする」を有効にするとリダイレクトループに陥る場合がある
http://redmine.openpne.jp/issues/4019
2016-09-29T07:06:00Z
Youichi Kimura
kim.upsilon@bucyou.net
<a name="Overview-現象"></a>
<h3 >Overview (現象)<a href="#Overview-現象" class="wiki-anchor">¶</a></h3>
<p><a class="changeset" title="redirect from mobile_frontend.php to index.php for smartphone users who have a mobile mail addres..." href="http://redmine.openpne.jp/projects/op3/repository/revisions/fa249a6d29684d37a9a18eee73c869fa51b4b5fa">fa249a6d</a> (<a class="issue tracker-1 status-13 priority-4 priority-default closed" title="Bug(バグ): スマートフォンで携帯メールアドレスを利用することができない (Won't fix(対応せず))" href="http://redmine.openpne.jp/issues/3155">#3155</a>) の修正以降、「携帯電話のIP帯域をチェックする」が有効(デフォルト)の状態で User-Agent を偽装したブラウザから SNS にアクセスした場合に、正しくエラー画面が表示されず同じ URL へのリダイレクトによってループが生じています。</p>
<p>この現象は、古い携帯電話 IP アドレス帯域リストを使用している SNS に正規の携帯電話がアクセスした場合にも同様の現象が起きると考えられます。</p>
<a name="手順"></a>
<h4 >手順<a href="#手順" class="wiki-anchor">¶</a></h4>
<ol>
<li>管理画面で「上級者向け設定」の「携帯関連設定」(/pc_backend.php/advanced/config?category=mobile) から、「携帯電話のIP帯域設定」を「携帯電話のIP帯域をチェックする」に設定する</li>
<li>FireMobileSimurator で端末を DC P903i などに設定する</li>
<li>SNS のログイン画面にアクセスする (ここではURLを <code>http://sns.example.com/</code> とする)</li>
<li><code>/</code> にリダイレクトされ、リダイレクトのループが発生しブラウザのエラー画面が表示される</li>
</ol>
<a name="Causes-原因"></a>
<h3 >Causes (原因)<a href="#Causes-原因" class="wiki-anchor">¶</a></h3>
<p>バグが発生した原因を記入</p>
<a name="Way-to-fix-修正内容"></a>
<h3 >Way to fix (修正内容)<a href="#Way-to-fix-修正内容" class="wiki-anchor">¶</a></h3>
<p>修正内容を記入</p>
OpenPNE 3 - Bug(バグ) #3476 (New(新規)): カスタム CSS を読み込む記述が 2 度書かれている
http://redmine.openpne.jp/issues/3476
2013-11-01T07:09:08Z
Youichi Kimura
kim.upsilon@bucyou.net
<a name="Overview-現象"></a>
<h3 >Overview (現象)<a href="#Overview-現象" class="wiki-anchor">¶</a></h3>
<p>pc_frontend 内の各ページ (スマートフォン版を除く) にてカスタム CSS を読み込む link 要素が下記のように 2 つ書かれている。</p>
<pre><code class="html syntaxhl"><span class="CodeRay"><span class="tag"><head></span>
<span class="tag"><meta</span> <span class="attribute-name">http-equiv</span>=<span class="string"><span class="delimiter">"</span><span class="content">Content-Type</span><span class="delimiter">"</span></span> <span class="attribute-name">content</span>=<span class="string"><span class="delimiter">"</span><span class="content">text/html; charset=utf-8</span><span class="delimiter">"</span></span> <span class="tag">/></span>
<span class="tag"><meta</span> <span class="attribute-name">name</span>=<span class="string"><span class="delimiter">"</span><span class="content">robots</span><span class="delimiter">"</span></span> <span class="attribute-name">content</span>=<span class="string"><span class="delimiter">"</span><span class="content">index, follow</span><span class="delimiter">"</span></span> <span class="tag">/></span>
<span class="tag"><title></span>MySNS<span class="tag"></title></span>
<span class="tag"><link</span> <span class="attribute-name">rel</span>=<span class="string"><span class="delimiter">"</span><span class="content">stylesheet</span><span class="delimiter">"</span></span> <span class="attribute-name">type</span>=<span class="string"><span class="delimiter">"</span><span class="content">text/css</span><span class="delimiter">"</span></span> <span class="attribute-name">media</span>=<span class="string"><span class="delimiter">"</span><span class="content">screen</span><span class="delimiter">"</span></span> <span class="attribute-name">href</span>=<span class="string"><span class="delimiter">"</span><span class="content">/opSkinBasicPlugin/css/main.css</span><span class="delimiter">"</span></span> <span class="tag">/></span>
<span class="tag"><link</span> <span class="attribute-name">rel</span>=<span class="string"><span class="delimiter">"</span><span class="content">stylesheet</span><span class="delimiter">"</span></span> <span class="attribute-name">type</span>=<span class="string"><span class="delimiter">"</span><span class="content">text/css</span><span class="delimiter">"</span></span> <span class="attribute-name">media</span>=<span class="string"><span class="delimiter">"</span><span class="content">screen</span><span class="delimiter">"</span></span> <span class="attribute-name">href</span>=<span class="string"><span class="delimiter">"</span><span class="content">/cache/css/customizing.css</span><span class="delimiter">"</span></span> <span class="tag">/></span>
<span class="tag"><link</span> <span class="attribute-name">rel</span>=<span class="string"><span class="delimiter">"</span><span class="content">stylesheet</span><span class="delimiter">"</span></span> <span class="attribute-name">type</span>=<span class="string"><span class="delimiter">"</span><span class="content">text/css</span><span class="delimiter">"</span></span> <span class="attribute-name">href</span>=<span class="string"><span class="delimiter">"</span><span class="content">/cache/css/customizing</span><span class="delimiter">"</span></span> <span class="tag">/></span>
<span class="tag"><script</span> <span class="attribute-name">type</span>=<span class="string"><span class="delimiter">"</span><span class="content">text/javascript</span><span class="delimiter">"</span></span> <span class="attribute-name">src</span>=<span class="string"><span class="delimiter">"</span><span class="content">/js/util.js</span><span class="delimiter">"</span></span><span class="tag">></span><span class="tag"></script></span>
<span class="tag"></head></span>
</span></code></pre>
<a name="Causes-原因"></a>
<h3 >Causes (原因)<a href="#Causes-原因" class="wiki-anchor">¶</a></h3>
<p><a class="changeset" title="(fixes #3006) fixed not to show apiKey when user is not logged in and to show apiKey when OpenPNE..." href="http://redmine.openpne.jp/projects/op3/repository/revisions/98f097f624d6e0ccfedcdda47e641f29fbb4ce15">98f097f624d6e0ccfedcdda47e641f29fbb4ce15</a> によって追加された customizing_css の記述が原因となっている。</p>
<pre><code class="php syntaxhl"><span class="CodeRay"><span class="inline-delimiter"><?php</span> <span class="keyword">if</span> (<span class="constant">Doctrine</span>::getTable(<span class="string"><span class="delimiter">'</span><span class="content">SnsConfig</span><span class="delimiter">'</span></span>)->get(<span class="string"><span class="delimiter">'</span><span class="content">customizing_css</span><span class="delimiter">'</span></span>)): <span class="inline-delimiter">?></span>
<span class="tag"><link</span> <span class="attribute-name">rel</span>=<span class="string"><span class="delimiter">"</span><span class="content">stylesheet</span><span class="delimiter">"</span></span> <span class="attribute-name">type</span>=<span class="string"><span class="delimiter">"</span><span class="content">text/css</span><span class="delimiter">"</span></span> <span class="attribute-name">href</span>=<span class="string"><span class="delimiter">"</span></span><span class="inline-delimiter"><?php</span> <span class="predefined">echo</span> url_for(<span class="string"><span class="delimiter">'</span><span class="content">@customizing_css</span><span class="delimiter">'</span></span>) <span class="inline-delimiter">?></span><span class="string"><span class="delimiter">"</span></span> <span class="tag">/></span>
<span class="inline-delimiter"><?php</span> <span class="keyword">endif</span>; <span class="inline-delimiter">?></span>
</span></code></pre>
<p>上記のコードは <a class="issue tracker-2 status-8 priority-4 priority-default" title="Enhancement(機能追加・改善): customizing.css がブラウザキャッシュを使うように対処する (Rejected(差し戻し))" href="http://redmine.openpne.jp/issues/1539">#1539</a> で一度削除されている (代わりに <code>use_stylesheet('/cache/css/customizing.css')</code> を追加している) もので、恐らく誤って古い _layout.php から記述をコピーしてしまったものと見られる。</p>
<a name="Way-to-fix-修正内容"></a>
<h3 >Way to fix (修正内容)<a href="#Way-to-fix-修正内容" class="wiki-anchor">¶</a></h3>
<p>修正内容を記入</p>
opOpenSocialPlugin - Enhancement(機能追加・改善) #2276 (Fixed(完了)): [etc] Public Repository のブランチを整理
http://redmine.openpne.jp/issues/2276
2011-07-15T10:54:14Z
Youichi Kimura
kim.upsilon@bucyou.net
<a name="Overview-概要"></a>
<h3 >Overview (概要)<a href="#Overview-概要" class="wiki-anchor">¶</a></h3>
<p>opOpenSocialPlugin の Public Repository (<a href="https://github.com/openpne-ospt/opOpenSocialPlugin" class="external">openpne-ospt/opOpenSocialPlugin</a>) にあるブランチを整理する。</p>
<a name="Spec-仕様"></a>
<h3 >Spec (仕様)<a href="#Spec-仕様" class="wiki-anchor">¶</a></h3>
<p>現時点ではmasterブランチとstable用ブランチ (version-1.2.xなど) を残してそれ以外のブランチを削除する予定となっている。</p>
<p>開発MLのスレッドは下記の通り:</p>
<blockquote>
<p>[oposp-dev:81] Public Repository の不要ブランチの削除</p>
<p><a class="external" href="https://groups.google.com/group/op-opensocialplugin-dev/browse_thread/thread/3d8b1b2e4fbdf709">https://groups.google.com/group/op-opensocialplugin-dev/browse_thread/thread/3d8b1b2e4fbdf709</a></p>
<pre>
■ 必要
master
version-0.8.x - stable用ブランチです (現在、脆弱性対応リリース以外は未使用)
version-0.9.x - stable用ブランチです
version-1.0.x - stable用ブランチです
version-1.2.x - stable用ブランチです
■ 整理
changerouting - ルーティングに関わる改善。現状チケットがなかったりします。
■ 不要
t1934 - kawahara個人トピックブランチ。チケットクローズ済
invalidate - invalidate実装。既にリリース済み機能のため特に必要ないトピックブランチ
encoding2 - モバイル出力の文字エンコードについての修正。チケットクローズ済
update-shindig1_1-beta5 - Shindig 1.1 beta5 にアップデート時に利用。チケットクローズ済。
update-shindig2_0_1 - Shindig2.0.1 にアップデート時に利用。チケットクローズ済み。
以下緊急リリース時に利用。既にリリース済・タグがあるため不要。
release-1.3.1.1
release-1.2.2.1
release-1.0.4.2
release-0.9.9.2
---
不要となっているものは、ツッコミがなければ今週末に kawaharaが削除します。
changerouting に関しては、 僕が fork したブランチにとりあえず残っているので
public repository からは削除します。
</pre>
</blockquote>
opOpenSocialPlugin - Backport(バックポート) #2249 (Fixed(完了)): [api] 取得したアクティビティのリンク先URLが streamUrl に格納...
http://redmine.openpne.jp/issues/2249
2011-06-28T07:27:22Z
Youichi Kimura
kim.upsilon@bucyou.net
<a name="Overview-現象"></a>
<h3 >Overview (現象)<a href="#Overview-現象" class="wiki-anchor">¶</a></h3>
<p>下記のように activity_data.uri にURIが設定されたアクティビティをAPIで取得した場合に、URLが <code>url</code> フィールドではなく <code>streamUrl</code> フィールドに格納されてしまう。</p>
<pre>
sqlite> select * from activity_data;
id|member_id|in_reply_to_activity_id|body|uri|public_flag|is_pc|is_mobile|source|source_uri|foreign_table|foreign_id|template|template_param|created_at|updated_at
1|1||test|http://sns.localhost/|1|1|1|||||||2011-06-02 21:29:57|2011-06-02 21:29:57
</pre>
<p>APIで取得されるアクティビティ:<br />(※: URLの値が壊れている問題については <a class="issue tracker-1 status-5 priority-4 priority-default closed" title="Bug(バグ): [api] 取得したアクティビティのフィールドに含まれるURLがおかしい (Fixed(完了))" href="http://redmine.openpne.jp/issues/2231">#2231</a> で取り扱います)</p>
<pre><code class="javascript syntaxhl"><span class="CodeRay">{
<span class="key"><span class="delimiter">"</span><span class="content">id</span><span class="delimiter">"</span></span>: <span class="string"><span class="delimiter">"</span><span class="content">1</span><span class="delimiter">"</span></span>,
<span class="key"><span class="delimiter">"</span><span class="content">userId</span><span class="delimiter">"</span></span>: <span class="string"><span class="delimiter">"</span><span class="content">1</span><span class="delimiter">"</span></span>,
<span class="key"><span class="delimiter">"</span><span class="content">title</span><span class="delimiter">"</span></span>: <span class="string"><span class="delimiter">"</span><span class="content">test</span><span class="delimiter">"</span></span>,
<span class="key"><span class="delimiter">"</span><span class="content">postedTime</span><span class="delimiter">"</span></span>: <span class="string"><span class="delimiter">"</span><span class="content">2011-06-02T21:29:57+09:00</span><span class="delimiter">"</span></span>,
<span class="key"><span class="delimiter">"</span><span class="content">streamUrl</span><span class="delimiter">"</span></span>: <span class="string"><span class="delimiter">"</span><span class="content">http:</span><span class="content">\/</span><span class="content">\/</span><span class="content">sns.localhost</span><span class="content">\/</span><span class="content">sqlite</span><span class="content">\/</span><span class="content">http%3A</span><span class="content">\/</span><span class="delimiter">"</span></span>
}
</span></code></pre>
<a name="Causes-原因"></a>
<h3 >Causes (原因)<a href="#Causes-原因" class="wiki-anchor">¶</a></h3>
<p>opJsonDbOpensocialService::getActivities() メソッド内で、下記のように activity_data.uri の値を streamUrl へ代入している箇所がある。</p>
<pre><code class="php syntaxhl"><span class="CodeRay"><span class="keyword">if</span> (<span class="local-variable">$activity</span>->getUri())
{
<span class="local-variable">$a</span>[<span class="string"><span class="delimiter">'</span><span class="content">streamUrl</span><span class="delimiter">'</span></span>] = app_url_for(<span class="string"><span class="delimiter">'</span><span class="content">pc_frontend</span><span class="delimiter">'</span></span>, <span class="local-variable">$activity</span>->getUri(), <span class="predefined-constant">true</span>);
}
</span></code></pre>
<a name="Way-to-fix-修正内容"></a>
<h3 >Way to fix (修正内容)<a href="#Way-to-fix-修正内容" class="wiki-anchor">¶</a></h3>
<p>activity_data.uri の値の代入先を streamUrl から url に変更する。</p>
<pre><code class="diff syntaxhl"><span class="CodeRay"><span class="line comment">diff --git a/lib/util/opJsonDbOpensocialService.class.php b/lib/util/opJsonDbOpensocialService.class.php</span>
<span class="line comment">index 398ff69..0f0d61f 100644</span>
<span class="line head"><span class="head">--- </span><span class="filename">a/lib/util/opJsonDbOpensocialService.class.php</span></span>
<span class="line head"><span class="head">+++ </span><span class="filename">b/lib/util/opJsonDbOpensocialService.class.php</span></span>
<span class="change"><span class="change">@@</span> -171,7 +171,7 <span class="change">@@</span></span> <span class="keyword">class</span> <span class="class">opJsonDbOpensocialService</span> <span class="keyword">implements</span> <span class="constant">ActivityService</span>, <span class="constant">PersonService</span>, <span class="constant">AppDa</span>
<span class="keyword">if</span> (<span class="local-variable">$activity</span>->getUri())
{
<span class="line delete"><span class="delete">-</span> <span class="local-variable">$a</span>[<span class="string"><span class="delimiter">'</span></span><span class="eyecatcher"><span class="string"><span class="content">streamU</span></span></span><span class="string"><span class="content">rl</span><span class="delimiter">'</span></span>] = app_url_for(<span class="string"><span class="delimiter">'</span><span class="content">pc_frontend</span><span class="delimiter">'</span></span>, <span class="local-variable">$activity</span>->getUri(), <span class="predefined-constant">true</span>);</span>
<span class="line insert"><span class="insert">+</span> <span class="local-variable">$a</span>[<span class="string"><span class="delimiter">'</span></span><span class="eyecatcher"><span class="string"><span class="content">u</span></span></span><span class="string"><span class="content">rl</span><span class="delimiter">'</span></span>] = app_url_for(<span class="string"><span class="delimiter">'</span><span class="content">pc_frontend</span><span class="delimiter">'</span></span>, <span class="local-variable">$activity</span>->getUri(), <span class="predefined-constant">true</span>);</span>
}
<span class="keyword">if</span> (<span class="local-variable">$activity</span>->getForeignTable() == <span class="constant">Doctrine</span>::getTable(<span class="string"><span class="delimiter">'</span><span class="content">MemberApplication</span><span class="delimiter">'</span></span>)->getTableName())
{
</span></code></pre>
opOpenSocialPlugin - Backport(バックポート) #2248 (Fixed(完了)): [api] 取得したアクティビティのリンク先URLが streamUrl に格納...
http://redmine.openpne.jp/issues/2248
2011-06-28T07:27:13Z
Youichi Kimura
kim.upsilon@bucyou.net
<a name="Overview-現象"></a>
<h3 >Overview (現象)<a href="#Overview-現象" class="wiki-anchor">¶</a></h3>
<p>下記のように activity_data.uri にURIが設定されたアクティビティをAPIで取得した場合に、URLが <code>url</code> フィールドではなく <code>streamUrl</code> フィールドに格納されてしまう。</p>
<pre>
sqlite> select * from activity_data;
id|member_id|in_reply_to_activity_id|body|uri|public_flag|is_pc|is_mobile|source|source_uri|foreign_table|foreign_id|template|template_param|created_at|updated_at
1|1||test|http://sns.localhost/|1|1|1|||||||2011-06-02 21:29:57|2011-06-02 21:29:57
</pre>
<p>APIで取得されるアクティビティ:<br />(※: URLの値が壊れている問題については <a class="issue tracker-1 status-5 priority-4 priority-default closed" title="Bug(バグ): [api] 取得したアクティビティのフィールドに含まれるURLがおかしい (Fixed(完了))" href="http://redmine.openpne.jp/issues/2231">#2231</a> で取り扱います)</p>
<pre><code class="javascript syntaxhl"><span class="CodeRay">{
<span class="key"><span class="delimiter">"</span><span class="content">id</span><span class="delimiter">"</span></span>: <span class="string"><span class="delimiter">"</span><span class="content">1</span><span class="delimiter">"</span></span>,
<span class="key"><span class="delimiter">"</span><span class="content">userId</span><span class="delimiter">"</span></span>: <span class="string"><span class="delimiter">"</span><span class="content">1</span><span class="delimiter">"</span></span>,
<span class="key"><span class="delimiter">"</span><span class="content">title</span><span class="delimiter">"</span></span>: <span class="string"><span class="delimiter">"</span><span class="content">test</span><span class="delimiter">"</span></span>,
<span class="key"><span class="delimiter">"</span><span class="content">postedTime</span><span class="delimiter">"</span></span>: <span class="string"><span class="delimiter">"</span><span class="content">2011-06-02T21:29:57+09:00</span><span class="delimiter">"</span></span>,
<span class="key"><span class="delimiter">"</span><span class="content">streamUrl</span><span class="delimiter">"</span></span>: <span class="string"><span class="delimiter">"</span><span class="content">http:</span><span class="content">\/</span><span class="content">\/</span><span class="content">sns.localhost</span><span class="content">\/</span><span class="content">sqlite</span><span class="content">\/</span><span class="content">http%3A</span><span class="content">\/</span><span class="delimiter">"</span></span>
}
</span></code></pre>
<a name="Causes-原因"></a>
<h3 >Causes (原因)<a href="#Causes-原因" class="wiki-anchor">¶</a></h3>
<p>opJsonDbOpensocialService::getActivities() メソッド内で、下記のように activity_data.uri の値を streamUrl へ代入している箇所がある。</p>
<pre><code class="php syntaxhl"><span class="CodeRay"><span class="keyword">if</span> (<span class="local-variable">$activity</span>->getUri())
{
<span class="local-variable">$a</span>[<span class="string"><span class="delimiter">'</span><span class="content">streamUrl</span><span class="delimiter">'</span></span>] = app_url_for(<span class="string"><span class="delimiter">'</span><span class="content">pc_frontend</span><span class="delimiter">'</span></span>, <span class="local-variable">$activity</span>->getUri(), <span class="predefined-constant">true</span>);
}
</span></code></pre>
<a name="Way-to-fix-修正内容"></a>
<h3 >Way to fix (修正内容)<a href="#Way-to-fix-修正内容" class="wiki-anchor">¶</a></h3>
<p>activity_data.uri の値の代入先を streamUrl から url に変更する。</p>
<pre><code class="diff syntaxhl"><span class="CodeRay"><span class="line comment">diff --git a/lib/util/opJsonDbOpensocialService.class.php b/lib/util/opJsonDbOpensocialService.class.php</span>
<span class="line comment">index 398ff69..0f0d61f 100644</span>
<span class="line head"><span class="head">--- </span><span class="filename">a/lib/util/opJsonDbOpensocialService.class.php</span></span>
<span class="line head"><span class="head">+++ </span><span class="filename">b/lib/util/opJsonDbOpensocialService.class.php</span></span>
<span class="change"><span class="change">@@</span> -171,7 +171,7 <span class="change">@@</span></span> <span class="keyword">class</span> <span class="class">opJsonDbOpensocialService</span> <span class="keyword">implements</span> <span class="constant">ActivityService</span>, <span class="constant">PersonService</span>, <span class="constant">AppDa</span>
<span class="keyword">if</span> (<span class="local-variable">$activity</span>->getUri())
{
<span class="line delete"><span class="delete">-</span> <span class="local-variable">$a</span>[<span class="string"><span class="delimiter">'</span></span><span class="eyecatcher"><span class="string"><span class="content">streamU</span></span></span><span class="string"><span class="content">rl</span><span class="delimiter">'</span></span>] = app_url_for(<span class="string"><span class="delimiter">'</span><span class="content">pc_frontend</span><span class="delimiter">'</span></span>, <span class="local-variable">$activity</span>->getUri(), <span class="predefined-constant">true</span>);</span>
<span class="line insert"><span class="insert">+</span> <span class="local-variable">$a</span>[<span class="string"><span class="delimiter">'</span></span><span class="eyecatcher"><span class="string"><span class="content">u</span></span></span><span class="string"><span class="content">rl</span><span class="delimiter">'</span></span>] = app_url_for(<span class="string"><span class="delimiter">'</span><span class="content">pc_frontend</span><span class="delimiter">'</span></span>, <span class="local-variable">$activity</span>->getUri(), <span class="predefined-constant">true</span>);</span>
}
<span class="keyword">if</span> (<span class="local-variable">$activity</span>->getForeignTable() == <span class="constant">Doctrine</span>::getTable(<span class="string"><span class="delimiter">'</span><span class="content">MemberApplication</span><span class="delimiter">'</span></span>)->getTableName())
{
</span></code></pre>
opOpenSocialPlugin - Backport(バックポート) #2246 (Fixed(完了)): [api] 取得したアクティビティのフィールドに含まれるURLがおかしい
http://redmine.openpne.jp/issues/2246
2011-06-28T07:25:49Z
Youichi Kimura
kim.upsilon@bucyou.net
<a name="Overview-現象"></a>
<h3 >Overview (現象)<a href="#Overview-現象" class="wiki-anchor">¶</a></h3>
<p>下記のように activity_data.uri や activity_image.uri にabsolute URIが含まれる場合に、RESTful API や osapi などでアクティビティを取得した際にURLがおかしな値になる。</p>
<pre>
sqlite> select * from activity_data;
id|member_id|in_reply_to_activity_id|body|uri|public_flag|is_pc|is_mobile|source|source_uri|foreign_table|foreign_id|template|template_param|created_at|updated_at
1|1||test|http://sns.localhost/|1|1|1|||||||2011-06-02 21:29:57|2011-06-02 21:29:57
sqlite> select * from activity_image;
id|activity_data_id|mime_type|uri|file_id|created_at|updated_at
1|1|image/png|http://www.example.com/image.png||2011-06-02 21:29:58|2011-06-02 21:29:58
</pre>
<p>APIで取得されるアクティビティ:</p>
<pre><code class="javascript syntaxhl"><span class="CodeRay">{
<span class="key"><span class="delimiter">"</span><span class="content">id</span><span class="delimiter">"</span></span>: <span class="string"><span class="delimiter">"</span><span class="content">1</span><span class="delimiter">"</span></span>,
<span class="key"><span class="delimiter">"</span><span class="content">userId</span><span class="delimiter">"</span></span>: <span class="string"><span class="delimiter">"</span><span class="content">1</span><span class="delimiter">"</span></span>,
<span class="key"><span class="delimiter">"</span><span class="content">title</span><span class="delimiter">"</span></span>: <span class="string"><span class="delimiter">"</span><span class="content">test</span><span class="delimiter">"</span></span>,
<span class="key"><span class="delimiter">"</span><span class="content">postedTime</span><span class="delimiter">"</span></span>: <span class="string"><span class="delimiter">"</span><span class="content">2011-06-02T21:29:57+09:00</span><span class="delimiter">"</span></span>,
<span class="key"><span class="delimiter">"</span><span class="content">streamUrl</span><span class="delimiter">"</span></span>: <span class="string"><span class="delimiter">"</span><span class="content">http:</span><span class="content">\/</span><span class="content">\/</span><span class="content">sns.localhost</span><span class="content">\/</span><span class="content">sqlite</span><span class="content">\/</span><span class="content">http%3A</span><span class="content">\/</span><span class="delimiter">"</span></span>,
<span class="key"><span class="delimiter">"</span><span class="content">mediaItems</span><span class="delimiter">"</span></span>: [
{
<span class="key"><span class="delimiter">"</span><span class="content">url</span><span class="delimiter">"</span></span>: <span class="string"><span class="delimiter">"</span><span class="content">http:</span><span class="content">\/</span><span class="content">\/</span><span class="content">sns.localhost</span><span class="content">\/</span><span class="content">sqlite</span><span class="content">\/</span><span class="content">http%3A</span><span class="content">\/</span><span class="delimiter">"</span></span>,
<span class="key"><span class="delimiter">"</span><span class="content">type</span><span class="delimiter">"</span></span>: <span class="string"><span class="delimiter">"</span><span class="content">image</span><span class="content">\/</span><span class="content">png</span><span class="delimiter">"</span></span>
}
]
}
</span></code></pre>
<a name="Causes-原因"></a>
<h3 >Causes (原因)<a href="#Causes-原因" class="wiki-anchor">¶</a></h3>
<p>lib/util/opJsonDbOpensocialService.class.php にて、各 URL のフィールドに値を設定している箇所でURLがabsoluteであるかないかに関わらず app_url_for を通しているため間違った値に変換されている。</p>
<pre><code class="php syntaxhl"><span class="CodeRay"><span class="keyword">if</span> (<span class="local-variable">$activity</span>->getUri())
{
<span class="local-variable">$a</span>[<span class="string"><span class="delimiter">'</span><span class="content">streamUrl</span><span class="delimiter">'</span></span>] = app_url_for(<span class="string"><span class="delimiter">'</span><span class="content">pc_frontend</span><span class="delimiter">'</span></span>, <span class="local-variable">$activity</span>->getUri(), <span class="predefined-constant">true</span>);
}
</span></code></pre>
<pre><code class="php syntaxhl"><span class="CodeRay"><span class="keyword">if</span> (<span class="local-variable">$image</span>->getFileId())
{
<span class="comment">// (snip)</span>
}
<span class="keyword">else</span>
{
<span class="local-variable">$mediaItem</span>[<span class="string"><span class="delimiter">'</span><span class="content">url</span><span class="delimiter">'</span></span>] = app_url_for(<span class="string"><span class="delimiter">'</span><span class="content">pc_frontend</span><span class="delimiter">'</span></span>, <span class="local-variable">$image</span>->getUri(), <span class="predefined-constant">true</span>);
<span class="local-variable">$mediaItem</span>[<span class="string"><span class="delimiter">'</span><span class="content">type</span><span class="delimiter">'</span></span>] = <span class="local-variable">$image</span>->getMimeType();
}
</span></code></pre>
<a name="Way-to-fix-修正内容"></a>
<h3 >Way to fix (修正内容)<a href="#Way-to-fix-修正内容" class="wiki-anchor">¶</a></h3>
<p>下記のいずれかの方法でこの問題を解決することが可能である。</p>
<ul>
<li>absolute URIの場合には app_url_for を使わないようにopOpenSocialPlugin側で修正する</li>
<li>app_url_for にabsolute URIが渡された場合は何もせずにreturnするようにCore側で修正する</li>
</ul>
opOpenSocialPlugin - Backport(バックポート) #2217 (Fixed(完了)): [pc] Fix two js errors in application/li...
http://redmine.openpne.jp/issues/2217
2011-06-11T08:48:55Z
Youichi Kimura
kim.upsilon@bucyou.net
<a name="Overview"></a>
<h3 >Overview<a href="#Overview" class="wiki-anchor">¶</a></h3>
<p>Fix two js errors in application/list screen when the user doesn't have any application.</p>
<p>(所有アプリが 0 件の時に アプリ一覧画面で JavaScript エラー)</p>
<pre>IframeModalBox is not defined
http://op3.happyturn/application/list
Line 120
element is null
http://op3.happyturn/sfProtoculousPlugin/js/dragdrop.js
Line 614</pre>
opOpenSocialPlugin - Backport(バックポート) #2216 (Fixed(完了)): [pc] Fix two js errors in application/li...
http://redmine.openpne.jp/issues/2216
2011-06-11T08:48:37Z
Youichi Kimura
kim.upsilon@bucyou.net
<a name="Overview"></a>
<h3 >Overview<a href="#Overview" class="wiki-anchor">¶</a></h3>
<p>Fix two js errors in application/list screen when the user doesn't have any application.</p>
<p>(所有アプリが 0 件の時に アプリ一覧画面で JavaScript エラー)</p>
<pre>IframeModalBox is not defined
http://op3.happyturn/application/list
Line 120
element is null
http://op3.happyturn/sfProtoculousPlugin/js/dragdrop.js
Line 614</pre>
opOpenSocialPlugin - Backport(バックポート) #2215 (Fixed(完了)): [pc] Fix two js errors in application/li...
http://redmine.openpne.jp/issues/2215
2011-06-11T08:47:57Z
Youichi Kimura
kim.upsilon@bucyou.net
<a name="Overview"></a>
<h3 >Overview<a href="#Overview" class="wiki-anchor">¶</a></h3>
<p>Fix two js errors in application/list screen when the user doesn't have any application.</p>
<p>(所有アプリが 0 件の時に アプリ一覧画面で JavaScript エラー)</p>
<pre>IframeModalBox is not defined
http://op3.happyturn/application/list
Line 120
element is null
http://op3.happyturn/sfProtoculousPlugin/js/dragdrop.js
Line 614</pre>
opOpenSocialPlugin - Backport(バックポート) #2214 (Fixed(完了)): [pc] Fix a js error in application/invit...
http://redmine.openpne.jp/issues/2214
2011-06-11T08:46:10Z
Youichi Kimura
kim.upsilon@bucyou.net
<a name="Overview"></a>
<h3 >Overview<a href="#Overview" class="wiki-anchor">¶</a></h3>
<p>Fix a js error in application/invite when the user doesn't have any friend.<br />(フレンドが0人の時に招待画面で JavaScript エラー)</p>
<p>Error is likely following.</p>
<pre>$("invite_button") is null
http://op3.happyturn/application/invite/6
Line 89</pre>
<a name="Environment"></a>
<h3 >Environment<a href="#Environment" class="wiki-anchor">¶</a></h3>
<p>opOpenSocialPlugin 1.0 〜</p>
opOpenSocialPlugin - Backport(バックポート) #2213 (Fixed(完了)): [pc] Fix a js error in application/invit...
http://redmine.openpne.jp/issues/2213
2011-06-11T08:45:33Z
Youichi Kimura
kim.upsilon@bucyou.net
<a name="Overview"></a>
<h3 >Overview<a href="#Overview" class="wiki-anchor">¶</a></h3>
<p>Fix a js error in application/invite when the user doesn't have any friend.<br />(フレンドが0人の時に招待画面で JavaScript エラー)</p>
<p>Error is likely following.</p>
<pre>$("invite_button") is null
http://op3.happyturn/application/invite/6
Line 89</pre>
<a name="Environment"></a>
<h3 >Environment<a href="#Environment" class="wiki-anchor">¶</a></h3>
<p>opOpenSocialPlugin 1.0 〜</p>
opOpenSocialPlugin - Backport(バックポート) #2212 (Fixed(完了)): [etc] NOTICE ファイルの更新
http://redmine.openpne.jp/issues/2212
2011-06-11T08:05:27Z
Youichi Kimura
kim.upsilon@bucyou.net
<p>NOTICEファイルについて</p>
<ul>
<li>Control.Tabsのライセンス情報の記載</li>
<li>Copyrightの年の更新</li>
</ul>
<p>の修正を行う。</p>
opOpenSocialPlugin - Backport(バックポート) #2211 (Fixed(完了)): [etc] NOTICE ファイルの更新
http://redmine.openpne.jp/issues/2211
2011-06-11T08:05:01Z
Youichi Kimura
kim.upsilon@bucyou.net
<p>NOTICEファイルについて</p>
<ul>
<li>Control.Tabsのライセンス情報の記載</li>
<li>Copyrightの年の更新</li>
</ul>
<p>の修正を行う。</p>
opOpenSocialPlugin - Bug(バグ) #2131 (Fixed(完了)): [pc] gadget doesn't drive because it occur error ...
http://redmine.openpne.jp/issues/2131
2011-05-23T14:43:12Z
Youichi Kimura
kim.upsilon@bucyou.net
<a name="Overview"></a>
<h3 >Overview<a href="#Overview" class="wiki-anchor">¶</a></h3>
<p>gadget doesn't drive because it occur error that "html4" is not defined (1.2.x only)</p>
opOpenSocialPlugin - Backport(バックポート) #2126 (Won't fix(対応せず)): [pc] modalboxを2回目以降に表示すると、読み込みが完了す...
http://redmine.openpne.jp/issues/2126
2011-05-20T16:22:56Z
Youichi Kimura
kim.upsilon@bucyou.net
<a name="Overview-概要"></a>
<h3 >Overview (概要)<a href="#Overview-概要" class="wiki-anchor">¶</a></h3>
<p>requestShareApp等でモーダルボックスを表示させる際に前回表示時の内容が消去されずに残ってしまうため、2回目以降表示するとき読み込みが完了するまでの間に以前の内容が表示されたままとなってしまう。</p>
<a name="Spec-仕様"></a>
<h3 >Spec (仕様)<a href="#Spec-仕様" class="wiki-anchor">¶</a></h3>
<p>モーダルボックスを閉じるときにiframeの内容を消去する。</p>