Project

General

Profile

Bug(バグ) #3936

SNSメンバーによるアプリ追加を許可しても「新しいアプリをインストールする」のリンクが表示されない

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

Status:
Pending Review(レビュー待ち)
Priority:
Normal(通常)
Target version:
Start date:
2016-04-27
Due date:
% Done:

50%

3.6 で発生するか:
Yes (はい)
[QA]バグ通知済:
No
3.8 で発生するか:
Unknown (未調査)

Description

Overview (現象)

管理画面から opOpenSocialPlugin の「アプリ設定」(/pc_backend.php/opOpenSocialPlugin) にある「SNSメンバーのアプリ追加を許可」を「許可」または「SNS管理者の許可が必要」にセットすると、管理画面だけでなく SNS メンバーが OpenSocial アプリをインストールすることができるようになる。

しかし、「アプリを新しく追加する」(/application/install) のページへ移動するためのリンクが、すでにアプリを追加しているメンバーにしか表示されないため、SNS メンバーが新たにアプリをインストールしたい場合には既にインストールされている他の適当なアプリを追加する必要がある。

アプリが追加されていないメンバーの表示:

アプリが追加されているメンバーの表示:

Causes (原因)

source:apps/pc_frontend/modules/application/templates/listSuccess.php@6d81bffd#L31

<?php if ($isOwner && isset($memberApplications) && count($memberApplications)) : ?>
<?php echo sortable_element('order', array(
  'url'  => '@application_sort',
  'tag'  => 'div',
  'only' => 'sortable',
  'with' => 'Sortable.serialize("order")+"&'.urlencode($form->getCSRFFieldName()).'='.urlencode($form->getCSRFToken()).'"'
)); ?>
<div class="moreInfo">
<ul class="moreInfo">
<li>
<?php echo link_to(__('App Gallery'), '@application_gallery') ?>
<?php if ($isOwner): ?>
<?php if ($isInstallApp): ?>
<li><?php echo link_to(__('Install new App'), '@application_install') ?></li>
<?php endif; ?>
<?php if ($isInstalledApp): ?>
<li><?php echo link_to(__('Apps Installed by You'), '@application_installed_list') ?></li>
<?php endif; ?>
<?php endif; ?>
</li>
</ul>
</div>
<?php endif; ?>

上記のコードのうち sortable_element はメンバーが持っているアプリケーションを並べ替えるために必要な部分となっているが、div.moreInfo に表示される項目についてはメンバーがアプリケーションを持っているか否かは関係なく $isOwner が true であれば表示すべき部分であるため、この if の条件が適切でないことが原因であるといえる。

Way to fix (修正内容)

メンバーがアプリケーションを持っているか否かに関わらず $isOwner が true であれば div.moreInfo を表示する

スクリーンショット_2016-04-27_13.05.21.png View (91.7 KB) Youichi Kimura, 2016-04-27 13:06

スクリーンショット_2016-04-27_13.07.36.png View (53.7 KB) Youichi Kimura, 2016-04-27 13:08

History

#1 Updated by Youichi Kimura over 3 years ago

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

下記 Pull Request にて修正しました
https://github.com/openpne-ospt/opOpenSocialPlugin/pull/25

Also available in: Atom PDF