OpenPNE Issue Tracking System: チケット
http://redmine.openpne.jp/
http://redmine.openpne.jp/favicon.ico
2017-03-15T05:49:17Z
OpenPNE Issue Tracking System
Redmine
OpenPNE 3 - Task(タスク) #4172 (Fixed(完了)): 新masterブランチへの移行
http://redmine.openpne.jp/issues/4172
2017-03-15T05:49:17Z
Youichi Kimura
kim.upsilon@bucyou.net
<p>現行の master ブランチを廃止し、OpenPNE 3.8 系ベースの新しい master ブランチに移行します。</p>
<a name="現状の問題点"></a>
<h4 >現状の問題点<a href="#現状の問題点" class="wiki-anchor">¶</a></h4>
<ul>
<li>PHP7 への移行 (<a class="issue tracker-5 status-2 priority-4 priority-default parent" title="Task(タスク): PHP7対応のための修正を行う (Accepted(着手))" href="http://redmine.openpne.jp/issues/4112">#4112</a>) を進めるためには、フレームワークの変更やそれに伴う最低動作要件 (PHPバージョン) の変更など、最小限に留めるにせよ互換性を損なう変更が不可欠であるため安定版ブランチで実施することはできない</li>
<li>OpenPNE 開発版のブランチである master は事実上メンテナンスされていない
<ul>
<li>バグチケットを含む一切の Pull Request は master および各安定版ブランチに対して作成されるが、テストが行われマージまで実施されるのは安定版ブランチのみである</li>
</ul>
</li>
<li>現在の master ブランチは stable-3.8.x よりも古い状態となっており、バグ修正等を現行の安定版と同程度にするためには放置された多くの Pull Request を処理する必要があり、膨大な手間が掛かると予想される</li>
</ul>
<a name="解決策"></a>
<h4 >解決策<a href="#解決策" class="wiki-anchor">¶</a></h4>
<ul>
<li>現行の master ブランチを廃止し、old-master ブランチに改称する
<ul>
<li>master ブランチに対して作成されていた Pull Request は、old-master ブランチに対する Pull Request として残す (クローズするかどうかは要検討)</li>
</ul>
</li>
<li>最新の安定版バージョンをベースとして、新たな master ブランチを作成する
<ul>
<li>予定されているのは OpenPNE 3.8.23 ベース</li>
</ul>
</li>
<li>これまで master ブランチにのみ作成されていた機能追加等の Pull Request については、必要に応じて個別に新 master ブランチに対する Pull Request を作成する</li>
</ul>
<a name="手順"></a>
<h4 >手順<a href="#手順" class="wiki-anchor">¶</a></h4>
<ol>
<li><code>git clone git@github.com:openpne/OpenPNE3.git openpne3</code></li>
<li><code>cd openpne3</code></li>
<li><code>git branch -M master old-master</code></li>
<li><code>git branch master OpenPNE-3.8.23</code></li>
<li><code>git push origin old-master master --force</code></li>
</ol>
<a name="移行後の作業"></a>
<h4 >移行後の作業<a href="#移行後の作業" class="wiki-anchor">¶</a></h4>
<ul>
<li>master ブランチ宛に作成されている全ての Pull Request のベースブランチを old-master に変更する</li>
<li>Redmine のチケットでの「対象バージョン」の扱い
<ul>
<li>old-master ブランチ (旧 master ブランチ) に紐付いたままのチケットは <a class="version" href="http://redmine.openpne.jp/versions/269">OpenPNE 3.9.0-old</a> に、新しい master ブランチで進行するチケットは <a class="version" href="http://redmine.openpne.jp/versions/369">OpenPNE 3.9.0</a> に設定されます。</li>
</ul></li>
</ul>
OpenPNE 3 - Backport(バックポート) #4148 (Fixed(完了)): メールアドレス変更を行うと member_config に name='captcha' のレコー...
http://redmine.openpne.jp/issues/4148
2017-02-15T11:05:33Z
Youichi Kimura
kim.upsilon@bucyou.net
<a name="Overview-現象"></a>
<h3 >Overview (現象)<a href="#Overview-現象" class="wiki-anchor">¶</a></h3>
<p>メールアドレス変更を行うと、member_config に下記のような name = 'captcha' のレコードが追加される。</p>
<pre>
> SELECT * FROM member_config WHERE name = 'captcha' \G
*************************** 1. row ***************************
id: 145
member_id: 2
name: captcha
value: Array
value_datetime: NULL
name_value_hash: 7fee6c903f71b6b14b0b6b6636ab3f5b
created_at: 2016-08-31 15:30:37
updated_at: 2016-08-31 15:30:37
</pre>
<a name="Causes-原因"></a>
<h3 >Causes (原因)<a href="#Causes-原因" class="wiki-anchor">¶</a></h3>
<p><a class="source" href="http://redmine.openpne.jp/projects/op3/repository/revisions/43190aa1/entry/lib/form/MemberConfigForm/MemberConfigPcAddressForm.class.php#L28">source:lib/form/MemberConfigForm/MemberConfigPcAddressForm.class.php@43190aa1#L28</a>:<br /><pre><code class="php syntaxhl"><span class="CodeRay"> <span class="keyword">public</span> <span class="keyword">function</span> <span class="function">__construct</span>(<span class="constant">Member</span> <span class="local-variable">$member</span> = <span class="predefined-constant">null</span>, <span class="local-variable">$options</span> = <span class="predefined">array</span>(), <span class="local-variable">$CSRFSecret</span> = <span class="predefined-constant">null</span>)
{
<span class="predefined-constant">parent</span>::__construct(<span class="local-variable">$member</span>, <span class="local-variable">$options</span>, <span class="local-variable">$CSRFSecret</span>);
<span class="keyword">if</span> (sfConfig::get(<span class="string"><span class="delimiter">'</span><span class="content">op_is_use_captcha</span><span class="delimiter">'</span></span>, <span class="predefined-constant">false</span>))
{
<span class="local-variable">$this</span>->embedForm(<span class="string"><span class="delimiter">'</span><span class="content">captcha</span><span class="delimiter">'</span></span>, <span class="keyword">new</span> opCaptchaForm());
}
}
</span></code></pre></p>
<p>MemberConfigPcAddressForm, MemberConfigMobileAddressForm では embedForm を使用して opCaptchaForm を追加している。一方で、saveConfig メソッドでは追加された captcha フィールドをそのまま member_config テーブルに格納しようとするため上記のような現象が発生する。</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 - Task(タスク) #4112 (Accepted(着手)): PHP7対応のための修正を行う
http://redmine.openpne.jp/issues/4112
2017-01-06T06:02:42Z
Youichi Kimura
kim.upsilon@bucyou.net
<p>2017/01 時点の OpenPNE3 は、全ての安定版および master ブランチにおいて PHP7 では動作しない状態となっている (<a class="issue tracker-1 status-13 priority-4 priority-default closed" title="Bug(バグ): PHP7の環境で動かない? (Won't fix(対応せず))" href="http://redmine.openpne.jp/issues/3879">#3879</a>)</p>
<a name="調査-完了"></a>
<h4 >調査 (完了)<a href="#調査-完了" class="wiki-anchor">¶</a></h4>
<p>PHP7 への移行にあたって以下の調査を行う。</p>
<ul>
<li>OpenPNE3 が PHP7 で動かない原因</li>
<li>OpenPNE3 を PHP7 で動かすためにはどのような修正が必要か (機能を削る必要があるか)</li>
</ul>
<a name="修正"></a>
<h4 >修正<a href="#修正" class="wiki-anchor">¶</a></h4>
<ul>
<li>最低動作環境を PHP 5.4 以上とする</li>
<li><a href="https://pear.php.net/package/PEAR/download/1.10.3" class="external">PEAR 1.10.3</a> へのアップデート</li>
<li><a href="https://github.com/LExpress/symfony1" class="external">LExpress/symfony1</a> への移行</li>
<li>Net_UserAgent_Mobile をアップデート
<ul>
<li>ただしパッケージとしては未リリースのため GitHub から直接ソースコードを取得する必要がある</li>
<li><a class="external" href="https://github.com/iteman/net-useragent-mobile">https://github.com/iteman/net-useragent-mobile</a></li>
</ul></li>
</ul>
OpenPNE 3 - Task(タスク) #4033 (Accepted(着手)): MySQLのStrict Modeを有効にした場合に生じる問題を調査
http://redmine.openpne.jp/issues/4033
2016-10-31T05:41:59Z
Youichi Kimura
kim.upsilon@bucyou.net
<p>MySQL の sql_mode を厳格にした場合に生じる問題を調査する。</p>
<p>具体的には MySQL 5.7 から sql_mode のデフォルトが <code>ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION</code> となるため、この設定で問題が生じる箇所を探す。</p>
<p>過去には <a class="issue tracker-1 status-13 priority-4 priority-default closed" title="Bug(バグ): MySQLのStrict Modeが有効な状態でメンバーの新規登録を行うとエラーが発生する (Won't fix(対応せず))" href="http://redmine.openpne.jp/issues/3543">#3543</a> で Strict Mode における問題を修正したことがあった。</p>
<a name="使用する環境"></a>
<h4 >使用する環境<a href="#使用する環境" class="wiki-anchor">¶</a></h4>
<p>MySQL 5.7.15:</p>
<pre>
mysql> SELECT VERSION() \G
*************************** 1. row ***************************
VERSION(): 5.7.15-1
1 row in set (0.00 sec)
mysql> SELECT @@sql_mode \G
*************************** 1. row ***************************
@@sql_mode: ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
1 row in set (0.00 sec)
</pre>
<p>PHP 5.6.26:</p>
<pre>
$ /usr/bin/php -v
PHP 5.6.26-1 (cli)
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies
</pre>
OpenPNE 3 - Task(タスク) #4028 (Won't fix(対応せず)): jQuery / jQuery UI のアップグレードによる影響を調査
http://redmine.openpne.jp/issues/4028
2016-10-26T08:48:59Z
Youichi Kimura
kim.upsilon@bucyou.net
<p>jQuery および jQuery UI を最新版にアップグレードする際の影響を調査する。</p>
<a name="調査対象"></a>
<h4 >調査対象<a href="#調査対象" class="wiki-anchor">¶</a></h4>
<ul>
<li>OpenPNE
<ul>
<li>安定版ブランチは対象に含める?</li>
</ul>
</li>
<li>OpenPNE プラグイン (要検討)
<ul>
<li>opCommunityTopicPlugin 1.1.x</li>
<li>opDiaryPlugin 1.5.x</li>
<li>opLikePlugin</li>
<li>opMessagePlugin 2.0.x</li>
<li>opSkinThemePlugin</li>
<li>opTimelinePlugin</li>
<li>opUploadFilePlugin</li>
</ul></li>
</ul>
<a name="現状"></a>
<h4 >現状<a href="#現状" class="wiki-anchor">¶</a></h4>
<p>下記のバージョンが OpenPNE に同梱されている:</p>
<ul>
<li>jQuery v1.7.1 (2011/11/21)</li>
<li>jQuery UI v1.8.16 (2011/08/18)</li>
</ul>
OpenPNE 3 - Backport(バックポート) #4018 (Fixed(完了)): メールアドレス設定から意図的に他のメンバーと同じメールアドレスを設定できる
http://redmine.openpne.jp/issues/4018
2016-09-29T06:04:03Z
Youichi Kimura
kim.upsilon@bucyou.net
<a name="Overview-概要"></a>
<h3 >Overview (概要)<a href="#Overview-概要" class="wiki-anchor">¶</a></h3>
<p>再現手順:</p>
<ol>
<li>メンバーA でログインし、PCメールアドレス設定 (/member/config?category=pcAddress) を開く</li>
<li>PCメールアドレスに <code>hoge@example.com</code> を入力して「送信」ボタンをクリック
<ul>
<li><code>hoge@example.com</code> 宛に確認メールが届くが、この時点ではメールに記載されている URL を開かない</li>
</ul>
</li>
<li>メンバーB でログインし、PCメールアドレス設定 (/member/config?category=pcAddress) を開く</li>
<li>PCメールアドレスに <code>hoge@example.com</code> を入力して「送信」ボタンをクリック</li>
<li>メンバーA によって送られた「メールアドレス変更ページのお知らせ」のメールに記載されている URL を開く</li>
<li>メンバーA のパスワードを入力して「送信」ボタンをクリック</li>
<li>メンバーB によって送られた「メールアドレス変更ページのお知らせ」のメールに記載されている URL を開く</li>
<li>メンバーB のパスワードを入力して「送信」ボタンをクリック</li>
<li>メンバーA, メンバーB のPCメールアドレスが同じ <code>hoge@example.com</code> に設定された状態になる</li>
</ol>
<a name="Causes-原因"></a>
<h3 >Causes (原因)<a href="#Causes-原因" class="wiki-anchor">¶</a></h3>
<p><code>lib/config/config/member_config.yml</code> では pc_address および mobile_address に対して <code>IsUnique: true</code> が指定されており、実際に「PCメールアドレス設定」のフォームでは <code>MemberConfigForm::isUnique()</code> によって重複チェックが行われている。<br />しかし、メールアドレス変更については、変更後のメールアドレス宛に <code>/member/configComplete?token=***</code> のURLをメールで送った上で、確認が完了するまでは pc_address を変更しないという例外的な対応を取っている。そのため、MemberConfigForm のバリデーション時には重複しなかったが /member/configComplete の時点で重複するような場合には対処できていなかった。</p>
<a name="Way-to-fix-修正内容"></a>
<h3 >Way to fix (修正内容)<a href="#Way-to-fix-修正内容" class="wiki-anchor">¶</a></h3>
<p><code>opMemberActions::executeConfigComplete()</code> において、pc_address_pre または mobile_address_pre を pc_address または mobile_address に変更する直前にも重複チェックを行う。これにより、上記の再現手順でいう手順 8 の段階でエラーが発生するようになる。</p>
<p>なお、手順 4 の段階で pc_address_pre が重複するためこの時点でエラーを発生させるといった修正も考えられるが、これをエラーとしてしまうと悪意のあるメンバーが任意のメールアドレスを確認が未完了のまま放置することによって他のメンバーがそのメールアドレスを使用できない状態に出来てしまうため、pc_address_pre に対する重複チェックは行わない。</p>
OpenPNE 3 - Backport(バックポート) #4015 (Fixed(完了)): メールアドレス変更処理が完了しても、仮登録用のデータ (***_pre, ***_token) が...
http://redmine.openpne.jp/issues/4015
2016-09-29T06:02:24Z
Youichi Kimura
kim.upsilon@bucyou.net
<a name="現象"></a>
<h3 >現象<a href="#現象" class="wiki-anchor">¶</a></h3>
<p>メールアドレス変更処理が完了しても、仮登録用のデータ <code>(***_pre, ***_token)</code> がMemberConfig に残ってしまい、削除されない</p>
<a name="原因"></a>
<h3 >原因<a href="#原因" class="wiki-anchor">¶</a></h3>
<p>opDoctrineRecord::save() で正常に保存されても返り値がないため、<br />opMemberAction::executeConfigComplete() の以下の if 文内の処理が実施されない。</p>
<pre>
262 if ($config->save())
263 {
264 $pre->delete();
265 $token = Doctrine::getTable('MemberConfig')->retrieveByNameAndMemberId($type.'_token', $memberId);
266 $token->delete();
267 }
</pre>
<a name="修正内容"></a>
<h3 >修正内容<a href="#修正内容" class="wiki-anchor">¶</a></h3>
OpenPNE 3 - Backport(バックポート) #3989 (Fixed(完了)): OpenPNEが設置されているURLをJavaScriptコードから取得できるようにする
http://redmine.openpne.jp/issues/3989
2016-08-05T06:19:19Z
Youichi Kimura
kim.upsilon@bucyou.net
<a name="概要"></a>
<h3 >概要<a href="#概要" class="wiki-anchor">¶</a></h3>
<p>OpenPNE3.8.x からは openpne.apiBase の値を取得することで JavaScript コードから api.php へのパスを把握することができるが、SNS が設置されている URL (pc_frontend のルート URL) は取得できる状態にはなっていない。OpenPNE が <code>http://example.com/sns/</code> のようにサブディレクトリ以下に設置されている場合もあるため、ルート URL を <code>/</code> に決め打ちすることはできない。</p>
<p>現状、opTimelinePlugin のように JavaScript で動的にページを更新するプラグインでは <code>url_for('@homepage')</code> を代わりとして多用しており、適切な用法でないだけでなく url_for を使用するために PHP コードに依存してしまうという問題が存在する。</p>
<p>参考: <a class="external" href="https://github.com/tejimaya/opTimelinePlugin/blob/master/apps/pc_frontend/modules/timeline/templates/_timelineTemplate.php#L23">https://github.com/tejimaya/opTimelinePlugin/blob/master/apps/pc_frontend/modules/timeline/templates/_timelineTemplate.php#L23</a></p>
<a name="仕様"></a>
<h3 >仕様<a href="#仕様" class="wiki-anchor">¶</a></h3>
<p><a class="source" href="http://redmine.openpne.jp/projects/op3/repository/entry/apps/pc_frontend/templates/_layout.php">source:apps/pc_frontend/templates/_layout.php</a> の</p>
<pre><code class="php syntaxhl"><span class="CodeRay"><span class="local-variable">$jsonData</span> = <span class="predefined">array</span>(
<span class="string"><span class="delimiter">'</span><span class="content">apiKey</span><span class="delimiter">'</span></span> => <span class="local-variable">$sf_user</span>->getMemberApiKey(),
<span class="string"><span class="delimiter">'</span><span class="content">apiBase</span><span class="delimiter">'</span></span> => app_url_for(<span class="string"><span class="delimiter">'</span><span class="content">api</span><span class="delimiter">'</span></span>, <span class="string"><span class="delimiter">'</span><span class="content">homepage</span><span class="delimiter">'</span></span>),
);
<span class="predefined">echo</span> javascript_tag(<span class="string"><span class="delimiter">'</span><span class="content">
var openpne = </span><span class="delimiter">'</span></span>.json_encode(<span class="local-variable">$jsonData</span>).<span class="string"><span class="delimiter">'</span><span class="content">;
</span><span class="delimiter">'</span></span>);
</span></code></pre>
<p>に baseUrl の項目を追加し、JavaScript コードから <code>openpne.baseUrl</code> で OpenPNE が設置されている URL を取得できるようにする。</p>
OpenPNE 3 - Backport(バックポート) #3968 (Rejected(差し戻し)): 壊れたテストコードを削除する
http://redmine.openpne.jp/issues/3968
2016-07-15T10:11:27Z
Youichi Kimura
kim.upsilon@bucyou.net
<a name="概要"></a>
<h3 >概要<a href="#概要" class="wiki-anchor">¶</a></h3>
<p>現在 OpenPNE3 のテストコードは十分にメンテナンスされておらず、壊れた状態のテストケースが多数存在する。<br />このような状態は CI などにおけるテストコードの自動実行を妨げるだけでなく、退行バグによって既存のテストケースでエラーが発生しても他の大量のエラーに埋もれて発見できないなど、テストコードを十分に活用することができない。<br />過去にこのような壊れたテストコードを全て修正する試みがあった (<a class="issue tracker-5 status-12 priority-4 priority-default closed parent" title="Task(タスク): OpenPNE の既存のテストコードが正常に動作するように修正を行う (Invalid(無効))" href="http://redmine.openpne.jp/issues/3403">#3403</a>) が、エラーとなるテストケースがあまりに多いため「成功か否かに関わらず全てのテストケースが実行される」(Fatal Error による異常終了がない) 状態まで修正するに留まっている。<br />当チケットでは、壊れたテストコードをすべて削除し <code>./symfony test:all</code> によって実行されるすべてのテストコードが正常に実行される状態にする。</p>
OpenPNE 3 - Task(タスク) #3403 (Invalid(無効)): OpenPNE の既存のテストコードが正常に動作するように修正を行う
http://redmine.openpne.jp/issues/3403
2013-09-19T09:01:21Z
Youichi Kimura
kim.upsilon@bucyou.net
<a name="現象"></a>
<h3 >現象<a href="#現象" class="wiki-anchor">¶</a></h3>
<p>OpenPNE に同梱されているユニットテスト・機能テストのコードの幾つかが正常に動作しない。特に機能テストについては、最近追加された <code>activityPostWithImageTest.php</code> や <code>memberSearchActionTest.php</code> を除いてほぼ全て動作しない状態になっている。</p>
<p>このチケットでは既存のテストコードが動作しない原因を調査し、原因ごとに子チケットを作成していく。問題の修正についてはそれぞれの子チケットで取り扱う。全ての問題が解決して <code>./symfony test:all</code> が成功した時点でこのタスクは完了とする。</p>
OpenPNE 3 - Task(タスク) #2946 (New(新規)): スマートフォンUIのユニットテストを作成する
http://redmine.openpne.jp/issues/2946
2012-04-12T05:59:02Z
Youichi Kimura
kim.upsilon@bucyou.net
<p>スマートフォンUIに対するユニットテストをQUnitで作成する。</p>
OpenPNE 3 - Task(タスク) #2908 (Fixed(完了)): JSON APIのユニットテストを作成する(正常系)
http://redmine.openpne.jp/issues/2908
2012-03-27T10:03:46Z
Youichi Kimura
kim.upsilon@bucyou.net
<a name="概要"></a>
<h3 >概要<a href="#概要" class="wiki-anchor">¶</a></h3>
<p>OpenPNE3コアに含まれるJSON APIに対するユニットテストを作成する。</p>
OpenPNE 3 - Bug(バグ) #2882 (Won't fix(対応せず)): opValidatorDate で「年」に 0 を入力した場合に空値として認識される
http://redmine.openpne.jp/issues/2882
2012-03-13T09:13:24Z
Youichi Kimura
kim.upsilon@bucyou.net
<a name="現象"></a>
<h3 >現象<a href="#現象" class="wiki-anchor">¶</a></h3>
<p>opValidatorDate を使用しているフォーム(コミュニティイベントの作成画面など)で、日付を入力する項目の「年」に <code>0</code> を入力すると空値として扱われる。</p>
<ul>
<li>コミュニティイベントの作成画面の場合、「募集期日」の「年」に <code>0</code> と入力された状態(「月」「日」は入力しない)で送信しても「正しくありません。」と表示されずにイベントの作成が完了する。</li>
</ul>
<a name="原因"></a>
<h3 >原因<a href="#原因" class="wiki-anchor">¶</a></h3>
<p>lib/validator/opValidatorDate.class.php の 100 行目付近</p>
<pre><code class="php syntaxhl"><span class="CodeRay"> <span class="comment">// if one date value is empty, all others must be empty too</span>
<span class="local-variable">$empties</span> =
(!<span class="predefined">isset</span>(<span class="local-variable">$value</span>[<span class="string"><span class="delimiter">'</span><span class="content">year</span><span class="delimiter">'</span></span>]) || !<span class="local-variable">$value</span>[<span class="string"><span class="delimiter">'</span><span class="content">year</span><span class="delimiter">'</span></span>] ? <span class="integer">1</span> : <span class="integer">0</span>) +
(!<span class="predefined">isset</span>(<span class="local-variable">$value</span>[<span class="string"><span class="delimiter">'</span><span class="content">month</span><span class="delimiter">'</span></span>]) || !<span class="local-variable">$value</span>[<span class="string"><span class="delimiter">'</span><span class="content">month</span><span class="delimiter">'</span></span>] ? <span class="integer">1</span> : <span class="integer">0</span>) +
(!<span class="predefined">isset</span>(<span class="local-variable">$value</span>[<span class="string"><span class="delimiter">'</span><span class="content">day</span><span class="delimiter">'</span></span>]) || !<span class="local-variable">$value</span>[<span class="string"><span class="delimiter">'</span><span class="content">day</span><span class="delimiter">'</span></span>] ? <span class="integer">1</span> : <span class="integer">0</span>);
</span></code></pre>
<p>この判定で、「年」(<code>$value['year']</code>) に <code>"0"</code> が入力されると <code>!isset($value['year']) || !$value['year']</code> が <code>true</code> となり空値と判定されることが原因。</p>
<p>参照: <a href="http://php.net/manual/ja/types.comparisons.php" class="external">PHP: PHP 型の比較表 - Manual</a></p>
<a name="修正内容"></a>
<h3 >修正内容<a href="#修正内容" class="wiki-anchor">¶</a></h3>
<p>修正内容を記入</p>
OpenPNE 3 - Bug(バグ) #1839 (Won't fix(対応せず)): [PATCH] 一部のファイルに不要な実行権限が設定されている
http://redmine.openpne.jp/issues/1839
2010-12-09T07:37:47Z
Youichi Kimura
kim.upsilon@bucyou.net
<a name="現象"></a>
<h3 >現象<a href="#現象" class="wiki-anchor">¶</a></h3>
<p>直接実行できないphpファイルや画像ファイルなどに実行可能権限が設定されています。</p>
<a name="修正内容"></a>
<h3 >修正内容<a href="#修正内容" class="wiki-anchor">¶</a></h3>
<p>ソースツリー内にELFファイルは存在しないため、ファイルの一行目がシバン行 (先頭が「#!」で開始) であるか否かで実行権限を設定します</p>
<pre>
find * -type f ! -regex '.*\.git.*' -print0 | xargs -0r -Ifile sh -c 'head -n1 file | grep -q "^#!" && chmod +x file || chmod -x file'
</pre>
opCommunityTopicPlugin - Enhancement(機能追加・改善) #1526 (Rejected(差し戻し)): イベントの参加者を編集できるようにしてほしい
http://redmine.openpne.jp/issues/1526
2010-08-21T15:25:10Z
Youichi Kimura
kim.upsilon@bucyou.net
<a name="概要"></a>
<h3 >概要<a href="#概要" class="wiki-anchor">¶</a></h3>
<p>普段あまり書き込みをしないメンバーがイベントに参加する際に参加者一覧と実際の参加者が一致しなくなることがあるため、イベントの作成者が参加者を編集(追加・削除)できるようにしてほしいです。</p>