'+a+""}else{g+='
'+m+"
"}b=e("
",{id:i,"class":"sod_select "+s+v,title:d,tabindex:p,html:g,"data-cycle":f,"data-links":l,"data-links-external":c,"data-placeholder":a,"data-prefix":u,"data-filter":""}).insertAfter(this);if(o.isTouch()){b.addClass("touch")}w=e("
",{"class":"sod_list"}).appendTo(b);E=e("
").appendTo(w);e("option, optgroup",n).each(function(t){o.populateSoD(e(this),E,b)});if(h){w.show();e("li:lt("+h+")",E).each(function(t){y+=e(this).outerHeight()});w.removeAttr("style");E.css({"max-height":y})}n.appendTo(b);b.on("focusin",o.focusSod).on("click",o.triggerSod).on("click","li",o.optionClick).on("mousemove","li",o.optionHover).on("keydown keypress",o.keyboardUse);n.on("change",o.selectChange);e("html").on("click",function(){o.blurSod(b)});e(document).on("click","label[for='"+n.attr("id")+"']",function(e){e.preventDefault();b.focus()})}else{console.log("Select or Die: It looks like the SoD already exists")}})},populateSoD:function(t,n,r){var i=r.data("placeholder"),s=r.data("prefix"),o=t.parent(),u=t.text(),a=t.val(),f=t.data("custom-id")?t.data("custom-id"):null,l=t.data("custom-class")?t.data("custom-class"):"",c=t.is(":disabled")?" disabled ":"",h=t.is(":selected")?" selected active ":"",p=t.data("link")?" link ":"",d=t.data("link-external")?" linkexternal":"";if(t.is("option")){e("
",{"class":l+c+h+p+d,id:f,title:u,html:u,"data-value":a}).appendTo(n);if(h&&!i||h&&s){r.find(".sod_label").append(u)}if(h&&i&&!s){r.data("label",i)}else if(h){r.data("label",u)}if(o.is("optgroup")){n.find("li:last").addClass("groupchild");if(o.is(":disabled")){n.find("li:last").addClass("disabled")}}}else{e("
",{"class":"optgroup "+c,title:t.prop("label"),html:t.prop("label"),"data-label":t.prop("label")}).appendTo(n)}},focusSod:function(){var t=e(this);if(!t.hasClass("disabled")){t.addClass("focus")}else{o.blurSod(t)}},triggerSod:function(t){t.stopPropagation();var n=e(this),r=n.find("ul"),i=n.data("placeholder"),u=n.find(".selected");if(!n.hasClass("disabled")&&!n.hasClass("open")&&!n.hasClass("touch")){n.addClass("open");e(".sod_select").not(this).removeClass("open focus");if(i&&!n.data("prefix")){n.find(".sod_label").addClass("sod_placeholder").html(i)}o.listScroll(r,u);o.checkViewport(n,r)}else{clearTimeout(s);n.removeClass("open above")}},keyboardUse:function(t){var n=e(this),r=n.find("ul"),s=n.find("li"),u=n.find(".sod_label"),a=n.data("cycle"),f=s.filter(".active"),l,c,h,p,d;if(t.which!==0&&t.charCode!==0){clearTimeout(i);n.data("filter",n.data("filter")+String.fromCharCode(t.keyCode|t.charCode));l=s.filter(function(){return e(this).text().toLowerCase().indexOf(n.data("filter").toLowerCase())===0}).not(".disabled, .optgroup").first();if(l.length){f.removeClass("active");l.addClass("active");o.listScroll(r,l);u.get(0).lastChild.nodeValue=l.text()}i=setTimeout(function(){n.data("filter","")},500)}if(t.which>36&&t.which<41){if(t.which===37||t.which===38){c=f.prevAll(":not('.disabled, .optgroup')").first();h=s.not(".disabled, .optgroup").last()}else if(t.which===39||t.which===40){c=f.nextAll(":not('.disabled, .optgroup')").first();h=s.not(".disabled, .optgroup").first()}if(!c.is("li")&&a){c=h}if(c.is("li")||a){f.removeClass("active");c.addClass("active");u.get(0).lastChild.nodeValue=c.text();o.listScroll(r,c)}return false}else if(t.which===13||t.which===32&&n.hasClass("open")&&n.data("filter")===""){t.preventDefault();f.click()}else if(t.which===32&&!n.hasClass("open")&&n.data("filter")===""){t.preventDefault();n.click()}else if(t.which===27){o.blurSod(n)}},optionHover:function(){var t=e(this);if(!t.hasClass("disabled")&&!t.hasClass("optgroup")){t.siblings().removeClass("active").end().addClass("active")}},optionClick:function(t){t.stopPropagation();var n=e(this),r=n.closest(".sod_select"),i=n.hasClass("disabled"),o=n.hasClass("optgroup"),u=r.find("li:not('.optgroup')").index(this);if(!i&&!o){r.find(".selected, .sod_placeholder").removeClass("selected sod_placeholder");n.addClass("selected");r.find("select option")[u].selected=true;r.find("select").change()}clearTimeout(s);r.removeClass("open above")},selectChange:function(){var t=e(this),n=t.find(":selected"),i=n.text(),s=t.closest(".sod_select");s.find(".sod_label").get(0).lastChild.nodeValue=i;s.data("label",i);r.onChange.call(this);if((s.data("links")||n.data("link"))&&!n.data("link-external")){window.location.href=n.val()}else if(s.data("links-external")||n.data("link-external")){window.open(n.val(),"_blank")}},blurSod:function(t){if(e("body").find(t).length){var n=t.data("label"),r=t.find(".active"),i=t.find(".selected");clearTimeout(s);t.removeClass("open focus above");if(!r.hasClass("selected")){t.find(".sod_label").get(0).lastChild.nodeValue=n;r.removeClass("active");i.addClass("active")}t.blur()}},checkViewport:function(t,n){var r=t[0].getBoundingClientRect(),i=n.outerHeight();if(r.bottom+i+10>e(window).height()&&r.top-i>10){t.addClass("above")}else{t.removeClass("above")}s=setTimeout(function(){o.checkViewport(t,n)},200)},listScroll:function(e,t){var n=e[0].getBoundingClientRect(),r=t[0].getBoundingClientRect();if(n.top>r.top){e.scrollTop(e.scrollTop()-n.top+r.top)}else if(n.bottom
0||navigator.msMaxTouchPoints>0}};var u={destroy:function(){return this.each(function(t){var n=e(this),r=n.parent();if(r.hasClass("sod_select")){n.off("change");r.find("div").remove();n.unwrap()}else{console.log("Select or Die: There's no SoD to destroy")}})},update:function(){return this.each(function(t){var n=e(this),r=n.parent(),i=r.find("ul:first");if(r.hasClass("sod_select")){i.empty();r.find(".sod_label").get(0).lastChild.nodeValue="";if(n.is(":disabled")){r.addClass("disabled")}e("option, optgroup",n).each(function(t){o.populateSoD(e(this),i,r)})}else{console.log("Select or Die: There's no SoD to update")}})},disable:function(t){return this.each(function(n){var r=e(this),i=r.parent();if(i.hasClass("sod_select")){if(typeof t!=="undefined"){i.find("ul:first li[data-value='"+t+"']").addClass("disabled");i.find("ul:first li[data-label='"+t+"']").nextUntil(":not(.groupchild)").addClass("disabled");e("option[value='"+t+"'], optgroup[label='"+t+"']",this).prop("disabled",true)}else if(i.hasClass("sod_select")){i.addClass("disabled");r.prop("disabled",true)}}else{console.log("Select or Die: There's no SoD to disable")}})},enable:function(t){return this.each(function(n){var r=e(this),i=r.parent();if(i.hasClass("sod_select")){if(typeof t!=="undefined"){i.find("ul:first li[data-value='"+t+"']").removeClass("disabled");i.find("ul:first li[data-label='"+t+"']").nextUntil(":not(.groupchild)").removeClass("disabled");e("option[value='"+t+"'], optgroup[label='"+t+"']",this).prop("disabled",false)}else if(i.hasClass("sod_select")){i.removeClass("disabled");r.prop("disabled",false)}}else{console.log("Select or Die: There's no SoD to enable")}})}};if(u[t]){return u[t].apply(this,Array.prototype.slice.call(arguments,1))}else if(typeof t==="object"||!t){return o.initSoD.apply(this,arguments)}else{e.error('Select or Die: Oh no! No such method "'+t+'" for the SoD instance')}}})(jQuery)
\ No newline at end of file
diff --git a/public/javascripts/select-or-die/_themes/selectordie_theme_01.css b/public/javascripts/select-or-die/_themes/selectordie_theme_01.css
new file mode 100644
index 0000000..ed25641
--- /dev/null
+++ b/public/javascripts/select-or-die/_themes/selectordie_theme_01.css
@@ -0,0 +1,255 @@
+/* ===========================================================
+ *
+ * Name: selectordie_theme_01.css
+ * Updated: 2014-04-26
+ * Created by: Per V @ Vst.mn
+ * What?: Custom "theme" for Select or Die
+ * To use this theme, include this file
+ * instead of the .selectordie.css file
+ *
+ *
+ * Beards, Rock & Loud Guns | Cogs 'n Kegs
+ * =========================================================== */
+
+/* Remove, change to fit your needs */
+@import url(http://fonts.googleapis.com/css?family=Lato:300,700);
+
+.sod_select,
+.sod_select *
+ {
+ -webkit-box-sizing: border-box;
+ -moz-box-sizing: border-box;
+ box-sizing: border-box;
+ -webkit-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ }
+
+/* The SoD - Please keep this first three lines intact, otherwise all hell will break looooooose */
+.sod_select
+ {
+ display: inline-block;
+ position: relative;
+ line-height: 1;
+
+ width: 200px;
+ padding: 13px 10px;
+
+ background-color: #ffffff;
+ background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEwMCAxMDAiIHByZXNlcnZlQXNwZWN0UmF0aW89Im5vbmUiPjxsaW5lYXJHcmFkaWVudCBpZD0iaGF0MCIgZ3JhZGllbnRVbml0cz0ib2JqZWN0Qm91bmRpbmdCb3giIHgxPSI1MCUiIHkxPSIxMDAlIiB4Mj0iNTAlIiB5Mj0iLTEuNDIxMDg1NDcxNTIwMmUtMTQlIj4KPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2Y3ZjdmNyIgc3RvcC1vcGFjaXR5PSIxIi8+CjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2ZmZiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgIDwvbGluZWFyR3JhZGllbnQ+Cgo8cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjEwMCIgZmlsbD0idXJsKCNoYXQwKSIgLz4KPC9zdmc+);
+ background-image: -moz-linear-gradient(bottom, #f7f7f7 0%, #fff 100%);
+ background-image: -o-linear-gradient(bottom, #f7f7f7 0%, #fff 100%);
+ background-image: -webkit-linear-gradient(bottom, #f7f7f7 0%, #fff 100%);
+ background-image: linear-gradient(bottom, #f7f7f7 0%, #fff 100%);
+ -webkit-background-clip: padding-box;
+ -moz-background-clip: padding;
+ background-clip: padding-box;
+ border: 1px solid #dbdbdb;
+ border-radius: 3px;
+ color: #797979;
+ font-size: 12px;
+ font-weight: 700;
+ text-align: left;
+ text-transform: none;
+ outline: 0;
+ outline-offset: -2px; /* Opera */
+ cursor: default;
+ }
+
+ /* Up/Down arrows */
+ .sod_select:before,
+ .sod_select:after
+ {
+ content: "";
+ position: absolute;
+ right: 30px;
+ top: 0;
+ bottom: 0;
+ border-left: 1px solid #dbdbdb;
+ }
+
+ /* Down arrow */
+ .sod_select:after
+ {
+ content: "\25BC";
+ right: 12px;
+ top: 15px;
+ border-left: none;
+ color: #bbbbbb;
+ font-size: 8px;
+ }
+
+ /* Change the border color on hover, focus and when open */
+ .sod_select:hover,
+ .sod_select.focus,
+ .sod_select.disabled,
+ .sod_select.disabled:hover
+ {
+ background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEwMCAxMDAiIHByZXNlcnZlQXNwZWN0UmF0aW89Im5vbmUiPjxsaW5lYXJHcmFkaWVudCBpZD0iaGF0MCIgZ3JhZGllbnRVbml0cz0ib2JqZWN0Qm91bmRpbmdCb3giIHgxPSI1MCUiIHkxPSIxMDAlIiB4Mj0iNTAlIiB5Mj0iLTEuNDIxMDg1NDcxNTIwMmUtMTQlIj4KPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2YxZjFmMSIgc3RvcC1vcGFjaXR5PSIwLjc1Ii8+CjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2ZmZmNmYyIgc3RvcC1vcGFjaXR5PSIwLjc1Ii8+CiAgIDwvbGluZWFyR3JhZGllbnQ+Cgo8cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjEwMCIgZmlsbD0idXJsKCNoYXQwKSIgLz4KPC9zdmc+);
+ background-image: -moz-linear-gradient(bottom, rgba(241,241,241,.75) 0%, rgba(255,252,252,.75) 100%);
+ background-image: -o-linear-gradient(bottom, rgba(241,241,241,.75) 0%, rgba(255,252,252,.75) 100%);
+ background-image: -webkit-linear-gradient(bottom, rgba(241,241,241,.75) 0%, rgba(255,252,252,.75) 100%);
+ background-image: linear-gradient(bottom, rgba(241,241,241,.75) 0%, rgba(255,252,252,.75) 100%);
+ border-color: #d4d4d4;
+ }
+
+ .sod_select.focus { box-shadow: 0 0 2px rgba(0,0,0,.1); }
+
+ .sod_select.open
+ {
+ border-radius: 3px 3px 0 0;
+ color: #919191;
+ }
+
+ .sod_select.open.above { border-radius: 0 0 3px 3px; }
+
+ /* When the entire SoD is disabled, go crazy! */
+ .sod_select.disabled,
+ .sod_select.disabled:hover
+ {
+ opacity: .8;
+ color: #b2b2b2;
+ cursor: not-allowed;
+ }
+
+ /* The "label", or whatever we should call it. Keep the first three lines for truncating. */
+ .sod_select .sod_label
+ {
+ overflow: hidden;
+ white-space: nowrap;
+ text-overflow: ellipsis;
+
+ padding-right: 25px;
+ }
+
+ .sod_select .sod_prefix { /* Use this if you're using a prefix and want to style it */ }
+ .sod_select .sod_placeholder { /* Use this if you're using a placeholder and want to style it */ }
+
+
+
+ /* Options list wrapper */
+ .sod_select .sod_list
+ {
+ position: absolute;
+ top: 100%;
+ left: 0;
+ display: none;
+ height: auto;
+ width: 200px;
+ margin: 0 0 0 -1px;
+ border: 1px solid #dbdbdb;
+ border-radius: 0 0 3px 3px;
+ box-shadow: 1px 2px 5px rgba(0,0,0,.1);
+ background: #ffffff;
+ color: #676767;
+ font-weight: 300;
+ z-index: 1;
+ }
+
+ /* Shows the option list (don't edit) */
+ .sod_select.open .sod_list { display: block; }
+
+ /* Don't display the options when */
+ .sod_select.disabled.open .sod_list { display: none; }
+
+ /* When the option list is displayed above the SoD */
+ .sod_select.above .sod_list
+ {
+ top: auto;
+ bottom: 100%;
+ border-radius: 3px 3px 0 0;
+ box-shadow: 1px -2px 5px rgba(0,0,0,.1);
+ }
+
+
+ /* Options list container */
+ .sod_select .sod_list ul
+ {
+ overflow-y: auto;
+ padding: 0;
+ margin: 0;
+ }
+
+ /* All the options. Keep the first three lines for truncating... */
+ .sod_select .sod_list li
+ {
+ overflow: hidden;
+ white-space: nowrap;
+ text-overflow: ellipsis;
+
+ position: relative;
+ padding: 10px 10px 10px 25px;
+ list-style-type: none;
+ }
+
+ /* Optgroups */
+ .sod_select .sod_list .optgroup,
+ .sod_select .sod_list .optgroup.disabled
+ {
+ background: inherit;
+ color: #939393;
+ font-size: 11px;
+ font-style: italic;
+ }
+
+ /* Children of an optgroup */
+ .sod_select .sod_list .groupchild { padding-left: 35px; }
+
+ /* Disabled option */
+ .sod_select .sod_list .disabled
+ {
+ background: inherit;
+ color: #cccccc;
+ }
+
+ /* Hover state for options, also used when a user uses his/hers up/down keys */
+ .sod_select .sod_list .active
+ {
+ background: #366fb5;
+ color: #ffffff;
+ }
+
+ /*Make room for the check mark */
+ .sod_select .sod_list .selected { font-weight: 700; }
+
+ /* Displays a check mark for the selected option */
+ .sod_select .sod_list .selected:before
+ {
+ content: "";
+ position: absolute;
+ left: 10px;
+ top: 50%;
+ -webkit-transform: translateY(-50%);
+ -ms-transform: translateY(-50%);
+ transform: translateY(-50%);
+ display: inline-block;
+ color: #808080;
+ height: 9px;
+ width: 10px;
+ background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNy4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSIwIDAgMTAgOSIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgMTAgOSIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+DQo8Zz4NCgk8cGF0aCBmaWxsPSIjRDlEOUQ4IiBkPSJNNCw2LjdDMy42LDYuMywzLjUsNi4xLDMuMSw1LjdDMi42LDUuMiwyLDQuNiwxLjUsNC4xYy0wLjgtMC44LTIsMC40LTEuMiwxLjJjMC45LDAuOSwxLjksMS45LDIuOCwyLjgNCgkJYzAuNywwLjcsMS4zLDEsMiwwQzYuNyw2LDguMywzLjcsOS44LDEuNUMxMC41LDAuNSw5LTAuMyw4LjMsMC42bDAsMEM2LjcsMi45LDUuNyw0LjQsNCw2LjciLz4NCjwvZz4NCjwvc3ZnPg0K);
+ }
+
+ /* Add a .no_highlight class to you SoD to hide the check mark */
+ .sod_select.no_highlight .sod_list .selected:before { display: none; }
+
+ .sod_select .sod_list .link { /* If data-link is set on a specific option */ }
+ .sod_select .sod_list .linkexternal { /* If data-link-external is set on a specific option */ }
+
+
+ /* Hide native select */
+ .sod_select select { display: none !important; }
+
+ /* The native select in touch mode. Keep this first line. Sorry, keep everything. */
+ .sod_select.touch select
+ {
+ -webkit-appearance: menulist-button;
+
+ position: absolute;
+ top: 0;
+ left: 0;
+ display: block !important;
+ height: 100%;
+ width: 100%;
+ opacity: 0;
+ z-index: 1;
+ }
\ No newline at end of file
diff --git a/public/javascripts/select-or-die/_themes/selectordie_theme_02.css b/public/javascripts/select-or-die/_themes/selectordie_theme_02.css
new file mode 100644
index 0000000..669098c
--- /dev/null
+++ b/public/javascripts/select-or-die/_themes/selectordie_theme_02.css
@@ -0,0 +1,295 @@
+/* ===========================================================
+ *
+ * Name: selectordie_theme_02.css
+ * Updated: 2014-04-27
+ * Created by: Per V @ Vst.mn
+ * What?: Custom "theme" for Select or Die
+ * To use this theme, include this file
+ * instead of the .selectordie.css file
+ *
+ *
+ * Beards, Rock & Loud Guns | Cogs 'n Kegs
+ * =========================================================== */
+
+/* Remove, change to fit your needs */
+@import url(http://fonts.googleapis.com/css?family=Lato:300,700);
+
+.sod_select,
+.sod_select *
+ {
+ -webkit-box-sizing: border-box;
+ -moz-box-sizing: border-box;
+ box-sizing: border-box;
+ -webkit-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ }
+
+/* The SoD - Please keep this first three lines intact, otherwise all hell will break looooooose */
+.sod_select
+ {
+ display: inline-block;
+ position: relative;
+ line-height: 1;
+
+ width: 200px;
+ padding: 13px 10px;
+ background: #fcfcfc;
+ border: 1px solid #d4d4d4;
+ box-shadow: inset 0 -1px 2px rgba(0,0,0,.05);
+ border-radius: 3px;
+ color: #808080;
+ font-size: 12px;
+ font-weight: 700;
+ text-align: left;
+ text-transform: none;
+ outline: 0;
+ outline-offset: -2px; /* Opera */
+ cursor: default;
+ }
+
+ /* Up/Down arrows */
+ .sod_select:before,
+ .sod_select:after
+ {
+ content: "";
+ position: absolute;
+ right: 30px;
+ top: 10px;
+ bottom: 10px;
+ border-left: 1px solid #e5e5e5;
+ }
+
+ /* Down arrow */
+ .sod_select:after
+ {
+ content: "\25BC";
+ right: 12px;
+ top: 16px;
+ border-left: none;
+ font-size: 7px;
+ }
+ .sod_select.above:after { content: "\25B2"; }
+
+ /* Change the border color on hover, focus and when open */
+ .sod_select:hover,
+ .sod_select.open,
+ .sod_select.focus
+ {
+ background: #ffffff;
+ border-color: #d4d4d4;
+ }
+
+ .sod_select.open { color: #919191; }
+ .sod_select.focus { box-shadow: inset 0 -1px 2px rgba(0,0,0,.05), 0 0 5px rgba(0,0,0,.1); }
+
+ /* When the entire SoD is disabled, go crazy! */
+ .sod_select.disabled
+ {
+ border-color: #d4d4d4;
+ color: #b2b2b2;
+ cursor: not-allowed;
+ }
+
+ .sod_select.disabled:hover { background: #fcfcfc; }
+
+ /* The "label", or whatever we should call it. Keep the first three lines for truncating. */
+ .sod_select .sod_label
+ {
+ overflow: hidden;
+ white-space: nowrap;
+ text-overflow: ellipsis;
+
+ padding-right: 15px;
+ }
+
+ .sod_select .sod_prefix { /* Use this if you're using a prefix and want to style it */ }
+ .sod_select .sod_placeholder { /* Use this if you're using a placeholder and want to style it */ }
+
+
+
+ /* Options list wrapper */
+ .sod_select .sod_list
+ {
+ position: absolute;
+ top: 100%;
+ left: 0;
+ display: none;
+ height: auto;
+ width: 200px;
+ margin: 10px 0 0 -1px;
+ border: 1px solid #d4d4d4;
+ border-radius: 3px;
+ box-shadow: 0 2px 4px rgba(0,0,0,.1);
+ background: #ffffff;
+ color: #808080;
+ font-weight: 300;
+ z-index: 1;
+ }
+
+ /* Shows the option list (don't edit) */
+ .sod_select.open .sod_list { display: block; }
+
+ /* Don't display the options when */
+ .sod_select.disabled.open .sod_list { display: none; }
+
+ /* When the option list is displayed above the SoD */
+ .sod_select.above .sod_list
+ {
+ top: auto;
+ bottom: 100%;
+ margin: 0 0 10px -1px;
+ border: 1px solid #d4d4d4;
+ box-shadow: 0 -2px 4px rgba(0,0,0,.1);
+ }
+
+ /* Arrow(s) displayed when the SoD is active, only in this "theme" */
+ .sod_select .sod_list:after,
+ .sod_select .sod_list:before
+ {
+ content: "";
+ position: absolute;
+ bottom: 100%;
+ right: 10px;
+ border: solid transparent;
+ height: 0;
+ width: 0;
+ pointer-events: none;
+ }
+
+ .sod_select.above .sod_list:after,
+ .sod_select.above .sod_list:before
+ {
+ top: 100%;
+ bottom: auto;
+ }
+
+ .sod_select .sod_list:after
+ {
+ border-color: rgba(255, 255, 255, 0);
+ border-bottom-color: #ffffff;
+ border-width: 6px;
+ }
+
+ .sod_select.above .sod_list:after
+ {
+ border-color: rgba(255, 255, 255, 0);
+ border-top-color: #ffffff;
+ }
+
+ .sod_select .sod_list:before
+ {
+ margin-right: -2px;
+ border-color: rgba(212, 212, 212, 0);
+ border-bottom-color: #d4d4d4;
+ border-width: 8px;
+ }
+
+ .sod_select.above .sod_list:before
+ {
+ border-color: rgba(255, 255, 255, 0);
+ border-top-color: #d4d4d4;
+ }
+
+
+ /* Options list container */
+ .sod_select .sod_list ul
+ {
+ overflow-y: auto;
+ padding: 0 4px;
+ margin: 4px 0;
+ border-radius: 3px;
+ }
+
+ /* All the options. Keep the first three lines for truncating... */
+ .sod_select .sod_list li
+ {
+ overflow: hidden;
+ white-space: nowrap;
+ text-overflow: ellipsis;
+
+ position: relative;
+ padding: 10px;
+ list-style-type: none;
+ border-bottom: 1px solid #f7f7f7;
+ }
+
+ /* Remove the bottom border from the last item */
+ .sod_select .sod_list li:last-child { border-bottom: none; }
+
+ /* Optgroups */
+ .sod_select .sod_list .optgroup,
+ .sod_select .sod_list .optgroup.disabled
+ {
+ background: inherit;
+ color: #939393;
+ font-size: 10px;
+ font-style: italic;
+ }
+
+ /* Children of an optgroup */
+ .sod_select .sod_list .groupchild { padding-left: 20px; }
+
+ /* Disabled option */
+ .sod_select .sod_list .disabled
+ {
+ background: inherit;
+ color: #cccccc;
+ }
+
+ /* Hover state for options, also used when a user uses his/hers up/down keys */
+ .sod_select .sod_list .active
+ {
+ background: #f7f7f7;
+ border-radius: 3px;
+ color: #676767;
+ }
+
+ /*Make room for the check mark */
+ .sod_select .sod_list .selected
+ {
+ padding-right: 25px;
+ font-weight: 700;
+ }
+
+ /* Displays a check mark for the selected option */
+ .sod_select .sod_list .selected:before
+ {
+ content: "";
+ position: absolute;
+ right: 10px;
+ top: 50%;
+ -webkit-transform: translateY(-50%);
+ -ms-transform: translateY(-50%);
+ transform: translateY(-50%);
+ display: inline-block;
+ color: #808080;
+ height: 9px;
+ width: 10px;
+ background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNy4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSIwIDAgMTAgOSIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgMTAgOSIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+DQo8Zz4NCgk8cGF0aCBmaWxsPSIjRDlEOUQ4IiBkPSJNNCw2LjdDMy42LDYuMywzLjUsNi4xLDMuMSw1LjdDMi42LDUuMiwyLDQuNiwxLjUsNC4xYy0wLjgtMC44LTIsMC40LTEuMiwxLjJjMC45LDAuOSwxLjksMS45LDIuOCwyLjgNCgkJYzAuNywwLjcsMS4zLDEsMiwwQzYuNyw2LDguMywzLjcsOS44LDEuNUMxMC41LDAuNSw5LTAuMyw4LjMsMC42bDAsMEM2LjcsMi45LDUuNyw0LjQsNCw2LjciLz4NCjwvZz4NCjwvc3ZnPg0K);
+ }
+
+ /* Add a .no_highlight class to you SoD to hide the check mark */
+ .sod_select.no_highlight .sod_list .selected:before { display: none; }
+
+ .sod_select .sod_list .link { /* If data-link is set on a specific option */ }
+ .sod_select .sod_list .linkexternal { /* If data-link-external is set on a specific option */ }
+
+
+ /* Hide native select */
+ .sod_select select { display: none !important; }
+
+ /* The native select in touch mode. Keep this first line. Sorry, keep everything. */
+ .sod_select.touch select
+ {
+ -webkit-appearance: menulist-button;
+
+ position: absolute;
+ top: 0;
+ left: 0;
+ display: block !important;
+ height: 100%;
+ width: 100%;
+ opacity: 0;
+ z-index: 1;
+ }
\ No newline at end of file
diff --git a/public/javascripts/select-or-die/_themes/selectordie_theme_03.css b/public/javascripts/select-or-die/_themes/selectordie_theme_03.css
new file mode 100644
index 0000000..cdf5910
--- /dev/null
+++ b/public/javascripts/select-or-die/_themes/selectordie_theme_03.css
@@ -0,0 +1,273 @@
+/* ===========================================================
+ *
+ * Name: selectordie_theme_03.css
+ * Updated: 2014-04-27
+ * Created by: Per V @ Vst.mn
+ * What?: Custom "theme" for Select or Die
+ * To use this theme, include this file
+ * instead of the .selectordie.css file
+ *
+ *
+ * Beards, Rock & Loud Guns | Cogs 'n Kegs
+ * =========================================================== */
+
+/* Remove, change to fit your needs */
+@import url(http://fonts.googleapis.com/css?family=Lato:400,700);
+
+.sod_select,
+.sod_select *
+ {
+ -webkit-box-sizing: border-box;
+ -moz-box-sizing: border-box;
+ box-sizing: border-box;
+ -webkit-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ }
+
+/* The SoD - Please keep this first three lines intact, otherwise all hell will break looooooose */
+.sod_select
+ {
+ display: inline-block;
+ position: relative;
+ line-height: 1;
+
+ width: 200px;
+ padding: 15px;
+ background-color: #ffffff;
+ border: 1px solid #d6d6d6;
+ border-radius: 3px;
+ color: #828282;
+ font-size: 11px;
+ font-weight: 400;
+ text-align: left;
+ text-transform: uppercase;
+ outline: 0;
+ outline-offset: -2px; /* Opera */
+ cursor: default;
+ }
+
+ /* Up/Down arrows */
+ .sod_select:before,
+ .sod_select:after
+ {
+ content: "\25B2";
+ position: absolute;
+ right: 15px;
+ top: 12px;
+ color: #bbbbbb;
+ font-size: 7px;
+ }
+
+ /* Down arrow */
+ .sod_select:after
+ {
+ content: "\25BC";
+ top: auto;
+ bottom: 12px;
+ }
+
+ /* Change the border color on hover, focus and when open */
+ .sod_select:hover,
+ .sod_select.open,
+ .sod_select.focus
+ {
+ border-color: #dbdbdb;
+ }
+
+ .sod_select.focus { box-shadow: 0 0 2px rgba(0,0,0,.1); }
+
+ .sod_select.open
+ {
+ border-radius: 3px 3px 0 0;
+ color: #919191;
+ box-shadow: 1px 2px 5px rgba(0,0,0,.1);
+ }
+
+ .sod_select.open.above
+ {
+ border-radius: 0 0 3px 3px;
+ box-shadow: 1px -2px 5px rgba(0,0,0,.1);
+ }
+
+ /* When the entire SoD is disabled, go crazy! */
+ .sod_select.disabled,
+ .sod_select.disabled:hover
+ {
+ opacity: .8;
+ color: #b2b2b2;
+ cursor: not-allowed;
+ }
+
+ /* The "label", or whatever we should call it. Keep the first three lines for truncating. */
+ .sod_select .sod_label
+ {
+ overflow: hidden;
+ white-space: nowrap;
+ text-overflow: ellipsis;
+
+ padding-right: 25px;
+ }
+
+ .sod_select .sod_prefix { /* Use this if you're using a prefix and want to style it */ }
+ .sod_select .sod_placeholder { /* Use this if you're using a placeholder and want to style it */ }
+
+
+
+ /* Options list wrapper */
+ .sod_select .sod_list
+ {
+ position: absolute;
+ top: 100%;
+ left: 0;
+ display: none;
+ height: auto;
+ width: 200px;
+ margin: 0 0 0 -1px;
+ background: #ffffff;
+ border: 1px solid #dbdbdb;
+ border-top: none;
+ border-radius: 0 0 3px 3px;
+ box-shadow: 1px 2px 5px rgba(0,0,0,.1);
+ z-index: 1;
+ }
+
+ /* The "divider" shown above the list */
+ .sod_select .sod_list:before
+ {
+ content: "";
+ position: absolute;
+ left: 10px;
+ right: 10px;
+ height: 1px;
+ top: -1px;
+ background: #dbdbdb;
+ }
+
+ /* Shows the option list (don't edit) */
+ .sod_select.open .sod_list { display: block; }
+
+ /* Don't display the options when */
+ .sod_select.disabled.open .sod_list { display: none; }
+
+ /* When the option list is displayed above the SoD */
+ .sod_select.above .sod_list
+ {
+ top: auto;
+ bottom: 100%;
+ border-radius: 3px 3px 0 0;
+ border-top: 1px solid #dbdbdb;
+ border-bottom: none;
+ box-shadow: 1px -2px 5px rgba(0,0,0,.1);
+ }
+
+ .sod_select.above .sod_list:before
+ {
+ content: "";
+ position: absolute;
+ left: 10px;
+ right: 10px;
+ height: 1px;
+ bottom: -1px;
+ top: auto;
+ background: #dbdbdb;
+ }
+
+
+ /* Options list container */
+ .sod_select .sod_list ul
+ {
+ overflow-y: auto;
+ padding: 0;
+ margin: 0;
+ border-radius: 3px;
+ }
+
+ /* All the options. Keep the first three lines for truncating... */
+ .sod_select .sod_list li
+ {
+ overflow: hidden;
+ white-space: nowrap;
+ text-overflow: ellipsis;
+
+ position: relative;
+ padding: 12px 15px;
+ list-style-type: none;
+ color: #676767;
+ }
+
+ /* Optgroups */
+ .sod_select .sod_list .optgroup,
+ .sod_select .sod_list .optgroup.disabled
+ {
+ background: inherit;
+ color: #939393;
+ font-size: 10px;
+ font-style: italic;
+ }
+
+ /* Children of an optgroup */
+ .sod_select .sod_list .groupchild { padding-left: 20px; }
+
+ /* Disabled option */
+ .sod_select .sod_list .disabled
+ {
+ background: inherit;
+ color: #cccccc;
+ }
+
+ /* Hover state for options, also used when a user uses his/hers up/down keys */
+ .sod_select .sod_list .active
+ {
+ background: #fafafa;
+ color: #404040;
+ }
+
+ /*Make room for the check mark */
+ .sod_select .sod_list .selected
+ {
+ padding-right: 30px;
+ font-weight: 700;
+ }
+
+ /* Displays a check mark for the selected option */
+ .sod_select .sod_list .selected:before
+ {
+ content: "";
+ position: absolute;
+ right: 15px;
+ top: 50%;
+ -webkit-transform: translateY(-50%);
+ -ms-transform: translateY(-50%);
+ transform: translateY(-50%);
+ display: inline-block;
+ color: #808080;
+ height: 9px;
+ width: 10px;
+ background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNy4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSIwIDAgMTAgOSIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgMTAgOSIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+DQo8Zz4NCgk8cGF0aCBmaWxsPSIjRDlEOUQ4IiBkPSJNNCw2LjdDMy42LDYuMywzLjUsNi4xLDMuMSw1LjdDMi42LDUuMiwyLDQuNiwxLjUsNC4xYy0wLjgtMC44LTIsMC40LTEuMiwxLjJjMC45LDAuOSwxLjksMS45LDIuOCwyLjgNCgkJYzAuNywwLjcsMS4zLDEsMiwwQzYuNyw2LDguMywzLjcsOS44LDEuNUMxMC41LDAuNSw5LTAuMyw4LjMsMC42bDAsMEM2LjcsMi45LDUuNyw0LjQsNCw2LjciLz4NCjwvZz4NCjwvc3ZnPg0K);
+ }
+
+ /* Add a .no_highlight class to you SoD to hide the check mark */
+ .sod_select.no_highlight .sod_list .selected:before { display: none; }
+
+ .sod_select .sod_list .link { /* If data-link is set on a specific option */ }
+ .sod_select .sod_list .linkexternal { /* If data-link-external is set on a specific option */ }
+
+
+ /* Hide native select */
+ .sod_select select { display: none !important; }
+
+ /* The native select in touch mode. Keep this first line. Sorry, keep everything. */
+ .sod_select.touch select
+ {
+ -webkit-appearance: menulist-button;
+
+ position: absolute;
+ top: 0;
+ left: 0;
+ display: block !important;
+ height: 100%;
+ width: 100%;
+ opacity: 0;
+ z-index: 1;
+ }
\ No newline at end of file
diff --git a/public/javascripts/select-or-die/select-or-die.jquery.json b/public/javascripts/select-or-die/select-or-die.jquery.json
new file mode 100644
index 0000000..4e827da
--- /dev/null
+++ b/public/javascripts/select-or-die/select-or-die.jquery.json
@@ -0,0 +1,42 @@
+{
+ "name": "select-or-die",
+ "version": "0.1.3",
+ "title": "Select or Die",
+ "author": {
+ "name": "Per Vestman",
+ "email": "per@vst.mn",
+ "url": "http://vst.mn"
+ },
+ "licenses": [
+ {
+ "type": "MIT",
+ "url": "http://opensource.org/licenses/MIT"
+ },
+ {
+ "type": "GPL",
+ "url": "http://www.gnu.org/copyleft/gpl.html"
+ }
+ ],
+ "dependencies": {
+ "jquery": ">=1.8"
+ },
+ "description": "Yet another jQuery plugin to style/replace select elements.",
+ "keywords": [
+ "select",
+ "input",
+ "form",
+ "dropdown",
+ "native",
+ "replacement",
+ "css",
+ "ui",
+ "javascript",
+ "jquery",
+ "vestman"
+ ],
+ "docs": "http://vst.mn/selectordie",
+ "demo": "http://vst.mn/selectordie",
+ "download": "https://github.com/vestman/Select-or-Die",
+ "bugs": "https://github.com/vestman/Select-or-Die/issues",
+ "homepage": "http://vst.mn/selectordie"
+}
\ No newline at end of file
diff --git a/public/stylesheets/selectordie.css b/public/stylesheets/selectordie.css
new file mode 120000
index 0000000..6ba5519
--- /dev/null
+++ b/public/stylesheets/selectordie.css
@@ -0,0 +1 @@
+../javascripts/select-or-die/_src/selectordie.css
\ No newline at end of file
--
libgit2 0.21.2