Passed
Push — master ( d95ccf...545de2 )
by Marcel
36:29 queued 18:36
created
AppFramework/Middleware/Security/Exceptions/NotLoggedInException.php 1 patch
Indentation   +3 added lines, -3 removed lines patch added patch discarded remove patch
@@ -34,7 +34,7 @@
 block discarded – undo
34 34
  * @package OC\AppFramework\Middleware\Security\Exceptions
35 35
  */
36 36
 class NotLoggedInException extends SecurityException {
37
-	public function __construct() {
38
-		parent::__construct('Current user is not logged in', Http::STATUS_UNAUTHORIZED);
39
-	}
37
+    public function __construct() {
38
+        parent::__construct('Current user is not logged in', Http::STATUS_UNAUTHORIZED);
39
+    }
40 40
 }
Please login to merge, or discard this patch.
lib/private/Repair/NC11/FixMountStorages.php 2 patches
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -69,7 +69,7 @@
 block discarded – undo
69 69
 		$result->closeCursor();
70 70
 
71 71
 		if ($entriesUpdated > 0) {
72
-			$output->info($entriesUpdated . ' mounts updated');
72
+			$output->info($entriesUpdated.' mounts updated');
73 73
 			return;
74 74
 		}
75 75
 
Please login to merge, or discard this patch.
Indentation   +39 added lines, -39 removed lines patch added patch discarded remove patch
@@ -29,50 +29,50 @@
 block discarded – undo
29 29
 use OCP\Migration\IRepairStep;
30 30
 
31 31
 class FixMountStorages implements IRepairStep {
32
-	/** @var IDBConnection */
33
-	private $db;
32
+    /** @var IDBConnection */
33
+    private $db;
34 34
 
35
-	/**
36
-	 * @param IDBConnection $db
37
-	 */
38
-	public function __construct(IDBConnection $db) {
39
-		$this->db = $db;
40
-	}
35
+    /**
36
+     * @param IDBConnection $db
37
+     */
38
+    public function __construct(IDBConnection $db) {
39
+        $this->db = $db;
40
+    }
41 41
 
42
-	/**
43
-	 * @return string
44
-	 */
45
-	public function getName() {
46
-		return 'Fix potential broken mount points';
47
-	}
42
+    /**
43
+     * @return string
44
+     */
45
+    public function getName() {
46
+        return 'Fix potential broken mount points';
47
+    }
48 48
 
49
-	public function run(IOutput $output) {
50
-		$query = $this->db->getQueryBuilder();
51
-		$query->select('m.id', 'f.storage')
52
-			->from('mounts', 'm')
53
-			->leftJoin('m', 'filecache', 'f', $query->expr()->eq('m.root_id', 'f.fileid'))
54
-			->where($query->expr()->neq('m.storage_id', 'f.storage'));
49
+    public function run(IOutput $output) {
50
+        $query = $this->db->getQueryBuilder();
51
+        $query->select('m.id', 'f.storage')
52
+            ->from('mounts', 'm')
53
+            ->leftJoin('m', 'filecache', 'f', $query->expr()->eq('m.root_id', 'f.fileid'))
54
+            ->where($query->expr()->neq('m.storage_id', 'f.storage'));
55 55
 
56
-		$update = $this->db->getQueryBuilder();
57
-		$update->update('mounts')
58
-			->set('storage_id', $update->createParameter('storage'))
59
-			->where($query->expr()->eq('id', $update->createParameter('mount')));
56
+        $update = $this->db->getQueryBuilder();
57
+        $update->update('mounts')
58
+            ->set('storage_id', $update->createParameter('storage'))
59
+            ->where($query->expr()->eq('id', $update->createParameter('mount')));
60 60
 
61
-		$result = $query->execute();
62
-		$entriesUpdated = 0;
63
-		while ($row = $result->fetch()) {
64
-			$update->setParameter('storage', $row['storage'], IQueryBuilder::PARAM_INT)
65
-				->setParameter('mount', $row['id'], IQueryBuilder::PARAM_INT);
66
-			$update->execute();
67
-			$entriesUpdated++;
68
-		}
69
-		$result->closeCursor();
61
+        $result = $query->execute();
62
+        $entriesUpdated = 0;
63
+        while ($row = $result->fetch()) {
64
+            $update->setParameter('storage', $row['storage'], IQueryBuilder::PARAM_INT)
65
+                ->setParameter('mount', $row['id'], IQueryBuilder::PARAM_INT);
66
+            $update->execute();
67
+            $entriesUpdated++;
68
+        }
69
+        $result->closeCursor();
70 70
 
71
-		if ($entriesUpdated > 0) {
72
-			$output->info($entriesUpdated . ' mounts updated');
73
-			return;
74
-		}
71
+        if ($entriesUpdated > 0) {
72
+            $output->info($entriesUpdated . ' mounts updated');
73
+            return;
74
+        }
75 75
 
76
-		$output->info('No mounts updated');
77
-	}
76
+        $output->info('No mounts updated');
77
+    }
78 78
 }
Please login to merge, or discard this patch.
lib/private/Repair/OldGroupMembershipShares.php 2 patches
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -93,7 +93,7 @@
 block discarded – undo
93 93
 		$result->closeCursor();
94 94
 
95 95
 		if ($deletedEntries) {
96
-			$output->info('Removed ' . $deletedEntries . ' shares where user is not a member of the group anymore');
96
+			$output->info('Removed '.$deletedEntries.' shares where user is not a member of the group anymore');
97 97
 		}
98 98
 	}
99 99
 
Please login to merge, or discard this patch.
Indentation   +72 added lines, -72 removed lines patch added patch discarded remove patch
@@ -29,88 +29,88 @@
 block discarded – undo
29 29
 use OCP\Share\IShare;
30 30
 
31 31
 class OldGroupMembershipShares implements IRepairStep {
32
-	/** @var \OCP\IDBConnection */
33
-	protected $connection;
32
+    /** @var \OCP\IDBConnection */
33
+    protected $connection;
34 34
 
35
-	/** @var \OCP\IGroupManager */
36
-	protected $groupManager;
35
+    /** @var \OCP\IGroupManager */
36
+    protected $groupManager;
37 37
 
38
-	/**
39
-	 * @var array [gid => [uid => (bool)]]
40
-	 */
41
-	protected $memberships;
38
+    /**
39
+     * @var array [gid => [uid => (bool)]]
40
+     */
41
+    protected $memberships;
42 42
 
43
-	/**
44
-	 * @param IDBConnection $connection
45
-	 * @param IGroupManager $groupManager
46
-	 */
47
-	public function __construct(IDBConnection $connection, IGroupManager $groupManager) {
48
-		$this->connection = $connection;
49
-		$this->groupManager = $groupManager;
50
-	}
43
+    /**
44
+     * @param IDBConnection $connection
45
+     * @param IGroupManager $groupManager
46
+     */
47
+    public function __construct(IDBConnection $connection, IGroupManager $groupManager) {
48
+        $this->connection = $connection;
49
+        $this->groupManager = $groupManager;
50
+    }
51 51
 
52
-	/**
53
-	 * Returns the step's name
54
-	 *
55
-	 * @return string
56
-	 */
57
-	public function getName() {
58
-		return 'Remove shares of old group memberships';
59
-	}
52
+    /**
53
+     * Returns the step's name
54
+     *
55
+     * @return string
56
+     */
57
+    public function getName() {
58
+        return 'Remove shares of old group memberships';
59
+    }
60 60
 
61
-	/**
62
-	 * Run repair step.
63
-	 * Must throw exception on error.
64
-	 *
65
-	 * @throws \Exception in case of failure
66
-	 */
67
-	public function run(IOutput $output) {
68
-		$deletedEntries = 0;
61
+    /**
62
+     * Run repair step.
63
+     * Must throw exception on error.
64
+     *
65
+     * @throws \Exception in case of failure
66
+     */
67
+    public function run(IOutput $output) {
68
+        $deletedEntries = 0;
69 69
 
70
-		$query = $this->connection->getQueryBuilder();
71
-		$query->select('s1.id')->selectAlias('s1.share_with', 'user')->selectAlias('s2.share_with', 'group')
72
-			->from('share', 's1')
73
-			->where($query->expr()->isNotNull('s1.parent'))
74
-				// \OC\Share\Constant::$shareTypeGroupUserUnique === 2
75
-				->andWhere($query->expr()->eq('s1.share_type', $query->expr()->literal(2)))
76
-				->andWhere($query->expr()->isNotNull('s2.id'))
77
-				->andWhere($query->expr()->eq('s2.share_type', $query->expr()->literal(IShare::TYPE_GROUP)))
78
-			->leftJoin('s1', 'share', 's2', $query->expr()->eq('s1.parent', 's2.id'));
70
+        $query = $this->connection->getQueryBuilder();
71
+        $query->select('s1.id')->selectAlias('s1.share_with', 'user')->selectAlias('s2.share_with', 'group')
72
+            ->from('share', 's1')
73
+            ->where($query->expr()->isNotNull('s1.parent'))
74
+                // \OC\Share\Constant::$shareTypeGroupUserUnique === 2
75
+                ->andWhere($query->expr()->eq('s1.share_type', $query->expr()->literal(2)))
76
+                ->andWhere($query->expr()->isNotNull('s2.id'))
77
+                ->andWhere($query->expr()->eq('s2.share_type', $query->expr()->literal(IShare::TYPE_GROUP)))
78
+            ->leftJoin('s1', 'share', 's2', $query->expr()->eq('s1.parent', 's2.id'));
79 79
 
80
-		$deleteQuery = $this->connection->getQueryBuilder();
81
-		$deleteQuery->delete('share')
82
-			->where($query->expr()->eq('id', $deleteQuery->createParameter('share')));
80
+        $deleteQuery = $this->connection->getQueryBuilder();
81
+        $deleteQuery->delete('share')
82
+            ->where($query->expr()->eq('id', $deleteQuery->createParameter('share')));
83 83
 
84
-		$result = $query->execute();
85
-		while ($row = $result->fetch()) {
86
-			if (!$this->isMember($row['group'], $row['user'])) {
87
-				$deletedEntries += $deleteQuery->setParameter('share', (int) $row['id'])
88
-					->execute();
89
-			}
90
-		}
91
-		$result->closeCursor();
84
+        $result = $query->execute();
85
+        while ($row = $result->fetch()) {
86
+            if (!$this->isMember($row['group'], $row['user'])) {
87
+                $deletedEntries += $deleteQuery->setParameter('share', (int) $row['id'])
88
+                    ->execute();
89
+            }
90
+        }
91
+        $result->closeCursor();
92 92
 
93
-		if ($deletedEntries) {
94
-			$output->info('Removed ' . $deletedEntries . ' shares where user is not a member of the group anymore');
95
-		}
96
-	}
93
+        if ($deletedEntries) {
94
+            $output->info('Removed ' . $deletedEntries . ' shares where user is not a member of the group anymore');
95
+        }
96
+    }
97 97
 
98
-	/**
99
-	 * @param string $gid
100
-	 * @param string $uid
101
-	 * @return bool
102
-	 */
103
-	protected function isMember($gid, $uid) {
104
-		if (isset($this->memberships[$gid][$uid])) {
105
-			return $this->memberships[$gid][$uid];
106
-		}
98
+    /**
99
+     * @param string $gid
100
+     * @param string $uid
101
+     * @return bool
102
+     */
103
+    protected function isMember($gid, $uid) {
104
+        if (isset($this->memberships[$gid][$uid])) {
105
+            return $this->memberships[$gid][$uid];
106
+        }
107 107
 
108
-		$isMember = $this->groupManager->isInGroup($uid, $gid);
109
-		if (!isset($this->memberships[$gid])) {
110
-			$this->memberships[$gid] = [];
111
-		}
112
-		$this->memberships[$gid][$uid] = $isMember;
108
+        $isMember = $this->groupManager->isInGroup($uid, $gid);
109
+        if (!isset($this->memberships[$gid])) {
110
+            $this->memberships[$gid] = [];
111
+        }
112
+        $this->memberships[$gid][$uid] = $isMember;
113 113
 
114
-		return $isMember;
115
-	}
114
+        return $isMember;
115
+    }
116 116
 }
Please login to merge, or discard this patch.
lib/private/DB/AdapterOCI8.php 2 patches
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -33,7 +33,7 @@
 block discarded – undo
33 33
 		}
34 34
 		if ($table !== null) {
35 35
 			$suffix = '_SEQ';
36
-			$table = '"' . $table . $suffix . '"';
36
+			$table = '"'.$table.$suffix.'"';
37 37
 		}
38 38
 		return $this->conn->realLastInsertId($table);
39 39
 	}
Please login to merge, or discard this patch.
Indentation   +18 added lines, -18 removed lines patch added patch discarded remove patch
@@ -26,24 +26,24 @@
 block discarded – undo
26 26
 namespace OC\DB;
27 27
 
28 28
 class AdapterOCI8 extends Adapter {
29
-	public function lastInsertId($table) {
30
-		if (is_null($table)) {
31
-			throw new \InvalidArgumentException('Oracle requires a table name to be passed into lastInsertId()');
32
-		}
33
-		if ($table !== null) {
34
-			$suffix = '_SEQ';
35
-			$table = '"' . $table . $suffix . '"';
36
-		}
37
-		return $this->conn->realLastInsertId($table);
38
-	}
29
+    public function lastInsertId($table) {
30
+        if (is_null($table)) {
31
+            throw new \InvalidArgumentException('Oracle requires a table name to be passed into lastInsertId()');
32
+        }
33
+        if ($table !== null) {
34
+            $suffix = '_SEQ';
35
+            $table = '"' . $table . $suffix . '"';
36
+        }
37
+        return $this->conn->realLastInsertId($table);
38
+    }
39 39
 
40
-	public const UNIX_TIMESTAMP_REPLACEMENT = "(cast(sys_extract_utc(systimestamp) as date) - date'1970-01-01') * 86400";
40
+    public const UNIX_TIMESTAMP_REPLACEMENT = "(cast(sys_extract_utc(systimestamp) as date) - date'1970-01-01') * 86400";
41 41
 
42
-	public function fixupStatement($statement) {
43
-		$statement = preg_replace('/`(\w+)` ILIKE \?/', 'REGEXP_LIKE(`$1`, \'^\' || REPLACE(?, \'%\', \'.*\') || \'$\', \'i\')', $statement);
44
-		$statement = str_replace('`', '"', $statement);
45
-		$statement = str_ireplace('NOW()', 'CURRENT_TIMESTAMP', $statement);
46
-		$statement = str_ireplace('UNIX_TIMESTAMP()', self::UNIX_TIMESTAMP_REPLACEMENT, $statement);
47
-		return $statement;
48
-	}
42
+    public function fixupStatement($statement) {
43
+        $statement = preg_replace('/`(\w+)` ILIKE \?/', 'REGEXP_LIKE(`$1`, \'^\' || REPLACE(?, \'%\', \'.*\') || \'$\', \'i\')', $statement);
44
+        $statement = str_replace('`', '"', $statement);
45
+        $statement = str_ireplace('NOW()', 'CURRENT_TIMESTAMP', $statement);
46
+        $statement = str_ireplace('UNIX_TIMESTAMP()', self::UNIX_TIMESTAMP_REPLACEMENT, $statement);
47
+        return $statement;
48
+    }
49 49
 }
Please login to merge, or discard this patch.
lib/private/DB/QueryBuilder/QueryFunction.php 1 patch
Indentation   +11 added lines, -11 removed lines patch added patch discarded remove patch
@@ -25,17 +25,17 @@
 block discarded – undo
25 25
 use OCP\DB\QueryBuilder\IQueryFunction;
26 26
 
27 27
 class QueryFunction implements IQueryFunction {
28
-	/** @var string */
29
-	protected $function;
28
+    /** @var string */
29
+    protected $function;
30 30
 
31
-	public function __construct($function) {
32
-		$this->function = $function;
33
-	}
31
+    public function __construct($function) {
32
+        $this->function = $function;
33
+    }
34 34
 
35
-	/**
36
-	 * @return string
37
-	 */
38
-	public function __toString() {
39
-		return (string) $this->function;
40
-	}
35
+    /**
36
+     * @return string
37
+     */
38
+    public function __toString() {
39
+        return (string) $this->function;
40
+    }
41 41
 }
Please login to merge, or discard this patch.
lib/private/DB/QueryBuilder/Parameter.php 1 patch
Indentation   +11 added lines, -11 removed lines patch added patch discarded remove patch
@@ -25,17 +25,17 @@
 block discarded – undo
25 25
 use OCP\DB\QueryBuilder\IParameter;
26 26
 
27 27
 class Parameter implements IParameter {
28
-	/** @var mixed */
29
-	protected $name;
28
+    /** @var mixed */
29
+    protected $name;
30 30
 
31
-	public function __construct($name) {
32
-		$this->name = $name;
33
-	}
31
+    public function __construct($name) {
32
+        $this->name = $name;
33
+    }
34 34
 
35
-	/**
36
-	 * @return string
37
-	 */
38
-	public function __toString() {
39
-		return (string) $this->name;
40
-	}
35
+    /**
36
+     * @return string
37
+     */
38
+    public function __toString() {
39
+        return (string) $this->name;
40
+    }
41 41
 }
Please login to merge, or discard this patch.
lib/private/DB/PostgreSqlMigrator.php 2 patches
Indentation   +25 added lines, -25 removed lines patch added patch discarded remove patch
@@ -25,32 +25,32 @@
 block discarded – undo
25 25
 use Doctrine\DBAL\Schema\Schema;
26 26
 
27 27
 class PostgreSqlMigrator extends Migrator {
28
-	/**
29
-	 * @param Schema $targetSchema
30
-	 * @param \Doctrine\DBAL\Connection $connection
31
-	 * @return \Doctrine\DBAL\Schema\SchemaDiff
32
-	 */
33
-	protected function getDiff(Schema $targetSchema, \Doctrine\DBAL\Connection $connection) {
34
-		$schemaDiff = parent::getDiff($targetSchema, $connection);
28
+    /**
29
+     * @param Schema $targetSchema
30
+     * @param \Doctrine\DBAL\Connection $connection
31
+     * @return \Doctrine\DBAL\Schema\SchemaDiff
32
+     */
33
+    protected function getDiff(Schema $targetSchema, \Doctrine\DBAL\Connection $connection) {
34
+        $schemaDiff = parent::getDiff($targetSchema, $connection);
35 35
 
36
-		foreach ($schemaDiff->changedTables as $tableDiff) {
37
-			// fix default value in brackets - pg 9.4 is returning a negative default value in ()
38
-			// see https://github.com/doctrine/dbal/issues/2427
39
-			foreach ($tableDiff->changedColumns as $column) {
40
-				$column->changedProperties = array_filter($column->changedProperties, function ($changedProperties) use ($column) {
41
-					if ($changedProperties !== 'default') {
42
-						return true;
43
-					}
44
-					$fromDefault = $column->fromColumn->getDefault();
45
-					$toDefault = $column->column->getDefault();
46
-					$fromDefault = trim($fromDefault, "()");
36
+        foreach ($schemaDiff->changedTables as $tableDiff) {
37
+            // fix default value in brackets - pg 9.4 is returning a negative default value in ()
38
+            // see https://github.com/doctrine/dbal/issues/2427
39
+            foreach ($tableDiff->changedColumns as $column) {
40
+                $column->changedProperties = array_filter($column->changedProperties, function ($changedProperties) use ($column) {
41
+                    if ($changedProperties !== 'default') {
42
+                        return true;
43
+                    }
44
+                    $fromDefault = $column->fromColumn->getDefault();
45
+                    $toDefault = $column->column->getDefault();
46
+                    $fromDefault = trim($fromDefault, "()");
47 47
 
48
-					// by intention usage of !=
49
-					return $fromDefault != $toDefault;
50
-				});
51
-			}
52
-		}
48
+                    // by intention usage of !=
49
+                    return $fromDefault != $toDefault;
50
+                });
51
+            }
52
+        }
53 53
 
54
-		return $schemaDiff;
55
-	}
54
+        return $schemaDiff;
55
+    }
56 56
 }
Please login to merge, or discard this patch.
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -37,7 +37,7 @@
 block discarded – undo
37 37
 			// fix default value in brackets - pg 9.4 is returning a negative default value in ()
38 38
 			// see https://github.com/doctrine/dbal/issues/2427
39 39
 			foreach ($tableDiff->changedColumns as $column) {
40
-				$column->changedProperties = array_filter($column->changedProperties, function ($changedProperties) use ($column) {
40
+				$column->changedProperties = array_filter($column->changedProperties, function($changedProperties) use ($column) {
41 41
 					if ($changedProperties !== 'default') {
42 42
 						return true;
43 43
 					}
Please login to merge, or discard this patch.
lib/private/App/AppStore/Version/Version.php 1 patch
Indentation   +24 added lines, -24 removed lines patch added patch discarded remove patch
@@ -22,31 +22,31 @@
 block discarded – undo
22 22
 namespace OC\App\AppStore\Version;
23 23
 
24 24
 class Version {
25
-	/** @var string */
26
-	private $minVersion;
27
-	/** @var string */
28
-	private $maxVersion;
25
+    /** @var string */
26
+    private $minVersion;
27
+    /** @var string */
28
+    private $maxVersion;
29 29
 
30
-	/**
31
-	 * @param string $minVersion
32
-	 * @param string $maxVersion
33
-	 */
34
-	public function __construct($minVersion, $maxVersion) {
35
-		$this->minVersion = $minVersion;
36
-		$this->maxVersion = $maxVersion;
37
-	}
30
+    /**
31
+     * @param string $minVersion
32
+     * @param string $maxVersion
33
+     */
34
+    public function __construct($minVersion, $maxVersion) {
35
+        $this->minVersion = $minVersion;
36
+        $this->maxVersion = $maxVersion;
37
+    }
38 38
 
39
-	/**
40
-	 * @return string
41
-	 */
42
-	public function getMinimumVersion() {
43
-		return $this->minVersion;
44
-	}
39
+    /**
40
+     * @return string
41
+     */
42
+    public function getMinimumVersion() {
43
+        return $this->minVersion;
44
+    }
45 45
 
46
-	/**
47
-	 * @return string
48
-	 */
49
-	public function getMaximumVersion() {
50
-		return $this->maxVersion;
51
-	}
46
+    /**
47
+     * @return string
48
+     */
49
+    public function getMaximumVersion() {
50
+        return $this->maxVersion;
51
+    }
52 52
 }
Please login to merge, or discard this patch.
lib/private/DateTimeFormatter.php 2 patches
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -237,7 +237,7 @@  discard block
 block discarded – undo
237 237
 	 * @return string Formatted date and time string
238 238
 	 */
239 239
 	public function formatDateTime($timestamp, $formatDate = 'long', $formatTime = 'medium', \DateTimeZone $timeZone = null, \OCP\IL10N $l = null) {
240
-		return $this->format($timestamp, 'datetime', $formatDate . '|' . $formatTime, $timeZone, $l);
240
+		return $this->format($timestamp, 'datetime', $formatDate.'|'.$formatTime, $timeZone, $l);
241 241
 	}
242 242
 
243 243
 	/**
@@ -256,7 +256,7 @@  discard block
 block discarded – undo
256 256
 			$formatDate .= '^';
257 257
 		}
258 258
 
259
-		return $this->format($timestamp, 'datetime', $formatDate . '|' . $formatTime, $timeZone, $l);
259
+		return $this->format($timestamp, 'datetime', $formatDate.'|'.$formatTime, $timeZone, $l);
260 260
 	}
261 261
 
262 262
 	/**
Please login to merge, or discard this patch.
Indentation   +268 added lines, -268 removed lines patch added patch discarded remove patch
@@ -26,294 +26,294 @@
 block discarded – undo
26 26
 namespace OC;
27 27
 
28 28
 class DateTimeFormatter implements \OCP\IDateTimeFormatter {
29
-	/** @var \DateTimeZone */
30
-	protected $defaultTimeZone;
29
+    /** @var \DateTimeZone */
30
+    protected $defaultTimeZone;
31 31
 
32
-	/** @var \OCP\IL10N */
33
-	protected $defaultL10N;
32
+    /** @var \OCP\IL10N */
33
+    protected $defaultL10N;
34 34
 
35
-	/**
36
-	 * Constructor
37
-	 *
38
-	 * @param \DateTimeZone $defaultTimeZone Set the timezone for the format
39
-	 * @param \OCP\IL10N $defaultL10N Set the language for the format
40
-	 */
41
-	public function __construct(\DateTimeZone $defaultTimeZone, \OCP\IL10N $defaultL10N) {
42
-		$this->defaultTimeZone = $defaultTimeZone;
43
-		$this->defaultL10N = $defaultL10N;
44
-	}
35
+    /**
36
+     * Constructor
37
+     *
38
+     * @param \DateTimeZone $defaultTimeZone Set the timezone for the format
39
+     * @param \OCP\IL10N $defaultL10N Set the language for the format
40
+     */
41
+    public function __construct(\DateTimeZone $defaultTimeZone, \OCP\IL10N $defaultL10N) {
42
+        $this->defaultTimeZone = $defaultTimeZone;
43
+        $this->defaultL10N = $defaultL10N;
44
+    }
45 45
 
46
-	/**
47
-	 * Get TimeZone to use
48
-	 *
49
-	 * @param \DateTimeZone $timeZone	The timezone to use
50
-	 * @return \DateTimeZone		The timezone to use, falling back to the current user's timezone
51
-	 */
52
-	protected function getTimeZone($timeZone = null) {
53
-		if ($timeZone === null) {
54
-			$timeZone = $this->defaultTimeZone;
55
-		}
46
+    /**
47
+     * Get TimeZone to use
48
+     *
49
+     * @param \DateTimeZone $timeZone	The timezone to use
50
+     * @return \DateTimeZone		The timezone to use, falling back to the current user's timezone
51
+     */
52
+    protected function getTimeZone($timeZone = null) {
53
+        if ($timeZone === null) {
54
+            $timeZone = $this->defaultTimeZone;
55
+        }
56 56
 
57
-		return $timeZone;
58
-	}
57
+        return $timeZone;
58
+    }
59 59
 
60
-	/**
61
-	 * Get \OCP\IL10N to use
62
-	 *
63
-	 * @param \OCP\IL10N $l	The locale to use
64
-	 * @return \OCP\IL10N		The locale to use, falling back to the current user's locale
65
-	 */
66
-	protected function getLocale($l = null) {
67
-		if ($l === null) {
68
-			$l = $this->defaultL10N;
69
-		}
60
+    /**
61
+     * Get \OCP\IL10N to use
62
+     *
63
+     * @param \OCP\IL10N $l	The locale to use
64
+     * @return \OCP\IL10N		The locale to use, falling back to the current user's locale
65
+     */
66
+    protected function getLocale($l = null) {
67
+        if ($l === null) {
68
+            $l = $this->defaultL10N;
69
+        }
70 70
 
71
-		return $l;
72
-	}
71
+        return $l;
72
+    }
73 73
 
74
-	/**
75
-	 * Generates a DateTime object with the given timestamp and TimeZone
76
-	 *
77
-	 * @param mixed $timestamp
78
-	 * @param \DateTimeZone $timeZone	The timezone to use
79
-	 * @return \DateTime
80
-	 */
81
-	protected function getDateTime($timestamp, \DateTimeZone $timeZone = null) {
82
-		if ($timestamp === null) {
83
-			return new \DateTime('now', $timeZone);
84
-		} elseif (!$timestamp instanceof \DateTime) {
85
-			$dateTime = new \DateTime('now', $timeZone);
86
-			$dateTime->setTimestamp($timestamp);
87
-			return $dateTime;
88
-		}
89
-		if ($timeZone) {
90
-			$timestamp->setTimezone($timeZone);
91
-		}
92
-		return $timestamp;
93
-	}
74
+    /**
75
+     * Generates a DateTime object with the given timestamp and TimeZone
76
+     *
77
+     * @param mixed $timestamp
78
+     * @param \DateTimeZone $timeZone	The timezone to use
79
+     * @return \DateTime
80
+     */
81
+    protected function getDateTime($timestamp, \DateTimeZone $timeZone = null) {
82
+        if ($timestamp === null) {
83
+            return new \DateTime('now', $timeZone);
84
+        } elseif (!$timestamp instanceof \DateTime) {
85
+            $dateTime = new \DateTime('now', $timeZone);
86
+            $dateTime->setTimestamp($timestamp);
87
+            return $dateTime;
88
+        }
89
+        if ($timeZone) {
90
+            $timestamp->setTimezone($timeZone);
91
+        }
92
+        return $timestamp;
93
+    }
94 94
 
95
-	/**
96
-	 * Formats the date of the given timestamp
97
-	 *
98
-	 * @param int|\DateTime	$timestamp	Either a Unix timestamp or DateTime object
99
-	 * @param string	$format			Either 'full', 'long', 'medium' or 'short'
100
-	 * 				full:	e.g. 'EEEE, MMMM d, y'	=> 'Wednesday, August 20, 2014'
101
-	 * 				long:	e.g. 'MMMM d, y'		=> 'August 20, 2014'
102
-	 * 				medium:	e.g. 'MMM d, y'			=> 'Aug 20, 2014'
103
-	 * 				short:	e.g. 'M/d/yy'			=> '8/20/14'
104
-	 * 				The exact format is dependent on the language
105
-	 * @param \DateTimeZone	$timeZone	The timezone to use
106
-	 * @param \OCP\IL10N	$l			The locale to use
107
-	 * @return string Formatted date string
108
-	 */
109
-	public function formatDate($timestamp, $format = 'long', \DateTimeZone $timeZone = null, \OCP\IL10N $l = null) {
110
-		return $this->format($timestamp, 'date', $format, $timeZone, $l);
111
-	}
95
+    /**
96
+     * Formats the date of the given timestamp
97
+     *
98
+     * @param int|\DateTime	$timestamp	Either a Unix timestamp or DateTime object
99
+     * @param string	$format			Either 'full', 'long', 'medium' or 'short'
100
+     * 				full:	e.g. 'EEEE, MMMM d, y'	=> 'Wednesday, August 20, 2014'
101
+     * 				long:	e.g. 'MMMM d, y'		=> 'August 20, 2014'
102
+     * 				medium:	e.g. 'MMM d, y'			=> 'Aug 20, 2014'
103
+     * 				short:	e.g. 'M/d/yy'			=> '8/20/14'
104
+     * 				The exact format is dependent on the language
105
+     * @param \DateTimeZone	$timeZone	The timezone to use
106
+     * @param \OCP\IL10N	$l			The locale to use
107
+     * @return string Formatted date string
108
+     */
109
+    public function formatDate($timestamp, $format = 'long', \DateTimeZone $timeZone = null, \OCP\IL10N $l = null) {
110
+        return $this->format($timestamp, 'date', $format, $timeZone, $l);
111
+    }
112 112
 
113
-	/**
114
-	 * Formats the date of the given timestamp
115
-	 *
116
-	 * @param int|\DateTime	$timestamp	Either a Unix timestamp or DateTime object
117
-	 * @param string	$format			Either 'full', 'long', 'medium' or 'short'
118
-	 * 				full:	e.g. 'EEEE, MMMM d, y'	=> 'Wednesday, August 20, 2014'
119
-	 * 				long:	e.g. 'MMMM d, y'		=> 'August 20, 2014'
120
-	 * 				medium:	e.g. 'MMM d, y'			=> 'Aug 20, 2014'
121
-	 * 				short:	e.g. 'M/d/yy'			=> '8/20/14'
122
-	 * 				The exact format is dependent on the language
123
-	 * 					Uses 'Today', 'Yesterday' and 'Tomorrow' when applicable
124
-	 * @param \DateTimeZone	$timeZone	The timezone to use
125
-	 * @param \OCP\IL10N	$l			The locale to use
126
-	 * @return string Formatted relative date string
127
-	 */
128
-	public function formatDateRelativeDay($timestamp, $format = 'long', \DateTimeZone $timeZone = null, \OCP\IL10N $l = null) {
129
-		if (substr($format, -1) !== '*' && substr($format, -1) !== '*') {
130
-			$format .= '^';
131
-		}
113
+    /**
114
+     * Formats the date of the given timestamp
115
+     *
116
+     * @param int|\DateTime	$timestamp	Either a Unix timestamp or DateTime object
117
+     * @param string	$format			Either 'full', 'long', 'medium' or 'short'
118
+     * 				full:	e.g. 'EEEE, MMMM d, y'	=> 'Wednesday, August 20, 2014'
119
+     * 				long:	e.g. 'MMMM d, y'		=> 'August 20, 2014'
120
+     * 				medium:	e.g. 'MMM d, y'			=> 'Aug 20, 2014'
121
+     * 				short:	e.g. 'M/d/yy'			=> '8/20/14'
122
+     * 				The exact format is dependent on the language
123
+     * 					Uses 'Today', 'Yesterday' and 'Tomorrow' when applicable
124
+     * @param \DateTimeZone	$timeZone	The timezone to use
125
+     * @param \OCP\IL10N	$l			The locale to use
126
+     * @return string Formatted relative date string
127
+     */
128
+    public function formatDateRelativeDay($timestamp, $format = 'long', \DateTimeZone $timeZone = null, \OCP\IL10N $l = null) {
129
+        if (substr($format, -1) !== '*' && substr($format, -1) !== '*') {
130
+            $format .= '^';
131
+        }
132 132
 
133
-		return $this->format($timestamp, 'date', $format, $timeZone, $l);
134
-	}
133
+        return $this->format($timestamp, 'date', $format, $timeZone, $l);
134
+    }
135 135
 
136
-	/**
137
-	 * Gives the relative date of the timestamp
138
-	 * Only works for past dates
139
-	 *
140
-	 * @param int|\DateTime	$timestamp	Either a Unix timestamp or DateTime object
141
-	 * @param int|\DateTime	$baseTimestamp	Timestamp to compare $timestamp against, defaults to current time
142
-	 * @return string	Dates returned are:
143
-	 * 				<  1 month	=> Today, Yesterday, n days ago
144
-	 * 				< 13 month	=> last month, n months ago
145
-	 * 				>= 13 month	=> last year, n years ago
146
-	 * @param \OCP\IL10N	$l			The locale to use
147
-	 * @return string Formatted date span
148
-	 */
149
-	public function formatDateSpan($timestamp, $baseTimestamp = null, \OCP\IL10N $l = null) {
150
-		$l = $this->getLocale($l);
151
-		$timestamp = $this->getDateTime($timestamp);
152
-		$timestamp->setTime(0, 0, 0);
136
+    /**
137
+     * Gives the relative date of the timestamp
138
+     * Only works for past dates
139
+     *
140
+     * @param int|\DateTime	$timestamp	Either a Unix timestamp or DateTime object
141
+     * @param int|\DateTime	$baseTimestamp	Timestamp to compare $timestamp against, defaults to current time
142
+     * @return string	Dates returned are:
143
+     * 				<  1 month	=> Today, Yesterday, n days ago
144
+     * 				< 13 month	=> last month, n months ago
145
+     * 				>= 13 month	=> last year, n years ago
146
+     * @param \OCP\IL10N	$l			The locale to use
147
+     * @return string Formatted date span
148
+     */
149
+    public function formatDateSpan($timestamp, $baseTimestamp = null, \OCP\IL10N $l = null) {
150
+        $l = $this->getLocale($l);
151
+        $timestamp = $this->getDateTime($timestamp);
152
+        $timestamp->setTime(0, 0, 0);
153 153
 
154
-		if ($baseTimestamp === null) {
155
-			$baseTimestamp = time();
156
-		}
157
-		$baseTimestamp = $this->getDateTime($baseTimestamp);
158
-		$baseTimestamp->setTime(0, 0, 0);
159
-		$dateInterval = $timestamp->diff($baseTimestamp);
154
+        if ($baseTimestamp === null) {
155
+            $baseTimestamp = time();
156
+        }
157
+        $baseTimestamp = $this->getDateTime($baseTimestamp);
158
+        $baseTimestamp->setTime(0, 0, 0);
159
+        $dateInterval = $timestamp->diff($baseTimestamp);
160 160
 
161
-		if ($dateInterval->y == 0 && $dateInterval->m == 0 && $dateInterval->d == 0) {
162
-			return $l->t('today');
163
-		} elseif ($dateInterval->y == 0 && $dateInterval->m == 0 && $dateInterval->d == 1) {
164
-			if ($timestamp > $baseTimestamp) {
165
-				return $l->t('tomorrow');
166
-			} else {
167
-				return $l->t('yesterday');
168
-			}
169
-		} elseif ($dateInterval->y == 0 && $dateInterval->m == 0) {
170
-			if ($timestamp > $baseTimestamp) {
171
-				return $l->n('in %n day', 'in %n days', $dateInterval->d);
172
-			} else {
173
-				return $l->n('%n day ago', '%n days ago', $dateInterval->d);
174
-			}
175
-		} elseif ($dateInterval->y == 0 && $dateInterval->m == 1) {
176
-			if ($timestamp > $baseTimestamp) {
177
-				return $l->t('next month');
178
-			} else {
179
-				return $l->t('last month');
180
-			}
181
-		} elseif ($dateInterval->y == 0) {
182
-			if ($timestamp > $baseTimestamp) {
183
-				return $l->n('in %n month', 'in %n months', $dateInterval->m);
184
-			} else {
185
-				return $l->n('%n month ago', '%n months ago', $dateInterval->m);
186
-			}
187
-		} elseif ($dateInterval->y == 1) {
188
-			if ($timestamp > $baseTimestamp) {
189
-				return $l->t('next year');
190
-			} else {
191
-				return $l->t('last year');
192
-			}
193
-		}
194
-		if ($timestamp > $baseTimestamp) {
195
-			return $l->n('in %n year', 'in %n years', $dateInterval->y);
196
-		} else {
197
-			return $l->n('%n year ago', '%n years ago', $dateInterval->y);
198
-		}
199
-	}
161
+        if ($dateInterval->y == 0 && $dateInterval->m == 0 && $dateInterval->d == 0) {
162
+            return $l->t('today');
163
+        } elseif ($dateInterval->y == 0 && $dateInterval->m == 0 && $dateInterval->d == 1) {
164
+            if ($timestamp > $baseTimestamp) {
165
+                return $l->t('tomorrow');
166
+            } else {
167
+                return $l->t('yesterday');
168
+            }
169
+        } elseif ($dateInterval->y == 0 && $dateInterval->m == 0) {
170
+            if ($timestamp > $baseTimestamp) {
171
+                return $l->n('in %n day', 'in %n days', $dateInterval->d);
172
+            } else {
173
+                return $l->n('%n day ago', '%n days ago', $dateInterval->d);
174
+            }
175
+        } elseif ($dateInterval->y == 0 && $dateInterval->m == 1) {
176
+            if ($timestamp > $baseTimestamp) {
177
+                return $l->t('next month');
178
+            } else {
179
+                return $l->t('last month');
180
+            }
181
+        } elseif ($dateInterval->y == 0) {
182
+            if ($timestamp > $baseTimestamp) {
183
+                return $l->n('in %n month', 'in %n months', $dateInterval->m);
184
+            } else {
185
+                return $l->n('%n month ago', '%n months ago', $dateInterval->m);
186
+            }
187
+        } elseif ($dateInterval->y == 1) {
188
+            if ($timestamp > $baseTimestamp) {
189
+                return $l->t('next year');
190
+            } else {
191
+                return $l->t('last year');
192
+            }
193
+        }
194
+        if ($timestamp > $baseTimestamp) {
195
+            return $l->n('in %n year', 'in %n years', $dateInterval->y);
196
+        } else {
197
+            return $l->n('%n year ago', '%n years ago', $dateInterval->y);
198
+        }
199
+    }
200 200
 
201
-	/**
202
-	 * Formats the time of the given timestamp
203
-	 *
204
-	 * @param int|\DateTime	$timestamp	Either a Unix timestamp or DateTime object
205
-	 * @param string	$format			Either 'full', 'long', 'medium' or 'short'
206
-	 * 				full:	e.g. 'h:mm:ss a zzzz'	=> '11:42:13 AM GMT+0:00'
207
-	 * 				long:	e.g. 'h:mm:ss a z'		=> '11:42:13 AM GMT'
208
-	 * 				medium:	e.g. 'h:mm:ss a'		=> '11:42:13 AM'
209
-	 * 				short:	e.g. 'h:mm a'			=> '11:42 AM'
210
-	 * 				The exact format is dependent on the language
211
-	 * @param \DateTimeZone	$timeZone	The timezone to use
212
-	 * @param \OCP\IL10N	$l			The locale to use
213
-	 * @return string Formatted time string
214
-	 */
215
-	public function formatTime($timestamp, $format = 'medium', \DateTimeZone $timeZone = null, \OCP\IL10N $l = null) {
216
-		return $this->format($timestamp, 'time', $format, $timeZone, $l);
217
-	}
201
+    /**
202
+     * Formats the time of the given timestamp
203
+     *
204
+     * @param int|\DateTime	$timestamp	Either a Unix timestamp or DateTime object
205
+     * @param string	$format			Either 'full', 'long', 'medium' or 'short'
206
+     * 				full:	e.g. 'h:mm:ss a zzzz'	=> '11:42:13 AM GMT+0:00'
207
+     * 				long:	e.g. 'h:mm:ss a z'		=> '11:42:13 AM GMT'
208
+     * 				medium:	e.g. 'h:mm:ss a'		=> '11:42:13 AM'
209
+     * 				short:	e.g. 'h:mm a'			=> '11:42 AM'
210
+     * 				The exact format is dependent on the language
211
+     * @param \DateTimeZone	$timeZone	The timezone to use
212
+     * @param \OCP\IL10N	$l			The locale to use
213
+     * @return string Formatted time string
214
+     */
215
+    public function formatTime($timestamp, $format = 'medium', \DateTimeZone $timeZone = null, \OCP\IL10N $l = null) {
216
+        return $this->format($timestamp, 'time', $format, $timeZone, $l);
217
+    }
218 218
 
219
-	/**
220
-	 * Gives the relative past time of the timestamp
221
-	 *
222
-	 * @param int|\DateTime	$timestamp	Either a Unix timestamp or DateTime object
223
-	 * @param int|\DateTime	$baseTimestamp	Timestamp to compare $timestamp against, defaults to current time
224
-	 * @return string	Dates returned are:
225
-	 * 				< 60 sec	=> seconds ago
226
-	 * 				<  1 hour	=> n minutes ago
227
-	 * 				<  1 day	=> n hours ago
228
-	 * 				<  1 month	=> Yesterday, n days ago
229
-	 * 				< 13 month	=> last month, n months ago
230
-	 * 				>= 13 month	=> last year, n years ago
231
-	 * @param \OCP\IL10N	$l			The locale to use
232
-	 * @return string Formatted time span
233
-	 */
234
-	public function formatTimeSpan($timestamp, $baseTimestamp = null, \OCP\IL10N $l = null) {
235
-		$l = $this->getLocale($l);
236
-		$timestamp = $this->getDateTime($timestamp);
237
-		if ($baseTimestamp === null) {
238
-			$baseTimestamp = time();
239
-		}
240
-		$baseTimestamp = $this->getDateTime($baseTimestamp);
219
+    /**
220
+     * Gives the relative past time of the timestamp
221
+     *
222
+     * @param int|\DateTime	$timestamp	Either a Unix timestamp or DateTime object
223
+     * @param int|\DateTime	$baseTimestamp	Timestamp to compare $timestamp against, defaults to current time
224
+     * @return string	Dates returned are:
225
+     * 				< 60 sec	=> seconds ago
226
+     * 				<  1 hour	=> n minutes ago
227
+     * 				<  1 day	=> n hours ago
228
+     * 				<  1 month	=> Yesterday, n days ago
229
+     * 				< 13 month	=> last month, n months ago
230
+     * 				>= 13 month	=> last year, n years ago
231
+     * @param \OCP\IL10N	$l			The locale to use
232
+     * @return string Formatted time span
233
+     */
234
+    public function formatTimeSpan($timestamp, $baseTimestamp = null, \OCP\IL10N $l = null) {
235
+        $l = $this->getLocale($l);
236
+        $timestamp = $this->getDateTime($timestamp);
237
+        if ($baseTimestamp === null) {
238
+            $baseTimestamp = time();
239
+        }
240
+        $baseTimestamp = $this->getDateTime($baseTimestamp);
241 241
 
242
-		$diff = $timestamp->diff($baseTimestamp);
243
-		if ($diff->y > 0 || $diff->m > 0 || $diff->d > 0) {
244
-			return $this->formatDateSpan($timestamp, $baseTimestamp, $l);
245
-		}
242
+        $diff = $timestamp->diff($baseTimestamp);
243
+        if ($diff->y > 0 || $diff->m > 0 || $diff->d > 0) {
244
+            return $this->formatDateSpan($timestamp, $baseTimestamp, $l);
245
+        }
246 246
 
247
-		if ($diff->h > 0) {
248
-			if ($timestamp > $baseTimestamp) {
249
-				return $l->n('in %n hour', 'in %n hours', $diff->h);
250
-			} else {
251
-				return $l->n('%n hour ago', '%n hours ago', $diff->h);
252
-			}
253
-		} elseif ($diff->i > 0) {
254
-			if ($timestamp > $baseTimestamp) {
255
-				return $l->n('in %n minute', 'in %n minutes', $diff->i);
256
-			} else {
257
-				return $l->n('%n minute ago', '%n minutes ago', $diff->i);
258
-			}
259
-		}
260
-		if ($timestamp > $baseTimestamp) {
261
-			return $l->t('in a few seconds');
262
-		} else {
263
-			return $l->t('seconds ago');
264
-		}
265
-	}
247
+        if ($diff->h > 0) {
248
+            if ($timestamp > $baseTimestamp) {
249
+                return $l->n('in %n hour', 'in %n hours', $diff->h);
250
+            } else {
251
+                return $l->n('%n hour ago', '%n hours ago', $diff->h);
252
+            }
253
+        } elseif ($diff->i > 0) {
254
+            if ($timestamp > $baseTimestamp) {
255
+                return $l->n('in %n minute', 'in %n minutes', $diff->i);
256
+            } else {
257
+                return $l->n('%n minute ago', '%n minutes ago', $diff->i);
258
+            }
259
+        }
260
+        if ($timestamp > $baseTimestamp) {
261
+            return $l->t('in a few seconds');
262
+        } else {
263
+            return $l->t('seconds ago');
264
+        }
265
+    }
266 266
 
267
-	/**
268
-	 * Formats the date and time of the given timestamp
269
-	 *
270
-	 * @param int|\DateTime $timestamp	Either a Unix timestamp or DateTime object
271
-	 * @param string		$formatDate		See formatDate() for description
272
-	 * @param string		$formatTime		See formatTime() for description
273
-	 * @param \DateTimeZone	$timeZone	The timezone to use
274
-	 * @param \OCP\IL10N	$l			The locale to use
275
-	 * @return string Formatted date and time string
276
-	 */
277
-	public function formatDateTime($timestamp, $formatDate = 'long', $formatTime = 'medium', \DateTimeZone $timeZone = null, \OCP\IL10N $l = null) {
278
-		return $this->format($timestamp, 'datetime', $formatDate . '|' . $formatTime, $timeZone, $l);
279
-	}
267
+    /**
268
+     * Formats the date and time of the given timestamp
269
+     *
270
+     * @param int|\DateTime $timestamp	Either a Unix timestamp or DateTime object
271
+     * @param string		$formatDate		See formatDate() for description
272
+     * @param string		$formatTime		See formatTime() for description
273
+     * @param \DateTimeZone	$timeZone	The timezone to use
274
+     * @param \OCP\IL10N	$l			The locale to use
275
+     * @return string Formatted date and time string
276
+     */
277
+    public function formatDateTime($timestamp, $formatDate = 'long', $formatTime = 'medium', \DateTimeZone $timeZone = null, \OCP\IL10N $l = null) {
278
+        return $this->format($timestamp, 'datetime', $formatDate . '|' . $formatTime, $timeZone, $l);
279
+    }
280 280
 
281
-	/**
282
-	 * Formats the date and time of the given timestamp
283
-	 *
284
-	 * @param int|\DateTime $timestamp	Either a Unix timestamp or DateTime object
285
-	 * @param string	$formatDate		See formatDate() for description
286
-	 * 					Uses 'Today', 'Yesterday' and 'Tomorrow' when applicable
287
-	 * @param string	$formatTime		See formatTime() for description
288
-	 * @param \DateTimeZone	$timeZone	The timezone to use
289
-	 * @param \OCP\IL10N	$l			The locale to use
290
-	 * @return string Formatted relative date and time string
291
-	 */
292
-	public function formatDateTimeRelativeDay($timestamp, $formatDate = 'long', $formatTime = 'medium', \DateTimeZone $timeZone = null, \OCP\IL10N $l = null) {
293
-		if (substr($formatDate, -1) !== '^' && substr($formatDate, -1) !== '*') {
294
-			$formatDate .= '^';
295
-		}
281
+    /**
282
+     * Formats the date and time of the given timestamp
283
+     *
284
+     * @param int|\DateTime $timestamp	Either a Unix timestamp or DateTime object
285
+     * @param string	$formatDate		See formatDate() for description
286
+     * 					Uses 'Today', 'Yesterday' and 'Tomorrow' when applicable
287
+     * @param string	$formatTime		See formatTime() for description
288
+     * @param \DateTimeZone	$timeZone	The timezone to use
289
+     * @param \OCP\IL10N	$l			The locale to use
290
+     * @return string Formatted relative date and time string
291
+     */
292
+    public function formatDateTimeRelativeDay($timestamp, $formatDate = 'long', $formatTime = 'medium', \DateTimeZone $timeZone = null, \OCP\IL10N $l = null) {
293
+        if (substr($formatDate, -1) !== '^' && substr($formatDate, -1) !== '*') {
294
+            $formatDate .= '^';
295
+        }
296 296
 
297
-		return $this->format($timestamp, 'datetime', $formatDate . '|' . $formatTime, $timeZone, $l);
298
-	}
297
+        return $this->format($timestamp, 'datetime', $formatDate . '|' . $formatTime, $timeZone, $l);
298
+    }
299 299
 
300
-	/**
301
-	 * Formats the date and time of the given timestamp
302
-	 *
303
-	 * @param int|\DateTime $timestamp	Either a Unix timestamp or DateTime object
304
-	 * @param string		$type		One of 'date', 'datetime' or 'time'
305
-	 * @param string		$format		Format string
306
-	 * @param \DateTimeZone	$timeZone	The timezone to use
307
-	 * @param \OCP\IL10N	$l			The locale to use
308
-	 * @return string Formatted date and time string
309
-	 */
310
-	protected function format($timestamp, $type, $format, \DateTimeZone $timeZone = null, \OCP\IL10N $l = null) {
311
-		$l = $this->getLocale($l);
312
-		$timeZone = $this->getTimeZone($timeZone);
313
-		$timestamp = $this->getDateTime($timestamp, $timeZone);
300
+    /**
301
+     * Formats the date and time of the given timestamp
302
+     *
303
+     * @param int|\DateTime $timestamp	Either a Unix timestamp or DateTime object
304
+     * @param string		$type		One of 'date', 'datetime' or 'time'
305
+     * @param string		$format		Format string
306
+     * @param \DateTimeZone	$timeZone	The timezone to use
307
+     * @param \OCP\IL10N	$l			The locale to use
308
+     * @return string Formatted date and time string
309
+     */
310
+    protected function format($timestamp, $type, $format, \DateTimeZone $timeZone = null, \OCP\IL10N $l = null) {
311
+        $l = $this->getLocale($l);
312
+        $timeZone = $this->getTimeZone($timeZone);
313
+        $timestamp = $this->getDateTime($timestamp, $timeZone);
314 314
 
315
-		return $l->l($type, $timestamp, [
316
-			'width' => $format,
317
-		]);
318
-	}
315
+        return $l->l($type, $timestamp, [
316
+            'width' => $format,
317
+        ]);
318
+    }
319 319
 }
Please login to merge, or discard this patch.