Commit 0bf5d191190c31783f1e2be576ec1766be152381
1 parent
653572099c
Exists in
master
and in
1 other branch
updated login page
Showing 2 changed files with 9 additions and 1 deletions Inline Diff
styles/flashy.css
View file @
0bf5d19
.no-user-select { | 1 | 1 | .no-user-select { | |
-moz-user-select: none; | 2 | 2 | -moz-user-select: none; | |
-webkit-user-select: none; | 3 | 3 | -webkit-user-select: none; | |
-ms-user-select: none; | 4 | 4 | -ms-user-select: none; | |
user-select: none; | 5 | 5 | user-select: none; | |
} | 6 | 6 | } | |
7 | 7 | |||
.angucomplete-dropdown { | 8 | 8 | .angucomplete-dropdown { | |
border-color: #ececec; | 9 | 9 | border-color: #ececec; | |
border-width: 1px; | 10 | 10 | border-width: 1px; | |
border-style: solid; | 11 | 11 | border-style: solid; | |
border-radius: 2px; | 12 | 12 | border-radius: 2px; | |
/*width: 250px;*/ | 13 | 13 | /*width: 250px;*/ | |
padding: 6px; | 14 | 14 | padding: 6px; | |
cursor: pointer; | 15 | 15 | cursor: pointer; | |
z-index: 9999; | 16 | 16 | z-index: 9999; | |
position: absolute; | 17 | 17 | position: absolute; | |
/*top: 32px; | 18 | 18 | /*top: 32px; | |
left: 0px; | 19 | 19 | left: 0px; | |
*/ | 20 | 20 | */ | |
margin-top: -6px; | 21 | 21 | margin-top: -6px; | |
background-color: #ffffff; | 22 | 22 | background-color: #ffffff; | |
} | 23 | 23 | } | |
24 | 24 | |||
.angucomplete-description { | 25 | 25 | .angucomplete-description { | |
font-size: 14px; | 26 | 26 | font-size: 14px; | |
} | 27 | 27 | } | |
28 | 28 | |||
.angucomplete-row { | 29 | 29 | .angucomplete-row { | |
padding: 5px; | 30 | 30 | padding: 5px; | |
color: #000000; | 31 | 31 | color: #000000; | |
margin-bottom: 4px; | 32 | 32 | margin-bottom: 4px; | |
clear: both; | 33 | 33 | clear: both; | |
} | 34 | 34 | } | |
35 | 35 | |||
.angucomplete-selected-row { | 36 | 36 | .angucomplete-selected-row { | |
background-color: #aaaaff; | 37 | 37 | background-color: #aaaaff; | |
} | 38 | 38 | } | |
39 | 39 | |||
/*.container .row {*/ | 40 | 40 | /*.container .row {*/ | |
/*margin-left: 0;*/ | 41 | 41 | /*margin-left: 0;*/ | |
/*margin-right: 0;*/ | 42 | 42 | /*margin-right: 0;*/ | |
/*}*/ | 43 | 43 | /*}*/ | |
44 | 44 | |||
/* Flashcard directive css */ | 45 | 45 | /* Flashcard directive css */ | |
.card { | 46 | 46 | .card { | |
word-wrap: break-word; | 47 | 47 | word-wrap: break-word; | |
} | 48 | 48 | } | |
49 | 49 | |||
.card.flashy { | 50 | 50 | .card.flashy { | |
background-color: #fff; | 51 | 51 | background-color: #fff; | |
font-family: 'Titillium Web', sans-serif; | 52 | 52 | font-family: 'Titillium Web', sans-serif; | |
float: left; | 53 | 53 | float: left; | |
text-align: center; | 54 | 54 | text-align: center; | |
margin: 6px; | 55 | 55 | margin: 6px; | |
transition: all 0.2s cubic-bezier(0, 0, 0.6, 1); | 56 | 56 | transition: all 0.2s cubic-bezier(0, 0, 0.6, 1); | |
} | 57 | 57 | } | |
58 | 58 | |||
.card.flashy.shrinky { | 59 | 59 | .card.flashy.shrinky { | |
height: 0; | 60 | 60 | height: 0; | |
opacity: 0; | 61 | 61 | opacity: 0; | |
overflow: hidden; | 62 | 62 | overflow: hidden; | |
} | 63 | 63 | } | |
64 | 64 | |||
.card-overlay { | 65 | 65 | .card-overlay { | |
cursor: pointer; | 66 | 66 | cursor: pointer; | |
left: 0; | 67 | 67 | left: 0; | |
opacity: 0; | 68 | 68 | opacity: 0; | |
position: absolute; | 69 | 69 | position: absolute; | |
top: 0; | 70 | 70 | top: 0; | |
transition: visibility 0s cubic-bezier(0, 0, 0.6, 1) 0.2s, | 71 | 71 | transition: visibility 0s cubic-bezier(0, 0, 0.6, 1) 0.2s, | |
opacity 0.2s cubic-bezier(0, 0, 0.6, 1); | 72 | 72 | opacity 0.2s cubic-bezier(0, 0, 0.6, 1); | |
/* animation effect to appear on off-hover */ | 73 | 73 | /* animation effect to appear on off-hover */ | |
visibility: hidden; | 74 | 74 | visibility: hidden; | |
height: 100%; | 75 | 75 | height: 100%; | |
width: 100%; | 76 | 76 | width: 100%; | |
} | 77 | 77 | } | |
78 | 78 | |||
.card-overlay i { | 79 | 79 | .card-overlay i { | |
color: #FFF; | 80 | 80 | color: #FFF; | |
left: 50%; | 81 | 81 | left: 50%; | |
position: absolute; | 82 | 82 | position: absolute; | |
top: 50%; | 83 | 83 | top: 50%; | |
transform: translate(-50%, -50%); | 84 | 84 | transform: translate(-50%, -50%); | |
transition: all 0.2s cubic-bezier(0, 0, 0.6, 1) 0s; | 85 | 85 | transition: all 0.2s cubic-bezier(0, 0, 0.6, 1) 0s; | |
} | 86 | 86 | } | |
87 | 87 | |||
.center-me:hover i { | 88 | 88 | .center-me:hover i { | |
text-shadow: 0 0 15px rgba(255, 255, 255, 0.9); | 89 | 89 | text-shadow: 0 0 15px rgba(255, 255, 255, 0.9); | |
} | 90 | 90 | } | |
91 | 91 | |||
.card:hover .card-overlay { | 92 | 92 | .card:hover .card-overlay { | |
opacity: 1.0; | 93 | 93 | opacity: 1.0; | |
transition-delay: 0s; /* animation effect to appear on hover */ | 94 | 94 | transition-delay: 0s; /* animation effect to appear on hover */ | |
visibility: visible; | 95 | 95 | visibility: visible; | |
} | 96 | 96 | } | |
97 | 97 | |||
.top-box { | 98 | 98 | .top-box { | |
background-color: rgba(0, 184, 76, 0.5); | 99 | 99 | background-color: rgba(0, 184, 76, 0.5); | |
height: 65%; | 100 | 100 | height: 65%; | |
position: relative; | 101 | 101 | position: relative; | |
transition: all 0.2s cubic-bezier(0, 0, 0.6, 1) 0s; | 102 | 102 | transition: all 0.2s cubic-bezier(0, 0, 0.6, 1) 0s; | |
width: 100%; | 103 | 103 | width: 100%; | |
} | 104 | 104 | } | |
105 | 105 | |||
.top-box:hover { | 106 | 106 | .top-box:hover { | |
background-color: rgba(0, 184, 76, 0.6); | 107 | 107 | background-color: rgba(0, 184, 76, 0.6); | |
} | 108 | 108 | } | |
109 | 109 | |||
.bottom-box { | 110 | 110 | .bottom-box { | |
height: 35%; | 111 | 111 | height: 35%; | |
width: 100%; | 112 | 112 | width: 100%; | |
} | 113 | 113 | } | |
114 | 114 | |||
.left-box { | 115 | 115 | .left-box { | |
background-color: rgba(119, 146, 255, 0.5); | 116 | 116 | background-color: rgba(119, 146, 255, 0.5); | |
float: left; | 117 | 117 | float: left; | |
position: relative; | 118 | 118 | position: relative; | |
height: 100%; | 119 | 119 | height: 100%; | |
transition: all 0.2s cubic-bezier(0, 0, 0.6, 1) 0s; | 120 | 120 | transition: all 0.2s cubic-bezier(0, 0, 0.6, 1) 0s; | |
width: 50%; | 121 | 121 | width: 50%; | |
} | 122 | 122 | } | |
123 | 123 | |||
.left-box:hover { | 124 | 124 | .left-box:hover { | |
background-color: rgba(119, 146, 255, 0.6); | 125 | 125 | background-color: rgba(119, 146, 255, 0.6); | |
} | 126 | 126 | } | |
127 | 127 | |||
.right-box { | 128 | 128 | .right-box { | |
background-color: rgba(255, 62, 76, 0.5); | 129 | 129 | background-color: rgba(255, 62, 76, 0.5); | |
float: right; | 130 | 130 | float: right; | |
height: 100%; | 131 | 131 | height: 100%; | |
position: relative; | 132 | 132 | position: relative; | |
transition: all 0.2s cubic-bezier(0, 0, 0.6, 1) 0s; | 133 | 133 | transition: all 0.2s cubic-bezier(0, 0, 0.6, 1) 0s; | |
width: 50%; | 134 | 134 | width: 50%; | |
} | 135 | 135 | } | |
136 | 136 | |||
.right-box:hover { | 137 | 137 | .right-box:hover { | |
background-color: rgba(255, 62, 76, 0.6); | 138 | 138 | background-color: rgba(255, 62, 76, 0.6); | |
} | 139 | 139 | } | |
140 | 140 | |||
.center-me { | 141 | 141 | .center-me { | |
height: 100%; | 142 | 142 | height: 100%; | |
margin: 0 auto; | 143 | 143 | margin: 0 auto; | |
text-align: center; | 144 | 144 | text-align: center; | |
vertical-align: middle; | 145 | 145 | vertical-align: middle; | |
width: 100%; | 146 | 146 | width: 100%; | |
} | 147 | 147 | } | |
148 | 148 | |||
.modal.bottom-sheet { | 149 | 149 | .modal.bottom-sheet { | |
max-width: 600px; | 150 | 150 | max-width: 600px; | |
margin-left: auto; | 151 | 151 | margin-left: auto; | |
margin-right: auto; | 152 | 152 | margin-right: auto; | |
} | 153 | 153 | } | |
154 | 154 | |||
#newCard input[type=text] { | 155 | 155 | #newCard input[type=text] { | |
height: 3rem !important; | 156 | 156 | height: 3rem !important; | |
} | 157 | 157 | } | |
158 | 158 | |||
.input-field label { | 159 | 159 | .input-field label { | |
color: #00b3c2; | 160 | 160 | color: #00b3c2; | |
} | 161 | 161 | } | |
162 | 162 | |||
/* label focus color */ | 163 | 163 | /* label focus color */ | |
.input-field input[type]:focus + label { | 164 | 164 | .input-field input[type]:focus + label { | |
color: #00b3c2; | 165 | 165 | color: #00b3c2; | |
} | 166 | 166 | } | |
167 | 167 | |||
/* label underline focus color */ | 168 | 168 | /* label underline focus color */ | |
.input-field input[type]:focus { | 169 | 169 | .input-field input[type]:focus { | |
border-bottom: 1px solid #00b3c2; | 170 | 170 | border-bottom: 1px solid #00b3c2; | |
box-shadow: 0 1px 0 0 #b388ff; | 171 | 171 | box-shadow: 0 1px 0 0 #b388ff; | |
} | 172 | 172 | } | |
173 | 173 | |||
/* valid color */ | 174 | 174 | /* valid color */ | |
.input-field input[type].valid { | 175 | 175 | .input-field input[type].valid { | |
border-bottom: 1px solid #00c28f; | 176 | 176 | border-bottom: 1px solid #00c28f; | |
box-shadow: 0 1px 0 0 #673ab7; | 177 | 177 | box-shadow: 0 1px 0 0 #673ab7; | |
} | 178 | 178 | } | |
179 | 179 | |||
/* invalid color */ | 180 | 180 | /* invalid color */ | |
.input-field input[type].invalid { | 181 | 181 | .input-field input[type].invalid { | |
border-bottom: 1px solid #673ab7; | 182 | 182 | border-bottom: 1px solid #673ab7; | |
box-shadow: 0 1px 0 0 #673ab7; | 183 | 183 | box-shadow: 0 1px 0 0 #673ab7; | |
} | 184 | 184 | } | |
185 | 185 | |||
/* icon prefix focus color */ | 186 | 186 | /* icon prefix focus color */ | |
.input-field .prefix.active { | 187 | 187 | .input-field .prefix.active { | |
color: #b388ff; | 188 | 188 | color: #b388ff; | |
} | 189 | 189 | } | |
190 | 190 | |||
/* label focus color */ | 191 | 191 | /* label focus color */ | |
.input-field textarea[type]:focus + label { | 192 | 192 | .input-field textarea[type]:focus + label { | |
color: #b388ff; | 193 | 193 | color: #b388ff; | |
} | 194 | 194 | } | |
195 | 195 | |||
/* label underline focus color */ | 196 | 196 | /* label underline focus color */ | |
.input-field textarea[type]:focus { | 197 | 197 | .input-field textarea[type]:focus { | |
border-bottom: 1px solid #00b3c2; | 198 | 198 | border-bottom: 1px solid #00b3c2; | |
box-shadow: 0 1px 0 0 #b388ff; | 199 | 199 | box-shadow: 0 1px 0 0 #b388ff; | |
} | 200 | 200 | } | |
201 | 201 | |||
body { | 202 | 202 | body { | |
background-color: #e8e8e8; | 203 | 203 | background-color: #e8e8e8; | |
overflow-x: hidden; | 204 | 204 | overflow-x: hidden; | |
font-family: 'Titillium Web', sans-serif; | 205 | 205 | font-family: 'Titillium Web', sans-serif; | |
display: flex; | 206 | 206 | display: flex; | |
min-height: 100vh; | 207 | 207 | min-height: 100vh; | |
flex-direction: column; | 208 | 208 | flex-direction: column; | |
} | 209 | 209 | } | |
210 | 210 | |||
html { | 211 | 211 | html { | |
background: transparent; | 212 | 212 | background: transparent; | |
} | 213 | 213 | } | |
214 | 214 | |||
.btn { | 215 | 215 | .btn { | |
background-color: #00b3c2; | 216 | 216 | background-color: #00b3c2; | |
} | 217 | 217 | } | |
218 | 218 | |||
.btn:hover { | 219 | 219 | .btn:hover { | |
background-color: #0097cb; | 220 | 220 | background-color: #0097cb; | |
} | 221 | 221 | } | |
222 | 222 | |||
.btn-floating { | 223 | 223 | .btn-floating { | |
background-color: #00b3c2; | 224 | 224 | background-color: #00b3c2; | |
} | 225 | 225 | } | |
226 | 226 | |||
.btn-floating:hover { | 227 | 227 | .btn-floating:hover { | |
background-color: #0097cb; | 228 | 228 | background-color: #0097cb; | |
} | 229 | 229 | } | |
230 | 230 | |||
#logo-container { | 231 | 231 | #logo-container { | |
margin-bottom: 18px; | 232 | 232 | margin-bottom: 18px; | |
} | 233 | 233 | } | |
234 | 234 | |||
#lean-overlay { | 235 | 235 | #lean-overlay { | |
display: none !important; | 236 | 236 | display: none !important; | |
} | 237 | 237 | } | |
238 | 238 | |||
nav { | 239 | 239 | nav { | |
background-color: #d2143f !important; | 240 | 240 | background-color: #d2143f !important; | |
} | 241 | 241 | } | |
main{ | 242 | 242 | main{ | |
min-height:145px; | 243 | 243 | min-height:145px; |
templates/login.html
View file @
0bf5d19
1 | <h3>Create and share flashcards in real time!</h3> | |||
2 | ||||
<div class="" style="margin-top:32px;"> | 1 | 3 | <div class="" style="margin-top:32px;"> | |
<div class="row" style="max-width:512px; width:50%; min-width:256px; margin: 0 auto"> | 2 | 4 | <div class="row" style="max-width:512px; width:50%; min-width:256px; margin: 0 auto"> | |
<ul class="tabs"> | 3 | 5 | <ul class="tabs"> | |
<li class="tab col s6"><a href="#register-tab">Sign Up</a></li> | 4 | |||
<li class="tab col s6"><a class="active" href="#login-tab">Login</a></li> | 5 | 6 | <li class="tab col s6"><a class="active" href="#login-tab">Login</a></li> | |
7 | <li class="tab col s6"><a href="#register-tab">Sign Up</a></li> | |||
</ul> | 6 | 8 | </ul> | |
<div class="card"> | 7 | 9 | <div class="card"> | |
<!--LOGIN TAB--> | 8 | 10 | <!--LOGIN TAB--> | |
<div id="login-tab" class="row col s12"> | 9 | 11 | <div id="login-tab" class="row col s12"> | |
<form id="login-form"> | 10 | 12 | <form id="login-form"> | |
<div class="card-content"> | 11 | 13 | <div class="card-content"> | |
<div class="check-element animate-show" role="alert" ng-show="loginError"> | 12 | 14 | <div class="check-element animate-show" role="alert" ng-show="loginError"> | |
<span style="color:#8E2323">Invalid username or password!!</span> | 13 | 15 | <span style="color:#8E2323">Invalid username or password!!</span> | |
</div> | 14 | 16 | </div> | |
15 | 17 | |||
<div class="input-field"> | 16 | 18 | <div class="input-field"> | |
<input id="email" type="email" name="login" class="validate" ng-model="loginEmail" required autofocus | 17 | 19 | <input id="email" type="email" name="login" class="validate" ng-model="loginEmail" required autofocus | |
autocomplete/> | 18 | 20 | autocomplete/> | |
<label for="email">Email</label> | 19 | 21 | <label for="email">Email</label> | |
</div> | 20 | 22 | </div> | |
<div class="input-field"> | 21 | 23 | <div class="input-field"> | |
<input id="password" type="password" name="password" class="validate" ng-model="loginPassword" required/> | 22 | 24 | <input id="password" type="password" name="password" class="validate" ng-model="loginPassword" required/> | |
<label for="password">Password</label> | 23 | 25 | <label for="password">Password</label> | |
</div> | 24 | 26 | </div> | |
</div> | 25 | 27 | </div> | |
<div class="card-action"> | 26 | 28 | <div class="card-action"> | |
<button class="btn waves-effect waves-light col s12" type="submit" name="action" | 27 | 29 | <button class="btn waves-effect waves-light col s12" type="submit" name="action" | |
ng-click="login(loginEmail, loginPassword)">Login | 28 | 30 | ng-click="login(loginEmail, loginPassword)">Login | |
</button> | 29 | 31 | </button> | |
</div> | 30 | 32 | </div> | |
</form> | 31 | 33 | </form> | |
</div> | 32 | 34 | </div> | |
<!--REGISTER TAB--> | 33 | 35 | <!--REGISTER TAB--> | |
<div id="register-tab" class="row col s12"> | 34 | 36 | <div id="register-tab" class="row col s12"> | |
<form> | 35 | 37 | <form> | |
<div class="card-content"> | 36 | 38 | <div class="card-content"> | |
<div class="check-element animate-show" role="alert" ng-show="uniqueError"> | 37 | 39 | <div class="check-element animate-show" role="alert" ng-show="uniqueError"> | |
<span style="color:#8E2323">Invalid username or password!</span> | 38 | 40 | <span style="color:#8E2323">Invalid username or password!</span> | |
</div> | 39 | 41 | </div> | |
<div class="input-field"> | 40 | 42 | <div class="input-field"> | |
<input id="email" type="email" class="validate" ng-model="registerEmail" required/> | 41 | 43 | <input id="email" type="email" class="validate" ng-model="registerEmail" required/> | |
<label for="email">Email</label> | 42 | 44 | <label for="email">Email</label> | |
</div> | 43 | 45 | </div> | |
<div class="input-field"> | 44 | 46 | <div class="input-field"> | |
<input type="password" class="validate" ng-model="registerPassword" required/> | 45 | 47 | <input type="password" class="validate" ng-model="registerPassword" required/> | |
<label for="password">Password</label> | 46 | 48 | <label for="password">Password</label> | |
</div> | 47 | 49 | </div> | |
</div> | 48 | 50 | </div> | |
<div class="card-action"> | 49 | 51 | <div class="card-action"> | |
<button class="btn waves-effect waves-light col s12" type="submit" name="action" | 50 | 52 | <button class="btn waves-effect waves-light col s12" type="submit" name="action" | |
ng-click="signUp(registerEmail, registerPassword)">Register | 51 | 53 | ng-click="signUp(registerEmail, registerPassword)">Register | |
</button> | 52 | 54 | </button> | |
</div> | 53 | 55 | </div> | |
</form> | 54 | 56 | </form> | |
</div> | 55 | 57 | </div> | |
<div class="row offset-s1 col s12"> | 56 | 58 | <div class="row offset-s1 col s12"> | |
<a class="trigger-password-reset" ng-click="triggerPasswordReset()" href="#">Forgot Password?</a> | 57 | 59 | <a class="trigger-password-reset" ng-click="triggerPasswordReset()" href="#">Forgot Password?</a> | |
</div> | 58 | 60 | </div> | |
</div> | 59 | 61 | </div> | |
</div> | 60 | 62 | </div> |