Saved: 2017-11-17 16:24

Torey Heinz committed Nov 20, 2017
commit fbff7d605d89866484e3af35dda961296c841763
Showing 10 changed files with 224 additions and 87 deletions
app/content_types/featured_cards.yml +66 -0
@@ @@ -0,0 +1,66 @@
+ # Human readable name of this type
+ name: Featured Cards
+
+ # Lowercase, underscored handle used to access this type
+ slug: featured_cards
+
+ # Explanatory text displayed in the back-office
+ description: Home Page Features
+
+ # Slug of field used to identify entries by default, such as the title
+ label_field_name: title
+
+ # Valid values: manually, created_at, updated_at, or the slug of any field
+ order_by: manually
+
+ # Valid values: asc (ascending) and desc (descending). Set to asc by default.
+ # order_direction: asc
+
+ # Specify a field slug to group entries by that field in the back-office.
+ # group_by: <your field>
+
+ # Activate public 'create' API (e.g for a contact form)
+ # public_submission_enabled: false
+
+ # Array of emails to be notified of new entries made with the public API
+ # public_submission_accounts: ['john@example.com']
+
+ # Control the display of the content type in the back-office.
+ # display_settings:
+ # seo: false # display the SEO tab for the content entries
+ # advanced: false # display the Advanced tab for the content entries
+ # position: 1 # position in the sidebar menu
+ # hidden: false # hidden for authors?
+
+ # By default, the back-office displays the _label property (see label_field_name) of the content entry. This can be modified by writing your own Liquid template below:
+ # entry_template: '<a href="{{ link }}">{{ entry._label }}</a>' # The default template
+
+ # A list describing each field
+ fields:
+ - title: # The lowercase, underscored name of the field
+ label: Title # Human readable name of the field
+ type: string
+ required: true
+ hint: Short Title
+ localized: false
+ # text_formatting: html # html (uses rich text editor), markdown or text (uses plain text editor)
+
+ - url:
+ label: Path
+ type: string
+ required: true
+
+ - intro: # The lowercase, underscored name of the field
+ label: Intro # Human readable name of the field
+ type: text
+ required: true
+ hint: Short Intro
+ localized: false
+ text_formatting: html # html (uses rich text editor), markdown or text (uses plain text editor)
+
+ - image: # The lowercase, underscored name of the field
+ label: Image # Human readable name of the field
+ type: file
+ required: false
+ hint: Image should be at least 600x300px
+ localized: false
app/content_types/products.yml +58 -0
@@ @@ -0,0 +1,58 @@
+ # Human readable name of this type
+ name: Products
+
+ # Lowercase, underscored handle used to access this type
+ slug: products
+
+ # Explanatory text displayed in the back-office
+ description: In Stock Items offered by Choice Castings
+
+ # Slug of field used to identify entries by default, such as the title
+ label_field_name: title
+
+ # Valid values: manually, created_at, updated_at, or the slug of any field
+ order_by: manually
+
+ # Valid values: asc (ascending) and desc (descending). Set to asc by default.
+ # order_direction: asc
+
+ # Specify a field slug to group entries by that field in the back-office.
+ # group_by: <your field>
+
+ # Activate public 'create' API (e.g for a contact form)
+ # public_submission_enabled: false
+
+ # Array of emails to be notified of new entries made with the public API
+ # public_submission_accounts: ['john@example.com']
+
+ # Control the display of the content type in the back-office.
+ # display_settings:
+ # seo: false # display the SEO tab for the content entries
+ # advanced: false # display the Advanced tab for the content entries
+ # position: 1 # position in the sidebar menu
+ # hidden: false # hidden for authors?
+
+ # By default, the back-office displays the _label property (see label_field_name) of the content entry. This can be modified by writing your own Liquid template below:
+ # entry_template: '<a href="{{ link }}">{{ entry._label }}</a>' # The default template
+
+ # A list describing each field
+ fields:
+ - title: # The lowercase, underscored name of the field
+ label: Title # Human readable name of the field
+ type: string
+ required: true
+ # hint: Explanatory text displayed in the back office
+ localized: false
+
+ - image:
+ label: Image
+ type: file
+
+ - description: # The lowercase, underscored name of the field
+ label: Description # Human readable name of the field
+ type: text
+ required: false
+ # hint: Explanatory text displayed in the back office
+ localized: false
+ text_formatting: html # html (uses rich text editor), markdown or text (uses plain text editor)
+
app/views/pages/index.liquid +17 -60
@@ @@ -12,38 +12,17 @@ is_layout: false
<div class="row expanded services text-center">
<h1>How can Choice Castings help you?</h1>
<div class="row wide gutter-small" data-equalizer>
- <div class="medium-4 column">
- <div class="card">
- <div class="title card-divider" data-equalizer-watch>
- <p class="lead">Need Expedited Service?</p>
- <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
- tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
- quis nostrud exercitation ullamco</p>
- </div>
- <img src="{{ 'need-expedited-service.jpg' | theme_image_url | resize: '600x300#' }}">
- </div>
- </div>
- <div class="medium-4 column">
- <div class="card">
- <div class="title card-divider" data-equalizer-watch>
- <p class="lead">Quality Concerns?</p>
- <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
- quis nostrud exercitation ullamco</p>
- </div>
- <img src="{{ 'quality-concerns.jpg' | theme_image_url | resize: '600x300#' }}">
- </div>
- </div>
- <div class="medium-4 column">
- <div class="card">
- <div class="title card-divider" data-equalizer-watch>
- <p class="lead">Offshoring Headaches?</p>
- <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
- tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
- quis nostrud exercitation ullamco</p>
+ {% for card in contents.featured_cards %}
+ <div class="medium-4 column">
+ <div class="card">
+ <div class="title card-divider" data-equalizer-watch>
+ <p class="lead">{{ card.title }}</p>
+ {{ card.intro }}
+ </div>
+ <img src="{{ card.image.url | resize: '600x300#' }}">
</div>
- <img src="{{ 'offshoring-headaches.jpg' | theme_image_url | resize: '600x300#' }}">
</div>
- </div>
+ {% endfor %}
</div>
</div>
<div class="row expanded content">
@@ @@ -98,38 +77,16 @@ is_layout: false
<div class="row stock-items expanded">
<div class="row wide small-up-2 large-up-4 text-center gutter-small">
<h3 class="">In Stock Items</h3>
- <div class="column">
- <div class="card">
- <img src="{{ 'nest-caps.jpg' | theme_image_url | resize: '200x200#' }}">
- <div class="title card-divider" data-equalizer-watch>
- <p class="lead">NEST CAPS</p>
- </div>
- </div>
- </div>
- <div class="column">
- <div class="card">
- <img src="{{ 'wing-nuts.jpg' | theme_image_url | resize: '200x200#' }}">
- <div class="title card-divider" data-equalizer-watch>
- <p class="lead">WING NUTS</p>
- </div>
- </div>
- </div>
- <div class="column">
- <div class="card">
- <img src="{{ 'hand-wheel.jpg' | theme_image_url | resize: '200x200#' }}">
- <div class="title card-divider" data-equalizer-watch>
- <p class="lead">HAND WHEELS</p>
- </div>
- </div>
- </div>
- <div class="column">
- <div class="card">
- <img src="{{ 'spike-grid.jpg' | theme_image_url | resize: '200x200#' }}">
- <div class="title card-divider" data-equalizer-watch>
- <p class="lead">SPIKE GRIDS</p>
+ {% for product in contents.products %}
+ <div class="column">
+ <div class="card">
+ <img src="{{ product.image.url | resize: '200x200#' }}">
+ <div class="title card-divider" data-equalizer-watch>
+ <p class="lead">{{ product.title }}</p>
+ </div>
</div>
</div>
- </div>
+ {% endfor %}
</div>
</div>
</div>
app/views/pages/layouts/application.liquid +3 -1
@@ @@ -59,11 +59,13 @@ is_layout: true
{% comment %}<img class="banner-image" src="{{ 'banner-1.jpg' | theme_image_url }}">{% endcomment %}
<p class="lead">A Single Source for <br>ALL of Your Casting Needs</p>
</div>
- <div class="wrapper row expanded">
+ <div class="row expanded">
{% block main %}
<div class="row">
+ <div class="column content page">
{% editable_text content %}Lorem ipsum{% endeditable_text %}
</div>
+ </div>
{% endblock %}
<footer class="row expanded">
<div class="row wide">
config/deploy.yml +7 -1
@@ @@ -1,5 +1,11 @@
+ development:
+ host: http://cms.dev
+ handle: thoughtless-valley-1625
+ email: torey@teagles.io
+ api_key: d935dbe44cd303e463cd80f4a266acd03827bb0f
+
production:
host: http://cms.teagles.io
handle: choice-castings
email: torey@teagles.io
- api_key: 688697709bb800280ffd38d5484b1f8bf8b9212d
\ No newline at end of file
+ api_key: 688697709bb800280ffd38d5484b1f8bf8b9212d
data/featured_cards.yml +16 -0
@@ @@ -0,0 +1,16 @@
+ - "Need Expedited Service?":
+ url: /offshoring-headaches
+ intro: Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco
+ image: /images/quality-concerns.jpg
+
+ - "Quality Concerns?":
+ url: /offshoring-headaches
+ intro: Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco
+ image: /images/quality-concerns.jpg
+
+ - "Offshoring Headaches?":
+ url: /offshoring-headaches
+ intro: Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco
+ image: /images/quality-concerns.jpg
+
+
data/products.yml +19 -0
@@ @@ -0,0 +1,19 @@
+ - "Sample 1":
+ description: "Velit voluptatem quasi nesciunt dolorem molestiae earum ipsam. Natus maxime aperiam qui. Itaque placeat quas ut laudantium et. Voluptas et ut sed temporibus. Sunt nam porro occaecati animi recusandae voluptatem."
+ image: /images/wing-nuts.jpg # Path to a file in the public/samples folder or to a remote and external file.
+
+ - "Sample 2":
+ description: "Similique laboriosam saepe. Delectus soluta alias ut. Necessitatibus et omnis quis ab a voluptate sequi."
+ image: /images/wing-nuts.jpg # Path to a file in the public/samples folder or to a remote and external file.
+ # image: /samples/products/yourfile.txt # Path to a file in the public/samples folder or to a remote and external file.
+
+ - "Sample 3":
+ description: "Porro minus similique nostrum. Impedit mollitia eius assumenda earum enim. Molestiae quia quisquam nam ut provident. Ut unde facilis voluptate nihil. Similique et exercitationem molestiae ut."
+ image: /images/wing-nuts.jpg # Path to a file in the public/samples folder or to a remote and external file.
+ # image: /samples/products/yourfile.txt # Path to a file in the public/samples folder or to a remote and external file.
+
+ - "Sample 4":
+ description: "Incidunt id eveniet voluptas qui soluta. Pariatur occaecati dolores dolore esse. Possimus qui dolorem minus ut. Quis numquam minima vero consectetur."
+ image: /images/wing-nuts.jpg # Path to a file in the public/samples folder or to a remote and external file.
+ # image: /samples/products/yourfile.txt # Path to a file in the public/samples folder or to a remote and external file.
+
log/server.log +7 -0
@@ @@ -44,3 +44,10 @@ I, [2017-11-10T14:24:40.924767 #3476] INFO -- : Listening on 0.0.0.0:3000, CTRL
I, [2017-11-13T14:14:40.527452 #5046] INFO -- : Thin web server (v1.6.4 codename Gob Bluth)
I, [2017-11-13T14:14:40.527716 #5046] INFO -- : Maximum connections set to 1024
I, [2017-11-13T14:14:40.527742 #5046] INFO -- : Listening on 0.0.0.0:3000, CTRL+C to stop
+ I, [2017-11-16T02:35:05.296842 #18976] INFO -- : Thin web server (v1.6.4 codename Gob Bluth)
+ I, [2017-11-16T02:35:05.297123 #18976] INFO -- : Maximum connections set to 1024
+ I, [2017-11-16T02:35:05.297154 #18976] INFO -- : Listening on 0.0.0.0:3000, CTRL+C to stop
+ I, [2017-11-16T19:38:28.286149 #18976] INFO -- : Waiting for 2 connection(s) to finish, can take up to 30 sec, CTRL+C to stop now
+ I, [2017-11-16T19:38:31.023159 #22580] INFO -- : Thin web server (v1.6.4 codename Gob Bluth)
+ I, [2017-11-16T19:38:31.023250 #22580] INFO -- : Maximum connections set to 1024
+ I, [2017-11-16T19:38:31.023268 #22580] INFO -- : Listening on 0.0.0.0:3000, CTRL+C to stop
public/stylesheets/_settings.scss +8 -8
@@ @@ -141,20 +141,20 @@ $header-lineheight: 1.4;
$header-margin-bottom: 0.5rem;
$header-styles: (
small: (
- 'h1': ('font-size': 24),
- 'h2': ('font-size': 20),
- 'h3': ('font-size': 19),
- 'h4': ('font-size': 18),
- 'h5': ('font-size': 17),
- 'h6': ('font-size': 16),
+ 'h1': ('font-size': 30),
+ 'h2': ('font-size': 28),
+ 'h3': ('font-size': 26),
+ 'h4': ('font-size': 26),
+ 'h5': ('font-size': 26),
+ 'h6': ('font-size': 26),
),
medium: (
'h1': ('font-size': 48),
'h2': ('font-size': 40),
'h3': ('font-size': 31),
'h4': ('font-size': 25),
- 'h5': ('font-size': 20),
- 'h6': ('font-size': 16),
+ 'h5': ('font-size': 25),
+ 'h6': ('font-size': 25),
),
);
$header-text-rendering: optimizeLegibility;
public/stylesheets/app.scss +23 -17
@@ @@ -53,16 +53,32 @@ html {
background: image-url('/images/body-bg.png') repeat;
}
- div.wrapper {
+ .content {
background: #fff;
- // padding-top: rem-calc(10);
- // box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
+ padding: rem-calc(10);
+ }
+
+ .content.page {
+ margin: rem-calc(10);
+ box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
+ font-size: 1.4rem;
+
+ @include breakpoint(small only) {
+ font-size: 1.2rem;
+ }
}
.row.wide {
max-width: rem-calc(1200);
}
+ .row.services {
+ background-color: #E1E2E4;
+ }
+
+ .row.stock-items {
+ background-color: #E1E2E4;
+ }
.top-bar {
box-shadow: 0 1px 2px rgba(0,0,0,0.24);
// background-color: #201E1F;
@@ @@ -106,6 +122,9 @@ div.wrapper {
body.index {
.banner {
height: 350px;
+ @include breakpoint(small only) {
+ height: 250px;
+ }
}
}
@@ @@ -116,7 +135,7 @@ body.index {
background-size: cover;
@include breakpoint(small only) {
- height: 250px;
+ height: 200px;
}
p.lead {
@@ @@ -140,19 +159,6 @@ body.index {
}
-
- .row.services {
- background-color: #E1E2E4;
- }
-
- .row.content {
- padding: rem-calc(10) 0;
- }
-
- .row.stock-items {
- background-color: #E1E2E4;
- }
-
.card {
.title {
background: linear-gradient(#4D5D66, #687B86); /* Standard syntax */