diff options
Removed unused front-end files and made landing page dynamic (with the new style)
9 files changed, 75 insertions, 765 deletions
| -rw-r--r-- | src/css/master.css (renamed from src/views/css/master.css) | 0 | ||||
| -rw-r--r-- | src/css/master.css.map (renamed from src/views/css/master.css.map) | 0 | ||||
| -rw-r--r-- | src/index.php | 86 | ||||
| -rw-r--r-- | src/views/landing.php | 23 | ||||
| -rw-r--r-- | src/views/package-lock.json | 127 | ||||
| -rw-r--r-- | src/views/package.json | 23 | ||||
| -rw-r--r-- | src/views/readme.md | 3 | ||||
| -rw-r--r-- | src/views/sass/base/_normalize.scss | 351 | ||||
| -rw-r--r-- | src/views/sass/master.scss | 227 |
diff --git a/src/views/css/master.css b/src/css/master.css index 2a5d3b5..2a5d3b5 100644 --- a/src/views/css/master.css +++ b/src/css/master.css diff --git a/src/views/css/master.css.map b/src/css/master.css.map index c31be51..c31be51 100644 --- a/src/views/css/master.css.map +++ b/src/css/master.css.map diff --git a/src/index.php b/src/index.php index 2ce8c4b..d00c7d9 100644 --- a/src/index.php +++ b/src/index.php @@ -1,34 +1,60 @@ -<?php require "document-top.html"; ?> +<!DOCTYPE html> +<html lang="en"> +<head> + <meta charset="UTF-8"> + <meta http-equiv="X-UA-Compatible" content="IE=edge"> + <meta name="viewport" content="width=device-width, initial-scale=1.0"> + <title>Jobs</title> + <link rel="preconnect" href="https://fonts.gstatic.com"> -<?php -include_once("controllers/LandingController.php"); -include_once("controllers/CreateOfferController.php"); -include_once("controllers/DashboardLoginController.php"); + <link rel="stylesheet" href="/css/master.css"> + <link href="https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;700&display=swap" rel="stylesheet"> +</head> +<body> + <div class="site-wrapper"> + <header class="site-header"> + <h1 class="site-title"><a href="/">Job Offers</a></h2> + </header> -/* The landing page practically acts as our page router. - * All request get redirected to here (look at the devrix-job-board.conf) - * Thanks https://www.taniarascia.com/the-simplest-php-router/ - */ + <?php + include_once("controllers/LandingController.php"); + include_once("controllers/CreateOfferController.php"); + include_once("controllers/DashboardLoginController.php"); + + /* The landing page practically acts as our page router. + * All request get redirected to here (look at the devrix-job-board.conf) + * Thanks https://www.taniarascia.com/the-simplest-php-router/ + */ + + $request = $_SERVER['REQUEST_URI']; + + switch ($request) { + case "": + case "/": + LandingController::invoke(); + break; + case "/CreateOffer": + case "/CreateOffer/": + CreateOfferController::invoke(); + break; + case "/Dashboard": + case "/Dashboard/": + DashboardLoginController::invoke(); + break; + default: + http_response_code(404); + break; + } + ?> -$request = $_SERVER['REQUEST_URI']; + <footer class="site-footer"> + <p>Copyright 2020 | Developer links: + <a href="/Dashboard">Dashboard</a>, + <a href="/">Home</a>, + <a href="/single.html">Single</a> + </p> + </footer> + </div> -switch ($request) { - case "": - case "/": - LandingController::invoke(); - break; - case "/CreateOffer": - case "/CreateOffer/": - CreateOfferController::invoke(); - break; - case "/Dashboard": - case "/Dashboard/": - DashboardLoginController::invoke(); - break; - default: - http_response_code(404); - break; -} -?> - -<?php require "document-bot.html"; ?> +</body> +</html> diff --git a/src/views/landing.php b/src/views/landing.php index 6124f90..514e5a7 100644 --- a/src/views/landing.php +++ b/src/views/landing.php @@ -1,8 +1,23 @@ +<ul class="jobs-listing"> <?php foreach($jobs as $job) { - echo "{$job->title} {$job->description} " . self::$companies[$job->companyId] . " {$job->salary}<br>"; + echo '<li class="job-card"> + <div class="job-primary"> + <h2 class="job-title"><a href="#">' . $job->title . '</a></h2> + <div class="job-meta"> + <a class="meta-company" href="#">' . self::$companies[$job->companyId] . '</a> + <span class="meta-date">' . round($job->salary, 2) . ' lev/month</span> + </div> + <div class="job-details"> + '. $job->description . ' + </div> + </div> + <div class="job-logo"> + <div class="job-logo-box"> + <img src="https://i.imgur.com/ZbILm3F.png" alt=""> + </div> + </div> + </li>'; } ?> - -<a href="/CreateOffer">Create a new Job Offer</a> -<a href="/Dashboard">Dashboard</a> +</ul> diff --git a/src/views/package-lock.json b/src/views/package-lock.json deleted file mode 100644 index 58dfa35..0000000 --- a/src/views/package-lock.json +++ /dev/null @@ -1,127 +0,0 @@ -{ - "name": "php-jobs", - "version": "1.0.0", - "lockfileVersion": 1, - "requires": true, - "dependencies": { - "anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==" - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "requires": { - "fill-range": "^7.0.1" - } - }, - "chokidar": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.1.tgz", - "integrity": "sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw==", - "requires": { - "anymatch": "~3.1.1", - "braces": "~3.0.2", - "fsevents": "~2.3.1", - "glob-parent": "~5.1.0", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.5.0" - } - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "optional": true - }, - "glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "requires": { - "is-glob": "^4.0.1" - } - }, - "is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "requires": { - "binary-extensions": "^2.0.0" - } - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" - }, - "is-glob": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" - }, - "picomatch": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", - "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==" - }, - "readdirp": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.5.0.tgz", - "integrity": "sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ==", - "requires": { - "picomatch": "^2.2.1" - } - }, - "sass": { - "version": "1.32.8", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.32.8.tgz", - "integrity": "sha512-Sl6mIeGpzjIUZqvKnKETfMf0iDAswD9TNlv13A7aAF3XZlRPMq4VvJWBC2N2DXbp94MQVdNSFG6LfF/iOXrPHQ==", - "requires": { - "chokidar": ">=2.0.0 <4.0.0" - } - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "requires": { - "is-number": "^7.0.0" - } - } - } -} diff --git a/src/views/package.json b/src/views/package.json deleted file mode 100644 index 8cf9311..0000000 --- a/src/views/package.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "name": "php-jobs", - "version": "1.0.0", - "description": "A static HTML files for jobs website.", - "main": "index.js", - "scripts": { - "start": "sass --watch sass/master.scss:css/master.css", - "test": "echo \"Error: no test specified\" && exit 1" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/xavortm/html-template-jobs.git" - }, - "author": "", - "license": "ISC", - "bugs": { - "url": "https://github.com/xavortm/html-template-jobs/issues" - }, - "homepage": "https://github.com/xavortm/html-template-jobs#readme", - "dependencies": { - "sass": "^1.32.8" - } -} diff --git a/src/views/readme.md b/src/views/readme.md deleted file mode 100644 index c94339e..0000000 --- a/src/views/readme.md +++ /dev/null @@ -1,3 +0,0 @@ -# Jobs markup demo - -A static HTML files for jobs website.
\ No newline at end of file diff --git a/src/views/sass/base/_normalize.scss b/src/views/sass/base/_normalize.scss deleted file mode 100644 index bb6e2a7..0000000 --- a/src/views/sass/base/_normalize.scss +++ /dev/null @@ -1,351 +0,0 @@ -/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */ - -/* Document - ========================================================================== */ - -/** - * 1. Correct the line height in all browsers. - * 2. Prevent adjustments of font size after orientation changes in iOS. - */ - -html { - line-height: 1.15; /* 1 */ - -webkit-text-size-adjust: 100%; /* 2 */ -} - -/* Sections - ========================================================================== */ - -/** - * Remove the margin in all browsers. - */ - -body { - margin: 0; -} - -/** - * Render the `main` element consistently in IE. - */ - -main { - display: block; -} - -/** - * Correct the font size and margin on `h1` elements within `section` and - * `article` contexts in Chrome, Firefox, and Safari. - */ - -h1 { - font-size: 2em; - margin: 0.67em 0; -} - -/* Grouping content - ========================================================================== */ - -/** - * 1. Add the correct box sizing in Firefox. - * 2. Show the overflow in Edge and IE. - */ - -hr { - box-sizing: content-box; /* 1 */ - height: 0; /* 1 */ - overflow: visible; /* 2 */ -} - -/** - * 1. Correct the inheritance and scaling of font size in all browsers. - * 2. Correct the odd `em` font sizing in all browsers. - */ - -pre { - font-family: monospace, monospace; /* 1 */ - font-size: 1em; /* 2 */ -} - -/* Text-level semantics - ========================================================================== */ - -/** - * Remove the gray background on active links in IE 10. - */ - -a { - background-color: transparent; -} - -/** - * 1. Remove the bottom border in Chrome 57- - * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. - */ - -abbr[title] { - border-bottom: none; /* 1 */ - text-decoration: underline; /* 2 */ - text-decoration: underline dotted; /* 2 */ -} - -/** - * Add the correct font weight in Chrome, Edge, and Safari. - */ - -b, -strong { - font-weight: bolder; -} - -/** - * 1. Correct the inheritance and scaling of font size in all browsers. - * 2. Correct the odd `em` font sizing in all browsers. - */ - -code, -kbd, -samp { - font-family: monospace, monospace; /* 1 */ - font-size: 1em; /* 2 */ -} - -/** - * Add the correct font size in all browsers. - */ - -small { - font-size: 80%; -} - -/** - * Prevent `sub` and `sup` elements from affecting the line height in - * all browsers. - */ - -sub, -sup { - font-size: 75%; - line-height: 0; - position: relative; - vertical-align: baseline; -} - -sub { - bottom: -0.25em; -} - -sup { - top: -0.5em; -} - -/* Embedded content - ========================================================================== */ - -/** - * Remove the border on images inside links in IE 10. - */ - -img { - border-style: none; -} - -/* Forms - ========================================================================== */ - -/** - * 1. Change the font styles in all browsers. - * 2. Remove the margin in Firefox and Safari. - */ - -button, -input, -optgroup, -select, -textarea { - font-family: inherit; /* 1 */ - font-size: 100%; /* 1 */ - line-height: 1.15; /* 1 */ - margin: 0; /* 2 */ -} - -/** - * Show the overflow in IE. - * 1. Show the overflow in Edge. - */ - -button, -input { - /* 1 */ - overflow: visible; -} - -/** - * Remove the inheritance of text transform in Edge, Firefox, and IE. - * 1. Remove the inheritance of text transform in Firefox. - */ - -button, -select { - /* 1 */ - text-transform: none; -} - -/** - * Correct the inability to style clickable types in iOS and Safari. - */ - -button, -[type="button"], -[type="reset"], -[type="submit"] { - -webkit-appearance: button; -} - -/** - * Remove the inner border and padding in Firefox. - */ - -button::-moz-focus-inner, -[type="button"]::-moz-focus-inner, -[type="reset"]::-moz-focus-inner, -[type="submit"]::-moz-focus-inner { - border-style: none; - padding: 0; -} - -/** - * Restore the focus styles unset by the previous rule. - */ - -button:-moz-focusring, -[type="button"]:-moz-focusring, -[type="reset"]:-moz-focusring, -[type="submit"]:-moz-focusring { - outline: 1px dotted ButtonText; -} - -/** - * Correct the padding in Firefox. - */ - -fieldset { - padding: 0.35em 0.75em 0.625em; -} - -/** - * 1. Correct the text wrapping in Edge and IE. - * 2. Correct the color inheritance from `fieldset` elements in IE. - * 3. Remove the padding so developers are not caught out when they zero out - * `fieldset` elements in all browsers. - */ - -legend { - box-sizing: border-box; /* 1 */ - color: inherit; /* 2 */ - display: table; /* 1 */ - max-width: 100%; /* 1 */ - padding: 0; /* 3 */ - white-space: normal; /* 1 */ -} - -/** - * Add the correct vertical alignment in Chrome, Firefox, and Opera. - */ - -progress { - vertical-align: baseline; -} - -/** - * Remove the default vertical scrollbar in IE 10+. - */ - -textarea { - overflow: auto; -} - -/** - * 1. Add the correct box sizing in IE 10. - * 2. Remove the padding in IE 10. - */ - -[type="checkbox"], -[type="radio"] { - box-sizing: border-box; /* 1 */ - padding: 0; /* 2 */ -} - -/** - * Correct the cursor style of increment and decrement buttons in Chrome. - */ - -[type="number"]::-webkit-inner-spin-button, -[type="number"]::-webkit-outer-spin-button { - height: auto; -} - -/** - * 1. Correct the odd appearance in Chrome and Safari. - * 2. Correct the outline style in Safari. - */ - -[type="search"] { - -webkit-appearance: textfield; /* 1 */ - outline-offset: -2px; /* 2 */ -} - -/** - * Remove the inner padding in Chrome and Safari on macOS. - */ - -[type="search"]::-webkit-search-decoration { - -webkit-appearance: none; -} - -/** - * 1. Correct the inability to style clickable types in iOS and Safari. - * 2. Change font properties to `inherit` in Safari. - */ - -::-webkit-file-upload-button { - -webkit-appearance: button; /* 1 */ - font: inherit; /* 2 */ -} - -/* Interactive - ========================================================================== */ - -/* - * Add the correct display in Edge, IE 10+, and Firefox. - */ - -details { - display: block; -} - -/* - * Add the correct display in all browsers. - */ - -summary { - display: list-item; -} - -/* Misc - ========================================================================== */ - -/** - * Add the correct display in IE 10+. - */ - -template { - display: none; -} - -/** - * Add the correct display in IE 10. - */ - -[hidden] { - display: none; -} diff --git a/src/views/sass/master.scss b/src/views/sass/master.scss deleted file mode 100644 index 14bf2e7..0000000 --- a/src/views/sass/master.scss +++ /dev/null @@ -1,227 +0,0 @@ -@import "./base/normalize"; - -html { - -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; -} -*, -*:before, -*:after { - -webkit-box-sizing: inherit; - -moz-box-sizing: inherit; - box-sizing: inherit; -} - -:root { - --color-base: #f8f9ff; - --color-primary: #3c71fe; - --color-separator: #d5dcef; - - --font-sans: "DM Sans", sans-serif; -} - -body { - background: var(--color-base); - font-family: var(--font-sans); - line-height: 1.5; -} - -a { - color: var(--color-primary); - text-decoration: none; -} - -.site-wrapper { - max-width: 58em; - margin: 0 auto; -} - -.jobs-listing { - margin: 0; - padding: 0; - - li { - margin-bottom: 1em; - } -} - -.job-card { - margin: 0; - padding: 1.5em; - list-style: none; - background: white; - border: 1px solid var(--color-separator); - border-radius: 0.25em; - box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.06); - display: flex; - - .job-primary { - flex: 1 1 auto; - } - - .job-title { - margin: 0; - font-size: 1.375em; - margin-bottom: 0.25em; - - a { - color: black; - } - } - - .job-details { - margin-top: 2em; - } - - .job-type { - margin-left: 1em; - display: inline-block; - } - - .meta-date { - opacity: 0.5; - margin-left: 1em; - } - - .job-edit { - display: flex; - align-items: center; - - a { - color: black; - display: inline-block; - } - - a + a { - margin-left: 1em; - } - } -} - -.job-logo { - flex: 0 0 12.5em; - background: white; - display: flex; - align-items: stretch; - justify-content: stretch; - - &-box { - max-height: 7.875em; - border: 1px solid var(--color-separator); - border-radius: 0.25em; - box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.06); - display: flex; - align-items: center; - justify-content: center; - padding: 0.5em; - width: 100%; - - img { - max-width: 8em; - max-height: 4em; - } - } -} - -.job-single { - display: flex; - - .job-secondary { - flex: 0 0 14em; - margin-left: 2em; - text-align: center; - - .button { - margin-bottom: 0.5em; - } - } - - .job-main { - flex: 1 1 auto; - } - - .job-body { - margin-top: 1em; - padding-top: 1em; - border-top: 1px solid var(--color-separator); - - p:first-child { - margin-top: 0; - } - - p:last-child { - margin-bottom: 0; - } - } - - .job-logo { - margin-bottom: 1em; - } -} - -.section-heading { - margin-top: 2em; -} - -.site-footer { - margin-top: 5em; - margin-bottom: 2em; -} - -.button { - padding: 0.5em 0.75em; - border-radius: 0.25em; - background: var(--color-primary); - color: white; - font-weight: 500; - text-align: center; - display: inline-block; - - &-wide { - width: 100%; - } -} - -@media (max-width: 960px) { - .job-single { - flex-direction: column; - - .job-secondary { - margin-left: 0; - margin-top: 1em; - } - } - - .job-details, - .job-meta { - span, - a { - display: block; - } - - .job-type, - .meta-date { - margin: 0; - } - } - - .site-wrapper { - margin: 0 1em; - } -} - -@media (max-width: 480px) { - .job-card { - flex-direction: column; - - .job-logo { - flex: 0 0 auto; - margin-top: 1em; - } - - .job-details { - margin-top: 0.5em; - } - } -} |
