Passed
Pull Request — master (#40)
by
unknown
03:11
created

web::footer()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 1
eloc 2
c 1
b 0
f 0
nc 1
nop 0
dl 0
loc 4
rs 10
1
<?php
2
namespace RoutesController;
3
4
class web
5
{
6
    public $cousers = [
7
        [
8
            "id" => 2101,
9
            "title" => "Learn HTML",
10
            "description" => "HTML is the standard markup language for Web pages. With HTML you can create your own Website."
11
        ],
12
        [
13
            "id" => 2102,
14
            "title" => "Learn CSS",
15
            "description" => "CSS is the language we use to style an HTML document. CSS describes how HTML elements should be displayed."
16
        ],
17
        [
18
            "id" => 2103,
19
            "title" => "Learn JavaScript",
20
            "description" => "JavaScript is the programming language of the Web."
21
        ],
22
        [
23
            "id" => 2104,
24
            "title" => "Learn PHP",
25
            "description" => "PHP is a server scripting language, and a powerful tool for making dynamic and interactive Web pages."
26
        ]
27
    ];
28
29
    public function __construct($router)
30
    {
31
        $this->router = $router;
0 ignored issues
show
Bug Best Practice introduced by
The property router does not exist. Although not strictly required by PHP, it is generally a best practice to declare properties explicitly.
Loading history...
32
    }
33
    
34
    // functions utils
35
    public function header(String $title): void
36
    {
37
        echo("<h1>$title - Couses123</h1>");
38
        echo("<div style='display: flex'>");
39
        echo("<div style='margin-right: 10px'><a href='". URL_BASE . "/'>Home</a></div>");
40
        echo("<div style='margin-right: 10px'><a href='". URL_BASE . "/courses'>Courses</a></div>");
41
        echo("<div style='margin-right: 10px'><a href='". URL_BASE . "/about'>About</a></div>");
42
        echo("<div style='margin-right: 10px'><a href='". URL_BASE . "/contact'>Contact</a></div>");
43
        echo("</div>");
44
        echo("<hr/>");
45
    }
46
47
    public function footer(): void
48
    {
49
        echo("<hr/>");
50
        echo("<div style='text-align: center'><span>Courses123 - Footer<span></div>");
51
    }
52
53
    public function getCourse($id)
54
    {
55
        foreach($this->cousers as $course) {
56
            if(array_key_exists('id', $course) && $course['id'] == $id) return $course;
57
        }
58
        return null;
59
    }
60
    // 
61
62
    public function home(): void
63
    {
64
        $this->header("Home");
65
        echo("<h2>Page Home</h2>");
66
        echo("<p>Lorem ipsum dolor sit, amet consectetur adipisicing elit. Aut doloribus esse ea est itaque enim tenetur vero nulla in ut eius qui, veritatis nam, nisi labore aliquam sequi aspernatur ducimus.</p>");
67
        echo("<p>Lorem ipsum dolor, sit amet consectetur adipisicing elit. Veniam exercitationem, vel at officia sed quos. In ea et vitae cupiditate a nobis excepturi! Illum porro eius iusto ducimus, deserunt dolorem.</p>");
68
        $this->footer();
69
    }
70
71
    public function about(): void
72
    {
73
        $this->header("About");
74
        echo("<h2>Page About</h2>");
75
        echo("<p>Lorem ipsum dolor sit, amet consectetur adipisicing elit. Aut doloribus esse ea est itaque enim tenetur vero nulla in ut eius qui, veritatis nam, nisi labore aliquam sequi aspernatur ducimus.</p>");
76
        echo("<p>Lorem ipsum dolor, sit amet consectetur adipisicing elit. Veniam exercitationem, vel at officia sed quos. In ea et vitae cupiditate a nobis excepturi! Illum porro eius iusto ducimus, deserunt dolorem.</p>");
77
        $this->footer();
78
    }
79
80
    public function contact(): void
81
    {
82
        $this->header("Contact");
83
        echo("<h2>Page Contact</h2>");
84
        echo("<p>Lorem ipsum dolor sit, amet consectetur adipisicing elit. Aut doloribus esse ea est itaque enim tenetur vero nulla in ut eius qui, veritatis nam, nisi labore aliquam sequi aspernatur ducimus.</p>");
85
        echo("<p>Lorem ipsum dolor, sit amet consectetur adipisicing elit. Veniam exercitationem, vel at officia sed quos. In ea et vitae cupiditate a nobis excepturi! Illum porro eius iusto ducimus, deserunt dolorem.</p>");
86
        $this->footer();
87
    }
88
89
    public function courses(): void
90
    {
91
        $this->header("Courses");
92
        echo("<h2>Page Courses</h2>");
93
94
        echo("<div style='margin-right: 10px'>COURSE: <a href='". URL_BASE . "/course/2101'>Course HTML</a></div>");
95
        echo("<div style='margin-right: 10px'>COURSE: <a href='". URL_BASE . "/course/2102'>Course CSS</a></div>");
96
        echo("<div style='margin-right: 10px'>COURSE: <a href='". URL_BASE . "/course/2103'>Course JavaScript</a></div>");
97
        echo("<div style='margin-right: 10px'>COURSE: <a href='". URL_BASE . "/course/2104'>Course PHP</a></div>");
98
99
        echo("<p>Lorem ipsum dolor sit, amet consectetur adipisicing elit. Aut doloribus esse ea est itaque enim tenetur vero nulla in ut eius qui, veritatis nam, nisi labore aliquam sequi aspernatur ducimus.</p>");
100
        echo("<p>Lorem ipsum dolor, sit amet consectetur adipisicing elit. Veniam exercitationem, vel at officia sed quos. In ea et vitae cupiditate a nobis excepturi! Illum porro eius iusto ducimus, deserunt dolorem.</p>");
101
        $this->footer();
102
    }
103
104
    public function course($req): void
105
    {
106
        $id = $req['id'];
107
        $course = $this->getCourse($id);
108
        
109
        $this->header("Courses");
110
111
        if($course !== null){
112
            echo("<h2>" . $course['title'] . "</h2>");
113
            echo "<p>". $course['description'] ."</p>";
114
            echo "<p>Lorem ipsum dolor sit amet consectetur adipisicing elit. A nihil ea molestiae, labore eligendi neque doloremque ab odit, harum officia deserunt, perspiciatis cupiditate pariatur. Eum harum mollitia dolor nam a.</p>";
115
        } else {
116
            header("Location: ". URL_BASE ."/error/404");
117
        }
118
        $this->footer();
119
    }
120
121
    public function http_404(): void
122
    {
123
        $this->header("Error 404");
124
        echo("<h2>Desculpe essa página não existe</h2>");
125
        echo("<p>Lorem ipsum dolor sit, amet consectetur adipisicing elit. Aut doloribus esse ea est itaque enim tenetur vero nulla in ut eius qui, veritatis nam, nisi labore aliquam sequi aspernatur ducimus.</p>");
126
        echo("<p>Lorem ipsum dolor, sit amet consectetur adipisicing elit. Veniam exercitationem, vel at officia sed quos. In ea et vitae cupiditate a nobis excepturi! Illum porro eius iusto ducimus, deserunt dolorem.</p>");
127
        $this->footer();
128
    }
129
130
    public function redirect(): void
131
    {
132
        $this->router->redirect("name.hello");
133
    }
134
}
135