@@ -24,21 +24,21 @@ |
||
24 | 24 | |
25 | 25 | self::$array['host'] = $host; |
26 | 26 | |
27 | - if ( |
|
28 | - $host == 'www.waterfallsofthekeweenaw.com' || |
|
29 | - $host == 'waterfallsofthekeweenaw.com' |
|
30 | - ) { |
|
27 | + if ( |
|
28 | + $host == 'www.waterfallsofthekeweenaw.com' || |
|
29 | + $host == 'waterfallsofthekeweenaw.com' |
|
30 | + ) { |
|
31 | 31 | self::$array['site'] = 'waterfalls'; |
32 | 32 | } else { |
33 | 33 | self::$array['site'] = substr($host, 0, strpos($host, '.')); |
34 | 34 | } |
35 | 35 | |
36 | - $base = ''; |
|
37 | - $base .= (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off') ? 'https' : 'http'; |
|
38 | - $base .= '://'; |
|
39 | - $base .= (!Loader::isLive()) ? 'dev.' : ''; |
|
40 | - $base .= $host; |
|
41 | - $base .= '/'; |
|
36 | + $base = ''; |
|
37 | + $base .= (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off') ? 'https' : 'http'; |
|
38 | + $base .= '://'; |
|
39 | + $base .= (!Loader::isLive()) ? 'dev.' : ''; |
|
40 | + $base .= $host; |
|
41 | + $base .= '/'; |
|
42 | 42 | |
43 | 43 | self::$array['base'] = $base; |
44 | 44 | self::$array['uri'] = '/' . implode('/', $uri_array); |
@@ -5,56 +5,56 @@ |
||
5 | 5 | abstract class DefaultPageController extends PageController |
6 | 6 | { |
7 | 7 | |
8 | - public function __construct() |
|
9 | - { |
|
10 | - parent::__construct(); |
|
11 | - |
|
12 | - $this->add_css('reset'); |
|
13 | - $this->add_css('portfolio'); |
|
14 | - } |
|
15 | - |
|
16 | - protected function set_body_data() |
|
17 | - { |
|
18 | - $this->set_body('header_data', [ |
|
19 | - 'menu' => $this->get_menu(), |
|
20 | - 'home_link' => Loader::getRootURL(), |
|
21 | - ]); |
|
22 | - $this->set_body('activity_array', $this->get_recent_activity()); |
|
23 | - |
|
24 | - $this->set_body_view('Page'); |
|
25 | - } |
|
26 | - |
|
27 | - protected function get_menu() |
|
28 | - { |
|
29 | - $menu = [ |
|
30 | - [ |
|
31 | - 'name' => 'About', |
|
32 | - 'link' => Loader::getRootURL(), |
|
33 | - ], |
|
34 | - [ |
|
35 | - 'name' => 'Projects', |
|
36 | - 'link' => Loader::getRootURL() . 'projects/', |
|
37 | - ], |
|
38 | - [ |
|
39 | - 'name' => 'Résumé', |
|
40 | - 'link' => Loader::getRootURL() . 'resume/', |
|
41 | - ], |
|
42 | - [ |
|
43 | - 'name' => 'Contact', |
|
44 | - 'link' => Loader::getRootURL() . 'contact/', |
|
45 | - ], |
|
46 | - ]; |
|
47 | - |
|
48 | - if (!URLDecode::getPiece(1)) { |
|
49 | - $active_page = 'About'; |
|
50 | - } else { |
|
51 | - $active_page = ucfirst(URLDecode::getPiece(1)); |
|
52 | - } |
|
53 | - |
|
54 | - return array_map(function ($row) use ($active_page) { |
|
55 | - $row = (object) $row; |
|
56 | - $row->active = ($row->name == $active_page); |
|
57 | - return $row; |
|
58 | - }, $menu); |
|
59 | - } |
|
8 | + public function __construct() |
|
9 | + { |
|
10 | + parent::__construct(); |
|
11 | + |
|
12 | + $this->add_css('reset'); |
|
13 | + $this->add_css('portfolio'); |
|
14 | + } |
|
15 | + |
|
16 | + protected function set_body_data() |
|
17 | + { |
|
18 | + $this->set_body('header_data', [ |
|
19 | + 'menu' => $this->get_menu(), |
|
20 | + 'home_link' => Loader::getRootURL(), |
|
21 | + ]); |
|
22 | + $this->set_body('activity_array', $this->get_recent_activity()); |
|
23 | + |
|
24 | + $this->set_body_view('Page'); |
|
25 | + } |
|
26 | + |
|
27 | + protected function get_menu() |
|
28 | + { |
|
29 | + $menu = [ |
|
30 | + [ |
|
31 | + 'name' => 'About', |
|
32 | + 'link' => Loader::getRootURL(), |
|
33 | + ], |
|
34 | + [ |
|
35 | + 'name' => 'Projects', |
|
36 | + 'link' => Loader::getRootURL() . 'projects/', |
|
37 | + ], |
|
38 | + [ |
|
39 | + 'name' => 'Résumé', |
|
40 | + 'link' => Loader::getRootURL() . 'resume/', |
|
41 | + ], |
|
42 | + [ |
|
43 | + 'name' => 'Contact', |
|
44 | + 'link' => Loader::getRootURL() . 'contact/', |
|
45 | + ], |
|
46 | + ]; |
|
47 | + |
|
48 | + if (!URLDecode::getPiece(1)) { |
|
49 | + $active_page = 'About'; |
|
50 | + } else { |
|
51 | + $active_page = ucfirst(URLDecode::getPiece(1)); |
|
52 | + } |
|
53 | + |
|
54 | + return array_map(function ($row) use ($active_page) { |
|
55 | + $row = (object) $row; |
|
56 | + $row->active = ($row->name == $active_page); |
|
57 | + return $row; |
|
58 | + }, $menu); |
|
59 | + } |
|
60 | 60 | } |
@@ -5,92 +5,92 @@ |
||
5 | 5 | class ContactController extends DefaultPageController |
6 | 6 | { |
7 | 7 | |
8 | - protected function set_head_data() |
|
9 | - { |
|
10 | - $this->set_title("Contact Page | Jacob Emerick's Portfolio"); |
|
11 | - $this->set_description("Contact page for Jacob Emerick's Portfolio"); |
|
12 | - $this->set_keywords([ |
|
13 | - 'portfolio', |
|
14 | - 'programming portfolio', |
|
15 | - 'contact', |
|
16 | - 'Jacob Emerick', |
|
17 | - 'information', |
|
18 | - 'freelance', |
|
19 | - ]); |
|
20 | - } |
|
8 | + protected function set_head_data() |
|
9 | + { |
|
10 | + $this->set_title("Contact Page | Jacob Emerick's Portfolio"); |
|
11 | + $this->set_description("Contact page for Jacob Emerick's Portfolio"); |
|
12 | + $this->set_keywords([ |
|
13 | + 'portfolio', |
|
14 | + 'programming portfolio', |
|
15 | + 'contact', |
|
16 | + 'Jacob Emerick', |
|
17 | + 'information', |
|
18 | + 'freelance', |
|
19 | + ]); |
|
20 | + } |
|
21 | 21 | |
22 | - protected function set_body_data() |
|
23 | - { |
|
24 | - $this->set_body('body_view', 'Contact'); |
|
22 | + protected function set_body_data() |
|
23 | + { |
|
24 | + $this->set_body('body_view', 'Contact'); |
|
25 | 25 | |
26 | - $body_data = []; |
|
27 | - if (!empty($_POST)) { |
|
28 | - $body_data = $this->process_form_data(); |
|
29 | - } |
|
30 | - $body_data['domain_container'] = $this->get_domain_container(); |
|
31 | - $this->set_body('body_data', $body_data); |
|
26 | + $body_data = []; |
|
27 | + if (!empty($_POST)) { |
|
28 | + $body_data = $this->process_form_data(); |
|
29 | + } |
|
30 | + $body_data['domain_container'] = $this->get_domain_container(); |
|
31 | + $this->set_body('body_data', $body_data); |
|
32 | 32 | |
33 | - parent::set_body_data(); |
|
34 | - } |
|
33 | + parent::set_body_data(); |
|
34 | + } |
|
35 | 35 | |
36 | - private function process_form_data() |
|
37 | - { |
|
38 | - $errors = []; |
|
36 | + private function process_form_data() |
|
37 | + { |
|
38 | + $errors = []; |
|
39 | 39 | |
40 | - if ( |
|
41 | - empty($_POST['name']) || |
|
42 | - !is_string($_POST['name']) || |
|
43 | - strlen($_POST['name']) > 100 |
|
44 | - ) { |
|
45 | - $errors['name'] = 'Please enter a valid name.'; |
|
46 | - } |
|
40 | + if ( |
|
41 | + empty($_POST['name']) || |
|
42 | + !is_string($_POST['name']) || |
|
43 | + strlen($_POST['name']) > 100 |
|
44 | + ) { |
|
45 | + $errors['name'] = 'Please enter a valid name.'; |
|
46 | + } |
|
47 | 47 | |
48 | - if (!filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) { |
|
49 | - $errors['email'] = 'Please enter a valid email.'; |
|
50 | - } |
|
48 | + if (!filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) { |
|
49 | + $errors['email'] = 'Please enter a valid email.'; |
|
50 | + } |
|
51 | 51 | |
52 | - if ( |
|
53 | - empty($_POST['message']) || |
|
54 | - !is_string($_POST['message']) || |
|
55 | - strlen($_POST['message']) > 10000 |
|
56 | - ) { |
|
57 | - $errors['message'] = 'Please enter a valid message.'; |
|
58 | - } |
|
52 | + if ( |
|
53 | + empty($_POST['message']) || |
|
54 | + !is_string($_POST['message']) || |
|
55 | + strlen($_POST['message']) > 10000 |
|
56 | + ) { |
|
57 | + $errors['message'] = 'Please enter a valid message.'; |
|
58 | + } |
|
59 | 59 | |
60 | - if (!empty($errors)) { |
|
61 | - $values = $_POST; |
|
62 | - $values = array_intersect_key($values, array_flip([ |
|
63 | - 'name', |
|
64 | - 'email', |
|
65 | - 'message', |
|
66 | - ])); |
|
60 | + if (!empty($errors)) { |
|
61 | + $values = $_POST; |
|
62 | + $values = array_intersect_key($values, array_flip([ |
|
63 | + 'name', |
|
64 | + 'email', |
|
65 | + 'message', |
|
66 | + ])); |
|
67 | 67 | |
68 | - return [ |
|
69 | - 'errors' => $errors, |
|
70 | - 'values' => $values, |
|
71 | - ]; |
|
72 | - } |
|
68 | + return [ |
|
69 | + 'errors' => $errors, |
|
70 | + 'values' => $values, |
|
71 | + ]; |
|
72 | + } |
|
73 | 73 | |
74 | - $message = [ |
|
75 | - "Name: {$_POST['name']}", |
|
76 | - "Email: {$_POST['email']}", |
|
77 | - '', |
|
78 | - 'Message:', |
|
79 | - $_POST['message'], |
|
80 | - ]; |
|
81 | - $message = implode("\n", $message); |
|
74 | + $message = [ |
|
75 | + "Name: {$_POST['name']}", |
|
76 | + "Email: {$_POST['email']}", |
|
77 | + '', |
|
78 | + 'Message:', |
|
79 | + $_POST['message'], |
|
80 | + ]; |
|
81 | + $message = implode("\n", $message); |
|
82 | 82 | |
83 | - global $container; |
|
84 | - $container['mail'] |
|
85 | - ->addTo($container['config']->admin_email) |
|
86 | - ->setSubject('Portfolio Contact') |
|
87 | - ->setPlainMessage($message) |
|
88 | - ->send(); |
|
83 | + global $container; |
|
84 | + $container['mail'] |
|
85 | + ->addTo($container['config']->admin_email) |
|
86 | + ->setSubject('Portfolio Contact') |
|
87 | + ->setPlainMessage($message) |
|
88 | + ->send(); |
|
89 | 89 | |
90 | - return [ |
|
91 | - 'success' => |
|
92 | - "Thank you for your message, {$_POST['name']}! " . |
|
93 | - "I'll get back to you as soon as possible." |
|
94 | - ]; |
|
95 | - } |
|
90 | + return [ |
|
91 | + 'success' => |
|
92 | + "Thank you for your message, {$_POST['name']}! " . |
|
93 | + "I'll get back to you as soon as possible." |
|
94 | + ]; |
|
95 | + } |
|
96 | 96 | } |
@@ -5,24 +5,24 @@ |
||
5 | 5 | class ProjectsController extends DefaultPageController |
6 | 6 | { |
7 | 7 | |
8 | - protected function set_head_data() |
|
9 | - { |
|
10 | - $this->set_title("Projects Page | Jacob Emerick's Portfolio"); |
|
11 | - $this->set_description("Collection of key open-source projects that Jacob has developed and maintained over the years."); |
|
12 | - $this->set_keywords([ |
|
13 | - 'projects', |
|
14 | - 'open source', |
|
15 | - 'example work', |
|
16 | - 'portfolio', |
|
17 | - 'Jacob Emerick', |
|
18 | - 'software development', |
|
19 | - ]); |
|
20 | - } |
|
8 | + protected function set_head_data() |
|
9 | + { |
|
10 | + $this->set_title("Projects Page | Jacob Emerick's Portfolio"); |
|
11 | + $this->set_description("Collection of key open-source projects that Jacob has developed and maintained over the years."); |
|
12 | + $this->set_keywords([ |
|
13 | + 'projects', |
|
14 | + 'open source', |
|
15 | + 'example work', |
|
16 | + 'portfolio', |
|
17 | + 'Jacob Emerick', |
|
18 | + 'software development', |
|
19 | + ]); |
|
20 | + } |
|
21 | 21 | |
22 | - protected function set_body_data() |
|
23 | - { |
|
24 | - $this->set_body('body_view', 'Projects'); |
|
22 | + protected function set_body_data() |
|
23 | + { |
|
24 | + $this->set_body('body_view', 'Projects'); |
|
25 | 25 | |
26 | - parent::set_body_data(); |
|
27 | - } |
|
26 | + parent::set_body_data(); |
|
27 | + } |
|
28 | 28 | } |
@@ -5,56 +5,56 @@ |
||
5 | 5 | class PortfolioRouter extends Router |
6 | 6 | { |
7 | 7 | |
8 | - protected function get_redirect_array() |
|
9 | - { |
|
10 | - $paths = [ |
|
11 | - [ |
|
12 | - 'pattern' => '@/index.(html|htm|php)$@', |
|
13 | - 'replace' => '/', |
|
14 | - ], |
|
15 | - [ |
|
16 | - 'pattern' => '@^/print(/?)$@', |
|
17 | - 'replace' => '/projects/', |
|
18 | - ], |
|
19 | - [ |
|
20 | - 'pattern' => '@^/web(/?)$@', |
|
21 | - 'replace' => '/projects/', |
|
22 | - ], |
|
23 | - [ |
|
24 | - 'pattern' => '@^/(web|print)/([a-z0-9-]+)(/?)$@', |
|
25 | - 'replace' => '/projects/', |
|
26 | - ], |
|
27 | - ]; |
|
8 | + protected function get_redirect_array() |
|
9 | + { |
|
10 | + $paths = [ |
|
11 | + [ |
|
12 | + 'pattern' => '@/index.(html|htm|php)$@', |
|
13 | + 'replace' => '/', |
|
14 | + ], |
|
15 | + [ |
|
16 | + 'pattern' => '@^/print(/?)$@', |
|
17 | + 'replace' => '/projects/', |
|
18 | + ], |
|
19 | + [ |
|
20 | + 'pattern' => '@^/web(/?)$@', |
|
21 | + 'replace' => '/projects/', |
|
22 | + ], |
|
23 | + [ |
|
24 | + 'pattern' => '@^/(web|print)/([a-z0-9-]+)(/?)$@', |
|
25 | + 'replace' => '/projects/', |
|
26 | + ], |
|
27 | + ]; |
|
28 | 28 | |
29 | - return array_map(function ($row) { |
|
30 | - return (object) $row; |
|
31 | - }, $paths); |
|
32 | - } |
|
29 | + return array_map(function ($row) { |
|
30 | + return (object) $row; |
|
31 | + }, $paths); |
|
32 | + } |
|
33 | 33 | |
34 | - protected function get_direct_array() |
|
35 | - { |
|
36 | - $paths = [ |
|
37 | - [ |
|
38 | - 'match' => '/', |
|
39 | - 'controller' => 'AboutController', |
|
40 | - ], |
|
41 | - [ |
|
42 | - 'match' => '/contact/', |
|
43 | - 'controller' => 'ContactController', |
|
44 | - ], |
|
45 | - [ |
|
46 | - 'match' => '/projects/', |
|
47 | - 'controller' => 'ProjectsController', |
|
48 | - ], |
|
49 | - [ |
|
50 | - 'match' => '/resume/', |
|
51 | - 'controller' => 'ResumeController', |
|
52 | - ], |
|
53 | - ]; |
|
34 | + protected function get_direct_array() |
|
35 | + { |
|
36 | + $paths = [ |
|
37 | + [ |
|
38 | + 'match' => '/', |
|
39 | + 'controller' => 'AboutController', |
|
40 | + ], |
|
41 | + [ |
|
42 | + 'match' => '/contact/', |
|
43 | + 'controller' => 'ContactController', |
|
44 | + ], |
|
45 | + [ |
|
46 | + 'match' => '/projects/', |
|
47 | + 'controller' => 'ProjectsController', |
|
48 | + ], |
|
49 | + [ |
|
50 | + 'match' => '/resume/', |
|
51 | + 'controller' => 'ResumeController', |
|
52 | + ], |
|
53 | + ]; |
|
54 | 54 | |
55 | - return array_map(function ($row) { |
|
56 | - return (object) $row; |
|
57 | - }, $paths); |
|
58 | - } |
|
55 | + return array_map(function ($row) { |
|
56 | + return (object) $row; |
|
57 | + }, $paths); |
|
58 | + } |
|
59 | 59 | |
60 | 60 | } |
@@ -5,26 +5,26 @@ |
||
5 | 5 | class AboutController extends DefaultPageController |
6 | 6 | { |
7 | 7 | |
8 | - protected function set_head_data() |
|
9 | - { |
|
10 | - $this->set_title("Jacob Emerick's Portfolio"); |
|
11 | - $this->set_description("Jacob Emerick's Portfolio - collection of programming projects and resume"); |
|
12 | - $this->set_keywords([ |
|
13 | - 'portfolio', |
|
14 | - 'Jacob Emerick', |
|
15 | - 'web development', |
|
16 | - 'web programming', |
|
17 | - 'software development', |
|
18 | - 'agile', |
|
19 | - 'freelance', |
|
20 | - ]); |
|
21 | - } |
|
8 | + protected function set_head_data() |
|
9 | + { |
|
10 | + $this->set_title("Jacob Emerick's Portfolio"); |
|
11 | + $this->set_description("Jacob Emerick's Portfolio - collection of programming projects and resume"); |
|
12 | + $this->set_keywords([ |
|
13 | + 'portfolio', |
|
14 | + 'Jacob Emerick', |
|
15 | + 'web development', |
|
16 | + 'web programming', |
|
17 | + 'software development', |
|
18 | + 'agile', |
|
19 | + 'freelance', |
|
20 | + ]); |
|
21 | + } |
|
22 | 22 | |
23 | - protected function set_body_data() |
|
24 | - { |
|
25 | - $this->set_body('body_view', 'About'); |
|
26 | - $this->set_body('body_data', []); |
|
23 | + protected function set_body_data() |
|
24 | + { |
|
25 | + $this->set_body('body_view', 'About'); |
|
26 | + $this->set_body('body_data', []); |
|
27 | 27 | |
28 | - parent::set_body_data(); |
|
29 | - } |
|
28 | + parent::set_body_data(); |
|
29 | + } |
|
30 | 30 | } |
@@ -5,31 +5,31 @@ |
||
5 | 5 | class ResumeController extends DefaultPageController |
6 | 6 | { |
7 | 7 | |
8 | - protected $resume = 'resume-20160318.json'; |
|
8 | + protected $resume = 'resume-20160318.json'; |
|
9 | 9 | |
10 | - protected function set_head_data() |
|
11 | - { |
|
12 | - $this->set_title("Resume | Jacob Emerick's Portfolio"); |
|
13 | - $this->set_description("Resume for Jacob Emerick, a software engineer extraordinaire"); |
|
14 | - $this->set_keywords([ |
|
15 | - 'resume', |
|
16 | - 'programming resume', |
|
17 | - 'Jacob Emerick', |
|
18 | - 'software engineer', |
|
19 | - 'portfolio', |
|
20 | - 'shutterstock', |
|
21 | - ]); |
|
22 | - } |
|
10 | + protected function set_head_data() |
|
11 | + { |
|
12 | + $this->set_title("Resume | Jacob Emerick's Portfolio"); |
|
13 | + $this->set_description("Resume for Jacob Emerick, a software engineer extraordinaire"); |
|
14 | + $this->set_keywords([ |
|
15 | + 'resume', |
|
16 | + 'programming resume', |
|
17 | + 'Jacob Emerick', |
|
18 | + 'software engineer', |
|
19 | + 'portfolio', |
|
20 | + 'shutterstock', |
|
21 | + ]); |
|
22 | + } |
|
23 | 23 | |
24 | - protected function set_body_data() |
|
25 | - { |
|
26 | - $this->set_body('body_view', 'Resume'); |
|
24 | + protected function set_body_data() |
|
25 | + { |
|
26 | + $this->set_body('body_view', 'Resume'); |
|
27 | 27 | |
28 | - $resumePath = Loader::getRootURL('portfolio') . "/jsonresume/{$this->resume}"; |
|
29 | - $resume = file_get_contents($resumePath); |
|
30 | - $resume = json_decode($resume, true); |
|
31 | - $this->set_body('body_data', $resume); |
|
28 | + $resumePath = Loader::getRootURL('portfolio') . "/jsonresume/{$this->resume}"; |
|
29 | + $resume = file_get_contents($resumePath); |
|
30 | + $resume = json_decode($resume, true); |
|
31 | + $this->set_body('body_data', $resume); |
|
32 | 32 | |
33 | - parent::set_body_data(); |
|
34 | - } |
|
33 | + parent::set_body_data(); |
|
34 | + } |
|
35 | 35 | } |