Skip to content

Commit d0b3599

Browse files
committed
added seperate registration page, create thank you page, started on email confirmation system
1 parent 43e9e7b commit d0b3599

File tree

6 files changed

+244
-101
lines changed

6 files changed

+244
-101
lines changed

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
*.DS_Store
2+
resumes
3+
config.php

css/style.css

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,11 +44,19 @@
4444
}
4545

4646
#register-container {
47+
margin: 0;
4748
color: #FFF;
48-
background-color: #222222;
4949
}
5050

5151
#footer {
5252
padding: 20px;
5353
text-align: right;
5454
}
55+
56+
#register_page_wrapper {
57+
background-color: #222222;
58+
}
59+
60+
#thankyou {
61+
color: #FFF;
62+
}

index.html

Lines changed: 23 additions & 100 deletions
Original file line numberDiff line numberDiff line change
@@ -1,87 +1,66 @@
1-
<!--
2-
In production, rename file to index.php and uncomment this code
3-
<?php
4-
// db credentials
5-
include_once 'config.php';
6-
7-
// db connection
8-
$pdo = new PDO($config['db']['connString'], $config['db']['username'], $config['db']['password']);
9-
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
10-
if(isset($_POST['fname'], $_POST['lname'], $_POST['age'], $_POST['email'], $_POST['diet_res'], $_POST['shirt_size'])){
11-
//echo '<pre>'.print_r($_POST, true).'</pre>';
12-
13-
$stmt = $pdo->prepare ("INSERT INTO users (fname, lname, age, email, resume_path, diet_res, shirt_size) VALUES (:fname, :lname, :age, :email, :resume_path, :diet_res, :shirt_size)");
14-
$stmt->bindParam(':fname', $_POST['fname']);
15-
$stmt->bindParam(':lname', $_POST['lname']);
16-
$stmt->bindParam(':age', $_POST['age']);
17-
$stmt->bindParam(':email', $_POST['email']);
18-
$stmt->bindValue(':resume_path', 'resumes/'.$_FILES['resume']['name']);
19-
$stmt->bindParam(':diet_res', $_POST['diet_res']);
20-
$stmt->bindParam(':shirt_size', $_POST['shirt_size']);
21-
22-
$stmt->execute();
23-
24-
move_uploaded_file($_FILES['resume']['tmp_name'], "resumes/".$_FILES['resume']['name']);
25-
}
26-
27-
?>-->
281
<!DOCTYPE html>
292
<html lang="en">
303
<head>
314
<meta name="viewport" content="width=device-width, initial-scale=1">
325

336
<title>Monarchs Hack</title>
34-
<!-- Third party Styles-->
7+
<!-- HOSTED STYLES -->
358
<link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css"/>
369

37-
<!-- Our Styles -->
10+
<!-- LOCAL STYLES -->
3811
<link rel="stylesheet" type="text/css" href="css/style.css"/>
3912
<link rel="stylesheet" type="text/css" href="css/timeline.css"/>
4013

14+
<!-- LOCAL SCRIPTS -->
4115
<script src="js/modernizr.custom.js"></script>
4216

4317
</head>
4418

4519
<body data-spy="scroll" data-target="#navbar">
46-
20+
21+
<!-- NAVIGATION -->
4722
<nav id="navbar" class="navbar navbar-inverse navbar-fixed-top">
4823
<ul class="nav navbar-nav">
4924
<li><a href="#home"><i class="glyphicon glyphicon-home"></i></a></li>
5025
<li><a href="#about">About</a></li>
5126
<li><a href="#schedule">Schedule</a></li>
5227
<li><a href="#sponsors">Sponsors</a></li>
53-
<li><a href="#register">Register</a></li>
28+
<li><a href="register.php">Register</a></li>
5429
</ul>
55-
</nav>
30+
</nav><!-- end NAV -->
5631

32+
<!-- BG JUMBOTON HOME -->
5733
<div class="bg"></div>
5834
<div class="jumbotron">
5935
<div id="home" class="container">
6036
<h1>Monarchs Hack the Campus</h1>
61-
<h2>October 2-4, 2015</h2>
37+
<h2>October 2-4, 2015</h2>
6238
<p>
63-
<a href="#register" class="btn btn-custom">Register</a>
39+
<a href="register.php" class="btn btn-custom">Register</a>
6440
<a href="#contact" class="btn btn-custom">Contact</a>
6541
</p>
66-
</div>
67-
</div>
42+
</div><!-- end home -->
43+
</div><!-- end jumbotron -->
6844

45+
<!-- ABOUT -->
6946
<div id="about" class="container">
7047
<h1>About</h1>
7148
<p>
7249
This season, the Strome Entrepreneurial Center at ODU will host "Monarchs Hack the Campus"! Where hackers will have the
7350
opportunity to come and address multiple challenges. Each interesting, unique, judged, and awarded separately from the others.
7451
<h3>#HappyHacking</h3>
7552
</p>
76-
</div>
53+
</div><!-- end About -->
7754

55+
<!-- SCHEDULE -->
7856
<div id="schedule" class="container">
7957
<h1>Schedule</h1>
8058

8159
<div id="stage"></div>
8260

83-
</div>
61+
</div><!-- END SCHEDULE -->
8462

63+
<!-- SPONSORS -->
8564
<div id="sponsors" class="container">
8665
<h1>Sponsors</h1>
8766
<p>
@@ -103,76 +82,20 @@ <h1>Sponsors</h1>
10382
<li>Award the winner(s) for their hard work</li>
10483
</ol>
10584
</p>
106-
</div>
107-
108-
<div id="register-container" class="container-fluid">
109-
<div id="register" class="container">
110-
<h1>Register</h1>
111-
112-
<form method="POST" enctype="multipart/form-data">
113-
114-
<div class="form-group">
115-
<label>First Name</label>
116-
<input class="form-control" type="text" name="fname"/>
117-
</div>
118-
119-
<div class="form-group">
120-
<label>Last Name</label>
121-
<input class="form-control" type="text" name="lname"/>
122-
</div>
123-
124-
<div class="form-group">
125-
<label>Email</label>
126-
<input class="form-control" type="email" name="email"/>
127-
</div>
128-
129-
<div class="form-group">
130-
<label for="age">Age ( 18 and Over ) <label>
131-
<input id="age" class="form-control" type="number" name="age"/>
132-
</div>
133-
134-
<div class="form-group">
135-
<label>Optional - Resume(PDF preferred)</label>
136-
<input class="form-control" type="file" name="resume"/>
137-
</div>
138-
139-
<div class="form-group">
140-
<label>Dietary Restrictions</label>
141-
<select class="form-control" name="diet_res">
142-
<option value="none">None</option>
143-
<option value="vegan">Vegan</option>
144-
<option value="vegitarian">Vegetarian</option>
145-
<option value="no-gluten">Gluten Free</option>
146-
</select>
147-
</div>
148-
149-
<div class="form-group">
150-
<label>T-Shirt Size</label>
151-
<select class="form-control" name="shirt_size">
152-
<option value="s">Small</option>
153-
<option value="m">Medium</option>
154-
<option value="l">Large</option>
155-
<option value="xl">X-Large</option>
156-
<option value="xxl">XX-Large</option>
157-
</select>
158-
</div>
159-
160-
<div class="form-group">
161-
<button class="btn btn-primary" type="submit">Register</button>
162-
</div>
163-
</form>
164-
</div>
165-
</div>
85+
</div><!-- end sponsors -->
16686

87+
<!-- FOOTER -->
16788
<div id="footer" class="container-fluid">
16889
<div class="container">
16990
Old Dominion ACM &copy; 2015
17091
</div>
171-
</div>
172-
92+
</div><!-- end footer -->
93+
94+
<!-- HOSTED SCRIPTS -->
17395
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
17496
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
17597

98+
<!-- LOCAL SCRIPTS -->
17699
<script src="js/main.js"></script>
177100
<script src="js/interactive-svg.js"></script>
178101

register.php

Lines changed: 156 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,156 @@
1+
<?php
2+
// db credentials
3+
include_once 'config.php';
4+
5+
// db connection
6+
$pdo = new PDO($config['db']['connString'], $config['db']['username'], $config['db']['password']);
7+
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
8+
9+
if(isset($_POST['fname'], $_POST['lname'], $_POST['age'], $_POST['email'], $_POST['diet_res'], $_POST['shirt_size'])) {
10+
//make user resume name string
11+
$resume_dir = "resumes";
12+
$resume_filename = $_POST['fname'].'_'.$_POST['lname'].'_'.$_POST['age'].'.'.end(explode('.',$_FILES['resume']['name']));
13+
14+
$stmt = $pdo->prepare ("INSERT INTO users (fname, lname, age, email, resume_path, diet_res, shirt_size) VALUES (:fname, :lname, :age, :email, :resume_path, :diet_res, :shirt_size)");
15+
$stmt->bindParam(':fname', $_POST['fname']);
16+
$stmt->bindParam(':lname', $_POST['lname']);
17+
$stmt->bindParam(':age', $_POST['age']);
18+
$stmt->bindParam(':email', $_POST['email']);
19+
$stmt->bindValue(':resume_path', $resume_filename);
20+
$stmt->bindParam(':diet_res', $_POST['diet_res']);
21+
$stmt->bindParam(':shirt_size', $_POST['shirt_size']);
22+
23+
$stmt->execute();
24+
25+
move_uploaded_file($_FILES['resume']['tmp_name'], "$resume_dir/$resume_filename");
26+
/*
27+
$headers = 'From: '.$_POST['email'] . "\r\n" .
28+
'Reply-To: '.$_POST['email'] . "\r\n" .
29+
'X-Mailer: PHP/' . phpversion();
30+
31+
$confirm_msg = 'Thank you for regisitering for Old Domimion ACM\'s Monarchs hack the campus.<a href="">Click here</a> to confirm it is really you.';
32+
33+
mail($_POST['email'], 'Monarchs Hack Registration', $confirm_msg, $headers);
34+
header('Location: thankyou.php?name='.urlencode($_POST['fname'].' '.$_POST['lname']));
35+
*/
36+
header('Location: index.html');
37+
38+
}
39+
40+
?>
41+
<!DOCTYPE html>
42+
<html lang="en">
43+
<head>
44+
<meta name="viewport" content="width=device-width, initial-scale=1">
45+
46+
<title>Monarchs Hack</title>
47+
<!-- Hosted Styles-->
48+
<link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css"/>
49+
50+
<!-- Local Styles -->
51+
<link rel="stylesheet" type="text/css" href="css/style.css"/>
52+
<link rel="stylesheet" type="text/css" href="css/timeline.css"/>
53+
54+
<!-- local script -->
55+
<script src="js/modernizr.custom.js"></script>
56+
57+
</head>
58+
<body data-spy="scroll" data-target="#navbar">
59+
<div id="register_page_wrapper">
60+
61+
<nav id="navbar" class="navbar navbar-inverse">
62+
<ul class="nav navbar-nav">
63+
<li><a href="index.html#home"><i class="glyphicon glyphicon-home"></i></a></li>
64+
<li><a href="index.html#about">About</a></li>
65+
<li><a href="index.html#schedule">Schedule</a></li>
66+
<li><a href="index.html#sponsors">Sponsors</a></li>
67+
<li><a href="register.php">Register</a></li>
68+
</ul>
69+
</nav>
70+
71+
<!-- REGISTRATION FORM -->
72+
<div id="register-container" class="container-fluid">
73+
<div id="register" class="container">
74+
<h1>Register</h1>
75+
76+
<form method="POST" enctype="multipart/form-data">
77+
78+
<!-- first name input -->
79+
<div class="form-group">
80+
<label>First Name</label>
81+
<input class="form-control" type="text" name="fname"/>
82+
</div><!-- end first name input -->
83+
84+
<!-- last name input -->
85+
<div class="form-group">
86+
<label>Last Name</label>
87+
<input class="form-control" type="text" name="lname"/>
88+
</div><!-- end last name input -->
89+
90+
<!-- email input -->
91+
<div class="form-group">
92+
<label>Email</label>
93+
<input class="form-control" type="email" name="email"/>
94+
</div><!-- end email input -->
95+
96+
<!-- age input -->
97+
<div class="form-group">
98+
<label for="age">Age ( 18 and Over ) <label>
99+
<input id="age" class="form-control" type="number" name="age"/>
100+
</div><!-- end age input -->
101+
102+
<!-- resume upload -->
103+
<div class="form-group">
104+
<label>Optional - Resume(PDF preferred)</label>
105+
<input class="form-control" type="file" name="resume"/>
106+
</div><!-- end resume upload -->
107+
108+
<!-- diet_res dropdown -->
109+
<div class="form-group">
110+
<label>Dietary Restrictions</label>
111+
<select class="form-control" name="diet_res">
112+
<option value="none">None</option>
113+
<option value="vegan">Vegan</option>
114+
<option value="vegitarian">Vegetarian</option>
115+
<option value="no-gluten">Gluten Free</option>
116+
</select>
117+
</div><!-- end diet_res dropdown -->
118+
119+
<!-- shirt_size dropdown -->
120+
<div class="form-group">
121+
<label>T-Shirt Size</label>
122+
<select class="form-control" name="shirt_size">
123+
<option value="s">Small</option>
124+
<option value="m">Medium</option>
125+
<option value="l">Large</option>
126+
<option value="xl">X-Large</option>
127+
<option value="xxl">XX-Large</option>
128+
</select>
129+
</div><!-- end shirt_size drop down -->
130+
131+
<!-- register button -->
132+
<div class="form-group">
133+
<button class="btn btn-primary" type="submit">Register</button>
134+
</div><!-- end register button -->
135+
</form><!-- end FORM -->
136+
</div><!-- end register -->
137+
</div><!-- end register-container -->
138+
139+
<!-- FOOTER -->
140+
<div id="footer" class="container-fluid">
141+
<div class="container" style="color: #FFF">
142+
Old Dominion ACM &copy; 2015
143+
</div>
144+
</div><!-- end footer -->
145+
</div><!-- end register_page_wrapper -->
146+
147+
<!-- HOSTED SCRIPTS -->
148+
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
149+
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
150+
151+
<!-- LOCAL SCRIPTS -->
152+
<script src="js/main.js"></script>
153+
<script src="js/interactive-svg.js"></script>
154+
155+
</body>
156+
</html>

resumes/.DS_Store

-6 KB
Binary file not shown.

0 commit comments

Comments
 (0)