OpenPNEのスマートフォン対応その2

前回3.4系でスマートフォンでの新規登録が出来ない件で無理矢理対応を行ったが、今回は3.6系での処置を行った。
スマートフォンの対応については3.8系で進められている様ですが、諸事情で3.6系を使わざるを得なかったので、力業で・・・。前回と同様にこの記事を参考にする場合は、筆者は一切の責任を負いませんので、自己責任でお願いいたします。ここではver3.6.3について行っています。

基本的には前回の記事と同様ですが、いくつかさらに変更しなくてはならない点があります。
opAuthRegisterFormMailAddress.class.php
に新しい関数として”validateMemberConfig”があります。これによりモバイルであるかPCであるかをチェックしているようですが、「メールアドレスはモバイルだがブラウザはPC扱い」と言う不整合を正しいとみないといけないので、この関数の判断部分をコメントアウトにしました。
———-
public function validateMemberConfig($validator, $values, $arguments = array())
{
// if (sfConfig::get(‘app_is_mobile’, false))
  (略)
// }
//
return $values;
}
———-
次に、下記でもチェックがありましたので、これもチェック部分を外します。
plugins/opAuthMailAddressPlugin/apps/pc_frontend/modules/opAuthMailAddress/templates/_registerBox.php
———-
<?php //if (!$pcAddressPre): ?>
<?php
//$options = array(
// ‘title’ => __(‘Errors’),
//);
//op_include_box(‘registerError’, __(‘Can access this registration URL with mobile only.’), $options);
?>
<?php //else: ?>
<?php op_include_parts(‘ButtonBox’, ‘opAuthMailAddressPluginRegisterBox’, array(
‘title’ => __(‘Registration with your e-mail address’),
‘body’ => __(‘You can go to the registration page by clicking the button below.’),
‘button’ => __(‘Go to the registration page’),
‘url’ => url_for($sf_user->getRegisterInputAction()),
‘method’ => ‘get’,
)) ?>
<?php //endif; ?>
———-
取り急ぎこれで動くようですが、はたしてこれで良いのだろうか・・・(-_-;

2012/05/21修正
<>が生きていたので、phpソース部分が一部抜けていました。