Dining Guide

Dining Guide front end for In Town and Around

by omni5cience

HTML

<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/chosen/1.0/chosen.css">
<script src="//cdnjs.cloudflare.com/ajax/libs/chosen/1.0/chosen-sprite.png"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/chosen/1.0/[email protected]"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/chosen/1.0/chosen.jquery.js"></script>
<script src="https://dl.dropboxusercontent.com/u/6519882/InTownAndAround/list.changed.min.js"></script>
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<div class="container">
    <select data-placeholder="Choose a town..." multiple class="chosen-select towns">
        <option value='' disabled selected style='display:none;'>Choose a town...</option>
        <option>Belleville</option>
        <option>Bloomfield</option>
        <optgroup label="The Caldwells">
            <option>Caldwell</option>
            <option>North Caldwell</option>
            <option>West Caldwell</option>
        </optgroup>
        <option>Cedar Grove</option>
        <option>Essex Fells</option>
        <option>Fairfield</option>
        <option>Glen Ridge</option>
        <option>Irvington</option>
        <option>Livingston</option>
        <option>Maplewood</option>
        <option>Millburn</option>
        <option>Montclair</option>
        <option>Newark</option>
        <option>Nutley</option>
        <optgroup label="The Oranges">
            <option>East Orange</option>
            <option>Orange</option>
            <option>West Orange</option>
            <option>South Orange</option>
        </optgroup>
        <option>Roseland</option>
        <option>Verona</option>
    </select>
    <select data-placeholder="Choose a cuisine..." multiple class="chosen-select cuisines">
        <option value='' disabled selected style='display:none;'>Choose a cuisine...</option>
        <option>Japanese</option>
        <option>Bar/Pub</option>
        <option>Italian</option>
       ...

CSS

body {
    margin: 10px;
    font-family: sans-serif;
    background-color: white;
    font-size: 18px;
    min-width: 320px;
}
.container {
    position: relative;
    width: 590px;
    width: 33em;
    margin: 0 auto;
}
.chosen-select, .chosen-container {
    width: 49.5% !important;
}
/*
#restaurant-list {
    width: 590px;
    width: 33em;
}
*/
 .name {
    margin: 0.2em 0;
    color: #007dc5;
    font-weight: 300;
}
.clear {
    clear: both;
}
.restaurant-item {
    padding: 0.35em 1em 0.65em;
    margin: 1em 0;
    list-style: none;
    background-color: #e6e7e8;
    color: #231f20;
    font-weight: 100;
}
.list {
    padding-left: 0;
}
.restaurant-info {
    float: left;
    width: 75%;
}
.more-info {
    font-size: 24px;
    font-weight: 600;
    text-align: center;
    margin-top: 4px;
    width: 4.1em;
    float: right;
    border: 0;
    line-height: normal;
    padding: 9px 14px 9px;
    /* This seems to be jittery when the page reflows */
    padding: 0.375em 0.583em;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    border-radius: 6px;
    background-color: hsl(201, 100%, 30%) !important;
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#00a5ff", endColorstr="#006399");
    background-image: -khtml-gradient(linear, left top, left bottom, from(#00a5ff), to(#006399));
    background-image: -moz-linear-gradient(top, #00a5ff, #006399);
    background-image: -ms-linear-gradient(top, #00a5ff, #006399);
    background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #00a5ff), color-stop(100%, #006399));
    background-image: -webkit-linear-gradient(top, #00a5ff, #006399);
    background-image: -o-linear-gradient(top, #00a5ff, #006399);
    background-image: linear-gradient(#00a5ff, #006399);
    border-color: #006399 #006399 hsl(201, 100%, 25%);
    color: #fff !important;
    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.33);
    -webkit-font-smoothing: antialiased;
}
@media...

JavaScript

var options = {
    valueNames: ["name", "town", "cuisine", "description"],
    item: '<li class="restaurant-item"><div class="restaurant-container"><div class="restaurant-info"><h3 class="name"></h3><div class="town"></div><div class="cuisine"></div><summary class="description"></summary></div><a target="_blank" class="url"><button class="more-info">more info</button></a><div class="clear"></div></div></li>'
};

var values = [{
    name: "Aki Japanese Restaurant",
    town: "Bloomfield",
    cuisine: "Japanese",
    description: "A sleek and stylish restaurant that offers healthy and flavorful food that is served fresh.",
    url: "http://www.akisushius.com/"
}, {
    name: "Cloverleaf",
    town: "Caldwell",
    cuisine: "Bar/Pub",
    description: "Offering a menu consisting of American cuisine in a family-casual dining atmosphere.",
    url: "http://www.cloverleaftavern.com/"
}, {
    name: "LuNello",
    town: "Cedar Grove",
    cuisine: "Italian",
    description: "Offers a classic Italian menu with special homemade and signature dishes that exude quality.",
    url: "http://www.lunello.com/"
}, {
    name: "Calandra's Mediterranean Grill",
    town: "Fairfield",
    cuisine: "Mediterranean",
    description: "A family friendly restaurant featuring an open kitchen with a wood burning grill and stone pizza oven.",
    url: "http://www.calandrasmedgrill.com/home.html"
}, {
    name: "Stamna Greek Taverna",
    town: "Little Falls",
    cuisine: "Greek",
    description: "Enjoy home cooked traditional Greek fare with ambiance that portraits the feel of Greece.",
    url: "http://www.stamnataverna.com/"
}, {
    name: "Strip House",
    town: "Livingston",
    cuisine: "Steakhouse",
    description: "Serving cuts of meat primed to perfection, an extensive wine list, and their famed 24-layer chocolate cake.",
    url: "http://www.striphousenewjersey.com/"
}, {
    name: "Fricasse French Bistro",
    town: "Montclair",
    cuisine: "French",
    description:...