Passed
Push — master ( 1371da...b1deeb )
by Cody
03:15
created

StaticFiles   A

Complexity

Total Complexity 8

Size/Duplication

Total Lines 38
Duplicated Lines 0 %

Importance

Changes 2
Bugs 0 Features 0
Metric Value
eloc 15
dl 0
loc 38
rs 10
c 2
b 0
f 0
wmc 8

5 Methods

Rating   Name   Duplication   Size   Complexity  
A jsTag() 0 13 3
A cssTag() 0 5 2
A errorMessage() 0 3 1
A noticeMessage() 0 3 1
A warningMessage() 0 3 1
1
<?php
2
3
declare(strict_types=1);
4
5
namespace RssApp\Components\Twig\Filters;
6
7
class StaticFiles
8
{
9
10
    public static function jsTag(string $filename): string
11
    {
12
        $query = "";
13
        if (!(strpos($filename, "?") === false)) {
14
            $query = substr($filename, strpos($filename, "?") + 1);
15
            $filename = substr($filename, 0, strpos($filename, "?"));
16
        }
17
        $timestamp = filemtime(BASEPATH.DS.'public'.DS.'js'.DS.$filename);
18
        if ($query) {
19
            $timestamp .= "&$query";
20
        }
21
22
        return "<script type=\"text/javascript\" charset=\"utf-8\" src=\"/js/$filename?$timestamp\"></script>\n";
23
    }
24
25
    public static function cssTag(string $filename): string
26
    {
27
        $timestamp = filemtime(BASEPATH.DS.'public'.DS.'css'.DS.$filename);
28
        $id_part = $id ? "id=\"$id\"" : "";
0 ignored issues
show
Comprehensibility Best Practice introduced by
The variable $id seems to be never defined.
Loading history...
29
        return "<link rel=\"stylesheet\" $id_part type=\"text/css\" data-orig-href=\"/css/$filename\" href=\"/css/$filename?$timestamp\"/>\n";
30
    }
31
32
    public static function errorMessage(string $message)
33
    {
34
        return '<div class="alert alert-danger">'.$message.'</div>';
35
    }
36
37
    public static function warningMessage(string $message)
38
    {
39
        return '<div class="alert">'.$message.'</div>';
40
    }
41
42
    public static function noticeMessage(string $message)
43
    {
44
        return '<div class="alert-info">'.$message.'</div>';
45
    }
46
}
47