@@ -90,9 +90,9 @@ discard block |
||
90 | 90 | string $sort = 'hitCount|desc', |
91 | 91 | int $page = 1, |
92 | 92 | int $per_page = 20, |
93 | - $filter = '', |
|
94 | - $siteId = 0, |
|
95 | - $handled = 'all' |
|
93 | + $filter = '', |
|
94 | + $siteId = 0, |
|
95 | + $handled = 'all' |
|
96 | 96 | ): Response |
97 | 97 | { |
98 | 98 | PermissionHelper::controllerPermissionCheck('retour:dashboard'); |
@@ -186,9 +186,9 @@ discard block |
||
186 | 186 | string $sort = 'hitCount|desc', |
187 | 187 | int $page = 1, |
188 | 188 | int $per_page = 20, |
189 | - $filter = '', |
|
190 | - $siteId = 0, |
|
191 | - $shortLinks = false |
|
189 | + $filter = '', |
|
190 | + $siteId = 0, |
|
191 | + $shortLinks = false |
|
192 | 192 | ): Response |
193 | 193 | { |
194 | 194 | PermissionHelper::controllerPermissionCheck('retour:redirects'); |
@@ -122,7 +122,7 @@ discard block |
||
122 | 122 | ->orderBy([$sortField => $sortType]) |
123 | 123 | ->filterWhere(['like', 'redirectSrcUrl', $filter]) |
124 | 124 | ->orFilterWhere(['like', 'referrerUrl', $filter]); |
125 | - if ((int)$siteId !== 0) { |
|
125 | + if ((int) $siteId !== 0) { |
|
126 | 126 | $query->andWhere(['siteId' => $siteId]); |
127 | 127 | } |
128 | 128 | if ($handled !== 'all') { |
@@ -134,7 +134,7 @@ discard block |
||
134 | 134 | foreach ($stats as &$stat) { |
135 | 135 | $stat['addLink'] = ''; |
136 | 136 | if (!$stat['handledByRetour']) { |
137 | - $encodedUrl = urlencode('/' . ltrim($stat['redirectSrcUrl'], '/')); |
|
137 | + $encodedUrl = urlencode('/'.ltrim($stat['redirectSrcUrl'], '/')); |
|
138 | 138 | // Add the siteId to the URL, but keep the current behavior of passing in siteId=0 for "all" |
139 | 139 | $statSiteId = $stat['siteId'] ?? 0; |
140 | 140 | try { |
@@ -142,7 +142,7 @@ discard block |
||
142 | 142 | } catch (SiteNotFoundException $e) { |
143 | 143 | $primarySite = null; |
144 | 144 | } |
145 | - if ($primarySite !== null && $statSiteId == (int)$primarySite->id) { |
|
145 | + if ($primarySite !== null && $statSiteId == (int) $primarySite->id) { |
|
146 | 146 | $statSiteId = 0; |
147 | 147 | } |
148 | 148 | $stat['addLink'] = UrlHelper::cpUrl('retour/add-redirect', [ |
@@ -218,7 +218,7 @@ discard block |
||
218 | 218 | ->orderBy([$sortField => $sortType]) |
219 | 219 | ->filterWhere(['like', 'redirectSrcUrl', $filter]) |
220 | 220 | ->orFilterWhere(['like', 'redirectDestUrl', $filter]); |
221 | - if ((int)$siteId !== 0) { |
|
221 | + if ((int) $siteId !== 0) { |
|
222 | 222 | $query->andWhere(['siteId' => $siteId]); |
223 | 223 | } |
224 | 224 | if ($shortLinks) { |
@@ -245,7 +245,7 @@ discard block |
||
245 | 245 | } |
246 | 246 | } |
247 | 247 | |
248 | - $redirect['editLink'] = UrlHelper::cpUrl('retour/edit-redirect/' . $redirect['id']); |
|
248 | + $redirect['editLink'] = UrlHelper::cpUrl('retour/edit-redirect/'.$redirect['id']); |
|
249 | 249 | } |
250 | 250 | // Format the data for the API |
251 | 251 | if ($redirects) { |
@@ -81,7 +81,7 @@ discard block |
||
81 | 81 | $variables['docsUrl'] = self::DOCUMENTATION_URL; |
82 | 82 | $variables['pluginName'] = $pluginName; |
83 | 83 | $variables['title'] = $templateTitle; |
84 | - $siteHandleUri = Craft::$app->isMultiSite ? '/' . $siteHandle : ''; |
|
84 | + $siteHandleUri = Craft::$app->isMultiSite ? '/'.$siteHandle : ''; |
|
85 | 85 | $variables['crumbs'] = [ |
86 | 86 | [ |
87 | 87 | 'label' => $pluginName, |
@@ -89,7 +89,7 @@ discard block |
||
89 | 89 | ], |
90 | 90 | [ |
91 | 91 | 'label' => $templateTitle, |
92 | - 'url' => UrlHelper::cpUrl('retour/redirects' . $siteHandleUri), |
|
92 | + 'url' => UrlHelper::cpUrl('retour/redirects'.$siteHandleUri), |
|
93 | 93 | ], |
94 | 94 | ]; |
95 | 95 | $variables['docTitle'] = "{$pluginName} - {$templateTitle}"; |
@@ -150,13 +150,13 @@ discard block |
||
150 | 150 | if ($redirect->siteId) { |
151 | 151 | $site = $sites->getSiteById($redirect->siteId); |
152 | 152 | if ($site) { |
153 | - MultiSiteHelper::requirePermission('editSite:' . $site->uid); |
|
153 | + MultiSiteHelper::requirePermission('editSite:'.$site->uid); |
|
154 | 154 | } |
155 | 155 | } |
156 | 156 | if ($siteId) { |
157 | 157 | $site = $sites->getSiteById($siteId); |
158 | 158 | if ($site) { |
159 | - MultiSiteHelper::requirePermission('editSite:' . $site->uid); |
|
159 | + MultiSiteHelper::requirePermission('editSite:'.$site->uid); |
|
160 | 160 | } |
161 | 161 | } |
162 | 162 | $pluginName = Retour::$settings->pluginName; |
@@ -192,7 +192,7 @@ discard block |
||
192 | 192 | ], |
193 | 193 | [ |
194 | 194 | 'label' => $templateTitle, |
195 | - 'url' => UrlHelper::cpUrl('retour/edit-redirect/' . $redirectId), |
|
195 | + 'url' => UrlHelper::cpUrl('retour/edit-redirect/'.$redirectId), |
|
196 | 196 | ], |
197 | 197 | ]; |
198 | 198 | $variables['docTitle'] = "{$pluginName} - Redirects - {$templateTitle}"; |
@@ -250,7 +250,7 @@ discard block |
||
250 | 250 | if ($redirectConfig === null) { |
251 | 251 | throw new NotFoundHttpException('Redirect not found'); |
252 | 252 | } |
253 | - $redirectConfig['id'] = (int)$redirectConfig['id']; |
|
253 | + $redirectConfig['id'] = (int) $redirectConfig['id']; |
|
254 | 254 | // Handle enforcing trailing slashes |
255 | 255 | $generalConfig = Craft::$app->getConfig()->getGeneral(); |
256 | 256 | if ($generalConfig->addTrailingSlashesToUrls && $redirectConfig['redirectMatchType'] === 'exactmatch') { |
@@ -334,7 +334,7 @@ discard block |
||
334 | 334 | $variables['docsUrl'] = self::DOCUMENTATION_URL; |
335 | 335 | $variables['pluginName'] = $pluginName; |
336 | 336 | $variables['title'] = $templateTitle; |
337 | - $siteHandleUri = Craft::$app->isMultiSite ? '/' . $siteHandle : ''; |
|
337 | + $siteHandleUri = Craft::$app->isMultiSite ? '/'.$siteHandle : ''; |
|
338 | 338 | $variables['crumbs'] = [ |
339 | 339 | [ |
340 | 340 | 'label' => $pluginName, |
@@ -342,7 +342,7 @@ discard block |
||
342 | 342 | ], |
343 | 343 | [ |
344 | 344 | 'label' => $templateTitle, |
345 | - 'url' => UrlHelper::cpUrl('retour/shortlinks' . $siteHandleUri), |
|
345 | + 'url' => UrlHelper::cpUrl('retour/shortlinks'.$siteHandleUri), |
|
346 | 346 | ], |
347 | 347 | ]; |
348 | 348 | $variables['docTitle'] = "{$pluginName} - {$templateTitle}"; |
@@ -397,13 +397,13 @@ discard block |
||
397 | 397 | if (!preg_match('/\.[^\/]+$/', $url) && strpos($url, '?') === false) { |
398 | 398 | // If it's a root relative URL, assume it's a site URL |
399 | 399 | if (UrlHelper::isRootRelativeUrl($url)) { |
400 | - return rtrim($url, '/') . '/'; |
|
400 | + return rtrim($url, '/').'/'; |
|
401 | 401 | } |
402 | 402 | // If the URL matches any of the site's base URLs, assume it's a site URL |
403 | 403 | $sites = Craft::$app->getSites()->getAllSites(); |
404 | 404 | foreach ($sites as $site) { |
405 | 405 | if (strpos($url, $site->getBaseUrl()) === 0) { |
406 | - return rtrim($url, '/') . '/'; |
|
406 | + return rtrim($url, '/').'/'; |
|
407 | 407 | } |
408 | 408 | } |
409 | 409 | } |
@@ -193,7 +193,7 @@ discard block |
||
193 | 193 | $variables['docsUrl'] = self::DOCUMENTATION_URL; |
194 | 194 | $variables['pluginName'] = $pluginName; |
195 | 195 | $variables['title'] = $templateTitle; |
196 | - $siteHandleUri = Craft::$app->isMultiSite ? '/' . $siteHandle : ''; |
|
196 | + $siteHandleUri = Craft::$app->isMultiSite ? '/'.$siteHandle : ''; |
|
197 | 197 | $variables['crumbs'] = [ |
198 | 198 | [ |
199 | 199 | 'label' => $pluginName, |
@@ -201,7 +201,7 @@ discard block |
||
201 | 201 | ], |
202 | 202 | [ |
203 | 203 | 'label' => 'Redirects', |
204 | - 'url' => UrlHelper::cpUrl('retour/redirects' . $siteHandleUri), |
|
204 | + 'url' => UrlHelper::cpUrl('retour/redirects'.$siteHandleUri), |
|
205 | 205 | ], |
206 | 206 | ]; |
207 | 207 | $variables['docTitle'] = "{$pluginName} - Redirects - {$templateTitle}"; |
@@ -211,7 +211,7 @@ discard block |
||
211 | 211 | $file = UploadedFile::getInstanceByName('file'); |
212 | 212 | if ($file !== null) { |
213 | 213 | $filename = uniqid($file->name, true); |
214 | - $filePath = Craft::$app->getPath()->getTempPath() . DIRECTORY_SEPARATOR . $filename; |
|
214 | + $filePath = Craft::$app->getPath()->getTempPath().DIRECTORY_SEPARATOR.$filename; |
|
215 | 215 | $file->saveAs($filePath, false); |
216 | 216 | // Also save the file to the cache as a backup way to access it |
217 | 217 | $cache = Craft::$app->getCache(); |
@@ -339,7 +339,7 @@ discard block |
||
339 | 339 | } |
340 | 340 | $csv->insertOne(array_values($columns)); |
341 | 341 | $csv->insertAll($data); |
342 | - $csv->output($filename . '.csv'); |
|
342 | + $csv->output($filename.'.csv'); |
|
343 | 343 | exit(0); |
344 | 344 | } |
345 | 345 | |
@@ -355,7 +355,7 @@ discard block |
||
355 | 355 | $csv->setOffset(1); |
356 | 356 | $columns = ArrayHelper::filterEmptyStringsFromArray($columns); |
357 | 357 | $rowIndex = 1; |
358 | - $csv->each(function ($row) use ($headers, $columns, &$rowIndex, &$hasErrors) { |
|
358 | + $csv->each(function($row) use ($headers, $columns, &$rowIndex, &$hasErrors) { |
|
359 | 359 | $redirectConfig = [ |
360 | 360 | 'id' => 0, |
361 | 361 | ]; |
@@ -369,9 +369,9 @@ discard block |
||
369 | 369 | $index++; |
370 | 370 | } |
371 | 371 | $redirectDump = print_r($redirectConfig, true); |
372 | - Craft::debug("-> ROW #$rowIndex contents: " . $redirectDump, __METHOD__); |
|
372 | + Craft::debug("-> ROW #$rowIndex contents: ".$redirectDump, __METHOD__); |
|
373 | 373 | if (!Retour::$plugin->redirects->saveRedirect($redirectConfig)) { |
374 | - Craft::info("-> ROW #$rowIndex contents: " . $redirectDump, __METHOD__); |
|
374 | + Craft::info("-> ROW #$rowIndex contents: ".$redirectDump, __METHOD__); |
|
375 | 375 | $hasErrors = true; |
376 | 376 | } |
377 | 377 | $rowIndex++; |
@@ -411,9 +411,9 @@ discard block |
||
411 | 411 | $index++; |
412 | 412 | } |
413 | 413 | $redirectDump = print_r($redirectConfig, true); |
414 | - Craft::debug("-> ROW #$rowIndex contents: " . $redirectDump, __METHOD__); |
|
414 | + Craft::debug("-> ROW #$rowIndex contents: ".$redirectDump, __METHOD__); |
|
415 | 415 | if (!Retour::$plugin->redirects->saveRedirect($redirectConfig)) { |
416 | - Craft::info("-> ROW #$rowIndex contents: " . $redirectDump, __METHOD__); |
|
416 | + Craft::info("-> ROW #$rowIndex contents: ".$redirectDump, __METHOD__); |
|
417 | 417 | $hasErrors = true; |
418 | 418 | } |
419 | 419 | $rowIndex++; |
@@ -256,7 +256,7 @@ discard block |
||
256 | 256 | try { |
257 | 257 | $siteId = $redirect['siteId'] ?? null; |
258 | 258 | if ($siteId !== null) { |
259 | - $siteId = (int)$siteId; |
|
259 | + $siteId = (int) $siteId; |
|
260 | 260 | } |
261 | 261 | $dest = UrlHelper::siteUrl($dest, null, null, $siteId); |
262 | 262 | } catch (\yii\base\Exception $e) { |
@@ -271,7 +271,7 @@ discard block |
||
271 | 271 | // That's ok |
272 | 272 | } |
273 | 273 | if (!empty($queryString)) { |
274 | - $dest = strtok($dest, '?') . '?' . $queryString; |
|
274 | + $dest = strtok($dest, '?').'?'.$queryString; |
|
275 | 275 | } |
276 | 276 | } |
277 | 277 | $redirectMatchType = $redirect['redirectMatchType'] ?? 'notfound'; |
@@ -388,7 +388,7 @@ discard block |
||
388 | 388 | public function getRedirectFromCache($url, int $siteId = 0) |
389 | 389 | { |
390 | 390 | $cache = Craft::$app->getCache(); |
391 | - $cacheKey = $this::CACHE_KEY . md5($url) . $siteId; |
|
391 | + $cacheKey = $this::CACHE_KEY.md5($url).$siteId; |
|
392 | 392 | $redirect = $cache->get($cacheKey); |
393 | 393 | Craft::info( |
394 | 394 | Craft::t( |
@@ -416,12 +416,12 @@ discard block |
||
416 | 416 | } catch (SiteNotFoundException $e) { |
417 | 417 | $siteId = 1; |
418 | 418 | } |
419 | - $cacheKey = $this::CACHE_KEY . md5($url) . $siteId; |
|
419 | + $cacheKey = $this::CACHE_KEY.md5($url).$siteId; |
|
420 | 420 | // Create the dependency tags |
421 | 421 | $dependency = new TagDependency([ |
422 | 422 | 'tags' => [ |
423 | 423 | $this::GLOBAL_REDIRECTS_CACHE_TAG, |
424 | - $this::GLOBAL_REDIRECTS_CACHE_TAG . $siteId, |
|
424 | + $this::GLOBAL_REDIRECTS_CACHE_TAG.$siteId, |
|
425 | 425 | ], |
426 | 426 | ]); |
427 | 427 | $cache->set($cacheKey, $redirect, Retour::$cacheDuration, $dependency); |
@@ -461,7 +461,7 @@ discard block |
||
461 | 461 | foreach ($redirects as $redirect) { |
462 | 462 | // Figure out what type of source matching to do |
463 | 463 | $redirectSrcMatch = $redirect['redirectSrcMatch'] ?? 'pathonly'; |
464 | - $redirectEnabled = (bool)$redirect['enabled']; |
|
464 | + $redirectEnabled = (bool) $redirect['enabled']; |
|
465 | 465 | if ($redirectEnabled === true) { |
466 | 466 | switch ($redirectSrcMatch) { |
467 | 467 | case 'pathonly': |
@@ -502,12 +502,12 @@ discard block |
||
502 | 502 | |
503 | 503 | // Do a regex match |
504 | 504 | case 'regexmatch': |
505 | - $matchRegEx = '`' . $redirect['redirectSrcUrlParsed'] . '`i'; |
|
505 | + $matchRegEx = '`'.$redirect['redirectSrcUrlParsed'].'`i'; |
|
506 | 506 | try { |
507 | 507 | if (preg_match($matchRegEx, $url) === 1) { |
508 | 508 | $this->incrementRedirectHitCount($redirect); |
509 | 509 | // If we're not associated with an EntryID, handle capture group replacement |
510 | - if ((int)$redirect['associatedElementId'] === 0) { |
|
510 | + if ((int) $redirect['associatedElementId'] === 0) { |
|
511 | 511 | $redirect['redirectDestUrl'] = preg_replace( |
512 | 512 | $matchRegEx, |
513 | 513 | $redirect['redirectDestUrl'], |
@@ -535,7 +535,7 @@ discard block |
||
535 | 535 | } |
536 | 536 | } catch (\Exception $e) { |
537 | 537 | // That's fine |
538 | - Craft::error('Invalid Redirect Regex: ' . $matchRegEx, __METHOD__); |
|
538 | + Craft::error('Invalid Redirect Regex: '.$matchRegEx, __METHOD__); |
|
539 | 539 | } |
540 | 540 | |
541 | 541 | break; |
@@ -643,7 +643,7 @@ discard block |
||
643 | 643 | foreach (Craft::$app->getPlugins()->getAllPlugins() as $plugin) { |
644 | 644 | /** @var Plugin $plugin */ |
645 | 645 | if (method_exists($plugin, 'retourMatch')) { |
646 | - $result[$plugin->getHandle()] = $plugin->name . Craft::t('retour', ' Match'); |
|
646 | + $result[$plugin->getHandle()] = $plugin->name.Craft::t('retour', ' Match'); |
|
647 | 647 | } |
648 | 648 | } |
649 | 649 | |
@@ -912,7 +912,7 @@ discard block |
||
912 | 912 | 'id' => $redirectConfig['id'], |
913 | 913 | ] |
914 | 914 | )->execute(); |
915 | - Craft::debug('Rows affected: ' . $rowsAffected, __METHOD__); |
|
915 | + Craft::debug('Rows affected: '.$rowsAffected, __METHOD__); |
|
916 | 916 | } catch (\Exception $e) { |
917 | 917 | Craft::error($e->getMessage(), __METHOD__); |
918 | 918 | } |
@@ -1043,7 +1043,7 @@ discard block |
||
1043 | 1043 | // Get the validated model attributes and save them to the db |
1044 | 1044 | $redirectConfig = $redirect->getAttributes(); |
1045 | 1045 | // 0 for a siteId needs to be converted to null |
1046 | - if (empty($redirectConfig['siteId']) || (int)$redirectConfig['siteId'] === 0) { |
|
1046 | + if (empty($redirectConfig['siteId']) || (int) $redirectConfig['siteId'] === 0) { |
|
1047 | 1047 | $redirectConfig['siteId'] = null; |
1048 | 1048 | } |
1049 | 1049 | // Throw an event to before saving the redirect |
@@ -1053,7 +1053,7 @@ discard block |
||
1053 | 1053 | } |
1054 | 1054 | |
1055 | 1055 | // See if a redirect exists with this source URL already |
1056 | - if ((int)$redirectConfig['id'] === 0) { |
|
1056 | + if ((int) $redirectConfig['id'] === 0) { |
|
1057 | 1057 | // Query the db table |
1058 | 1058 | $redirect = (new Query()) |
1059 | 1059 | ->from(['{{%retour_static_redirects}}']) |
@@ -1066,7 +1066,7 @@ discard block |
||
1066 | 1066 | } |
1067 | 1067 | } |
1068 | 1068 | // Trigger a 'beforeSaveRedirect' event |
1069 | - $isNew = (int)$redirectConfig['id'] === 0; |
|
1069 | + $isNew = (int) $redirectConfig['id'] === 0; |
|
1070 | 1070 | $event = new RedirectEvent([ |
1071 | 1071 | 'isNew' => $isNew, |
1072 | 1072 | 'legacyUrl' => $redirectConfig['redirectSrcUrlParsed'], |
@@ -1169,17 +1169,17 @@ discard block |
||
1169 | 1169 | */ |
1170 | 1170 | public function excludeUri($uri): bool |
1171 | 1171 | { |
1172 | - $uri = '/' . ltrim($uri, '/'); |
|
1172 | + $uri = '/'.ltrim($uri, '/'); |
|
1173 | 1173 | if (!empty(Retour::$settings->excludePatterns)) { |
1174 | 1174 | foreach (Retour::$settings->excludePatterns as $excludePattern) { |
1175 | - $pattern = '`' . $excludePattern['pattern'] . '`i'; |
|
1175 | + $pattern = '`'.$excludePattern['pattern'].'`i'; |
|
1176 | 1176 | try { |
1177 | 1177 | if (preg_match($pattern, $uri) === 1) { |
1178 | 1178 | return true; |
1179 | 1179 | } |
1180 | 1180 | } catch (\Exception $e) { |
1181 | 1181 | // That's fine |
1182 | - Craft::error('Invalid exclude URI Regex: ' . $pattern, __METHOD__); |
|
1182 | + Craft::error('Invalid exclude URI Regex: '.$pattern, __METHOD__); |
|
1183 | 1183 | } |
1184 | 1184 | } |
1185 | 1185 | } |
@@ -89,7 +89,7 @@ discard block |
||
89 | 89 | $siteId = reset($variables['enabledSiteIds']); |
90 | 90 | } |
91 | 91 | } else { |
92 | - self::requirePermission('editSite:' . $siteId); |
|
92 | + self::requirePermission('editSite:'.$siteId); |
|
93 | 93 | } |
94 | 94 | } |
95 | 95 | } |
@@ -114,7 +114,7 @@ discard block |
||
114 | 114 | } else { |
115 | 115 | $variables['sitesMenuLabel'] = Craft::t( |
116 | 116 | 'site', |
117 | - $sites->getSiteById((int)$variables['currentSiteId'])->name |
|
117 | + $sites->getSiteById((int) $variables['currentSiteId'])->name |
|
118 | 118 | ); |
119 | 119 | } |
120 | 120 | } else { |
@@ -137,7 +137,7 @@ discard block |
||
137 | 137 | if ($siteHandle !== null) { |
138 | 138 | $site = Craft::$app->getSites()->getSiteByHandle($siteHandle); |
139 | 139 | if (!$site) { |
140 | - throw new NotFoundHttpException('Invalid site handle: ' . $siteHandle); |
|
140 | + throw new NotFoundHttpException('Invalid site handle: '.$siteHandle); |
|
141 | 141 | } |
142 | 142 | $siteId = $site->id; |
143 | 143 | } else { |
@@ -60,7 +60,7 @@ |
||
60 | 60 | return; |
61 | 61 | } |
62 | 62 | // Make sure there is a leading / |
63 | - $value = '/' . ltrim($value, '/'); |
|
63 | + $value = '/'.ltrim($value, '/'); |
|
64 | 64 | $model->$attribute = $value; |
65 | 65 | } |
66 | 66 | } |
@@ -48,9 +48,9 @@ |
||
48 | 48 | |
49 | 49 | $type = GqlEntityRegistry::createEntity(self::class, new InterfaceType([ |
50 | 50 | 'name' => static::getName(), |
51 | - 'fields' => self::class . '::getFieldDefinitions', |
|
51 | + 'fields' => self::class.'::getFieldDefinitions', |
|
52 | 52 | 'description' => 'This is the interface implemented by Retour.', |
53 | - 'resolveType' => function (array $value) { |
|
53 | + 'resolveType' => function(array $value) { |
|
54 | 54 | return GqlEntityRegistry::getEntity(RetourGenerator::getName()); |
55 | 55 | }, |
56 | 56 | ])); |
@@ -84,7 +84,7 @@ discard block |
||
84 | 84 | $variables['docsUrl'] = self::DOCUMENTATION_URL; |
85 | 85 | $variables['pluginName'] = $pluginName; |
86 | 86 | $variables['title'] = $templateTitle; |
87 | - $siteHandleUri = Craft::$app->isMultiSite ? '/' . $siteHandle : ''; |
|
87 | + $siteHandleUri = Craft::$app->isMultiSite ? '/'.$siteHandle : ''; |
|
88 | 88 | $variables['crumbs'] = [ |
89 | 89 | [ |
90 | 90 | 'label' => $pluginName, |
@@ -92,7 +92,7 @@ discard block |
||
92 | 92 | ], |
93 | 93 | [ |
94 | 94 | 'label' => $templateTitle, |
95 | - 'url' => UrlHelper::cpUrl('retour/dashboard' . $siteHandleUri), |
|
95 | + 'url' => UrlHelper::cpUrl('retour/dashboard'.$siteHandleUri), |
|
96 | 96 | ], |
97 | 97 | ]; |
98 | 98 | $variables['docTitle'] = "{$pluginName} - {$templateTitle}"; |
@@ -66,13 +66,13 @@ |
||
66 | 66 | */ |
67 | 67 | public function actionTrim(): int |
68 | 68 | { |
69 | - echo Craft::t('retour', 'Trimming statistics') . PHP_EOL; |
|
69 | + echo Craft::t('retour', 'Trimming statistics').PHP_EOL; |
|
70 | 70 | $affectedRows = Retour::$plugin->statistics->trimStatistics($this->limit); |
71 | 71 | echo Craft::t( |
72 | 72 | 'retour', |
73 | 73 | 'Trimmed {rows} from retour_stats table', |
74 | 74 | ['rows' => $affectedRows] |
75 | - ) . PHP_EOL; |
|
75 | + ).PHP_EOL; |
|
76 | 76 | |
77 | 77 | return 0; |
78 | 78 | } |