diff --git a/app/assets/javascripts/application.js.coffee b/app/assets/javascripts/application.js.coffee index 0466843..1260d60 100644 --- a/app/assets/javascripts/application.js.coffee +++ b/app/assets/javascripts/application.js.coffee @@ -14,4 +14,5 @@ #= require jquery_ujs #= require turbolinks #= require bootstrap +#= require hierapolis #= require_tree . \ No newline at end of file diff --git a/app/assets/stylesheets/application.css.sass b/app/assets/stylesheets/application.css.sass index aa0877b..778d277 100644 --- a/app/assets/stylesheets/application.css.sass +++ b/app/assets/stylesheets/application.css.sass @@ -11,37 +11,4 @@ *= require_self *= require_tree . -@import "compass" -@import "bootstrap" -@import "bootstrap-responsive" - -body - padding-top: 20px - padding-bottom: 40px - -/* Custom container - -.container-narrow - margin: 0 auto - max-width: 700px - > hr - margin: 30px 0 - -/* Main marketing message and sign up button - -.jumbotron - margin: 60px 0 - text-align: center - h1 - font-size: 72px - line-height: 1 - .btn - font-size: 21px - padding: 14px 24px - -/* Supporting marketing content - -.marketing - margin: 60px 0 - p + h4 - margin-top: 28px \ No newline at end of file +@import 'hierapolis' \ No newline at end of file diff --git a/vendor/assets/fonts/glyphiconshalflings-regular.eot b/vendor/assets/fonts/glyphiconshalflings-regular.eot new file mode 100755 index 0000000..bd59ccd Binary files /dev/null and b/vendor/assets/fonts/glyphiconshalflings-regular.eot differ diff --git a/vendor/assets/fonts/glyphiconshalflings-regular.otf b/vendor/assets/fonts/glyphiconshalflings-regular.otf new file mode 100755 index 0000000..b058f1c Binary files /dev/null and b/vendor/assets/fonts/glyphiconshalflings-regular.otf differ diff --git a/vendor/assets/fonts/glyphiconshalflings-regular.svg b/vendor/assets/fonts/glyphiconshalflings-regular.svg new file mode 100755 index 0000000..0fb4587 --- /dev/null +++ b/vendor/assets/fonts/glyphiconshalflings-regular.svg @@ -0,0 +1,175 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/vendor/assets/fonts/glyphiconshalflings-regular.ttf b/vendor/assets/fonts/glyphiconshalflings-regular.ttf new file mode 100755 index 0000000..c63c068 Binary files /dev/null and b/vendor/assets/fonts/glyphiconshalflings-regular.ttf differ diff --git a/vendor/assets/fonts/glyphiconshalflings-regular.woff b/vendor/assets/fonts/glyphiconshalflings-regular.woff new file mode 100755 index 0000000..4c778ff Binary files /dev/null and b/vendor/assets/fonts/glyphiconshalflings-regular.woff differ diff --git a/vendor/assets/images/apple-touch-icon-114x114-precomposed.png b/vendor/assets/images/apple-touch-icon-114x114-precomposed.png new file mode 100755 index 0000000..0fdf60e Binary files /dev/null and b/vendor/assets/images/apple-touch-icon-114x114-precomposed.png differ diff --git a/vendor/assets/images/apple-touch-icon-144x144-precomposed.png b/vendor/assets/images/apple-touch-icon-144x144-precomposed.png new file mode 100755 index 0000000..257c77a Binary files /dev/null and b/vendor/assets/images/apple-touch-icon-144x144-precomposed.png differ diff --git a/vendor/assets/images/apple-touch-icon-57x57-precomposed.png b/vendor/assets/images/apple-touch-icon-57x57-precomposed.png new file mode 100755 index 0000000..99b6054 Binary files /dev/null and b/vendor/assets/images/apple-touch-icon-57x57-precomposed.png differ diff --git a/vendor/assets/images/apple-touch-icon-72x72-precomposed.png b/vendor/assets/images/apple-touch-icon-72x72-precomposed.png new file mode 100755 index 0000000..8345cc3 Binary files /dev/null and b/vendor/assets/images/apple-touch-icon-72x72-precomposed.png differ diff --git a/vendor/assets/images/apple-touch-icon-precomposed.png b/vendor/assets/images/apple-touch-icon-precomposed.png new file mode 100755 index 0000000..99b6054 Binary files /dev/null and b/vendor/assets/images/apple-touch-icon-precomposed.png differ diff --git a/vendor/assets/images/apple-touch-icon.png b/vendor/assets/images/apple-touch-icon.png new file mode 100755 index 0000000..99b6054 Binary files /dev/null and b/vendor/assets/images/apple-touch-icon.png differ diff --git a/vendor/assets/images/favicon.ico b/vendor/assets/images/favicon.ico new file mode 100755 index 0000000..be74abd Binary files /dev/null and b/vendor/assets/images/favicon.ico differ diff --git a/vendor/assets/images/sprite.png b/vendor/assets/images/sprite.png new file mode 100644 index 0000000..fad2c4a Binary files /dev/null and b/vendor/assets/images/sprite.png differ diff --git a/vendor/assets/javascripts/hierapolis.js.coffee b/vendor/assets/javascripts/hierapolis.js.coffee new file mode 100644 index 0000000..dcf666d --- /dev/null +++ b/vendor/assets/javascripts/hierapolis.js.coffee @@ -0,0 +1,31 @@ +#= require bootstrap +#= require_tree + +$(document).ready -> + + # Enable Tips & Popovers + $('[data-toggle=tooltip]').tooltip() + $('[data-toggle=popover]').popover() + + # Eable Dropdowns + $('.dropdown-toggle').dropdown() + $('.dropdown.hover').hover (-> + $(this).find('.dropdown-menu').stop(true, true).fadeIn() + ), -> + $(this).find('.dropdown-menu').stop(true, true).delay(100).fadeOut() + + # Dock dropdown fix + $('#dock li.launcher').each -> + $(this).find('.dropdown-menu').css 'top', $(this).position().top + 33 + + $('#toggle').click -> + $('#dock .launcher a').toggle() + $('#dock li.launcher').each -> + $(this).find('.dropdown-menu').css 'top', $(this).position().top + 33 + + # Enable toolbar tooltips + $('[data-toggle=toolbar-tooltip]').tooltip + placement: 'bottom' + + # Enable knob inputs + $('.knob').knob() diff --git a/vendor/assets/javascripts/vendor/html5shiv.js b/vendor/assets/javascripts/vendor/html5shiv.js new file mode 100755 index 0000000..dcf351c --- /dev/null +++ b/vendor/assets/javascripts/vendor/html5shiv.js @@ -0,0 +1,8 @@ +/* + HTML5 Shiv v3.6.2 | @afarkas @jdalton @jon_neal @rem | MIT/GPL2 Licensed +*/ +(function(l,f){function m(){var a=e.elements;return"string"==typeof a?a.split(" "):a}function i(a){var b=n[a[o]];b||(b={},h++,a[o]=h,n[h]=b);return b}function p(a,b,c){b||(b=f);if(g)return b.createElement(a);c||(c=i(b));b=c.cache[a]?c.cache[a].cloneNode():r.test(a)?(c.cache[a]=c.createElem(a)).cloneNode():c.createElem(a);return b.canHaveChildren&&!s.test(a)?c.frag.appendChild(b):b}function t(a,b){if(!b.cache)b.cache={},b.createElem=a.createElement,b.createFrag=a.createDocumentFragment,b.frag=b.createFrag(); +a.createElement=function(c){return!e.shivMethods?b.createElem(c):p(c,a,b)};a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+m().join().replace(/\w+/g,function(a){b.createElem(a);b.frag.createElement(a);return'c("'+a+'")'})+");return n}")(e,b.frag)}function q(a){a||(a=f);var b=i(a);if(e.shivCSS&&!j&&!b.hasCSS){var c,d=a;c=d.createElement("p");d=d.getElementsByTagName("head")[0]||d.documentElement;c.innerHTML="x"; +c=d.insertBefore(c.lastChild,d.firstChild);b.hasCSS=!!c}g||t(a,b);return a}var k=l.html5||{},s=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,r=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,j,o="_html5shiv",h=0,n={},g;(function(){try{var a=f.createElement("a");a.innerHTML="";j="hidden"in a;var b;if(!(b=1==a.childNodes.length)){f.createElement("a");var c=f.createDocumentFragment();b="undefined"==typeof c.cloneNode|| +"undefined"==typeof c.createDocumentFragment||"undefined"==typeof c.createElement}g=b}catch(d){g=j=!0}})();var e={elements:k.elements||"abbr article aside audio bdi canvas data datalist details figcaption figure footer header hgroup main mark meter nav output progress section summary time video",version:"3.6.2",shivCSS:!1!==k.shivCSS,supportsUnknownElements:g,shivMethods:!1!==k.shivMethods,type:"default",shivDocument:q,createElement:p,createDocumentFragment:function(a,b){a||(a=f);if(g)return a.createDocumentFragment(); +for(var b=b||i(a),c=b.frag.cloneNode(),d=0,e=m(),h=e.length;d + * k.o.call(this); + * + */ + k.o = function () { + var s = this; + + this.o = null; // array of options + this.$ = null; // jQuery wrapped element + this.i = null; // mixed HTMLInputElement or array of HTMLInputElement + this.g = null; // 2D graphics context for 'pre-rendering' + this.v = null; // value ; mixed array or integer + this.cv = null; // change value ; not commited value + this.x = 0; // canvas x position + this.y = 0; // canvas y position + this.$c = null; // jQuery canvas element + this.c = null; // rendered canvas context + this.t = 0; // touches index + this.isInit = false; + this.fgColor = null; // main color + this.pColor = null; // previous color + this.dH = null; // draw hook + this.cH = null; // change hook + this.eH = null; // cancel hook + this.rH = null; // release hook + this.scale = 1; // scale factor + + this.run = function () { + var cf = function (e, conf) { + var k; + for (k in conf) { + s.o[k] = conf[k]; + } + s.init(); + s._configure() + ._draw(); + }; + + if(this.$.data('kontroled')) return; + this.$.data('kontroled', true); + + this.extend(); + this.o = $.extend( + { + // Config + min : this.$.data('min') || 0, + max : this.$.data('max') || 100, + stopper : true, + readOnly : this.$.data('readonly'), + + // UI + cursor : (this.$.data('cursor') === true && 30) + || this.$.data('cursor') + || 0, + thickness : this.$.data('thickness') || 0.35, + lineCap : this.$.data('linecap') || 'butt', + width : this.$.data('width') || 200, + height : this.$.data('height') || 200, + displayInput : this.$.data('displayinput') == null || this.$.data('displayinput'), + displayPrevious : this.$.data('displayprevious'), + fgColor : this.$.data('fgcolor') || '#87CEEB', + inputColor: this.$.data('inputcolor') || this.$.data('fgcolor') || '#87CEEB', + inline : false, + step : this.$.data('step') || 1, + + // Hooks + draw : null, // function () {} + change : null, // function (value) {} + cancel : null, // function () {} + release : null, // function (value) {} + error : null // function () {} + }, this.o + ); + + // routing value + if(this.$.is('fieldset')) { + + // fieldset = array of integer + this.v = {}; + this.i = this.$.find('input') + this.i.each(function(k) { + var $this = $(this); + s.i[k] = $this; + s.v[k] = $this.val(); + + $this.bind( + 'change' + , function () { + var val = {}; + val[k] = $this.val(); + s.val(val); + } + ); + }); + this.$.find('legend').remove(); + + } else { + // input = integer + this.i = this.$; + this.v = this.$.val(); + (this.v == '') && (this.v = this.o.min); + + this.$.bind( + 'change' + , function () { + s.val(s._validate(s.$.val())); + } + ); + } + + (!this.o.displayInput) && this.$.hide(); + + this.$c = $(''); + + this.c = this.$c[0].getContext? this.$c[0].getContext('2d') : null; + + if (!this.c) { + this.o.error && this.o.error(); + return; + } + + this.$ + .wrap($('
')) + .before(this.$c); + + this.scale = (window.devicePixelRatio || 1) / + ( + this.c.webkitBackingStorePixelRatio || + this.c.mozBackingStorePixelRatio || + this.c.msBackingStorePixelRatio || + this.c.oBackingStorePixelRatio || + this.c.backingStorePixelRatio || 1 + ); + if (this.scale !== 1) { + this.$c[0].width = this.$c[0].width * this.scale; + this.$c[0].height = this.$c[0].height * this.scale; + this.$c.width(this.o.width); + this.$c.height(this.o.height); + } + + if (this.v instanceof Object) { + this.cv = {}; + this.copy(this.v, this.cv); + } else { + this.cv = this.v; + } + + this.$ + .bind("configure", cf) + .parent() + .bind("configure", cf); + + this._listen() + ._configure() + ._xy() + .init(); + + this.isInit = true; + + this._draw(); + + return this; + }; + + this._draw = function () { + + // canvas pre-rendering + var d = true, + c = document.createElement('canvas'); + + c.width = s.o.width * s.scale; + c.height = s.o.height * s.scale; + + s.g = c.getContext('2d'); + + s.clear(); + + s.dH + && (d = s.dH()); + + (d !== false) && s.draw(); + + s.c.drawImage(c, 0, 0); + c = null; + }; + + this._touch = function (e) { + + var touchMove = function (e) { + + var v = s.xy2val( + e.originalEvent.touches[s.t].pageX, + e.originalEvent.touches[s.t].pageY + ); + + if (v == s.cv) return; + + if ( + s.cH + && (s.cH(v) === false) + ) return; + + + s.change(s._validate(v)); + s._draw(); + }; + + // get touches index + this.t = k.c.t(e); + + // First touch + touchMove(e); + + // Touch events listeners + k.c.d + .bind("touchmove.k", touchMove) + .bind( + "touchend.k" + , function () { + k.c.d.unbind('touchmove.k touchend.k'); + + if ( + s.rH + && (s.rH(s.cv) === false) + ) return; + + s.val(s.cv); + } + ); + + return this; + }; + + this._mouse = function (e) { + + var mouseMove = function (e) { + var v = s.xy2val(e.pageX, e.pageY); + if (v == s.cv) return; + + if ( + s.cH + && (s.cH(v) === false) + ) return; + + s.change(s._validate(v)); + s._draw(); + }; + + // First click + mouseMove(e); + + // Mouse events listeners + k.c.d + .bind("mousemove.k", mouseMove) + .bind( + // Escape key cancel current change + "keyup.k" + , function (e) { + if (e.keyCode === 27) { + k.c.d.unbind("mouseup.k mousemove.k keyup.k"); + + if ( + s.eH + && (s.eH() === false) + ) return; + + s.cancel(); + } + } + ) + .bind( + "mouseup.k" + , function (e) { + k.c.d.unbind('mousemove.k mouseup.k keyup.k'); + + if ( + s.rH + && (s.rH(s.cv) === false) + ) return; + + s.val(s.cv); + } + ); + + return this; + }; + + this._xy = function () { + var o = this.$c.offset(); + this.x = o.left; + this.y = o.top; + return this; + }; + + this._listen = function () { + + if (!this.o.readOnly) { + this.$c + .bind( + "mousedown" + , function (e) { + e.preventDefault(); + s._xy()._mouse(e); + } + ) + .bind( + "touchstart" + , function (e) { + e.preventDefault(); + s._xy()._touch(e); + } + ); + this.listen(); + } else { + this.$.attr('readonly', 'readonly'); + } + + return this; + }; + + this._configure = function () { + + // Hooks + if (this.o.draw) this.dH = this.o.draw; + if (this.o.change) this.cH = this.o.change; + if (this.o.cancel) this.eH = this.o.cancel; + if (this.o.release) this.rH = this.o.release; + + if (this.o.displayPrevious) { + this.pColor = this.h2rgba(this.o.fgColor, "0.4"); + this.fgColor = this.h2rgba(this.o.fgColor, "0.6"); + } else { + this.fgColor = this.o.fgColor; + } + + return this; + }; + + this._clear = function () { + this.$c[0].width = this.$c[0].width; + }; + + this._validate = function(v) { + return (~~ (((v < 0) ? -0.5 : 0.5) + (v/this.o.step))) * this.o.step; + }; + + // Abstract methods + this.listen = function () {}; // on start, one time + this.extend = function () {}; // each time configure triggered + this.init = function () {}; // each time configure triggered + this.change = function (v) {}; // on change + this.val = function (v) {}; // on release + this.xy2val = function (x, y) {}; // + this.draw = function () {}; // on change / on release + this.clear = function () { this._clear(); }; + + // Utils + this.h2rgba = function (h, a) { + var rgb; + h = h.substring(1,7) + rgb = [parseInt(h.substring(0,2),16) + ,parseInt(h.substring(2,4),16) + ,parseInt(h.substring(4,6),16)]; + return "rgba(" + rgb[0] + "," + rgb[1] + "," + rgb[2] + "," + a + ")"; + }; + + this.copy = function (f, t) { + for (var i in f) { t[i] = f[i]; } + }; + }; + + + /** + * k.Dial + */ + k.Dial = function () { + k.o.call(this); + + this.startAngle = null; + this.xy = null; + this.radius = null; + this.lineWidth = null; + this.cursorExt = null; + this.w2 = null; + this.PI2 = 2*Math.PI; + + this.extend = function () { + this.o = $.extend( + { + bgColor : this.$.data('bgcolor') || '#EEEEEE', + angleOffset : this.$.data('angleoffset') || 0, + angleArc : this.$.data('anglearc') || 360, + inline : true + }, this.o + ); + }; + + this.val = function (v) { + if (null != v) { + this.cv = this.o.stopper ? max(min(v, this.o.max), this.o.min) : v; + this.v = this.cv; + this.$.val(this.v); + this._draw(); + } else { + return this.v; + } + }; + + this.xy2val = function (x, y) { + var a, ret; + + a = Math.atan2( + x - (this.x + this.w2) + , - (y - this.y - this.w2) + ) - this.angleOffset; + + if(this.angleArc != this.PI2 && (a < 0) && (a > -0.5)) { + // if isset angleArc option, set to min if .5 under min + a = 0; + } else if (a < 0) { + a += this.PI2; + } + + ret = ~~ (0.5 + (a * (this.o.max - this.o.min) / this.angleArc)) + + this.o.min; + + this.o.stopper + && (ret = max(min(ret, this.o.max), this.o.min)); + + return ret; + }; + + this.listen = function () { + // bind MouseWheel + var s = this, + mw = function (e) { + e.preventDefault(); + var ori = e.originalEvent + ,deltaX = ori.detail || ori.wheelDeltaX + ,deltaY = ori.detail || ori.wheelDeltaY + ,v = parseInt(s.$.val()) + (deltaX>0 || deltaY>0 ? s.o.step : deltaX<0 || deltaY<0 ? -s.o.step : 0); + + if ( + s.cH + && (s.cH(v) === false) + ) return; + + s.val(v); + } + , kval, to, m = 1, kv = {37:-s.o.step, 38:s.o.step, 39:s.o.step, 40:-s.o.step}; + + this.$ + .bind( + "keydown" + ,function (e) { + var kc = e.keyCode; + + // numpad support + if(kc >= 96 && kc <= 105) { + kc = e.keyCode = kc - 48; + } + + kval = parseInt(String.fromCharCode(kc)); + + if (isNaN(kval)) { + + (kc !== 13) // enter + && (kc !== 8) // bs + && (kc !== 9) // tab + && (kc !== 189) // - + && e.preventDefault(); + + // arrows + if ($.inArray(kc,[37,38,39,40]) > -1) { + e.preventDefault(); + + var v = parseInt(s.$.val()) + kv[kc] * m; + + s.o.stopper + && (v = max(min(v, s.o.max), s.o.min)); + + s.change(v); + s._draw(); + + // long time keydown speed-up + to = window.setTimeout( + function () { m*=2; } + ,30 + ); + } + } + } + ) + .bind( + "keyup" + ,function (e) { + if (isNaN(kval)) { + if (to) { + window.clearTimeout(to); + to = null; + m = 1; + s.val(s.$.val()); + } + } else { + // kval postcond + (s.$.val() > s.o.max && s.$.val(s.o.max)) + || (s.$.val() < s.o.min && s.$.val(s.o.min)); + } + + } + ); + + this.$c.bind("mousewheel DOMMouseScroll", mw); + this.$.bind("mousewheel DOMMouseScroll", mw) + }; + + this.init = function () { + + if ( + this.v < this.o.min + || this.v > this.o.max + ) this.v = this.o.min; + + this.$.val(this.v); + this.w2 = this.o.width / 2; + this.cursorExt = this.o.cursor / 100; + this.xy = this.w2 * this.scale; + this.lineWidth = this.xy * this.o.thickness; + this.lineCap = this.o.lineCap; + this.radius = this.xy - this.lineWidth / 2; + + this.o.angleOffset + && (this.o.angleOffset = isNaN(this.o.angleOffset) ? 0 : this.o.angleOffset); + + this.o.angleArc + && (this.o.angleArc = isNaN(this.o.angleArc) ? this.PI2 : this.o.angleArc); + + // deg to rad + this.angleOffset = this.o.angleOffset * Math.PI / 180; + this.angleArc = this.o.angleArc * Math.PI / 180; + + // compute start and end angles + this.startAngle = 1.5 * Math.PI + this.angleOffset; + this.endAngle = 1.5 * Math.PI + this.angleOffset + this.angleArc; + + var s = max( + String(Math.abs(this.o.max)).length + , String(Math.abs(this.o.min)).length + , 2 + ) + 2; + + this.o.displayInput + && this.i.css({ + 'width' : ((this.o.width / 2 + 4) >> 0) + 'px' + ,'height' : ((this.o.width / 3) >> 0) + 'px' + ,'position' : 'absolute' + ,'vertical-align' : 'middle' + ,'margin-top' : ((this.o.width / 3) >> 0) + 'px' + ,'margin-left' : '-' + ((this.o.width * 3 / 4 + 2) >> 0) + 'px' + ,'border' : 0 + ,'background' : 'none' + ,'font' : 'bold ' + ((this.o.width / s) >> 0) + 'px Arial' + ,'text-align' : 'center' + ,'color' : this.o.inputColor || this.o.fgColor + ,'padding' : '0px' + ,'-webkit-appearance': 'none' + }) + || this.i.css({ + 'width' : '0px' + ,'visibility' : 'hidden' + }); + }; + + this.change = function (v) { + this.cv = v; + this.$.val(v); + }; + + this.angle = function (v) { + return (v - this.o.min) * this.angleArc / (this.o.max - this.o.min); + }; + + this.draw = function () { + + var c = this.g, // context + a = this.angle(this.cv) // Angle + , sat = this.startAngle // Start angle + , eat = sat + a // End angle + , sa, ea // Previous angles + , r = 1; + + c.lineWidth = this.lineWidth; + + c.lineCap = this.lineCap; + + this.o.cursor + && (sat = eat - this.cursorExt) + && (eat = eat + this.cursorExt); + + c.beginPath(); + c.strokeStyle = this.o.bgColor; + c.arc(this.xy, this.xy, this.radius, this.endAngle, this.startAngle, true); + c.stroke(); + + if (this.o.displayPrevious) { + ea = this.startAngle + this.angle(this.v); + sa = this.startAngle; + this.o.cursor + && (sa = ea - this.cursorExt) + && (ea = ea + this.cursorExt); + + c.beginPath(); + c.strokeStyle = this.pColor; + c.arc(this.xy, this.xy, this.radius, sa, ea, false); + c.stroke(); + r = (this.cv == this.v); + } + + c.beginPath(); + c.strokeStyle = r ? this.o.fgColor : this.fgColor ; + c.arc(this.xy, this.xy, this.radius, sat, eat, false); + c.stroke(); + }; + + this.cancel = function () { + this.val(this.v); + }; + }; + + $.fn.dial = $.fn.knob = function (o) { + return this.each( + function () { + var d = new k.Dial(); + d.o = o; + d.$ = $(this); + d.run(); + } + ).parent(); + }; + +})(jQuery); \ No newline at end of file diff --git a/vendor/assets/javascripts/vendor/plugins.js b/vendor/assets/javascripts/vendor/plugins.js new file mode 100755 index 0000000..728680b --- /dev/null +++ b/vendor/assets/javascripts/vendor/plugins.js @@ -0,0 +1,24 @@ +// Avoid `console` errors in browsers that lack a console. +(function() { + var method; + var noop = function () {}; + var methods = [ + 'assert', 'clear', 'count', 'debug', 'dir', 'dirxml', 'error', + 'exception', 'group', 'groupCollapsed', 'groupEnd', 'info', 'log', + 'markTimeline', 'profile', 'profileEnd', 'table', 'time', 'timeEnd', + 'timeStamp', 'trace', 'warn' + ]; + var length = methods.length; + var console = (window.console = window.console || {}); + + while (length--) { + method = methods[length]; + + // Only stub undefined methods. + if (!console[method]) { + console[method] = noop; + } + } +}()); + +// Place any jQuery/helper plugins in here. diff --git a/vendor/assets/stylesheets/_bootstrap_overrides.css.sass b/vendor/assets/stylesheets/_bootstrap_overrides.css.sass new file mode 100755 index 0000000..112bd1f --- /dev/null +++ b/vendor/assets/stylesheets/_bootstrap_overrides.css.sass @@ -0,0 +1,69 @@ +// Bootstrap overrides + +// Navbars +.navbar-nav > li > .dropdown-menu // Add arrow and border radius from dropdowns + +border-radius(5px) + &:after + content: '' + display: inline-block + border-left: 6px solid transparent + border-right: 6px solid transparent + border-bottom: 6px solid $dropdown-bg + position: absolute + top: -6px + right: 20px + +// Panels +.panel // Remove box shadow from panels + +box-shadow(none) + + // Panel heading styles + .panel-heading + color: $base-dark-color + i[class*='icon-'] + margin-right: 5px + .panel-tools + float: right + margin-top: -48px + margin-right: -8px + .btn-group + margin-top: -6px + .btn-group, .label, .badge + float: right + display: inline-block + .btn + padding: 8px 6px + font-weight: 200 + font-size: 1em + color: $base-dark-color + &:hover + color: $base-color + &:active, &:focus + color: darken($base-color, 10) + +box-shadow(none) + span.badge + font-size: .7em + padding: 2px 4px + .label, .badge + margin-right: 5px + margin-top: 4px + padding-bottom: 4px + font-weight: 200 + .panel-body + &.no-padding + margin-left: -15px + margin-right: -15px + margin-top: -15px + +// Buttons +.btn + padding: 6px 12px + +// Form elements +.radio, .checkbox + margin-top: 0 + +// Tables +.table + @extend .table-striped + @extend .table-hover diff --git a/vendor/assets/stylesheets/_color-swatches.css.sass b/vendor/assets/stylesheets/_color-swatches.css.sass new file mode 100755 index 0000000..d2add2e --- /dev/null +++ b/vendor/assets/stylesheets/_color-swatches.css.sass @@ -0,0 +1,31 @@ +// Flat Color Swatches by Flat-ui (http://designmodo.github.io/Flat-UI/) + +$turquoise: #1abc9c +$green-sea: #16a085 + +$emerald: #2ecc71 +$nephritis: #27ae60 + +$peter-river: #3498db +$belize-hole: #2980b9 + +$amethyst: #9b59b6 +$wisteria: #8e44ad + +$wet-asphalt: #34495e +$midnight-blue: #2c3e50 + +$sun-flower: #f1c40f +$orange: #f39c12 + +$carrot: #e67e22 +$pumpkin: #d35400 + +$alizarin: #e74c3c +$pomegranate: #c0392b + +$clouds: #ecf0f1 +$silver: #bdc3c7 + +$concrete: #95a5a6 +$asbestos: #7f8c8d \ No newline at end of file diff --git a/vendor/assets/stylesheets/_mixins.css.sass b/vendor/assets/stylesheets/_mixins.css.sass new file mode 100755 index 0000000..e0e11ae --- /dev/null +++ b/vendor/assets/stylesheets/_mixins.css.sass @@ -0,0 +1,4 @@ +@mixin animate-property($property, $duration, $timing) + +transition-property($property) + +transition-duration($duration) + +transition-timing-function($timing) \ No newline at end of file diff --git a/vendor/assets/stylesheets/_variables.css.sass b/vendor/assets/stylesheets/_variables.css.sass new file mode 100755 index 0000000..111c28d --- /dev/null +++ b/vendor/assets/stylesheets/_variables.css.sass @@ -0,0 +1,39 @@ +@import 'color-swatches' + +// Globals +$base-color: $turquoise +$base-dark-color: $midnight-blue +$base-dark-color-alternative: $wet-asphalt + +$brand-font-size: 1.8em + +$body-bg-primary: $silver +$body-bg-secondary: $asbestos + +$wrapper-corner-size: 15px +$sidebar-width: 80px +$sidebar-bg: $base-dark-color + +$dock-bg: $sidebar-bg +$dock-active-icon-color: $base-color +$dock-link-font-size: .8em + +$animation-duration: .4s + +$box-shadow-color: rgba(black, 0.04) + +// Bootstrap Overrides +$brand-primary: $base-color +$brand-success: $brand-primary + +$navbar-bg: rgba(0,0,0,0) +$navbar-brand-color: $base-dark-color +$navbar-brand-hover-color: lighten($base-dark-color, 10) + +$breadcrumb-bg: $clouds +$panel-heading-bg: $clouds + +$dropdown-bg: $sidebar-bg +$dropdown-border: darken($dropdown-bg, 10) !default +$dropdown-divider-bg: $dropdown-border +$dropdown-link-color: $clouds !default \ No newline at end of file diff --git a/vendor/assets/stylesheets/hierapolis.css.sass b/vendor/assets/stylesheets/hierapolis.css.sass new file mode 100755 index 0000000..66d8a13 --- /dev/null +++ b/vendor/assets/stylesheets/hierapolis.css.sass @@ -0,0 +1,274 @@ +@import 'compass' +@import 'variables' +@import 'mixins' +@import 'bootstrap' +@import 'bootstrap_overrides' + +body.login + color: $base-dark-color + background-color: $body-bg-primary + .wrapper + padding: 20px + background-color: $clouds + +border-radius($wrapper-corner-size) + +box-shadow(0 0 0 2px $box-shadow-color) + border: 1px solid rgba(black, .3) + margin: 10% auto + width: 300px + .brand + margin-top: -15px + h1 + display: block + margin-bottom: 20px + .logo-icon + width: 75px + height: 75px + margin: auto + padding: 15px + border-radius: 40px + background: $base-dark-color + i[class*='icon-'] + margin-left: -5px + color: $base-color + font-size: 140% + .text-center + .checkbox + text-align: center + legend + text-align: center + input + float: none + +body.main + padding: 10px 20px 0px 20px + background-color: $body-bg-primary + //+background-image(linear-gradient(left, $body-bg-primary, $body-bg-secondary)) + +.sprite-image + background-image: url(../images/sprite.png) + +form + .form-actions + background-color: lighten($panel-heading-bg, 3) + margin: 15px -15px -15px + padding: 15px + +border-bottom-left-radius(4px) + +border-bottom-right-radius(4px) + a.btn:hover + color: lighten($base-color, 10) + +.text-center + text-align: center + +.tables + .panel-body + .table-header + text-align: left + padding: 10px + background-color: lighten($panel-heading-bg, 3) + border-bottom: 1px solid $table-border-color + &.row + margin: 0 + .input-group + margin-right: -15px + input + height: 30px + button + height: 30px + padding: 0 10px + .table-footer + background-color: lighten($panel-heading-bg, 3) + border-top: 1px solid $table-border-color + +border-bottom-left-radius(4px) + +border-bottom-right-radius(4px) + padding: 10px 10px 5px 10px + margin-bottom: -14px + .pagination + margin: 0 + table + margin-bottom: 0 + th:first-child, td:first-child + padding-left: 15px + tr.disabled + +opacity(.4) + td + text-decoration: line-through + td.action + text-decoration: none !important + td.action + width: 15% + padding: 5px + .btn + height: 25px + padding: 2px 6px + +#navbar + .navbar-brand + font-size: $brand-font-size + .nav > li > a + padding: 15px 10px + .navbar-nav > li > .dropdown-menu + margin-top: -5px + li.dropdown.user img + margin: -2px 5px 0 5px + width: 20px + height: 20px + border: 1px solid + padding: 1px + background-color: rgba(white, .6) + +#wrapper + position: absolute + top: 70px + bottom: 0 + left: 20px + right: 20px + border: 1px solid rgba(black, .2) + +border-top-left-radius($wrapper-corner-size) + +border-top-right-radius($wrapper-corner-size) + +box-shadow(0 0 0 2px $box-shadow-color) + overflow: hidden + +#content, #sidebar + position: absolute + top: 0 + bottom: 0 + left: 0 + right: 0 + +#sidebar + background-color: $sidebar-bg + width: $sidebar-width + z-index: 1 + text-align: center + + i#toggle + margin-top: 20px + display: inline-block + color: lighten($base-dark-color, 10) + + ul#dock + margin: -15px 0 0 0 + padding: 0 + width: $sidebar-width + text-align: center + color: $clouds + border-right: 1px solid $dropdown-border + li.launcher + list-style: none + margin-top: 25px + cursor: pointer + > i + display: block + font-size: 2.5em + margin-bottom: -2px + > a + height: 36px + display: block + position: relative + padding-top: 36px + margin-top: -36px + text-decoration: none + color: $clouds + font-size: $dock-link-font-size + ul.dropdown-menu + width: 180px + border-left-width: 0 + text-align: left + position: absolute + margin-left: 85px + top: 80px + > li > a + padding: 5px 20px + a, li.dropdown-header + display: inline-block + width: 100% + white-space: nowrap + overflow: hidden + text-overflow: ellipsis + li.dropdown-header + +border-radius(4px) + color: $dock-active-icon-color + margin-top: -5px + padding: 5px 20px + &:before + +rotate(45deg) + position: absolute + margin-top: 4px + margin-left: -25px + width: 10px + height: 10px + background-color: $dock-bg + content: " " + display: inline-block + &:hover, &.active + > i, > a + +animate-property(color, $animation-duration, ease-in-out) + color: $dock-active-icon-color + &:before + +rotate(45deg) + content: '' + display: inline-block + width: 10px + height: 10px + background-color: white + position: absolute + right: -5px + margin-top: 22px + +#content + overflow: auto + margin-top: 51px + background-color: $body-bg + padding: 20px + left: $sidebar-width + +#tools + margin-left: 80px + + #breadcrumb + +border-radius(0) + padding: 15px 20px 15px 20px + border-bottom: 1px solid #ddd + .title + font-weight: 800 + color: $base-color + a + color: darken($silver, 20) + + #toolbar + margin-top: -70px + margin-right: 10px + float: right + height: 50px + padding: 8px + border-bottom: 0 + .btn-group, .label, form + float: right + display: inline-block + .btn-group + .btn + @extend .btn-success + span.badge + background-color: $base-dark-color + padding: 3px 5px + font-size: .7em + font-weight: 200 + .label + margin-right: 5px + margin-top: 6px + padding: 5px + height: 23px + font-size: 0.9em + font-weight: 200 + +#beaker + @extend .sprite-image + position: absolute + bottom: 5px + background-position: 0 0 + width: 12px + height: 24px + background-size: 100px + background-repeat: no-repeat + margin-left: 33px