Merge pull request #8587 from Raydiation/master

Small cleanup and language detection for apps
remotes/origin/ldap_group_count
Thomas Müller 11 years ago
commit 7abe3b1989
  1. 17
      lib/private/l10n.php
  2. 2
      lib/private/server.php
  3. 6
      lib/public/appframework/db/mapper.php
  4. 14
      lib/public/il10n.php
  5. 6
      tests/lib/appframework/db/MapperTestUtility.php

@ -401,6 +401,23 @@ class OC_L10N implements \OCP\IL10N {
self::$language = $lang;
}
/**
* @brief find the best language
* @param array|string $app details below
* @returns string language
*
* If $app is an array, ownCloud assumes that these are the available
* languages. Otherwise ownCloud tries to find the files in the l10n
* folder.
*
* If nothing works it returns 'en'
*/
public function getLanguageCode($app=null) {
return self::findLanguage($app);
}
/**
* @brief find the best language
* @param array|string $app details below

@ -186,7 +186,7 @@ class Server extends SimpleContainer implements IServerContainer {
}
return $router;
});
$this['Db'] = $this->share(function($c){
$this->registerService('Db', function($c){
return new Db();
});
}

@ -225,12 +225,12 @@ abstract class Mapper {
*/
protected function findOneQuery($sql, array $params=array(), $limit=null, $offset=null){
$result = $this->execute($sql, $params, $limit, $offset);
$row = $result->fetchRow();
$row = $result->fetch();
if($row === false || $row === null){
throw new DoesNotExistException('No matching entry found');
}
$row2 = $result->fetchRow();
$row2 = $result->fetch();
//MDB2 returns null, PDO and doctrine false when no row is available
if( ! ($row2 === false || $row2 === null )) {
throw new MultipleObjectsReturnedException('More than one result');
@ -264,7 +264,7 @@ abstract class Mapper {
$entities = array();
while($row = $result->fetchRow()){
while($row = $result->fetch()){
$entities[] = $this->mapRowToEntity($row);
}

@ -72,4 +72,18 @@ interface IL10N {
* - params: timestamp (int/string)
*/
public function l($type, $data);
/**
* @brief find the best language
* @param array|string $app details below
* @returns string language
*
* If $app is an array, ownCloud assumes that these are the available
* languages. Otherwise ownCloud tries to find the files in the l10n
* folder.
*
* If nothing works it returns 'en'
*/
public function getLanguageCode($app=null);
}

@ -51,7 +51,7 @@ abstract class MapperTestUtility extends \PHPUnit_Framework_TestCase {
->getMock();
$this->query = $this->getMock('Query', array('execute', 'bindValue'));
$this->pdoResult = $this->getMock('Result', array('fetchRow'));
$this->pdoResult = $this->getMock('Result', array('fetch'));
$this->queryAt = 0;
$this->prepareAt = 0;
$this->iterators = array();
@ -65,7 +65,7 @@ abstract class MapperTestUtility extends \PHPUnit_Framework_TestCase {
* @param array $arguments the expected arguments for the prepare query
* method
* @param array $returnRows the rows that should be returned for the result
* of the database query. If not provided, it wont be assumed that fetchRow
* of the database query. If not provided, it wont be assumed that fetch
* will be called on the result
*/
protected function setMapperResult($sql, $arguments=array(), $returnRows=array(),
@ -77,7 +77,7 @@ abstract class MapperTestUtility extends \PHPUnit_Framework_TestCase {
$fetchAt = $this->fetchAt;
$this->pdoResult->expects($this->any())
->method('fetchRow')
->method('fetch')
->will($this->returnCallback(
function() use ($iterators, $fetchAt){
$iterator = $iterators[$fetchAt];

Loading…
Cancel
Save