From ac461c97f8abf0d8ef1c3cb19387b67d56c325d9 Mon Sep 17 00:00:00 2001 From: misund Date: Wed, 23 Apr 2014 23:04:17 +0200 Subject: [PATCH] Initial commit. --- .editorconfig | 21 + .gitattributes | 1 + .gitignore | 6 + .jshintrc | 21 + Gruntfile.js | 425 +++++++++ app/.htaccess | 663 +++++++++++++ app/404.html | 157 ++++ app/async.php | 32 + app/favicon.ico | Bin 0 -> 4286 bytes app/images/konsert.jpg | Bin 0 -> 136680 bytes app/index.html | 76 ++ app/robots.txt | 3 + app/scripts/main.js | 23 + app/styles/_foundation-settings.scss | 1279 ++++++++++++++++++++++++++ app/styles/_foundation.scss | 46 + app/styles/main.scss | 66 ++ bower.json | 9 + package.json | 34 + test/.bowerrc | 3 + test/bower.json | 9 + test/index.html | 27 + test/spec/test.js | 13 + 22 files changed, 2914 insertions(+) create mode 100644 .editorconfig create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 .jshintrc create mode 100644 Gruntfile.js create mode 100644 app/.htaccess create mode 100644 app/404.html create mode 100644 app/async.php create mode 100644 app/favicon.ico create mode 100644 app/images/konsert.jpg create mode 100644 app/index.html create mode 100644 app/robots.txt create mode 100644 app/scripts/main.js create mode 100644 app/styles/_foundation-settings.scss create mode 100644 app/styles/_foundation.scss create mode 100644 app/styles/main.scss create mode 100644 bower.json create mode 100644 package.json create mode 100644 test/.bowerrc create mode 100644 test/bower.json create mode 100644 test/index.html create mode 100644 test/spec/test.js diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..8a80734 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,21 @@ +# EditorConfig helps developers define and maintain consistent +# coding styles between different editors and IDEs +# editorconfig.org + +root = true + + +[*] + +# Change these settings to your own preference +indent_style = space +indent_size = 4 + +# We recommend you to keep these unchanged +end_of_line = lf +charset = utf-8 +trim_trailing_whitespace = true +insert_final_newline = true + +[*.md] +trim_trailing_whitespace = false diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..2125666 --- /dev/null +++ b/.gitattributes @@ -0,0 +1 @@ +* text=auto \ No newline at end of file diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..2f4628a --- /dev/null +++ b/.gitignore @@ -0,0 +1,6 @@ +node_modules +dist +.tmp +.sass-cache +bower_components +test/bower_components diff --git a/.jshintrc b/.jshintrc new file mode 100644 index 0000000..287bc43 --- /dev/null +++ b/.jshintrc @@ -0,0 +1,21 @@ +{ + "node": true, + "browser": true, + "esnext": true, + "bitwise": true, + "camelcase": true, + "curly": true, + "eqeqeq": true, + "immed": true, + "indent": 4, + "latedef": true, + "newcap": true, + "noarg": true, + "quotmark": "single", + "undef": true, + "unused": true, + "strict": true, + "trailing": true, + "smarttabs": true, + "jquery": true +} diff --git a/Gruntfile.js b/Gruntfile.js new file mode 100644 index 0000000..b0fdebb --- /dev/null +++ b/Gruntfile.js @@ -0,0 +1,425 @@ +// Generated on 2014-04-22 using generator-webapp 0.4.9 +'use strict'; + +// # Globbing +// for performance reasons we're only matching one level down: +// 'test/spec/{,*/}*.js' +// use this if you want to recursively match all subfolders: +// 'test/spec/**/*.js' + +module.exports = function (grunt) { + + // Load grunt tasks automatically + require('load-grunt-tasks')(grunt); + + // Time how long tasks take. Can help when optimizing build times + require('time-grunt')(grunt); + + // Configurable paths + var config = { + app: 'app', + dist: 'dist' + }; + + // Define the configuration for all the tasks + grunt.initConfig({ + + // Project settings + config: config, + + // Watches files for changes and runs tasks based on the changed files + watch: { + bower: { + files: ['bower.json'], + tasks: ['bowerInstall'] + }, + js: { + files: ['<%= config.app %>/scripts/{,*/}*.js'], + tasks: ['jshint'], + options: { + livereload: true + } + }, + jstest: { + files: ['test/spec/{,*/}*.js'], + tasks: ['test:watch'] + }, + gruntfile: { + files: ['Gruntfile.js'] + }, + sass: { + files: ['<%= config.app %>/styles/{,*/}*.{scss,sass}'], + tasks: ['sass:server', 'autoprefixer'] + }, + styles: { + files: ['<%= config.app %>/styles/{,*/}*.css'], + tasks: ['newer:copy:styles', 'autoprefixer'] + }, + livereload: { + options: { + livereload: '<%= connect.options.livereload %>' + }, + files: [ + '<%= config.app %>/{,*/}*.html', + '.tmp/styles/{,*/}*.css', + '<%= config.app %>/images/{,*/}*' + ] + } + }, + + // The actual grunt server settings + connect: { + options: { + port: 9000, + open: true, + livereload: 35729, + // Change this to '0.0.0.0' to access the server from outside + hostname: 'localhost' + }, + livereload: { + options: { + middleware: function(connect) { + return [ + connect.static('.tmp'), + connect().use('/bower_components', connect.static('./bower_components')), + connect.static(config.app) + ]; + } + } + }, + test: { + options: { + open: false, + port: 9001, + middleware: function(connect) { + return [ + connect.static('.tmp'), + connect.static('test'), + connect().use('/bower_components', connect.static('./bower_components')), + connect.static(config.app) + ]; + } + } + }, + dist: { + options: { + base: '<%= config.dist %>', + livereload: false + } + } + }, + + // Empties folders to start fresh + clean: { + dist: { + files: [{ + dot: true, + src: [ + '.tmp', + '<%= config.dist %>/*', + '!<%= config.dist %>/.git*' + ] + }] + }, + server: '.tmp' + }, + + // Make sure code styles are up to par and there are no obvious mistakes + jshint: { + options: { + jshintrc: '.jshintrc', + reporter: require('jshint-stylish') + }, + all: [ + 'Gruntfile.js', + '<%= config.app %>/scripts/{,*/}*.js', + '!<%= config.app %>/scripts/vendor/*', + 'test/spec/{,*/}*.js' + ] + }, + + // Mocha testing framework configuration options + mocha: { + all: { + options: { + run: true, + urls: ['http://<%= connect.test.options.hostname %>:<%= connect.test.options.port %>/index.html'] + } + } + }, + + // Compiles Sass to CSS and generates necessary files if requested + sass: { + options: { + loadPath: [ + 'bower_components' + ] + }, + dist: { + files: [{ + expand: true, + cwd: '<%= config.app %>/styles', + src: ['*.scss'], + dest: '.tmp/styles', + ext: '.css' + }] + }, + server: { + files: [{ + expand: true, + cwd: '<%= config.app %>/styles', + src: ['*.scss'], + dest: '.tmp/styles', + ext: '.css' + }] + } + }, + + // Add vendor prefixed styles + autoprefixer: { + options: { + browsers: ['last 1 version'] + }, + dist: { + files: [{ + expand: true, + cwd: '.tmp/styles/', + src: '{,*/}*.css', + dest: '.tmp/styles/' + }] + } + }, + + // Automatically inject Bower components into the HTML file + bowerInstall: { + app: { + src: ['<%= config.app %>/index.html'], + exclude: ['bower_components/bootstrap-sass-official/vendor/assets/javascripts/bootstrap.js'] + }, + sass: { + src: ['<%= config.app %>/styles/{,*/}*.{scss,sass}'] + } + }, + + // Renames files for browser caching purposes + rev: { + dist: { + files: { + src: [ + '<%= config.dist %>/scripts/{,*/}*.js', + '<%= config.dist %>/styles/{,*/}*.css', + '<%= config.dist %>/images/{,*/}*.*', + '<%= config.dist %>/styles/fonts/{,*/}*.*', + '<%= config.dist %>/*.{ico,png}' + ] + } + } + }, + + // Reads HTML for usemin blocks to enable smart builds that automatically + // concat, minify and revision files. Creates configurations in memory so + // additional tasks can operate on them + useminPrepare: { + options: { + dest: '<%= config.dist %>' + }, + html: '<%= config.app %>/index.html' + }, + + // Performs rewrites based on rev and the useminPrepare configuration + usemin: { + options: { + assetsDirs: ['<%= config.dist %>', '<%= config.dist %>/images'] + }, + html: ['<%= config.dist %>/{,*/}*.html'], + css: ['<%= config.dist %>/styles/{,*/}*.css'] + }, + + // The following *-min tasks produce minified files in the dist folder + imagemin: { + dist: { + files: [{ + expand: true, + cwd: '<%= config.app %>/images', + src: '{,*/}*.{gif,jpeg,jpg,png}', + dest: '<%= config.dist %>/images' + }] + } + }, + + svgmin: { + dist: { + files: [{ + expand: true, + cwd: '<%= config.app %>/images', + src: '{,*/}*.svg', + dest: '<%= config.dist %>/images' + }] + } + }, + + htmlmin: { + dist: { + options: { + collapseBooleanAttributes: true, + collapseWhitespace: true, + removeAttributeQuotes: true, + removeCommentsFromCDATA: true, + removeEmptyAttributes: true, + removeOptionalTags: true, + removeRedundantAttributes: true, + useShortDoctype: true + }, + files: [{ + expand: true, + cwd: '<%= config.dist %>', + src: '{,*/}*.html', + dest: '<%= config.dist %>' + }] + } + }, + + // By default, your `index.html`'s will take care of + // minification. These next options are pre-configured if you do not wish + // to use the Usemin blocks. + // cssmin: { + // dist: { + // files: { + // '<%= config.dist %>/styles/main.css': [ + // '.tmp/styles/{,*/}*.css', + // '<%= config.app %>/styles/{,*/}*.css' + // ] + // } + // } + // }, + // uglify: { + // dist: { + // files: { + // '<%= config.dist %>/scripts/scripts.js': [ + // '<%= config.dist %>/scripts/scripts.js' + // ] + // } + // } + // }, + // concat: { + // dist: {} + // }, + + // Copies remaining files to places other tasks can use + copy: { + dist: { + files: [{ + expand: true, + dot: true, + cwd: '<%= config.app %>', + dest: '<%= config.dist %>', + src: [ + '*.{ico,png,txt}', + '.htaccess', + 'images/{,*/}*.webp', + '{,*/}*.html', + '{,*/}*.php', + 'styles/fonts/{,*/}*.*' + ] + }] + }, + styles: { + expand: true, + dot: true, + cwd: '<%= config.app %>/styles', + dest: '.tmp/styles/', + src: '{,*/}*.css' + } + }, + + // Generates a custom Modernizr build that includes only the tests you + // reference in your app + modernizr: { + dist: { + devFile: 'bower_components/modernizr/modernizr.js', + outputFile: '<%= config.dist %>/scripts/vendor/modernizr.js', + files: { + src: [ + '<%= config.dist %>/scripts/{,*/}*.js', + '<%= config.dist %>/styles/{,*/}*.css', + '!<%= config.dist %>/scripts/vendor/*' + ] + }, + uglify: true + } + }, + + // Run some tasks in parallel to speed up build process + concurrent: { + server: [ + 'sass:server', + 'copy:styles' + ], + test: [ + 'copy:styles' + ], + dist: [ + 'sass', + 'copy:styles', + 'imagemin', + 'svgmin' + ] + } + }); + + + grunt.registerTask('serve', function (target) { + if (target === 'dist') { + return grunt.task.run(['build', 'connect:dist:keepalive']); + } + + grunt.task.run([ + 'clean:server', + 'concurrent:server', + 'autoprefixer', + 'connect:livereload', + 'watch' + ]); + }); + + grunt.registerTask('server', function (target) { + grunt.log.warn('The `server` task has been deprecated. Use `grunt serve` to start a server.'); + grunt.task.run([target ? ('serve:' + target) : 'serve']); + }); + + grunt.registerTask('test', function (target) { + if (target !== 'watch') { + grunt.task.run([ + 'clean:server', + 'concurrent:test', + 'autoprefixer' + ]); + } + + grunt.task.run([ + 'connect:test', + 'mocha' + ]); + }); + + grunt.registerTask('build', [ + 'clean:dist', + 'useminPrepare', + 'concurrent:dist', + 'autoprefixer', + 'concat', + 'cssmin', + 'uglify', + 'copy:dist', + 'modernizr', + 'rev', + 'usemin', + 'htmlmin' + ]); + + grunt.registerTask('default', [ + 'newer:jshint', + 'test', + 'build' + ]); +}; diff --git a/app/.htaccess b/app/.htaccess new file mode 100644 index 0000000..ca34658 --- /dev/null +++ b/app/.htaccess @@ -0,0 +1,663 @@ +# Apache Server Configs v2.2.0 | MIT License +# https://github.com/h5bp/server-configs-apache + +# (!) Using `.htaccess` files slows down Apache, therefore, if you have access +# to the main server config file (usually called `httpd.conf`), you should add +# this logic there: http://httpd.apache.org/docs/current/howto/htaccess.html. + +# ############################################################################## +# # CROSS-ORIGIN RESOURCE SHARING (CORS) # +# ############################################################################## + +# ------------------------------------------------------------------------------ +# | Cross-domain AJAX requests | +# ------------------------------------------------------------------------------ + +# Allow cross-origin AJAX requests. +# http://code.google.com/p/html5security/wiki/CrossOriginRequestSecurity +# http://enable-cors.org/ + +# +# Header set Access-Control-Allow-Origin "*" +# + +# ------------------------------------------------------------------------------ +# | CORS-enabled images | +# ------------------------------------------------------------------------------ + +# Send the CORS header for images when browsers request it. +# https://developer.mozilla.org/en-US/docs/HTML/CORS_Enabled_Image +# http://blog.chromium.org/2011/07/using-cross-domain-images-in-webgl-and.html +# http://hacks.mozilla.org/2011/11/using-cors-to-load-webgl-textures-from-cross-domain-images/ + + + + + SetEnvIf Origin ":" IS_CORS + Header set Access-Control-Allow-Origin "*" env=IS_CORS + + + + +# ------------------------------------------------------------------------------ +# | Web fonts access | +# ------------------------------------------------------------------------------ + +# Allow access to web fonts from all domains. + + + + Header set Access-Control-Allow-Origin "*" + + + + +# ############################################################################## +# # ERRORS # +# ############################################################################## + +# ------------------------------------------------------------------------------ +# | 404 error prevention for non-existing redirected folders | +# ------------------------------------------------------------------------------ + +# Prevent Apache from returning a 404 error as the result of a rewrite +# when the directory with the same name does not exist. +# http://httpd.apache.org/docs/current/content-negotiation.html#multiviews +# http://www.webmasterworld.com/apache/3808792.htm + +Options -MultiViews + +# ------------------------------------------------------------------------------ +# | Custom error messages / pages | +# ------------------------------------------------------------------------------ + +# Customize what Apache returns to the client in case of an error. +# http://httpd.apache.org/docs/current/mod/core.html#errordocument + +ErrorDocument 404 /404.html + + +# ############################################################################## +# # INTERNET EXPLORER # +# ############################################################################## + +# ------------------------------------------------------------------------------ +# | Better website experience | +# ------------------------------------------------------------------------------ + +# Force Internet Explorer to render pages in the highest available mode +# in the various cases when it may not. +# http://hsivonen.iki.fi/doctype/ie-mode.pdf + + + Header set X-UA-Compatible "IE=edge" + # `mod_headers` cannot match based on the content-type, however, this + # header should be send only for HTML pages and not for the other resources + + Header unset X-UA-Compatible + + + +# ------------------------------------------------------------------------------ +# | Cookie setting from iframes | +# ------------------------------------------------------------------------------ + +# Allow cookies to be set from iframes in Internet Explorer. +# http://msdn.microsoft.com/en-us/library/ms537343.aspx +# http://www.w3.org/TR/2000/CR-P3P-20001215/ + +# +# Header set P3P "policyref=\"/w3c/p3p.xml\", CP=\"IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT\"" +# + + +# ############################################################################## +# # MIME TYPES AND ENCODING # +# ############################################################################## + +# ------------------------------------------------------------------------------ +# | Proper MIME types for all files | +# ------------------------------------------------------------------------------ + + + + # Audio + AddType audio/mp4 m4a f4a f4b + AddType audio/ogg oga ogg opus + + # Data interchange + AddType application/json json map + AddType application/ld+json jsonld + + # JavaScript + # Normalize to standard type. + # http://tools.ietf.org/html/rfc4329#section-7.2 + AddType application/javascript js + + # Video + AddType video/mp4 f4v f4p m4v mp4 + AddType video/ogg ogv + AddType video/webm webm + AddType video/x-flv flv + + # Web fonts + AddType application/font-woff woff + AddType application/vnd.ms-fontobject eot + + # Browsers usually ignore the font MIME types and simply sniff the bytes + # to figure out the font type. + # http://mimesniff.spec.whatwg.org/#matching-a-font-type-pattern + + # Chrome however, shows a warning if any other MIME types are used for + # the following fonts. + + AddType application/x-font-ttf ttc ttf + AddType font/opentype otf + + # Make SVGZ fonts work on the iPad. + # https://twitter.com/FontSquirrel/status/14855840545 + AddType image/svg+xml svgz + AddEncoding gzip svgz + + # Other + AddType application/octet-stream safariextz + AddType application/x-chrome-extension crx + AddType application/x-opera-extension oex + AddType application/x-web-app-manifest+json webapp + AddType application/x-xpinstall xpi + AddType application/xml atom rdf rss xml + AddType image/webp webp + AddType image/x-icon cur + AddType text/cache-manifest appcache manifest + AddType text/vtt vtt + AddType text/x-component htc + AddType text/x-vcard vcf + + + +# ------------------------------------------------------------------------------ +# | UTF-8 encoding | +# ------------------------------------------------------------------------------ + +# Use UTF-8 encoding for anything served as `text/html` or `text/plain`. +AddDefaultCharset utf-8 + +# Force UTF-8 for certain file formats. + + AddCharset utf-8 .atom .css .js .json .jsonld .rss .vtt .webapp .xml + + + +# ############################################################################## +# # URL REWRITES # +# ############################################################################## + +# ------------------------------------------------------------------------------ +# | Rewrite engine | +# ------------------------------------------------------------------------------ + +# Turn on the rewrite engine and enable the `FollowSymLinks` option (this is +# necessary in order for the following directives to work). + +# If your web host doesn't allow the `FollowSymlinks` option, you may need to +# comment it out and use `Options +SymLinksIfOwnerMatch`, but be aware of the +# performance impact. +# http://httpd.apache.org/docs/current/misc/perf-tuning.html#symlinks + +# Also, some cloud hosting services require `RewriteBase` to be set. +# http://www.rackspace.com/knowledge_center/frequently-asked-question/why-is-mod-rewrite-not-working-on-my-site + + + Options +FollowSymlinks + # Options +SymLinksIfOwnerMatch + RewriteEngine On + # RewriteBase / + + +# ------------------------------------------------------------------------------ +# | Suppressing / Forcing the `www.` at the beginning of URLs | +# ------------------------------------------------------------------------------ + +# The same content should never be available under two different URLs, +# especially not with and without `www.` at the beginning. This can cause +# SEO problems (duplicate content), and therefore, you should choose one +# of the alternatives and redirect the other one. + +# By default `Option 1` (no `www.`) is activated. +# http://no-www.org/faq.php?q=class_b + +# If you would prefer to use `Option 2`, just comment out all the lines +# from `Option 1` and uncomment the ones from `Option 2`. + +# IMPORTANT: NEVER USE BOTH RULES AT THE SAME TIME! + +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +# Option 1: rewrite www.example.com → example.com + + + RewriteCond %{HTTPS} !=on + RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC] + RewriteRule ^ http://%1%{REQUEST_URI} [R=301,L] + + +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +# Option 2: rewrite example.com → www.example.com + +# Be aware that the following might not be a good idea if you use "real" +# subdomains for certain parts of your website. + +# +# RewriteCond %{HTTPS} !=on +# RewriteCond %{HTTP_HOST} !^www\. [NC] +# RewriteCond %{SERVER_ADDR} !=127.0.0.1 +# RewriteCond %{SERVER_ADDR} !=::1 +# RewriteRule ^ http://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L] +# + + +# ############################################################################## +# # SECURITY # +# ############################################################################## + +# ------------------------------------------------------------------------------ +# | Clickjacking | +# ------------------------------------------------------------------------------ + +# Protect website against clickjacking. + +# The example below sends the `X-Frame-Options` response header with the value +# `DENY`, informing browsers not to display the web page content in any frame. + +# This might not be the best setting for everyone. You should read about the +# other two possible values for `X-Frame-Options`: `SAMEORIGIN` & `ALLOW-FROM`. +# http://tools.ietf.org/html/rfc7034#section-2.1 + +# Keep in mind that while you could send the `X-Frame-Options` header for all +# of your site’s pages, this has the potential downside that it forbids even +# non-malicious framing of your content (e.g.: when users visit your site using +# a Google Image Search results page). + +# Nonetheless, you should ensure that you send the `X-Frame-Options` header for +# all pages that allow a user to make a state changing operation (e.g: pages +# that contain one-click purchase links, checkout or bank-transfer confirmation +# pages, pages that make permanent configuration changes, etc.). + +# Sending the `X-Frame-Options` header can also protect your website against +# more than just clickjacking attacks: https://cure53.de/xfo-clickjacking.pdf. + +# http://tools.ietf.org/html/rfc7034 +# http://blogs.msdn.com/b/ieinternals/archive/2010/03/30/combating-clickjacking-with-x-frame-options.aspx +# https://www.owasp.org/index.php/Clickjacking + +# +# Header set X-Frame-Options "DENY" +# +# Header unset X-Frame-Options +# +# + +# ------------------------------------------------------------------------------ +# | Content Security Policy (CSP) | +# ------------------------------------------------------------------------------ + +# Mitigate the risk of cross-site scripting and other content-injection attacks. + +# This can be done by setting a `Content Security Policy` which whitelists +# trusted sources of content for your website. + +# The example header below allows ONLY scripts that are loaded from the current +# site's origin (no inline scripts, no CDN, etc). This almost certainly won't +# work as-is for your site! + +# For more details on how to craft a reasonable policy for your site, read: +# http://html5rocks.com/en/tutorials/security/content-security-policy (or the +# specification: http://w3.org/TR/CSP). Also, to make things easier, you can +# use an online CSP header generator such as: http://cspisawesome.com/. + +# +# Header set Content-Security-Policy "script-src 'self'; object-src 'self'" +# +# Header unset Content-Security-Policy +# +# + +# ------------------------------------------------------------------------------ +# | File access | +# ------------------------------------------------------------------------------ + +# Block access to directories without a default document. +# You should leave the following uncommented, as you shouldn't allow anyone to +# surf through every directory on your server (which may includes rather private +# places such as the CMS's directories). + + + Options -Indexes + + +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +# Block access to hidden files and directories. +# This includes directories used by version control systems such as Git and SVN. + + + RewriteCond %{SCRIPT_FILENAME} -d [OR] + RewriteCond %{SCRIPT_FILENAME} -f + RewriteRule "(^|/)\." - [F] + + +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +# Block access to files that can expose sensitive information. + +# By default, block access to backup and source files that may be left by some +# text editors and can pose a security risk when anyone has access to them. +# http://feross.org/cmsploit/ + +# IMPORTANT: Update the `` regular expression from below to include +# any files that might end up on your production server and can expose sensitive +# information about your website. These files may include: configuration files, +# files that contain metadata about the project (e.g.: project dependencies), +# build scripts, etc.. + + + + # Apache < 2.3 + + Order allow,deny + Deny from all + Satisfy All + + + # Apache ≥ 2.3 + + Require all denied + + + + +# ------------------------------------------------------------------------------ +# | Reducing MIME-type security risks | +# ------------------------------------------------------------------------------ + +# Prevent some browsers from MIME-sniffing the response. + +# This reduces exposure to drive-by download attacks and should be enable +# especially if the web server is serving user uploaded content, content +# that could potentially be treated by the browser as executable. + +# http://blogs.msdn.com/b/ie/archive/2008/07/02/ie8-security-part-v-comprehensive-protection.aspx +# http://msdn.microsoft.com/en-us/library/ie/gg622941.aspx +# http://mimesniff.spec.whatwg.org/ + +# +# Header set X-Content-Type-Options "nosniff" +# + +# ------------------------------------------------------------------------------ +# | Reflected Cross-Site Scripting (XSS) attacks | +# ------------------------------------------------------------------------------ + +# (1) Try to re-enable the Cross-Site Scripting (XSS) filter built into the +# most recent web browsers. +# +# The filter is usually enabled by default, but in some cases it may be +# disabled by the user. However, in Internet Explorer for example, it can +# be re-enabled just by sending the `X-XSS-Protection` header with the +# value of `1`. +# +# (2) Prevent web browsers from rendering the web page if a potential reflected +# (a.k.a non-persistent) XSS attack is detected by the filter. +# +# By default, if the filter is enabled and browsers detect a reflected +# XSS attack, they will attempt to block the attack by making the smallest +# possible modifications to the returned web page. +# +# Unfortunately, in some browsers (e.g.: Internet Explorer), this default +# behavior may allow the XSS filter to be exploited, thereby, it's better +# to tell browsers to prevent the rendering of the page altogether, instead +# of attempting to modify it. +# +# http://hackademix.net/2009/11/21/ies-xss-filter-creates-xss-vulnerabilities +# +# IMPORTANT: Do not rely on the XSS filter to prevent XSS attacks! Ensure that +# you are taking all possible measures to prevent XSS attacks, the most obvious +# being: validating and sanitizing your site's inputs. +# +# http://blogs.msdn.com/b/ie/archive/2008/07/02/ie8-security-part-iv-the-xss-filter.aspx +# http://blogs.msdn.com/b/ieinternals/archive/2011/01/31/controlling-the-internet-explorer-xss-filter-with-the-x-xss-protection-http-header.aspx +# https://www.owasp.org/index.php/Cross-site_Scripting_%28XSS%29 + +# +# # (1) (2) +# Header set X-XSS-Protection "1; mode=block" +# +# Header unset X-XSS-Protection +# +# + +# ------------------------------------------------------------------------------ +# | Secure Sockets Layer (SSL) | +# ------------------------------------------------------------------------------ + +# Rewrite secure requests properly in order to prevent SSL certificate warnings. +# E.g.: prevent `https://www.example.com` when your certificate only allows +# `https://secure.example.com`. + +# +# RewriteCond %{SERVER_PORT} !^443 +# RewriteRule ^ https://example-domain-please-change-me.com%{REQUEST_URI} [R=301,L] +# + +# ------------------------------------------------------------------------------ +# | HTTP Strict Transport Security (HSTS) | +# ------------------------------------------------------------------------------ + +# Force client-side SSL redirection. + +# If a user types `example.com` in his browser, the above rule will redirect +# him to the secure version of the site. That still leaves a window of +# opportunity (the initial HTTP connection) for an attacker to downgrade or +# redirect the request. + +# The following header ensures that browser will ONLY connect to your server +# via HTTPS, regardless of what the users type in the address bar. + +# http://tools.ietf.org/html/draft-ietf-websec-strict-transport-sec-14#section-6.1 +# http://www.html5rocks.com/en/tutorials/security/transport-layer-security/ + +# IMPORTANT: Remove the `includeSubDomains` optional directive if the subdomains +# are not using HTTPS. + +# +# Header set Strict-Transport-Security "max-age=16070400; includeSubDomains" +# + +# ------------------------------------------------------------------------------ +# | Server software information | +# ------------------------------------------------------------------------------ + +# Avoid displaying the exact Apache version number, the description of the +# generic OS-type and the information about Apache's compiled-in modules. + +# ADD THIS DIRECTIVE IN THE `httpd.conf` AS IT WILL NOT WORK IN THE `.htaccess`! + +# ServerTokens Prod + + +# ############################################################################## +# # WEB PERFORMANCE # +# ############################################################################## + +# ------------------------------------------------------------------------------ +# | Compression | +# ------------------------------------------------------------------------------ + + + + # Force compression for mangled headers. + # http://developer.yahoo.com/blogs/ydn/posts/2010/12/pushing-beyond-gzipping + + + SetEnvIfNoCase ^(Accept-EncodXng|X-cept-Encoding|X{15}|~{15}|-{15})$ ^((gzip|deflate)\s*,?\s*)+|[X~-]{4,13}$ HAVE_Accept-Encoding + RequestHeader append Accept-Encoding "gzip,deflate" env=HAVE_Accept-Encoding + + + + # Compress all output labeled with one of the following MIME-types + # (for Apache versions below 2.3.7, you don't need to enable `mod_filter` + # and can remove the `` and `` lines + # as `AddOutputFilterByType` is still in the core directives). + + AddOutputFilterByType DEFLATE application/atom+xml \ + application/javascript \ + application/json \ + application/ld+json \ + application/rss+xml \ + application/vnd.ms-fontobject \ + application/x-font-ttf \ + application/x-web-app-manifest+json \ + application/xhtml+xml \ + application/xml \ + font/opentype \ + image/svg+xml \ + image/x-icon \ + text/css \ + text/html \ + text/plain \ + text/x-component \ + text/xml + + + + +# ------------------------------------------------------------------------------ +# | Content transformations | +# ------------------------------------------------------------------------------ + +# Prevent mobile network providers from modifying the website's content. +# http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9.5. + +# +# Header set Cache-Control "no-transform" +# + +# ------------------------------------------------------------------------------ +# | ETags | +# ------------------------------------------------------------------------------ + +# Remove `ETags` as resources are sent with far-future expires headers. +# http://developer.yahoo.com/performance/rules.html#etags. + +# `FileETag None` doesn't work in all cases. + + Header unset ETag + + +FileETag None + +# ------------------------------------------------------------------------------ +# | Expires headers | +# ------------------------------------------------------------------------------ + +# The following expires headers are set pretty far in the future. If you +# don't control versioning with filename-based cache busting, consider +# lowering the cache time for resources such as style sheets and JavaScript +# files to something like one week. + + + + ExpiresActive on + ExpiresDefault "access plus 1 month" + + # CSS + ExpiresByType text/css "access plus 1 year" + + # Data interchange + ExpiresByType application/json "access plus 0 seconds" + ExpiresByType application/ld+json "access plus 0 seconds" + ExpiresByType application/xml "access plus 0 seconds" + ExpiresByType text/xml "access plus 0 seconds" + + # Favicon (cannot be renamed!) and cursor images + ExpiresByType image/x-icon "access plus 1 week" + + # HTML components (HTCs) + ExpiresByType text/x-component "access plus 1 month" + + # HTML + ExpiresByType text/html "access plus 0 seconds" + + # JavaScript + ExpiresByType application/javascript "access plus 1 year" + + # Manifest files + ExpiresByType application/x-web-app-manifest+json "access plus 0 seconds" + ExpiresByType text/cache-manifest "access plus 0 seconds" + + # Media + ExpiresByType audio/ogg "access plus 1 month" + ExpiresByType image/gif "access plus 1 month" + ExpiresByType image/jpeg "access plus 1 month" + ExpiresByType image/png "access plus 1 month" + ExpiresByType video/mp4 "access plus 1 month" + ExpiresByType video/ogg "access plus 1 month" + ExpiresByType video/webm "access plus 1 month" + + # Web feeds + ExpiresByType application/atom+xml "access plus 1 hour" + ExpiresByType application/rss+xml "access plus 1 hour" + + # Web fonts + ExpiresByType application/font-woff "access plus 1 month" + ExpiresByType application/vnd.ms-fontobject "access plus 1 month" + ExpiresByType application/x-font-ttf "access plus 1 month" + ExpiresByType font/opentype "access plus 1 month" + ExpiresByType image/svg+xml "access plus 1 month" + + + +# ------------------------------------------------------------------------------ +# | Filename-based cache busting | +# ------------------------------------------------------------------------------ + +# If you're not using a build process to manage your filename version revving, +# you might want to consider enabling the following directives to route all +# requests such as `/css/style.12345.css` to `/css/style.css`. + +# To understand why this is important and a better idea than `*.css?v231`, read: +# http://stevesouders.com/blog/2008/08/23/revving-filenames-dont-use-querystring + +# +# RewriteCond %{REQUEST_FILENAME} !-f +# RewriteRule ^(.+)\.(\d+)\.(js|css|png|jpe?g|gif)$ $1.$3 [L] +# + +# ------------------------------------------------------------------------------ +# | File concatenation | +# ------------------------------------------------------------------------------ + +# Allow concatenation from within specific style sheets and JavaScript files. + +# e.g.: +# +# If you have the following content in a file +# +# +# +# +# Apache will replace it with the content from the specified files. + +# +# +# Options +Includes +# AddOutputFilterByType INCLUDES application/javascript application/json +# SetOutputFilter INCLUDES +# +# +# Options +Includes +# AddOutputFilterByType INCLUDES text/css +# SetOutputFilter INCLUDES +# +# diff --git a/app/404.html b/app/404.html new file mode 100644 index 0000000..fdace4a --- /dev/null +++ b/app/404.html @@ -0,0 +1,157 @@ + + + + + Page Not Found :( + + + +
+

Not found :(

+

Sorry, but the page you were trying to view does not exist.

+

It looks like this was the result of either:

+
    +
  • a mistyped address
  • +
  • an out-of-date link
  • +
+ + +
+ + diff --git a/app/async.php b/app/async.php new file mode 100644 index 0000000..a7a4358 --- /dev/null +++ b/app/async.php @@ -0,0 +1,32 @@ +'; + echo '

Takk for at du fortsatt er glad i oss! Vet du om andre som er glad i oss ennå? Vi blir glade hvis du kan hjelpe oss å nå dem.

'; + echo '

Send e-post | Del på Facebook

'; + echo ''; +} else { + echo "

Noe gikk galt. Merde alors!

"; + echo mysqli_error( $link ); +} +mysqli_close($link); +?> diff --git a/app/favicon.ico b/app/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..6527905307f19ba00762f9241f7eb535fa84a2f9 GIT binary patch literal 4286 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≠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∨nNUapNLS!(6D3>n^qbvXTf{sXi6(!uF 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 literal 0 HcmV?d00001 diff --git a/app/index.html b/app/index.html new file mode 100644 index 0000000..14b9a25 --- /dev/null +++ b/app/index.html @@ -0,0 +1,76 @@ + + + + + alumni + + + + + + + + + + + + + + + + + + + + +

+
+
+

Har du vært frivillig

+

for Det Norske Studentersamfund?

+ +

Vi ønsker å synliggjøre din tilknytning til Studentersamfundet gjennom DNS Alumni. På sikt håper vi også å kunne bygge opp et tilbud til deg og alle dem som har vært en del av Samfundets historie.

+ +

Fyll ut skjemaet under for å høre mer.

+
+ + +
+
+ +
+ Foto: Guttorm Gundersen / Studentenes Fotoklubb +
+ + + + + + + + + + + + + + + + diff --git a/app/robots.txt b/app/robots.txt new file mode 100644 index 0000000..ee2cc21 --- /dev/null +++ b/app/robots.txt @@ -0,0 +1,3 @@ +# robotstxt.org/ + +User-agent: * diff --git a/app/scripts/main.js b/app/scripts/main.js new file mode 100644 index 0000000..581d0d5 --- /dev/null +++ b/app/scripts/main.js @@ -0,0 +1,23 @@ +'use strict'; + +console.log('\'Allo \'Allo!'); + +$(function() { + $('form').on('submit', function() { + event.preventDefault(); + $.post( + 'http://misund.at.neuf.no/alumni/async.php', + { + name: $('#name').val(), + email: $('#email').val(), + division: $('#division').val(), + years: $('#years').val() + }, + function(data){ + console.log('Successfully posted sumtin.'); + console.log(data); + $('.interest').html('

Takk

').append(data); + } + ); + }); +}); diff --git a/app/styles/_foundation-settings.scss b/app/styles/_foundation-settings.scss new file mode 100644 index 0000000..5460534 --- /dev/null +++ b/app/styles/_foundation-settings.scss @@ -0,0 +1,1279 @@ +// Foundation by ZURB +// foundation.zurb.com +// Licensed under MIT Open Source + +// +// FOUNDATION SETTINGS +// + +// This is the default html and body font-size for the base rem value. +// $rem-base: 16px; + +// Allows the use of rem-calc() or lower-bound() in your settings +@import "../../bower_components/foundation/scss/foundation/functions"; + +// The default font-size is set to 100% of the browser style sheet (usually 16px) +// for compatibility with browser-based text zoom or user-set defaults. + +// Since the typical default browser font-size is 16px, that makes the calculation for grid size. +// If you want your base font-size to be different and not have it affect the grid breakpoints, +// set $rem-base to $base-font-size and make sure $base-font-size is a px value. +// $base-font-size: 100%; + +// The $base-line-height is 100% while $base-font-size is 150% +// $base-line-height: 150%; + +// We use this to control whether or not CSS classes come through in the gem files. +// $include-html-classes: true; +// $include-print-styles: true; +// $include-html-global-classes: $include-html-classes; + +// Grid + +// $include-html-grid-classes: $include-html-classes; +// $include-xl-html-grid-classes: false; + +// $row-width: rem-calc(1000); +// $total-columns: 12; + +// Global + +// We use these to control various global styles +// $body-bg: #fff; +// $body-font-color: #222; +// $body-font-family: "Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif; +// $body-font-weight: normal; +// $body-font-style: normal; + +// We use this to control font-smoothing +// $font-smoothing: antialiased; + +// We use these to control text direction settings +// $text-direction: ltr; +// $opposite-direction: right; +// $default-float: left; + +// We use these as default colors throughout +// $primary-color: #008CBA; +// $secondary-color: #e7e7e7; +// $alert-color: #f04124; +// $success-color: #43AC6A; +// $warning-color: #f08a24; +// $info-color: #a0d3e8; + +// We use these to make sure border radius matches unless we want it different. +// $global-radius: 3px; +// $global-rounded: 1000px; + +// We use these to control inset shadow shiny edges and depressions. +// $shiny-edge-size: 0 1px 0; +// $shiny-edge-color: rgba(#fff, .5); +// $shiny-edge-active-color: rgba(#000, .2); + +// $column-gutter: rem-calc(30); + +// Media Query Ranges +// $small-range: (0em, 40em); +// $medium-range: (40.063em, 64em); +// $large-range: (64.063em, 90em); +// $xlarge-range: (90.063em, 120em); +// $xxlarge-range: (120.063em, 99999999em); + +// $screen: "only screen"; + +// $landscape: "#{$screen} and (orientation: landscape)"; +// $portrait: "#{$screen} and (orientation: portrait)"; + +// $small-up: $screen; +// $small-only: "#{$screen} and (max-width: #{upper-bound($small-range)})"; + +// $medium-up: "#{$screen} and (min-width:#{lower-bound($medium-range)})"; +// $medium-only: "#{$screen} and (min-width:#{lower-bound($medium-range)}) and (max-width:#{upper-bound($medium-range)})"; + +// $large-up: "#{$screen} and (min-width:#{lower-bound($large-range)})"; +// $large-only: "#{$screen} and (min-width:#{lower-bound($large-range)}) and (max-width:#{upper-bound($large-range)})"; + +// $xlarge-up: "#{$screen} and (min-width:#{lower-bound($xlarge-range)})"; +// $xlarge-only: "#{$screen} and (min-width:#{lower-bound($xlarge-range)}) and (max-width:#{upper-bound($xlarge-range)})"; + +// $xxlarge-up: "#{$screen} and (min-width:#{lower-bound($xxlarge-range)})"; +// $xxlarge-only: "#{$screen} and (min-width:#{lower-bound($xxlarge-range)}) and (max-width:#{upper-bound($xxlarge-range)})"; + +// Legacy +// $small: $medium-up; +// $medium: $medium-up; +// $large: $large-up; + +//We use this as cursors values for enabling the option of having custom cursors in the whole site's stylesheet +// $cursor-crosshair-value: crosshair; +// $cursor-default-value: default; +// $cursor-pointer-value: pointer; +// $cursor-help-value: help; +// $cursor-text-value: text; + +// +// TYPOGRAPHY +// + +// $include-html-type-classes: $include-html-classes; + +// We use these to control header font styles +// $header-font-family: $body-font-family; +// $header-font-weight: normal; +// $header-font-style: normal; +// $header-font-color: #222; +// $header-line-height: 1.4; +// $header-top-margin: .2rem; +// $header-bottom-margin: .5rem; +// $header-text-rendering: optimizeLegibility; + +// We use these to control header font sizes +// $h1-font-size: rem-calc(44); +// $h2-font-size: rem-calc(37); +// $h3-font-size: rem-calc(27); +// $h4-font-size: rem-calc(23); +// $h5-font-size: rem-calc(18); +// $h6-font-size: 1rem; + +// These control how subheaders are styled. +// $subheader-line-height: 1.4; +// $subheader-font-color: scale-color($header-font-color, $lightness: 35%); +// $subheader-font-weight: normal; +// $subheader-top-margin: .2rem; +// $subheader-bottom-margin: .5rem; + +// A general styling +// $small-font-size: 60%; +// $small-font-color: scale-color($header-font-color, $lightness: 35%); + +// We use these to style paragraphs +// $paragraph-font-family: inherit; +// $paragraph-font-weight: normal; +// $paragraph-font-size: 1rem; +// $paragraph-line-height: 1.6; +// $paragraph-margin-bottom: rem-calc(20); +// $paragraph-aside-font-size: rem-calc(14); +// $paragraph-aside-line-height: 1.35; +// $paragraph-aside-font-style: italic; +// $paragraph-text-rendering: optimizeLegibility; + +// We use these to style tags +// $code-color: scale-color($alert-color, $lightness: -27%); +// $code-font-family: Consolas, 'Liberation Mono', Courier, monospace; +// $code-font-weight: bold; + +// We use these to style anchors +// $anchor-text-decoration: none; +// $anchor-font-color: $primary-color; +// $anchor-font-color-hover: scale-color($primary-color, $lightness: -14%); + +// We use these to style the
element +// $hr-border-width: 1px; +// $hr-border-style: solid; +// $hr-border-color: #ddd; +// $hr-margin: rem-calc(20); + +// We use these to style lists +// $list-style-position: outside; +// $list-side-margin: 1.1rem; +// $list-ordered-side-margin: 1.4rem; +// $list-side-margin-no-bullet: 0; +// $list-nested-margin: rem-calc(20); +// $definition-list-header-weight: bold; +// $definition-list-header-margin-bottom: .3rem; +// $definition-list-margin-bottom: rem-calc(12); + +// We use these to style blockquotes +// $blockquote-font-color: scale-color($header-font-color, $lightness: 35%); +// $blockquote-padding: rem-calc(9 20 0 19); +// $blockquote-border: 1px solid #ddd; +// $blockquote-cite-font-size: rem-calc(13); +// $blockquote-cite-font-color: scale-color($header-font-color, $lightness: 23%); +// $blockquote-cite-link-color: $blockquote-cite-font-color; + +// Acronym styles +// $acronym-underline: 1px dotted #ddd; + +// We use these to control padding and margin +// $microformat-padding: rem-calc(10 12); +// $microformat-margin: rem-calc(0 0 20 0); + +// We use these to control the border styles +// $microformat-border-width: 1px; +// $microformat-border-style: solid; +// $microformat-border-color: #ddd; + +// We use these to control full name font styles +// $microformat-fullname-font-weight: bold; +// $microformat-fullname-font-size: rem-calc(15); + +// We use this to control the summary font styles +// $microformat-summary-font-weight: bold; + +// We use this to control abbr padding +// $microformat-abbr-padding: rem-calc(0 1); + +// We use this to control abbr font styles +// $microformat-abbr-font-weight: bold; +// $microformat-abbr-font-decoration: none; + +// Accordion + +// $include-html-accordion-classes: $include-html-classes; + +// $accordion-navigation-padding: rem-calc(16); +// $accordion-navigation-bg-color: #efefef ; +// $accordion-navigation-hover-bg-color: scale-color($accordion-navigation-bg-color, $lightness: -5%); +// $accordion-navigation-active-bg-color: scale-color($accordion-navigation-bg-color, $lightness: -3%); +// $accordion-navigation-font-color: #222; +// $accordion-navigation-font-size: rem-calc(16); +// $accordion-navigation-font-family: $body-font-family; + +// $accordion-content-padding: $column-gutter/2; +// $accordion-content-active-bg-color: #fff; + +// Alert Boxes + +// $include-html-alert-classes: $include-html-classes; + +// We use this to control alert padding. +// $alert-padding-top: rem-calc(14); +// $alert-padding-default-float: $alert-padding-top; +// $alert-padding-opposite-direction: $alert-padding-top + rem-calc(10); +// $alert-padding-bottom: $alert-padding-top; + +// We use these to control text style. +// $alert-font-weight: normal; +// $alert-font-size: rem-calc(13); +// $alert-font-color: #fff; +// $alert-font-color-alt: scale-color($secondary-color, $lightness: -66%); + +// We use this for close hover effect. +// $alert-function-factor: -14%; + +// We use these to control border styles. +// $alert-border-style: solid; +// $alert-border-width: 1px; +// $alert-border-color: scale-color($primary-color, $lightness: $alert-function-factor); +// $alert-bottom-margin: rem-calc(20); + +// We use these to style the close buttons +// $alert-close-color: #333; +// $alert-close-top: 50%; +// $alert-close-position: rem-calc(4); +// $alert-close-font-size: rem-calc(22); +// $alert-close-opacity: 0.3; +// $alert-close-opacity-hover: 0.5; +// $alert-close-padding: 9px 6px 4px; + +// We use this to control border radius +// $alert-radius: $global-radius; + +// We use this to control transition effects +// $alert-transition-speed: 300ms; +// $alert-transition-ease: ease-out; + +// Block Grid + +// $include-html-grid-classes: $include-html-classes; +// $include-xl-html-block-grid-classes: false; + +// We use this to control the maximum number of block grid elements per row +// $block-grid-elements: 12; +// $block-grid-default-spacing: rem-calc(20); +// $align-block-grid-to-grid: false; + + +// Enables media queries for block-grid classes. Set to false if writing semantic HTML. +// $block-grid-media-queries: true; + +// Breadcrumbs + +// $include-html-nav-classes: $include-html-classes; + +// We use this to set the background color for the breadcrumb container. +// $crumb-bg: scale-color($secondary-color, $lightness: 55%); + +// We use these to set the padding around the breadcrumbs. +// $crumb-padding: rem-calc(9 14 9); +// $crumb-side-padding: rem-calc(12); + +// We use these to control border styles. +// $crumb-function-factor: -10%; +// $crumb-border-size: 1px; +// $crumb-border-style: solid; +// $crumb-border-color: scale-color($crumb-bg, $lightness: $crumb-function-factor); +// $crumb-radius: $global-radius; + +// We use these to set various text styles for breadcrumbs. +// $crumb-font-size: rem-calc(11); +// $crumb-font-color: $primary-color; +// $crumb-font-color-current: #333; +// $crumb-font-color-unavailable: #999; +// $crumb-font-transform: uppercase; +// $crumb-link-decor: underline; + +// We use these to control the slash between breadcrumbs +// $crumb-slash-color: #aaa; +// $crumb-slash: "/"; + +// +// BUTTONS +// + +// $include-html-button-classes: $include-html-classes; + +// We use these to build padding for buttons. +// $button-tny: rem-calc(10); +// $button-sml: rem-calc(14); +// $button-med: rem-calc(16); +// $button-lrg: rem-calc(18); + +// We use this to control the display property. +// $button-display: inline-block; +// $button-margin-bottom: rem-calc(20); + +// We use these to control button text styles. +// $button-font-family: $body-font-family; +// $button-font-color: #fff; +// $button-font-color-alt: #333; +// $button-font-tny: rem-calc(11); +// $button-font-sml: rem-calc(13); +// $button-font-med: rem-calc(16); +// $button-font-lrg: rem-calc(20); +// $button-font-weight: normal; +// $button-font-align: center; + +// We use these to control various hover effects. +// $button-function-factor: -20%; + +// We use these to control button border styles. +// $button-border-width: 0px; +// $button-border-style: solid; +// $bg: $primary-color; +// $button-border-color: scale-color($bg, $lightness: $button-function-factor); + +// We use this to set the default radius used throughout the core. +// $button-radius: $global-radius; +// $button-round: $global-rounded; + +// We use this to set default opacity for disabled buttons. +// $button-disabled-opacity: 0.7; + +// Button Groups + +// $include-html-button-classes: $include-html-classes; + +// Sets the margin for the right side by default, and the left margin if right-to-left direction is used +// $button-bar-margin-opposite: rem-calc(10); +// $button-group-border-width: 1px; + +// Clearing + +// $include-html-clearing-classes: $include-html-classes; + +// We use these to set the background colors for parts of Clearing. +// $clearing-bg: #333; +// $clearing-caption-bg: $clearing-bg; +// $clearing-carousel-bg: rgba(51,51,51,0.8); +// $clearing-img-bg: $clearing-bg; + +// We use these to style the close button +// $clearing-close-color: #ccc; +// $clearing-close-size: 30px; + +// We use these to style the arrows +// $clearing-arrow-size: 12px; +// $clearing-arrow-color: $clearing-close-color; + +// We use these to style captions +// $clearing-caption-font-color: #ccc; +// $clearing-caption-font-size: 0.875em; +// $clearing-caption-padding: 10px 30px 20px; + +// We use these to make the image and carousel height and style +// $clearing-active-img-height: 85%; +// $clearing-carousel-height: 120px; +// $clearing-carousel-thumb-width: 120px; +// $clearing-carousel-thumb-active-border: 1px solid rgb(255,255,255); + +// Dropdown + +// $include-html-dropdown-classes: $include-html-classes; + +// We use these to controls height and width styles. +// $f-dropdown-max-width: 200px; +// $f-dropdown-height: auto; +// $f-dropdown-max-height: none; + +// Used for bottom position +// $f-dropdown-margin-top: 2px; + +// Used for right position +// $f-dropdown-margin-left: $f-dropdown-margin-top; + +// Used for left position +// $f-dropdown-margin-right: $f-dropdown-margin-top; + +// Used for top position +// $f-dropdown-margin-bottom: $f-dropdown-margin-top; + +// We use this to control the background color +// $f-dropdown-bg: #fff; + +// We use this to set the border styles for dropdowns. +// $f-dropdown-border-style: solid; +// $f-dropdown-border-width: 1px; +// $f-dropdown-border-color: scale-color(#fff, $lightness: -20%); + +// We use these to style the triangle pip. +// $f-dropdown-triangle-size: 6px; +// $f-dropdown-triangle-color: #fff; +// $f-dropdown-triangle-side-offset: 10px; + +// We use these to control styles for the list elements. +// $f-dropdown-list-style: none; +// $f-dropdown-font-color: #555; +// $f-dropdown-font-size: rem-calc(14); +// $f-dropdown-list-padding: rem-calc(5, 10); +// $f-dropdown-line-height: rem-calc(18); +// $f-dropdown-list-hover-bg: #eeeeee ; +// $dropdown-mobile-default-float: 0; + +// We use this to control the styles for when the dropdown has custom content. +// $f-dropdown-content-padding: rem-calc(20); + +// Dropdown Buttons + +// $include-html-button-classes: $include-html-classes; + +// We use these to set the color of the pip in dropdown buttons +// $dropdown-button-pip-color: #fff; +// $dropdown-button-pip-color-alt: #333; + +// $button-pip-tny: rem-calc(6); +// $button-pip-sml: rem-calc(7); +// $button-pip-med: rem-calc(9); +// $button-pip-lrg: rem-calc(11); + +// We use these to style tiny dropdown buttons +// $dropdown-button-padding-tny: $button-pip-tny * 7; +// $dropdown-button-pip-size-tny: $button-pip-tny; +// $dropdown-button-pip-opposite-tny: $button-pip-tny * 3; +// $dropdown-button-pip-top-tny: -$button-pip-tny / 2 + rem-calc(1); + +// We use these to style small dropdown buttons +// $dropdown-button-padding-sml: $button-pip-sml * 7; +// $dropdown-button-pip-size-sml: $button-pip-sml; +// $dropdown-button-pip-opposite-sml: $button-pip-sml * 3; +// $dropdown-button-pip-top-sml: -$button-pip-sml / 2 + rem-calc(1); + +// We use these to style medium dropdown buttons +// $dropdown-button-padding-med: $button-pip-med * 6 + rem-calc(3); +// $dropdown-button-pip-size-med: $button-pip-med - rem-calc(3); +// $dropdown-button-pip-opposite-med: $button-pip-med * 2.5; +// $dropdown-button-pip-top-med: -$button-pip-med / 2 + rem-calc(2); + +// We use these to style large dropdown buttons +// $dropdown-button-padding-lrg: $button-pip-lrg * 5 + rem-calc(3); +// $dropdown-button-pip-size-lrg: $button-pip-lrg - rem-calc(6); +// $dropdown-button-pip-opposite-lrg: $button-pip-lrg * 2.5; +// $dropdown-button-pip-top-lrg: -$button-pip-lrg / 2 + rem-calc(3); + +// Flex Video + +// $include-html-media-classes: $include-html-classes; + +// We use these to control video container padding and margins +// $flex-video-padding-top: rem-calc(25); +// $flex-video-padding-bottom: 67.5%; +// $flex-video-margin-bottom: rem-calc(16); + +// We use this to control widescreen bottom padding +// $flex-video-widescreen-padding-bottom: 56.34%; + +// Forms + +// $include-html-form-classes: $include-html-classes; + +// We use this to set the base for lots of form spacing and positioning styles +// $form-spacing: rem-calc(16); + +// We use these to style the labels in different ways +// $form-label-pointer: pointer; +// $form-label-font-size: rem-calc(14); +// $form-label-font-weight: normal; +// $form-label-line-height: 1.5; +// $form-label-font-color: scale-color(#000, $lightness: 30%); +// $form-label-small-transform: capitalize; +// $form-label-bottom-margin: 0; +// $input-font-family: inherit; +// $input-font-color: rgba(0,0,0,0.75); +// $input-font-size: rem-calc(14); +// $input-bg-color: #fff; +// $input-focus-bg-color: scale-color(#fff, $lightness: -2%); +// $input-border-color: scale-color(#fff, $lightness: -20%); +// $input-focus-border-color: scale-color(#fff, $lightness: -40%); +// $input-border-style: solid; +// $input-border-width: 1px; +// $input-border-radius: $global-radius; +// $input-disabled-bg: #ddd; +// $input-box-shadow: inset 0 1px 2px rgba(0,0,0,0.1); +// $input-include-glowing-effect: true; + +// We use these to style the fieldset border and spacing. +// $fieldset-border-style: solid; +// $fieldset-border-width: 1px; +// $fieldset-border-color: #ddd; +// $fieldset-padding: rem-calc(20); +// $fieldset-margin: rem-calc(18 0); + +// We use these to style the legends when you use them +// $legend-bg: #fff; +// $legend-font-weight: bold; +// $legend-padding: rem-calc(0 3); + +// We use these to style the prefix and postfix input elements +// $input-prefix-bg: scale-color(#fff, $lightness: -5%); +// $input-prefix-border-color: scale-color(#fff, $lightness: -20%); +// $input-prefix-border-size: 1px; +// $input-prefix-border-type: solid; +// $input-prefix-overflow: hidden; +// $input-prefix-font-color: #333; +// $input-prefix-font-color-alt: #fff; + +// We use these to style the error states for inputs and labels +// $input-error-message-padding: rem-calc(6 9 9); +// $input-error-message-top: -1px; +// $input-error-message-font-size: rem-calc(12); +// $input-error-message-font-weight: normal; +// $input-error-message-font-style: italic; +// $input-error-message-font-color: #fff; +// $input-error-message-font-color-alt: #333; + +// We use this to style the glowing effect of inputs when focused +// $glowing-effect-fade-time: 0.45s; +// $glowing-effect-color: $input-focus-border-color; + +// Select variables +// $select-bg-color: #fafafa; +// $select-hover-bg-color: scale-color($select-bg-color, $lightness: -3%); + +// Inline Lists + +// $include-html-inline-list-classes: $include-html-classes; + +// We use this to control the margins and padding of the inline list. +// $inline-list-top-margin: 0; +// $inline-list-opposite-margin: 0; +// $inline-list-bottom-margin: rem-calc(17); +// $inline-list-default-float-margin: rem-calc(-22); + +// $inline-list-padding: 0; + +// We use this to control the overflow of the inline list. +// $inline-list-overflow: hidden; + +// We use this to control the list items +// $inline-list-display: block; + +// We use this to control any elments within list items +// $inline-list-children-display: block; + +// Joyride + +// $include-html-joyride-classes: $include-html-classes; + +// Controlling default Joyride styles +// $joyride-tip-bg: #333; +// $joyride-tip-default-width: 300px; +// $joyride-tip-padding: rem-calc(18 20 24); +// $joyride-tip-border: solid 1px #555; +// $joyride-tip-radius: 4px; +// $joyride-tip-position-offset: 22px; + +// Here, we're setting the tip dont styles +// $joyride-tip-font-color: #fff; +// $joyride-tip-font-size: rem-calc(14); +// $joyride-tip-header-weight: bold; + +// This changes the nub size +// $joyride-tip-nub-size: 10px; + +// This adjusts the styles for the timer when its enabled +// $joyride-tip-timer-width: 50px; +// $joyride-tip-timer-height: 3px; +// $joyride-tip-timer-color: #666; + +// This changes up the styles for the close button +// $joyride-tip-close-color: #777; +// $joyride-tip-close-size: 24px; +// $joyride-tip-close-weight: normal; + +// When Joyride is filling the screen, we use this style for the bg +// $joyride-screenfill: rgba(0,0,0,0.5); + +// Keystrokes + +// $include-html-keystroke-classes: $include-html-classes; + +// We use these to control text styles. +// $keystroke-font: "Consolas", "Menlo", "Courier", monospace; +// $keystroke-font-size: inherit; +// $keystroke-font-color: #222; +// $keystroke-font-color-alt: #fff; +// $keystroke-function-factor: -7%; + +// We use this to control keystroke padding. +// $keystroke-padding: rem-calc(2 4 0); + +// We use these to control background and border styles. +// $keystroke-bg: scale-color(#fff, $lightness: $keystroke-function-factor); +// $keystroke-border-style: solid; +// $keystroke-border-width: 1px; +// $keystroke-border-color: scale-color($keystroke-bg, $lightness: $keystroke-function-factor); +// $keystroke-radius: $global-radius; + +// Labels + +// $include-html-label-classes: $include-html-classes; + +// We use these to style the labels +// $label-padding: rem-calc(4 8 6); +// $label-radius: $global-radius; + +// We use these to style the label text +// $label-font-sizing: rem-calc(11); +// $label-font-weight: normal; +// $label-font-color: #333; +// $label-font-color-alt: #fff; +// $label-font-family: $body-font-family; + +// Magellan + +// $include-html-magellan-classes: $include-html-classes; + +// $magellan-bg: #fff; +// $magellan-padding: 10px; + +// Off-canvas + +// $include-html-off-canvas-classes: $include-html-classes; + +// $tabbar-bg: #333; +// $tabbar-height: rem-calc(45); +// $tabbar-line-height: $tabbar-height; +// $tabbar-color: #fff; +// $tabbar-middle-padding: 0 rem-calc(10); + +// Off Canvas Divider Styles +// $tabbar-right-section-border: solid 1px scale-color($tabbar-bg, $lightness: 13%); +// $tabbar-left-section-border: solid 1px scale-color($tabbar-bg, $lightness: -50%); + +// Off Canvas Tab Bar Headers +// $tabbar-header-color: #fff; +// $tabbar-header-weight: bold; +// $tabbar-header-line-height: $tabbar-height; +// $tabbar-header-margin: 0; + +// Off Canvas Menu Variables +// $off-canvas-width: rem-calc(250); +// $off-canvas-bg: #333; + +// Off Canvas Menu List Variables +// $off-canvas-label-padding: 0.3rem rem-calc(15); +// $off-canvas-label-color: #999; +// $off-canvas-label-text-transform: uppercase; +// $off-canvas-label-font-weight: bold; +// $off-canvas-label-bg: #444; +// $off-canvas-label-border-top: 1px solid scale-color(#444, $lightness: 14%); +// $off-canvas-label-border-bottom: none; +// $off-canvas-label-margin:0; +// $off-canvas-link-padding: rem-calc(10, 15); +// $off-canvas-link-color: rgba(#fff, 0.7); +// $off-canvas-link-border-bottom: 1px solid scale-color($off-canvas-bg, $lightness: -25%); + +// Off Canvas Menu Icon Variables +// $tabbar-menu-icon-color: #fff; +// $tabbar-menu-icon-hover: scale-color($tabbar-menu-icon-color, $lightness: -30%); + +// $tabbar-menu-icon-text-indent: rem-calc(35); +// $tabbar-menu-icon-width: $tabbar-height; +// $tabbar-menu-icon-height: $tabbar-height; +// $tabbar-menu-icon-line-height: rem-calc(33); +// $tabbar-menu-icon-padding: 0; + +// $tabbar-hamburger-icon-width: rem-calc(16); +// $tabbar-hamburger-icon-left: false; +// $tabbar-hamburger-icon-top: false; +// $tapbar-hamburger-icon-thickness: 1px; +// $tapbar-hamburger-icon-gap: 6px; + +// Off Canvas Back-Link Overlay +// $off-canvas-overlay-transition: background 300ms ease; +// $off-canvas-overlay-cursor: pointer; +// $off-canvas-overlay-box-shadow: -4px 0 4px rgba(#000, 0.5), 4px 0 4px rgba(#000, 0.5); +// $off-canvas-overlay-background: rgba(#fff, 0.2); +// $off-canvas-overlay-background-hover: rgba(#fff, 0.05); + +// Transition Variables +// $menu-slide: "transform 500ms ease"; + +// Orbit + +// $include-html-orbit-classes: $include-html-classes; + +// We use these to control the caption styles +// $orbit-container-bg: none; +// $orbit-caption-bg: rgba(51,51,51, 0.8); +// $orbit-caption-font-color: #fff; +// $orbit-caption-font-size: rem-calc(14); +// $orbit-caption-position: "bottom"; // Supported values: "bottom", "under" +// $orbit-caption-padding: rem-calc(10 14); +// $orbit-caption-height: auto; + +// We use these to control the left/right nav styles +// $orbit-nav-bg: transparent; +// $orbit-nav-bg-hover: rgba(0,0,0,0.3); +// $orbit-nav-arrow-color: #fff; +// $orbit-nav-arrow-color-hover: #fff; + +// We use these to control the timer styles +// $orbit-timer-bg: rgba(255,255,255,0.3); +// $orbit-timer-show-progress-bar: true; + +// We use these to control the bullet nav styles +// $orbit-bullet-nav-color: #ccc; +// $orbit-bullet-nav-color-active: #999; +// $orbit-bullet-radius: rem-calc(9); + +// We use these to controls the style of slide numbers +// $orbit-slide-number-bg: rgba(0,0,0,0); +// $orbit-slide-number-font-color: #fff; +// $orbit-slide-number-padding: rem-calc(5); + +// We use these to controls the css animation +// $orbit-animation-speed: 500ms; +// $orbit-animation-ease: ease-in-out; + +// Hide controls on small +// $orbit-nav-hide-for-small: true; +// $orbit-bullet-hide-for-small: true; +// $orbit-timer-hide-for-small: true; + +// Graceful Loading Wrapper and preloader +// $wrapper-class: "slideshow-wrapper"; +// $preloader-class: "preloader"; + +// Pagination + +// $include-html-nav-classes: $include-html-classes; + +// We use these to control the pagination container +// $pagination-height: rem-calc(24); +// $pagination-margin: rem-calc(-5); + +// We use these to set the list-item properties +// $pagination-li-float: $default-float; +// $pagination-li-height: rem-calc(24); +// $pagination-li-font-color: #222; +// $pagination-li-font-size: rem-calc(14); +// $pagination-li-margin: rem-calc(5); + +// We use these for the pagination anchor links +// $pagination-link-pad: rem-calc(1 10 1); +// $pagination-link-font-color: #999; +// $pagination-link-active-bg: scale-color(#fff, $lightness: -10%); + +// We use these for disabled anchor links +// $pagination-link-unavailable-cursor: default; +// $pagination-link-unavailable-font-color: #999; +// $pagination-link-unavailable-bg-active: transparent; + +// We use these for currently selected anchor links +// $pagination-link-current-background: $primary-color; +// $pagination-link-current-font-color: #fff; +// $pagination-link-current-font-weight: bold; +// $pagination-link-current-cursor: default; +// $pagination-link-current-active-bg: $primary-color; + +// Panels + +// $include-html-panel-classes: $include-html-classes; + +// We use these to control the background and border styles +// $panel-bg: scale-color(#fff, $lightness: -5%); +// $panel-border-style: solid; +// $panel-border-size: 1px; + +// We use this % to control how much we darken things on hover +// $panel-function-factor: -11%; +// $panel-border-color: scale-color($panel-bg, $lightness: $panel-function-factor); + +// We use these to set default inner padding and bottom margin +// $panel-margin-bottom: rem-calc(20); +// $panel-padding: rem-calc(20); + +// We use these to set default font colors +// $panel-font-color: #333; +// $panel-font-color-alt: #fff; + +// $panel-header-adjust: true; +// $callout-panel-link-color: $primary-color; + +// Pricing Tables + +// $include-html-pricing-classes: $include-html-classes; + +// We use this to control the border color +// $price-table-border: solid 1px #ddd; + +// We use this to control the bottom margin of the pricing table +// $price-table-margin-bottom: rem-calc(20); + +// We use these to control the title styles +// $price-title-bg: #333; +// $price-title-padding: rem-calc(15 20); +// $price-title-align: center; +// $price-title-color: #eee; +// $price-title-weight: normal; +// $price-title-size: rem-calc(16); +// $price-title-font-family: $body-font-family; + +// We use these to control the price styles +// $price-money-bg: #f6f6f6 ; +// $price-money-padding: rem-calc(15 20); +// $price-money-align: center; +// $price-money-color: #333; +// $price-money-weight: normal; +// $price-money-size: rem-calc(32); +// $price-money-font-family: $body-font-family; + + +// We use these to control the description styles +// $price-bg: #fff; +// $price-desc-color: #777; +// $price-desc-padding: rem-calc(15); +// $price-desc-align: center; +// $price-desc-font-size: rem-calc(12); +// $price-desc-weight: normal; +// $price-desc-line-height: 1.4; +// $price-desc-bottom-border: dotted 1px #ddd; + +// We use these to control the list item styles +// $price-item-color: #333; +// $price-item-padding: rem-calc(15); +// $price-item-align: center; +// $price-item-font-size: rem-calc(14); +// $price-item-weight: normal; +// $price-item-bottom-border: dotted 1px #ddd; + +// We use these to control the CTA area styles +// $price-cta-bg: #fff; +// $price-cta-align: center; +// $price-cta-padding: rem-calc(20 20 0); + +// Progress Bar + +// $include-html-media-classes: $include-html-classes; + +// We use this to set the progress bar height +// $progress-bar-height: rem-calc(25); +// $progress-bar-color: #f6f6f6 ; + +// We use these to control the border styles +// $progress-bar-border-color: scale-color(#fff, $lightness: 20%); +// $progress-bar-border-size: 1px; +// $progress-bar-border-style: solid; +// $progress-bar-border-radius: $global-radius; + +// We use these to control the margin & padding +// $progress-bar-pad: rem-calc(2); +// $progress-bar-margin-bottom: rem-calc(10); + +// We use these to set the meter colors +// $progress-meter-color: $primary-color; +// $progress-meter-secondary-color: $secondary-color; +// $progress-meter-success-color: $success-color; +// $progress-meter-alert-color: $alert-color; + +// Reveal + +// $include-html-reveal-classes: $include-html-classes; + +// We use these to control the style of the reveal overlay. +// $reveal-overlay-bg: rgba(#000, .45); +// $reveal-overlay-bg-old: #000; + +// We use these to control the style of the modal itself. +// $reveal-modal-bg: #fff; +// $reveal-position-top: rem-calc(100); +// $reveal-default-width: 80%; +// $reveal-modal-padding: rem-calc(20); +// $reveal-box-shadow: 0 0 10px rgba(#000,.4); + +// We use these to style the reveal close button +// $reveal-close-font-size: rem-calc(40); +// $reveal-close-top: rem-calc(8); +// $reveal-close-side: rem-calc(11); +// $reveal-close-color: #aaa; +// $reveal-close-weight: bold; + +// We use this to set the default radius used throughout the core. +// $reveal-radius: $global-radius; +// $reveal-round: $global-rounded; + +// We use these to control the modal border +// $reveal-border-style: solid; +// $reveal-border-width: 1px; +// $reveal-border-color: #666; + +// $reveal-modal-class: "reveal-modal"; +// $close-reveal-modal-class: "close-reveal-modal"; + +// Side Nav + +// $include-html-nav-classes: $include-html-classes; + +// We use this to control padding. +// $side-nav-padding: rem-calc(14 0); + +// We use these to control list styles. +// $side-nav-list-type: none; +// $side-nav-list-position: inside; +// $side-nav-list-margin: rem-calc(0 0 7 0); + +// We use these to control link styles. +// $side-nav-link-color: $primary-color; +// $side-nav-link-color-active: scale-color($side-nav-link-color, $lightness: 30%); +// $side-nav-link-color-hover: scale-color($side-nav-link-color, $lightness: 30%); +// $side-nav-font-size: rem-calc(14); +// $side-nav-font-weight: normal; +// $side-nav-font-weight-active: $side-nav-font-weight; +// $side-nav-font-family: $body-font-family; +// $side-nav-active-font-family: $side-nav-font-family; + + + +// We use these to control border styles +// $side-nav-divider-size: 1px; +// $side-nav-divider-style: solid; +// $side-nav-divider-color: scale-color(#fff, $lightness: 10%); + +// Split Buttons + +// $include-html-button-classes: $include-html-classes; + +// We use these to control different shared styles for Split Buttons +// $split-button-function-factor: 10%; +// $split-button-pip-color: #fff; +// $split-button-pip-color-alt: #333; +// $split-button-active-bg-tint: rgba(0,0,0,0.1); + +// We use these to control tiny split buttons +// $split-button-padding-tny: $button-pip-tny * 10; +// $split-button-span-width-tny: $button-pip-tny * 6; +// $split-button-pip-size-tny: $button-pip-tny; +// $split-button-pip-top-tny: $button-pip-tny * 2; +// $split-button-pip-default-float-tny: rem-calc(-6); + +// We use these to control small split buttons +// $split-button-padding-sml: $button-pip-sml * 10; +// $split-button-span-width-sml: $button-pip-sml * 6; +// $split-button-pip-size-sml: $button-pip-sml; +// $split-button-pip-top-sml: $button-pip-sml * 1.5; +// $split-button-pip-default-float-sml: rem-calc(-6); + +// We use these to control medium split buttons +// $split-button-padding-med: $button-pip-med * 9; +// $split-button-span-width-med: $button-pip-med * 5.5; +// $split-button-pip-size-med: $button-pip-med - rem-calc(3); +// $split-button-pip-top-med: $button-pip-med * 1.5; +// $split-button-pip-default-float-med: rem-calc(-6); + +// We use these to control large split buttons +// $split-button-padding-lrg: $button-pip-lrg * 8; +// $split-button-span-width-lrg: $button-pip-lrg * 5; +// $split-button-pip-size-lrg: $button-pip-lrg - rem-calc(6); +// $split-button-pip-top-lrg: $button-pip-lrg + rem-calc(5); +// $split-button-pip-default-float-lrg: rem-calc(-6); + +// Sub Nav + +// $include-html-nav-classes: $include-html-classes; + +// We use these to control margin and padding +// $sub-nav-list-margin: rem-calc(-4 0 18); +// $sub-nav-list-padding-top: rem-calc(4); + +// We use this to control the definition +// $sub-nav-font-family: $body-font-family; +// $sub-nav-font-size: rem-calc(14); +// $sub-nav-font-color: #999; +// $sub-nav-font-weight: normal; +// $sub-nav-text-decoration: none; +// $sub-nav-padding: rem-calc(3 16); +// $sub-nav-border-radius: 3px; +// $sub-nav-font-color-hover: scale-color($sub-nav-font-color, $lightness: -25%); + + +// We use these to control the active item styles +// $sub-nav-active-font-weight: normal; +// $sub-nav-active-bg: $primary-color; +// $sub-nav-active-bg-hover: scale-color($sub-nav-active-bg, $lightness: -14%); +// $sub-nav-active-color: #fff; +// $sub-nav-active-padding: $sub-nav-padding; +// $sub-nav-active-cursor: default; + +// $sub-nav-item-divider: ""; +// $sub-nav-item-divider-margin: rem-calc(12); + +// +// SWITCH +// + +// $include-html-form-classes: $include-html-classes; + +// Controlling border styles and background colors for the switch container +// $switch-border-color: scale-color(#fff, $lightness: -20%); +// $switch-border-style: solid; +// $switch-border-width: 1px; +// $switch-bg: #fff; + +// We use these to control the switch heights for our default classes +// $switch-height-tny: 22px; +// $switch-height-sml: 28px; +// $switch-height-med: 36px; +// $switch-height-lrg: 44px; +// $switch-bottom-margin: rem-calc(20); + +// We use these to control default font sizes for our classes. +// $switch-font-size-tny: 11px; +// $switch-font-size-sml: 12px; +// $switch-font-size-med: 14px; +// $switch-font-size-lrg: 17px; +// $switch-label-side-padding: 6px; + +// We use these to style the switch-paddle +// $switch-paddle-bg: #fff; +// $switch-paddle-fade-to-color: scale-color($switch-paddle-bg, $lightness: -10%); +// $switch-paddle-border-color: scale-color($switch-paddle-bg, $lightness: -35%); +// $switch-paddle-border-width: 1px; +// $switch-paddle-border-style: solid; +// $switch-paddle-transition-speed: .1s; +// $switch-paddle-transition-ease: ease-out; +// $switch-positive-color: scale-color($success-color, $lightness: 94%); +// $switch-negative-color: #f5f5f5; + +// Outline Style for tabbing through switches +// $switch-label-outline: 1px dotted #888; + +// Tables + +// $include-html-table-classes: $include-html-classes; + +// These control the background color for the table and even rows +// $table-bg: #fff; +// $table-even-row-bg: #f9f9f9 ; + +// These control the table cell border style +// $table-border-style: solid; +// $table-border-size: 1px; +// $table-border-color: #ddd; + +// These control the table head styles +// $table-head-bg: #f5f5f5 ; +// $table-head-font-size: rem-calc(14); +// $table-head-font-color: #222; +// $table-head-font-weight: bold; +// $table-head-padding: rem-calc(8 10 10); + +// These control the row padding and font styles +// $table-row-padding: rem-calc(9 10); +// $table-row-font-size: rem-calc(14); +// $table-row-font-color: #222; +// $table-line-height: rem-calc(18); + +// These are for controlling the display and margin of tables +// $table-display: table-cell; +// $table-margin-bottom: rem-calc(20); + +// +// TABS +// + +// $include-html-tabs-classes: $include-html-classes; + +// $tabs-navigation-padding: rem-calc(16); +// $tabs-navigation-bg-color: #efefef ; +// $tabs-navigation-active-bg-color: #fff; +// $tabs-navigation-hover-bg-color: scale-color($tabs-navigation-bg-color, $lightness: -6%); +// $tabs-navigation-font-color: #222; +// $tabs-navigation-font-size: rem-calc(16); +// $tabs-navigation-font-family: $body-font-family; + +// $tabs-content-margin-bottom: rem-calc(24); +// $tabs-content-padding: $column-gutter/2; + +// $tabs-vertical-navigation-margin-bottom: 1.25rem; + +// +// THUMBNAILS +// + +// $include-html-media-classes: $include-html-classes; + +// We use these to control border styles +// $thumb-border-style: solid; +// $thumb-border-width: 4px; +// $thumb-border-color: #fff; +// $thumb-box-shadow: 0 0 0 1px rgba(#000,.2); +// $thumb-box-shadow-hover: 0 0 6px 1px rgba($primary-color,0.5); + +// Radius and transition speed for thumbs +// $thumb-radius: $global-radius; +// $thumb-transition-speed: 200ms; + +// +// TOOLTIPS +// + +// $include-html-tooltip-classes: $include-html-classes; + +// $has-tip-border-bottom: dotted 1px #ccc; +// $has-tip-font-weight: bold; +// $has-tip-font-color: #333; +// $has-tip-border-bottom-hover: dotted 1px scale-color($primary-color, $lightness: -55%); +// $has-tip-font-color-hover: $primary-color; +// $has-tip-cursor-type: help; + +// $tooltip-padding: rem-calc(12); +// $tooltip-bg: #333; +// $tooltip-font-size: rem-calc(14); +// $tooltip-font-weight: normal; +// $tooltip-font-color: #fff; +// $tooltip-line-height: 1.3; +// $tooltip-close-font-size: rem-calc(10); +// $tooltip-close-font-weight: normal; +// $tooltip-close-font-color: #777; +// $tooltip-font-size-sml: rem-calc(14); +// $tooltip-radius: $global-radius; +// $tooltip-rounded: $global-rounded; +// $tooltip-pip-size: 5px; + +// +// TOP BAR +// + +// $include-html-top-bar-classes: $include-html-classes; + +// Background color for the top bar +// $topbar-bg-color: #333; +// $topbar-bg: $topbar-bg-color; + +// Height and margin +// $topbar-height: 45px; +// $topbar-margin-bottom: 0; + +// Controlling the styles for the title in the top bar +// $topbar-title-weight: normal; +// $topbar-title-font-size: rem-calc(17); + +// Style the top bar dropdown elements +// $topbar-dropdown-bg: #333; +// $topbar-dropdown-link-color: #fff; +// $topbar-dropdown-link-bg: #333; +// $topbar-dropdown-link-weight: normal; +// $topbar-dropdown-toggle-size: 5px; +// $topbar-dropdown-toggle-color: #fff; +// $topbar-dropdown-toggle-alpha: 0.4; + +// Set the link colors and styles for top-level nav +// $topbar-link-color: #fff; +// $topbar-link-color-hover: #fff; +// $topbar-link-color-active: #fff; +// $topbar-link-color-active-hover: #fff; +// $topbar-link-weight: normal; +// $topbar-link-font-size: rem-calc(13); +// $topbar-link-hover-lightness: -10%; // Darken by 10% +// $topbar-link-bg: $topbar-bg; +// $topbar-link-bg-hover: #272727; +// $topbar-link-bg-active: $primary-color; +// $topbar-link-bg-active-hover: scale-color($primary-color, $lightness: -14%); +// $topbar-link-font-family: $body-font-family; +// $topbar-link-text-transform: none; +// $topbar-link-padding: $topbar-height / 3; + +// $topbar-button-font-size: 0.75rem; +// $topbar-button-top: 7px; + +// $topbar-dropdown-label-color: #777; +// $topbar-dropdown-label-text-transform: uppercase; +// $topbar-dropdown-label-font-weight: bold; +// $topbar-dropdown-label-font-size: rem-calc(10); +// $topbar-dropdown-label-bg: #333; + +// Top menu icon styles +// $topbar-menu-link-transform: uppercase; +// $topbar-menu-link-font-size: rem-calc(13); +// $topbar-menu-link-weight: bold; +// $topbar-menu-link-color: #fff; +// $topbar-menu-icon-color: #fff; +// $topbar-menu-link-color-toggled: #888; +// $topbar-menu-icon-color-toggled: #888; + +// Transitions and breakpoint styles +// $topbar-transition-speed: 300ms; +// Using rem-calc for the below breakpoint causes issues with top bar +// $topbar-breakpoint: #{lower-bound($medium-range)}; // Change to 9999px for always mobile layout +// $topbar-media-query: $medium-up; + +// Divider Styles +// $topbar-divider-border-bottom: solid 1px scale-color($topbar-bg-color, $lightness: 13%); +// $topbar-divider-border-top: solid 1px scale-color($topbar-bg-color, $lightness: -50%); + +// Sticky Class +// $topbar-sticky-class: ".sticky"; +// $topbar-arrows: true; //Set false to remove the triangle icon from the menu item + +// +// VISIBILITY CLASSES +// + +// $include-html-visibility-classes: $include-html-classes; +// $include-table-visibility-classes: true; +// $include-legacy-visibility-classes: true; + +// +// RANGE SLIDER +// + +// $include-html-range-slider-classes: $include-html-classes; + +// These variabels define the slider bar styles +// $range-slider-bar-width: 100%; +// $range-slider-bar-height: rem-calc(16); + +// $range-slider-bar-border-width: 1px; +// $range-slider-bar-border-style: solid; +// $range-slider-bar-border-color: #ddd; +// $range-slider-radius: $global-radius; +// $range-slider-round: $global-rounded; +// $range-slider-bar-bg-color: #fafafa; + +// Vertical bar styles +// $range-slider-vertical-bar-width: rem-calc(16); +// $range-slider-vertical-bar-height: rem-calc(200); + +// These variabels define the slider handle styles +// $range-slider-handle-width: rem-calc(32); +// $range-slider-handle-height: rem-calc(22); +// $range-slider-handle-position-top: rem-calc(-5); +// $range-slider-handle-bg-color: $primary-color; +// $range-slider-handle-border-width: 1px; +// $range-slider-handle-border-style: solid; +// $range-slider-handle-border-color: none; +// $range-slider-handle-radius: $global-radius; +// $range-slider-handle-round: $global-rounded; +// $range-slider-handle-bg-hover-color: scale-color($primary-color, $lightness: -12%); +// $range-slider-handle-cursor: pointer; diff --git a/app/styles/_foundation.scss b/app/styles/_foundation.scss new file mode 100644 index 0000000..0be6334 --- /dev/null +++ b/app/styles/_foundation.scss @@ -0,0 +1,46 @@ +// Foundation by ZURB +// foundation.zurb.com +// Licensed under MIT Open Source + +// Make sure the charset is set appropriately +@charset "UTF-8"; + +// Behold, here are all the Foundation components. +@import + "../bower_components/foundation/scss/foundation/components/grid", + //"../bower_components/foundation/scss/foundation/components/accordion", + //"../bower_components/foundation/scss/foundation/components/alert-boxes", + //"../bower_components/foundation/scss/foundation/components/block-grid", + //"../bower_components/foundation/scss/foundation/components/breadcrumbs", + //"../bower_components/foundation/scss/foundation/components/button-groups", + "../bower_components/foundation/scss/foundation/components/buttons" + //"../bower_components/foundation/scss/foundation/components/clearing", + //"../bower_components/foundation/scss/foundation/components/dropdown", + //"../bower_components/foundation/scss/foundation/components/dropdown-buttons", + //"../bower_components/foundation/scss/foundation/components/flex-video", + //"../bower_components/foundation/scss/foundation/components/forms", + //"../bower_components/foundation/scss/foundation/components/inline-lists", + //"../bower_components/foundation/scss/foundation/components/joyride", + //"../bower_components/foundation/scss/foundation/components/keystrokes", + //"../bower_components/foundation/scss/foundation/components/labels", + //"../bower_components/foundation/scss/foundation/components/magellan", + //"../bower_components/foundation/scss/foundation/components/orbit", + //"../bower_components/foundation/scss/foundation/components/pagination", + //"../bower_components/foundation/scss/foundation/components/panels", + //"../bower_components/foundation/scss/foundation/components/pricing-tables", + //"../bower_components/foundation/scss/foundation/components/progress-bars", + //"../bower_components/foundation/scss/foundation/components/range-slider", + //"../bower_components/foundation/scss/foundation/components/reveal", + //"../bower_components/foundation/scss/foundation/components/side-nav", + //"../bower_components/foundation/scss/foundation/components/split-buttons", + //"../bower_components/foundation/scss/foundation/components/sub-nav", + //"../bower_components/foundation/scss/foundation/components/switch", + //"../bower_components/foundation/scss/foundation/components/tables", + //"../bower_components/foundation/scss/foundation/components/tabs", + //"../bower_components/foundation/scss/foundation/components/thumbs", + //"../bower_components/foundation/scss/foundation/components/tooltips", + //"../bower_components/foundation/scss/foundation/components/top-bar", + //"../bower_components/foundation/scss/foundation/components/type", + //"../bower_components/foundation/scss/foundation/components/offcanvas", + //"../bower_components/foundation/scss/foundation/components/visibility" + ; diff --git a/app/styles/main.scss b/app/styles/main.scss new file mode 100644 index 0000000..f033a01 --- /dev/null +++ b/app/styles/main.scss @@ -0,0 +1,66 @@ +// bower:scss +// endbower + +@import + "foundation-settings", + "foundation"; + +body { + background-color: #000; + background-image:url('../images/konsert.jpg'); + background-size:100% auto; + background-repeat:no-repeat; + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size:24px; + line-height:1.5; + color: #333; +} + +.eye-catcher { + margin-top:7rem; +} + +.interest { + @include grid-row(); + background:rgba(255,255,255,0.55); + border-radius:0.6rem; + + .intro, + .sign-up { + @include grid-column(6); + } + + .intro { + font-size:1.2rem; + + h1 { + margin-bottom:0; + } + + h1 + p { + display:inline; + font-size:1.25rem; + } + } + + .sign-up { + font-size:1.5rem; + position:relative; + + input { + font-size:1.5rem; + padding:0.3rem; + border-radius:0.4rem; + border:0 none; + } + } +} + +footer { + color:rgba(255,255,255,0.65); + font-size:1rem; + position:fixed; + bottom:0; + right:0; + text-align:right; +} diff --git a/bower.json b/bower.json new file mode 100644 index 0000000..ca2d8b8 --- /dev/null +++ b/bower.json @@ -0,0 +1,9 @@ +{ + "name": "alumni", + "private": true, + "dependencies": { + "modernizr": "~2.6.2", + "jquery": "~1.11.0" + }, + "devDependencies": {} +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..3c002a4 --- /dev/null +++ b/package.json @@ -0,0 +1,34 @@ +{ + "name": "alumni", + "version": "0.0.0", + "dependencies": {}, + "devDependencies": { + "grunt": "~0.4.1", + "grunt-contrib-copy": "~0.5.0", + "grunt-contrib-concat": "~0.3.0", + "grunt-contrib-uglify": "~0.4.0", + "grunt-contrib-sass": "~0.7.3", + "grunt-contrib-jshint": "~0.9.2", + "grunt-contrib-cssmin": "~0.9.0", + "grunt-contrib-connect": "~0.7.1", + "grunt-contrib-clean": "~0.5.0", + "grunt-contrib-htmlmin": "~0.2.0", + "grunt-bower-install": "~1.4.0", + "grunt-contrib-imagemin": "~0.6.0", + "grunt-contrib-watch": "~0.6.1", + "grunt-rev": "~0.1.0", + "grunt-autoprefixer": "~0.7.2", + "grunt-usemin": "~2.1.0", + "grunt-mocha": "~0.4.10", + "grunt-modernizr": "~0.5.2", + "grunt-newer": "~0.7.0", + "grunt-svgmin": "~0.4.0", + "grunt-concurrent": "~0.5.0", + "load-grunt-tasks": "~0.4.0", + "time-grunt": "~0.3.1", + "jshint-stylish": "~0.1.5" + }, + "engines": { + "node": ">=0.10.0" + } +} diff --git a/test/.bowerrc b/test/.bowerrc new file mode 100644 index 0000000..44491d3 --- /dev/null +++ b/test/.bowerrc @@ -0,0 +1,3 @@ +{ + "directory": "bower_components" +} diff --git a/test/bower.json b/test/bower.json new file mode 100644 index 0000000..879e75f --- /dev/null +++ b/test/bower.json @@ -0,0 +1,9 @@ +{ + "name": "alumni", + "private": true, + "dependencies": { + "chai": "~1.8.0", + "mocha": "~1.14.0" + }, + "devDependencies": {} +} diff --git a/test/index.html b/test/index.html new file mode 100644 index 0000000..d18b7d3 --- /dev/null +++ b/test/index.html @@ -0,0 +1,27 @@ + + + + + + Mocha Spec Runner + + + +
+ + + + + + + + + + + + + diff --git a/test/spec/test.js b/test/spec/test.js new file mode 100644 index 0000000..adfd614 --- /dev/null +++ b/test/spec/test.js @@ -0,0 +1,13 @@ +/* global describe, it */ + +(function () { + 'use strict'; + + describe('Give it some context', function () { + describe('maybe a bit more context here', function () { + it('should run here few assertions', function () { + + }); + }); + }); +})();