diff options
| -rw-r--r-- | build/build.xml | 9 | ||||
| -rw-r--r-- | build/sami-all.conf.php | 30 | ||||
| -rw-r--r-- | build/sami-checkout.conf.php (renamed from build/sami.conf.php) | 15 | ||||
| -rw-r--r-- | phpBB/assets/javascript/plupload.js | 8 | ||||
| -rw-r--r-- | phpBB/includes/ucp/ucp_login_link.php | 2 | ||||
| -rw-r--r-- | phpBB/phpbb/auth/provider/db.php | 6 | ||||
| -rw-r--r-- | phpBB/phpbb/profilefields/type/type_base.php | 14 | ||||
| -rw-r--r-- | phpBB/phpbb/profilefields/type/type_bool.php | 2 | ||||
| -rw-r--r-- | tests/auth/provider_db_test.php | 9 | ||||
| -rw-r--r-- | tests/bootstrap.php | 5 | ||||
| -rw-r--r-- | tests/composer.lock | 2 | ||||
| -rw-r--r-- | tests/test_framework/phpbb_ui_test_case.php | 16 | ||||
| -rwxr-xr-x | travis/check-sami-parse-errors.sh | 2 | ||||
| -rw-r--r-- | travis/sami.conf.php | 19 |
14 files changed, 91 insertions, 48 deletions
diff --git a/build/build.xml b/build/build.xml index 124e7dc074..c97d200fbb 100644 --- a/build/build.xml +++ b/build/build.xml @@ -117,9 +117,16 @@ </if> </target> + <!-- Builds docs for current branch into build/api/output/master --> <target name="docs"> <exec dir="." - command="phpBB/vendor/bin/sami.php update build/sami.conf.php" + command="phpBB/vendor/bin/sami.php update build/sami-checkout.conf.php" + passthru="true" /> + </target> + <!-- Builds docs for multiple branches/tags into build/api/output/$branch --> + <target name="docs-all"> + <exec dir="." + command="phpBB/vendor/bin/sami.php update build/sami-all.conf.php" passthru="true" /> </target> diff --git a/build/sami-all.conf.php b/build/sami-all.conf.php new file mode 100644 index 0000000000..68350fee8f --- /dev/null +++ b/build/sami-all.conf.php @@ -0,0 +1,30 @@ +<?php +/** +* +* This file is part of the phpBB Forum Software package. +* +* @copyright (c) phpBB Limited <https://www.phpbb.com> +* @license GNU General Public License, version 2 (GPL-2.0) +* +* For full copyright and license information, please see +* the docs/CREDITS.txt file. +* +*/ + +require __DIR__ . '/sami-checkout.conf.php'; + +$config['versions'] = Sami\Version\GitVersionCollection::create(__DIR__ . '/../') + /* + This would be nice, but currently causes various problems that need + debugging. + ->addFromTags('release-3.0.*') + ->add('develop-olympus', '3.0-next (olympus)') + ->addFromTags('release-3.1.*') + ->add('develop-ascraeus', '3.1-next (ascraeus)') + ->add('develop') + */ + ->add('develop-olympus') + ->add('develop-ascraeus') +; + +return new Sami\Sami($iterator, $config); diff --git a/build/sami.conf.php b/build/sami-checkout.conf.php index 78d532631c..abbf1d257e 100644 --- a/build/sami.conf.php +++ b/build/sami-checkout.conf.php @@ -31,23 +31,8 @@ $iterator = Symfony\Component\Finder\Finder::create() ->notPath('data') ; -$versions = Sami\Version\GitVersionCollection::create(__DIR__ . '/../') - /* - This would be nice, but currently causes various problems that need - debugging. - ->addFromTags('release-3.0.*') - ->add('develop-olympus', '3.0-next (olympus)') - ->addFromTags('release-3.1.*') - ->add('develop-ascraeus', '3.1-next (ascraeus)') - ->add('develop') - */ - ->add('develop-olympus') - ->add('develop-ascraeus') -; - $config = array( 'theme' => 'enhanced', - 'versions' => $versions, 'title' => 'phpBB API Documentation', 'build_dir' => __DIR__.'/api/output/%version%', 'cache_dir' => __DIR__.'/api/cache/%version%', diff --git a/phpBB/assets/javascript/plupload.js b/phpBB/assets/javascript/plupload.js index 5445e83e15..a58c71e64d 100644 --- a/phpBB/assets/javascript/plupload.js +++ b/phpBB/assets/javascript/plupload.js @@ -34,6 +34,14 @@ phpbb.plupload.initialize = function() { if (uploader.features.dragdrop) { $('#drag-n-drop-message').show(); } + + // Ensure "Add files" button position is correctly calculated. + if ($('#attach-panel-multi').is(':visible')) { + uploader.refresh(); + } + $('[data-subpanel="attach-panel"]').one('click', function() { + uploader.refresh(); + }); }); }; diff --git a/phpBB/includes/ucp/ucp_login_link.php b/phpBB/includes/ucp/ucp_login_link.php index 27d59c56b7..bfe4804286 100644 --- a/phpBB/includes/ucp/ucp_login_link.php +++ b/phpBB/includes/ucp/ucp_login_link.php @@ -75,7 +75,7 @@ class ucp_login_link { if ($request->is_set_post('login')) { - $login_username = $request->variable('login_username', '', false, \phpbb\request\request_interface::POST); + $login_username = $request->variable('login_username', '', true, \phpbb\request\request_interface::POST); $login_password = $request->untrimmed_variable('login_password', '', true, \phpbb\request\request_interface::POST); $login_result = $auth_provider->login($login_username, $login_password); diff --git a/phpBB/phpbb/auth/provider/db.php b/phpBB/phpbb/auth/provider/db.php index 722eeffa9a..ba67c11e75 100644 --- a/phpBB/phpbb/auth/provider/db.php +++ b/phpBB/phpbb/auth/provider/db.php @@ -87,7 +87,7 @@ class db extends \phpbb\auth\provider\base $username_clean = utf8_clean_string($username); - $sql = 'SELECT user_id, username, user_password, user_passchg, user_email, user_type, user_login_attempts + $sql = 'SELECT * FROM ' . USERS_TABLE . " WHERE username_clean = '" . $this->db->sql_escape($username_clean) . "'"; $result = $this->db->sql_query($sql); @@ -123,7 +123,7 @@ class db extends \phpbb\auth\provider\base 'username_clean' => $username_clean, ); $sql = 'INSERT INTO ' . LOGIN_ATTEMPT_TABLE . $this->db->sql_build_array('INSERT', $attempt_data); - $result = $this->db->sql_query($sql); + $this->db->sql_query($sql); } else { @@ -175,7 +175,7 @@ class db extends \phpbb\auth\provider\base } // Check password ... - if ($this->passwords_manager->check($password, $row['user_password'])) + if ($this->passwords_manager->check($password, $row['user_password'], $row)) { // Check for old password hash... if ($this->passwords_manager->convert_flag || strlen($row['user_password']) == 32) diff --git a/phpBB/phpbb/profilefields/type/type_base.php b/phpBB/phpbb/profilefields/type/type_base.php index 52f5d15511..9b4bada26d 100644 --- a/phpBB/phpbb/profilefields/type/type_base.php +++ b/phpBB/phpbb/profilefields/type/type_base.php @@ -158,7 +158,19 @@ abstract class type_base implements type_interface } else { - return $this->request->variable($key, '', true); + $default_value = ''; + $lang_fields = array( + 'l_lang_name', + 'l_lang_explain', + 'l_lang_default_value', + 'l_lang_options', + ); + + if (in_array($key, $lang_fields)) + { + $default_value = array(0 => ''); + } + return $this->request->variable($key, $default_value, true); } } diff --git a/phpBB/phpbb/profilefields/type/type_bool.php b/phpBB/phpbb/profilefields/type/type_bool.php index 0582722833..75934e3be7 100644 --- a/phpBB/phpbb/profilefields/type/type_bool.php +++ b/phpBB/phpbb/profilefields/type/type_bool.php @@ -352,7 +352,7 @@ class type_bool extends type_base } } - if ($step == 3 && ($field_data[$key] || $action != 'edit') && $key == 'l_lang_options') + if ($key == 'l_lang_options' && $this->request->is_set($key)) { $field_data[$key] = $this->request->variable($key, array(0 => array('')), true); diff --git a/tests/auth/provider_db_test.php b/tests/auth/provider_db_test.php index e33eae6b54..09ca0816bf 100644 --- a/tests/auth/provider_db_test.php +++ b/tests/auth/provider_db_test.php @@ -78,7 +78,14 @@ class phpbb_auth_provider_db_test extends phpbb_database_test_case ), ); - $this->assertEquals($expected, $provider->login('foobar', 'example')); + $login_return = $provider->login('foobar', 'example'); + $this->assertEquals($expected['status'], $login_return['status']); + $this->assertEquals($expected['error_msg'], $login_return['error_msg']); + + foreach ($expected['user_row'] as $key => $value) + { + $this->assertEquals($value, $login_return['user_row'][$key]); + } // Check if convert works $login_return = $provider->login('foobar2', 'example'); diff --git a/tests/bootstrap.php b/tests/bootstrap.php index 65447eb95c..0e81f4372a 100644 --- a/tests/bootstrap.php +++ b/tests/bootstrap.php @@ -33,8 +33,9 @@ require_once 'test_framework/phpbb_test_case.php'; require_once 'test_framework/phpbb_database_test_case.php'; require_once 'test_framework/phpbb_database_test_connection_manager.php'; require_once 'test_framework/phpbb_functional_test_case.php'; +require_once 'test_framework/phpbb_ui_test_case.php'; -if (version_compare(PHP_VERSION,'5.3.19', ">=")) +if (version_compare(PHP_VERSION, '5.3.19', ">=") && file_exists(__DIR__ . '/vendor/autoload.php')) { - require_once 'test_framework/phpbb_ui_test_case.php'; + require_once __DIR__ . '/vendor/autoload.php'; } diff --git a/tests/composer.lock b/tests/composer.lock index 32d90d43fc..f714495d84 100644 --- a/tests/composer.lock +++ b/tests/composer.lock @@ -3,7 +3,7 @@ "This file locks the dependencies of your project to a known state", "Read more about it at http://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file" ], - "hash": "2affca245bd4946ca7acdf46f100af3c", + "hash": "cf1d8a4841e5e669b148e0df6645a788", "packages": [ ], diff --git a/tests/test_framework/phpbb_ui_test_case.php b/tests/test_framework/phpbb_ui_test_case.php index 702b15d50a..c8ac492e25 100644 --- a/tests/test_framework/phpbb_ui_test_case.php +++ b/tests/test_framework/phpbb_ui_test_case.php @@ -10,7 +10,7 @@ * the docs/CREDITS.txt file. * */ -require_once __DIR__ . '/../vendor/facebook/webdriver/lib/__init__.php'; + require_once __DIR__ . '/../../phpBB/includes/functions_install.php'; class phpbb_ui_test_case extends phpbb_test_case @@ -31,6 +31,18 @@ class phpbb_ui_test_case extends phpbb_test_case { parent::setUpBeforeClass(); + if (version_compare(PHP_VERSION, '5.3.19', '<')) + { + self::markTestSkipped('UI test case requires at least PHP 5.3.19.'); + } + else if (!class_exists('\RemoteWebDriver')) + { + self::markTestSkipped( + 'Could not find RemoteWebDriver class. ' . + 'Run "php ../composer.phar install" from the tests folder.' + ); + } + self::$config = phpbb_test_case_helpers::get_test_config(); self::$root_url = self::$config['phpbb_functional_url']; @@ -49,7 +61,7 @@ class phpbb_ui_test_case extends phpbb_test_case { try { $capabilities = array(\WebDriverCapabilityType::BROWSER_NAME => 'firefox'); - self::$webDriver = RemoteWebDriver::create(self::$host . ':' . self::$port, $capabilities); + self::$webDriver = RemoteWebDriver::create(self::$host . ':' . self::$port, $capabilities); } catch (WebDriverCurlException $e) { self::markTestSkipped('PhantomJS webserver is not running.'); } diff --git a/travis/check-sami-parse-errors.sh b/travis/check-sami-parse-errors.sh index 847c54a61a..c3338e34db 100755 --- a/travis/check-sami-parse-errors.sh +++ b/travis/check-sami-parse-errors.sh @@ -20,7 +20,7 @@ then # and # https://github.com/fabpot/Sami/issues/117 errors=$( - unbuffer phpBB/vendor/bin/sami.php parse travis/sami.conf.php -v | \ + unbuffer phpBB/vendor/bin/sami.php parse build/sami-checkout.conf.php -v | \ sed "s,\x1B\[[0-9;]*[a-zA-Z],,g" | \ grep "ERROR: " | \ tee /dev/tty | \ diff --git a/travis/sami.conf.php b/travis/sami.conf.php deleted file mode 100644 index 8e7cfa42e9..0000000000 --- a/travis/sami.conf.php +++ /dev/null @@ -1,19 +0,0 @@ -<?php -/** -* -* This file is part of the phpBB Forum Software package. -* -* @copyright (c) phpBB Limited <https://www.phpbb.com> -* @license GNU General Public License, version 2 (GPL-2.0) -* -* For full copyright and license information, please see -* the docs/CREDITS.txt file. -* -*/ - -require __DIR__ . '/../build/' . basename(__FILE__); - -// Removing the versions array key will make Sami use the current branch. -unset($config['versions']); - -return new Sami\Sami($iterator, $config); |
