└── dark ├── about.html ├── blog-post.html ├── blog.html ├── contact.html ├── css ├── bootstrap.min.css ├── circle.css ├── fm.revealator.jquery.min.css ├── font-awesome.min.css ├── preloader.min.css ├── skins │ ├── blue.css │ ├── blueviolet.css │ ├── goldenrod.css │ ├── green.css │ ├── magenta.css │ ├── orange.css │ ├── purple.css │ ├── red.css │ ├── yellow.css │ └── yellowgreen.css ├── style.css └── styleswitcher.css ├── fonts ├── fontawesome-webfont3e6e.eot ├── fontawesome-webfont3e6e.html ├── fontawesome-webfont3e6e.svg ├── fontawesome-webfont3e6e.ttf ├── fontawesome-webfont3e6e.woff └── fontawesome-webfontd41d.eot ├── img ├── 2.jpg ├── blog │ ├── blog-post-1.jpg │ ├── blog-post-2.jpg │ ├── blog-post-3.jpg │ ├── blog-post-4.jpg │ ├── blog-post-5.jpg │ └── blog-post-6.jpg ├── img-mobile.jpg ├── light.jpg ├── projects │ ├── navigation │ │ ├── close-button.png │ │ ├── left-arrow.png │ │ └── right-arrow.png │ ├── project-1.jpg │ ├── project-2.jpg │ ├── project-3.jpg │ ├── project-4.jpg │ ├── project-5.jpg │ ├── project-6.jpg │ ├── project-7.jpg │ ├── project-8.jpg │ ├── project-9.jpg │ └── video.mp4 └── styleswitcher │ ├── blue.png │ ├── blueviolet.png │ ├── goldenrod.png │ ├── green.png │ ├── magenta.png │ ├── orange.png │ ├── purple.png │ ├── red.png │ ├── yellow.png │ └── yellowgreen.png ├── index.html ├── js ├── bootstrap.js ├── cbpGridGallery.js ├── classie.js ├── custom.js ├── fm.revealator.jquery.min.js ├── imagesloaded.pkgd.min.js ├── jquery-3.5.0.min.js ├── jquery.hoverdir.js ├── masonry.pkgd.min.js ├── modernizr.custom.js ├── popper.min.js ├── preloader.min.js └── styleswitcher.js └── portfolio.html /dark/about.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | About Personal Portfolio 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 |
45 |
46 |

STYLE SWITCHER

47 | 79 | 80 |
×
81 |
82 | 83 |
84 |
85 | 86 | 87 | 140 | 141 | 142 |
143 |

ABOUT ME

144 | Resume 145 |
146 | 147 | 148 |
149 |
150 |
151 | 152 |
153 |
154 |
155 |

personal infos

156 |
157 |
158 | my picture 159 |
160 |
161 |
    162 |
  • first name : Steve
  • 163 |
  • last name : Milner
  • 164 |
  • Age : 27 Years
  • 165 |
  • Nationality : Tunisian
  • 166 |
  • Freelance : Available
  • 167 |
168 |
169 |
170 |
    171 |
  • Address : Tunis
  • 172 |
  • phone : +21621184010
  • 173 |
  • Email : you@mail.com
  • 174 |
  • Skype : steve.milner
  • 175 |
  • langages : French, English
  • 176 |
177 |
178 |
179 | Download CV 180 |
181 |
182 |
183 | 184 | 185 |
186 |
187 |
188 |
189 |

12

190 |

years of experience

191 |
192 |
193 |
194 |
195 |

97

196 |

completed projects

197 |
198 |
199 |
200 |
201 |

81

202 |

Happycustomers

203 |
204 |
205 |
206 |
207 |

53

208 |

awards won

209 |
210 |
211 |
212 |
213 | 214 |
215 |
216 | 217 |
218 |
219 |

My Skills

220 |
221 |
222 |
223 | 25% 224 |
225 |
226 |
227 |
228 |
229 |
html
230 |
231 |
232 |
233 | 89% 234 |
235 |
236 |
237 |
238 |
239 |
javascript
240 |
241 |
242 |
243 | 70% 244 |
245 |
246 |
247 |
248 |
249 |
css
250 |
251 |
252 |
253 | 66% 254 |
255 |
256 |
257 |
258 |
259 |
php
260 |
261 |
262 |
263 | 95% 264 |
265 |
266 |
267 |
268 |
269 |
wordpress
270 |
271 |
272 |
273 | 50% 274 |
275 |
276 |
277 |
278 |
279 |
jquery
280 |
281 |
282 |
283 | 65% 284 |
285 |
286 |
287 |
288 |
289 |
angular
290 |
291 |
292 |
293 | 45% 294 |
295 |
296 |
297 |
298 |
299 |
react
300 |
301 |
302 | 303 |
304 | 305 |
306 |
307 |

Experience & Education

308 |
309 |
310 |
311 |
    312 |
  • 313 |
    314 | 315 |
    316 | 2018 - Present 317 |
    Web Developer Envato
    318 |

    Lorem ipsum dolor sit amet, consectetur tempor incididunt ut labore adipisicing elit,

    319 |
  • 320 |
  • 321 |
    322 | 323 |
    324 | 2013 - 2018 325 |
    UI/UX Designer Themeforest
    326 |

    Lorem incididunt dolor sit amet, consectetur eiusmod dunt doldunt dol elit, tempor incididunt

    327 |
  • 328 |
  • 329 |
    330 | 331 |
    332 | 2005 - 2013 333 |
    Consultant Videohive
    334 |

    Lorem ipsum dolor sit amet, tempor incididunt ut laboreconsectetur elit, sed do eiusmod tempor duntt

    335 |
  • 336 |
337 |
338 |
339 |
340 |
341 |
    342 |
  • 343 |
    344 | 345 |
    346 | 2015 347 |
    Engineering Degree Oxford University
    348 |

    Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do tempor incididunt ut labore

    349 |
  • 350 |
  • 351 |
    352 | 353 |
    354 | 2012 355 |
    Master Degree Kiev University
    356 |

    Lorem ipsum dolor sit amet, consectetur elit, sed do eiusmod tempor incididunt ut adipisicing

    357 |
  • 358 |
  • 359 |
    360 | 361 |
    362 | 2009 363 |
    Bachelor Degree Tunis High School
    364 |

    Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor ut labore

    365 |
  • 366 |
367 |
368 |
369 |
370 | 371 |
372 |
373 | 374 | 375 | 376 | 377 | 378 | 379 | 380 | 381 | 382 | 383 | 384 | 385 | 386 | 387 | 388 | 389 | 390 | 391 | 392 | 393 | -------------------------------------------------------------------------------- /dark/blog-post.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | Blog - Personal Portfolio 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 |
45 |
46 |

STYLE SWITCHER

47 | 79 | 80 |
×
81 |
82 |
83 |
84 | 85 | 86 | 139 | 140 | 141 |
142 |

my blog

143 | posts 144 |
145 | 146 | 147 |
148 |
149 |
150 | 151 |
152 | 153 |
154 | steve 155 | 9 January 2017 156 | wordpress, business, economy, design 157 |
158 | 159 | 160 |

Everything You Need to Know About Web Accessibility

161 | Blog image 162 |
163 |

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. 164 | Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

165 |

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. 166 | Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.Lorem ipsum 167 | dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis 168 | aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

169 |

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. 170 | Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.Lorem ipsum 171 | dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis 172 | aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

173 |
174 | 175 |
176 | 177 |
178 |
179 |
180 | 181 | 182 | 183 | 184 | 185 | 186 | 187 | 188 | 189 | 190 | 191 | 192 | 193 | 194 | 195 | 196 | 197 | 198 | -------------------------------------------------------------------------------- /dark/blog.html: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | Blog - Personal Portfolio 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 |
45 |
46 |

STYLE SWITCHER

47 | 79 | 80 |
×
81 |
82 |
83 |
84 | 85 | 86 | 139 | 140 | 141 |
142 |

my blog

143 | posts 144 |
145 | 146 | 147 |
148 |
149 | 150 |
151 | 152 |
153 | 169 |
170 | 171 | 172 |
173 | 189 |
190 | 191 | 192 |
193 | 209 |
210 | 211 | 212 |
213 | 229 |
230 | 231 | 232 |
233 | 249 |
250 | 251 | 252 |
253 | 269 |
270 | 271 | 272 |
273 | 281 |
282 | 283 |
284 | 285 |
286 | 287 |
288 | 289 | 290 | 291 | 292 | 293 | 294 | 295 | 296 | 297 | 298 | 299 | 300 | 301 | 302 | 303 | 304 | 305 | 306 | 307 | -------------------------------------------------------------------------------- /dark/contact.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | Contact - Personal Portfolio 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 |
45 |
46 |

STYLE SWITCHER

47 | 79 | 80 |
×
81 |
82 |
83 |
84 | 85 | 86 | 139 | 140 | 141 |
142 |

get in touch

143 | contact 144 |
145 | 146 | 147 |
148 |
149 |
150 | 151 |
152 |

Don't be shy !

153 |

Feel free to get in touch with me. I am always open to discussing new projects, creative ideas or opportunities to be part of your visions.

154 |

155 | 156 | mail mesteve@mail.com 157 |

158 |

159 | 160 | call me+216 21 184 010 161 |

162 | 172 |
173 | 174 | 175 |
176 |
177 |
178 |
179 |
180 | 181 |
182 |
183 | 184 |
185 |
186 | 187 |
188 |
189 | 190 | 191 |
192 |
193 | 194 |
195 |
196 |
197 |
198 |
199 | 200 |
201 |
202 | 203 |
204 | 205 | 206 | 207 | 208 | 209 | 210 | 211 | 212 | 213 | 214 | 215 | 216 | 217 | 218 | 219 | 220 | 221 | 222 | -------------------------------------------------------------------------------- /dark/css/fm.revealator.jquery.min.css: -------------------------------------------------------------------------------- 1 | .revealator-fade,.revealator-rotateleft,.revealator-rotateright,.revealator-slidedown,.revealator-slideleft,.revealator-slideright,.revealator-slideup,.revealator-zoomin,.revealator-zoomout{transition:all .6s}.revealator-slideup{transform:translate(0,100px);opacity:0}.revealator-slideup.revealator-above,.revealator-slideup.revealator-partially-below,.revealator-slideup.revealator-within{transform:translate(0,0);opacity:1}.revealator-slidedown{transform:translate(0,-20px);opacity:0}.revealator-slidedown.revealator-above,.revealator-slidedown.revealator-partially-above,.revealator-slidedown.revealator-within{transform:translate(0,0);opacity:1}.revealator-delay1{transition-delay:.1s!important}.revealator-delay1.revealator-below,.revealator-delay1.revealator-partially-below{transition-delay:0s!important}.revealator-delay2{transition-delay:.2s!important}.revealator-delay3{transition-delay:.3s!important}.revealator-delay4{transition-delay:.4s!important}.revealator-delay5{transition-delay:.5s!important}.revealator-delay6{transition-delay:.6s!important}.revealator-delay7{transition-delay:.7s!important}.revealator-delay8{transition-delay:.8s!important}.revealator-delay9{transition-delay:.9s!important}.revealator-delay10{transition-delay:1s!important} -------------------------------------------------------------------------------- /dark/css/preloader.min.css: -------------------------------------------------------------------------------- 1 | .preloader{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#111;transform-origin:bottom;z-index:111111}.preloader .black_wall{height:100%;background-color:#222;transform-origin:top;animation:preloader_slide 0.5s ease-in-out 0s 1 normal both}.preloader .loader{width:100%;height:3px;position:absolute;border-radius:2px;top:0;right:0;left:0;margin:auto;background-color:#FFC41F;transform-origin:left;animation:loader_running 3s ease-in-out 1s infinite normal both}.preloader.off{animation:preloader_slide 0.5s ease-in-out 0s 1 reverse both}@keyframes loader_running{0%{transform:scaleX(0);transform-origin:left}49%{transform:scaleX(1);transform-origin:left}50%{transform:scaleX(1);transform-origin:right}100%{transform-origin:right;transform:scaleX(0)}}@keyframes preloader_slide{from{transform:scaleY(0)}to{transform:scaleY(1)}} 2 | -------------------------------------------------------------------------------- /dark/css/skins/blue.css: -------------------------------------------------------------------------------- 1 | /* =================================================================== */ 2 | /* BLUE #4169e1 3 | ====================================================================== */ 4 | 5 | .home h1, 6 | .about .box-stats h3, 7 | .title-section h1 span, 8 | #menu li.active a, 9 | body.light #menu li.active a, 10 | .blog .post-container:hover .post-content .entry-header h3 a, 11 | .blog .post-content .entry-header h3 a:hover, 12 | .contact .custom-span-contact i, 13 | .portfolio .slideshow figcaption h3, 14 | .portfolio .slideshow a, 15 | .portfolio .grid figure:hover figcaption, 16 | .blog-post .meta i{ 17 | color: #4169e1; 18 | } 19 | .about .resume-box .icon, 20 | .contact ul.social li a:hover, 21 | body.light.contact ul.social li a:hover, 22 | .preloader .loader, 23 | .blog .page-link:hover, 24 | .blog .page-item.active .page-link, 25 | body.light.blog .page-link:hover, 26 | body.light.blog .page-item.active .page-link, 27 | .portfolio .grid li figure div, 28 | .header ul.icon-menu li.icon-box.active, .header ul.icon-menu li.icon-box:hover, 29 | body.light .header ul.icon-menu li.icon-box.active, body.light .header ul.icon-menu li.icon-box:hover, 30 | .btn, 31 | .header .icon-box h2, 32 | .home .color-block, 33 | .title-section hr, 34 | .portfolio .slideshow .carousel-indicators li.active { 35 | background-color: #4169e1; 36 | } 37 | .contact .contactform input[type=text]:focus, 38 | .contact .contactform input[type=email]:focus, 39 | .contact .contactform textarea:focus, 40 | body.light.contact .contactform input[type=text]:focus, 41 | body.light.contact .contactform input[type=email]:focus, 42 | body.light.contact .contactform textarea:focus, 43 | .blog .page-item.active .page-link, 44 | .blog .page-link:hover, 45 | body.light.blog .page-item.active .page-link, 46 | body.light.blog .page-link:hover{ 47 | border: 1px solid #4169e1; 48 | } 49 | .blog .post-thumb { 50 | border-bottom: 5px solid #4169e1; 51 | } 52 | .pie, .c100 .bar, .c100.p51 .fill, .c100.p52 .fill, .c100.p53 .fill, .c100.p54 .fill, .c100.p55 .fill, .c100.p56 .fill, .c100.p57 .fill, .c100.p58 .fill, .c100.p59 .fill, .c100.p60 .fill, .c100.p61 .fill, .c100.p62 .fill, .c100.p63 .fill, .c100.p64 .fill, .c100.p65 .fill, .c100.p66 .fill, .c100.p67 .fill, .c100.p68 .fill, .c100.p69 .fill, .c100.p70 .fill, .c100.p71 .fill, .c100.p72 .fill, .c100.p73 .fill, .c100.p74 .fill, .c100.p75 .fill, .c100.p76 .fill, .c100.p77 .fill, .c100.p78 .fill, .c100.p79 .fill, .c100.p80 .fill, .c100.p81 .fill, .c100.p82 .fill, .c100.p83 .fill, .c100.p84 .fill, .c100.p85 .fill, .c100.p86 .fill, .c100.p87 .fill, .c100.p88 .fill, .c100.p89 .fill, .c100.p90 .fill, .c100.p91 .fill, .c100.p92 .fill, .c100.p93 .fill, .c100.p94 .fill, .c100.p95 .fill, .c100.p96 .fill, .c100.p97 .fill, .c100.p98 .fill, .c100.p99 .fill, .c100.p100 .fill { 53 | border: 0.08em solid #4169e1; 54 | } 55 | 56 | -------------------------------------------------------------------------------- /dark/css/skins/blueviolet.css: -------------------------------------------------------------------------------- 1 | /* =================================================================== */ 2 | /* BLUEVIOLET #8a2be2 3 | ====================================================================== */ 4 | 5 | .home h1, 6 | .about .box-stats h3, 7 | .title-section h1 span, 8 | #menu li.active a, 9 | body.light #menu li.active a, 10 | .blog .post-container:hover .post-content .entry-header h3 a, 11 | .blog .post-content .entry-header h3 a:hover, 12 | .contact .custom-span-contact i, 13 | .portfolio .slideshow figcaption h3, 14 | .portfolio .slideshow a, 15 | .portfolio .grid figure:hover figcaption, 16 | .blog-post .meta i{ 17 | color: #8a2be2; 18 | } 19 | .about .resume-box .icon, 20 | .contact ul.social li a:hover, 21 | body.light.contact ul.social li a:hover, 22 | .preloader .loader, 23 | .blog .page-link:hover, 24 | .blog .page-item.active .page-link, 25 | body.light.blog .page-link:hover, 26 | body.light.blog .page-item.active .page-link, 27 | .portfolio .grid li figure div, 28 | .header ul.icon-menu li.icon-box.active, .header ul.icon-menu li.icon-box:hover, 29 | body.light .header ul.icon-menu li.icon-box.active, body.light .header ul.icon-menu li.icon-box:hover, 30 | .btn, 31 | .header .icon-box h2, 32 | .home .color-block, 33 | .title-section hr, 34 | .portfolio .slideshow .carousel-indicators li.active { 35 | background-color: #8a2be2; 36 | } 37 | .contact .contactform input[type=text]:focus, 38 | .contact .contactform input[type=email]:focus, 39 | .contact .contactform textarea:focus, 40 | body.light.contact .contactform input[type=text]:focus, 41 | body.light.contact .contactform input[type=email]:focus, 42 | body.light.contact .contactform textarea:focus, 43 | .blog .page-item.active .page-link, 44 | .blog .page-link:hover, 45 | body.light.blog .page-item.active .page-link, 46 | body.light.blog .page-link:hover{ 47 | border: 1px solid #8a2be2; 48 | } 49 | .blog .post-thumb { 50 | border-bottom: 5px solid #8a2be2; 51 | } 52 | .pie, .c100 .bar, .c100.p51 .fill, .c100.p52 .fill, .c100.p53 .fill, .c100.p54 .fill, .c100.p55 .fill, .c100.p56 .fill, .c100.p57 .fill, .c100.p58 .fill, .c100.p59 .fill, .c100.p60 .fill, .c100.p61 .fill, .c100.p62 .fill, .c100.p63 .fill, .c100.p64 .fill, .c100.p65 .fill, .c100.p66 .fill, .c100.p67 .fill, .c100.p68 .fill, .c100.p69 .fill, .c100.p70 .fill, .c100.p71 .fill, .c100.p72 .fill, .c100.p73 .fill, .c100.p74 .fill, .c100.p75 .fill, .c100.p76 .fill, .c100.p77 .fill, .c100.p78 .fill, .c100.p79 .fill, .c100.p80 .fill, .c100.p81 .fill, .c100.p82 .fill, .c100.p83 .fill, .c100.p84 .fill, .c100.p85 .fill, .c100.p86 .fill, .c100.p87 .fill, .c100.p88 .fill, .c100.p89 .fill, .c100.p90 .fill, .c100.p91 .fill, .c100.p92 .fill, .c100.p93 .fill, .c100.p94 .fill, .c100.p95 .fill, .c100.p96 .fill, .c100.p97 .fill, .c100.p98 .fill, .c100.p99 .fill, .c100.p100 .fill { 53 | border: 0.08em solid #8a2be2; 54 | } 55 | 56 | -------------------------------------------------------------------------------- /dark/css/skins/goldenrod.css: -------------------------------------------------------------------------------- 1 | /* =================================================================== */ 2 | /* GOLDENROD #daa520 3 | ====================================================================== */ 4 | 5 | .home h1, 6 | .about .box-stats h3, 7 | .title-section h1 span, 8 | #menu li.active a, 9 | body.light #menu li.active a, 10 | .blog .post-container:hover .post-content .entry-header h3 a, 11 | .blog .post-content .entry-header h3 a:hover, 12 | .contact .custom-span-contact i, 13 | .portfolio .slideshow figcaption h3, 14 | .portfolio .slideshow a, 15 | .portfolio .grid figure:hover figcaption, 16 | .blog-post .meta i{ 17 | color: #daa520; 18 | } 19 | .about .resume-box .icon, 20 | .contact ul.social li a:hover, 21 | body.light.contact ul.social li a:hover, 22 | .preloader .loader, 23 | .blog .page-link:hover, 24 | .blog .page-item.active .page-link, 25 | body.light.blog .page-link:hover, 26 | body.light.blog .page-item.active .page-link, 27 | .portfolio .grid li figure div, 28 | .header ul.icon-menu li.icon-box.active, .header ul.icon-menu li.icon-box:hover, 29 | body.light .header ul.icon-menu li.icon-box.active, body.light .header ul.icon-menu li.icon-box:hover, 30 | .btn, 31 | .header .icon-box h2, 32 | .home .color-block, 33 | .title-section hr, 34 | .portfolio .slideshow .carousel-indicators li.active { 35 | background-color: #daa520; 36 | } 37 | .contact .contactform input[type=text]:focus, 38 | .contact .contactform input[type=email]:focus, 39 | .contact .contactform textarea:focus, 40 | body.light.contact .contactform input[type=text]:focus, 41 | body.light.contact .contactform input[type=email]:focus, 42 | body.light.contact .contactform textarea:focus, 43 | .blog .page-item.active .page-link, 44 | .blog .page-link:hover, 45 | body.light.blog .page-item.active .page-link, 46 | body.light.blog .page-link:hover{ 47 | border: 1px solid #daa520; 48 | } 49 | .blog .post-thumb { 50 | border-bottom: 5px solid #daa520; 51 | } 52 | .about .resume-box li:after { 53 | border-left: 1px solid #daa520; 54 | } 55 | .pie, .c100 .bar, .c100.p51 .fill, .c100.p52 .fill, .c100.p53 .fill, .c100.p54 .fill, .c100.p55 .fill, .c100.p56 .fill, .c100.p57 .fill, .c100.p58 .fill, .c100.p59 .fill, .c100.p60 .fill, .c100.p61 .fill, .c100.p62 .fill, .c100.p63 .fill, .c100.p64 .fill, .c100.p65 .fill, .c100.p66 .fill, .c100.p67 .fill, .c100.p68 .fill, .c100.p69 .fill, .c100.p70 .fill, .c100.p71 .fill, .c100.p72 .fill, .c100.p73 .fill, .c100.p74 .fill, .c100.p75 .fill, .c100.p76 .fill, .c100.p77 .fill, .c100.p78 .fill, .c100.p79 .fill, .c100.p80 .fill, .c100.p81 .fill, .c100.p82 .fill, .c100.p83 .fill, .c100.p84 .fill, .c100.p85 .fill, .c100.p86 .fill, .c100.p87 .fill, .c100.p88 .fill, .c100.p89 .fill, .c100.p90 .fill, .c100.p91 .fill, .c100.p92 .fill, .c100.p93 .fill, .c100.p94 .fill, .c100.p95 .fill, .c100.p96 .fill, .c100.p97 .fill, .c100.p98 .fill, .c100.p99 .fill, .c100.p100 .fill { 56 | border: 0.08em solid #daa520; 57 | } 58 | 59 | -------------------------------------------------------------------------------- /dark/css/skins/green.css: -------------------------------------------------------------------------------- 1 | /* =================================================================== */ 2 | /* GREEN #72b626 3 | ====================================================================== */ 4 | 5 | .home h1, 6 | .about .box-stats h3, 7 | .title-section h1 span, 8 | #menu li.active a, 9 | body.light #menu li.active a, 10 | .blog .post-container:hover .post-content .entry-header h3 a, 11 | .blog .post-content .entry-header h3 a:hover, 12 | .contact .custom-span-contact i, 13 | .portfolio .slideshow figcaption h3, 14 | .portfolio .slideshow a, 15 | .portfolio .grid figure:hover figcaption, 16 | .blog-post .meta i{ 17 | color: #72b626; 18 | } 19 | .about .resume-box .icon, 20 | .contact ul.social li a:hover, 21 | body.light.contact ul.social li a:hover, 22 | .preloader .loader, 23 | .blog .page-link:hover, 24 | .blog .page-item.active .page-link, 25 | body.light.blog .page-link:hover, 26 | body.light.blog .page-item.active .page-link, 27 | .portfolio .grid li figure div, 28 | .header ul.icon-menu li.icon-box.active, .header ul.icon-menu li.icon-box:hover, 29 | body.light .header ul.icon-menu li.icon-box.active, body.light .header ul.icon-menu li.icon-box:hover, 30 | .btn, 31 | .header .icon-box h2, 32 | .home .color-block, 33 | .title-section hr, 34 | .portfolio .slideshow .carousel-indicators li.active { 35 | background-color: #72b626; 36 | } 37 | .contact .contactform input[type=text]:focus, 38 | .contact .contactform input[type=email]:focus, 39 | .contact .contactform textarea:focus, 40 | body.light.contact .contactform input[type=text]:focus, 41 | body.light.contact .contactform input[type=email]:focus, 42 | body.light.contact .contactform textarea:focus, 43 | .blog .page-item.active .page-link, 44 | .blog .page-link:hover, 45 | body.light.blog .page-item.active .page-link, 46 | body.light.blog .page-link:hover{ 47 | border: 1px solid #72b626; 48 | } 49 | .blog .post-thumb { 50 | border-bottom: 5px solid #72b626; 51 | } 52 | .pie, .c100 .bar, .c100.p51 .fill, .c100.p52 .fill, .c100.p53 .fill, .c100.p54 .fill, .c100.p55 .fill, .c100.p56 .fill, .c100.p57 .fill, .c100.p58 .fill, .c100.p59 .fill, .c100.p60 .fill, .c100.p61 .fill, .c100.p62 .fill, .c100.p63 .fill, .c100.p64 .fill, .c100.p65 .fill, .c100.p66 .fill, .c100.p67 .fill, .c100.p68 .fill, .c100.p69 .fill, .c100.p70 .fill, .c100.p71 .fill, .c100.p72 .fill, .c100.p73 .fill, .c100.p74 .fill, .c100.p75 .fill, .c100.p76 .fill, .c100.p77 .fill, .c100.p78 .fill, .c100.p79 .fill, .c100.p80 .fill, .c100.p81 .fill, .c100.p82 .fill, .c100.p83 .fill, .c100.p84 .fill, .c100.p85 .fill, .c100.p86 .fill, .c100.p87 .fill, .c100.p88 .fill, .c100.p89 .fill, .c100.p90 .fill, .c100.p91 .fill, .c100.p92 .fill, .c100.p93 .fill, .c100.p94 .fill, .c100.p95 .fill, .c100.p96 .fill, .c100.p97 .fill, .c100.p98 .fill, .c100.p99 .fill, .c100.p100 .fill { 53 | border: 0.08em solid #72b626; 54 | } 55 | 56 | -------------------------------------------------------------------------------- /dark/css/skins/magenta.css: -------------------------------------------------------------------------------- 1 | /* =================================================================== */ 2 | /* MAGENTA #ee6192 3 | ====================================================================== */ 4 | 5 | .home h1, 6 | .about .box-stats h3, 7 | .title-section h1 span, 8 | #menu li.active a, 9 | body.light #menu li.active a, 10 | .blog .post-container:hover .post-content .entry-header h3 a, 11 | .blog .post-content .entry-header h3 a:hover, 12 | .contact .custom-span-contact i, 13 | .portfolio .slideshow figcaption h3, 14 | .portfolio .slideshow a, 15 | .portfolio .grid figure:hover figcaption, 16 | .blog-post .meta i{ 17 | color: #ee6192; 18 | } 19 | .about .resume-box .icon, 20 | .contact ul.social li a:hover, 21 | body.light.contact ul.social li a:hover, 22 | .preloader .loader, 23 | .blog .page-link:hover, 24 | .blog .page-item.active .page-link, 25 | body.light.blog .page-link:hover, 26 | body.light.blog .page-item.active .page-link, 27 | .portfolio .grid li figure div, 28 | .header ul.icon-menu li.icon-box.active, .header ul.icon-menu li.icon-box:hover, 29 | body.light .header ul.icon-menu li.icon-box.active, body.light .header ul.icon-menu li.icon-box:hover, 30 | .btn, 31 | .header .icon-box h2, 32 | .home .color-block, 33 | .title-section hr, 34 | .portfolio .slideshow .carousel-indicators li.active { 35 | background-color: #ee6192; 36 | } 37 | .contact .contactform input[type=text]:focus, 38 | .contact .contactform input[type=email]:focus, 39 | .contact .contactform textarea:focus, 40 | body.light.contact .contactform input[type=text]:focus, 41 | body.light.contact .contactform input[type=email]:focus, 42 | body.light.contact .contactform textarea:focus, 43 | .blog .page-item.active .page-link, 44 | .blog .page-link:hover, 45 | body.light.blog .page-item.active .page-link, 46 | body.light.blog .page-link:hover{ 47 | border: 1px solid #ee6192; 48 | } 49 | .blog .post-thumb { 50 | border-bottom: 5px solid #ee6192; 51 | } 52 | .pie, .c100 .bar, .c100.p51 .fill, .c100.p52 .fill, .c100.p53 .fill, .c100.p54 .fill, .c100.p55 .fill, .c100.p56 .fill, .c100.p57 .fill, .c100.p58 .fill, .c100.p59 .fill, .c100.p60 .fill, .c100.p61 .fill, .c100.p62 .fill, .c100.p63 .fill, .c100.p64 .fill, .c100.p65 .fill, .c100.p66 .fill, .c100.p67 .fill, .c100.p68 .fill, .c100.p69 .fill, .c100.p70 .fill, .c100.p71 .fill, .c100.p72 .fill, .c100.p73 .fill, .c100.p74 .fill, .c100.p75 .fill, .c100.p76 .fill, .c100.p77 .fill, .c100.p78 .fill, .c100.p79 .fill, .c100.p80 .fill, .c100.p81 .fill, .c100.p82 .fill, .c100.p83 .fill, .c100.p84 .fill, .c100.p85 .fill, .c100.p86 .fill, .c100.p87 .fill, .c100.p88 .fill, .c100.p89 .fill, .c100.p90 .fill, .c100.p91 .fill, .c100.p92 .fill, .c100.p93 .fill, .c100.p94 .fill, .c100.p95 .fill, .c100.p96 .fill, .c100.p97 .fill, .c100.p98 .fill, .c100.p99 .fill, .c100.p100 .fill { 53 | border: 0.08em solid #ee6192; 54 | } 55 | 56 | -------------------------------------------------------------------------------- /dark/css/skins/orange.css: -------------------------------------------------------------------------------- 1 | /* =================================================================== */ 2 | /* ORANGE #fa5b0f 3 | ====================================================================== */ 4 | 5 | .home h1, 6 | .about .box-stats h3, 7 | .title-section h1 span, 8 | #menu li.active a, 9 | body.light #menu li.active a, 10 | .blog .post-container:hover .post-content .entry-header h3 a, 11 | .blog .post-content .entry-header h3 a:hover, 12 | .contact .custom-span-contact i, 13 | .portfolio .slideshow figcaption h3, 14 | .portfolio .slideshow a, 15 | .portfolio .grid figure:hover figcaption, 16 | .blog-post .meta i{ 17 | color: #fa5b0f; 18 | } 19 | .about .resume-box .icon, 20 | .contact ul.social li a:hover, 21 | body.light.contact ul.social li a:hover, 22 | .preloader .loader, 23 | .blog .page-link:hover, 24 | .blog .page-item.active .page-link, 25 | body.light.blog .page-link:hover, 26 | body.light.blog .page-item.active .page-link, 27 | .portfolio .grid li figure div, 28 | .header ul.icon-menu li.icon-box.active, .header ul.icon-menu li.icon-box:hover, 29 | body.light .header ul.icon-menu li.icon-box.active, body.light .header ul.icon-menu li.icon-box:hover, 30 | .btn, 31 | .header .icon-box h2, 32 | .home .color-block, 33 | .title-section hr, 34 | .portfolio .slideshow .carousel-indicators li.active { 35 | background-color: #fa5b0f; 36 | } 37 | .contact .contactform input[type=text]:focus, 38 | .contact .contactform input[type=email]:focus, 39 | .contact .contactform textarea:focus, 40 | body.light.contact .contactform input[type=text]:focus, 41 | body.light.contact .contactform input[type=email]:focus, 42 | body.light.contact .contactform textarea:focus, 43 | .blog .page-item.active .page-link, 44 | .blog .page-link:hover, 45 | body.light.blog .page-item.active .page-link, 46 | body.light.blog .page-link:hover{ 47 | border: 1px solid #fa5b0f; 48 | } 49 | .blog .post-thumb { 50 | border-bottom: 5px solid #fa5b0f; 51 | } 52 | .pie, .c100 .bar, .c100.p51 .fill, .c100.p52 .fill, .c100.p53 .fill, .c100.p54 .fill, .c100.p55 .fill, .c100.p56 .fill, .c100.p57 .fill, .c100.p58 .fill, .c100.p59 .fill, .c100.p60 .fill, .c100.p61 .fill, .c100.p62 .fill, .c100.p63 .fill, .c100.p64 .fill, .c100.p65 .fill, .c100.p66 .fill, .c100.p67 .fill, .c100.p68 .fill, .c100.p69 .fill, .c100.p70 .fill, .c100.p71 .fill, .c100.p72 .fill, .c100.p73 .fill, .c100.p74 .fill, .c100.p75 .fill, .c100.p76 .fill, .c100.p77 .fill, .c100.p78 .fill, .c100.p79 .fill, .c100.p80 .fill, .c100.p81 .fill, .c100.p82 .fill, .c100.p83 .fill, .c100.p84 .fill, .c100.p85 .fill, .c100.p86 .fill, .c100.p87 .fill, .c100.p88 .fill, .c100.p89 .fill, .c100.p90 .fill, .c100.p91 .fill, .c100.p92 .fill, .c100.p93 .fill, .c100.p94 .fill, .c100.p95 .fill, .c100.p96 .fill, .c100.p97 .fill, .c100.p98 .fill, .c100.p99 .fill, .c100.p100 .fill { 53 | border: 0.08em solid #fa5b0f; 54 | } 55 | 56 | -------------------------------------------------------------------------------- /dark/css/skins/purple.css: -------------------------------------------------------------------------------- 1 | /* =================================================================== */ 2 | /* PURPLE #6957af 3 | ====================================================================== */ 4 | 5 | .home h1, 6 | .about .box-stats h3, 7 | .title-section h1 span, 8 | #menu li.active a, 9 | body.light #menu li.active a, 10 | .blog .post-container:hover .post-content .entry-header h3 a, 11 | .blog .post-content .entry-header h3 a:hover, 12 | .contact .custom-span-contact i, 13 | .portfolio .slideshow figcaption h3, 14 | .portfolio .slideshow a, 15 | .portfolio .grid figure:hover figcaption, 16 | .blog-post .meta i{ 17 | color: #6957af; 18 | } 19 | .about .resume-box .icon, 20 | .contact ul.social li a:hover, 21 | body.light.contact ul.social li a:hover, 22 | .preloader .loader, 23 | .blog .page-link:hover, 24 | .blog .page-item.active .page-link, 25 | body.light.blog .page-link:hover, 26 | body.light.blog .page-item.active .page-link, 27 | .portfolio .grid li figure div, 28 | .header ul.icon-menu li.icon-box.active, .header ul.icon-menu li.icon-box:hover, 29 | body.light .header ul.icon-menu li.icon-box.active, body.light .header ul.icon-menu li.icon-box:hover, 30 | .btn, 31 | .header .icon-box h2, 32 | .home .color-block, 33 | .title-section hr, 34 | .portfolio .slideshow .carousel-indicators li.active { 35 | background-color: #6957af; 36 | } 37 | .contact .contactform input[type=text]:focus, 38 | .contact .contactform input[type=email]:focus, 39 | .contact .contactform textarea:focus, 40 | body.light.contact .contactform input[type=text]:focus, 41 | body.light.contact .contactform input[type=email]:focus, 42 | body.light.contact .contactform textarea:focus, 43 | .blog .page-item.active .page-link, 44 | .blog .page-link:hover, 45 | body.light.blog .page-item.active .page-link, 46 | body.light.blog .page-link:hover{ 47 | border: 1px solid #6957af; 48 | } 49 | .blog .post-thumb { 50 | border-bottom: 5px solid #6957af; 51 | } 52 | .pie, .c100 .bar, .c100.p51 .fill, .c100.p52 .fill, .c100.p53 .fill, .c100.p54 .fill, .c100.p55 .fill, .c100.p56 .fill, .c100.p57 .fill, .c100.p58 .fill, .c100.p59 .fill, .c100.p60 .fill, .c100.p61 .fill, .c100.p62 .fill, .c100.p63 .fill, .c100.p64 .fill, .c100.p65 .fill, .c100.p66 .fill, .c100.p67 .fill, .c100.p68 .fill, .c100.p69 .fill, .c100.p70 .fill, .c100.p71 .fill, .c100.p72 .fill, .c100.p73 .fill, .c100.p74 .fill, .c100.p75 .fill, .c100.p76 .fill, .c100.p77 .fill, .c100.p78 .fill, .c100.p79 .fill, .c100.p80 .fill, .c100.p81 .fill, .c100.p82 .fill, .c100.p83 .fill, .c100.p84 .fill, .c100.p85 .fill, .c100.p86 .fill, .c100.p87 .fill, .c100.p88 .fill, .c100.p89 .fill, .c100.p90 .fill, .c100.p91 .fill, .c100.p92 .fill, .c100.p93 .fill, .c100.p94 .fill, .c100.p95 .fill, .c100.p96 .fill, .c100.p97 .fill, .c100.p98 .fill, .c100.p99 .fill, .c100.p100 .fill { 53 | border: 0.08em solid #6957af; 54 | } 55 | 56 | -------------------------------------------------------------------------------- /dark/css/skins/red.css: -------------------------------------------------------------------------------- 1 | /* =================================================================== */ 2 | /* RED #f72b1c 3 | ====================================================================== */ 4 | 5 | .home h1, 6 | .about .box-stats h3, 7 | .title-section h1 span, 8 | #menu li.active a, 9 | body.light #menu li.active a, 10 | .blog .post-container:hover .post-content .entry-header h3 a, 11 | .blog .post-content .entry-header h3 a:hover, 12 | .contact .custom-span-contact i, 13 | .portfolio .slideshow figcaption h3, 14 | .portfolio .slideshow a, 15 | .portfolio .grid figure:hover figcaption, 16 | .blog-post .meta i{ 17 | color: #f72b1c; 18 | } 19 | .about .resume-box .icon, 20 | .contact ul.social li a:hover, 21 | body.light.contact ul.social li a:hover, 22 | .preloader .loader, 23 | .blog .page-link:hover, 24 | .blog .page-item.active .page-link, 25 | body.light.blog .page-link:hover, 26 | body.light.blog .page-item.active .page-link, 27 | .portfolio .grid li figure div, 28 | .header ul.icon-menu li.icon-box.active, .header ul.icon-menu li.icon-box:hover, 29 | body.light .header ul.icon-menu li.icon-box.active, body.light .header ul.icon-menu li.icon-box:hover, 30 | .btn, 31 | .header .icon-box h2, 32 | .home .color-block, 33 | .title-section hr, 34 | .portfolio .slideshow .carousel-indicators li.active { 35 | background-color: #f72b1c; 36 | } 37 | .contact .contactform input[type=text]:focus, 38 | .contact .contactform input[type=email]:focus, 39 | .contact .contactform textarea:focus, 40 | body.light.contact .contactform input[type=text]:focus, 41 | body.light.contact .contactform input[type=email]:focus, 42 | body.light.contact .contactform textarea:focus, 43 | .blog .page-item.active .page-link, 44 | .blog .page-link:hover, 45 | body.light.blog .page-item.active .page-link, 46 | body.light.blog .page-link:hover{ 47 | border: 1px solid #f72b1c; 48 | } 49 | .blog .post-thumb { 50 | border-bottom: 5px solid #f72b1c; 51 | } 52 | .pie, .c100 .bar, .c100.p51 .fill, .c100.p52 .fill, .c100.p53 .fill, .c100.p54 .fill, .c100.p55 .fill, .c100.p56 .fill, .c100.p57 .fill, .c100.p58 .fill, .c100.p59 .fill, .c100.p60 .fill, .c100.p61 .fill, .c100.p62 .fill, .c100.p63 .fill, .c100.p64 .fill, .c100.p65 .fill, .c100.p66 .fill, .c100.p67 .fill, .c100.p68 .fill, .c100.p69 .fill, .c100.p70 .fill, .c100.p71 .fill, .c100.p72 .fill, .c100.p73 .fill, .c100.p74 .fill, .c100.p75 .fill, .c100.p76 .fill, .c100.p77 .fill, .c100.p78 .fill, .c100.p79 .fill, .c100.p80 .fill, .c100.p81 .fill, .c100.p82 .fill, .c100.p83 .fill, .c100.p84 .fill, .c100.p85 .fill, .c100.p86 .fill, .c100.p87 .fill, .c100.p88 .fill, .c100.p89 .fill, .c100.p90 .fill, .c100.p91 .fill, .c100.p92 .fill, .c100.p93 .fill, .c100.p94 .fill, .c100.p95 .fill, .c100.p96 .fill, .c100.p97 .fill, .c100.p98 .fill, .c100.p99 .fill, .c100.p100 .fill { 53 | border: 0.08em solid #f72b1c; 54 | } 55 | 56 | -------------------------------------------------------------------------------- /dark/css/skins/yellow.css: -------------------------------------------------------------------------------- 1 | /* =================================================================== */ 2 | /* YELLOW #ffb400 3 | ====================================================================== */ 4 | 5 | .home h1, 6 | .about .box-stats h3, 7 | .title-section h1 span, 8 | #menu li.active a, 9 | body.light #menu li.active a, 10 | .blog .post-container:hover .post-content .entry-header h3 a, 11 | .blog .post-content .entry-header h3 a:hover, 12 | .contact .custom-span-contact i, 13 | .portfolio .slideshow figcaption h3, 14 | .portfolio .slideshow a, 15 | .portfolio .grid figure:hover figcaption, 16 | .blog-post .meta i{ 17 | color: #ffb400; 18 | } 19 | .about .resume-box .icon, 20 | .contact ul.social li a:hover, 21 | body.light.contact ul.social li a:hover, 22 | .preloader .loader, 23 | .blog .page-link:hover, 24 | .blog .page-item.active .page-link, 25 | body.light.blog .page-link:hover, 26 | body.light.blog .page-item.active .page-link, 27 | .portfolio .grid li figure div, 28 | .header ul.icon-menu li.icon-box.active, .header ul.icon-menu li.icon-box:hover, 29 | body.light .header ul.icon-menu li.icon-box.active, body.light .header ul.icon-menu li.icon-box:hover, 30 | .btn, 31 | .header .icon-box h2, 32 | .home .color-block, 33 | .title-section hr, 34 | .portfolio .slideshow .carousel-indicators li.active { 35 | background-color: #ffb400; 36 | } 37 | .contact .contactform input[type=text]:focus, 38 | .contact .contactform input[type=email]:focus, 39 | .contact .contactform textarea:focus, 40 | body.light.contact .contactform input[type=text]:focus, 41 | body.light.contact .contactform input[type=email]:focus, 42 | body.light.contact .contactform textarea:focus, 43 | .blog .page-item.active .page-link, 44 | .blog .page-link:hover, 45 | body.light.blog .page-item.active .page-link, 46 | body.light.blog .page-link:hover{ 47 | border: 1px solid #ffb400; 48 | } 49 | .blog .post-thumb { 50 | border-bottom: 5px solid #ffb400; 51 | } 52 | .pie, .c100 .bar, .c100.p51 .fill, .c100.p52 .fill, .c100.p53 .fill, .c100.p54 .fill, .c100.p55 .fill, .c100.p56 .fill, .c100.p57 .fill, .c100.p58 .fill, .c100.p59 .fill, .c100.p60 .fill, .c100.p61 .fill, .c100.p62 .fill, .c100.p63 .fill, .c100.p64 .fill, .c100.p65 .fill, .c100.p66 .fill, .c100.p67 .fill, .c100.p68 .fill, .c100.p69 .fill, .c100.p70 .fill, .c100.p71 .fill, .c100.p72 .fill, .c100.p73 .fill, .c100.p74 .fill, .c100.p75 .fill, .c100.p76 .fill, .c100.p77 .fill, .c100.p78 .fill, .c100.p79 .fill, .c100.p80 .fill, .c100.p81 .fill, .c100.p82 .fill, .c100.p83 .fill, .c100.p84 .fill, .c100.p85 .fill, .c100.p86 .fill, .c100.p87 .fill, .c100.p88 .fill, .c100.p89 .fill, .c100.p90 .fill, .c100.p91 .fill, .c100.p92 .fill, .c100.p93 .fill, .c100.p94 .fill, .c100.p95 .fill, .c100.p96 .fill, .c100.p97 .fill, .c100.p98 .fill, .c100.p99 .fill, .c100.p100 .fill { 53 | border: 0.08em solid #ffb400; 54 | } 55 | 56 | -------------------------------------------------------------------------------- /dark/css/skins/yellowgreen.css: -------------------------------------------------------------------------------- 1 | /* =================================================================== */ 2 | /* YELLOWGREEN #9acd32 3 | ====================================================================== */ 4 | 5 | .home h1, 6 | .about .box-stats h3, 7 | .title-section h1 span, 8 | #menu li.active a, 9 | body.light #menu li.active a, 10 | .blog .post-container:hover .post-content .entry-header h3 a, 11 | .blog .post-content .entry-header h3 a:hover, 12 | .contact .custom-span-contact i, 13 | .portfolio .slideshow figcaption h3, 14 | .portfolio .slideshow a, 15 | .portfolio .grid figure:hover figcaption, 16 | .blog-post .meta i{ 17 | color: #9acd32; 18 | } 19 | .about .resume-box .icon, 20 | .contact ul.social li a:hover, 21 | body.light.contact ul.social li a:hover, 22 | .preloader .loader, 23 | .blog .page-link:hover, 24 | .blog .page-item.active .page-link, 25 | body.light.blog .page-link:hover, 26 | body.light.blog .page-item.active .page-link, 27 | .portfolio .grid li figure div, 28 | .header ul.icon-menu li.icon-box.active, .header ul.icon-menu li.icon-box:hover, 29 | body.light .header ul.icon-menu li.icon-box.active, body.light .header ul.icon-menu li.icon-box:hover, 30 | .btn, 31 | .header .icon-box h2, 32 | .home .color-block, 33 | .title-section hr, 34 | .portfolio .slideshow .carousel-indicators li.active { 35 | background-color: #9acd32; 36 | } 37 | .contact .contactform input[type=text]:focus, 38 | .contact .contactform input[type=email]:focus, 39 | .contact .contactform textarea:focus, 40 | body.light.contact .contactform input[type=text]:focus, 41 | body.light.contact .contactform input[type=email]:focus, 42 | body.light.contact .contactform textarea:focus, 43 | .blog .page-item.active .page-link, 44 | .blog .page-link:hover, 45 | body.light.blog .page-item.active .page-link, 46 | body.light.blog .page-link:hover{ 47 | border: 1px solid #9acd32; 48 | } 49 | .blog .post-thumb { 50 | border-bottom: 5px solid #9acd32; 51 | } 52 | .about .resume-box li:after { 53 | border-left: 1px solid #9acd32; 54 | } 55 | .pie, .c100 .bar, .c100.p51 .fill, .c100.p52 .fill, .c100.p53 .fill, .c100.p54 .fill, .c100.p55 .fill, .c100.p56 .fill, .c100.p57 .fill, .c100.p58 .fill, .c100.p59 .fill, .c100.p60 .fill, .c100.p61 .fill, .c100.p62 .fill, .c100.p63 .fill, .c100.p64 .fill, .c100.p65 .fill, .c100.p66 .fill, .c100.p67 .fill, .c100.p68 .fill, .c100.p69 .fill, .c100.p70 .fill, .c100.p71 .fill, .c100.p72 .fill, .c100.p73 .fill, .c100.p74 .fill, .c100.p75 .fill, .c100.p76 .fill, .c100.p77 .fill, .c100.p78 .fill, .c100.p79 .fill, .c100.p80 .fill, .c100.p81 .fill, .c100.p82 .fill, .c100.p83 .fill, .c100.p84 .fill, .c100.p85 .fill, .c100.p86 .fill, .c100.p87 .fill, .c100.p88 .fill, .c100.p89 .fill, .c100.p90 .fill, .c100.p91 .fill, .c100.p92 .fill, .c100.p93 .fill, .c100.p94 .fill, .c100.p95 .fill, .c100.p96 .fill, .c100.p97 .fill, .c100.p98 .fill, .c100.p99 .fill, .c100.p100 .fill { 56 | border: 0.08em solid #9acd32; 57 | } 58 | 59 | -------------------------------------------------------------------------------- /dark/css/styleswitcher.css: -------------------------------------------------------------------------------- 1 | #switcher { 2 | background: #fff; 3 | position: fixed; 4 | display: none; 5 | top: 100px; 6 | left:0; 7 | direction:ltr; 8 | z-index: 11111; 9 | width:220px; 10 | margin-left: 0; 11 | border-radius: 0 5px 5px 0; 12 | font-family: 'Open Sans', Arial, sans-serif; 13 | -webkit-box-shadow: 0px 0px 4px 0px rgba(51, 51, 51, 0.2); 14 | box-shadow: 0px 0px 4px 0px rgba(51, 51, 51, 0.2); 15 | 16 | } 17 | 18 | #switcher label { 19 | padding-right:20px; 20 | padding-left:20px; 21 | font-weight:normal; 22 | cursor:pointer; 23 | color:#333; 24 | position: relative; 25 | } 26 | #switcher hr { 27 | border:0; 28 | border-bottom:#ccc 1px solid; 29 | margin:10px 0; 30 | } 31 | #switcher h4 { 32 | padding: 5px 0; 33 | border-bottom:#ccc 1px solid; 34 | text-transform:uppercase; 35 | font-size:15px; 36 | font-weight:bold; 37 | color:#333; 38 | margin: 0 0 10px 0; 39 | } 40 | 41 | #switcher ul { 42 | padding:0!important; 43 | margin:20px 0!important; 44 | } 45 | #switcher ul li { 46 | text-transform:uppercase; 47 | margin-bottom:0; 48 | font-size:12px; 49 | display:inline-block; 50 | } 51 | #switcher ul li a img{ 52 | width:30px; 53 | } 54 | 55 | #showSwitcher { 56 | z-index: 11111; 57 | margin-left:0px; 58 | position:fixed; 59 | left:0; 60 | top:210px; 61 | background: #fff; 62 | box-shadow:#ccc 0 0 2px; 63 | border-left:0; 64 | font-size:18px; 65 | display: block; 66 | 67 | -webkit-border-bottom-right-radius: 3px; 68 | -webkit-border-top-right-radius: 4px; 69 | -moz-border-radius-bottomright: 3px; 70 | -moz-border-radius-topright: 4px; 71 | border-bottom-right-radius: 3px; 72 | border-top-right-radius: 4px; 73 | 74 | padding: 10px 16px 10px 14px; 75 | cursor: pointer; 76 | } 77 | #hideSwitcher { 78 | cursor:pointer; 79 | line-height:43px; 80 | font-size: 38px; 81 | margin-bottom: 0px; 82 | color:#999; 83 | position:absolute; 84 | background-color:#fff; 85 | width:40px; 86 | height:40px; 87 | top:7px; 88 | right:16px; 89 | text-align:right; 90 | -webkit-border-bottom-right-radius: 3px; 91 | -webkit-border-top-right-radius: 4px; 92 | -moz-border-radius-bottomright: 3px; 93 | -moz-border-radius-topright: 4px; 94 | border-bottom-right-radius: 3px; 95 | border-top-right-radius: 4px; 96 | } 97 | 98 | 99 | #switcher .content-switcher { 100 | padding: 16px; 101 | overflow: hidden; 102 | } 103 | 104 | #switcher a.color { 105 | border-radius: 2px; 106 | cursor: pointer; 107 | display: inline-block; 108 | margin:4px 2px; 109 | width: 30px; 110 | height: 30px; 111 | } 112 | 113 | #switcher p small { 114 | font-size:10px; 115 | } 116 | #switcher p { 117 | margin:15px 0 10px 0; 118 | font-size:12px; 119 | font-weight:400; 120 | color:#2E363F; 121 | } 122 | #showSwitcher i { 123 | font-size:25px; 124 | color:#222; 125 | } 126 | #switcher .styled-select select { 127 | background:#f5f5f5; 128 | width: 100%; 129 | font-size: 13px; 130 | line-height: 13px; 131 | outline:none; 132 | 133 | -webkit-appearance: none; 134 | cursor:pointer; 135 | } 136 | #switcher p.separator { 137 | margin-bottom:0; 138 | } 139 | #switcher span.hot { 140 | background: #ff0000; 141 | color: #fff; 142 | padding: 4px; 143 | border-radius: 6px; 144 | margin-left: 4px; 145 | font-weight: 700; 146 | } 147 | #switcher span.info { 148 | font-size: 11px; 149 | display: block; 150 | color: #118ce7; 151 | font-style: italic 152 | } 153 | 154 | /** ============ **/ 155 | #switcher .switcher_thumb { 156 | display:inline-block; 157 | margin:4px 3px; 158 | } 159 | #switcher .switcher_thumb.selected { 160 | box-shadow:#666 0 0 5px;; 161 | } 162 | #switcher .purchase { 163 | background-color: #82b440; 164 | text-transform: capitalize; 165 | font-size: 14px; 166 | border-radius: 4px; 167 | font-weight: 500; 168 | display: block; 169 | text-align: center; 170 | margin-top: 25px; 171 | } 172 | @media only screen and (max-width: 991px) { 173 | #switcher { 174 | top:40px; 175 | } 176 | #showSwitcher { 177 | top: 15px; 178 | display: none; 179 | } 180 | } 181 | 182 | #switcher .dark_switch { 183 | margin-top: 5px; 184 | opacity: 1; 185 | left: 0; 186 | } 187 | #switcher .purchase { 188 | text-transform: uppercase; 189 | transform: none !important; 190 | color: #fff; 191 | padding: 12px 26px; 192 | border-radius: 30px; 193 | font-weight: 600; 194 | text-decoration: none; 195 | } 196 | #switcher .purchase i { 197 | padding-right: 10px; 198 | 199 | } 200 | -------------------------------------------------------------------------------- /dark/fonts/fontawesome-webfont3e6e.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/fonts/fontawesome-webfont3e6e.eot -------------------------------------------------------------------------------- /dark/fonts/fontawesome-webfont3e6e.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/fonts/fontawesome-webfont3e6e.html -------------------------------------------------------------------------------- /dark/fonts/fontawesome-webfont3e6e.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/fonts/fontawesome-webfont3e6e.ttf -------------------------------------------------------------------------------- /dark/fonts/fontawesome-webfont3e6e.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/fonts/fontawesome-webfont3e6e.woff -------------------------------------------------------------------------------- /dark/fonts/fontawesome-webfontd41d.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/fonts/fontawesome-webfontd41d.eot -------------------------------------------------------------------------------- /dark/img/2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/img/2.jpg -------------------------------------------------------------------------------- /dark/img/blog/blog-post-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/img/blog/blog-post-1.jpg -------------------------------------------------------------------------------- /dark/img/blog/blog-post-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/img/blog/blog-post-2.jpg -------------------------------------------------------------------------------- /dark/img/blog/blog-post-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/img/blog/blog-post-3.jpg -------------------------------------------------------------------------------- /dark/img/blog/blog-post-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/img/blog/blog-post-4.jpg -------------------------------------------------------------------------------- /dark/img/blog/blog-post-5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/img/blog/blog-post-5.jpg -------------------------------------------------------------------------------- /dark/img/blog/blog-post-6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/img/blog/blog-post-6.jpg -------------------------------------------------------------------------------- /dark/img/img-mobile.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/img/img-mobile.jpg -------------------------------------------------------------------------------- /dark/img/light.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/img/light.jpg -------------------------------------------------------------------------------- /dark/img/projects/navigation/close-button.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/img/projects/navigation/close-button.png -------------------------------------------------------------------------------- /dark/img/projects/navigation/left-arrow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/img/projects/navigation/left-arrow.png -------------------------------------------------------------------------------- /dark/img/projects/navigation/right-arrow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/img/projects/navigation/right-arrow.png -------------------------------------------------------------------------------- /dark/img/projects/project-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/img/projects/project-1.jpg -------------------------------------------------------------------------------- /dark/img/projects/project-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/img/projects/project-2.jpg -------------------------------------------------------------------------------- /dark/img/projects/project-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/img/projects/project-3.jpg -------------------------------------------------------------------------------- /dark/img/projects/project-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/img/projects/project-4.jpg -------------------------------------------------------------------------------- /dark/img/projects/project-5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/img/projects/project-5.jpg -------------------------------------------------------------------------------- /dark/img/projects/project-6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/img/projects/project-6.jpg -------------------------------------------------------------------------------- /dark/img/projects/project-7.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/img/projects/project-7.jpg -------------------------------------------------------------------------------- /dark/img/projects/project-8.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/img/projects/project-8.jpg -------------------------------------------------------------------------------- /dark/img/projects/project-9.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/img/projects/project-9.jpg -------------------------------------------------------------------------------- /dark/img/projects/video.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/img/projects/video.mp4 -------------------------------------------------------------------------------- /dark/img/styleswitcher/blue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/img/styleswitcher/blue.png -------------------------------------------------------------------------------- /dark/img/styleswitcher/blueviolet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/img/styleswitcher/blueviolet.png -------------------------------------------------------------------------------- /dark/img/styleswitcher/goldenrod.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/img/styleswitcher/goldenrod.png -------------------------------------------------------------------------------- /dark/img/styleswitcher/green.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/img/styleswitcher/green.png -------------------------------------------------------------------------------- /dark/img/styleswitcher/magenta.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/img/styleswitcher/magenta.png -------------------------------------------------------------------------------- /dark/img/styleswitcher/orange.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/img/styleswitcher/orange.png -------------------------------------------------------------------------------- /dark/img/styleswitcher/purple.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/img/styleswitcher/purple.png -------------------------------------------------------------------------------- /dark/img/styleswitcher/red.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/img/styleswitcher/red.png -------------------------------------------------------------------------------- /dark/img/styleswitcher/yellow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/img/styleswitcher/yellow.png -------------------------------------------------------------------------------- /dark/img/styleswitcher/yellowgreen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/animation-coding/Personal-Portfolio-Website001/e57003aefbf67c3315dba62b749b3df2c43451b2/dark/img/styleswitcher/yellowgreen.png -------------------------------------------------------------------------------- /dark/index.html: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | Personal Portfolio 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 |
45 |
46 |

STYLE SWITCHER

47 | 79 |
×
80 |
81 |
82 |
83 | 84 | 85 | 138 | 139 | 140 |
141 |
142 |
143 |
144 |
145 |
146 | my picture 147 |
hi there !
148 |

I'm steve milner

149 |

I'm a Tunisian based web designer & front‑end developer focused on crafting clean & user‑friendly experiences, I am passionate about building excellent software that improves the lives of those around me.

150 | more about me 151 |
152 |
153 |
154 |
155 | 156 | 157 | 158 | 159 | 160 | 161 | 162 | 163 | 164 | 165 | 166 | 167 | 168 | 169 | 170 | 171 | 172 | 173 | 174 | -------------------------------------------------------------------------------- /dark/js/cbpGridGallery.js: -------------------------------------------------------------------------------- 1 | /** 2 | * cbpGridGallery.js v1.0.0 3 | * http://www.codrops.com 4 | * 5 | * Licensed under the MIT license. 6 | * http://www.opensource.org/licenses/mit-license.php 7 | * 8 | * Copyright 2014, Codrops 9 | * http://www.codrops.com 10 | */ 11 | ;( function( window ) { 12 | 13 | 'use strict'; 14 | 15 | var docElem = window.document.documentElement, 16 | transEndEventNames = { 17 | 'WebkitTransition': 'webkitTransitionEnd', 18 | 'MozTransition': 'transitionend', 19 | 'OTransition': 'oTransitionEnd', 20 | 'msTransition': 'MSTransitionEnd', 21 | 'transition': 'transitionend' 22 | }, 23 | transEndEventName = transEndEventNames[ Modernizr.prefixed( 'transition' ) ], 24 | support = { 25 | transitions : Modernizr.csstransitions, 26 | support3d : Modernizr.csstransforms3d 27 | }; 28 | 29 | function setTransform( el, transformStr ) { 30 | el.style.WebkitTransform = transformStr; 31 | el.style.msTransform = transformStr; 32 | el.style.transform = transformStr; 33 | } 34 | 35 | // from http://responsejs.com/labs/dimensions/ 36 | function getViewportW() { 37 | var client = docElem['clientWidth'], 38 | inner = window['innerWidth']; 39 | 40 | if( client < inner ) 41 | return inner; 42 | else 43 | return client; 44 | } 45 | 46 | function extend( a, b ) { 47 | for( var key in b ) { 48 | if( b.hasOwnProperty( key ) ) { 49 | a[key] = b[key]; 50 | } 51 | } 52 | return a; 53 | } 54 | 55 | function CBPGridGallery( el, options ) { 56 | this.el = el; 57 | this.options = extend( {}, this.options ); 58 | extend( this.options, options ); 59 | this._init(); 60 | } 61 | 62 | CBPGridGallery.prototype.options = { 63 | }; 64 | 65 | CBPGridGallery.prototype._init = function() { 66 | // main grid 67 | this.grid = this.el.querySelector( 'section.grid-wrap > ul.grid' ); 68 | // main grid items 69 | this.gridItems = [].slice.call( this.grid.querySelectorAll( 'li:not(.grid-sizer)' ) ); 70 | // items total 71 | this.itemsCount = this.gridItems.length; 72 | // slideshow grid 73 | this.slideshow = this.el.querySelector( 'section.slideshow > ul' ); 74 | // slideshow grid items 75 | this.slideshowItems = [].slice.call( this.slideshow.children ); 76 | // index of current slideshow item 77 | this.current = -1; 78 | // slideshow control buttons 79 | this.ctrlPrev = this.el.querySelector( 'section.slideshow > nav > span.nav-prev' ); 80 | this.ctrlNext = this.el.querySelector( 'section.slideshow > nav > span.nav-next' ); 81 | this.ctrlClose = this.el.querySelector( 'section.slideshow > nav > span.nav-close' ); 82 | // init masonry grid 83 | this._initMasonry(); 84 | // init events 85 | this._initEvents(); 86 | }; 87 | 88 | CBPGridGallery.prototype._initMasonry = function() { 89 | var grid = this.grid; 90 | imagesLoaded( grid, function() { 91 | new Masonry( grid, { 92 | itemSelector: 'li', 93 | columnWidth: grid.querySelector( '.grid-sizer' ) 94 | }); 95 | }); 96 | }; 97 | 98 | CBPGridGallery.prototype._initEvents = function() { 99 | var self = this; 100 | 101 | // open the slideshow when clicking on the main grid items 102 | this.gridItems.forEach( function( item, idx ) { 103 | item.addEventListener( 'click', function() { 104 | self._openSlideshow( idx ); 105 | } ); 106 | } ); 107 | 108 | // slideshow controls 109 | this.ctrlPrev.addEventListener( 'click', function() { self._navigate( 'prev' ); } ); 110 | this.ctrlNext.addEventListener( 'click', function() { self._navigate( 'next' ); } ); 111 | this.ctrlClose.addEventListener( 'click', function() { self._closeSlideshow(); } ); 112 | 113 | // window resize 114 | window.addEventListener( 'resize', function() { self._resizeHandler(); } ); 115 | 116 | // keyboard navigation events 117 | document.addEventListener( 'keydown', function( ev ) { 118 | if ( self.isSlideshowVisible ) { 119 | var keyCode = ev.keyCode || ev.which; 120 | 121 | switch (keyCode) { 122 | case 37: 123 | self._navigate( 'prev' ); 124 | break; 125 | case 39: 126 | self._navigate( 'next' ); 127 | break; 128 | case 27: 129 | self._closeSlideshow(); 130 | break; 131 | } 132 | } 133 | } ); 134 | 135 | // trick to prevent scrolling when slideshow is visible 136 | window.addEventListener( 'scroll', function() { 137 | if ( self.isSlideshowVisible ) { 138 | window.scrollTo( self.scrollPosition ? self.scrollPosition.x : 0, self.scrollPosition ? self.scrollPosition.y : 0 ); 139 | } 140 | else { 141 | self.scrollPosition = { x : window.pageXOffset || docElem.scrollLeft, y : window.pageYOffset || docElem.scrollTop }; 142 | } 143 | }); 144 | }; 145 | 146 | CBPGridGallery.prototype._openSlideshow = function( pos ) { 147 | this.isSlideshowVisible = true; 148 | this.current = pos; 149 | 150 | classie.addClass( this.el, 'slideshow-open' ); 151 | 152 | /* position slideshow items */ 153 | 154 | // set viewport items (current, next and previous) 155 | this._setViewportItems(); 156 | 157 | // add class "current" and "show" to currentItem 158 | classie.addClass( this.currentItem, 'current' ); 159 | classie.addClass( this.currentItem, 'show' ); 160 | 161 | // add class show to next and previous items 162 | // position previous item on the left side and the next item on the right side 163 | if( this.prevItem ) { 164 | classie.addClass( this.prevItem, 'show' ); 165 | var translateVal = Number( -1 * ( getViewportW() / 2 + this.prevItem.offsetWidth / 2 ) ); 166 | setTransform( this.prevItem, support.support3d ? 'translate3d(' + translateVal + 'px, 0, -150px)' : 'translate(' + translateVal + 'px)' ); 167 | } 168 | if( this.nextItem ) { 169 | classie.addClass( this.nextItem, 'show' ); 170 | var translateVal = Number( getViewportW() / 2 + this.nextItem.offsetWidth / 2 ); 171 | setTransform( this.nextItem, support.support3d ? 'translate3d(' + translateVal + 'px, 0, -150px)' : 'translate(' + translateVal + 'px)' ); 172 | } 173 | }; 174 | 175 | CBPGridGallery.prototype._navigate = function( dir ) { 176 | if( this.isAnimating ) return; 177 | if( dir === 'next' && this.current === this.itemsCount - 1 || dir === 'prev' && this.current === 0 ) { 178 | this._closeSlideshow(); 179 | return; 180 | } 181 | 182 | this.isAnimating = true; 183 | 184 | // reset viewport items 185 | this._setViewportItems(); 186 | 187 | var self = this, 188 | itemWidth = this.currentItem.offsetWidth, 189 | // positions for the centered/current item, both the side items and the incoming ones 190 | transformLeftStr = support.support3d ? 'translate3d(-' + Number( getViewportW() / 2 + itemWidth / 2 ) + 'px, 0, -150px)' : 'translate(-' + Number( getViewportW() / 2 + itemWidth / 2 ) + 'px)', 191 | transformRightStr = support.support3d ? 'translate3d(' + Number( getViewportW() / 2 + itemWidth / 2 ) + 'px, 0, -150px)' : 'translate(' + Number( getViewportW() / 2 + itemWidth / 2 ) + 'px)', 192 | transformCenterStr = '', transformOutStr, transformIncomingStr, 193 | // incoming item 194 | incomingItem; 195 | 196 | if( dir === 'next' ) { 197 | transformOutStr = support.support3d ? 'translate3d( -' + Number( (getViewportW() * 2) / 2 + itemWidth / 2 ) + 'px, 0, -150px )' : 'translate(-' + Number( (getViewportW() * 2) / 2 + itemWidth / 2 ) + 'px)'; 198 | transformIncomingStr = support.support3d ? 'translate3d( ' + Number( (getViewportW() * 2) / 2 + itemWidth / 2 ) + 'px, 0, -150px )' : 'translate(' + Number( (getViewportW() * 2) / 2 + itemWidth / 2 ) + 'px)'; 199 | } 200 | else { 201 | transformOutStr = support.support3d ? 'translate3d( ' + Number( (getViewportW() * 2) / 2 + itemWidth / 2 ) + 'px, 0, -150px )' : 'translate(' + Number( (getViewportW() * 2) / 2 + itemWidth / 2 ) + 'px)'; 202 | transformIncomingStr = support.support3d ? 'translate3d( -' + Number( (getViewportW() * 2) / 2 + itemWidth / 2 ) + 'px, 0, -150px )' : 'translate(-' + Number( (getViewportW() * 2) / 2 + itemWidth / 2 ) + 'px)'; 203 | } 204 | 205 | // remove class animatable from the slideshow grid (if it has already) 206 | classie.removeClass( self.slideshow, 'animatable' ); 207 | 208 | if( dir === 'next' && this.current < this.itemsCount - 2 || dir === 'prev' && this.current > 1 ) { 209 | // we have an incoming item! 210 | incomingItem = this.slideshowItems[ dir === 'next' ? this.current + 2 : this.current - 2 ]; 211 | setTransform( incomingItem, transformIncomingStr ); 212 | classie.addClass( incomingItem, 'show' ); 213 | } 214 | 215 | var slide = function() { 216 | // add class animatable to the slideshow grid 217 | classie.addClass( self.slideshow, 'animatable' ); 218 | 219 | // overlays: 220 | classie.removeClass( self.currentItem, 'current' ); 221 | var nextCurrent = dir === 'next' ? self.nextItem : self.prevItem; 222 | classie.addClass( nextCurrent, 'current' ); 223 | 224 | setTransform( self.currentItem, dir === 'next' ? transformLeftStr : transformRightStr ); 225 | 226 | if( self.nextItem ) { 227 | setTransform( self.nextItem, dir === 'next' ? transformCenterStr : transformOutStr ); 228 | } 229 | 230 | if( self.prevItem ) { 231 | setTransform( self.prevItem, dir === 'next' ? transformOutStr : transformCenterStr ); 232 | } 233 | 234 | if( incomingItem ) { 235 | setTransform( incomingItem, dir === 'next' ? transformRightStr : transformLeftStr ); 236 | } 237 | 238 | var onEndTransitionFn = function( ev ) { 239 | if( support.transitions ) { 240 | if( ev.propertyName.indexOf( 'transform' ) === -1 ) return false; 241 | this.removeEventListener( transEndEventName, onEndTransitionFn ); 242 | } 243 | 244 | if( self.prevItem && dir === 'next' ) { 245 | classie.removeClass( self.prevItem, 'show' ); 246 | } 247 | else if( self.nextItem && dir === 'prev' ) { 248 | classie.removeClass( self.nextItem, 'show' ); 249 | } 250 | 251 | if( dir === 'next' ) { 252 | self.prevItem = self.currentItem; 253 | self.currentItem = self.nextItem; 254 | if( incomingItem ) { 255 | self.nextItem = incomingItem; 256 | } 257 | } 258 | else { 259 | self.nextItem = self.currentItem; 260 | self.currentItem = self.prevItem; 261 | if( incomingItem ) { 262 | self.prevItem = incomingItem; 263 | } 264 | } 265 | 266 | self.current = dir === 'next' ? self.current + 1 : self.current - 1; 267 | self.isAnimating = false; 268 | }; 269 | 270 | if( support.transitions ) { 271 | self.currentItem.addEventListener( transEndEventName, onEndTransitionFn ); 272 | } 273 | else { 274 | onEndTransitionFn(); 275 | } 276 | }; 277 | 278 | setTimeout( slide, 25 ); 279 | } 280 | 281 | CBPGridGallery.prototype._closeSlideshow = function( pos ) { 282 | // remove class slideshow-open from the grid gallery elem 283 | classie.removeClass( this.el, 'slideshow-open' ); 284 | // remove class animatable from the slideshow grid 285 | classie.removeClass( this.slideshow, 'animatable' ); 286 | 287 | var self = this, 288 | onEndTransitionFn = function( ev ) { 289 | if( support.transitions ) { 290 | if( ev.target.tagName.toLowerCase() !== 'ul' ) return; 291 | this.removeEventListener( transEndEventName, onEndTransitionFn ); 292 | } 293 | // remove classes show and current from the slideshow items 294 | classie.removeClass( self.currentItem, 'current' ); 295 | classie.removeClass( self.currentItem, 'show' ); 296 | 297 | if( self.prevItem ) { 298 | classie.removeClass( self.prevItem, 'show' ); 299 | } 300 | if( self.nextItem ) { 301 | classie.removeClass( self.nextItem, 'show' ); 302 | } 303 | 304 | // also reset any transforms for all the items 305 | self.slideshowItems.forEach( function( item ) { setTransform( item, '' ); } ); 306 | 307 | self.isSlideshowVisible = false; 308 | }; 309 | 310 | if( support.transitions ) { 311 | this.el.addEventListener( transEndEventName, onEndTransitionFn ); 312 | } 313 | else { 314 | onEndTransitionFn(); 315 | } 316 | }; 317 | 318 | CBPGridGallery.prototype._setViewportItems = function() { 319 | this.currentItem = null; 320 | this.prevItem = null; 321 | this.nextItem = null; 322 | 323 | if( this.current > 0 ) { 324 | this.prevItem = this.slideshowItems[ this.current - 1 ]; 325 | } 326 | if( this.current < this.itemsCount - 1 ) { 327 | this.nextItem = this.slideshowItems[ this.current + 1 ]; 328 | } 329 | this.currentItem = this.slideshowItems[ this.current ]; 330 | } 331 | 332 | // taken from https://github.com/desandro/vanilla-masonry/blob/master/masonry.js by David DeSandro 333 | // original debounce by John Hann 334 | // http://unscriptable.com/index.php/2009/03/20/debouncing-javascript-methods/ 335 | CBPGridGallery.prototype._resizeHandler = function() { 336 | var self = this; 337 | function delayed() { 338 | self._resize(); 339 | self._resizeTimeout = null; 340 | } 341 | if ( this._resizeTimeout ) { 342 | clearTimeout( this._resizeTimeout ); 343 | } 344 | this._resizeTimeout = setTimeout( delayed, 50 ); 345 | } 346 | 347 | CBPGridGallery.prototype._resize = function() { 348 | if ( this.isSlideshowVisible ) { 349 | // update width value 350 | if( this.prevItem ) { 351 | var translateVal = Number( -1 * ( getViewportW() / 2 + this.prevItem.offsetWidth / 2 ) ); 352 | setTransform( this.prevItem, support.support3d ? 'translate3d(' + translateVal + 'px, 0, -150px)' : 'translate(' + translateVal + 'px)' ); 353 | } 354 | if( this.nextItem ) { 355 | var translateVal = Number( getViewportW() / 2 + this.nextItem.offsetWidth / 2 ); 356 | setTransform( this.nextItem, support.support3d ? 'translate3d(' + translateVal + 'px, 0, -150px)' : 'translate(' + translateVal + 'px)' ); 357 | } 358 | } 359 | } 360 | 361 | // add to global namespace 362 | window.CBPGridGallery = CBPGridGallery; 363 | 364 | })( window ); -------------------------------------------------------------------------------- /dark/js/classie.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * classie - class helper functions 3 | * from bonzo https://github.com/ded/bonzo 4 | * 5 | * classie.has( elem, 'my-class' ) -> true/false 6 | * classie.add( elem, 'my-new-class' ) 7 | * classie.remove( elem, 'my-unwanted-class' ) 8 | * classie.toggle( elem, 'my-class' ) 9 | */ 10 | 11 | /*jshint browser: true, strict: true, undef: true */ 12 | /*global define: false */ 13 | 14 | ( function( window ) { 15 | 16 | 'use strict'; 17 | 18 | // class helper functions from bonzo https://github.com/ded/bonzo 19 | 20 | function classReg( className ) { 21 | return new RegExp("(^|\\s+)" + className + "(\\s+|$)"); 22 | } 23 | 24 | // classList support for class management 25 | // altho to be fair, the api sucks because it won't accept multiple classes at once 26 | var hasClass, addClass, removeClass; 27 | 28 | if ( 'classList' in document.documentElement ) { 29 | hasClass = function( elem, c ) { 30 | return elem.classList.contains( c ); 31 | }; 32 | addClass = function( elem, c ) { 33 | elem.classList.add( c ); 34 | }; 35 | removeClass = function( elem, c ) { 36 | elem.classList.remove( c ); 37 | }; 38 | } 39 | else { 40 | hasClass = function( elem, c ) { 41 | return classReg( c ).test( elem.className ); 42 | }; 43 | addClass = function( elem, c ) { 44 | if ( !hasClass( elem, c ) ) { 45 | elem.className = elem.className + ' ' + c; 46 | } 47 | }; 48 | removeClass = function( elem, c ) { 49 | elem.className = elem.className.replace( classReg( c ), ' ' ); 50 | }; 51 | } 52 | 53 | function toggleClass( elem, c ) { 54 | var fn = hasClass( elem, c ) ? removeClass : addClass; 55 | fn( elem, c ); 56 | } 57 | 58 | var classie = { 59 | // full names 60 | hasClass: hasClass, 61 | addClass: addClass, 62 | removeClass: removeClass, 63 | toggleClass: toggleClass, 64 | // short names 65 | has: hasClass, 66 | add: addClass, 67 | remove: removeClass, 68 | toggle: toggleClass 69 | }; 70 | 71 | // transport 72 | if ( typeof define === 'function' && define.amd ) { 73 | // AMD 74 | define( classie ); 75 | } else { 76 | // browser global 77 | window.classie = classie; 78 | } 79 | 80 | })( window ); 81 | -------------------------------------------------------------------------------- /dark/js/custom.js: -------------------------------------------------------------------------------- 1 | (function($) { 2 | 3 | "use strict"; 4 | 5 | /* ----------------------------------------------------------- */ 6 | /* FUNCTION TO STOP LOCAL AND YOUTUBE VIDEOS IN SLIDESHOW 7 | /* ----------------------------------------------------------- */ 8 | 9 | function stop_videos() { 10 | var video = document.getElementById("video"); 11 | if (video.paused !== true && video.ended !== true) { 12 | video.pause(); 13 | } 14 | $('.youtube-video')[0].contentWindow.postMessage('{"event":"command","func":"' + 'pauseVideo' + '","args":""}', '*'); 15 | } 16 | 17 | $(document).ready(function() { 18 | 19 | /* ----------------------------------------------------------- */ 20 | /* STOP VIDEOS 21 | /* ----------------------------------------------------------- */ 22 | 23 | $('.slideshow nav span').on('click', function () { 24 | stop_videos(); 25 | }); 26 | 27 | /* ----------------------------------------------------------- */ 28 | /* FIX REVEALATOR ISSUE AFTER PAGE LOADED 29 | /* ----------------------------------------------------------- */ 30 | 31 | $(".revealator-delay1").addClass('no-transform'); 32 | 33 | /* ----------------------------------------------------------- */ 34 | /* PORTFOLIO GALLERY 35 | /* ----------------------------------------------------------- */ 36 | 37 | if ($('.grid').length) { 38 | new CBPGridGallery( document.getElementById( 'grid-gallery' ) ); 39 | } 40 | 41 | /* ----------------------------------------------------------- */ 42 | /* BUTTONS ANIMATION 43 | /* ----------------------------------------------------------- */ 44 | function checkSize() { 45 | if ($( document ).width() > 992) { 46 | var btn_hover = ""; 47 | $(".btn").each(function() { 48 | var btn_text = $(this).text(); 49 | $(this).addClass(btn_hover).empty().append("" + btn_text + ""); 50 | }); 51 | } 52 | } 53 | checkSize(); 54 | window.addEventListener('resize', function () { 55 | checkSize(); 56 | }); 57 | 58 | /* ----------------------------------------------------------- */ 59 | /* HIDE HEADER WHEN PORTFOLIO SLIDESHOW OPENED 60 | /* ----------------------------------------------------------- */ 61 | 62 | $(".grid figure").on('click', function() { 63 | $("#navbar-collapse-toggle").addClass('hide-header'); 64 | }); 65 | 66 | /* ----------------------------------------------------------- */ 67 | /* SHOW HEADER WHEN PORTFOLIO SLIDESHOW CLOSED 68 | /* ----------------------------------------------------------- */ 69 | 70 | $(".nav-close").on('click', function() { 71 | $("#navbar-collapse-toggle").removeClass('hide-header'); 72 | }); 73 | $(".nav-prev").on('click', function() { 74 | if ($('.slideshow ul li:first-child').hasClass('current')) { 75 | $("#navbar-collapse-toggle").removeClass('hide-header'); 76 | } 77 | }); 78 | $(".nav-next").on('click', function() { 79 | if ($('.slideshow ul li:last-child').hasClass('current')) { 80 | $("#navbar-collapse-toggle").removeClass('hide-header'); 81 | } 82 | }); 83 | 84 | /* ----------------------------------------------------------- */ 85 | /* PORTFOLIO DIRECTION AWARE HOVER EFFECT 86 | /* ----------------------------------------------------------- */ 87 | 88 | var item = $(".grid li figure"); 89 | var elementsLength = item.length; 90 | for (var i = 0; i < elementsLength; i++) { 91 | $(item[i]).hoverdir(); 92 | } 93 | 94 | /* ----------------------------------------------------------- */ 95 | /* AJAX CONTACT FORM 96 | /* ----------------------------------------------------------- */ 97 | 98 | $(".contactform").on("submit", function() { 99 | $(".output_message").text("Sending..."); 100 | 101 | var form = $(this); 102 | $.ajax({ 103 | url: form.attr("action"), 104 | method: form.attr("method"), 105 | data: form.serialize(), 106 | success: function(result) { 107 | if (result == "success") { 108 | $(".form-inputs").css("display", "none"); 109 | $(".box p").css("display", "none"); 110 | $(".contactform").find(".output_message").addClass("success"); 111 | $(".output_message").text("Message Sent!"); 112 | } else { 113 | $(".tabs-container").css("height", "440px"); 114 | 115 | $(".contactform").find(".output_message").addClass("error"); 116 | $(".output_message").text("Error Sending!"); 117 | } 118 | } 119 | }); 120 | 121 | return false; 122 | }); 123 | 124 | }); 125 | 126 | $(document).keyup(function(e) { 127 | 128 | /* ----------------------------------------------------------- */ 129 | /* KEYBOARD NAVIGATION IN PORTFOLIO SLIDESHOW 130 | /* ----------------------------------------------------------- */ 131 | if (e.keyCode === 27) { 132 | stop_videos(); 133 | $('.close-content').click(); 134 | $("#navbar-collapse-toggle").removeClass('hide-header'); 135 | } 136 | if ((e.keyCode === 37) || (e.keyCode === 39)) { 137 | stop_videos(); 138 | } 139 | }); 140 | 141 | 142 | })(jQuery); 143 | -------------------------------------------------------------------------------- /dark/js/fm.revealator.jquery.min.js: -------------------------------------------------------------------------------- 1 | var Revealator=void 0!==Revealator?Revealator:{};$(function(){function a(){Revealator.busy||(Revealator.busy=!0,setTimeout(function(){Revealator.busy=!1,Revealator.refresh()},150))}(Revealator=$.extend({},{timer:null,busy:!1,scroll_padding:0,effects_padding:0,refresh:function(){}},void 0!==Revealator?Revealator:{})).refresh=function(){var a=$(window),e=$(document),o=$(document.body),t=Revealator.effects_padding,l=a.height()-Revealator.effects_padding,r=Revealator.scroll_padding,s=e.height()-Revealator.scroll_padding;0===a.scrollTop()?o.hasClass("at-top")||o.addClass("at-top").removeClass("at-bottom").removeClass("near-top").removeClass("near-bottom"):a.scrollTop()+a.height()===e.height()?o.hasClass("at-bottom")||o.addClass("at-bottom").removeClass("at-top").removeClass("near-top").removeClass("near-bottom"):a.scrollTop()<=r?o.hasClass("near-top")||o.addClass("near-top").removeClass("near-bottom").removeClass("at-top").removeClass("at-bottom"):a.scrollTop()+a.height()>=s?o.hasClass("near-bottom")||o.addClass("near-bottom").removeClass("near-top").removeClass("at-top").removeClass("at-bottom"):(o.hasClass("at-top")||o.hasClass("at-bottom")||o.hasClass("near-top")||o.hasClass("near-bottom"))&&o.removeClass("at-top").removeClass("at-bottom").removeClass("near-top").removeClass("near-bottom"),$('*[class*="revealator"]').each(function(){0;var a=$(this),e=this.getBoundingClientRect(),o=void 0;o=e.top>l&&e.bottom>l?"revealator-below":e.topl?"revealator-partially-below":e.topt?"revealator-partially-above":e.topt;t+=1)n.push(e[t].listener);return n},i.getListenersAsObject=function(e){var t,n=this.getListeners(e);return n instanceof Array&&(t={},t[e]=n),t||n},i.addListener=function(e,n){var i,r=this.getListenersAsObject(e),o="object"==typeof n;for(i in r)r.hasOwnProperty(i)&&-1===t(r[i],n)&&r[i].push(o?n:{listener:n,once:!1});return this},i.on=n("addListener"),i.addOnceListener=function(e,t){return this.addListener(e,{listener:t,once:!0})},i.once=n("addOnceListener"),i.defineEvent=function(e){return this.getListeners(e),this},i.defineEvents=function(e){for(var t=0;e.length>t;t+=1)this.defineEvent(e[t]);return this},i.removeListener=function(e,n){var i,r,o=this.getListenersAsObject(e);for(r in o)o.hasOwnProperty(r)&&(i=t(o[r],n),-1!==i&&o[r].splice(i,1));return this},i.off=n("removeListener"),i.addListeners=function(e,t){return this.manipulateListeners(!1,e,t)},i.removeListeners=function(e,t){return this.manipulateListeners(!0,e,t)},i.manipulateListeners=function(e,t,n){var i,r,o=e?this.removeListener:this.addListener,s=e?this.removeListeners:this.addListeners;if("object"!=typeof t||t instanceof RegExp)for(i=n.length;i--;)o.call(this,t,n[i]);else for(i in t)t.hasOwnProperty(i)&&(r=t[i])&&("function"==typeof r?o.call(this,i,r):s.call(this,i,r));return this},i.removeEvent=function(e){var t,n=typeof e,i=this._getEvents();if("string"===n)delete i[e];else if("object"===n)for(t in i)i.hasOwnProperty(t)&&e.test(t)&&delete i[t];else delete this._events;return this},i.removeAllListeners=n("removeEvent"),i.emitEvent=function(e,t){var n,i,r,o,s=this.getListenersAsObject(e);for(r in s)if(s.hasOwnProperty(r))for(i=s[r].length;i--;)n=s[r][i],n.once===!0&&this.removeListener(e,n.listener),o=n.listener.apply(this,t||[]),o===this._getOnceReturnValue()&&this.removeListener(e,n.listener);return this},i.trigger=n("emitEvent"),i.emit=function(e){var t=Array.prototype.slice.call(arguments,1);return this.emitEvent(e,t)},i.setOnceReturnValue=function(e){return this._onceReturnValue=e,this},i._getOnceReturnValue=function(){return this.hasOwnProperty("_onceReturnValue")?this._onceReturnValue:!0},i._getEvents=function(){return this._events||(this._events={})},e.noConflict=function(){return r.EventEmitter=o,e},"function"==typeof define&&define.amd?define("eventEmitter/EventEmitter",[],function(){return e}):"object"==typeof module&&module.exports?module.exports=e:this.EventEmitter=e}).call(this),function(e){function t(t){var n=e.event;return n.target=n.target||n.srcElement||t,n}var n=document.documentElement,i=function(){};n.addEventListener?i=function(e,t,n){e.addEventListener(t,n,!1)}:n.attachEvent&&(i=function(e,n,i){e[n+i]=i.handleEvent?function(){var n=t(e);i.handleEvent.call(i,n)}:function(){var n=t(e);i.call(e,n)},e.attachEvent("on"+n,e[n+i])});var r=function(){};n.removeEventListener?r=function(e,t,n){e.removeEventListener(t,n,!1)}:n.detachEvent&&(r=function(e,t,n){e.detachEvent("on"+t,e[t+n]);try{delete e[t+n]}catch(i){e[t+n]=void 0}});var o={bind:i,unbind:r};"function"==typeof define&&define.amd?define("eventie/eventie",o):e.eventie=o}(this),function(e,t){"function"==typeof define&&define.amd?define(["eventEmitter/EventEmitter","eventie/eventie"],function(n,i){return t(e,n,i)}):"object"==typeof exports?module.exports=t(e,require("eventEmitter"),require("eventie")):e.imagesLoaded=t(e,e.EventEmitter,e.eventie)}(this,function(e,t,n){function i(e,t){for(var n in t)e[n]=t[n];return e}function r(e){return"[object Array]"===d.call(e)}function o(e){var t=[];if(r(e))t=e;else if("number"==typeof e.length)for(var n=0,i=e.length;i>n;n++)t.push(e[n]);else t.push(e);return t}function s(e,t,n){if(!(this instanceof s))return new s(e,t);"string"==typeof e&&(e=document.querySelectorAll(e)),this.elements=o(e),this.options=i({},this.options),"function"==typeof t?n=t:i(this.options,t),n&&this.on("always",n),this.getImages(),a&&(this.jqDeferred=new a.Deferred);var r=this;setTimeout(function(){r.check()})}function c(e){this.img=e}function f(e){this.src=e,v[e]=this}var a=e.jQuery,u=e.console,h=u!==void 0,d=Object.prototype.toString;s.prototype=new t,s.prototype.options={},s.prototype.getImages=function(){this.images=[];for(var e=0,t=this.elements.length;t>e;e++){var n=this.elements[e];"IMG"===n.nodeName&&this.addImage(n);for(var i=n.querySelectorAll("img"),r=0,o=i.length;o>r;r++){var s=i[r];this.addImage(s)}}},s.prototype.addImage=function(e){var t=new c(e);this.images.push(t)},s.prototype.check=function(){function e(e,r){return t.options.debug&&h&&u.log("confirm",e,r),t.progress(e),n++,n===i&&t.complete(),!0}var t=this,n=0,i=this.images.length;if(this.hasAnyBroken=!1,!i)return this.complete(),void 0;for(var r=0;i>r;r++){var o=this.images[r];o.on("confirm",e),o.check()}},s.prototype.progress=function(e){this.hasAnyBroken=this.hasAnyBroken||!e.isLoaded;var t=this;setTimeout(function(){t.emit("progress",t,e),t.jqDeferred&&t.jqDeferred.notify&&t.jqDeferred.notify(t,e)})},s.prototype.complete=function(){var e=this.hasAnyBroken?"fail":"done";this.isComplete=!0;var t=this;setTimeout(function(){if(t.emit(e,t),t.emit("always",t),t.jqDeferred){var n=t.hasAnyBroken?"reject":"resolve";t.jqDeferred[n](t)}})},a&&(a.fn.imagesLoaded=function(e,t){var n=new s(this,e,t);return n.jqDeferred.promise(a(this))}),c.prototype=new t,c.prototype.check=function(){var e=v[this.img.src]||new f(this.img.src);if(e.isConfirmed)return this.confirm(e.isLoaded,"cached was confirmed"),void 0;if(this.img.complete&&void 0!==this.img.naturalWidth)return this.confirm(0!==this.img.naturalWidth,"naturalWidth"),void 0;var t=this;e.on("confirm",function(e,n){return t.confirm(e.isLoaded,n),!0}),e.check()},c.prototype.confirm=function(e,t){this.isLoaded=e,this.emit("confirm",this,t)};var v={};return f.prototype=new t,f.prototype.check=function(){if(!this.isChecked){var e=new Image;n.bind(e,"load",this),n.bind(e,"error",this),e.src=this.src,this.isChecked=!0}},f.prototype.handleEvent=function(e){var t="on"+e.type;this[t]&&this[t](e)},f.prototype.onload=function(e){this.confirm(!0,"onload"),this.unbindProxyEvents(e)},f.prototype.onerror=function(e){this.confirm(!1,"onerror"),this.unbindProxyEvents(e)},f.prototype.confirm=function(e,t){this.isConfirmed=!0,this.isLoaded=e,this.emit("confirm",this,t)},f.prototype.unbindProxyEvents=function(e){n.unbind(e.target,"load",this),n.unbind(e.target,"error",this)},s}); -------------------------------------------------------------------------------- /dark/js/jquery.hoverdir.js: -------------------------------------------------------------------------------- 1 | /** 2 | * jquery.hoverdir.js v1.1.0 3 | * http://www.codrops.com 4 | * 5 | * Licensed under the MIT license. 6 | * http://www.opensource.org/licenses/mit-license.php 7 | * 8 | * Copyright 2012, Codrops 9 | * http://www.codrops.com 10 | */ 11 | ;( function( $, window, undefined ) { 12 | 13 | 'use strict'; 14 | 15 | $.HoverDir = function( options, element ) { 16 | 17 | this.$el = $( element ); 18 | this._init( options ); 19 | 20 | }; 21 | 22 | // the options 23 | $.HoverDir.defaults = { 24 | speed : 300, 25 | easing : 'ease', 26 | hoverDelay : 0, 27 | inverse : false 28 | }; 29 | 30 | $.HoverDir.prototype = { 31 | 32 | _init : function( options ) { 33 | 34 | // options 35 | this.options = $.extend( true, {}, $.HoverDir.defaults, options ); 36 | // transition properties 37 | this.transitionProp = 'all ' + this.options.speed + 'ms ' + this.options.easing; 38 | // support for CSS transitions 39 | this.support = Modernizr.csstransitions; 40 | // load the events 41 | this._loadEvents(); 42 | 43 | }, 44 | _loadEvents : function() { 45 | 46 | var self = this; 47 | 48 | this.$el.on( 'mouseenter.hoverdir, mouseleave.hoverdir', function( event ) { 49 | 50 | var $el = $( this ), 51 | $hoverElem = $el.find( 'div' ), 52 | direction = self._getDir( $el, { x : event.pageX, y : event.pageY } ), 53 | styleCSS = self._getStyle( direction ); 54 | 55 | if( event.type === 'mouseenter' ) { 56 | 57 | $hoverElem.hide().css( styleCSS.from ); 58 | clearTimeout( self.tmhover ); 59 | 60 | self.tmhover = setTimeout( function() { 61 | 62 | $hoverElem.show( 0, function() { 63 | 64 | var $el = $( this ); 65 | if( self.support ) { 66 | $el.css( 'transition', self.transitionProp ); 67 | } 68 | self._applyAnimation( $el, styleCSS.to, self.options.speed ); 69 | 70 | } ); 71 | 72 | 73 | }, self.options.hoverDelay ); 74 | 75 | } 76 | else { 77 | 78 | if( self.support ) { 79 | $hoverElem.css( 'transition', self.transitionProp ); 80 | } 81 | clearTimeout( self.tmhover ); 82 | self._applyAnimation( $hoverElem, styleCSS.from, self.options.speed ); 83 | 84 | } 85 | 86 | } ); 87 | 88 | }, 89 | // credits : http://stackoverflow.com/a/3647634 90 | _getDir : function( $el, coordinates ) { 91 | 92 | // the width and height of the current div 93 | var w = $el.width(), 94 | h = $el.height(), 95 | 96 | // calculate the x and y to get an angle to the center of the div from that x and y. 97 | // gets the x value relative to the center of the DIV and "normalize" it 98 | x = ( coordinates.x - $el.offset().left - ( w/2 )) * ( w > h ? ( h/w ) : 1 ), 99 | y = ( coordinates.y - $el.offset().top - ( h/2 )) * ( h > w ? ( w/h ) : 1 ), 100 | 101 | // the angle and the direction from where the mouse came in/went out clockwise (TRBL=0123); 102 | // first calculate the angle of the point, 103 | // add 180 deg to get rid of the negative values 104 | // divide by 90 to get the quadrant 105 | // add 3 and do a modulo by 4 to shift the quadrants to a proper clockwise TRBL (top/right/bottom/left) **/ 106 | direction = Math.round( ( ( ( Math.atan2(y, x) * (180 / Math.PI) ) + 180 ) / 90 ) + 3 ) % 4; 107 | 108 | return direction; 109 | 110 | }, 111 | _getStyle : function( direction ) { 112 | 113 | var fromStyle, toStyle, 114 | slideFromTop = { left : '0px', top : '-100%' }, 115 | slideFromBottom = { left : '0px', top : '100%' }, 116 | slideFromLeft = { left : '-100%', top : '0px' }, 117 | slideFromRight = { left : '100%', top : '0px' }, 118 | slideTop = { top : '0px' }, 119 | slideLeft = { left : '0px' }; 120 | 121 | switch( direction ) { 122 | case 0: 123 | // from top 124 | fromStyle = !this.options.inverse ? slideFromTop : slideFromBottom; 125 | toStyle = slideTop; 126 | break; 127 | case 1: 128 | // from right 129 | fromStyle = !this.options.inverse ? slideFromRight : slideFromLeft; 130 | toStyle = slideLeft; 131 | break; 132 | case 2: 133 | // from bottom 134 | fromStyle = !this.options.inverse ? slideFromBottom : slideFromTop; 135 | toStyle = slideTop; 136 | break; 137 | case 3: 138 | // from left 139 | fromStyle = !this.options.inverse ? slideFromLeft : slideFromRight; 140 | toStyle = slideLeft; 141 | break; 142 | }; 143 | 144 | return { from : fromStyle, to : toStyle }; 145 | 146 | }, 147 | // apply a transition or fallback to jquery animate based on Modernizr.csstransitions support 148 | _applyAnimation : function( el, styleCSS, speed ) { 149 | 150 | $.fn.applyStyle = this.support ? $.fn.css : $.fn.animate; 151 | el.stop().applyStyle( styleCSS, $.extend( true, [], { duration : speed + 'ms' } ) ); 152 | 153 | }, 154 | 155 | }; 156 | 157 | var logError = function( message ) { 158 | 159 | if ( window.console ) { 160 | 161 | window.console.error( message ); 162 | 163 | } 164 | 165 | }; 166 | 167 | $.fn.hoverdir = function( options ) { 168 | 169 | var instance = $.data( this, 'hoverdir' ); 170 | 171 | if ( typeof options === 'string' ) { 172 | 173 | var args = Array.prototype.slice.call( arguments, 1 ); 174 | 175 | this.each(function() { 176 | 177 | if ( !instance ) { 178 | 179 | logError( "cannot call methods on hoverdir prior to initialization; " + 180 | "attempted to call method '" + options + "'" ); 181 | return; 182 | 183 | } 184 | 185 | if ( !$.isFunction( instance[options] ) || options.charAt(0) === "_" ) { 186 | 187 | logError( "no such method '" + options + "' for hoverdir instance" ); 188 | return; 189 | 190 | } 191 | 192 | instance[ options ].apply( instance, args ); 193 | 194 | }); 195 | 196 | } 197 | else { 198 | 199 | this.each(function() { 200 | 201 | if ( instance ) { 202 | 203 | instance._init(); 204 | 205 | } 206 | else { 207 | 208 | instance = $.data( this, 'hoverdir', new $.HoverDir( options, this ) ); 209 | 210 | } 211 | 212 | }); 213 | 214 | } 215 | 216 | return instance; 217 | 218 | }; 219 | 220 | } )( jQuery, window ); 221 | -------------------------------------------------------------------------------- /dark/js/masonry.pkgd.min.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * Masonry PACKAGED v3.1.4 3 | * Cascading grid layout library 4 | * http://masonry.desandro.com 5 | * MIT License 6 | * by David DeSandro 7 | */ 8 | 9 | (function(t){function e(){}function i(t){function i(e){e.prototype.option||(e.prototype.option=function(e){t.isPlainObject(e)&&(this.options=t.extend(!0,this.options,e))})}function o(e,i){t.fn[e]=function(o){if("string"==typeof o){for(var s=n.call(arguments,1),a=0,h=this.length;h>a;a++){var p=this[a],u=t.data(p,e);if(u)if(t.isFunction(u[o])&&"_"!==o.charAt(0)){var f=u[o].apply(u,s);if(void 0!==f)return f}else r("no such method '"+o+"' for "+e+" instance");else r("cannot call methods on "+e+" prior to initialization; "+"attempted to call '"+o+"'")}return this}return this.each(function(){var n=t.data(this,e);n?(n.option(o),n._init()):(n=new i(this,o),t.data(this,e,n))})}}if(t){var r="undefined"==typeof console?e:function(t){console.error(t)};return t.bridget=function(t,e){i(e),o(t,e)},t.bridget}}var n=Array.prototype.slice;"function"==typeof define&&define.amd?define("jquery-bridget/jquery.bridget",["jquery"],i):i(t.jQuery)})(window),function(t){function e(e){var i=t.event;return i.target=i.target||i.srcElement||e,i}var i=document.documentElement,n=function(){};i.addEventListener?n=function(t,e,i){t.addEventListener(e,i,!1)}:i.attachEvent&&(n=function(t,i,n){t[i+n]=n.handleEvent?function(){var i=e(t);n.handleEvent.call(n,i)}:function(){var i=e(t);n.call(t,i)},t.attachEvent("on"+i,t[i+n])});var o=function(){};i.removeEventListener?o=function(t,e,i){t.removeEventListener(e,i,!1)}:i.detachEvent&&(o=function(t,e,i){t.detachEvent("on"+e,t[e+i]);try{delete t[e+i]}catch(n){t[e+i]=void 0}});var r={bind:n,unbind:o};"function"==typeof define&&define.amd?define("eventie/eventie",r):"object"==typeof exports?module.exports=r:t.eventie=r}(this),function(t){function e(t){"function"==typeof t&&(e.isReady?t():r.push(t))}function i(t){var i="readystatechange"===t.type&&"complete"!==o.readyState;if(!e.isReady&&!i){e.isReady=!0;for(var n=0,s=r.length;s>n;n++){var a=r[n];a()}}}function n(n){return n.bind(o,"DOMContentLoaded",i),n.bind(o,"readystatechange",i),n.bind(t,"load",i),e}var o=t.document,r=[];e.isReady=!1,"function"==typeof define&&define.amd?(e.isReady="function"==typeof requirejs,define("doc-ready/doc-ready",["eventie/eventie"],n)):t.docReady=n(t.eventie)}(this),function(){function t(){}function e(t,e){for(var i=t.length;i--;)if(t[i].listener===e)return i;return-1}function i(t){return function(){return this[t].apply(this,arguments)}}var n=t.prototype,o=this,r=o.EventEmitter;n.getListeners=function(t){var e,i,n=this._getEvents();if(t instanceof RegExp){e={};for(i in n)n.hasOwnProperty(i)&&t.test(i)&&(e[i]=n[i])}else e=n[t]||(n[t]=[]);return e},n.flattenListeners=function(t){var e,i=[];for(e=0;t.length>e;e+=1)i.push(t[e].listener);return i},n.getListenersAsObject=function(t){var e,i=this.getListeners(t);return i instanceof Array&&(e={},e[t]=i),e||i},n.addListener=function(t,i){var n,o=this.getListenersAsObject(t),r="object"==typeof i;for(n in o)o.hasOwnProperty(n)&&-1===e(o[n],i)&&o[n].push(r?i:{listener:i,once:!1});return this},n.on=i("addListener"),n.addOnceListener=function(t,e){return this.addListener(t,{listener:e,once:!0})},n.once=i("addOnceListener"),n.defineEvent=function(t){return this.getListeners(t),this},n.defineEvents=function(t){for(var e=0;t.length>e;e+=1)this.defineEvent(t[e]);return this},n.removeListener=function(t,i){var n,o,r=this.getListenersAsObject(t);for(o in r)r.hasOwnProperty(o)&&(n=e(r[o],i),-1!==n&&r[o].splice(n,1));return this},n.off=i("removeListener"),n.addListeners=function(t,e){return this.manipulateListeners(!1,t,e)},n.removeListeners=function(t,e){return this.manipulateListeners(!0,t,e)},n.manipulateListeners=function(t,e,i){var n,o,r=t?this.removeListener:this.addListener,s=t?this.removeListeners:this.addListeners;if("object"!=typeof e||e instanceof RegExp)for(n=i.length;n--;)r.call(this,e,i[n]);else for(n in e)e.hasOwnProperty(n)&&(o=e[n])&&("function"==typeof o?r.call(this,n,o):s.call(this,n,o));return this},n.removeEvent=function(t){var e,i=typeof t,n=this._getEvents();if("string"===i)delete n[t];else if(t instanceof RegExp)for(e in n)n.hasOwnProperty(e)&&t.test(e)&&delete n[e];else delete this._events;return this},n.removeAllListeners=i("removeEvent"),n.emitEvent=function(t,e){var i,n,o,r,s=this.getListenersAsObject(t);for(o in s)if(s.hasOwnProperty(o))for(n=s[o].length;n--;)i=s[o][n],i.once===!0&&this.removeListener(t,i.listener),r=i.listener.apply(this,e||[]),r===this._getOnceReturnValue()&&this.removeListener(t,i.listener);return this},n.trigger=i("emitEvent"),n.emit=function(t){var e=Array.prototype.slice.call(arguments,1);return this.emitEvent(t,e)},n.setOnceReturnValue=function(t){return this._onceReturnValue=t,this},n._getOnceReturnValue=function(){return this.hasOwnProperty("_onceReturnValue")?this._onceReturnValue:!0},n._getEvents=function(){return this._events||(this._events={})},t.noConflict=function(){return o.EventEmitter=r,t},"function"==typeof define&&define.amd?define("eventEmitter/EventEmitter",[],function(){return t}):"object"==typeof module&&module.exports?module.exports=t:this.EventEmitter=t}.call(this),function(t){function e(t){if(t){if("string"==typeof n[t])return t;t=t.charAt(0).toUpperCase()+t.slice(1);for(var e,o=0,r=i.length;r>o;o++)if(e=i[o]+t,"string"==typeof n[e])return e}}var i="Webkit Moz ms Ms O".split(" "),n=document.documentElement.style;"function"==typeof define&&define.amd?define("get-style-property/get-style-property",[],function(){return e}):"object"==typeof exports?module.exports=e:t.getStyleProperty=e}(window),function(t){function e(t){var e=parseFloat(t),i=-1===t.indexOf("%")&&!isNaN(e);return i&&e}function i(){for(var t={width:0,height:0,innerWidth:0,innerHeight:0,outerWidth:0,outerHeight:0},e=0,i=s.length;i>e;e++){var n=s[e];t[n]=0}return t}function n(t){function n(t){if("string"==typeof t&&(t=document.querySelector(t)),t&&"object"==typeof t&&t.nodeType){var n=r(t);if("none"===n.display)return i();var o={};o.width=t.offsetWidth,o.height=t.offsetHeight;for(var u=o.isBorderBox=!(!p||!n[p]||"border-box"!==n[p]),f=0,c=s.length;c>f;f++){var d=s[f],l=n[d];l=a(t,l);var m=parseFloat(l);o[d]=isNaN(m)?0:m}var y=o.paddingLeft+o.paddingRight,g=o.paddingTop+o.paddingBottom,v=o.marginLeft+o.marginRight,b=o.marginTop+o.marginBottom,_=o.borderLeftWidth+o.borderRightWidth,E=o.borderTopWidth+o.borderBottomWidth,L=u&&h,x=e(n.width);x!==!1&&(o.width=x+(L?0:y+_));var z=e(n.height);return z!==!1&&(o.height=z+(L?0:g+E)),o.innerWidth=o.width-(y+_),o.innerHeight=o.height-(g+E),o.outerWidth=o.width+v,o.outerHeight=o.height+b,o}}function a(t,e){if(o||-1===e.indexOf("%"))return e;var i=t.style,n=i.left,r=t.runtimeStyle,s=r&&r.left;return s&&(r.left=t.currentStyle.left),i.left=e,e=i.pixelLeft,i.left=n,s&&(r.left=s),e}var h,p=t("boxSizing");return function(){if(p){var t=document.createElement("div");t.style.width="200px",t.style.padding="1px 2px 3px 4px",t.style.borderStyle="solid",t.style.borderWidth="1px 2px 3px 4px",t.style[p]="border-box";var i=document.body||document.documentElement;i.appendChild(t);var n=r(t);h=200===e(n.width),i.removeChild(t)}}(),n}var o=t.getComputedStyle,r=o?function(t){return o(t,null)}:function(t){return t.currentStyle},s=["paddingLeft","paddingRight","paddingTop","paddingBottom","marginLeft","marginRight","marginTop","marginBottom","borderLeftWidth","borderRightWidth","borderTopWidth","borderBottomWidth"];"function"==typeof define&&define.amd?define("get-size/get-size",["get-style-property/get-style-property"],n):"object"==typeof exports?module.exports=n(require("get-style-property")):t.getSize=n(t.getStyleProperty)}(window),function(t,e){function i(t,e){return t[a](e)}function n(t){if(!t.parentNode){var e=document.createDocumentFragment();e.appendChild(t)}}function o(t,e){n(t);for(var i=t.parentNode.querySelectorAll(e),o=0,r=i.length;r>o;o++)if(i[o]===t)return!0;return!1}function r(t,e){return n(t),i(t,e)}var s,a=function(){if(e.matchesSelector)return"matchesSelector";for(var t=["webkit","moz","ms","o"],i=0,n=t.length;n>i;i++){var o=t[i],r=o+"MatchesSelector";if(e[r])return r}}();if(a){var h=document.createElement("div"),p=i(h,"div");s=p?i:r}else s=o;"function"==typeof define&&define.amd?define("matches-selector/matches-selector",[],function(){return s}):window.matchesSelector=s}(this,Element.prototype),function(t){function e(t,e){for(var i in e)t[i]=e[i];return t}function i(t){for(var e in t)return!1;return e=null,!0}function n(t){return t.replace(/([A-Z])/g,function(t){return"-"+t.toLowerCase()})}function o(t,o,r){function a(t,e){t&&(this.element=t,this.layout=e,this.position={x:0,y:0},this._create())}var h=r("transition"),p=r("transform"),u=h&&p,f=!!r("perspective"),c={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"otransitionend",transition:"transitionend"}[h],d=["transform","transition","transitionDuration","transitionProperty"],l=function(){for(var t={},e=0,i=d.length;i>e;e++){var n=d[e],o=r(n);o&&o!==n&&(t[n]=o)}return t}();e(a.prototype,t.prototype),a.prototype._create=function(){this._transn={ingProperties:{},clean:{},onEnd:{}},this.css({position:"absolute"})},a.prototype.handleEvent=function(t){var e="on"+t.type;this[e]&&this[e](t)},a.prototype.getSize=function(){this.size=o(this.element)},a.prototype.css=function(t){var e=this.element.style;for(var i in t){var n=l[i]||i;e[n]=t[i]}},a.prototype.getPosition=function(){var t=s(this.element),e=this.layout.options,i=e.isOriginLeft,n=e.isOriginTop,o=parseInt(t[i?"left":"right"],10),r=parseInt(t[n?"top":"bottom"],10);o=isNaN(o)?0:o,r=isNaN(r)?0:r;var a=this.layout.size;o-=i?a.paddingLeft:a.paddingRight,r-=n?a.paddingTop:a.paddingBottom,this.position.x=o,this.position.y=r},a.prototype.layoutPosition=function(){var t=this.layout.size,e=this.layout.options,i={};e.isOriginLeft?(i.left=this.position.x+t.paddingLeft+"px",i.right=""):(i.right=this.position.x+t.paddingRight+"px",i.left=""),e.isOriginTop?(i.top=this.position.y+t.paddingTop+"px",i.bottom=""):(i.bottom=this.position.y+t.paddingBottom+"px",i.top=""),this.css(i),this.emitEvent("layout",[this])};var m=f?function(t,e){return"translate3d("+t+"px, "+e+"px, 0)"}:function(t,e){return"translate("+t+"px, "+e+"px)"};a.prototype._transitionTo=function(t,e){this.getPosition();var i=this.position.x,n=this.position.y,o=parseInt(t,10),r=parseInt(e,10),s=o===this.position.x&&r===this.position.y;if(this.setPosition(t,e),s&&!this.isTransitioning)return this.layoutPosition(),void 0;var a=t-i,h=e-n,p={},u=this.layout.options;a=u.isOriginLeft?a:-a,h=u.isOriginTop?h:-h,p.transform=m(a,h),this.transition({to:p,onTransitionEnd:{transform:this.layoutPosition},isCleaning:!0})},a.prototype.goTo=function(t,e){this.setPosition(t,e),this.layoutPosition()},a.prototype.moveTo=u?a.prototype._transitionTo:a.prototype.goTo,a.prototype.setPosition=function(t,e){this.position.x=parseInt(t,10),this.position.y=parseInt(e,10)},a.prototype._nonTransition=function(t){this.css(t.to),t.isCleaning&&this._removeStyles(t.to);for(var e in t.onTransitionEnd)t.onTransitionEnd[e].call(this)},a.prototype._transition=function(t){if(!parseFloat(this.layout.options.transitionDuration))return this._nonTransition(t),void 0;var e=this._transn;for(var i in t.onTransitionEnd)e.onEnd[i]=t.onTransitionEnd[i];for(i in t.to)e.ingProperties[i]=!0,t.isCleaning&&(e.clean[i]=!0);if(t.from){this.css(t.from);var n=this.element.offsetHeight;n=null}this.enableTransition(t.to),this.css(t.to),this.isTransitioning=!0};var y=p&&n(p)+",opacity";a.prototype.enableTransition=function(){this.isTransitioning||(this.css({transitionProperty:y,transitionDuration:this.layout.options.transitionDuration}),this.element.addEventListener(c,this,!1))},a.prototype.transition=a.prototype[h?"_transition":"_nonTransition"],a.prototype.onwebkitTransitionEnd=function(t){this.ontransitionend(t)},a.prototype.onotransitionend=function(t){this.ontransitionend(t)};var g={"-webkit-transform":"transform","-moz-transform":"transform","-o-transform":"transform"};a.prototype.ontransitionend=function(t){if(t.target===this.element){var e=this._transn,n=g[t.propertyName]||t.propertyName;if(delete e.ingProperties[n],i(e.ingProperties)&&this.disableTransition(),n in e.clean&&(this.element.style[t.propertyName]="",delete e.clean[n]),n in e.onEnd){var o=e.onEnd[n];o.call(this),delete e.onEnd[n]}this.emitEvent("transitionEnd",[this])}},a.prototype.disableTransition=function(){this.removeTransitionStyles(),this.element.removeEventListener(c,this,!1),this.isTransitioning=!1},a.prototype._removeStyles=function(t){var e={};for(var i in t)e[i]="";this.css(e)};var v={transitionProperty:"",transitionDuration:""};return a.prototype.removeTransitionStyles=function(){this.css(v)},a.prototype.removeElem=function(){this.element.parentNode.removeChild(this.element),this.emitEvent("remove",[this])},a.prototype.remove=function(){if(!h||!parseFloat(this.layout.options.transitionDuration))return this.removeElem(),void 0;var t=this;this.on("transitionEnd",function(){return t.removeElem(),!0}),this.hide()},a.prototype.reveal=function(){delete this.isHidden,this.css({display:""});var t=this.layout.options;this.transition({from:t.hiddenStyle,to:t.visibleStyle,isCleaning:!0})},a.prototype.hide=function(){this.isHidden=!0,this.css({display:""});var t=this.layout.options;this.transition({from:t.visibleStyle,to:t.hiddenStyle,isCleaning:!0,onTransitionEnd:{opacity:function(){this.isHidden&&this.css({display:"none"})}}})},a.prototype.destroy=function(){this.css({position:"",left:"",right:"",top:"",bottom:"",transition:"",transform:""})},a}var r=document.defaultView,s=r&&r.getComputedStyle?function(t){return r.getComputedStyle(t,null)}:function(t){return t.currentStyle};"function"==typeof define&&define.amd?define("outlayer/item",["eventEmitter/EventEmitter","get-size/get-size","get-style-property/get-style-property"],o):(t.Outlayer={},t.Outlayer.Item=o(t.EventEmitter,t.getSize,t.getStyleProperty))}(window),function(t){function e(t,e){for(var i in e)t[i]=e[i];return t}function i(t){return"[object Array]"===f.call(t)}function n(t){var e=[];if(i(t))e=t;else if(t&&"number"==typeof t.length)for(var n=0,o=t.length;o>n;n++)e.push(t[n]);else e.push(t);return e}function o(t,e){var i=d(e,t);-1!==i&&e.splice(i,1)}function r(t){return t.replace(/(.)([A-Z])/g,function(t,e,i){return e+"-"+i}).toLowerCase()}function s(i,s,f,d,l,m){function y(t,i){if("string"==typeof t&&(t=a.querySelector(t)),!t||!c(t))return h&&h.error("Bad "+this.constructor.namespace+" element: "+t),void 0;this.element=t,this.options=e({},this.options),this.option(i);var n=++v;this.element.outlayerGUID=n,b[n]=this,this._create(),this.options.isInitLayout&&this.layout()}function g(t,i){t.prototype[i]=e({},y.prototype[i])}var v=0,b={};return y.namespace="outlayer",y.Item=m,y.prototype.options={containerStyle:{position:"relative"},isInitLayout:!0,isOriginLeft:!0,isOriginTop:!0,isResizeBound:!0,transitionDuration:"0.4s",hiddenStyle:{opacity:0,transform:"scale(0.001)"},visibleStyle:{opacity:1,transform:"scale(1)"}},e(y.prototype,f.prototype),y.prototype.option=function(t){e(this.options,t)},y.prototype._create=function(){this.reloadItems(),this.stamps=[],this.stamp(this.options.stamp),e(this.element.style,this.options.containerStyle),this.options.isResizeBound&&this.bindResize()},y.prototype.reloadItems=function(){this.items=this._itemize(this.element.children)},y.prototype._itemize=function(t){for(var e=this._filterFindItemElements(t),i=this.constructor.Item,n=[],o=0,r=e.length;r>o;o++){var s=e[o],a=new i(s,this);n.push(a)}return n},y.prototype._filterFindItemElements=function(t){t=n(t);for(var e=this.options.itemSelector,i=[],o=0,r=t.length;r>o;o++){var s=t[o];if(c(s))if(e){l(s,e)&&i.push(s);for(var a=s.querySelectorAll(e),h=0,p=a.length;p>h;h++)i.push(a[h])}else i.push(s)}return i},y.prototype.getItemElements=function(){for(var t=[],e=0,i=this.items.length;i>e;e++)t.push(this.items[e].element);return t},y.prototype.layout=function(){this._resetLayout(),this._manageStamps();var t=void 0!==this.options.isLayoutInstant?this.options.isLayoutInstant:!this._isLayoutInited;this.layoutItems(this.items,t),this._isLayoutInited=!0},y.prototype._init=y.prototype.layout,y.prototype._resetLayout=function(){this.getSize()},y.prototype.getSize=function(){this.size=d(this.element)},y.prototype._getMeasurement=function(t,e){var i,n=this.options[t];n?("string"==typeof n?i=this.element.querySelector(n):c(n)&&(i=n),this[t]=i?d(i)[e]:n):this[t]=0},y.prototype.layoutItems=function(t,e){t=this._getItemsForLayout(t),this._layoutItems(t,e),this._postLayout()},y.prototype._getItemsForLayout=function(t){for(var e=[],i=0,n=t.length;n>i;i++){var o=t[i];o.isIgnored||e.push(o)}return e},y.prototype._layoutItems=function(t,e){function i(){n.emitEvent("layoutComplete",[n,t])}var n=this;if(!t||!t.length)return i(),void 0;this._itemsOn(t,"layout",i);for(var o=[],r=0,s=t.length;s>r;r++){var a=t[r],h=this._getItemLayoutPosition(a);h.item=a,h.isInstant=e||a.isLayoutInstant,o.push(h)}this._processLayoutQueue(o)},y.prototype._getItemLayoutPosition=function(){return{x:0,y:0}},y.prototype._processLayoutQueue=function(t){for(var e=0,i=t.length;i>e;e++){var n=t[e];this._positionItem(n.item,n.x,n.y,n.isInstant)}},y.prototype._positionItem=function(t,e,i,n){n?t.goTo(e,i):t.moveTo(e,i)},y.prototype._postLayout=function(){var t=this._getContainerSize();t&&(this._setContainerMeasure(t.width,!0),this._setContainerMeasure(t.height,!1))},y.prototype._getContainerSize=u,y.prototype._setContainerMeasure=function(t,e){if(void 0!==t){var i=this.size;i.isBorderBox&&(t+=e?i.paddingLeft+i.paddingRight+i.borderLeftWidth+i.borderRightWidth:i.paddingBottom+i.paddingTop+i.borderTopWidth+i.borderBottomWidth),t=Math.max(t,0),this.element.style[e?"width":"height"]=t+"px"}},y.prototype._itemsOn=function(t,e,i){function n(){return o++,o===r&&i.call(s),!0}for(var o=0,r=t.length,s=this,a=0,h=t.length;h>a;a++){var p=t[a];p.on(e,n)}},y.prototype.ignore=function(t){var e=this.getItem(t);e&&(e.isIgnored=!0)},y.prototype.unignore=function(t){var e=this.getItem(t);e&&delete e.isIgnored},y.prototype.stamp=function(t){if(t=this._find(t)){this.stamps=this.stamps.concat(t);for(var e=0,i=t.length;i>e;e++){var n=t[e];this.ignore(n)}}},y.prototype.unstamp=function(t){if(t=this._find(t))for(var e=0,i=t.length;i>e;e++){var n=t[e];o(n,this.stamps),this.unignore(n)}},y.prototype._find=function(t){return t?("string"==typeof t&&(t=this.element.querySelectorAll(t)),t=n(t)):void 0},y.prototype._manageStamps=function(){if(this.stamps&&this.stamps.length){this._getBoundingRect();for(var t=0,e=this.stamps.length;e>t;t++){var i=this.stamps[t];this._manageStamp(i)}}},y.prototype._getBoundingRect=function(){var t=this.element.getBoundingClientRect(),e=this.size;this._boundingRect={left:t.left+e.paddingLeft+e.borderLeftWidth,top:t.top+e.paddingTop+e.borderTopWidth,right:t.right-(e.paddingRight+e.borderRightWidth),bottom:t.bottom-(e.paddingBottom+e.borderBottomWidth)}},y.prototype._manageStamp=u,y.prototype._getElementOffset=function(t){var e=t.getBoundingClientRect(),i=this._boundingRect,n=d(t),o={left:e.left-i.left-n.marginLeft,top:e.top-i.top-n.marginTop,right:i.right-e.right-n.marginRight,bottom:i.bottom-e.bottom-n.marginBottom};return o},y.prototype.handleEvent=function(t){var e="on"+t.type;this[e]&&this[e](t)},y.prototype.bindResize=function(){this.isResizeBound||(i.bind(t,"resize",this),this.isResizeBound=!0)},y.prototype.unbindResize=function(){i.unbind(t,"resize",this),this.isResizeBound=!1},y.prototype.onresize=function(){function t(){e.resize(),delete e.resizeTimeout}this.resizeTimeout&&clearTimeout(this.resizeTimeout);var e=this;this.resizeTimeout=setTimeout(t,100)},y.prototype.resize=function(){var t=d(this.element),e=this.size&&t;e&&t.innerWidth===this.size.innerWidth||this.layout()},y.prototype.addItems=function(t){var e=this._itemize(t);return e.length&&(this.items=this.items.concat(e)),e},y.prototype.appended=function(t){var e=this.addItems(t);e.length&&(this.layoutItems(e,!0),this.reveal(e))},y.prototype.prepended=function(t){var e=this._itemize(t);if(e.length){var i=this.items.slice(0);this.items=e.concat(i),this._resetLayout(),this._manageStamps(),this.layoutItems(e,!0),this.reveal(e),this.layoutItems(i)}},y.prototype.reveal=function(t){var e=t&&t.length;if(e)for(var i=0;e>i;i++){var n=t[i];n.reveal()}},y.prototype.hide=function(t){var e=t&&t.length;if(e)for(var i=0;e>i;i++){var n=t[i];n.hide()}},y.prototype.getItem=function(t){for(var e=0,i=this.items.length;i>e;e++){var n=this.items[e];if(n.element===t)return n}},y.prototype.getItems=function(t){if(t&&t.length){for(var e=[],i=0,n=t.length;n>i;i++){var o=t[i],r=this.getItem(o);r&&e.push(r)}return e}},y.prototype.remove=function(t){t=n(t);var e=this.getItems(t);if(e&&e.length){this._itemsOn(e,"remove",function(){this.emitEvent("removeComplete",[this,e])});for(var i=0,r=e.length;r>i;i++){var s=e[i];s.remove(),o(s,this.items)}}},y.prototype.destroy=function(){var t=this.element.style;t.height="",t.position="",t.width="";for(var e=0,i=this.items.length;i>e;e++){var n=this.items[e];n.destroy()}this.unbindResize(),delete this.element.outlayerGUID,p&&p.removeData(this.element,this.constructor.namespace)},y.data=function(t){var e=t&&t.outlayerGUID;return e&&b[e]},y.create=function(t,i){function n(){y.apply(this,arguments)}return Object.create?n.prototype=Object.create(y.prototype):e(n.prototype,y.prototype),n.prototype.constructor=n,g(n,"options"),e(n.prototype.options,i),n.namespace=t,n.data=y.data,n.Item=function(){m.apply(this,arguments)},n.Item.prototype=new m,s(function(){for(var e=r(t),i=a.querySelectorAll(".js-"+e),o="data-"+e+"-options",s=0,u=i.length;u>s;s++){var f,c=i[s],d=c.getAttribute(o);try{f=d&&JSON.parse(d)}catch(l){h&&h.error("Error parsing "+o+" on "+c.nodeName.toLowerCase()+(c.id?"#"+c.id:"")+": "+l);continue}var m=new n(c,f);p&&p.data(c,t,m)}}),p&&p.bridget&&p.bridget(t,n),n},y.Item=m,y}var a=t.document,h=t.console,p=t.jQuery,u=function(){},f=Object.prototype.toString,c="object"==typeof HTMLElement?function(t){return t instanceof HTMLElement}:function(t){return t&&"object"==typeof t&&1===t.nodeType&&"string"==typeof t.nodeName},d=Array.prototype.indexOf?function(t,e){return t.indexOf(e)}:function(t,e){for(var i=0,n=t.length;n>i;i++)if(t[i]===e)return i;return-1};"function"==typeof define&&define.amd?define("outlayer/outlayer",["eventie/eventie","doc-ready/doc-ready","eventEmitter/EventEmitter","get-size/get-size","matches-selector/matches-selector","./item"],s):t.Outlayer=s(t.eventie,t.docReady,t.EventEmitter,t.getSize,t.matchesSelector,t.Outlayer.Item)}(window),function(t){function e(t,e){var n=t.create("masonry");return n.prototype._resetLayout=function(){this.getSize(),this._getMeasurement("columnWidth","outerWidth"),this._getMeasurement("gutter","outerWidth"),this.measureColumns();var t=this.cols;for(this.colYs=[];t--;)this.colYs.push(0);this.maxY=0},n.prototype.measureColumns=function(){if(this.getContainerWidth(),!this.columnWidth){var t=this.items[0],i=t&&t.element;this.columnWidth=i&&e(i).outerWidth||this.containerWidth}this.columnWidth+=this.gutter,this.cols=Math.floor((this.containerWidth+this.gutter)/this.columnWidth),this.cols=Math.max(this.cols,1)},n.prototype.getContainerWidth=function(){var t=this.options.isFitWidth?this.element.parentNode:this.element,i=e(t);this.containerWidth=i&&i.innerWidth},n.prototype._getItemLayoutPosition=function(t){t.getSize();var e=t.size.outerWidth%this.columnWidth,n=e&&1>e?"round":"ceil",o=Math[n](t.size.outerWidth/this.columnWidth);o=Math.min(o,this.cols);for(var r=this._getColGroup(o),s=Math.min.apply(Math,r),a=i(r,s),h={x:this.columnWidth*a,y:s},p=s+t.size.outerHeight,u=this.cols+1-r.length,f=0;u>f;f++)this.colYs[a+f]=p;return h},n.prototype._getColGroup=function(t){if(2>t)return this.colYs;for(var e=[],i=this.cols+1-t,n=0;i>n;n++){var o=this.colYs.slice(n,n+t);e[n]=Math.max.apply(Math,o)}return e},n.prototype._manageStamp=function(t){var i=e(t),n=this._getElementOffset(t),o=this.options.isOriginLeft?n.left:n.right,r=o+i.outerWidth,s=Math.floor(o/this.columnWidth);s=Math.max(0,s);var a=Math.floor(r/this.columnWidth);a-=r%this.columnWidth?0:1,a=Math.min(this.cols-1,a);for(var h=(this.options.isOriginTop?n.top:n.bottom)+i.outerHeight,p=s;a>=p;p++)this.colYs[p]=Math.max(h,this.colYs[p])},n.prototype._getContainerSize=function(){this.maxY=Math.max.apply(Math,this.colYs);var t={height:this.maxY};return this.options.isFitWidth&&(t.width=this._getContainerFitWidth()),t},n.prototype._getContainerFitWidth=function(){for(var t=0,e=this.cols;--e&&0===this.colYs[e];)t++;return(this.cols-t)*this.columnWidth-this.gutter},n.prototype.resize=function(){var t=this.containerWidth;this.getContainerWidth(),t!==this.containerWidth&&this.layout()},n}var i=Array.prototype.indexOf?function(t,e){return t.indexOf(e)}:function(t,e){for(var i=0,n=t.length;n>i;i++){var o=t[i];if(o===e)return i}return-1};"function"==typeof define&&define.amd?define(["outlayer/outlayer","get-size/get-size"],e):t.Masonry=e(t.Outlayer,t.getSize)}(window); -------------------------------------------------------------------------------- /dark/js/modernizr.custom.js: -------------------------------------------------------------------------------- 1 | /* Modernizr 2.7.1 (Custom Build) | MIT & BSD 2 | * Build: http://modernizr.com/download/#-csstransforms3d-csstransitions-shiv-cssclasses-prefixed-teststyles-testprop-testallprops-prefixes-domprefixes-load 3 | */ 4 | ;window.Modernizr=function(a,b,c){function z(a){j.cssText=a}function A(a,b){return z(m.join(a+";")+(b||""))}function B(a,b){return typeof a===b}function C(a,b){return!!~(""+a).indexOf(b)}function D(a,b){for(var d in a){var e=a[d];if(!C(e,"-")&&j[e]!==c)return b=="pfx"?e:!0}return!1}function E(a,b,d){for(var e in a){var f=b[a[e]];if(f!==c)return d===!1?a[e]:B(f,"function")?f.bind(d||b):f}return!1}function F(a,b,c){var d=a.charAt(0).toUpperCase()+a.slice(1),e=(a+" "+o.join(d+" ")+d).split(" ");return B(b,"string")||B(b,"undefined")?D(e,b):(e=(a+" "+p.join(d+" ")+d).split(" "),E(e,b,c))}var d="2.7.1",e={},f=!0,g=b.documentElement,h="modernizr",i=b.createElement(h),j=i.style,k,l={}.toString,m=" -webkit- -moz- -o- -ms- ".split(" "),n="Webkit Moz O ms",o=n.split(" "),p=n.toLowerCase().split(" "),q={},r={},s={},t=[],u=t.slice,v,w=function(a,c,d,e){var f,i,j,k,l=b.createElement("div"),m=b.body,n=m||b.createElement("body");if(parseInt(d,10))while(d--)j=b.createElement("div"),j.id=e?e[d]:h+(d+1),l.appendChild(j);return f=["­",'"].join(""),l.id=h,(m?l:n).innerHTML+=f,n.appendChild(l),m||(n.style.background="",n.style.overflow="hidden",k=g.style.overflow,g.style.overflow="hidden",g.appendChild(n)),i=c(l,a),m?l.parentNode.removeChild(l):(n.parentNode.removeChild(n),g.style.overflow=k),!!i},x={}.hasOwnProperty,y;!B(x,"undefined")&&!B(x.call,"undefined")?y=function(a,b){return x.call(a,b)}:y=function(a,b){return b in a&&B(a.constructor.prototype[b],"undefined")},Function.prototype.bind||(Function.prototype.bind=function(b){var c=this;if(typeof c!="function")throw new TypeError;var d=u.call(arguments,1),e=function(){if(this instanceof e){var a=function(){};a.prototype=c.prototype;var f=new a,g=c.apply(f,d.concat(u.call(arguments)));return Object(g)===g?g:f}return c.apply(b,d.concat(u.call(arguments)))};return e}),q.csstransforms3d=function(){var a=!!F("perspective");return a&&"webkitPerspective"in g.style&&w("@media (transform-3d),(-webkit-transform-3d){#modernizr{left:9px;position:absolute;height:3px;}}",function(b,c){a=b.offsetLeft===9&&b.offsetHeight===3}),a},q.csstransitions=function(){return F("transition")};for(var G in q)y(q,G)&&(v=G.toLowerCase(),e[v]=q[G](),t.push((e[v]?"":"no-")+v));return e.addTest=function(a,b){if(typeof a=="object")for(var d in a)y(a,d)&&e.addTest(d,a[d]);else{a=a.toLowerCase();if(e[a]!==c)return e;b=typeof b=="function"?b():b,typeof f!="undefined"&&f&&(g.className+=" "+(b?"":"no-")+a),e[a]=b}return e},z(""),i=k=null,function(a,b){function l(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x",d.insertBefore(c.lastChild,d.firstChild)}function m(){var a=s.elements;return typeof a=="string"?a.split(" "):a}function n(a){var b=j[a[h]];return b||(b={},i++,a[h]=i,j[i]=b),b}function o(a,c,d){c||(c=b);if(k)return c.createElement(a);d||(d=n(c));var g;return d.cache[a]?g=d.cache[a].cloneNode():f.test(a)?g=(d.cache[a]=d.createElem(a)).cloneNode():g=d.createElem(a),g.canHaveChildren&&!e.test(a)&&!g.tagUrn?d.frag.appendChild(g):g}function p(a,c){a||(a=b);if(k)return a.createDocumentFragment();c=c||n(a);var d=c.frag.cloneNode(),e=0,f=m(),g=f.length;for(;e",g="hidden"in a,k=a.childNodes.length==1||function(){b.createElement("a");var a=b.createDocumentFragment();return typeof a.cloneNode=="undefined"||typeof a.createDocumentFragment=="undefined"||typeof a.createElement=="undefined"}()}catch(c){g=!0,k=!0}})();var s={elements:d.elements||"abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output progress section summary template time video",version:c,shivCSS:d.shivCSS!==!1,supportsUnknownElements:k,shivMethods:d.shivMethods!==!1,type:"default",shivDocument:r,createElement:o,createDocumentFragment:p};a.html5=s,r(b)}(this,b),e._version=d,e._prefixes=m,e._domPrefixes=p,e._cssomPrefixes=o,e.testProp=function(a){return D([a])},e.testAllProps=F,e.testStyles=w,e.prefixed=function(a,b,c){return b?F(a,b,c):F(a,"pfx")},g.className=g.className.replace(/(^|\s)no-js(\s|$)/,"$1$2")+(f?" js "+t.join(" "):""),e}(this,this.document),function(a,b,c){function d(a){return"[object Function]"==o.call(a)}function e(a){return"string"==typeof a}function f(){}function g(a){return!a||"loaded"==a||"complete"==a||"uninitialized"==a}function h(){var a=p.shift();q=1,a?a.t?m(function(){("c"==a.t?B.injectCss:B.injectJs)(a.s,0,a.a,a.x,a.e,1)},0):(a(),h()):q=0}function i(a,c,d,e,f,i,j){function k(b){if(!o&&g(l.readyState)&&(u.r=o=1,!q&&h(),l.onload=l.onreadystatechange=null,b)){"img"!=a&&m(function(){t.removeChild(l)},50);for(var d in y[c])y[c].hasOwnProperty(d)&&y[c][d].onload()}}var j=j||B.errorTimeout,l=b.createElement(a),o=0,r=0,u={t:d,s:c,e:f,a:i,x:j};1===y[c]&&(r=1,y[c]=[]),"object"==a?l.data=c:(l.src=c,l.type=a),l.width=l.height="0",l.onerror=l.onload=l.onreadystatechange=function(){k.call(this,r)},p.splice(e,0,u),"img"!=a&&(r||2===y[c]?(t.insertBefore(l,s?null:n),m(k,j)):y[c].push(l))}function j(a,b,c,d,f){return q=0,b=b||"j",e(a)?i("c"==b?v:u,a,b,this.i++,c,d,f):(p.splice(this.i++,0,a),1==p.length&&h()),this}function k(){var a=B;return a.loader={load:j,i:0},a}var l=b.documentElement,m=a.setTimeout,n=b.getElementsByTagName("script")[0],o={}.toString,p=[],q=0,r="MozAppearance"in l.style,s=r&&!!b.createRange().compareNode,t=s?l:n.parentNode,l=a.opera&&"[object Opera]"==o.call(a.opera),l=!!b.attachEvent&&!l,u=r?"object":l?"script":"img",v=l?"script":u,w=Array.isArray||function(a){return"[object Array]"==o.call(a)},x=[],y={},z={timeout:function(a,b){return b.length&&(a.timeout=b[0]),a}},A,B;B=function(a){function b(a){var a=a.split("!"),b=x.length,c=a.pop(),d=a.length,c={url:c,origUrl:c,prefixes:a},e,f,g;for(f=0;f=o.clientWidth&&n>=o.clientHeight}),l=0a[e]&&!t.escapeWithReference&&(n=Q(f[o],a[e]-('right'===e?f.width:f.height))),ae({},o,n)}};return l.forEach(function(e){var t=-1===['left','top'].indexOf(e)?'secondary':'primary';f=le({},f,m[t](e))}),e.offsets.popper=f,e},priority:['left','right','top','bottom'],padding:5,boundariesElement:'scrollParent'},keepTogether:{order:400,enabled:!0,fn:function(e){var t=e.offsets,o=t.popper,n=t.reference,i=e.placement.split('-')[0],r=Z,p=-1!==['top','bottom'].indexOf(i),s=p?'right':'bottom',d=p?'left':'top',a=p?'width':'height';return o[s]r(n[s])&&(e.offsets.popper[d]=r(n[s])),e}},arrow:{order:500,enabled:!0,fn:function(e,o){var n;if(!K(e.instance.modifiers,'arrow','keepTogether'))return e;var i=o.element;if('string'==typeof i){if(i=e.instance.popper.querySelector(i),!i)return e;}else if(!e.instance.popper.contains(i))return console.warn('WARNING: `arrow.element` must be child of its popper element!'),e;var r=e.placement.split('-')[0],p=e.offsets,s=p.popper,d=p.reference,a=-1!==['left','right'].indexOf(r),l=a?'height':'width',f=a?'Top':'Left',m=f.toLowerCase(),h=a?'left':'top',c=a?'bottom':'right',u=S(i)[l];d[c]-us[c]&&(e.offsets.popper[m]+=d[m]+u-s[c]),e.offsets.popper=g(e.offsets.popper);var b=d[m]+d[l]/2-u/2,w=t(e.instance.popper),y=parseFloat(w['margin'+f],10),E=parseFloat(w['border'+f+'Width'],10),v=b-e.offsets.popper[m]-y-E;return v=ee(Q(s[l]-u,v),0),e.arrowElement=i,e.offsets.arrow=(n={},ae(n,m,$(v)),ae(n,h,''),n),e},element:'[x-arrow]'},flip:{order:600,enabled:!0,fn:function(e,t){if(W(e.instance.modifiers,'inner'))return e;if(e.flipped&&e.placement===e.originalPlacement)return e;var o=v(e.instance.popper,e.instance.reference,t.padding,t.boundariesElement,e.positionFixed),n=e.placement.split('-')[0],i=T(n),r=e.placement.split('-')[1]||'',p=[];switch(t.behavior){case ce.FLIP:p=[n,i];break;case ce.CLOCKWISE:p=G(n);break;case ce.COUNTERCLOCKWISE:p=G(n,!0);break;default:p=t.behavior;}return p.forEach(function(s,d){if(n!==s||p.length===d+1)return e;n=e.placement.split('-')[0],i=T(n);var a=e.offsets.popper,l=e.offsets.reference,f=Z,m='left'===n&&f(a.right)>f(l.left)||'right'===n&&f(a.left)f(l.top)||'bottom'===n&&f(a.top)f(o.right),g=f(a.top)f(o.bottom),b='left'===n&&h||'right'===n&&c||'top'===n&&g||'bottom'===n&&u,w=-1!==['top','bottom'].indexOf(n),y=!!t.flipVariations&&(w&&'start'===r&&h||w&&'end'===r&&c||!w&&'start'===r&&g||!w&&'end'===r&&u),E=!!t.flipVariationsByContent&&(w&&'start'===r&&c||w&&'end'===r&&h||!w&&'start'===r&&u||!w&&'end'===r&&g),v=y||E;(m||b||v)&&(e.flipped=!0,(m||b)&&(n=p[d+1]),v&&(r=z(r)),e.placement=n+(r?'-'+r:''),e.offsets.popper=le({},e.offsets.popper,C(e.instance.popper,e.offsets.reference,e.placement)),e=P(e.instance.modifiers,e,'flip'))}),e},behavior:'flip',padding:5,boundariesElement:'viewport',flipVariations:!1,flipVariationsByContent:!1},inner:{order:700,enabled:!1,fn:function(e){var t=e.placement,o=t.split('-')[0],n=e.offsets,i=n.popper,r=n.reference,p=-1!==['left','right'].indexOf(o),s=-1===['top','left'].indexOf(o);return i[p?'left':'top']=r[o]-(s?i[p?'width':'height']:0),e.placement=T(t),e.offsets.popper=g(i),e}},hide:{order:800,enabled:!0,fn:function(e){if(!K(e.instance.modifiers,'hide','preventOverflow'))return e;var t=e.offsets.reference,o=D(e.instance.modifiers,function(e){return'preventOverflow'===e.name}).boundaries;if(t.bottomo.right||t.top>o.bottom||t.rightwindow.devicePixelRatio||!fe),c='bottom'===o?'top':'bottom',g='right'===n?'left':'right',b=B('transform');if(d='bottom'==c?'HTML'===l.nodeName?-l.clientHeight+h.bottom:-f.height+h.bottom:h.top,s='right'==g?'HTML'===l.nodeName?-l.clientWidth+h.right:-f.width+h.right:h.left,a&&b)m[b]='translate3d('+s+'px, '+d+'px, 0)',m[c]=0,m[g]=0,m.willChange='transform';else{var w='bottom'==c?-1:1,y='right'==g?-1:1;m[c]=d*w,m[g]=s*y,m.willChange=c+', '+g}var E={"x-placement":e.placement};return e.attributes=le({},E,e.attributes),e.styles=le({},m,e.styles),e.arrowStyles=le({},e.offsets.arrow,e.arrowStyles),e},gpuAcceleration:!0,x:'bottom',y:'right'},applyStyle:{order:900,enabled:!0,fn:function(e){return V(e.instance.popper,e.styles),j(e.instance.popper,e.attributes),e.arrowElement&&Object.keys(e.arrowStyles).length&&V(e.arrowElement,e.arrowStyles),e},onLoad:function(e,t,o,n,i){var r=L(i,t,e,o.positionFixed),p=O(o.placement,r,t,e,o.modifiers.flip.boundariesElement,o.modifiers.flip.padding);return t.setAttribute('x-placement',p),V(t,{position:o.positionFixed?'fixed':'absolute'}),o},gpuAcceleration:void 0}}},ge}); 5 | -------------------------------------------------------------------------------- /dark/js/preloader.min.js: -------------------------------------------------------------------------------- 1 | var div=document.createElement("div");div.id="preloader",div.className="preloader",div.innerHTML='
',document.body.insertBefore(div,document.body.firstChild),window.onload=function(){document.getElementById("preloader").classList.add("off")}; -------------------------------------------------------------------------------- /dark/js/styleswitcher.js: -------------------------------------------------------------------------------- 1 | /** STYLE SWITCHER 2 | *************************************************** **/ 3 | jQuery(document).ready(function() { 4 | "use strict"; 5 | 6 | jQuery("#hideSwitcher, #showSwitcher").click(function () { 7 | 8 | if (jQuery("#showSwitcher").is(":visible")) { 9 | 10 | var _identifier = "#showSwitcher"; 11 | jQuery("#switcher").animate({"margin-left": "0px"}, 500).show(); 12 | createCookie("switcher_visible", 'true', 365); 13 | 14 | } else { 15 | 16 | var _identifier = "#switcher"; 17 | jQuery("#showSwitcher").show().animate({"margin-left": "0"}, 500); 18 | createCookie("switcher_visible", 'false', 365); 19 | 20 | } 21 | 22 | jQuery(_identifier).animate({"margin-left": "-500px"}, 500, function () { 23 | jQuery(this).hide(); 24 | }); 25 | 26 | }); 27 | 28 | // REMOVE # FROM URL 29 | $("a[href='#']").on("click", (function(e) { 30 | e.preventDefault(); 31 | })); 32 | 33 | }); 34 | 35 | function setActiveStyleSheet(title) { 36 | var i, a, main; 37 | for(i=0; (a = document.getElementsByTagName("link")[i]); i++) { 38 | if(a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title")) { 39 | a.disabled = true; 40 | if(a.getAttribute("title") == title) { a.disabled = false; } 41 | } 42 | } 43 | 44 | // DARK SKIN 45 | var color_skin = readCookie('color_skin'); 46 | if(color_skin == 'dark') { 47 | jQuery("#css_dark_skin").remove(); 48 | jQuery("head").append(''); 49 | jQuery("#is_dark").trigger('click'); 50 | jQuery("a.logo img").attr('src', 'assets/images/logo_dark.png'); 51 | } 52 | } 53 | 54 | function getActiveStyleSheet() { 55 | var i, a; 56 | for(i=0; (a = document.getElementsByTagName("link")[i]); i++) { 57 | if(a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title") && !a.disabled) { return a.getAttribute("title"); } 58 | } 59 | 60 | return null; 61 | } 62 | 63 | function getPreferredStyleSheet() { 64 | var i, a; 65 | for(i=0; (a = document.getElementsByTagName("link")[i]); i++) { 66 | if(a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("rel").indexOf("alt") == -1 && a.getAttribute("title")) { 67 | return a.getAttribute("title"); 68 | } 69 | } 70 | 71 | return null; 72 | } 73 | 74 | function createCookie(name,value,days) { 75 | if (days) { 76 | var date = new Date(); 77 | date.setTime(date.getTime()+(days*24*60*60*1000)); 78 | var expires = "; expires="+date.toGMTString(); 79 | } else { 80 | expires = ""; 81 | } document.cookie = name+"="+value+expires+";"; 82 | } 83 | 84 | function readCookie(name) { 85 | var nameEQ = name + "="; 86 | var ca = document.cookie.split(';'); 87 | for(var i=0;i < ca.length;i++) { 88 | var c = ca[i]; 89 | 90 | while (c.charAt(0)==' ') { 91 | c = c.substring(1,c.length); 92 | } 93 | 94 | if (c.indexOf(nameEQ) == 0) { 95 | return c.substring(nameEQ.length,c.length); 96 | } 97 | } 98 | 99 | return null; 100 | } 101 | 102 | 103 | /** ********************************************************************************************************** **/ 104 | /** ********************************************************************************************************** **/ 105 | /** ********************************************************************************************************** **/ 106 | 107 | /** 108 | @ON LOAD 109 | **/ 110 | var switcher_visible = ''; 111 | window.onload = function(e) { 112 | 113 | // COLOR SCHEME 114 | var cookie = readCookie("style"); 115 | var title = cookie ? cookie : getPreferredStyleSheet(); 116 | setActiveStyleSheet(title); 117 | 118 | // SWITCHER OPEN|CLOSED 119 | if(switcher_visible != 'false') { 120 | jQuery("#showSwitcher").trigger('click'); 121 | } 122 | 123 | // DARK OR LIGHT 124 | var is_dark = readCookie('is_light'); 125 | if(is_boxed == 'true') { 126 | jQuery('light').removeClass('light'); 127 | jQuery('light').addClass('light'); 128 | jQuery("#is_light").trigger('click'); 129 | } 130 | 131 | } 132 | 133 | 134 | /** 135 | COLOR SKIN [light|dark] 136 | **/ 137 | jQuery("input.dark_switch").bind("click", function() { 138 | var boxed_switch = jQuery(this).attr('value'); 139 | 140 | if(boxed_switch == 'light') { 141 | jQuery("body").removeClass('dark'); 142 | jQuery("body").addClass('light'); 143 | } else { 144 | 145 | jQuery("body").removeClass('light'); 146 | jQuery("body").addClass('dark'); 147 | } 148 | }); 149 | 150 | 151 | 152 | 153 | 154 | /** 155 | LAYOUT STYLE [wide|boxed] 156 | **/ 157 | jQuery("input.boxed_switch").bind("click", function() { 158 | var boxed_switch = jQuery(this).attr('value'); 159 | 160 | if(boxed_switch == 'boxed') { 161 | jQuery("body").removeClass('boxed'); 162 | jQuery("body").addClass('boxed'); 163 | createCookie("is_boxed", 'true', 365); 164 | } else { 165 | jQuery("body").removeClass('boxed'); 166 | createCookie("is_boxed", '', -1); 167 | jQuery('body').removeClass('transparent'); 168 | } 169 | }); 170 | 171 | 172 | 173 | /** 174 | SEPARATOR STYLE [Normal|Skew|Reversed Skew|Double Diagonal|Big Triangle] 175 | **/ 176 | jQuery("input.separator_switch").bind("click", function() { 177 | var separator_switch = jQuery(this).attr('value'); 178 | 179 | if(separator_switch == 'skew') { 180 | jQuery("body").removeClass('reversed-skew'); 181 | jQuery("body").removeClass('double-diagonal'); 182 | jQuery("body").removeClass('big-triangle'); 183 | jQuery("body").addClass('skew'); 184 | createCookie("is_skew", 'true', 365); 185 | } 186 | 187 | else if(separator_switch == 'reversed-skew') { 188 | jQuery("body").removeClass('skew'); 189 | jQuery("body").removeClass('double-diagonal'); 190 | jQuery("body").removeClass('big-triangle'); 191 | jQuery("body").addClass('reversed-skew'); 192 | createCookie("is_reversed_skew", 'true', 365); 193 | } 194 | 195 | else if(separator_switch == 'double-diagonal') { 196 | jQuery("body").removeClass('skew'); 197 | jQuery("body").removeClass('reversed-skew'); 198 | jQuery("body").removeClass('big-triangle'); 199 | jQuery("body").addClass('double-diagonal'); 200 | createCookie("is_double_diagonal", 'true', 365); 201 | } 202 | 203 | else if(separator_switch == 'big-triangle') { 204 | jQuery("body").removeClass('skew'); 205 | jQuery("body").removeClass('reversed-skew'); 206 | jQuery("body").removeClass('double-diagonal'); 207 | jQuery("body").addClass('big-triangle'); 208 | createCookie("is_big_triangle", 'true', 365); 209 | } 210 | 211 | else { 212 | jQuery("body").removeClass('skew'); 213 | jQuery("body").removeClass('reversed-skew'); 214 | jQuery("body").removeClass('double-diagonal'); 215 | jQuery("body").removeClass('big-triangle'); 216 | createCookie("is_normal", '', -1); 217 | } 218 | }); 219 | --------------------------------------------------------------------------------