Skip to content

Commit

Permalink
Merge pull request #396 from nanasess/remove-stripslashes
Browse files Browse the repository at this point in the history
SC_Initial::stripslashesDeepGpc() を削除
  • Loading branch information
okazy authored May 28, 2020
2 parents a6de307 + eecf892 commit 8814e0e
Show file tree
Hide file tree
Showing 2 changed files with 36 additions and 69 deletions.
72 changes: 36 additions & 36 deletions ctests/acceptance/admin/total/AdminTotalCept.php
Original file line number Diff line number Diff line change
Expand Up @@ -31,50 +31,50 @@
$I->click('月度で集計する');

$I->expect('グラフの表示を確認する');
$I->seeElement(['css' => '#graph-image > img']);
$I->waitForElement(['css' => '#graph-image > img']);
$I->expect('表の表示を確認する');
$I->seeElement(['id' => 'total-term']);
$I->waitForElement(['id' => 'total-term']);

$I->amGoingTo('売上集計>期間別集計>期間集計');
$I->selectOption('select[name=search_startyear]', date('Y', strtotime('-1 year')));
$I->click('期間で集計する');

$I->expect('グラフの表示を確認する');
$I->seeElement(['css' => '#graph-image > img']);
$I->waitForElement(['css' => '#graph-image > img']);
$I->expect('表の表示を確認する');
$I->seeElement(['id' => 'total-term']);
$I->waitForElement(['id' => 'total-term']);

$I->amGoingTo('売上集計>期間別集計>期間集計>月別');
$I->click('月別');

$I->expect('グラフの表示を確認する');
$I->seeElement(['css' => '#graph-image > img']);
$I->waitForElement(['css' => '#graph-image > img']);
$I->expect('表の表示を確認する');
$I->seeElement(['id' => 'total-term']);
$I->waitForElement(['id' => 'total-term']);

$I->amGoingTo('売上集計>期間別集計>期間集計>年別');
$I->click('年別');

$I->expect('グラフの表示を確認する');
$I->seeElement(['css' => '#graph-image > img']);
$I->waitForElement(['css' => '#graph-image > img']);
$I->expect('表の表示を確認する');
$I->seeElement(['id' => 'total-term']);
$I->waitForElement(['id' => 'total-term']);

$I->amGoingTo('売上集計>期間別集計>期間集計>曜日別');
$I->click('曜日別');

$I->expect('グラフの表示を確認する');
$I->seeElement(['css' => '#graph-image > img']);
$I->waitForElement(['css' => '#graph-image > img']);
$I->expect('表の表示を確認する');
$I->seeElement(['id' => 'total-term']);
$I->waitForElement(['id' => 'total-term']);

$I->amGoingTo('売上集計>期間別集計>期間集計>時間別');
$I->click('時間別');

$I->expect('グラフの表示を確認する');
$I->seeElement(['css' => '#graph-image > img']);
$I->waitForElement(['css' => '#graph-image > img']);
$I->expect('表の表示を確認する');
$I->seeElement(['id' => 'total-term']);
$I->waitForElement(['id' => 'total-term']);

$I->click('CSVダウンロード');
$file = $I->getLastDownloadFile('/^total\d{12}\.csv$/');
Expand All @@ -99,34 +99,34 @@
$I->click('月度で集計する');

$I->expect('グラフの表示を確認する');
$I->seeElement(['css' => '#graph-image > img']);
$I->waitForElement(['css' => '#graph-image > img']);
$I->expect('表の表示を確認する');
$I->seeElement(['id' => 'total-products']);
$I->waitForElement(['id' => 'total-products']);

$I->amGoingTo('売上集計>商品集計>期間集計');
$I->selectOption('select[name=search_startyear]', date('Y', strtotime('-1 year')));
$I->click('期間で集計する');

$I->expect('グラフの表示を確認する');
$I->seeElement(['css' => '#graph-image > img']);
$I->waitForElement(['css' => '#graph-image > img']);
$I->expect('表の表示を確認する');
$I->seeElement(['id' => 'total-products']);
$I->waitForElement(['id' => 'total-products']);

$I->amGoingTo('売上集計>商品集計>期間集計>会員');
$I->click('会員');

$I->expect('グラフの表示を確認する');
$I->seeElement(['css' => '#graph-image > img']);
$I->waitForElement(['css' => '#graph-image > img']);
$I->expect('表の表示を確認する');
$I->seeElement(['id' => 'total-products']);
$I->waitForElement(['id' => 'total-products']);

$I->amGoingTo('売上集計>商品集計>期間集計>非会員');
$I->click('非会員');

$I->expect('グラフの表示を確認する');
$I->seeElement(['css' => '#graph-image > img']);
$I->waitForElement(['css' => '#graph-image > img']);
$I->expect('表の表示を確認する');
$I->seeElement(['id' => 'total-products']);
$I->waitForElement(['id' => 'total-products']);

$I->click('CSVダウンロード');
$file = $I->getLastDownloadFile('/^total\d{12}\.csv$/');
Expand All @@ -151,34 +151,34 @@
$I->click('月度で集計する');

$I->expect('グラフの表示を確認する');
$I->seeElement(['css' => '#graph-image > img']);
$I->waitForElement(['css' => '#graph-image > img']);
$I->expect('表の表示を確認する');
$I->seeElement(['id' => 'total-age']);
$I->waitForElement(['id' => 'total-age']);

$I->amGoingTo('売上集計>年代別集計>期間集計');
$I->selectOption('select[name=search_startyear]', date('Y', strtotime('-1 year')));
$I->click('期間で集計する');

$I->expect('グラフの表示を確認する');
$I->seeElement(['css' => '#graph-image > img']);
$I->waitForElement(['css' => '#graph-image > img']);
$I->expect('表の表示を確認する');
$I->seeElement(['id' => 'total-age']);
$I->waitForElement(['id' => 'total-age']);

$I->amGoingTo('売上集計>年代別集計>期間集計>会員');
$I->click('会員');

$I->expect('グラフの表示を確認する');
$I->seeElement(['css' => '#graph-image > img']);
$I->waitForElement(['css' => '#graph-image > img']);
$I->expect('表の表示を確認する');
$I->seeElement(['id' => 'total-age']);
$I->waitForElement(['id' => 'total-age']);

$I->amGoingTo('売上集計>年代別集計>期間集計>非会員');
$I->click('非会員');

$I->expect('グラフの表示を確認する');
$I->seeElement(['css' => '#graph-image > img']);
$I->waitForElement(['css' => '#graph-image > img']);
$I->expect('表の表示を確認する');
$I->seeElement(['id' => 'total-age']);
$I->waitForElement(['id' => 'total-age']);

$I->click('CSVダウンロード');
$file = $I->getLastDownloadFile('/^total\d{12}\.csv$/');
Expand All @@ -203,18 +203,18 @@
$I->click('月度で集計する');

$I->expect('グラフの表示を確認する');
$I->seeElement(['css' => '#graph-image > img']);
$I->waitForElement(['css' => '#graph-image > img']);
$I->expect('表の表示を確認する');
$I->seeElement(['id' => 'total-job']);
$I->waitForElement(['id' => 'total-job']);

$I->amGoingTo('売上集計>職業別集計>期間集計');
$I->selectOption('select[name=search_startyear]', date('Y', strtotime('-1 year')));
$I->click('期間で集計する');

$I->expect('グラフの表示を確認する');
$I->seeElement(['css' => '#graph-image > img']);
$I->waitForElement(['css' => '#graph-image > img']);
$I->expect('表の表示を確認する');
$I->seeElement(['id' => 'total-job']);
$I->waitForElement(['id' => 'total-job']);

$I->click('CSVダウンロード');
$file = $I->getLastDownloadFile('/^total\d{12}\.csv$/');
Expand All @@ -239,18 +239,18 @@
$I->click('月度で集計する');

$I->expect('グラフの表示を確認する');
$I->seeElement(['css' => '#graph-image > img']);
$I->waitForElement(['css' => '#graph-image > img']);
$I->expect('表の表示を確認する');
$I->seeElement(['id' => 'total-member']);
$I->waitForElement(['id' => 'total-member']);

$I->amGoingTo('売上集計会員別集計>期間集計');
$I->selectOption('select[name=search_startyear]', date('Y', strtotime('-1 year')));
$I->click('期間で集計する');

$I->expect('グラフの表示を確認する');
$I->seeElement(['css' => '#graph-image > img']);
$I->waitForElement(['css' => '#graph-image > img']);
$I->expect('表の表示を確認する');
$I->seeElement(['id' => 'total-member']);
$I->waitForElement(['id' => 'total-member']);

$I->click('CSVダウンロード');
$file = $I->getLastDownloadFile('/^total\d{12}\.csv$/');
Expand Down
33 changes: 0 additions & 33 deletions data/class/SC_Initial.php
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,6 @@ public function init()
$this->complementParameter(); // defineConstants メソッドより後で実行
$this->phpconfigInit(); // defineConstants メソッドより後で実行
$this->createCacheDir(); // defineConstants メソッドより後で実行
$this->stripslashesDeepGpc();
$this->resetSuperglobalsRequest(); // stripslashesDeepGpc メソッドより後で実行
$this->setTimezone(); // 本当はエラーハンドラーより先に読みたい気も
$this->normalizeHostname(); // defineConstants メソッドより後で実行
Expand Down Expand Up @@ -447,38 +446,6 @@ public function defineConstants()
define('UNLIMITED_FLG_LIMITED', '0');
}

/**
* クォートされた文字列のクォート部分を再帰的に取り除く.
*
* {@link http://jp2.php.net/manual/ja/function.get-magic-quotes-gpc.php PHP Manual} の記事を参考に実装。
* $_REQUEST は後続の処理で再構成されるため、本処理では外している。
* この関数は, PHP5以上を対象とし, PHP4 の場合は何もしない.
*
* @return void
*/
public function stripslashesDeepGpc()
{
// Strip magic quotes from request data.
if (get_magic_quotes_gpc()
&& version_compare(PHP_VERSION, '5.0.0', '>=')) {
// Create lamba style unescaping function (for portability)
$quotes_sybase = strtolower(ini_get('magic_quotes_sybase'));
$unescape_function = (empty($quotes_sybase) || $quotes_sybase === 'off') ? 'stripslashes($value)' : 'str_replace("\'\'","\'",$value)';
$stripslashes_deep = create_function('&$value, $fn', '
if (is_string($value)) {
$value = ' . $unescape_function . ';
} elseif (is_array($value)) {
foreach ($value as &$v) $fn($v, $fn);
}
');

// Unescape data
$stripslashes_deep($_POST, $stripslashes_deep);
$stripslashes_deep($_GET, $stripslashes_deep);
$stripslashes_deep($_COOKIE, $stripslashes_deep);
}
}

/**
* スーパーグローバル変数「$_REQUEST」を再セット
*
Expand Down

0 comments on commit 8814e0e

Please sign in to comment.