Project

General

Profile

Bug(バグ) #3964

スマートフォン・PC間の表示切り替えに関する問題

Added by kaoru n about 8 years ago. Updated over 1 year ago.

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

100%

3.6 で発生するか:
Unknown (未調査)
3.8 で発生するか:
Yes (はい)

Description

http://sns.openpne.jp/communityTopic/539 より

【質問テンプレート】
現在、スマートフォンメインで新たにOpenPNEによるSNS構築を考え、OpenPNEのインストールをしています。

その後、OpenPNEの動作を確認していますが、スマートフォン⇔PC間の表示変更で気になる箇所があります。

①ログイン画面でスマートフォン版にしてもスマートフォン版にならない。
②ログイン後TOPがスマートフォン版なのにログイン画面やメンバー検索がPC版になることがある。
③メンバー検索でPC版→スマートフォン版にするとログイン画面もスマートフォン版になる。
④メンバー検索でスマートフォン版→PC版にするとスマートフォン版TOPに遷移してしまう。
⑤その後メンバー検索に行くとPC版が表示される。メンバー検索以外に行くとスマートフォン版のままになっている。
⑥ログアウトした後のスマートフォン版TOPから新規登録を選択するとPC版新規登録が表示される。

最初こちらの設定の問題かと思ったのですが、OpenPNEデモSNS
http://demo.openpne.jp/
でも動作を試したところ、②~⑥に関しては再現してしまっています。

一方、①に関してはOpenPNEのバグとして2013年に修正が試みられていますが、なぜか2年以上前の時点で更新が止まっている状態のようです。
https://redmine.openpne.jp/issues/3485

上記URLでの修正該当ファイルである
apps/pc_frontend/templates/_layout.php
を修正すれば問題なくログイン画面でスマートフォン版にできることを確認しています。
OpenPNEデモSNSはデザインがデフォルトから変更されているため、こちらの問題点をクリアしているのではと考えられます。

ですので、現状の問題としては、
A.デフォルトのデザインを使用した場合、ログイン画面でPC版からスマートフォン版にしようとしてもスマートフォン版にならない。
B.メンバー検索などのページでPC版に変更しようとすると、なぜかスマートフォン版TOPへ遷移する。その後メンバー検索などのページに戻るとPC版になっているが、他のページはスマートフォン版のまま。
C.ログイン画面はスマートフォン対応しているものの、新規登録関連がスマートフォン対応しておらず、PC版が表示される。
の三点が挙げられます。

「C.」は今後のバージョンで新機能として盛り込むべき事項ですが、「A.」「B.」に関してはOpenPNEのバグであると考えられます。

動作の確認とOpenPNEのソースの調査をお願いいたします。

・OpenPNEのバージョン
OpenPNE 3.8.20

・運用環境
Amazon EC2

・使用ソフトのバージョン
PHPバージョン:5.6.22
MySQLバージョン:5.1


Subtasks

Backport(バックポート) #4576: スマートフォン・PC間の表示切り替えに関する問題Fixed(完了)kaoru n

Backport(バックポート) #4577: スマートフォン・PC間の表示切り替えに関する問題Fixed(完了)kaoru n

Associated revisions

Revision 3326df24 (diff)
Added by kaoru n over 1 year ago

(fixed #3964) スマートフォン表示とPC表示の切り替えが正常に行えない問題を修正

Revision 40c07297
Added by kaoru n over 1 year ago

Merge pull request #679 from nishizoe/t-3964

(fixed #3964) スマートフォン表示とPC表示の切り替えが正常に行えない問題を修正

History

#1 Updated by kaoru n over 7 years ago

  • Target version changed from OpenPNE 3.9.0-old to OpenPNE 3.9.0

#2 Updated by kaoru n over 4 years ago

  • Target version changed from OpenPNE 3.9.0 to OpenPNE 3.10.x

#3 Updated by kaoru n over 1 year ago

A.デフォルトのデザインを使用した場合、ログイン画面でPC版からスマートフォン版にしようとしてもスマートフォン版にならない。

A.は、スマートフォンでアクセスした場合、初手でPC画面は表示されないので、「スマートフォンでアクセスした場合のログイン画面での動作」を確認しました。

確認環境A
・Debian 10.12
・PHP 7.4.28 (cli) (built: Feb 17 2022 16:16:01) ( NTS )
・MariaDB 10.3.34-MariaDB-0+deb10u1 Debian 10
・OpenPNE-3.11.x (master ブランチ)
#3485 は適用済み
・opSkinThemePlugin 1.0.16

確認環境B
・Debian 10.11
・PHP 5.6.40-57+0~20211119.60+debian10~1.gbp8a9bd1 (cli)
・MariaDB 10.3.31-MariaDB-0+deb10u1 Debian 10
・OpenPNE-3.8.x (stable-3.8.x ブランチ)
#3485 は適用済み
・opSkinThemePlugin 1.0.16

(1)
・スマートフォン
・未ログイン
・URL: https://example.com/

「PC表示に切り替え」⇔「スマートフォン表示に切り替え」双方ともに正常に切替可能

(2)
・スマートフォン
・ログイン後、即ログアウト
・URL: https://example.com/member/login

「PC表示に切り替え」を行うと正常にPC表示に切り替わり、URL: https://example.com/ に遷移する。

(3)
・スマートフォン
・ログイン後「PC表示に切り替え」を行った後ログアウト
・URL: https://example.com/member/login

「スマートフォン表示に切り替え」を行っても反応しない = スマートフォン表示にならない

※ 確認環境A, B どちらでも上記の結果
※ opSkinBasicPlugin / opSkinThemePlugin どちらでも上記の結果

#4 Updated by kaoru n over 1 year ago

問題の再現確認

B.メンバー検索などのページでPC版に変更しようとすると、なぜかスマートフォン版TOPへ遷移する。その後メンバー検索などのページに戻るとPC版になっているが、他のページはスマートフォン版のまま。

確認環境A
・Debian 10.12
・PHP 7.4.28 (cli) (built: Feb 17 2022 16:16:01) ( NTS )
・MariaDB 10.3.34-MariaDB-0+deb10u1 Debian 10
・OpenPNE-3.11.x (master ブランチ)
#3485 は適用済み
・opSkinThemePlugin 1.0.16

確認環境B
・Debian 10.11
・PHP 5.6.40-57+0~20211119.60+debian10~1.gbp8a9bd1 (cli)
・MariaDB 10.3.31-MariaDB-0+deb10u1 Debian 10
・OpenPNE-3.8.x (stable-3.8.x ブランチ)
#3485 は適用済み
・opSkinThemePlugin 1.0.16

・スマートフォン
・ログイン後「メンバー検索」に遷移

「PC表示に切り替え」を行うとホーム画面に遷移してしまう
その他メニューを押下してもPC表示のまま

その後メンバー検索などのページに戻るとPC版になっているが、他のページはスマートフォン版のまま。

は再現できず

※ 確認環境A, B どちらでも上記の結果
※ opSkinBasicPlugin / opSkinThemePlugin どちらでも上記の結果

#5 Updated by kaoru n over 1 year ago

問題点

#3964-3 #3964-4 より問題点まとめ

1. スマートフォンにてログイン後「PC表示に切り替え」を行った後ログアウトした際のログイン画面にて「スマートフォン表示に切り替え」を行ってもスマートフォン表示にならない

2. スマートフォンにてログイン後「メンバー検索」に遷移し「PC表示に切り替え」を行うと、ホーム画面に遷移してしまう

このチケットでは 1 と 2 を修正します。

#6 Updated by kaoru n over 1 year ago

  • Assignee set to kaoru n

#7 Updated by kaoru n over 1 year ago

問題の原因

1. スマートフォンにてログイン後「PC表示に切り替え」を行った後ログアウトした際のログイン画面にて「スマートフォン表示に切り替え」を行ってもスマートフォン表示にならない

https://github.com/openpne/OpenPNE3/blob/master/web/js/util.js.src#L214-L218
にて、cookie を削除するために name のみ指定して cookie を設定しているが、
設定されている cookie は、path に openpne.baseUrl が設定されているため削除できていない。

  switchSmt: function() {
    // delete cookie.
    opCookie.set(this.key);
    location.reload();
  },

2. スマートフォンにてログイン後「メンバー検索」に遷移し「PC表示に切り替え」を行うと、ホーム画面に遷移してしまう

https://github.com/openpne/OpenPNE3/blob/master/web/js/util.js.src#L209-L212
にて smtSwitch.elem に設定されている href に遷移するように設定されているが、

  switchPc: function() {
    smtSwitch.updateExpires(true);
    location.href = smtSwitch.elem.getAttribute('href');
  },

smtSwitch.elem とは id=smt-switch のエレメントであり、
https://github.com/openpne/OpenPNE3/blob/master/apps/pc_frontend/modules/default/templates/_smtMenu.php#L12
にて、常に @homepage が設定されている。

  <li><a href="<?php echo url_for('@homepage') ?>" id="smt-switch"><?php echo __('View this page on regular style') ?></a></li>

#8 Updated by kaoru n over 1 year ago

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

#9 Updated by kaoru n over 1 year ago

  • Target version changed from OpenPNE 3.10.x to OpenPNE 3.11.x

#10 Updated by Rimpei Ogawa over 1 year ago

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

#11 Updated by isao sano over 1 year ago

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

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

#12 Updated by kaoru n over 1 year ago

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

マージしました

Also available in: Atom PDF