diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..14bc68c --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/nbproject/private/ \ No newline at end of file diff --git a/connection.php b/connection.php index 82c04fb..9d2e0f3 100644 --- a/connection.php +++ b/connection.php @@ -7,8 +7,10 @@ class DB { //Singleton Design Pattern public static function getInstance() { if (!isset(self::$instance)) { - $pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION; - self::$instance = new PDO('mysql:host=localhost;dbname=php_mvc', 'root', '', $pdo_options); + $pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION; + + self::$instance = new PDO('mysql:host=localhost;dbname=blogjazz', 'root', '', $pdo_options); + } return self::$instance; } diff --git a/controllers/authentication_controller.php b/controllers/authentication_controller.php new file mode 100644 index 0000000..2659200 --- /dev/null +++ b/controllers/authentication_controller.php @@ -0,0 +1,35 @@ + \ No newline at end of file diff --git a/controllers/contactus_controller.php b/controllers/contactus_controller.php new file mode 100644 index 0000000..c95ad49 --- /dev/null +++ b/controllers/contactus_controller.php @@ -0,0 +1,28 @@ +getMessage(); + } + } + + public function create() { + if ($_SERVER['REQUEST_METHOD'] == 'GET') { + + require_once('views\products\signup.php'); // takes it to the form that they need to sign up + + + }else{ Authentication::insertAdmin(); + $stmt = Authentication::all(); + + } + } + + + + public function login() { + if ($_SERVER['REQUEST_METHOD'] == 'GET') { + + require_once('views\products\login.php'); + } else { + + Authentication::login(); + + // $row=Authentication::all(); + } + } + +} diff --git a/controllers/subscribe_controller.php b/controllers/subscribe_controller.php new file mode 100644 index 0000000..942be31 --- /dev/null +++ b/controllers/subscribe_controller.php @@ -0,0 +1,26 @@ + - MVC Skeleton + + + GITS ABROAD + email = $email; + $this->password = $password; + $this->passwordconf = $passwordconf; + } + + public function insertAdmin() { + + + + $db = Db::getInstance(); + + if (isset($_POST["signup-btn"])) { + $email = $_POST["email"]; + $password = $_POST["password"]; + $passwordconf = $_POST["passwordconf"]; + + + if (empty($email)) { + die("Email Required"); + } + + if (empty($password)) { + die("Password Required"); + } + if ($password !== $passwordconf) { + die("The two password do not match"); + } + + + $sql = $db->prepare("SELECT count(*) FROM admin_login WHERE email = :email"); + $sql->execute(array('email' => $email)); + $row = $sql->fetch(); + $count = $row[0]; + + if ($count > 0) { + die("Email address already exists, please login."); + } + + $passwordhash = password_hash($password, PASSWORD_DEFAULT); + + $sql = $db->prepare("INSERT INTO admin_login (email, password) VALUES (:email, :password)"); + $sql->bindParam(':email', $email); + $sql->bindParam(':password', $passwordhash); + + + if (isset($_POST['email']) && $_POST['email'] != "") { + $filteredEmail = filter_input(INPUT_POST, 'email', FILTER_SANITIZE_SPECIAL_CHARS); + } + if (isset($_POST['password']) && $_POST['password'] != "") { + + $filteredPassword = filter_input(INPUT_POST, 'password', FILTER_SANITIZE_SPECIAL_CHARS); + } + $email = $filteredEmail; + $password = $filteredPassword; + $sql->execute(); + + header("location:index.php"); + } + } + + public function login() { + + + $db = Db::getInstance(); + + if (isset($_POST['login-btn'])) { + $email = trim($_POST['email']); + $password = trim($_POST['password']); + if ($email != "" && $password != "") { + + + + try { + $query = $db->prepare("SELECT adminID, email, password FROM admin_login WHERE email = :email"); + $query->bindParam(':email', $email); + $query->execute(); + + $row = $query->fetch(PDO::FETCH_ASSOC); + + + + if ($row === FALSE) { + die('Incorrect email / password combination!'); + } else { + $validpassword = (password_verify($password, $row['password'])); + + if ($validpassword) { + $_SESSION['email'] = $_POST['email']; + + header("location:?controller=blog&action=readAllAdminUser"); + } else { + echo "Invalid email and password!"; + } + + + } + } catch (PDOException $e) { + echo "Error : " . $e->getMessage(); + } + } + } + } + +} diff --git a/models/blog.php b/models/blog.php new file mode 100644 index 0000000..438e101 --- /dev/null +++ b/models/blog.php @@ -0,0 +1,245 @@ + +blogID = $blogID; //pass all in + $this->adminID = $adminID; + $this->categoriesID = $categoriesID; + $this->countryID = $countryID; + $this->title = $title; + $this->body = $body; + $this->blogDate = $blogDate; + } + + public static function all() { + $list = []; + // this part under is just instansiating the connector to make the connection between the database-DB class in connection.php + $db = Db::getInstance(); + $req = $db->query('SELECT * FROM blog'); //change + // we create a list of Product objects from the database results + foreach ($req->fetchAll() as $blog) { //change to blog + $list[] = new Blog($blog['blogID'], $blog['adminID'], $blog['categoriesID'], $blog['countryID'], $blog['title'], $blog['body'], $blog['blogDate']); + } + return $list; //come back to make it only show body and title and blog date. + } + + public static function find($blogID) { + $db = Db::getInstance(); + //use intval to make sure $id is an integer + $blogID = intval($blogID); + $req = $db->prepare('SELECT * FROM blog WHERE blogID = :blogID'); + //the query was prepared, now replace :id with the actual $id value + $req->execute(array('blogID' => $blogID)); + $blog = $req->fetch(); + if ($blog) { + return new Blog($blog['blogID'], $blog['adminID'], $blog['categoriesID'], $blog['countryID'], $blog['title'], $blog['body'], $blog['blogDate']); + } else { + //replace with a more meaningful exception + throw new Exception('Could not find blog'); + } + } + + //changed until this point + //change the below, still victorias code. + +// public static function update($blogID) { +// $db = Db::getInstance(); +// $req = $db->prepare("Update blog set title=:title, body=:body where blogID=:blogID"); +// $req->bindParam(':blogID', $blogID); +// $req->bindParam(':title', $title); +// $req->bindParam(':body', $body); +// +//// set name and price parameters and execute +// if (isset($_POST['title']) && $_POST['title'] != "") { +// $filteredTitle = filter_input(INPUT_POST, 'title', FILTER_SANITIZE_SPECIAL_CHARS); +// } +// if (isset($_POST['body']) && $_POST['body'] != "") { +// $filteredBody = filter_input(INPUT_POST, 'body', FILTER_SANITIZE_SPECIAL_CHARS); +// } +// $title = $filteredTitle; +// $body = $filteredBody; +// $req->execute(); +// +////upload product image if it exists +// if (!empty($_FILES[self::InputKey]['title'])) { +// Blog::uploadFile($title); +// } +// } + + //add product when you run blog and you see ad product its this + + public static function add() { //create + $db = Db::getInstance(); + + + + if (isset($_POST['submit'])) { + + $title = ($_POST["title"]); + $body = ($_POST["body"]); + $blogDescription = ($_POST["blogDescription"]); + + if ($_POST['country'] == 'Vietnam') { + $country = 2; + } + if ($_POST['country'] == 'Poland') { + $country = 1; + } + if ($_POST['country'] == 'USA') { + $country = 3; + } + if ($_POST['country'] == 'Italy') { + $country = 4; + } + if ($_POST['country'] == 'Turkey') { + $country = 5; + } + + if ($_POST['categories'] == 'Restaurants') { + $categories = 1; + } + if ($_POST['categories'] == 'Trips') { + $categories = 2; + } + if ($_POST['categories'] == 'Kids') { + $categories = 3; + } + if ($_POST['categories'] == 'Nightlife') { + $categories = 3; + } + if ($_POST['categories'] == 'Tips') { + $categories = 2; + } + + + date_default_timezone_set('UTC'); + $date = date("Y-m-d"); + } + + $req = $db->prepare("Insert into blog(categoriesID, countryID, title, body, blogDate, blogDescription) values (:ab , :aa, :a, :b, :d, :c)"); + $req->bindParam(':a', $title); + $req->bindParam(':b', $body); + $req->bindParam(':c', $blogDescription); + $req->bindParam(':aa', $country); + $req->bindParam(':ab', $categories); + $req->bindParam(':d', $date); +// $req->bindParam(':blogDate', $date); +// set parameters and execute + //model communicates wtith the database + + if (isset($_POST['title']) && $_POST['title'] != "") { + + $filteredTitle = filter_input(INPUT_POST, 'title', FILTER_SANITIZE_SPECIAL_CHARS); + } + if (isset($_POST['body']) && $_POST['body'] != "") { + $filteredBody = filter_input(INPUT_POST, 'body', FILTER_SANITIZE_SPECIAL_CHARS); + } + $title = $filteredTitle; + $body = $filteredBody; + + $req->execute(); + + + //header("location:index.php?controller=blog&action=readAllAdminUser"); + +//executes the query +//all this is making sure that if someone writes a name and it isn't empty then post to database +//everytime someone created a new prodicut its assigning name variable to filtered name +//upload product image + +// Blog::uploadFile($blogID); //link to add as the code is enabling them to upload pics and error handlers are here look below +// } + } +const AllowedTypes = ['image/jpeg', 'image/jpg']; +const InputKey = 'myUploader'; +//die() function calls replaced with trigger_error() calls +//replace with structured exception handling + + public static function uploadFile($blogID) { + + if (empty($_FILES[self::InputKey])) { + //die("File Missing!"); + trigger_error("File Missing!"); + } + + if ($_FILES[self::InputKey]['error'] > 0) { + trigger_error("Handle the error! " . $_FILES[InputKey]['error']); + } + + + if (!in_array($_FILES[self::InputKey]['type'], self::AllowedTypes)) { + trigger_error("Handle File Type Not Allowed: " . $_FILES[self::InputKey]['type']); + } + + $tempFile = $_FILES[self::InputKey]['tmp_name']; + $path = "C:/xampp/htdocs/finalProject/views/images/img"; + //$path = "/Applications/XAMPP/xamppfiles/htdocs/finalProject/views/images/img"; + $destinationFile = $path . $blogID . '.jpeg'; + + if (!move_uploaded_file($tempFile, $destinationFile)) { + trigger_error("Handle Error"); + } + + //Clean up the temp file + if (file_exists($tempFile)) { + unlink($tempFile); + } + } + + public static function remove($blogID) { + $db = Db::getInstance(); + //make sure $id is an integer + $blogID = intval($blogID); + $req = $db->prepare('delete FROM blog WHERE blogID = :blogID'); + // the query was prepared, now replace :id with the actual $id value + $req->execute(array(':blogID' => $blogID)); + } + + + public static function update($blogID) { + $db = Db::getInstance(); + $req = $db->prepare("Update blog set title=:title, body=:body where blogID=:blogID"); + $req->bindParam(':blogID', $blogID); + $req->bindParam(':title', $title); + $req->bindParam(':body', $body); + +// set name and price parameters and execute + if(isset($_POST['title'])&& $_POST['title']!=""){ + $filteredTitle = filter_input(INPUT_POST,'title', FILTER_SANITIZE_SPECIAL_CHARS); + } + if(isset($_POST['body'])&& $_POST['body']!=""){ + $filteredBody = filter_input(INPUT_POST,'body', FILTER_SANITIZE_SPECIAL_CHARS); + } +$title = $filteredTitle; +$body = $filteredBody; + +$req->execute(); + + + //header("location:finalProject/index.php?controller=blog&action=readAllAdminUser"); + + +//upload product image if it exists + if (!empty($_FILES[self::InputKey]['title'])) { + Blog::uploadFile($title); + } + + } + + + + + +} + diff --git a/models/contactus.php b/models/contactus.php new file mode 100644 index 0000000..1800ab0 --- /dev/null +++ b/models/contactus.php @@ -0,0 +1,85 @@ + contactID=$contactID; + $this-> firstName=$firstName; //All the below is items for + $this-> surname=$surname; + $this-> email=$email; + $this-> dates=$dates; + $this-> body=$body; + + + } + + /*public static function all() { + $list = []; + // this part under is just instansiating the connector to make the connection between the database-DB class in connection.php + $db = Db::getInstance(); + $req = $db->query('SELECT * FROM contact_us'); + // we create a list of contactus objects from the database results + foreach ($req->fetchAll() as $contact) { + $list[] = new Contact ($contact['contactID'], $contact['blogID'], $contact['subscriptionsID'], $contact['responseID'], $contact['firstName'], $contact['surname'], $contact['email'], $contact['dates'], $contact ['body']); + } + return $list; + } + + /*public static function find($contactID) { + $db = Db::getInstance(); + //use intval to make sure $id is an integer + $blogID = intval($blogID); + $req = $db->prepare('SELECT * FROM contactus WHERE contactID = :contactID'); + //the query was prepared, now replace :id with the actual $id value + $req->execute(array('contactID' => $contactID)); + $blog = $req->fetch(); + if ($contact) { + return new Contact($contact['contactID'], $contact['blogID'], $contact['subscriptionsID'], $contact['responseID'], $contact['firstName'], $contact['surname'], $contact['email'], $contact['dates'], $contact ['body']); + } else { + //replace with a more meaningful exception + throw new Exception('Could not find contact'); + + }} */ + public static function add() { //create + $db = Db::getInstance(); + $req = $db->prepare("Insert into contact_us(contactID, firstName, surname, email,dates, body) values (:contactID,:firstName,:surname, :email, :dates, :body)"); + $req->bindParam(':contactID', $contactID); + $req->bindParam(':firstName', $firstName); + $req->bindParam(':surname', $surname); + $req->bindParam(':email', $email); + $req->bindParam(':dates',$dates); + $req->bindParam(':body', $body); +// set parameters and execute + + //model communicates with the database + + if(isset($_POST['firstName'])&& $_POST['firstName']!=""){ + $filteredFirstName = filter_input(INPUT_POST,'firstName', FILTER_SANITIZE_SPECIAL_CHARS); + } + if(isset($_POST['surname'])&& $_POST['surname']!=""){ + $filteredSurname = filter_input(INPUT_POST,'surname', FILTER_SANITIZE_SPECIAL_CHARS); + } + if(isset($_POST['email'])&& $_POST['email']!=""){ + $filteredEmail = filter_input(INPUT_POST,'email', FILTER_SANITIZE_SPECIAL_CHARS); + } + if(isset($_POST['body'])&& $_POST['body']!=""){ + $filteredBody = filter_input(INPUT_POST,'body', FILTER_SANITIZE_SPECIAL_CHARS); + } +$firstName = $filteredFirstName; +$surname = $filteredSurname; +$email = $filteredEmail; +$body = $filteredBody; +$req->execute(); +header("location:index.php"); ; + } +} + diff --git a/models/product.php b/models/product.php index 5bcf732..4ec69ae 100644 --- a/models/product.php +++ b/models/product.php @@ -14,8 +14,9 @@ public function __construct($id, $name, $price) { public static function all() { $list = []; + // this part under is just instansiating the connector to make the connection between the database-DB class in connection.php $db = Db::getInstance(); - $req = $db->query('SELECT * FROM product'); + $req = $db->query('SELECT * FROM blog'); // we create a list of Product objects from the database results foreach($req->fetchAll() as $product) { $list[] = new Product($product['id'], $product['name'], $product['price']); @@ -65,14 +66,18 @@ public static function update($id) { } } + //add product when you run blog and you see ad product its this public static function add() { $db = Db::getInstance(); - $req = $db->prepare("Insert into product(name, price) values (:name, :price)"); + $req = $db->prepare("Insert into product() values (:name, :price)"); $req->bindParam(':name', $name); $req->bindParam(':price', $price); // set parameters and execute + + //model communicates wtith the database + if(isset($_POST['name'])&& $_POST['name']!=""){ $filteredName = filter_input(INPUT_POST,'name', FILTER_SANITIZE_SPECIAL_CHARS); } @@ -82,9 +87,11 @@ public static function add() { $name = $filteredName; $price = $filteredPrice; $req->execute(); - +//executes the query +//all this is making sure that if someone writes a name and it isn't empty then post to database +//everytime someone created a new prodicut its assigning name variable to filtered name //upload product image -Product::uploadFile($name); +Product::uploadFile($name); //link to add as the code is enabling them to upload pics and error handlers are here look below } const AllowedTypes = ['image/jpeg', 'image/jpg']; @@ -109,7 +116,7 @@ public static function uploadFile(string $name) { } $tempFile = $_FILES[self::InputKey]['tmp_name']; - $path = "C:/xampp/htdocs/MVC_Skeleton/views/images/"; + $path = "/Applications/XAMPP/htdocs/MVC_Skeleton/views/images/"; $destinationFile = $path . $name . '.jpeg'; if (!move_uploaded_file($tempFile, $destinationFile)) { diff --git a/models/s.php b/models/s.php new file mode 100644 index 0000000..3177d86 --- /dev/null +++ b/models/s.php @@ -0,0 +1,120 @@ +email = $email; +$this->password = $password; +} + +public function findEmail($email) { +$db = Db::getInstance(); +$sql = $db->prepare("SELECT * FROM admin_login WHERE email = :email"); +$sql->execute(array('email' => $email)); +$row = $sql->fetch(); +if ($row) { +return new Auth($count['email']); +} else { +//replace with a more meaningful exception +throw new Exception('Email already exist, please login'); +} +} + +public function insertAdmin() { +$errors = array(); + +$db = Db::getInstance(); + +if (isset($_POST["signup-btn"])) { +$email = $_POST["email"]; +$password = $_POST["password"]; + +//validation + +if (empty($email)) { +$errors["email"] = "Email Required"; +die(); +} + +if (empty($password)) { +$errors["password"] = "Password Required"; +die(); +} + +$sql = $db->prepare("INSERT INTO admin_login (email, password) VALUES (:email, :password)"); +$sql->bindParam(':email', $email); +$sql->bindParam(':password', $password); +$password = password_hash($password, PASSWORD_DEFAULT); + +if (isset($_POST['email']) && $_POST['email'] != "") { +$filteredEmail = filter_input(INPUT_POST, 'email', FILTER_SANITIZE_SPECIAL_CHARS); +} +if (isset($_POST['password']) && $_POST['password'] != "") { +$filteredPassword = filter_input(INPUT_POST, 'password', FILTER_SANITIZE_SPECIAL_CHARS); +} +$email = $filteredEmail; +$password = $filteredPassword; +$sql->execute(); + +header("location:index.php"); +} +} + +public function login() { + + +$db = Db::getInstance(); + +if(isset($_POST['login-btn'])) { +$email = trim($_POST['email']); +$password = trim($_POST['password']); +if($email != "" && $password != "") { + + +try { +$query = $db->prepare("SELECT count(*) FROM admin_login WHERE :email='$email' AND :password='$password' AND email<>'' AND password <> '' LIMIT 1"); +$query->bindParam(':email', $email); +$query->bindParam(':password', $password); +$query->execute(); +$count = $query->rowCount(); +$row = $query->fetch(PDO::FETCH_ASSOC); + + +if($count == 1 &&!empty($row)) { +$_SESSION['email'] = $_POST['email']; +$session['password'] = $_POST['password']; +//redirect +header("location:index.php"); + + + } else { + echo "Invalid username and password!"; + } + } catch (PDOException $e) { + echo "Error : ".$e->getMessage(); + } + } else { + echo "Both fields are required!"; + } +} +//if ($row >=1) { +// echo "Username already exist in the database"; +// header("location:views/pages/blogpost.php"); +//} else { +//throw new Exception('Wrong email and password, please login'); + +} +} + + + + diff --git a/models/subscribe.php b/models/subscribe.php new file mode 100644 index 0000000..f8de400 --- /dev/null +++ b/models/subscribe.php @@ -0,0 +1,63 @@ + + $subscriptionsID; + $this-> $firstName; + $this-> $surname; + $this-> $email; + + } + + public static function add() { //create + $db = Db::getInstance(); + $req = $db->prepare("Insert into subscriptions(email) values (:email)"); + //$req->bindParam(':subscriptionsID', $subscriptionsID); + //$req->bindParam(':firstName', $firstName); + //$req->bindParam(':surname', $surname); + $req->bindParam(':email', $email); + +// set parameters and execute + + //model communicates with the database + + /* if(isset($_POST['subscriptionsID'])&& $_POST['subscriptionsID']!=""){ + $filteredsubscriptionsID = filter_input(INPUT_POST,'subscriptionsID', FILTER_SANITIZE_SPECIAL_CHARS); + /* } + if(isset($_POST['firstName'])&& $_POST['firstName']!=""){ + $filteredFirstName = filter_input(INPUT_POST,'firstName', FILTER_SANITIZE_SPECIAL_CHARS); + /* } + if(isset($_POST['surname'])&& $_POST['surname']!=""){ + $filteredSurname = filter_input(INPUT_POST,'surname', FILTER_SANITIZE_SPECIAL_CHARS); */ + //} + if(isset($_POST['email'])&& $_POST['email']!=""){ + $filteredEmail = filter_input(INPUT_POST,'email', FILTER_SANITIZE_SPECIAL_CHARS); + + } + +//$subscriptionsID = $filteredsubscriptionsID; +//$firstName = $filteredFirstName; +//$surname = $filteredSurname; +$email = $filteredEmail; + +$req->execute(); + +if ($req->execute()) { + include("views/subscribe/thank_you.php"); + + echo ""; + // header("location:index.php"); + } +} +} + + diff --git a/nbproject/project.properties b/nbproject/project.properties new file mode 100644 index 0000000..e1ecb19 --- /dev/null +++ b/nbproject/project.properties @@ -0,0 +1,9 @@ +include.path=${php.global.include.path} + +php.version=PHP_70 + +source.encoding=UTF-8 +src.dir=. +tags.asp=false +tags.short=false +web.root=. diff --git a/nbproject/project.xml b/nbproject/project.xml new file mode 100644 index 0000000..6e2a81f --- /dev/null +++ b/nbproject/project.xml @@ -0,0 +1,9 @@ + + + org.netbeans.modules.php.project + + + finalProject + + + diff --git a/routes.php b/routes.php index ec4fa8f..b9e6de3 100644 --- a/routes.php +++ b/routes.php @@ -1,44 +1,56 @@ { $action }(); - } +} // for validation we list the allowed controllers and their actions // Add an entry for each new controller and its actions -$controllers = array('pages' => ['home', 'error'], - 'product' => ['readAll','read','create','update','delete'], - 'controllerXXX' => ['actionYYY', 'actionZZZ'], - ); - // check that the requested controller and action are both allowed - // if someone tries to access something else they will be redirected - // to the error action of the pages controller - if (array_key_exists($controller, $controllers)) { +$controllers = array('pages' => ['home', 'aboutus', 'error'], + 'product' => ['readAll', 'read', 'create', 'update', 'delete'], + 'blog' => ['readAll', 'read', 'create', 'update', 'delete', 'readAllAdminUser'], + 'authentication' => ['create', 'login'], + 'contactus' => ['create'], + 'subscribe' => ['create'], + 'controllerXXX' => ['actionYYY', 'actionZZZ'], +); + +//after you make it all the last step is go to routes and add new model, new array and same cruds +// check that the requested controller and action are both allowed +// if someone tries to access something else they will be redirected +// to the error action of the pages controller +if (array_key_exists($controller, $controllers)) { if (in_array($action, $controllers[$controller])) { - call($controller, $action); + call($controller, $action); } else { - call('pages', 'error'); + call('pages', 'error'); } - } else { +} else { call('pages', 'error'); - } - ?> \ No newline at end of file +} +?> \ No newline at end of file diff --git a/views/blog/backup.php b/views/blog/backup.php new file mode 100644 index 0000000..0db0a59 --- /dev/null +++ b/views/blog/backup.php @@ -0,0 +1,24 @@ +

Fill in the following form to add a new blog:

//this is the html that makes the form pop up to add item +
+ +

Add New Blog Post

+ +

+ + +

+

+ + +

+ + + + +

+ +

+
\ No newline at end of file diff --git a/views/blog/backup2.php b/views/blog/backup2.php new file mode 100644 index 0000000..07d943d --- /dev/null +++ b/views/blog/backup2.php @@ -0,0 +1,54 @@ + +title . '.jpeg'; +if(file_exists($file)){ + $img = ""; + echo $img; +} +else +{ +echo ""; +} + +?> + + + + +
+ + +
+
title; ?>
+

body; ?>

+ Homepage +
+ +
+ + + + + + + + + + +

Here is a list of all blogs:

+ + +

+

+ title; ?>     + + read more     + + + + +
\ No newline at end of file diff --git a/views/blog/backup3.php b/views/blog/backup3.php new file mode 100644 index 0000000..4096caf --- /dev/null +++ b/views/blog/backup3.php @@ -0,0 +1,54 @@ + + +

Here is a list of all blogs:

+ + + + + + + + + +
+
+ Featured +
+
+
title; ?>
+ read more     +
+ +
+ + + \ No newline at end of file diff --git a/views/blog/backup4.php b/views/blog/backup4.php new file mode 100644 index 0000000..96a363e --- /dev/null +++ b/views/blog/backup4.php @@ -0,0 +1,18 @@ + +

Here is a list of all blogs:

+ + +

+

+ title; ?>     + + read more     + + + + +
diff --git a/views/blog/backup5.php b/views/blog/backup5.php new file mode 100644 index 0000000..e0f9d94 --- /dev/null +++ b/views/blog/backup5.php @@ -0,0 +1,65 @@ + + + + + + + + + + + + + Gits Abroad Blog Posts + + + + + + + + + + + + + + + + + + + + +
+
+
+
+
+
+ +

title . "
"; ?>

+ Read More     + +
+
+
+
+
+ + + + +
+ + + + + + + + + + + + diff --git a/views/blog/create.php b/views/blog/create.php new file mode 100644 index 0000000..f5b2e9d --- /dev/null +++ b/views/blog/create.php @@ -0,0 +1,100 @@ + + + + + + + + + + Login + + + +
+
+ + + + + + +
+ + + +
+ + + + + diff --git a/views/blog/createbackup.php b/views/blog/createbackup.php new file mode 100644 index 0000000..58f7e4a --- /dev/null +++ b/views/blog/createbackup.php @@ -0,0 +1,82 @@ + + + + + + + + + + + + + +
+ +

Add new blog

+ +

+ + +

+

+ + +

+

+ + +

+ +

+ + +

+ + + + + +

+ +

+ + + + + +

+ +

+ + + + +
+ + +

+

+ +
+

+ + + diff --git a/views/blog/draftreadall.php b/views/blog/draftreadall.php new file mode 100644 index 0000000..bc022ad --- /dev/null +++ b/views/blog/draftreadall.php @@ -0,0 +1,123 @@ + + + + + + + + + + + + + +/* + + +
+ +
+ + + + + +

title . "
"; ?>

+
+ +

+ +
+

+
+
+ + + + +
+ + read more     + + + +
+ + + + + + + + + + + + + + + + + + + + diff --git a/views/blog/read.php b/views/blog/read.php new file mode 100644 index 0000000..9946b43 --- /dev/null +++ b/views/blog/read.php @@ -0,0 +1,131 @@ + + + + + + + + + + + + + + + + + Blog Post + + + + + + + + + + + + +
+ +
+ + +
+ + +

title . "
"; ?>

+ + +

+ by + The Gits +

+ +
+ + +

Posted on blogDate . "
";?>

+ +
+ + + + +
+ + +

body; ?>

+ + +


+ + +
+ + + + + + + +
+ +
+ + + + + + + + + + + + + diff --git a/views/blog/readAll.php b/views/blog/readAll.php new file mode 100644 index 0000000..5026c2c --- /dev/null +++ b/views/blog/readAll.php @@ -0,0 +1,53 @@ + + + + + + + Gits abroad Blogs + + + + + + + + + + + + + + +
+
+ + +
+
+
+ Card image cap + + +
+
title . "
"; ?>
+ + + Read More +
+
+
+
+ +
+
+ + + + + + + + + + \ No newline at end of file diff --git a/views/blog/readAllUser.php b/views/blog/readAllUser.php new file mode 100644 index 0000000..52f104b --- /dev/null +++ b/views/blog/readAllUser.php @@ -0,0 +1,74 @@ + + + + + + + Gits abroad Blogs + + + + + + + + + + + + + + +

Welcome Blogger!! Here is a list of your capabilities

+ + + + Post a Blog +
+
+ Logout + + + + + + + + + + + +
+
+ + +
+
+
+ Card image cap +
+
title . "
"; ?>
+ + + Read More + + Update Blog + Delete + +
+
+
+
+ +
+
\ No newline at end of file diff --git a/views/blog/update.php b/views/blog/update.php new file mode 100644 index 0000000..b1acedd --- /dev/null +++ b/views/blog/update.php @@ -0,0 +1,72 @@ + + + + + + + + + + + + Login + + + +
+
+ + + +
+ + + +
+ + + + + + diff --git a/views/blog/updatebackup.php b/views/blog/updatebackup.php new file mode 100644 index 0000000..55099c2 --- /dev/null +++ b/views/blog/updatebackup.php @@ -0,0 +1,32 @@ + +

Fill in the following form to update an existing Blog:

+
+

Update Blog

+

+ + +

+

+ + +

+ + +title . '.jpeg'; +if(file_exists($file)){ + $img = ""; + echo $img; +} +else +{ +echo ""; +} + +?> +
+ +

+ +

+
\ No newline at end of file diff --git a/views/contactus/create.php b/views/contactus/create.php new file mode 100644 index 0000000..8fcffee --- /dev/null +++ b/views/contactus/create.php @@ -0,0 +1,95 @@ + + + + + + + + + + + + Register + + + + + +
+
+ + + +
+ + + + +
+ + + + + + + + + + + + + + diff --git a/views/css/style.css b/views/css/style.css new file mode 100644 index 0000000..0a6931b --- /dev/null +++ b/views/css/style.css @@ -0,0 +1,387 @@ +/*THE FIRST CODE HERE, IS CSS RESET STYLING*/ +/*OUR CODE STARTS FURTHER DOWN THE DOCUMENT*/ + +/* +html5doctor.com Reset Stylesheet +v1.6.1 +Last Updated: 2010-09-17 +Author: Richard Clark - http://richclarkdesign.com +Twitter: @rich_clark +*/ +/* +html, body, div, span, object, iframe, +h1, h2, h3, h4, h5, h6, p, blockquote, pre, +abbr, address, cite, code, +del, dfn, em, img, ins, kbd, q, samp, +small, strong, sub, sup, var, +b, i, +dl, dt, dd, ol, ul, li, +fieldset, form, label, legend, +table, caption, tbody, tfoot, thead, tr, th, td, +article, aside, canvas, details, figcaption, figure, +footer, header, hgroup, menu, nav, section, summary, +time, mark, audio, video { + margin:0; + padding:0; + border:0; + outline:0; + font-size:100%; + vertical-align:baseline; + background:transparent; +} + +body { + line-height:1; +} + +article,aside,details,figcaption,figure, +footer,header,hgroup,menu,nav,section { + display:block; +} + +nav ul { + list-style:none; +} + +blockquote, q { + quotes:none; +} + +blockquote:before, blockquote:after, +q:before, q:after { + content:''; + content:none; +} + +a { + margin:0; + padding:0; + font-size:100%; + vertical-align:baseline; + background:transparent; +} + +ins { + background-color:#ff9; + color:#000; + text-decoration:none; +} + +mark { + background-color:#ff9; + color:#000; + font-style:italic; + font-weight:bold; +} + +del { + text-decoration: line-through; +} + +abbr[title], dfn[title] { + border-bottom:1px dotted; + cursor:help; +} + +table { + border-collapse:collapse; + border-spacing:0; +} + +hr { + display:block; + height:1px; + border:0; + border-top:1px solid #cccccc; + margin:1em 0; + padding:0; +} + +input, select { + vertical-align:middle; +} + + +/*OUR CODE STARTS HERE!!! - MY CODE*/ + + +/*ALL HTML elements gets this styling +* { + text-decoration: none; +} + +/*Here we style the header for the mobile version +header { + background-color: #fff; + width: 100%; + height: 100px; +} + +header .header-brand { + font-family: Catamaran; + font-size: 24px; + font-weight: 900; + color: #111; + text-transform: uppercase; + display: block; + margin: 0 auto; + text-align: center; + padding: 20px 0; +} + +header nav ul { + display: block; + margin: 0 auto; + width: fit-content; +} + +header nav ul li { + display: inline-block; + float: left; + list-style: none; + padding: 0 16px; +} + +header nav ul li a { + font-family: Catamaran; + font-size: 16px; + color: #111; + text-transform: uppercase; +} + +header .header-cases { + display: none; +} + + +input { + padding: 0px 20px; + width: 300px; + height: 40px; + font-size: 22px; + + +} +button { + width: 300px; + height: 44px; + font-size: 22px; + + + +} +/*Here we style the header for the desktop version +@media only screen and (min-width: 1000px) { + header .header-brand { + margin: 31px 0; + text-align: left; + line-height: 38px; + padding: 0 20px 0 40px; + border-right: 3px solid #111; + float: left; + } + + header nav ul { + margin: 20px 0px 0px 20px; + float: left; + } + + header nav ul li a { + line-height: 60px; + } + + header .header-cases { + display: block; + font-family: Catamaran; + font-size: 16px; + color: #111; + text-transform: uppercase; + line-height: 38px; + border: 1px solid #111; + float: right; + margin-right: 40px; + margin-top: 30px; + padding: 0 20px; + } +} + +/*INDEX*/ +/*Here we style the main content for the mobile version +.index-banner { + width: 100%; + height: calc(100vh - 100px); + background-image: url('views/images/img/banner.jpg'); + background-repeat: no-repeat; + background-position: center; + background-size: cover; + display: table; +} + +.vertical-center { + display: table-cell; + vertical-align: middle; +} + +.index-banner h2 { + font-family: Catamaran; + font-size: 60px; + font-weight: 900; + line-height: 70px; + color: #fff; + text-align: center; + text-shadow: 2px 2px 8px #111; +} + +.index-banner h1 { + font-family: Cormorant Garamond; + font-size: 28px; + font-weight: 100; + font-style: italic; + line-height: 40px; + color: #fff; + text-align: center; + text-shadow: 2px 2px 8px #111; +} + +.index-links div { + margin: 16px 16px 0; + width: calc(100% - 32px); + height: 100px; + background-color: #f2f2f2; +} + +.index-links div h3 { + font-family: Catamaran; + font-size: 28px; + font-weight: 600; + line-height: 100px; + color: #111; + text-align: center; + text-transform: uppercase; +} + +/*Here we style the main content for the desktop ve +@media only screen and (min-width: 1000px) { + .wrapper { + width: 1000px; + margin: 0 auto; + } + + .index-banner { + height: 450px; + } + + .index-banner h1 { + display: block; + width: 560px; + margin: 0 auto; + } + + .index-links { + overflow: hidden; + } + + .index-links div { + margin: 20px 10px 0; + height: 230px; + background-color: #f2f2f2; + float: left; + } + + .index-boxlink-square { + width: calc(25% - 20px) !important; + } + + .index-boxlink-rectangle { + width: calc(50% - 20px) !important; + } + + .index-links div h3 { + line-height: 230px; + } +} + +/*FOOTER*/ +/*Here we style the footer for the mobile ve +footer { + width: calc(100% - 80px); + padding: 20px 20px; + margin-top: 20px; + background-color: grey; + overflow: hidden; +} + +footer ul { + width: fit-content; + float: left; + padding-left: 15px; +} + +footer ul li { + display: block; + list-style: none; +} + +footer ul li a { + font-family: Catamaran; + font-size: 15px; + color: #fff; + line-height: 15px; +} + +.footer-links-cases { + display: none; +} + +.footer-sm { + width: 30px; + float: right; +} + +.footer-sm img { + width: 100%; + margin-bottom: 10px; +} + +/*Here we style the footer for the desktop version*/ +/* +@media only screen and (min-width: 1000px) { + .footer-links-cases { + display: block; + } + + footer ul { + padding-right: 10px; + } + + footer ul li p { + font-family: Catamaran; + font-size: 15px; + text-align: right; + + color: #fff; + line-height: 20px; + + text-transform: uppercase; + } +} + +html { + margin: 40px auto; +} +.btn-search { + background: #424242; + border-radius: 0; + color: #fff; + border-width: 1px; + border-style: solid; + border-color: #1c1c1c; + } + .btn-search:link, .btn-search:visited { + color: #fff; + } + .btn-search:active, .btn-search:hover { + background: #1c1c1c; + color: #fff; + } +*/ \ No newline at end of file diff --git a/views/css/styles.css b/views/css/styles.css index 4feeb7b..5d3785b 100644 --- a/views/css/styles.css +++ b/views/css/styles.css @@ -1,10 +1,47 @@ -html, body, h1, h2, h3, h4, h5, h6 { - font-family: 'Pangolin', cursive; + + + profile +hover-photo{ + position:relative; + height:300px; + width:500px; + margin: 10% auto 0; + color: pink; +} +.row { + width:100%; + height:350px; +} + +img { + max-height:100%; + margin-left: auto; + margin-right: auto; + display:block; } -.w3-tangerine { - font-family: 'Tangerine', serif; + +.image { + height:40%; } -.w3-pacifico { - font-family: 'Pacifico', cursive; + +.profile { + display:inline-block; + height:100%; + width:33%; + overflow: hidden; + +} + +.ptext { + margin-left:10%; + margin-right:10%; + margin-top:8px; + height:55%; + font-size: 12pt; + text-align:justify; +} + +h3 { + text-align: center; } diff --git a/views/css/styles1.css b/views/css/styles1.css new file mode 100644 index 0000000..d3321f4 --- /dev/null +++ b/views/css/styles1.css @@ -0,0 +1,62 @@ + @import url('https://fonts.googleapis.com/css2?family=Lora&display=swap'); + + body { + padding-top: 70px; + } + + .card { + border: none; + display:inline-block; + width: 80px; + height: 1000px; + padding-top: 20px; + padding-right: 20px; + + padding-left: 20px; + + +} +.index-banner { + padding-right: 5px; + + padding-left: 5px; +} + + + + +.form-div { + opacity: 0.8; + float: left; + top: -80px; + margin: 0px; +padding: 25px 15px 10px 15px; +border: 1px solid #000000; +border-radius: 5px; +font-size: 1.1em; +font-family: "Lora", serif; + background: linear-gradient(to top, #000000 0%, #000111 100%); + color: white; + float: left; + border-radius: 30px; + + +} + +/* remove the shadow from input fields */ +.form-control:focus { + box-shadow: none; +} +/* font sizes for all the form element with a paragraph */ +form p { + font-size: .89em; +} +.form-div.login { + margin-top: 100px; +} + +.navbar a { + + color: white; + +} \ No newline at end of file diff --git a/views/css/styles2.css b/views/css/styles2.css new file mode 100644 index 0000000..d82c57b --- /dev/null +++ b/views/css/styles2.css @@ -0,0 +1,9 @@ +.card { + margin: 0 auto; + float: none; + margin-bottom: 10px; +} + +h3 { + text-align: center; +} \ No newline at end of file diff --git a/views/images/Bourneville.jpeg b/views/images/Bourneville.jpeg deleted file mode 100644 index 272b64b..0000000 Binary files a/views/images/Bourneville.jpeg and /dev/null differ diff --git a/views/images/Brockmans Gin Rocks.jpeg b/views/images/Brockmans Gin Rocks.jpeg deleted file mode 100644 index 75d0a21..0000000 Binary files a/views/images/Brockmans Gin Rocks.jpeg and /dev/null differ diff --git a/views/images/Brockmans Gin.jpeg b/views/images/Brockmans Gin.jpeg deleted file mode 100644 index 75d0a21..0000000 Binary files a/views/images/Brockmans Gin.jpeg and /dev/null differ diff --git a/views/images/Chocolate Digestive Biscuits.jpeg b/views/images/Chocolate Digestive Biscuits.jpeg deleted file mode 100644 index 7809b6e..0000000 Binary files a/views/images/Chocolate Digestive Biscuits.jpeg and /dev/null differ diff --git a/views/images/Chocolate orange.jpeg b/views/images/Chocolate orange.jpeg deleted file mode 100644 index 5aedf18..0000000 Binary files a/views/images/Chocolate orange.jpeg and /dev/null differ diff --git a/views/images/Hello.jpeg b/views/images/Hello.jpeg new file mode 100644 index 0000000..8fd0233 Binary files /dev/null and b/views/images/Hello.jpeg differ diff --git a/views/images/Hi .jpeg b/views/images/Hi .jpeg new file mode 100644 index 0000000..8fd0233 Binary files /dev/null and b/views/images/Hi .jpeg differ diff --git a/views/images/KopX.jpeg b/views/images/KopX.jpeg deleted file mode 100644 index 42e8de8..0000000 Binary files a/views/images/KopX.jpeg and /dev/null differ diff --git a/views/images/KopXYZ.jpeg b/views/images/KopXYZ.jpeg deleted file mode 100644 index 42e8de8..0000000 Binary files a/views/images/KopXYZ.jpeg and /dev/null differ diff --git a/views/images/Marmite.jpeg b/views/images/Marmite.jpeg deleted file mode 100644 index 478d7b4..0000000 Binary files a/views/images/Marmite.jpeg and /dev/null differ diff --git a/views/images/Niceness.jpeg b/views/images/Niceness.jpeg deleted file mode 100644 index 2e24c14..0000000 Binary files a/views/images/Niceness.jpeg and /dev/null differ diff --git a/views/images/Sushi.jpeg b/views/images/Sushi.jpeg deleted file mode 100644 index 1ef4b87..0000000 Binary files a/views/images/Sushi.jpeg and /dev/null differ diff --git a/views/images/Test123.jpeg b/views/images/Test123.jpeg deleted file mode 100644 index 7809b6e..0000000 Binary files a/views/images/Test123.jpeg and /dev/null differ diff --git a/views/images/TestC.jpeg b/views/images/TestC.jpeg deleted file mode 100644 index cdfec98..0000000 Binary files a/views/images/TestC.jpeg and /dev/null differ diff --git a/views/images/img/12.jpg b/views/images/img/12.jpg new file mode 100644 index 0000000..eeea67c Binary files /dev/null and b/views/images/img/12.jpg differ diff --git a/views/images/img/13.jpg b/views/images/img/13.jpg new file mode 100644 index 0000000..7ed15bc Binary files /dev/null and b/views/images/img/13.jpg differ diff --git a/views/images/img/14.jpg b/views/images/img/14.jpg new file mode 100644 index 0000000..fa42ad9 Binary files /dev/null and b/views/images/img/14.jpg differ diff --git a/views/images/img/18.jpg b/views/images/img/18.jpg new file mode 100644 index 0000000..3fd7f99 Binary files /dev/null and b/views/images/img/18.jpg differ diff --git a/views/images/img/19.jpg b/views/images/img/19.jpg new file mode 100644 index 0000000..f8ff06b Binary files /dev/null and b/views/images/img/19.jpg differ diff --git a/views/images/img/20.jpg b/views/images/img/20.jpg new file mode 100644 index 0000000..edc9c93 Binary files /dev/null and b/views/images/img/20.jpg differ diff --git a/views/images/img/21.jpg b/views/images/img/21.jpg new file mode 100644 index 0000000..bcd221b Binary files /dev/null and b/views/images/img/21.jpg differ diff --git a/views/images/img/22.jpg b/views/images/img/22.jpg new file mode 100644 index 0000000..55ae244 Binary files /dev/null and b/views/images/img/22.jpg differ diff --git a/views/images/img/23.jpg b/views/images/img/23.jpg new file mode 100644 index 0000000..107c92f Binary files /dev/null and b/views/images/img/23.jpg differ diff --git a/views/images/img/24.jpg b/views/images/img/24.jpg new file mode 100644 index 0000000..3c400f3 Binary files /dev/null and b/views/images/img/24.jpg differ diff --git a/views/images/img/5.jpg b/views/images/img/5.jpg new file mode 100644 index 0000000..7ae6ffc Binary files /dev/null and b/views/images/img/5.jpg differ diff --git a/views/images/img/6.jpg b/views/images/img/6.jpg new file mode 100644 index 0000000..299bae4 Binary files /dev/null and b/views/images/img/6.jpg differ diff --git a/views/images/img/PH.JPG b/views/images/img/PH.JPG new file mode 100644 index 0000000..d5ab5bc Binary files /dev/null and b/views/images/img/PH.JPG differ diff --git a/views/images/img/aboutusback.jpeg b/views/images/img/aboutusback.jpeg new file mode 100644 index 0000000..27b84aa Binary files /dev/null and b/views/images/img/aboutusback.jpeg differ diff --git a/views/images/img/banner.jpg b/views/images/img/banner.jpg new file mode 100644 index 0000000..ba3a739 Binary files /dev/null and b/views/images/img/banner.jpg differ diff --git a/views/images/img/beach.jpg b/views/images/img/beach.jpg new file mode 100644 index 0000000..da9226e Binary files /dev/null and b/views/images/img/beach.jpg differ diff --git a/views/images/img/beach1.jpg b/views/images/img/beach1.jpg new file mode 100644 index 0000000..1733090 Binary files /dev/null and b/views/images/img/beach1.jpg differ diff --git a/views/images/img/capri.jpg b/views/images/img/capri.jpg new file mode 100644 index 0000000..d94846f Binary files /dev/null and b/views/images/img/capri.jpg differ diff --git a/views/images/img/capri2.jpg b/views/images/img/capri2.jpg new file mode 100644 index 0000000..1c7afc1 Binary files /dev/null and b/views/images/img/capri2.jpg differ diff --git a/views/images/img/facebook-logo-button.png b/views/images/img/facebook-logo-button.png new file mode 100644 index 0000000..dfec361 Binary files /dev/null and b/views/images/img/facebook-logo-button.png differ diff --git a/views/images/img/favicon2.png b/views/images/img/favicon2.png new file mode 100644 index 0000000..7089629 Binary files /dev/null and b/views/images/img/favicon2.png differ diff --git a/views/images/img/img1.jpeg b/views/images/img/img1.jpeg new file mode 100644 index 0000000..712a497 Binary files /dev/null and b/views/images/img/img1.jpeg differ diff --git a/views/images/img/img2.jpeg b/views/images/img/img2.jpeg new file mode 100644 index 0000000..a1a5f40 Binary files /dev/null and b/views/images/img/img2.jpeg differ diff --git a/views/images/img/img3.jpeg b/views/images/img/img3.jpeg new file mode 100644 index 0000000..d3e9a06 Binary files /dev/null and b/views/images/img/img3.jpeg differ diff --git a/views/images/img/img4.jpeg b/views/images/img/img4.jpeg new file mode 100644 index 0000000..38bf2bf Binary files /dev/null and b/views/images/img/img4.jpeg differ diff --git a/views/images/img/img5.jpeg b/views/images/img/img5.jpeg new file mode 100644 index 0000000..e6a9105 Binary files /dev/null and b/views/images/img/img5.jpeg differ diff --git a/views/images/img/italy.jpg b/views/images/img/italy.jpg new file mode 100644 index 0000000..f4e1719 Binary files /dev/null and b/views/images/img/italy.jpg differ diff --git a/views/images/img/maroc.jpg b/views/images/img/maroc.jpg new file mode 100644 index 0000000..1d0fe7a Binary files /dev/null and b/views/images/img/maroc.jpg differ diff --git a/views/images/img/morocco2.jpg b/views/images/img/morocco2.jpg new file mode 100644 index 0000000..d5fac1e Binary files /dev/null and b/views/images/img/morocco2.jpg differ diff --git a/views/images/img/morocco3.jpg b/views/images/img/morocco3.jpg new file mode 100644 index 0000000..b5c99e2 Binary files /dev/null and b/views/images/img/morocco3.jpg differ diff --git a/views/images/img/morocco4.jpg b/views/images/img/morocco4.jpg new file mode 100644 index 0000000..a59981f Binary files /dev/null and b/views/images/img/morocco4.jpg differ diff --git a/views/images/img/morocco6.jpg b/views/images/img/morocco6.jpg new file mode 100644 index 0000000..0f21db8 Binary files /dev/null and b/views/images/img/morocco6.jpg differ diff --git a/views/images/img/morocco7.jpg b/views/images/img/morocco7.jpg new file mode 100644 index 0000000..f931933 Binary files /dev/null and b/views/images/img/morocco7.jpg differ diff --git a/views/images/img/morocco8.jpg b/views/images/img/morocco8.jpg new file mode 100644 index 0000000..49a0f51 Binary files /dev/null and b/views/images/img/morocco8.jpg differ diff --git a/views/images/img/moroccoguide.jpg b/views/images/img/moroccoguide.jpg new file mode 100644 index 0000000..dcbaaa2 Binary files /dev/null and b/views/images/img/moroccoguide.jpg differ diff --git a/views/images/img/morroco.jpg b/views/images/img/morroco.jpg new file mode 100644 index 0000000..020b6da Binary files /dev/null and b/views/images/img/morroco.jpg differ diff --git a/views/images/img/newyork b/views/images/img/newyork new file mode 100644 index 0000000..d03f8e9 Binary files /dev/null and b/views/images/img/newyork differ diff --git a/views/images/img/newyork.jpg b/views/images/img/newyork.jpg new file mode 100644 index 0000000..3e4557f Binary files /dev/null and b/views/images/img/newyork.jpg differ diff --git a/views/images/img/newyork1.jpg b/views/images/img/newyork1.jpg new file mode 100644 index 0000000..277fa51 Binary files /dev/null and b/views/images/img/newyork1.jpg differ diff --git a/views/images/img/poland.jpg b/views/images/img/poland.jpg new file mode 100644 index 0000000..435419a Binary files /dev/null and b/views/images/img/poland.jpg differ diff --git a/views/images/img/porto.jpg b/views/images/img/porto.jpg new file mode 100644 index 0000000..1ee236d Binary files /dev/null and b/views/images/img/porto.jpg differ diff --git a/views/images/img/sahara.jpg b/views/images/img/sahara.jpg new file mode 100644 index 0000000..119fbf9 Binary files /dev/null and b/views/images/img/sahara.jpg differ diff --git a/views/images/img/this.jpeg b/views/images/img/this.jpeg new file mode 100644 index 0000000..b630c98 Binary files /dev/null and b/views/images/img/this.jpeg differ diff --git a/views/images/img/turkey.jpg b/views/images/img/turkey.jpg new file mode 100644 index 0000000..72be381 Binary files /dev/null and b/views/images/img/turkey.jpg differ diff --git a/views/images/img/turkey1.jpg b/views/images/img/turkey1.jpg new file mode 100644 index 0000000..7215454 Binary files /dev/null and b/views/images/img/turkey1.jpg differ diff --git a/views/images/img/turkey3.jpg b/views/images/img/turkey3.jpg new file mode 100644 index 0000000..f03fb10 Binary files /dev/null and b/views/images/img/turkey3.jpg differ diff --git a/views/images/img/twitter-logo-button.png b/views/images/img/twitter-logo-button.png new file mode 100644 index 0000000..9fb262d Binary files /dev/null and b/views/images/img/twitter-logo-button.png differ diff --git a/views/images/img/update.jpeg b/views/images/img/update.jpeg new file mode 100644 index 0000000..ef3aefd Binary files /dev/null and b/views/images/img/update.jpeg differ diff --git a/views/images/img/vietnam2.jpg b/views/images/img/vietnam2.jpg new file mode 100644 index 0000000..649ad2e Binary files /dev/null and b/views/images/img/vietnam2.jpg differ diff --git a/views/images/img/vietnam3.jpg b/views/images/img/vietnam3.jpg new file mode 100644 index 0000000..aa020c6 Binary files /dev/null and b/views/images/img/vietnam3.jpg differ diff --git a/views/images/img/vietnam4.jpg b/views/images/img/vietnam4.jpg new file mode 100644 index 0000000..fdfd54e Binary files /dev/null and b/views/images/img/vietnam4.jpg differ diff --git a/views/images/img/vietnamx.jpg b/views/images/img/vietnamx.jpg new file mode 100644 index 0000000..84e5403 Binary files /dev/null and b/views/images/img/vietnamx.jpg differ diff --git a/views/images/img/youtube-symbol.png b/views/images/img/youtube-symbol.png new file mode 100644 index 0000000..e9352e1 Binary files /dev/null and b/views/images/img/youtube-symbol.png differ diff --git a/views/images/jkasdkasjd.jpeg b/views/images/jkasdkasjd.jpeg new file mode 100644 index 0000000..ba3a739 Binary files /dev/null and b/views/images/jkasdkasjd.jpeg differ diff --git a/views/images/test.jpeg b/views/images/test.jpeg deleted file mode 100644 index 2e24c14..0000000 Binary files a/views/images/test.jpeg and /dev/null differ diff --git a/views/images/testZZZ.jpeg b/views/images/testZZZ.jpeg deleted file mode 100644 index d858e05..0000000 Binary files a/views/images/testZZZ.jpeg and /dev/null differ diff --git a/views/images/testabc.jpeg b/views/images/testabc.jpeg deleted file mode 100644 index 5aedf18..0000000 Binary files a/views/images/testabc.jpeg and /dev/null differ diff --git a/views/images/testqwerty.jpeg b/views/images/testqwerty.jpeg deleted file mode 100644 index 75d0a21..0000000 Binary files a/views/images/testqwerty.jpeg and /dev/null differ diff --git a/views/layout.php b/views/layout.php index 710587e..df30279 100644 --- a/views/layout.php +++ b/views/layout.php @@ -1,27 +1,94 @@ - - + + + + + + + Our Blog + + + + + - - - - -Shopping Cart + + + + + + + -
- Home - Products - Add Product +
+ + + + +
- -
-
- Copyright © -
+ + + + + + + + \ No newline at end of file diff --git a/views/pages/aboutus.php b/views/pages/aboutus.php new file mode 100644 index 0000000..63326d4 --- /dev/null +++ b/views/pages/aboutus.php @@ -0,0 +1,114 @@ + + + + + + + + + + + + + + + +
+ +
+
+ +
+ + + +
+
+

Maeve

+ Will be finishing my degree this year, which calls for a parrrtay +
Fave phrase during project: "You get what I mean?"
+
+
+
+ +
+ + + +
+
+

Bushra

+ Cannot wait to take myself on a trip away +
Fave phrase during project: "Sorry Guys"
+
+
+
+ +
+ + + +
+
+

Jenny

+ I love to travel and I cannot wait until these 'unprecedented times' are over +
Fave phrase during project: "Guys, Let's branch"
+
+
+ +
+ +
+
+ +
+ + + +
+
+

Precieuse

+ Travelling is one of my favourites pastimes and I look forward to sharing with you the tips and tricks that I have picked up over the years. +
Fave phrase during project: "Please God"
+
+
+
+ +
+ + + +
+
+

Izzy

+ I always try to go for the Dora Explorer Vibes! +
Fave phrase during project: "LOL"
+
+
+
+ +
+ + + + + + + + + + + + diff --git a/views/pages/home.php b/views/pages/home.php index b86d6a0..d32f1ad 100644 --- a/views/pages/home.php +++ b/views/pages/home.php @@ -1,4 +1,145 @@ -

Hello there !

-

The above data is present to demonstrate the utilisation of variables -populated earlier within the page processing

-

This is the home page of the MVC Skeleton Application

\ No newline at end of file + + + + + + + Our Blog + + + + + + + + + +
+
+
+
+
+ + + +
+ +
+
+

Explore the world with us.

+

Our blog is not just about photography, it will take you on a journey of culture, food, history and beyond

+
+
+ + + +
+ + +
+
+
+ + + +
+ +
+ Card image +
+
Italy
+

Italy comprises some of the most varied and scenic landscapes on Earth and is often described as a country shaped like a boot. Home to many of the world's greatest works of art, architecture and gastronomy, Italy elates, inspires and moves like no other.

+
+ See all blogs... +
+
+
+ Card image +
+
Vietnam
+

A land of staggering natural beauty and cultural complexities, of dynamic megacities and hill-tribe villages, Vietnam is both exotic and compelling.

+
+ See all blogs... +
+
+
+ Card image cap +
+
Turkey
+

A richly historical land with some of the best cuisine you will ever taste, scenery from beaches to mountains and the great city of İstanbul.

+
+ See all blogs... +
+
+
+ Card image cap +
+
Poland
+

Picturesque cities such as Kraków and Gdańsk vie with energetic Warsaw for your urban attention. Elsewhere, woods, rivers, lakes and hills beckon for some fresh-air fun.

+
+ See all blogs... +
+
+
+ Card image cap +
+
U.S.A
+

Epicenter of the arts. Architectural darling. Dining and shopping capital. Trendsetter. New York City wears many crowns, and spreads an irresistible feast for all. + +

+ See all blogs... +
+ +
+
+
+ + +
+
+
+ +
+
+ + + + + + + +
+ + + + + + + + + + + + + + + diff --git a/views/pages/login.php b/views/pages/login.php new file mode 100644 index 0000000..c282b9d --- /dev/null +++ b/views/pages/login.php @@ -0,0 +1,70 @@ + + + + + + + + + + + Login + + + +
+
+ + + +
+ + + +
+ + + + + diff --git a/views/pages/signup.php b/views/pages/signup.php new file mode 100644 index 0000000..5aaf60a --- /dev/null +++ b/views/pages/signup.php @@ -0,0 +1,71 @@ + + + + + + + + + + Register + + + + +
+
+ + + +
+ + + +
+ + + + + diff --git a/views/products/aboutus.php b/views/products/aboutus.php new file mode 100644 index 0000000..3ac00fa --- /dev/null +++ b/views/products/aboutus.php @@ -0,0 +1,8 @@ +Fill in the following form to create a new product:

+ + + + + + + + + + +
-

Add New Item

-
-

- - -

-

- - -

- +
+ +

Add new blog

+ +

+ + +

+

+ + +

+

+ + +

+ +

+ + +

+ + + + + +

+ +

+ +

- +

- \ No newline at end of file + + + + +
+ + +

+

+ +
+

+ diff --git a/views/products/readAll.php b/views/products/readAll.php index 801e790..9ce5008 100644 --- a/views/products/readAll.php +++ b/views/products/readAll.php @@ -1,10 +1,19 @@

Here is a list of all products:

- + //this page when you do blog post table this needs to be updated

name; ?>     See product information     Delete Product     Update Product  

- \ No newline at end of file + + + + + + + + diff --git a/views/products/signup.php b/views/products/signup.php new file mode 100644 index 0000000..155ee53 --- /dev/null +++ b/views/products/signup.php @@ -0,0 +1,55 @@ + + + + + + + + + + + + Register + + + +
+
+
+
+

Register

+ +
+ + +
+
+ + +
+ +
+ +
+

Already a member? Sign In

+ + + + +
+ + +
+ + +
+ + + +
+ + + + diff --git a/views/products/update.php b/views/products/update.php index 5f3e30e..d737c3a 100644 --- a/views/products/update.php +++ b/views/products/update.php @@ -2,17 +2,17 @@

Update Item

- - + +

- - + +

name . '.jpeg'; +$file = 'views/images/' . $blog->title . '.jpeg'; if(file_exists($file)){ $img = ""; echo $img; @@ -26,6 +26,6 @@

- +

\ No newline at end of file diff --git a/views/products/validate.php b/views/products/validate.php new file mode 100644 index 0000000..66d28ce --- /dev/null +++ b/views/products/validate.php @@ -0,0 +1,71 @@ + + + + + + + + + + + + + Login + + +
+
+ + + +
+ + + +
+ + + + + + diff --git a/views/subscribe/create.php b/views/subscribe/create.php new file mode 100644 index 0000000..54ccdf7 --- /dev/null +++ b/views/subscribe/create.php @@ -0,0 +1,61 @@ + + + + + + + + + + + + + + + + + +
+ + +
+ + + + + + diff --git a/views/subscribe/thank_you.php b/views/subscribe/thank_you.php new file mode 100644 index 0000000..47d12c4 --- /dev/null +++ b/views/subscribe/thank_you.php @@ -0,0 +1,40 @@ + + + + + + + + + + + + +
+ +
+ + + + + + +