first commit
This commit is contained in:
commit
019537dcc7
|
@ -0,0 +1,4 @@
|
||||||
|
.DS_Store
|
||||||
|
bower_components
|
||||||
|
node_modules
|
||||||
|
npm-debug.log
|
|
@ -0,0 +1,5 @@
|
||||||
|
# Changelog
|
||||||
|
|
||||||
|
## Version 1.0 (November 19, 2015)
|
||||||
|
|
||||||
|
Initial release.
|
|
@ -0,0 +1,81 @@
|
||||||
|
# Foundation S
|
||||||
|
|
||||||
|
This is an Omeka S theme based on ZURB Foundation Sites. It currently comes with a default stylesheet for prototyping as well as 3 other style options.
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
For basic out-of-the-box use of the theme, follow the [Omeka S User Manual instructions for installing themes](https://omeka.org/s/docs/user-manual/sites/site_theme/#installing-themes).
|
||||||
|
|
||||||
|
For more advanced use, such as customizing the theme with Sass, you'll need to install the tools with [NodeJS](https://nodejs.org/en/) (0.12 or greater). Navigate to your theme directory and run `npm install`.
|
||||||
|
|
||||||
|
## Theme Configuration
|
||||||
|
|
||||||
|
* **Stylesheet**: The theme provides 4 style options.
|
||||||
|
* **Default** uses ZURB Foundation's default styles for prototyping, which are all viewable in their documentation under the [Kitchen Sink](https://get.foundation/sites/docs/kitchen-sink.html).
|
||||||
|
* **Revolution** aims to capture the feel of old documents and juxtaposes it with a bright red accent. It includes a textured paper background image.
|
||||||
|
* **Sea Foam** offers a clean, friendly look with a teal palette.
|
||||||
|
* **Inkwell** features a high contrast serif family for its typography, as well as sunny yellow accents.
|
||||||
|
* **Navigation layouts**: Global navigation can display as a **horizontal top bar with optional dropdown menus** or a **left vertical column**.
|
||||||
|
* **Show Top Navigation Child Pages**: Toggle display of child pages within the main navigation.
|
||||||
|
* **Top Navigation Depth**: If the main navigation is set to display child pages, this setting controls how many navigation levels to display. Setting this to '0' shows all levels.
|
||||||
|
* **Logo**: Upload an image asset to use as a logo in place of a text site title.
|
||||||
|
* **Footer Content**: Control what appears in the footer. This field takes HTML markup.
|
||||||
|
* **Layout for Browse Pages**: Select how to display items within their "browse" views.
|
||||||
|
* **Grid**: Items are organized into rows and columns. This is recommended for items that prominently feature images.
|
||||||
|
* **List**: Items are stacked into a single column.
|
||||||
|
* **Toggle (default: grid)**: Site visitors can choose to display the browse views as grids or lists, and grids are the default.
|
||||||
|
* **Toggle (default: list)**: Site visitors can choose to display the browse views as grids or lists, and lists are the default.
|
||||||
|
* **Layout for Show Pages**: Resource metadata can show display as **stacked** with properties as headings above their values, or **inline** with properties as headings inline with their values.
|
||||||
|
|
||||||
|
## Customizing the Theme
|
||||||
|
|
||||||
|
For those dipping their toes into customizing sites with CSS, the [CSS Editor](https://omeka.org/s/modules/CSSEditor/) module allows site administrators to write style overrides.
|
||||||
|
|
||||||
|
For advanced CSS and Sass users, Foundation S uses ZURB Foundation Site's toolkit that includes variables and mixins for managing and extending many styles.
|
||||||
|
|
||||||
|
### Sass Tasks
|
||||||
|
|
||||||
|
Run these commands within the theme's root directory.
|
||||||
|
|
||||||
|
* **npm start**: While this task runs, it watches for changes to sass files and recompiles the CSS.
|
||||||
|
* **gulp sass**: This is the one-off task for compiling the current Sass/CSS.
|
||||||
|
|
||||||
|
### Sass File Structure
|
||||||
|
|
||||||
|
Foundation S comes with the Default theme, as well as 3 other customized stylesheets that were built on top of Default. The "Sea Foam" theme has the fewest overrides and is thus the easiest reference for a custom theme model.
|
||||||
|
|
||||||
|
**/asset/sass/seafoam.scss**
|
||||||
|
|
||||||
|
```
|
||||||
|
@charset 'utf-8';
|
||||||
|
|
||||||
|
@import 'globals-default';
|
||||||
|
@import 'globals-seafoam';
|
||||||
|
@import 'settings';
|
||||||
|
|
||||||
|
// Sea Foam Settings
|
||||||
|
|
||||||
|
$topbar-background: $primary-color;
|
||||||
|
|
||||||
|
$thumbnail-border: 4px solid $secondary-color;
|
||||||
|
$thumbnail-shadow: none;
|
||||||
|
$thumbnail-shadow-hover: 0 0 6px 1px rgba($primary-color, 0.5);
|
||||||
|
|
||||||
|
$button-background: $secondary-color;
|
||||||
|
$button-color: $primary-color;
|
||||||
|
|
||||||
|
@import 'foundation-core';
|
||||||
|
@import 'omeka';
|
||||||
|
|
||||||
|
header a {
|
||||||
|
color: $white;
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
Much of the customizability within the theme lies in managing its settings variables. ZURB Foundation's default global variables from their original `_settings.scss` all sit in `_globals-default.scss`. Many of these variables are used throughout the rest of `_settings.scss`, so it was necessary to separate them out into their own file if the theme writer wants to set their own global variables. Here all the overrides live in `_globals-seafoam.scss`, and so all overridden values will be appropriately updated for use throughout the rest of `_settings.scss`.
|
||||||
|
|
||||||
|
Any non-global setting variable overrides should come after the import for `_settings.scss` and before their usagee in the rule files, `_foundation-core.scss`, and `_omeka.scss`.
|
||||||
|
|
||||||
|
ZURB Foundation's default style rules are all managed in `_foundation-core.scss`. All style rules specific to Omeka S are contained within `_omeka.scss`.
|
||||||
|
|
||||||
|
After all those imports come all style rules specific to the theme.
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Binary file not shown.
After Width: | Height: | Size: 19 KiB |
Binary file not shown.
After Width: | Height: | Size: 64 KiB |
|
@ -0,0 +1,16 @@
|
||||||
|
(function($) {
|
||||||
|
$(document).ready(function() {
|
||||||
|
$('.layout-toggle button').click(function() {
|
||||||
|
$('.layout-toggle button:disabled').removeAttr('disabled');
|
||||||
|
$(this).attr('disabled', true);
|
||||||
|
$('.resources').toggleClass('resource-list').toggleClass('resource-grid');
|
||||||
|
$('.resources .resource').toggleClass('media-object');
|
||||||
|
$('.resource-meta, .resource-image').toggleClass('media-object-section');
|
||||||
|
});
|
||||||
|
|
||||||
|
$('.browse-toggle').click(function() {
|
||||||
|
$('.browse-controls').toggleClass('open closed');
|
||||||
|
$(this).toggleClass('open closed');
|
||||||
|
});
|
||||||
|
});
|
||||||
|
})(jQuery)
|
|
@ -0,0 +1,61 @@
|
||||||
|
@import 'foundation';
|
||||||
|
@import 'motion-ui';
|
||||||
|
|
||||||
|
// Global styles
|
||||||
|
@include foundation-global-styles;
|
||||||
|
@include foundation-forms;
|
||||||
|
@include foundation-typography;
|
||||||
|
|
||||||
|
// Grids (choose one)
|
||||||
|
@include foundation-xy-grid-classes;
|
||||||
|
// @include foundation-grid;
|
||||||
|
// @include foundation-flex-grid;
|
||||||
|
|
||||||
|
// Generic components
|
||||||
|
@include foundation-button;
|
||||||
|
@include foundation-button-group;
|
||||||
|
@include foundation-close-button;
|
||||||
|
@include foundation-label;
|
||||||
|
@include foundation-progress-bar;
|
||||||
|
@include foundation-slider;
|
||||||
|
@include foundation-switch;
|
||||||
|
@include foundation-table;
|
||||||
|
// Basic components
|
||||||
|
@include foundation-badge;
|
||||||
|
@include foundation-breadcrumbs;
|
||||||
|
@include foundation-callout;
|
||||||
|
@include foundation-card;
|
||||||
|
@include foundation-dropdown;
|
||||||
|
@include foundation-pagination;
|
||||||
|
@include foundation-tooltip;
|
||||||
|
|
||||||
|
// Containers
|
||||||
|
@include foundation-accordion;
|
||||||
|
@include foundation-media-object;
|
||||||
|
@include foundation-orbit;
|
||||||
|
@include foundation-responsive-embed;
|
||||||
|
@include foundation-tabs;
|
||||||
|
@include foundation-thumbnail;
|
||||||
|
// Menu-based containers
|
||||||
|
@include foundation-menu;
|
||||||
|
@include foundation-menu-icon;
|
||||||
|
@include foundation-accordion-menu;
|
||||||
|
@include foundation-drilldown-menu;
|
||||||
|
@include foundation-dropdown-menu;
|
||||||
|
|
||||||
|
// Layout components
|
||||||
|
@include foundation-off-canvas;
|
||||||
|
@include foundation-reveal;
|
||||||
|
@include foundation-sticky;
|
||||||
|
@include foundation-title-bar;
|
||||||
|
@include foundation-top-bar;
|
||||||
|
|
||||||
|
// Helpers
|
||||||
|
@include foundation-float-classes;
|
||||||
|
@include foundation-flex-classes;
|
||||||
|
@include foundation-visibility-classes;
|
||||||
|
// @include foundation-prototype-classes;
|
||||||
|
|
||||||
|
// Motion UI
|
||||||
|
@include motion-ui-transitions;
|
||||||
|
@include motion-ui-animations;
|
|
@ -0,0 +1,35 @@
|
||||||
|
@import "util/util";
|
||||||
|
|
||||||
|
$global-font-size: 100%;
|
||||||
|
$global-width: rem-calc(1200);
|
||||||
|
$global-lineheight: 1.5;
|
||||||
|
$foundation-palette: (
|
||||||
|
primary: #1779ba,
|
||||||
|
secondary: #767676,
|
||||||
|
success: #3adb76,
|
||||||
|
warning: #ffae00,
|
||||||
|
alert: #cc4b37,
|
||||||
|
);
|
||||||
|
$light-gray: #e6e6e6;
|
||||||
|
$medium-gray: #cacaca;
|
||||||
|
$dark-gray: #8a8a8a;
|
||||||
|
$black: #0a0a0a;
|
||||||
|
$white: #fefefe;
|
||||||
|
$body-background: $white;
|
||||||
|
$body-font-color: $black;
|
||||||
|
$body-font-family: 'Helvetica Neue', Helvetica, Roboto, Arial, sans-serif;
|
||||||
|
$body-antialiased: true;
|
||||||
|
$global-margin: 1rem;
|
||||||
|
$global-padding: 1rem;
|
||||||
|
$global-position: 1rem;
|
||||||
|
$global-weight-normal: normal;
|
||||||
|
$global-weight-bold: bold;
|
||||||
|
$global-radius: 0;
|
||||||
|
$global-menu-padding: 0.7rem 1rem;
|
||||||
|
$global-menu-nested-margin: 1rem;
|
||||||
|
$global-text-direction: ltr;
|
||||||
|
$global-flexbox: true;
|
||||||
|
$global-prototype-breakpoints: false;
|
||||||
|
$global-button-cursor: auto;
|
||||||
|
$global-color-pick-contrast-tolerance: 0;
|
||||||
|
$print-transparent-backgrounds: true;
|
|
@ -0,0 +1,12 @@
|
||||||
|
@import "util/util";
|
||||||
|
@import url('https://fonts.googleapis.com/css?family=EB+Garamond:400,400i,700,700i|Playfair+Display:400,400i&display=swap');
|
||||||
|
|
||||||
|
$foundation-palette: (
|
||||||
|
primary: #ffcc00,
|
||||||
|
secondary: #c5f4f2,
|
||||||
|
success: #3adb76,
|
||||||
|
warning: #ffae00,
|
||||||
|
alert: #cc4b37,
|
||||||
|
);
|
||||||
|
$global-font-size: 18px;
|
||||||
|
$body-font-family: 'EB Garamond', serif;
|
|
@ -0,0 +1,15 @@
|
||||||
|
@import "util/util";
|
||||||
|
@import url('https://fonts.googleapis.com/css?family=IM+Fell+DW+Pica:400,400i|IM+Fell+English+SC|Lusitana:400,700&display=swap');
|
||||||
|
|
||||||
|
$brown: #520603;
|
||||||
|
$red: #dd231b;
|
||||||
|
$gold: #e8bf00;
|
||||||
|
$foundation-palette: (
|
||||||
|
primary: $red,
|
||||||
|
secondary: $gold,
|
||||||
|
success: #3adb76,
|
||||||
|
warning: #ffae00,
|
||||||
|
alert: #cc4b37,
|
||||||
|
);
|
||||||
|
$body-font-color: $brown;
|
||||||
|
$body-font-family: 'Lusitana', serif;
|
|
@ -0,0 +1,11 @@
|
||||||
|
@import "util/util";
|
||||||
|
@import url('https://fonts.googleapis.com/css?family=Source+Sans+Pro:400,400i,900,900i&display=swap');
|
||||||
|
|
||||||
|
$foundation-palette: (
|
||||||
|
primary: #007a76,
|
||||||
|
secondary: #c5f4f2,
|
||||||
|
success: #3adb76,
|
||||||
|
warning: #ffae00,
|
||||||
|
alert: #cc4b37,
|
||||||
|
);
|
||||||
|
$body-font-family: 'Source Sans Pro', sans-serif;
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,837 @@
|
||||||
|
// Foundation for Sites Settings
|
||||||
|
// -----------------------------
|
||||||
|
//
|
||||||
|
// Table of Contents:
|
||||||
|
//
|
||||||
|
// 1. Global
|
||||||
|
// 2. Breakpoints
|
||||||
|
// 3. The Grid
|
||||||
|
// 4. Base Typography
|
||||||
|
// 5. Typography Helpers
|
||||||
|
// 6. Abide
|
||||||
|
// 7. Accordion
|
||||||
|
// 8. Accordion Menu
|
||||||
|
// 9. Badge
|
||||||
|
// 10. Breadcrumbs
|
||||||
|
// 11. Button
|
||||||
|
// 12. Button Group
|
||||||
|
// 13. Callout
|
||||||
|
// 14. Card
|
||||||
|
// 15. Close Button
|
||||||
|
// 16. Drilldown
|
||||||
|
// 17. Dropdown
|
||||||
|
// 18. Dropdown Menu
|
||||||
|
// 19. Flexbox Utilities
|
||||||
|
// 20. Forms
|
||||||
|
// 21. Label
|
||||||
|
// 22. Media Object
|
||||||
|
// 23. Menu
|
||||||
|
// 24. Meter
|
||||||
|
// 25. Off-canvas
|
||||||
|
// 26. Orbit
|
||||||
|
// 27. Pagination
|
||||||
|
// 28. Progress Bar
|
||||||
|
// 29. Prototype Arrow
|
||||||
|
// 30. Prototype Border-Box
|
||||||
|
// 31. Prototype Border-None
|
||||||
|
// 32. Prototype Bordered
|
||||||
|
// 33. Prototype Display
|
||||||
|
// 34. Prototype Font-Styling
|
||||||
|
// 35. Prototype List-Style-Type
|
||||||
|
// 36. Prototype Overflow
|
||||||
|
// 37. Prototype Position
|
||||||
|
// 38. Prototype Rounded
|
||||||
|
// 39. Prototype Separator
|
||||||
|
// 40. Prototype Shadow
|
||||||
|
// 41. Prototype Sizing
|
||||||
|
// 42. Prototype Spacing
|
||||||
|
// 43. Prototype Text-Decoration
|
||||||
|
// 44. Prototype Text-Transformation
|
||||||
|
// 45. Prototype Text-Utilities
|
||||||
|
// 46. Responsive Embed
|
||||||
|
// 47. Reveal
|
||||||
|
// 48. Slider
|
||||||
|
// 49. Switch
|
||||||
|
// 50. Table
|
||||||
|
// 51. Tabs
|
||||||
|
// 52. Thumbnail
|
||||||
|
// 53. Title Bar
|
||||||
|
// 54. Tooltip
|
||||||
|
// 55. Top Bar
|
||||||
|
// 56. Xy Grid
|
||||||
|
|
||||||
|
@import 'util/util';
|
||||||
|
|
||||||
|
// 1. Global
|
||||||
|
// ---------
|
||||||
|
|
||||||
|
// Organized by theme: `_globals-THEME.scss`
|
||||||
|
|
||||||
|
@include add-foundation-colors;
|
||||||
|
$print-hrefs: true;
|
||||||
|
|
||||||
|
// 2. Breakpoints
|
||||||
|
// --------------
|
||||||
|
|
||||||
|
$breakpoints: (
|
||||||
|
small: 0,
|
||||||
|
medium: 640px,
|
||||||
|
large: 1024px,
|
||||||
|
xlarge: 1200px,
|
||||||
|
xxlarge: 1440px,
|
||||||
|
);
|
||||||
|
$print-breakpoint: large;
|
||||||
|
$breakpoint-classes: (small medium large);
|
||||||
|
|
||||||
|
// 3. The Grid
|
||||||
|
// -----------
|
||||||
|
|
||||||
|
$grid-row-width: $global-width;
|
||||||
|
$grid-column-count: 12;
|
||||||
|
$grid-column-gutter: (
|
||||||
|
small: 20px,
|
||||||
|
medium: 30px,
|
||||||
|
);
|
||||||
|
$grid-column-align-edge: true;
|
||||||
|
$grid-column-alias: 'columns';
|
||||||
|
$block-grid-max: 8;
|
||||||
|
|
||||||
|
// 4. Base Typography
|
||||||
|
// ------------------
|
||||||
|
|
||||||
|
$header-font-family: $body-font-family;
|
||||||
|
$header-font-weight: $global-weight-normal;
|
||||||
|
$header-font-style: normal;
|
||||||
|
$font-family-monospace: Consolas, 'Liberation Mono', Courier, monospace;
|
||||||
|
$header-color: inherit;
|
||||||
|
$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),
|
||||||
|
),
|
||||||
|
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),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
$header-text-rendering: optimizeLegibility;
|
||||||
|
$small-font-size: 80%;
|
||||||
|
$header-small-font-color: $medium-gray;
|
||||||
|
$paragraph-lineheight: 1.6;
|
||||||
|
$paragraph-margin-bottom: 1rem;
|
||||||
|
$paragraph-text-rendering: optimizeLegibility;
|
||||||
|
$code-color: $black;
|
||||||
|
$code-font-family: $font-family-monospace;
|
||||||
|
$code-font-weight: $global-weight-normal;
|
||||||
|
$code-background: $light-gray;
|
||||||
|
$code-border: 1px solid $medium-gray;
|
||||||
|
$code-padding: rem-calc(2 5 1);
|
||||||
|
$anchor-color: $primary-color;
|
||||||
|
$anchor-color-hover: scale-color($anchor-color, $lightness: -14%);
|
||||||
|
$anchor-text-decoration: none;
|
||||||
|
$anchor-text-decoration-hover: none;
|
||||||
|
$hr-width: $global-width;
|
||||||
|
$hr-border: 1px solid $medium-gray;
|
||||||
|
$hr-margin: rem-calc(20) auto;
|
||||||
|
$list-lineheight: $paragraph-lineheight;
|
||||||
|
$list-margin-bottom: $paragraph-margin-bottom;
|
||||||
|
$list-style-type: disc;
|
||||||
|
$list-style-position: outside;
|
||||||
|
$list-side-margin: 1.25rem;
|
||||||
|
$list-nested-side-margin: 1.25rem;
|
||||||
|
$defnlist-margin-bottom: 1rem;
|
||||||
|
$defnlist-term-weight: $global-weight-bold;
|
||||||
|
$defnlist-term-margin-bottom: 0.3rem;
|
||||||
|
$blockquote-color: $dark-gray;
|
||||||
|
$blockquote-padding: rem-calc(9 20 0 19);
|
||||||
|
$blockquote-border: 1px solid $medium-gray;
|
||||||
|
$cite-font-size: rem-calc(13);
|
||||||
|
$cite-color: $dark-gray;
|
||||||
|
$cite-pseudo-content: '\2014 \0020';
|
||||||
|
$keystroke-font: $font-family-monospace;
|
||||||
|
$keystroke-color: $black;
|
||||||
|
$keystroke-background: $light-gray;
|
||||||
|
$keystroke-padding: rem-calc(2 4 0);
|
||||||
|
$keystroke-radius: $global-radius;
|
||||||
|
$abbr-underline: 1px dotted $black;
|
||||||
|
|
||||||
|
// 5. Typography Helpers
|
||||||
|
// ---------------------
|
||||||
|
|
||||||
|
$lead-font-size: $global-font-size * 1.25;
|
||||||
|
$lead-lineheight: 1.6;
|
||||||
|
$subheader-lineheight: 1.4;
|
||||||
|
$subheader-color: $dark-gray;
|
||||||
|
$subheader-font-weight: $global-weight-normal;
|
||||||
|
$subheader-margin-top: 0.2rem;
|
||||||
|
$subheader-margin-bottom: 0.5rem;
|
||||||
|
$stat-font-size: 2.5rem;
|
||||||
|
|
||||||
|
// 6. Abide
|
||||||
|
// --------
|
||||||
|
|
||||||
|
$abide-inputs: true;
|
||||||
|
$abide-labels: true;
|
||||||
|
$input-background-invalid: get-color(alert);
|
||||||
|
$form-label-color-invalid: get-color(alert);
|
||||||
|
$input-error-color: get-color(alert);
|
||||||
|
$input-error-font-size: rem-calc(12);
|
||||||
|
$input-error-font-weight: $global-weight-bold;
|
||||||
|
|
||||||
|
// 7. Accordion
|
||||||
|
// ------------
|
||||||
|
|
||||||
|
$accordion-background: $white;
|
||||||
|
$accordion-plusminus: true;
|
||||||
|
$accordion-title-font-size: rem-calc(12);
|
||||||
|
$accordion-item-color: $primary-color;
|
||||||
|
$accordion-item-background-hover: $light-gray;
|
||||||
|
$accordion-item-padding: 1.25rem 1rem;
|
||||||
|
$accordion-content-background: $white;
|
||||||
|
$accordion-content-border: 1px solid $light-gray;
|
||||||
|
$accordion-content-color: $body-font-color;
|
||||||
|
$accordion-content-padding: 1rem;
|
||||||
|
|
||||||
|
// 8. Accordion Menu
|
||||||
|
// -----------------
|
||||||
|
|
||||||
|
$accordionmenu-padding: $global-menu-padding;
|
||||||
|
$accordionmenu-nested-margin: $global-menu-nested-margin;
|
||||||
|
$accordionmenu-submenu-padding: $accordionmenu-padding;
|
||||||
|
$accordionmenu-arrows: true;
|
||||||
|
$accordionmenu-arrow-color: $primary-color;
|
||||||
|
$accordionmenu-item-background: null;
|
||||||
|
$accordionmenu-border: null;
|
||||||
|
$accordionmenu-submenu-toggle-background: null;
|
||||||
|
$accordion-submenu-toggle-border: $accordionmenu-border;
|
||||||
|
$accordionmenu-submenu-toggle-width: 40px;
|
||||||
|
$accordionmenu-submenu-toggle-height: $accordionmenu-submenu-toggle-width;
|
||||||
|
$accordionmenu-arrow-size: 6px;
|
||||||
|
|
||||||
|
// 9. Badge
|
||||||
|
// --------
|
||||||
|
|
||||||
|
$badge-background: $primary-color;
|
||||||
|
$badge-color: $white;
|
||||||
|
$badge-color-alt: $black;
|
||||||
|
$badge-palette: $foundation-palette;
|
||||||
|
$badge-padding: 0.3em;
|
||||||
|
$badge-minwidth: 2.1em;
|
||||||
|
$badge-font-size: 0.6rem;
|
||||||
|
|
||||||
|
// 10. Breadcrumbs
|
||||||
|
// ---------------
|
||||||
|
|
||||||
|
$breadcrumbs-margin: 0 0 $global-margin 0;
|
||||||
|
$breadcrumbs-item-font-size: rem-calc(11);
|
||||||
|
$breadcrumbs-item-color: $primary-color;
|
||||||
|
$breadcrumbs-item-color-current: $black;
|
||||||
|
$breadcrumbs-item-color-disabled: $medium-gray;
|
||||||
|
$breadcrumbs-item-margin: 0.75rem;
|
||||||
|
$breadcrumbs-item-uppercase: true;
|
||||||
|
$breadcrumbs-item-separator: true;
|
||||||
|
$breadcrumbs-item-separator-item: '/';
|
||||||
|
$breadcrumbs-item-separator-item-rtl: '\\';
|
||||||
|
$breadcrumbs-item-separator-color: $medium-gray;
|
||||||
|
|
||||||
|
// 11. Button
|
||||||
|
// ----------
|
||||||
|
|
||||||
|
$button-font-family: inherit;
|
||||||
|
$button-padding: 0.85em 1em;
|
||||||
|
$button-margin: 0 0 $global-margin 0;
|
||||||
|
$button-fill: solid;
|
||||||
|
$button-background: $primary-color;
|
||||||
|
$button-background-hover: scale-color($button-background, $lightness: -15%);
|
||||||
|
$button-color: $white;
|
||||||
|
$button-color-alt: $black;
|
||||||
|
$button-radius: $global-radius;
|
||||||
|
$button-hollow-border-width: 1px;
|
||||||
|
$button-sizes: (
|
||||||
|
tiny: 0.6rem,
|
||||||
|
small: 0.75rem,
|
||||||
|
default: 0.9rem,
|
||||||
|
large: 1.25rem,
|
||||||
|
);
|
||||||
|
$button-palette: $foundation-palette;
|
||||||
|
$button-opacity-disabled: 0.25;
|
||||||
|
$button-background-hover-lightness: -20%;
|
||||||
|
$button-hollow-hover-lightness: -50%;
|
||||||
|
$button-transition: background-color 0.25s ease-out, color 0.25s ease-out;
|
||||||
|
$button-responsive-expanded: false;
|
||||||
|
|
||||||
|
// 12. Button Group
|
||||||
|
// ----------------
|
||||||
|
|
||||||
|
$buttongroup-margin: 1rem;
|
||||||
|
$buttongroup-spacing: 1px;
|
||||||
|
$buttongroup-child-selector: '.button';
|
||||||
|
$buttongroup-expand-max: 6;
|
||||||
|
$buttongroup-radius-on-each: true;
|
||||||
|
|
||||||
|
// 13. Callout
|
||||||
|
// -----------
|
||||||
|
|
||||||
|
$callout-background: $white;
|
||||||
|
$callout-background-fade: 85%;
|
||||||
|
$callout-border: 1px solid rgba($black, 0.25);
|
||||||
|
$callout-margin: 0 0 1rem 0;
|
||||||
|
$callout-padding: 1rem;
|
||||||
|
$callout-font-color: $body-font-color;
|
||||||
|
$callout-font-color-alt: $body-background;
|
||||||
|
$callout-radius: $global-radius;
|
||||||
|
$callout-link-tint: 30%;
|
||||||
|
|
||||||
|
// 14. Card
|
||||||
|
// --------
|
||||||
|
|
||||||
|
$card-background: $white;
|
||||||
|
$card-font-color: $body-font-color;
|
||||||
|
$card-divider-background: $light-gray;
|
||||||
|
$card-border: 1px solid $light-gray;
|
||||||
|
$card-shadow: none;
|
||||||
|
$card-border-radius: $global-radius;
|
||||||
|
$card-padding: $global-padding;
|
||||||
|
$card-margin-bottom: $global-margin;
|
||||||
|
|
||||||
|
// 15. Close Button
|
||||||
|
// ----------------
|
||||||
|
|
||||||
|
$closebutton-position: right top;
|
||||||
|
$closebutton-offset-horizontal: (
|
||||||
|
small: 0.66rem,
|
||||||
|
medium: 1rem,
|
||||||
|
);
|
||||||
|
$closebutton-offset-vertical: (
|
||||||
|
small: 0.33em,
|
||||||
|
medium: 0.5rem,
|
||||||
|
);
|
||||||
|
$closebutton-size: (
|
||||||
|
small: 1.5em,
|
||||||
|
medium: 2em,
|
||||||
|
);
|
||||||
|
$closebutton-lineheight: 1;
|
||||||
|
$closebutton-color: $dark-gray;
|
||||||
|
$closebutton-color-hover: $black;
|
||||||
|
|
||||||
|
// 16. Drilldown
|
||||||
|
// -------------
|
||||||
|
|
||||||
|
$drilldown-transition: transform 0.15s linear;
|
||||||
|
$drilldown-arrows: true;
|
||||||
|
$drilldown-padding: $global-menu-padding;
|
||||||
|
$drilldown-nested-margin: 0;
|
||||||
|
$drilldown-background: $white;
|
||||||
|
$drilldown-submenu-padding: $drilldown-padding;
|
||||||
|
$drilldown-submenu-background: $white;
|
||||||
|
$drilldown-arrow-color: $primary-color;
|
||||||
|
$drilldown-arrow-size: 6px;
|
||||||
|
|
||||||
|
// 17. Dropdown
|
||||||
|
// ------------
|
||||||
|
|
||||||
|
$dropdown-padding: 1rem;
|
||||||
|
$dropdown-background: $body-background;
|
||||||
|
$dropdown-border: 1px solid $medium-gray;
|
||||||
|
$dropdown-font-size: 1rem;
|
||||||
|
$dropdown-width: 300px;
|
||||||
|
$dropdown-radius: $global-radius;
|
||||||
|
$dropdown-sizes: (
|
||||||
|
tiny: 100px,
|
||||||
|
small: 200px,
|
||||||
|
large: 400px,
|
||||||
|
);
|
||||||
|
|
||||||
|
// 18. Dropdown Menu
|
||||||
|
// -----------------
|
||||||
|
|
||||||
|
$dropdownmenu-arrows: true;
|
||||||
|
$dropdownmenu-arrow-color: $anchor-color;
|
||||||
|
$dropdownmenu-arrow-size: 6px;
|
||||||
|
$dropdownmenu-arrow-padding: 1.5rem;
|
||||||
|
$dropdownmenu-min-width: 200px;
|
||||||
|
$dropdownmenu-background: null;
|
||||||
|
$dropdownmenu-submenu-background: $white;
|
||||||
|
$dropdownmenu-padding: $global-menu-padding;
|
||||||
|
$dropdownmenu-nested-margin: 0;
|
||||||
|
$dropdownmenu-submenu-padding: $dropdownmenu-padding;
|
||||||
|
$dropdownmenu-border: 1px solid $medium-gray;
|
||||||
|
$dropdown-menu-item-color-active: get-color(primary);
|
||||||
|
$dropdown-menu-item-background-active: transparent;
|
||||||
|
|
||||||
|
// 19. Flexbox Utilities
|
||||||
|
// ---------------------
|
||||||
|
|
||||||
|
$flex-source-ordering-count: 6;
|
||||||
|
$flexbox-responsive-breakpoints: true;
|
||||||
|
|
||||||
|
// 20. Forms
|
||||||
|
// ---------
|
||||||
|
|
||||||
|
$fieldset-border: 1px solid $medium-gray;
|
||||||
|
$fieldset-padding: rem-calc(20);
|
||||||
|
$fieldset-margin: rem-calc(18 0);
|
||||||
|
$legend-padding: rem-calc(0 3);
|
||||||
|
$form-spacing: rem-calc(16);
|
||||||
|
$helptext-color: $black;
|
||||||
|
$helptext-font-size: rem-calc(13);
|
||||||
|
$helptext-font-style: italic;
|
||||||
|
$input-prefix-color: $black;
|
||||||
|
$input-prefix-background: $light-gray;
|
||||||
|
$input-prefix-border: 1px solid $medium-gray;
|
||||||
|
$input-prefix-padding: 1rem;
|
||||||
|
$form-label-color: $black;
|
||||||
|
$form-label-font-size: rem-calc(14);
|
||||||
|
$form-label-font-weight: $global-weight-normal;
|
||||||
|
$form-label-line-height: 1.8;
|
||||||
|
$select-background: $white;
|
||||||
|
$select-triangle-color: $dark-gray;
|
||||||
|
$select-radius: $global-radius;
|
||||||
|
$input-color: $black;
|
||||||
|
$input-placeholder-color: $medium-gray;
|
||||||
|
$input-font-family: inherit;
|
||||||
|
$input-font-size: rem-calc(16);
|
||||||
|
$input-font-weight: $global-weight-normal;
|
||||||
|
$input-line-height: $global-lineheight;
|
||||||
|
$input-background: $white;
|
||||||
|
$input-background-focus: $white;
|
||||||
|
$input-background-disabled: $light-gray;
|
||||||
|
$input-border: 1px solid $medium-gray;
|
||||||
|
$input-border-focus: 1px solid $dark-gray;
|
||||||
|
$input-padding: $form-spacing / 2;
|
||||||
|
$input-shadow: inset 0 1px 2px rgba($black, 0.1);
|
||||||
|
$input-shadow-focus: 0 0 5px $medium-gray;
|
||||||
|
$input-cursor-disabled: not-allowed;
|
||||||
|
$input-transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
|
||||||
|
$input-number-spinners: true;
|
||||||
|
$input-radius: $global-radius;
|
||||||
|
$form-button-radius: $global-radius;
|
||||||
|
|
||||||
|
// 21. Label
|
||||||
|
// ---------
|
||||||
|
|
||||||
|
$label-background: $primary-color;
|
||||||
|
$label-color: $white;
|
||||||
|
$label-color-alt: $black;
|
||||||
|
$label-palette: $foundation-palette;
|
||||||
|
$label-font-size: 0.8rem;
|
||||||
|
$label-padding: 0.33333rem 0.5rem;
|
||||||
|
$label-radius: $global-radius;
|
||||||
|
|
||||||
|
// 22. Media Object
|
||||||
|
// ----------------
|
||||||
|
|
||||||
|
$mediaobject-margin-bottom: $global-margin;
|
||||||
|
$mediaobject-section-padding: $global-padding;
|
||||||
|
$mediaobject-image-width-stacked: 100%;
|
||||||
|
|
||||||
|
// 23. Menu
|
||||||
|
// --------
|
||||||
|
|
||||||
|
$menu-margin: 0;
|
||||||
|
$menu-nested-margin: $global-menu-nested-margin;
|
||||||
|
$menu-items-padding: $global-menu-padding;
|
||||||
|
$menu-simple-margin: 1rem;
|
||||||
|
$menu-item-color-active: $white;
|
||||||
|
$menu-item-background-active: get-color(primary);
|
||||||
|
$menu-icon-spacing: 0.25rem;
|
||||||
|
$menu-state-back-compat: true;
|
||||||
|
$menu-centered-back-compat: true;
|
||||||
|
$menu-icons-back-compat: true;
|
||||||
|
|
||||||
|
// 24. Meter
|
||||||
|
// ---------
|
||||||
|
|
||||||
|
$meter-height: 1rem;
|
||||||
|
$meter-radius: $global-radius;
|
||||||
|
$meter-background: $medium-gray;
|
||||||
|
$meter-fill-good: $success-color;
|
||||||
|
$meter-fill-medium: $warning-color;
|
||||||
|
$meter-fill-bad: $alert-color;
|
||||||
|
|
||||||
|
// 25. Off-canvas
|
||||||
|
// --------------
|
||||||
|
|
||||||
|
$offcanvas-sizes: (
|
||||||
|
small: 250px,
|
||||||
|
);
|
||||||
|
$offcanvas-vertical-sizes: (
|
||||||
|
small: 250px,
|
||||||
|
);
|
||||||
|
$offcanvas-background: $light-gray;
|
||||||
|
$offcanvas-shadow: 0 0 10px rgba($black, 0.7);
|
||||||
|
$offcanvas-inner-shadow-size: 20px;
|
||||||
|
$offcanvas-inner-shadow-color: rgba($black, 0.25);
|
||||||
|
$offcanvas-overlay-zindex: 11;
|
||||||
|
$offcanvas-push-zindex: 12;
|
||||||
|
$offcanvas-overlap-zindex: 13;
|
||||||
|
$offcanvas-reveal-zindex: 12;
|
||||||
|
$offcanvas-transition-length: 0.5s;
|
||||||
|
$offcanvas-transition-timing: ease;
|
||||||
|
$offcanvas-fixed-reveal: true;
|
||||||
|
$offcanvas-exit-background: rgba($white, 0.25);
|
||||||
|
$maincontent-class: 'off-canvas-content';
|
||||||
|
|
||||||
|
// 26. Orbit
|
||||||
|
// ---------
|
||||||
|
|
||||||
|
$orbit-bullet-background: $medium-gray;
|
||||||
|
$orbit-bullet-background-active: $dark-gray;
|
||||||
|
$orbit-bullet-diameter: 1.2rem;
|
||||||
|
$orbit-bullet-margin: 0.1rem;
|
||||||
|
$orbit-bullet-margin-top: 0.8rem;
|
||||||
|
$orbit-bullet-margin-bottom: 0.8rem;
|
||||||
|
$orbit-caption-background: rgba($black, 0.5);
|
||||||
|
$orbit-caption-padding: 1rem;
|
||||||
|
$orbit-control-background-hover: rgba($black, 0.5);
|
||||||
|
$orbit-control-padding: 1rem;
|
||||||
|
$orbit-control-zindex: 10;
|
||||||
|
|
||||||
|
// 27. Pagination
|
||||||
|
// --------------
|
||||||
|
|
||||||
|
$pagination-font-size: rem-calc(14);
|
||||||
|
$pagination-margin-bottom: $global-margin;
|
||||||
|
$pagination-item-color: $black;
|
||||||
|
$pagination-item-padding: rem-calc(3 10);
|
||||||
|
$pagination-item-spacing: rem-calc(1);
|
||||||
|
$pagination-radius: $global-radius;
|
||||||
|
$pagination-item-background-hover: $light-gray;
|
||||||
|
$pagination-item-background-current: $primary-color;
|
||||||
|
$pagination-item-color-current: $white;
|
||||||
|
$pagination-item-color-disabled: $medium-gray;
|
||||||
|
$pagination-ellipsis-color: $black;
|
||||||
|
$pagination-mobile-items: false;
|
||||||
|
$pagination-mobile-current-item: false;
|
||||||
|
$pagination-arrows: true;
|
||||||
|
|
||||||
|
// 28. Progress Bar
|
||||||
|
// ----------------
|
||||||
|
|
||||||
|
$progress-height: 1rem;
|
||||||
|
$progress-background: $medium-gray;
|
||||||
|
$progress-margin-bottom: $global-margin;
|
||||||
|
$progress-meter-background: $primary-color;
|
||||||
|
$progress-radius: $global-radius;
|
||||||
|
|
||||||
|
// 29. Prototype Arrow
|
||||||
|
// -------------------
|
||||||
|
|
||||||
|
$prototype-arrow-directions: (
|
||||||
|
down,
|
||||||
|
up,
|
||||||
|
right,
|
||||||
|
left
|
||||||
|
);
|
||||||
|
$prototype-arrow-size: 0.4375rem;
|
||||||
|
$prototype-arrow-color: $black;
|
||||||
|
|
||||||
|
// 30. Prototype Border-Box
|
||||||
|
// ------------------------
|
||||||
|
|
||||||
|
$prototype-border-box-breakpoints: $global-prototype-breakpoints;
|
||||||
|
|
||||||
|
// 31. Prototype Border-None
|
||||||
|
// -------------------------
|
||||||
|
|
||||||
|
$prototype-border-none-breakpoints: $global-prototype-breakpoints;
|
||||||
|
|
||||||
|
// 32. Prototype Bordered
|
||||||
|
// ----------------------
|
||||||
|
|
||||||
|
$prototype-bordered-breakpoints: $global-prototype-breakpoints;
|
||||||
|
$prototype-border-width: rem-calc(1);
|
||||||
|
$prototype-border-type: solid;
|
||||||
|
$prototype-border-color: $medium-gray;
|
||||||
|
|
||||||
|
// 33. Prototype Display
|
||||||
|
// ---------------------
|
||||||
|
|
||||||
|
$prototype-display-breakpoints: $global-prototype-breakpoints;
|
||||||
|
$prototype-display: (
|
||||||
|
inline,
|
||||||
|
inline-block,
|
||||||
|
block,
|
||||||
|
table,
|
||||||
|
table-cell
|
||||||
|
);
|
||||||
|
|
||||||
|
// 34. Prototype Font-Styling
|
||||||
|
// --------------------------
|
||||||
|
|
||||||
|
$prototype-font-breakpoints: $global-prototype-breakpoints;
|
||||||
|
$prototype-wide-letter-spacing: rem-calc(4);
|
||||||
|
$prototype-font-normal: $global-weight-normal;
|
||||||
|
$prototype-font-bold: $global-weight-bold;
|
||||||
|
|
||||||
|
// 35. Prototype List-Style-Type
|
||||||
|
// -----------------------------
|
||||||
|
|
||||||
|
$prototype-list-breakpoints: $global-prototype-breakpoints;
|
||||||
|
$prototype-style-type-unordered: (
|
||||||
|
disc,
|
||||||
|
circle,
|
||||||
|
square
|
||||||
|
);
|
||||||
|
$prototype-style-type-ordered: (
|
||||||
|
decimal,
|
||||||
|
lower-alpha,
|
||||||
|
lower-latin,
|
||||||
|
lower-roman,
|
||||||
|
upper-alpha,
|
||||||
|
upper-latin,
|
||||||
|
upper-roman
|
||||||
|
);
|
||||||
|
|
||||||
|
// 36. Prototype Overflow
|
||||||
|
// ----------------------
|
||||||
|
|
||||||
|
$prototype-overflow-breakpoints: $global-prototype-breakpoints;
|
||||||
|
$prototype-overflow: (
|
||||||
|
visible,
|
||||||
|
hidden,
|
||||||
|
scroll
|
||||||
|
);
|
||||||
|
|
||||||
|
// 37. Prototype Position
|
||||||
|
// ----------------------
|
||||||
|
|
||||||
|
$prototype-position-breakpoints: $global-prototype-breakpoints;
|
||||||
|
$prototype-position: (
|
||||||
|
static,
|
||||||
|
relative,
|
||||||
|
absolute,
|
||||||
|
fixed
|
||||||
|
);
|
||||||
|
$prototype-position-z-index: 975;
|
||||||
|
|
||||||
|
// 38. Prototype Rounded
|
||||||
|
// ---------------------
|
||||||
|
|
||||||
|
$prototype-rounded-breakpoints: $global-prototype-breakpoints;
|
||||||
|
$prototype-border-radius: rem-calc(3);
|
||||||
|
|
||||||
|
// 39. Prototype Separator
|
||||||
|
// -----------------------
|
||||||
|
|
||||||
|
$prototype-separator-breakpoints: $global-prototype-breakpoints;
|
||||||
|
$prototype-separator-align: center;
|
||||||
|
$prototype-separator-height: rem-calc(2);
|
||||||
|
$prototype-separator-width: 3rem;
|
||||||
|
$prototype-separator-background: $primary-color;
|
||||||
|
$prototype-separator-margin-top: $global-margin;
|
||||||
|
|
||||||
|
// 40. Prototype Shadow
|
||||||
|
// --------------------
|
||||||
|
|
||||||
|
$prototype-shadow-breakpoints: $global-prototype-breakpoints;
|
||||||
|
$prototype-box-shadow: 0 2px 5px 0 rgba(0,0,0,.16),
|
||||||
|
0 2px 10px 0 rgba(0,0,0,.12);
|
||||||
|
|
||||||
|
// 41. Prototype Sizing
|
||||||
|
// --------------------
|
||||||
|
|
||||||
|
$prototype-sizing-breakpoints: $global-prototype-breakpoints;
|
||||||
|
$prototype-sizing: (
|
||||||
|
width,
|
||||||
|
height
|
||||||
|
);
|
||||||
|
$prototype-sizes: (
|
||||||
|
25: 25%,
|
||||||
|
50: 50%,
|
||||||
|
75: 75%,
|
||||||
|
100: 100%
|
||||||
|
);
|
||||||
|
|
||||||
|
// 42. Prototype Spacing
|
||||||
|
// ---------------------
|
||||||
|
|
||||||
|
$prototype-spacing-breakpoints: $global-prototype-breakpoints;
|
||||||
|
$prototype-spacers-count: 3;
|
||||||
|
|
||||||
|
// 43. Prototype Text-Decoration
|
||||||
|
// -----------------------------
|
||||||
|
|
||||||
|
$prototype-decoration-breakpoints: $global-prototype-breakpoints;
|
||||||
|
$prototype-text-decoration: (
|
||||||
|
overline,
|
||||||
|
underline,
|
||||||
|
line-through,
|
||||||
|
);
|
||||||
|
|
||||||
|
// 44. Prototype Text-Transformation
|
||||||
|
// ---------------------------------
|
||||||
|
|
||||||
|
$prototype-transformation-breakpoints: $global-prototype-breakpoints;
|
||||||
|
$prototype-text-transformation: (
|
||||||
|
lowercase,
|
||||||
|
uppercase,
|
||||||
|
capitalize
|
||||||
|
);
|
||||||
|
|
||||||
|
// 45. Prototype Text-Utilities
|
||||||
|
// ----------------------------
|
||||||
|
|
||||||
|
$prototype-utilities-breakpoints: $global-prototype-breakpoints;
|
||||||
|
$prototype-text-overflow: ellipsis;
|
||||||
|
|
||||||
|
// 46. Responsive Embed
|
||||||
|
// --------------------
|
||||||
|
|
||||||
|
$responsive-embed-margin-bottom: rem-calc(16);
|
||||||
|
$responsive-embed-ratios: (
|
||||||
|
default: 4 by 3,
|
||||||
|
widescreen: 16 by 9,
|
||||||
|
);
|
||||||
|
|
||||||
|
// 47. Reveal
|
||||||
|
// ----------
|
||||||
|
|
||||||
|
$reveal-background: $white;
|
||||||
|
$reveal-width: 600px;
|
||||||
|
$reveal-max-width: $global-width;
|
||||||
|
$reveal-padding: $global-padding;
|
||||||
|
$reveal-border: 1px solid $medium-gray;
|
||||||
|
$reveal-radius: $global-radius;
|
||||||
|
$reveal-zindex: 1005;
|
||||||
|
$reveal-overlay-background: rgba($black, 0.45);
|
||||||
|
|
||||||
|
// 48. Slider
|
||||||
|
// ----------
|
||||||
|
|
||||||
|
$slider-width-vertical: 0.5rem;
|
||||||
|
$slider-transition: all 0.2s ease-in-out;
|
||||||
|
$slider-height: 0.5rem;
|
||||||
|
$slider-background: $light-gray;
|
||||||
|
$slider-fill-background: $medium-gray;
|
||||||
|
$slider-handle-height: 1.4rem;
|
||||||
|
$slider-handle-width: 1.4rem;
|
||||||
|
$slider-handle-background: $primary-color;
|
||||||
|
$slider-opacity-disabled: 0.25;
|
||||||
|
$slider-radius: $global-radius;
|
||||||
|
|
||||||
|
// 49. Switch
|
||||||
|
// ----------
|
||||||
|
|
||||||
|
$switch-background: $medium-gray;
|
||||||
|
$switch-background-active: $primary-color;
|
||||||
|
$switch-height: 2rem;
|
||||||
|
$switch-height-tiny: 1.5rem;
|
||||||
|
$switch-height-small: 1.75rem;
|
||||||
|
$switch-height-large: 2.5rem;
|
||||||
|
$switch-radius: $global-radius;
|
||||||
|
$switch-margin: $global-margin;
|
||||||
|
$switch-paddle-background: $white;
|
||||||
|
$switch-paddle-offset: 0.25rem;
|
||||||
|
$switch-paddle-radius: $global-radius;
|
||||||
|
$switch-paddle-transition: all 0.25s ease-out;
|
||||||
|
|
||||||
|
// 50. Table
|
||||||
|
// ---------
|
||||||
|
|
||||||
|
$table-background: $white;
|
||||||
|
$table-color-scale: 5%;
|
||||||
|
$table-border: 1px solid smart-scale($table-background, $table-color-scale);
|
||||||
|
$table-padding: rem-calc(8 10 10);
|
||||||
|
$table-hover-scale: 2%;
|
||||||
|
$table-row-hover: darken($table-background, $table-hover-scale);
|
||||||
|
$table-row-stripe-hover: darken($table-background, $table-color-scale + $table-hover-scale);
|
||||||
|
$table-is-striped: true;
|
||||||
|
$table-striped-background: smart-scale($table-background, $table-color-scale);
|
||||||
|
$table-stripe: even;
|
||||||
|
$table-head-background: smart-scale($table-background, $table-color-scale / 2);
|
||||||
|
$table-head-row-hover: darken($table-head-background, $table-hover-scale);
|
||||||
|
$table-foot-background: smart-scale($table-background, $table-color-scale);
|
||||||
|
$table-foot-row-hover: darken($table-foot-background, $table-hover-scale);
|
||||||
|
$table-head-font-color: $body-font-color;
|
||||||
|
$table-foot-font-color: $body-font-color;
|
||||||
|
$show-header-for-stacked: false;
|
||||||
|
$table-stack-breakpoint: medium;
|
||||||
|
|
||||||
|
// 51. Tabs
|
||||||
|
// --------
|
||||||
|
|
||||||
|
$tab-margin: 0;
|
||||||
|
$tab-background: $white;
|
||||||
|
$tab-color: $primary-color;
|
||||||
|
$tab-background-active: $light-gray;
|
||||||
|
$tab-active-color: $primary-color;
|
||||||
|
$tab-item-font-size: rem-calc(12);
|
||||||
|
$tab-item-background-hover: $white;
|
||||||
|
$tab-item-padding: 1.25rem 1.5rem;
|
||||||
|
$tab-content-background: $white;
|
||||||
|
$tab-content-border: $light-gray;
|
||||||
|
$tab-content-color: $body-font-color;
|
||||||
|
$tab-content-padding: 1rem;
|
||||||
|
|
||||||
|
// 52. Thumbnail
|
||||||
|
// -------------
|
||||||
|
|
||||||
|
$thumbnail-border: 4px solid $white;
|
||||||
|
$thumbnail-margin-bottom: $global-margin;
|
||||||
|
$thumbnail-shadow: 0 0 0 1px rgba($black, 0.2);
|
||||||
|
$thumbnail-shadow-hover: 0 0 6px 1px rgba($primary-color, 0.5);
|
||||||
|
$thumbnail-transition: box-shadow 200ms ease-out;
|
||||||
|
$thumbnail-radius: $global-radius;
|
||||||
|
|
||||||
|
// 53. Title Bar
|
||||||
|
// -------------
|
||||||
|
|
||||||
|
$titlebar-background: $black;
|
||||||
|
$titlebar-color: $white;
|
||||||
|
$titlebar-padding: 0.5rem;
|
||||||
|
$titlebar-text-font-weight: bold;
|
||||||
|
$titlebar-icon-color: $white;
|
||||||
|
$titlebar-icon-color-hover: $medium-gray;
|
||||||
|
$titlebar-icon-spacing: 0.25rem;
|
||||||
|
|
||||||
|
// 54. Tooltip
|
||||||
|
// -----------
|
||||||
|
|
||||||
|
$has-tip-cursor: help;
|
||||||
|
$has-tip-font-weight: $global-weight-bold;
|
||||||
|
$has-tip-border-bottom: dotted 1px $dark-gray;
|
||||||
|
$tooltip-background-color: $black;
|
||||||
|
$tooltip-color: $white;
|
||||||
|
$tooltip-padding: 0.75rem;
|
||||||
|
$tooltip-max-width: 10rem;
|
||||||
|
$tooltip-font-size: $small-font-size;
|
||||||
|
$tooltip-pip-width: 0.75rem;
|
||||||
|
$tooltip-pip-height: $tooltip-pip-width * 0.866;
|
||||||
|
$tooltip-radius: $global-radius;
|
||||||
|
|
||||||
|
// 55. Top Bar
|
||||||
|
// -----------
|
||||||
|
|
||||||
|
$topbar-padding: 0.5rem;
|
||||||
|
$topbar-background: $light-gray;
|
||||||
|
$topbar-submenu-background: $topbar-background;
|
||||||
|
$topbar-title-spacing: 0.5rem 1rem 0.5rem 0;
|
||||||
|
$topbar-input-width: 200px;
|
||||||
|
$topbar-unstack-breakpoint: medium;
|
||||||
|
|
||||||
|
// 56. Xy Grid
|
||||||
|
// -----------
|
||||||
|
|
||||||
|
$xy-grid: true;
|
||||||
|
$grid-container: $global-width;
|
||||||
|
$grid-columns: 12;
|
||||||
|
$grid-margin-gutters: (
|
||||||
|
small: 20px,
|
||||||
|
medium: 30px
|
||||||
|
);
|
||||||
|
$grid-padding-gutters: $grid-margin-gutters;
|
||||||
|
$grid-container-padding: $grid-padding-gutters;
|
||||||
|
$grid-container-max: $global-width;
|
||||||
|
$xy-block-grid-max: 8;
|
||||||
|
|
|
@ -0,0 +1,6 @@
|
||||||
|
@charset 'utf-8';
|
||||||
|
|
||||||
|
@import 'globals-default';
|
||||||
|
@import 'settings';
|
||||||
|
@import 'foundation-core';
|
||||||
|
@import 'omeka';
|
|
@ -0,0 +1,56 @@
|
||||||
|
@charset 'utf-8';
|
||||||
|
|
||||||
|
@import 'globals-default';
|
||||||
|
@import 'globals-inkwell';
|
||||||
|
@import 'settings';
|
||||||
|
|
||||||
|
// Sea Foam Settings
|
||||||
|
|
||||||
|
$topbar-background: transparent;
|
||||||
|
|
||||||
|
$header-font-family: "Playfair Display", serif;
|
||||||
|
|
||||||
|
$thumbnail-shadow-hover: 0 0 6px 1px rgba($primary-color, 0.5);
|
||||||
|
|
||||||
|
$button-color: $black;
|
||||||
|
|
||||||
|
@import 'foundation-core';
|
||||||
|
@import 'omeka';
|
||||||
|
|
||||||
|
body {
|
||||||
|
font-weight: 500;
|
||||||
|
}
|
||||||
|
|
||||||
|
header {
|
||||||
|
border-top: $global-padding solid $primary-color;
|
||||||
|
}
|
||||||
|
|
||||||
|
header a {
|
||||||
|
color: $black;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
header .button {
|
||||||
|
border: 1px solid #000;
|
||||||
|
margin-left: -1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
header .input-group-field {
|
||||||
|
border: 1px solid #000;
|
||||||
|
box-shadow: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
a,
|
||||||
|
.breadcrumbs a {
|
||||||
|
color: $black;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.vertical-menu header a {
|
||||||
|
color: #000;
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
|
||||||
|
label,
|
||||||
|
.label {
|
||||||
|
color: $black;
|
||||||
|
}
|
|
@ -0,0 +1,54 @@
|
||||||
|
@charset 'utf-8';
|
||||||
|
|
||||||
|
@import 'globals-default';
|
||||||
|
@import 'globals-revolution';
|
||||||
|
@import 'settings';
|
||||||
|
|
||||||
|
// Revolution Settings
|
||||||
|
|
||||||
|
$header-font-family: 'IM Fell English SC', serif;
|
||||||
|
$subheader-font-family: 'IM Fell DW Pica', serif;
|
||||||
|
|
||||||
|
$topbar-background: transparent;
|
||||||
|
|
||||||
|
$thumbnail-border: 4px solid transparent;
|
||||||
|
$thumbnail-shadow: 0 0 0 1px $gold;
|
||||||
|
$thumbnail-shadow-hover: 0 0 6px 1px rgba($gold, 0.5);
|
||||||
|
|
||||||
|
@import 'foundation-core';
|
||||||
|
@import 'omeka';
|
||||||
|
|
||||||
|
body {
|
||||||
|
background: url('../img/revolution-bg.jpg') repeat;
|
||||||
|
background-size: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
body:not(.vertical-menu) header {
|
||||||
|
border-top: ($global-padding) solid $primary-color;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fieldset {
|
||||||
|
border-color: $gold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.resource-list .resource {
|
||||||
|
border-bottom-color: $gold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.description.fadeout:after {
|
||||||
|
background: transparent url('../img/revolution-fade.png') no-repeat;
|
||||||
|
background-size: cover;
|
||||||
|
background-position: right;
|
||||||
|
right: -1rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
@include breakpoint(medium up) {
|
||||||
|
body.vertical-menu {
|
||||||
|
background-image: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.vertical-menu #content,
|
||||||
|
body.vertical-menu footer {
|
||||||
|
background: transparent url('../img/revolution-bg.jpg') repeat;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,23 @@
|
||||||
|
@charset 'utf-8';
|
||||||
|
|
||||||
|
@import 'globals-default';
|
||||||
|
@import 'globals-seafoam';
|
||||||
|
@import 'settings';
|
||||||
|
|
||||||
|
// Sea Foam Settings
|
||||||
|
|
||||||
|
$topbar-background: $primary-color;
|
||||||
|
|
||||||
|
$thumbnail-border: 4px solid $secondary-color;
|
||||||
|
$thumbnail-shadow: none;
|
||||||
|
$thumbnail-shadow-hover: 0 0 6px 1px rgba($primary-color, 0.5);
|
||||||
|
|
||||||
|
$button-background: $secondary-color;
|
||||||
|
$button-color: $primary-color;
|
||||||
|
|
||||||
|
@import 'foundation-core';
|
||||||
|
@import 'omeka';
|
||||||
|
|
||||||
|
header a {
|
||||||
|
color: $white;
|
||||||
|
}
|
|
@ -0,0 +1,77 @@
|
||||||
|
[info]
|
||||||
|
name = "Archive"
|
||||||
|
version = "1.0.0"
|
||||||
|
author = "Hangar.org"
|
||||||
|
description = "A starter theme using the ZURB Foundation toolkit."
|
||||||
|
theme_link = "https://github.com/omeka-s-themes/foundation-s"
|
||||||
|
author_link = "https://omeka.org"
|
||||||
|
omeka_version_constraint = "^3.0.0"
|
||||||
|
|
||||||
|
[config]
|
||||||
|
elements.stylesheet.name = "stylesheet"
|
||||||
|
elements.stylesheet.attributes.id = "stylesheet"
|
||||||
|
elements.stylesheet.type = "Zend\Form\Element\Select"
|
||||||
|
elements.stylesheet.options.label = "Stylesheet"
|
||||||
|
elements.stylesheet.options.value_options.default = "Default"
|
||||||
|
elements.stylesheet.options.value_options.revolution = "Revolution"
|
||||||
|
elements.stylesheet.options.value_options.seafoam = "Sea Foam"
|
||||||
|
elements.stylesheet.options.value_options.inkwell = "Inkwell"
|
||||||
|
|
||||||
|
elements.nav_layout.name = "nav_layout"
|
||||||
|
elements.nav_layout.attributes.id = "nav_layout"
|
||||||
|
elements.nav_layout.type = "Zend\Form\Element\Select"
|
||||||
|
elements.nav_layout.options.label = "Navigation Layout"
|
||||||
|
elements.nav_layout.options.value_options.dropdown = "Horizontal Dropdown"
|
||||||
|
elements.nav_layout.options.value_options.vertical = "Full Height Column"
|
||||||
|
|
||||||
|
elements.nav_show_levels.name = "nav_show_levels"
|
||||||
|
elements.nav_show_levels.attributes.id = "nav_show_levels"
|
||||||
|
elements.nav_show_levels.type = "Checkbox"
|
||||||
|
elements.nav_show_levels.options.label = "Show Top Navigation Child Pages"
|
||||||
|
elements.nav_show_levels.options.info = "Check to show child pages in the top navigation bar. Uncheck to show top-level items only."
|
||||||
|
elements.nav_show_levels.attributes.value = 1
|
||||||
|
|
||||||
|
elements.nav_depth.name = "nav_depth"
|
||||||
|
elements.nav_depth.attributes.id = "nav_depth"
|
||||||
|
elements.nav_depth.type = "Number"
|
||||||
|
elements.nav_depth.options.label = "Top Navigation Depth"
|
||||||
|
elements.nav_depth.options.info = "Maximum number of levels to show in the site's top navigation bar. Set to 0 to show all levels."
|
||||||
|
elements.nav_depth.attributes.min = 0
|
||||||
|
elements.nav_depth.attributes.value = 0
|
||||||
|
|
||||||
|
elements.logo.name = "logo"
|
||||||
|
elements.logo.type = "Omeka\Form\Element\Asset"
|
||||||
|
elements.logo.options.label = "Logo"
|
||||||
|
|
||||||
|
elements.footer.name = "footer"
|
||||||
|
elements.footer.attributes.id = "footer"
|
||||||
|
elements.footer.type = "Omeka\Form\Element\HtmlTextarea"
|
||||||
|
elements.footer.options.label = "Footer Content"
|
||||||
|
elements.footer.options.info = "HTML content to appear in the footer"
|
||||||
|
elements.footer.attributes.value = "Powered by Omeka S"
|
||||||
|
|
||||||
|
elements.browse_layout.name = "browse_layout"
|
||||||
|
elements.browse_layout.attributes.id = "browse_layout"
|
||||||
|
elements.browse_layout.type = "Zend\Form\Element\Select"
|
||||||
|
elements.browse_layout.options.label = "Layout for Browse Pages"
|
||||||
|
elements.browse_layout.options.value_options.grid = "Grid"
|
||||||
|
elements.browse_layout.options.value_options.list = "List"
|
||||||
|
elements.browse_layout.options.value_options.togglegrid = "Toggle (default: grid)"
|
||||||
|
elements.browse_layout.options.value_options.togglelist = "Toggle (default: list)"
|
||||||
|
|
||||||
|
elements.show_layout.name = "show_layout"
|
||||||
|
elements.show_layout.attributes.id = "show_layout"
|
||||||
|
elements.show_layout.type = "Zend\Form\Element\Select"
|
||||||
|
elements.show_layout.options.label = "Layout for Show Pages"
|
||||||
|
elements.show_layout.options.info = "Layout for displaying property headings and values. Stack shows properties above the values while inline shows properties next to their values."
|
||||||
|
elements.show_layout.options.value_options.stack = "Stack"
|
||||||
|
elements.show_layout.options.value_options.inline = "Inline"
|
||||||
|
|
||||||
|
elements.truncate_body_property.name = "truncate_body_property"
|
||||||
|
elements.truncate_body_property.attributes.id = "truncate_body_property"
|
||||||
|
elements.truncate_body_property.type = "Zend\Form\Element\Select"
|
||||||
|
elements.truncate_body_property.options.label = "Truncate Body Property"
|
||||||
|
elements.truncate_body_property.info = "How to handle long values for the body property of each resource on the browse page."
|
||||||
|
elements.truncate_body_property.options.value_options.full = "Show full value"
|
||||||
|
elements.truncate_body_property.options.value_options.fadeout = "Show 4 lines and fade out"
|
||||||
|
elements.truncate_body_property.options.value_options.ellipsis = "Show 4 lines and clip with an ellipsis"
|
|
@ -0,0 +1,36 @@
|
||||||
|
var gulp = require('gulp');
|
||||||
|
var browserSync = require('browser-sync').create();
|
||||||
|
var $ = require('gulp-load-plugins')();
|
||||||
|
var autoprefixer = require('autoprefixer');
|
||||||
|
|
||||||
|
var sassPaths = [
|
||||||
|
'node_modules/foundation-sites/scss',
|
||||||
|
'node_modules/motion-ui/src'
|
||||||
|
];
|
||||||
|
|
||||||
|
function sass() {
|
||||||
|
return gulp.src('asset/scss/*.scss')
|
||||||
|
.pipe($.sass({
|
||||||
|
includePaths: sassPaths,
|
||||||
|
outputStyle: 'compressed' // if css compressed **file size**
|
||||||
|
})
|
||||||
|
.on('error', $.sass.logError))
|
||||||
|
.pipe($.postcss([
|
||||||
|
autoprefixer()
|
||||||
|
]))
|
||||||
|
.pipe(gulp.dest('asset/css'))
|
||||||
|
.pipe(browserSync.stream());
|
||||||
|
};
|
||||||
|
|
||||||
|
function serve() {
|
||||||
|
browserSync.init({
|
||||||
|
server: "./"
|
||||||
|
});
|
||||||
|
|
||||||
|
gulp.watch("asset/scss/*.scss", sass);
|
||||||
|
gulp.watch("*.html").on('change', browserSync.reload);
|
||||||
|
}
|
||||||
|
|
||||||
|
gulp.task('sass', sass);
|
||||||
|
gulp.task('serve', gulp.series('sass', serve));
|
||||||
|
gulp.task('default', gulp.series('sass', serve));
|
|
@ -0,0 +1,170 @@
|
||||||
|
<!doctype html>
|
||||||
|
<html class="no-js" lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta http-equiv="x-ua-compatible" content="ie=edge">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
<title>Foundation for Sites</title>
|
||||||
|
<link rel="stylesheet" href="asset/css/app.css">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div class="grid-container">
|
||||||
|
<div class="grid-x grid-padding-x">
|
||||||
|
<div class="large-12 cell">
|
||||||
|
<h1>Welcome to Foundation</h1>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="grid-x grid-padding-x">
|
||||||
|
<div class="large-12 cell">
|
||||||
|
<div class="callout">
|
||||||
|
<h3>We’re stoked you want to try Foundation! </h3>
|
||||||
|
<p>To get going, this file (index.html) includes some basic styles you can modify, play around with, or totally destroy to get going.</p>
|
||||||
|
<p>Once you've exhausted the fun in this document, you should check out:</p>
|
||||||
|
<div class="grid-x grid-padding-x">
|
||||||
|
<div class="large-4 medium-4 cell">
|
||||||
|
<p><a href="http://foundation.zurb.com/docs">Foundation Documentation</a><br />Everything you need to know about using the framework.</p>
|
||||||
|
</div>
|
||||||
|
<div class="large-4 medium-4 cell">
|
||||||
|
<p><a href="http://zurb.com/university/code-skills">Foundation Code Skills</a><br />These online courses offer you a chance to better understand how Foundation works and how you can master it to create awesome projects.</p>
|
||||||
|
</div>
|
||||||
|
<div class="large-4 medium-4 cell">
|
||||||
|
<p><a href="http://foundation.zurb.com/forum">Foundation Forum</a><br />Join the Foundation community to ask a question or show off your knowlege.</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="grid-x grid-padding-x">
|
||||||
|
<div class="large-4 medium-4 medium-push-2 cell">
|
||||||
|
<p><a href="http://github.com/zurb/foundation">Foundation on Github</a><br />Latest code, issue reports, feature requests and more.</p>
|
||||||
|
</div>
|
||||||
|
<div class="large-4 medium-4 medium-pull-2 cell">
|
||||||
|
<p><a href="https://twitter.com/ZURBfoundation">@zurbfoundation</a><br />Ping us on Twitter if you have questions. When you build something with this we'd love to see it (and send you a totally boss sticker).</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="grid-x grid-padding-x">
|
||||||
|
<div class="large-8 medium-8 cell">
|
||||||
|
<h5>Here’s your basic grid:</h5>
|
||||||
|
<!-- Grid Example -->
|
||||||
|
|
||||||
|
<div class="grid-x grid-padding-x">
|
||||||
|
<div class="large-12 cell">
|
||||||
|
<div class="primary callout">
|
||||||
|
<p><strong>This is a twelve cell section in a grid-x.</strong> Each of these includes a div.callout element so you can see where the cell are - it's not required at all for the grid.</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="grid-x grid-padding-x">
|
||||||
|
<div class="large-6 medium-6 cell">
|
||||||
|
<div class="primary callout">
|
||||||
|
<p>Six cell</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="large-6 medium-6 cell">
|
||||||
|
<div class="primary callout">
|
||||||
|
<p>Six cell</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="grid-x grid-padding-x">
|
||||||
|
<div class="large-4 medium-4 small-4 cell">
|
||||||
|
<div class="primary callout">
|
||||||
|
<p>Four cell</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="large-4 medium-4 small-4 cell">
|
||||||
|
<div class="primary callout">
|
||||||
|
<p>Four cell</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="large-4 medium-4 small-4 cell">
|
||||||
|
<div class="primary callout">
|
||||||
|
<p>Four cell</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<h5>We bet you’ll need a form somewhere:</h5>
|
||||||
|
<form>
|
||||||
|
<div class="grid-x grid-padding-x">
|
||||||
|
<div class="large-12 cell">
|
||||||
|
<label>Input Label</label>
|
||||||
|
<input type="text" placeholder="large-12.cell" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="grid-x grid-padding-x">
|
||||||
|
<div class="large-4 medium-4 cell">
|
||||||
|
<label>Input Label</label>
|
||||||
|
<input type="text" placeholder="large-4.cell" />
|
||||||
|
</div>
|
||||||
|
<div class="large-4 medium-4 cell">
|
||||||
|
<label>Input Label</label>
|
||||||
|
<input type="text" placeholder="large-4.cell" />
|
||||||
|
</div>
|
||||||
|
<div class="large-4 medium-4 cell">
|
||||||
|
<div class="grid-x">
|
||||||
|
<label>Input Label</label>
|
||||||
|
<div class="input-group">
|
||||||
|
<input type="text" placeholder="small-9.cell" class="input-group-field" />
|
||||||
|
<span class="input-group-label">.com</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="grid-x grid-padding-x">
|
||||||
|
<div class="large-12 cell">
|
||||||
|
<label>Select Box</label>
|
||||||
|
<select>
|
||||||
|
<option value="husker">Husker</option>
|
||||||
|
<option value="starbuck">Starbuck</option>
|
||||||
|
<option value="hotdog">Hot Dog</option>
|
||||||
|
<option value="apollo">Apollo</option>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="grid-x grid-padding-x">
|
||||||
|
<div class="large-6 medium-6 cell">
|
||||||
|
<label>Choose Your Favorite</label>
|
||||||
|
<input type="radio" name="pokemon" value="Red" id="pokemonRed"><label for="pokemonRed">Radio 1</label>
|
||||||
|
<input type="radio" name="pokemon" value="Blue" id="pokemonBlue"><label for="pokemonBlue">Radio 2</label>
|
||||||
|
</div>
|
||||||
|
<div class="large-6 medium-6 cell">
|
||||||
|
<label>Check these out</label>
|
||||||
|
<input id="checkbox1" type="checkbox"><label for="checkbox1">Checkbox 1</label>
|
||||||
|
<input id="checkbox2" type="checkbox"><label for="checkbox2">Checkbox 2</label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="grid-x grid-padding-x">
|
||||||
|
<div class="large-12 cell">
|
||||||
|
<label>Textarea Label</label>
|
||||||
|
<textarea placeholder="small-12.cell"></textarea>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="large-4 medium-4 cell">
|
||||||
|
<h5>Try one of these buttons:</h5>
|
||||||
|
<p><a href="#" class="button">Simple Button</a><br/>
|
||||||
|
<a href="#" class="success button">Success Btn</a><br/>
|
||||||
|
<a href="#" class="alert button">Alert Btn</a><br/>
|
||||||
|
<a href="#" class="secondary button">Secondary Btn</a></p>
|
||||||
|
<div class="callout">
|
||||||
|
<h5>So many components, girl!</h5>
|
||||||
|
<p>A whole kitchen sink of goodies comes with Foundation. Check out the docs to see them all, along with details on making them your own.</p>
|
||||||
|
<a href="http://foundation.zurb.com/sites/docs/" class="small button">Go to Foundation Docs</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<script src="node_modules/jquery/dist/jquery.js"></script>
|
||||||
|
<script src="node_modules/what-input/dist/what-input.js"></script>
|
||||||
|
<script src="node_modules/foundation-sites/dist/js/foundation.js"></script>
|
||||||
|
<script src="js/app.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,41 @@
|
||||||
|
{
|
||||||
|
"name": "foundation-s-theme",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"description": "Omeka S theme using the ZURB Foundation toolkit.",
|
||||||
|
"main": "gulpfile.js",
|
||||||
|
"scripts": {
|
||||||
|
"start": "gulp",
|
||||||
|
"build": "gulp sass"
|
||||||
|
},
|
||||||
|
"author": "Omeka Team <outreach@omeka.org>",
|
||||||
|
"license": "MIT",
|
||||||
|
"bugs": {
|
||||||
|
"url": "https://github.com/omeka-s-themes/foundation-s/issues",
|
||||||
|
"email": "outreach@omeka.org"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"foundation-sites": "^6.6.3",
|
||||||
|
"gulp-cli": "^2.3.0",
|
||||||
|
"jquery": "^3.5.1",
|
||||||
|
"motion-ui": "~2.0.0",
|
||||||
|
"what-input": "^5.2.10"
|
||||||
|
},
|
||||||
|
"devDependencies": {
|
||||||
|
"autoprefixer": "^9.8.6",
|
||||||
|
"browser-sync": "^2.26.12",
|
||||||
|
"gulp": "^4.0.2",
|
||||||
|
"gulp-load-plugins": "^2.0.4",
|
||||||
|
"gulp-postcss": "^8.0.0",
|
||||||
|
"gulp-sass": "^4.1.0",
|
||||||
|
"minimist": "^1.2.3"
|
||||||
|
},
|
||||||
|
"browserslist": [
|
||||||
|
"last 2 versions",
|
||||||
|
"ie >= 9"
|
||||||
|
],
|
||||||
|
"repository": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://github.com/zurb/foundation-sites-template.git"
|
||||||
|
},
|
||||||
|
"private": true
|
||||||
|
}
|
|
@ -0,0 +1,36 @@
|
||||||
|
<?php
|
||||||
|
$translate = $this->plugin('translate');
|
||||||
|
// Prepare the item set queries
|
||||||
|
$ids = isset($query['item_set_id']) ? $query['item_set_id'] : [];
|
||||||
|
if (!is_array($ids)) {
|
||||||
|
$ids = [$ids];
|
||||||
|
}
|
||||||
|
$ids = array_filter($ids);
|
||||||
|
if (!$ids) {
|
||||||
|
$ids = [null];
|
||||||
|
}
|
||||||
|
?>
|
||||||
|
<div id="item-sets" class="field removable multi-value" role="group">
|
||||||
|
<fieldset class="fieldset">
|
||||||
|
<legend><?php echo $translate('Search by item set'); ?></legend>
|
||||||
|
<div class="help-text"><?php echo $translate('Searches for items that are assigned to any of these item sets.'); ?></div>
|
||||||
|
<div class="inputs">
|
||||||
|
<?php foreach ($ids as $id): ?>
|
||||||
|
<div class="value">
|
||||||
|
<?php echo $this->itemSetSelect([
|
||||||
|
'name' => 'item_set_id[]',
|
||||||
|
'attributes' => [
|
||||||
|
'value' => $id,
|
||||||
|
'aria-labelledby' => 'by-item-set-label'
|
||||||
|
],
|
||||||
|
'options' => [
|
||||||
|
'disable_group_by_owner' => $this->status()->isSiteRequest(),
|
||||||
|
],
|
||||||
|
]); ?>
|
||||||
|
<button type="button" class="o-icon-delete remove-value button" aria-label="<?php echo $translate('Remove value'); ?>"></button>
|
||||||
|
</div>
|
||||||
|
<?php endforeach; ?>
|
||||||
|
</div>
|
||||||
|
<button class="add-value button"><?php echo $translate('Add new item set'); ?></button>
|
||||||
|
</fieldset>
|
||||||
|
</div>
|
|
@ -0,0 +1,85 @@
|
||||||
|
<?php
|
||||||
|
$translate = $this->plugin('translate');
|
||||||
|
// Prepare the property queries.
|
||||||
|
$properties = isset($query['property']) ? $query['property'] : [];
|
||||||
|
$properties = array_filter($properties, function ($value) {
|
||||||
|
return isset($value['text']) ? '' !== trim($value['text']) : true;
|
||||||
|
});
|
||||||
|
if (!$properties) {
|
||||||
|
$properties[] = [];
|
||||||
|
}
|
||||||
|
|
||||||
|
if (isset($query['search'])) {
|
||||||
|
unset($properties[0]['joiner']);
|
||||||
|
array_unshift($properties, [
|
||||||
|
'property' => '',
|
||||||
|
'type' => 'in',
|
||||||
|
'text' => $query['search']
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
$queryOption = function($value, array $search, $key, $text) {
|
||||||
|
$selected = null;
|
||||||
|
if (isset($search[$key]) && $value === $search[$key]) {
|
||||||
|
$selected = ' selected';
|
||||||
|
}
|
||||||
|
return sprintf('<option value="%s"%s>%s</option>', $value, $selected, $text);
|
||||||
|
};
|
||||||
|
$queryText = function(array $search, $index) {
|
||||||
|
$text = isset($search['text']) ? $search['text'] : null;
|
||||||
|
return sprintf('<input type="text" class="query-text" name="%s" value="%s" aria-label="%s">',
|
||||||
|
$this->escapeHtml("property[$index][text]"),
|
||||||
|
$this->escapeHtml($text),
|
||||||
|
$this->escapeHtml($this->translate('Query text')));
|
||||||
|
}
|
||||||
|
?>
|
||||||
|
|
||||||
|
<div id="property-queries" class="field removable multi-value" role="group" aria-labelledby="by-value-label">
|
||||||
|
<fieldset class="fieldset">
|
||||||
|
<legend id="by-value-label"><?php echo $translate('Search by value'); ?></legend>
|
||||||
|
<div class="inputs">
|
||||||
|
<?php
|
||||||
|
$index = 0;
|
||||||
|
foreach ($properties as $property):
|
||||||
|
$stem = "property[$index]";
|
||||||
|
?>
|
||||||
|
<div class="value input-group">
|
||||||
|
<select class="joiner" name="<?php echo $this->escapeHtml($stem . '[joiner]'); ?>">
|
||||||
|
<?php echo $queryOption('and', $property, 'joiner', $translate('AND')); ?>
|
||||||
|
<?php echo $queryOption('or', $property, 'joiner', $translate('OR')); ?>
|
||||||
|
</select>
|
||||||
|
<?php echo $this->propertySelect([
|
||||||
|
'name' => $stem . '[property]',
|
||||||
|
'attributes' => [
|
||||||
|
'class' => 'query-property',
|
||||||
|
'value' => isset($property['property']) ? $property['property'] : null,
|
||||||
|
'aria-label' => $translate('Property'),
|
||||||
|
],
|
||||||
|
'options' => [
|
||||||
|
'empty_option' => '[Any Property]', // @translate
|
||||||
|
'apply_templates' => $this->status()->isSiteRequest() ? $this->siteSetting('search_apply_templates') : false,
|
||||||
|
]
|
||||||
|
]); ?>
|
||||||
|
<select class="query-type" name="<?php echo $this->escapeHtml($stem . '[type]'); ?>" aria-label="<?php echo $translate('Query type'); ?>">
|
||||||
|
<?php echo $queryOption('eq', $property, 'type', $translate('is exactly')); ?>
|
||||||
|
<?php echo $queryOption('neq', $property, 'type', $translate('is not exactly')); ?>
|
||||||
|
<?php echo $queryOption('in', $property, 'type', $translate('contains')); ?>
|
||||||
|
<?php echo $queryOption('nin', $property, 'type', $translate('does not contain')); ?>
|
||||||
|
<?php echo $queryOption('res', $property, 'type', $translate('is resource with ID')); ?>
|
||||||
|
<?php echo $queryOption('nres', $property, 'type', $translate('is not resource with ID')); ?>
|
||||||
|
<?php echo $queryOption('ex', $property, 'type', $translate('has any value')); ?>
|
||||||
|
<?php echo $queryOption('nex', $property, 'type', $translate('has no values')); ?>
|
||||||
|
</select>
|
||||||
|
<?php echo $queryText($property, $index); ?>
|
||||||
|
<div class="input-group-button remove-value">
|
||||||
|
<button type="button" class="o-icon-delete button" aria-label="<?php echo $translate('Remove value'); ?>" title="<?php echo $translate('Remove value'); ?>"></button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<?php
|
||||||
|
$index++;
|
||||||
|
endforeach;
|
||||||
|
?>
|
||||||
|
</div>
|
||||||
|
<a href="#" class="add-value button"><?php echo $translate('Add new value'); ?></a>
|
||||||
|
</fieldset>
|
||||||
|
</div>
|
|
@ -0,0 +1,33 @@
|
||||||
|
<?php
|
||||||
|
$translate = $this->plugin('translate');
|
||||||
|
// Prepare the resource class query.
|
||||||
|
$ids = isset($query['resource_class_id']) ? $query['resource_class_id'] : [];
|
||||||
|
if (!is_array($ids)) {
|
||||||
|
$ids = [$ids];
|
||||||
|
}
|
||||||
|
$ids = array_filter($ids);
|
||||||
|
if (!$ids) {
|
||||||
|
$ids = [null];
|
||||||
|
}
|
||||||
|
?>
|
||||||
|
<div id="resource-class" class="field removable multi-value" role="group">
|
||||||
|
<fieldset class="fieldset">
|
||||||
|
<legend id="by-resource-class-label"><?php echo $translate('Search by class'); ?></legend>
|
||||||
|
<div class="help-text"><?php echo $translate('Searches for items that are any of these classes.'); ?></div>
|
||||||
|
<div class="inputs">
|
||||||
|
<?php foreach ($ids as $id): ?>
|
||||||
|
<div class="value">
|
||||||
|
<?php echo $this->resourceClassSelect([
|
||||||
|
'name' => 'resource_class_id[]',
|
||||||
|
'attributes' => [
|
||||||
|
'value' => $id,
|
||||||
|
'aria-labelledby' => 'by-resource-class-label'
|
||||||
|
],
|
||||||
|
]); ?>
|
||||||
|
<button type="button" class="o-icon-delete remove-value button" aria-label="<?php echo $translate('Remove value'); ?>" title="<?php echo $translate('Remove value'); ?>"></button>
|
||||||
|
</div>
|
||||||
|
<?php endforeach; ?>
|
||||||
|
</div>
|
||||||
|
<a href="#" class="add-value button"><?php echo $translate('Add new class'); ?></a>
|
||||||
|
</fieldset>
|
||||||
|
</div>
|
|
@ -0,0 +1,67 @@
|
||||||
|
<?php
|
||||||
|
$this->headScript()->appendFile($this->assetUrl('js/browse.js'));
|
||||||
|
$translate = $this->plugin('translate');
|
||||||
|
$layoutSetting = $this->themeSetting('browse_layout');
|
||||||
|
$gridState = ($layoutSetting == 'togglegrid') ? 'disabled' : '';
|
||||||
|
$listState = ($layoutSetting == 'togglelist') ? 'disabled': '';
|
||||||
|
$currentLayout = (!isset($layoutSetting) || strpos($layoutSetting, 'grid') !== false) ? 'grid' : 'list';
|
||||||
|
$isGrid = ($currentLayout == 'grid') ? true : false;
|
||||||
|
$queryUrl = $this->url(
|
||||||
|
'site/resource', ['controller' => $this->resourceType, 'action' => 'browse'], ['query' => $this->query], true
|
||||||
|
);
|
||||||
|
?>
|
||||||
|
<div class="preview-block">
|
||||||
|
|
||||||
|
<?php if ($this->heading): ?>
|
||||||
|
<div class="preview-header">
|
||||||
|
<h3><?php echo $this->hyperlink($this->heading, $queryUrl); ?></h3>
|
||||||
|
<?php
|
||||||
|
if ($this->linkText):
|
||||||
|
echo $this->hyperlink($this->linkText, $queryUrl);
|
||||||
|
endif;
|
||||||
|
?>
|
||||||
|
</div>
|
||||||
|
<?php endif; ?>
|
||||||
|
|
||||||
|
<?php if (strpos($layoutSetting, 'toggle') !== false): ?>
|
||||||
|
<div class="browse-controls">
|
||||||
|
<div class="layout-toggle">
|
||||||
|
<button type="button" aria-label="<?php echo $translate('Grid'); ?>" class="grid o-icon-grid" <?php echo $gridState; ?>></button>
|
||||||
|
<button type="button" aria-label="<?php echo $translate('List'); ?>" class="list o-icon-list" <?php echo $listState; ?>></button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<?php endif; ?>
|
||||||
|
|
||||||
|
|
||||||
|
<ul class="resources <?php echo ($isGrid) ? 'resource-grid' : 'resource-list'; ?>">
|
||||||
|
<?php
|
||||||
|
$headingTerm = $this->siteSetting('browse_heading_property_term');
|
||||||
|
$bodyTerm = $this->siteSetting('browse_body_property_term');
|
||||||
|
foreach ($this->resources as $resource):
|
||||||
|
$heading = $headingTerm ? $resource->value($headingTerm, ['default' => $translate('[Untitled]')]) : $resource->displayTitle();
|
||||||
|
$body = $bodyTerm ? $resource->value($bodyTerm) : $resource->displayDescription();
|
||||||
|
?>
|
||||||
|
<li class="<?php echo $this->resourceType; ?> resource <?php echo ($isGrid) ? '' : 'media-object'; ?>">
|
||||||
|
<?php if ($thumbnail = $this->thumbnail($resource, 'medium')): ?>
|
||||||
|
<div class="resource-image <?php echo ($isGrid) ? '' : 'media-object-section'; ?>">
|
||||||
|
<?php echo $resource->linkRaw($thumbnail, null, ['class' => 'thumbnail']); ?>
|
||||||
|
</div>
|
||||||
|
<?php endif; ?>
|
||||||
|
<div class="resource-meta <?php echo ($isGrid) ? '' : 'media-object-section'; ?>">
|
||||||
|
<h4><?php echo $resource->link($heading); ?></h4>
|
||||||
|
<?php if ($body): ?>
|
||||||
|
<div class="description"><?php echo $body; ?></div>
|
||||||
|
<?php endif; ?>
|
||||||
|
</div>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<?php endforeach; ?>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<?php
|
||||||
|
if ($this->linkText && !$this->heading):
|
||||||
|
echo $this->hyperlink($this->linkText, $queryUrl);
|
||||||
|
endif;
|
||||||
|
?>
|
||||||
|
|
||||||
|
</div>
|
|
@ -0,0 +1,18 @@
|
||||||
|
<?php $container = $this->navigation()->breadcrumbs() ?>
|
||||||
|
<?php $navigation = $container->getContainer() ?>
|
||||||
|
|
||||||
|
<ul class="breadcrumbs">
|
||||||
|
<?php foreach($this->pages as $page): ?>
|
||||||
|
<?php if( ! $page->isActive()): ?>
|
||||||
|
<li>
|
||||||
|
<a href="<?php echo $page->getHref() ?>"><?php echo $page->getLabel() ?></a>
|
||||||
|
</li>
|
||||||
|
<?php else: ?>
|
||||||
|
<li class="active">
|
||||||
|
<?php if($container->getLinkLast()): ?><a href="<?php echo $page->getHref() ?>"><?php endif ?>
|
||||||
|
<?php echo $page->getLabel() ?>
|
||||||
|
<?php if($container->getLinkLast()): ?></a><?php endif ?>
|
||||||
|
</li>
|
||||||
|
<?php endif ?>
|
||||||
|
<?php endforeach ?>
|
||||||
|
</ul>
|
|
@ -0,0 +1,76 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
/* Based on https://github.com/fabiopaiva/zf2-navigation-bootstrap3 */
|
||||||
|
|
||||||
|
/* @var $container Zend\Navigation\Navigation */
|
||||||
|
$container = $this->container;
|
||||||
|
$layoutAttributes = [
|
||||||
|
'dropdown' => 'class="dropdown menu" data-dropdown-menu',
|
||||||
|
'vertical' => 'class="vertical menu accordion-menu" data-accordion-menu data-submenu-toggle="true"',
|
||||||
|
]
|
||||||
|
?>
|
||||||
|
<ul <?php echo $layoutAttributes[$layout]; ?>>
|
||||||
|
<?php foreach ($container as $page): ?>
|
||||||
|
<?php if (!$this->navigation()->accept($page)) continue; ?>
|
||||||
|
<?php /* @var $page Zend\Navigation\Page\Mvc */ ?>
|
||||||
|
<?php $hasChildren = $page->hasPages() ?>
|
||||||
|
<?php $showChildren = $this->themeSetting('nav_show_levels'); ?>
|
||||||
|
<?php if (!$hasChildren || ($showChildren == 0)): ?>
|
||||||
|
<li<?php if ($page->isActive()) echo ' class="active"' ?>>
|
||||||
|
<a
|
||||||
|
class="nav-header"
|
||||||
|
href="<?php echo $page->getHref() ?>"
|
||||||
|
<?php if ($page->getTarget() != ""): ?>
|
||||||
|
target="<?php echo $page->getTarget(); ?>"
|
||||||
|
<?php endif; ?>
|
||||||
|
>
|
||||||
|
<?php if ($page->get("icon") !== ""): ?>
|
||||||
|
<span class="<?php echo $page->get("icon"); ?>"></span>
|
||||||
|
<?php endif; ?>
|
||||||
|
<?php echo $this->escapeHtml($this->translate($page->getLabel(), $this->navigation($container)->getTranslatorTextDomain())); ?>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<?php else: ?>
|
||||||
|
<?php
|
||||||
|
//check if access is allowed at least one item
|
||||||
|
$access = false;
|
||||||
|
foreach ($page->getPages() as $child) {
|
||||||
|
if ($this->navigation()->accept($child) && $child->get("separator") !== true) {
|
||||||
|
$access = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if ($access) :
|
||||||
|
?>
|
||||||
|
<li class="dropdown<?php if ($page->isActive(true)) echo ' active' ?>">
|
||||||
|
<a class="dropdown-toggle" data-toggle="dropdown" href="<?php echo $page->getHref(); ?>">
|
||||||
|
<?php echo $this->escapeHtml($this->translate($page->getLabel(),$this->navigation($container)->getTranslatorTextDomain())); ?>
|
||||||
|
<b class="caret"></b>
|
||||||
|
</a>
|
||||||
|
<ul class="menu vertical nested">
|
||||||
|
<?php foreach ($page->getPages() as $child): ?>
|
||||||
|
<?php if (!$this->navigation()->accept($child)) continue; ?>
|
||||||
|
<?php if ($child->get("separator") === true): ?>
|
||||||
|
<li class="divider"></li>
|
||||||
|
<?php
|
||||||
|
continue;
|
||||||
|
endif;
|
||||||
|
?>
|
||||||
|
<li<?php if ($child->isActive()) echo ' class="active"' ?>>
|
||||||
|
<a
|
||||||
|
href="<?php echo $child->getHref() ?>"
|
||||||
|
<?php if ($child->getTarget() != ""): ?>
|
||||||
|
target="<?php echo $child->getTarget(); ?>"
|
||||||
|
<?php endif; ?> >
|
||||||
|
<?php if ($child->get("icon") !== ""): ?>
|
||||||
|
<span class="<?php echo $child->get("icon"); ?>"></span>
|
||||||
|
<?php endif; ?>
|
||||||
|
<?php echo $this->escapeHtml($this->translate($child->getLabel(),$this->navigation($container)->getTranslatorTextDomain())); ?>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<?php endforeach ?>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
<?php endif; ?>
|
||||||
|
<?php endif ?>
|
||||||
|
<?php endforeach ?>
|
||||||
|
</ul>
|
|
@ -0,0 +1,18 @@
|
||||||
|
<div class="top-bar">
|
||||||
|
<nav class="top-bar-left">
|
||||||
|
<div class="title-bar" data-responsive-toggle="responsive-menu" data-hide-for="large">
|
||||||
|
<button class="menu-toggle" type="button" data-toggle="offCanvas" aria-label="<?php echo $this->translate('Menu'); ?>"><i class="fas fa-bars"></i></button>
|
||||||
|
</div>
|
||||||
|
<?php if ($this->themeSetting('logo')): ?>
|
||||||
|
<a href="<?php echo $site->url(); ?>" class="site-title"><img src="<?php echo $this->themeSettingAssetUrl('logo'); ?>" title="Logo"></a>
|
||||||
|
<?php else: ?>
|
||||||
|
<a href="<?php echo $site->url(); ?>" class="site-title"><?php echo $this->pageTitle($site->title()); ?></a>
|
||||||
|
<?php endif; ?>
|
||||||
|
</nav>
|
||||||
|
<div class="top-bar-right" id="responsive-menu">
|
||||||
|
<?php echo $site->publicNav()->menu()->setPartial('common/foundation-navigation.phtml')->renderPartialWithParams(['layout' => 'dropdown']); ?>
|
||||||
|
<div class="search">
|
||||||
|
<?php echo $this->partial('common/search-form'); ?>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
|
@ -0,0 +1,16 @@
|
||||||
|
<?php if ($this->themeSetting('logo')): ?>
|
||||||
|
<?php $titleLink = '<a href="' . $site->url() . '" class="site-title"><img src="' . $this->themeSettingAssetUrl('logo') . '" title="Logo"></a>'; ?>
|
||||||
|
<?php else: ?>
|
||||||
|
<?php $titleLink = '<a href="' . $site->url() . '" class="site-title">' . $this->pageTitle($site->title()) . '</a>'; ?>
|
||||||
|
<?php endif; ?>
|
||||||
|
<div class="title-bar" data-responsive-toggle="responsive-menu" data-hide-for="large">
|
||||||
|
<button class="menu-toggle" type="button" data-toggle="offCanvas" aria-label="<?php echo $this->translate('Menu'); ?>"><i class="fas fa-bars"></i></button>
|
||||||
|
<?php echo $titleLink; ?>
|
||||||
|
</div>
|
||||||
|
<div class="desktop">
|
||||||
|
<?php echo $titleLink; ?>
|
||||||
|
<?php echo $site->publicNav()->menu()->setPartial('common/foundation-navigation.phtml')->renderPartialWithParams(['layout' => 'vertical']); ?>
|
||||||
|
<div class="search">
|
||||||
|
<?php echo $this->partial('common/search-form'); ?>
|
||||||
|
</div>
|
||||||
|
</div>
|
|
@ -0,0 +1,34 @@
|
||||||
|
<?php
|
||||||
|
$translate = $this->plugin('translate');
|
||||||
|
?>
|
||||||
|
<nav class="omeka-pagination" role="navigation">
|
||||||
|
<?php if ($totalCount): ?>
|
||||||
|
<form method="GET" action="">
|
||||||
|
<?php echo $this->queryToHiddenInputs(['page']); ?>
|
||||||
|
<input type="text" name="page" class="page-input-top" value="<?php echo $currentPage; ?>" size="4" <?php echo ($pageCount == 1) ? 'readonly' : ''; ?> aria-label="<?php echo $translate('Page'); ?>">
|
||||||
|
<span class="page-count"><?php echo sprintf($translate('of %s'), $pageCount); ?></span>
|
||||||
|
</form>
|
||||||
|
|
||||||
|
<div class="button-group">
|
||||||
|
<?php if ($currentPage != 1): ?>
|
||||||
|
<?php echo $this->hyperlink('', $previousPageUrl, ['class' => 'previous o-icon-prev button', 'title' => $translate('Previous'), 'aria-label' => $translate('Previous')]); ?>
|
||||||
|
<?php else: ?>
|
||||||
|
<span class="previous o-icon-prev button inactive"></span>
|
||||||
|
<?php endif; ?>
|
||||||
|
|
||||||
|
<?php if ($currentPage < $pageCount): ?>
|
||||||
|
<?php echo $this->hyperlink('', $nextPageUrl, ['class' => 'next o-icon-next button', 'title' => $translate('Next'), 'aria-label' => $translate('Next')]); ?>
|
||||||
|
<?php else: ?>
|
||||||
|
<span class="next o-icon-next button inactive"></span>
|
||||||
|
<?php endif; ?>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<?php
|
||||||
|
$from = $offset + 1;
|
||||||
|
$to = ($currentPage < $pageCount) ? $offset + $perPage : $totalCount;
|
||||||
|
?>
|
||||||
|
<span class="row-count"><?php echo sprintf($translate('%1$s–%2$s of %3$s'), $from, $to, $totalCount); ?></span>
|
||||||
|
<?php else: ?>
|
||||||
|
<?php echo $translate('0 results'); ?>
|
||||||
|
<?php endif; ?>
|
||||||
|
</nav>
|
|
@ -0,0 +1,46 @@
|
||||||
|
<?php
|
||||||
|
$translate = $this->plugin('translate');
|
||||||
|
$escape = $this->plugin('escapeHtml');
|
||||||
|
$labelInfo = $this->setting('property_label_information');
|
||||||
|
?>
|
||||||
|
<dl>
|
||||||
|
<?php foreach ($values as $term => $propertyData): ?>
|
||||||
|
<div class="property">
|
||||||
|
<dt>
|
||||||
|
<?php if ($propertyData['alternate_label']): ?>
|
||||||
|
<?php echo $escape($propertyData['alternate_label']); ?>
|
||||||
|
<?php else: ?>
|
||||||
|
<?php echo $escape($translate($propertyData['property']->label())); ?>
|
||||||
|
<?php endif; ?>
|
||||||
|
<?php if ('term' === $labelInfo): ?>
|
||||||
|
<span class="field-term">(<?php echo $escape($propertyData['property']->term()); ?>)</span>
|
||||||
|
<?php elseif ('vocab' === $labelInfo): ?>
|
||||||
|
<span class="field-term">(<?php echo $escape($propertyData['property']->vocabulary()->label()); ?>)</span>
|
||||||
|
<?php endif; ?>
|
||||||
|
</dt>
|
||||||
|
<div class="values">
|
||||||
|
<?php foreach ($propertyData['values'] as $value): ?>
|
||||||
|
<?php
|
||||||
|
$valueType = $value->type();
|
||||||
|
$class = ['value'];
|
||||||
|
if ('resource' == $valueType || strpos($valueType, 'resource') !== false) {
|
||||||
|
$class[] = 'resource';
|
||||||
|
$class[] = $escape($value->valueResource()->resourceName());
|
||||||
|
} elseif ('uri' == $valueType) {
|
||||||
|
$class[] = 'uri';
|
||||||
|
}
|
||||||
|
if (!$value->isPublic()) {
|
||||||
|
$class[] = 'private';
|
||||||
|
}
|
||||||
|
?>
|
||||||
|
<dl class="<?php echo implode(' ', $class); ?>" lang="<?php echo $escape($value->lang()); ?>">
|
||||||
|
<?php if ($language = $value->lang()): ?>
|
||||||
|
<span class="language"><?php echo $language; ?></span>
|
||||||
|
<?php endif; ?>
|
||||||
|
<?php echo $value->asHtml(); ?>
|
||||||
|
</dl>
|
||||||
|
<?php endforeach; ?>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<?php endforeach; ?>
|
||||||
|
</dl>
|
|
@ -0,0 +1,22 @@
|
||||||
|
<?php
|
||||||
|
$translate = $this->plugin('translate');
|
||||||
|
$searchType = $this->siteSetting('search_type', 'sitewide');
|
||||||
|
switch ($searchType) {
|
||||||
|
case 'cross-site':
|
||||||
|
$searchAction = $this->url('site/cross-site-search', ['action' => 'results'], true);
|
||||||
|
break;
|
||||||
|
case 'sitewide':
|
||||||
|
default:
|
||||||
|
$searchAction = $this->url('site/resource', ['controller' => 'index', 'action' => 'search'], true);
|
||||||
|
}
|
||||||
|
$searchValue = $this->escapeHtml($this->params()->fromQuery('fulltext_search', ''));
|
||||||
|
?>
|
||||||
|
|
||||||
|
<form action="<?php echo $this->escapeHtml($searchAction); ?>" id="search-form" class="input-group">
|
||||||
|
<input type="text" name="fulltext_search" value="<?php echo $searchValue; ?>"
|
||||||
|
placeholder="<?php echo $translate('Search'); ?>"
|
||||||
|
aria-label="<?php echo $translate('Search'); ?>" class="input-group-field">
|
||||||
|
<div class="input-group-button">
|
||||||
|
<button type="submit" class="button"><?php echo $translate('Search'); ?></button>
|
||||||
|
</div>
|
||||||
|
</form>
|
|
@ -0,0 +1,18 @@
|
||||||
|
<?php
|
||||||
|
$translate = $this->plugin('translate');
|
||||||
|
$escape = $this->plugin('escapeHtml');
|
||||||
|
?>
|
||||||
|
<form class="sorting" action="">
|
||||||
|
<?php echo $this->queryToHiddenInputs(['sort_by', 'sort_order']); ?>
|
||||||
|
<select name="sort_by" aria-label="<?php echo $translate('Sort by'); ?>">
|
||||||
|
<?php foreach($sortBy as $sortByHeading): ?>
|
||||||
|
<?php $selected = ($sortByQuery === $sortByHeading['value']) ? 'selected' : ''; ?>
|
||||||
|
<option value="<?php echo $escape($sortByHeading['value']); ?>" <?php echo $selected; ?>><?php echo $sortByHeading['label']; ?></option>
|
||||||
|
<?php endforeach; ?>
|
||||||
|
</select>
|
||||||
|
<select name="sort_order" aria-label="<?php echo $translate('Sort order'); ?>">
|
||||||
|
<option value="asc" <?php echo ($sortOrderQuery === 'asc') ? 'selected' : ''; ?>><?php echo $translate('Ascending'); ?></option>
|
||||||
|
<option value="desc" <?php echo ($sortOrderQuery === 'desc') ? 'selected' : ''; ?>><?php echo $translate('Descending'); ?></option>
|
||||||
|
</select>
|
||||||
|
<button class="button" type="submit"><?php echo $translate('Sort'); ?></button>
|
||||||
|
</form>
|
|
@ -0,0 +1,78 @@
|
||||||
|
<?php
|
||||||
|
$escape = $this->plugin('escapeHtml');
|
||||||
|
$stylesheet = $this->themeSetting('stylesheet');
|
||||||
|
$this->htmlElement('html')->setAttribute('lang', $this->lang());
|
||||||
|
$this->headMeta()->setCharset('utf-8');
|
||||||
|
$this->headMeta()->appendName('viewport', 'width=device-width, initial-scale=1');
|
||||||
|
$this->headTitle($this->setting('installation_title', 'Omeka S'))->setSeparator(' · ');
|
||||||
|
if (isset($stylesheet)) {
|
||||||
|
$this->headLink()->prependStylesheet($this->assetUrl("css/$stylesheet.css"));
|
||||||
|
} else {
|
||||||
|
$this->headLink()->prependStylesheet($this->assetUrl('css/default.css'));
|
||||||
|
}
|
||||||
|
$this->headLink()->prependStylesheet($this->assetUrl('css/iconfonts.css', 'Omeka'));
|
||||||
|
$this->headScript()->prependFile('//cdn.jsdelivr.net/npm/foundation-sites@6.5.3/dist/js/foundation.min.js', 'text/javascript', [
|
||||||
|
'integrity' => 'sha256-/PFxCnsMh+nTuM0k3VJCRch1gwnCfKjaP8rJNq5SoBg= sha384-9ksAFjQjZnpqt6VtpjMjlp2S0qrGbcwF/rvrLUg2vciMhwc1UJJeAAOLuJ96w+Nj sha512-UMSn6RHqqJeJcIfV1eS2tPKCjzaHkU/KqgAnQ7Nzn0mLicFxaVhm9vq7zG5+0LALt15j1ljlg8Fp9PT1VGNmDw==',
|
||||||
|
'crossorigin' => 'anonymous'
|
||||||
|
]);
|
||||||
|
$this->headScript()->prependFile($this->assetUrl('js/global.js', 'Omeka'));
|
||||||
|
$this->headScript()->prependFile($this->assetUrl('vendor/jquery/jquery.min.js', 'Omeka'));
|
||||||
|
$this->trigger('view.layout');
|
||||||
|
$title = $this->pageTitle($site->title());
|
||||||
|
$userBar = $this->userBar();
|
||||||
|
|
||||||
|
$navLayout = ($this->themeSetting('nav_layout')) ? $this->themeSetting('nav_layout') : 'dropdown';
|
||||||
|
$this->htmlElement('body')->appendAttribute('class', $navLayout . '-menu');
|
||||||
|
if ($userBar) {
|
||||||
|
$this->htmlElement('body')->appendAttribute('class', 'user-bar');
|
||||||
|
}
|
||||||
|
|
||||||
|
$logo = $this->themeSettingAssetUrl('logo');
|
||||||
|
if ($logo):
|
||||||
|
$title = '<img src="' . $this->escapeHtml($logo) . '">';
|
||||||
|
endif;
|
||||||
|
?>
|
||||||
|
<?php echo $this->doctype(); ?>
|
||||||
|
<?php echo $this->htmlElement('html'); ?>
|
||||||
|
<head>
|
||||||
|
<?php echo $this->headMeta(); ?>
|
||||||
|
<?php echo $this->headTitle(); ?>
|
||||||
|
<?php echo $this->headLink(); ?>
|
||||||
|
<?php echo $this->headStyle(); ?>
|
||||||
|
<?php echo $this->headScript(); ?>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<?php echo $this->htmlElement('body'); ?>
|
||||||
|
|
||||||
|
<div id="offCanvas" class="off-canvas position-left" data-off-canvas>
|
||||||
|
<?php echo $site->publicNav()->menu()->setPartial('common/foundation-navigation.phtml')->renderPartialWithParams(['layout' => 'vertical']); ?>
|
||||||
|
<div class="search">
|
||||||
|
<?php echo $this->partial('common/search-form'); ?>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="off-canvas-content" data-off-canvas-content>
|
||||||
|
<a id="skipnav" href="#content"><?php echo $this->translate('Skip to main content'); ?></a>
|
||||||
|
<?php echo $userBar; ?>
|
||||||
|
<header>
|
||||||
|
<?php if ($navLayout == 'vertical'): ?>
|
||||||
|
<?php echo $this->partial('common/header-vertical'); ?>
|
||||||
|
<?php else: ?>
|
||||||
|
<?php echo $this->partial('common/header-dropdown'); ?>
|
||||||
|
<?php endif; ?>
|
||||||
|
</header>
|
||||||
|
<div id="content" role="main">
|
||||||
|
<?php echo $this->content; ?>
|
||||||
|
</div>
|
||||||
|
<footer>
|
||||||
|
<?php if ($footerContent = $this->themeSetting('footer')): ?>
|
||||||
|
<?php echo $footerContent; ?>
|
||||||
|
<?php else: ?>
|
||||||
|
<?php echo $this->translate('Powered by Omeka S'); ?>
|
||||||
|
<?php endif; ?>
|
||||||
|
</footer>
|
||||||
|
</div>
|
||||||
|
<script>
|
||||||
|
$(document).foundation();
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -0,0 +1,57 @@
|
||||||
|
<?php
|
||||||
|
$translate = $this->plugin('translate');
|
||||||
|
$escape = $this->plugin('escapeHtml');
|
||||||
|
$this->headScript()->appendFile($this->assetUrl('js/browse.js'));
|
||||||
|
$layoutSetting = $this->themeSetting('browse_layout');
|
||||||
|
$gridState = ($layoutSetting == 'togglegrid') ? 'disabled' : '';
|
||||||
|
$listState = ($layoutSetting == 'togglelist') ? 'disabled': '';
|
||||||
|
$isGrid = (!isset($layoutSetting) || strpos($layoutSetting, 'grid') !== false) ? true : false;
|
||||||
|
$headingTerm = $this->siteSetting('browse_heading_property_term');
|
||||||
|
$bodyTerm = $this->siteSetting('browse_body_property_term');
|
||||||
|
$bodyTruncate = $this->themeSetting('truncate_body_property');
|
||||||
|
|
||||||
|
$this->htmlElement('body')->appendAttribute('class', 'item-set resource browse');
|
||||||
|
?>
|
||||||
|
|
||||||
|
<?php echo $this->pageTitle($translate('Item sets'), 2); ?>
|
||||||
|
|
||||||
|
<?php echo $this->searchFilters(); ?>
|
||||||
|
|
||||||
|
<?php echo $this->searchFilters(); ?>
|
||||||
|
<div class="browse-control-mobile">
|
||||||
|
<button type="button" class="browse-toggle closed">Tools</button>
|
||||||
|
</div>
|
||||||
|
<div class="browse-controls closed">
|
||||||
|
<?php echo $this->pagination(); ?>
|
||||||
|
<?php if (strpos($layoutSetting, 'toggle') !== false): ?>
|
||||||
|
<div class="layout-toggle">
|
||||||
|
<button type="button" aria-label="<?php echo $translate('Grid'); ?>" class="grid o-icon-grid" <?php echo $gridState; ?>></button>
|
||||||
|
<button type="button" aria-label="<?php echo $translate('List'); ?>" class="list o-icon-list" <?php echo $listState; ?>></button>
|
||||||
|
</div>
|
||||||
|
<?php endif; ?>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<?php $this->trigger('view.browse.before'); ?>
|
||||||
|
<ul class="resources <?php echo ($isGrid) ? 'resource-grid' : 'resource-list'; ?>">
|
||||||
|
<?php
|
||||||
|
foreach ($itemSets as $itemSet):
|
||||||
|
$heading = $headingTerm ? $itemSet->value($headingTerm, ['default' => $translate('[Untitled]')]) : $itemSet->displayTitle();
|
||||||
|
$body = $bodyTerm ? $itemSet->value($bodyTerm) : $itemSet->displayDescription();
|
||||||
|
?>
|
||||||
|
<li class="item-set resource <?php echo ($isGrid) ? '' : 'media-object'; ?>">
|
||||||
|
<?php if ($thumbnail = $this->thumbnail($itemSet, 'medium')): ?>
|
||||||
|
<div class="resource-image <?php echo ($isGrid) ? '' : 'media-object-section'; ?>">
|
||||||
|
<?php echo $itemSet->linkRaw($thumbnail, null, ['class' => 'thumbnail']); ?>
|
||||||
|
</div>
|
||||||
|
<?php endif; ?>
|
||||||
|
<div class="resource-meta <?php echo ($isGrid) ? '' : 'media-object-section'; ?>">
|
||||||
|
<h4><?php echo $itemSet->link($heading); ?></h4>
|
||||||
|
<?php if ($body): ?>
|
||||||
|
<div class="description <?php echo ($bodyTruncate) ? $bodyTruncate : ''; ?>"><?php echo $body; ?></div>
|
||||||
|
<?php endif; ?>
|
||||||
|
</div>
|
||||||
|
</li>
|
||||||
|
<?php endforeach; ?>
|
||||||
|
</ul>
|
||||||
|
<?php $this->trigger('view.browse.after'); ?>
|
||||||
|
<?php echo $this->pagination(); ?>
|
|
@ -0,0 +1,97 @@
|
||||||
|
<?php
|
||||||
|
$translate = $this->plugin('translate');
|
||||||
|
$escape = $this->plugin('escapeHtml');
|
||||||
|
$this->headScript()->appendFile($this->assetUrl('js/browse.js'));
|
||||||
|
$this->htmlElement('body')->appendAttribute('class', 'item resource browse');
|
||||||
|
|
||||||
|
$query = $this->params()->fromQuery();
|
||||||
|
$itemSetShow = isset($itemSet);
|
||||||
|
if ($itemSetShow):
|
||||||
|
$this->htmlElement('body')->appendAttribute('class', 'item-set');
|
||||||
|
$query['item_set_id'] = $itemSet->id();
|
||||||
|
endif;
|
||||||
|
|
||||||
|
$layoutSetting = $this->themeSetting('browse_layout');
|
||||||
|
$gridState = ($layoutSetting == 'togglegrid') ? 'disabled' : '';
|
||||||
|
$listState = ($layoutSetting == 'togglelist') ? 'disabled': '';
|
||||||
|
$isGrid = (!isset($layoutSetting) || strpos($layoutSetting, 'grid') !== false) ? true : false;
|
||||||
|
$headingTerm = $this->siteSetting('browse_heading_property_term');
|
||||||
|
$bodyTerm = $this->siteSetting('browse_body_property_term');
|
||||||
|
$bodyTruncate = $this->themeSetting('truncate_body_property');
|
||||||
|
|
||||||
|
$sortHeadings = [
|
||||||
|
[
|
||||||
|
'label' => $translate('Title'),
|
||||||
|
'value' => 'dcterms:title'
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'label' => $translate('Identifier'),
|
||||||
|
'value' => 'dcterms:identifier'
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'label' => $translate('Class'),
|
||||||
|
'value' => 'resource_class_label'
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'label' => $translate('Created'),
|
||||||
|
'value' => 'created'
|
||||||
|
],
|
||||||
|
];
|
||||||
|
?>
|
||||||
|
|
||||||
|
<?php if ($itemSetShow): ?>
|
||||||
|
<?php echo $this->pageTitle($itemSet->displayTitle(), 2); ?>
|
||||||
|
<h3><?php echo $translate('Item set'); ?></h3>
|
||||||
|
<div class="metadata">
|
||||||
|
<?php echo $itemSet->displayValues(); ?>
|
||||||
|
</div>
|
||||||
|
<div class="item-set-items">
|
||||||
|
<?php echo '<h3>' . $escape($translate('Items')) . '</h3>'; ?>
|
||||||
|
<?php else: ?>
|
||||||
|
<?php echo $this->pageTitle($translate('Items'), 2); ?>
|
||||||
|
<?php endif; ?>
|
||||||
|
|
||||||
|
<?php echo $this->searchFilters(); ?>
|
||||||
|
<div class="browse-control-mobile">
|
||||||
|
<button type="button" class="browse-toggle closed">Tools</button>
|
||||||
|
</div>
|
||||||
|
<div class="browse-controls closed">
|
||||||
|
<?php echo $this->pagination(); ?>
|
||||||
|
<?php if (strpos($layoutSetting, 'toggle') !== false): ?>
|
||||||
|
<div class="layout-toggle">
|
||||||
|
<button type="button" aria-label="<?php echo $translate('Grid'); ?>" class="grid o-icon-grid" <?php echo $gridState; ?>></button>
|
||||||
|
<button type="button" aria-label="<?php echo $translate('List'); ?>" class="list o-icon-list" <?php echo $listState; ?>></button>
|
||||||
|
</div>
|
||||||
|
<?php endif; ?>
|
||||||
|
<?php echo $this->hyperlink($translate('Advanced search'), $this->url('site/resource', ['controller' => 'item', 'action' => 'search'], ['query' => $query], true), ['class' => 'advanced-search']); ?>
|
||||||
|
<?php echo $this->sortSelector($sortHeadings); ?>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<?php $this->trigger('view.browse.before'); ?>
|
||||||
|
<ul class="resources <?php echo ($isGrid) ? 'resource-grid' : 'resource-list'; ?>">
|
||||||
|
<?php
|
||||||
|
foreach ($items as $item):
|
||||||
|
$heading = $headingTerm ? $item->value($headingTerm, ['default' => $translate('[Untitled]')]) : $item->displayTitle();
|
||||||
|
$body = $bodyTerm ? $item->value($bodyTerm) : $item->displayDescription();
|
||||||
|
?>
|
||||||
|
<li class="item resource <?php echo ($isGrid) ? '' : 'media-object'; ?>">
|
||||||
|
<?php if ($thumbnail = $this->thumbnail($item, 'medium')): ?>
|
||||||
|
<div class="resource-image <?php echo ($isGrid) ? '' : 'media-object-section'; ?>">
|
||||||
|
<?php echo $item->linkRaw($thumbnail, null, ['class' => 'thumbnail']); ?>
|
||||||
|
</div>
|
||||||
|
<?php endif; ?>
|
||||||
|
<div class="resource-meta <?php echo ($isGrid) ? '' : 'media-object-section'; ?>">
|
||||||
|
<h4><?php echo $item->link($heading); ?></h4>
|
||||||
|
<?php if ($body): ?>
|
||||||
|
<div class="description <?php echo ($bodyTruncate) ? $bodyTruncate : ''; ?>"><?php echo $body; ?></div>
|
||||||
|
<?php endif; ?>
|
||||||
|
</div>
|
||||||
|
</li>
|
||||||
|
<?php endforeach; ?>
|
||||||
|
</ul>
|
||||||
|
<?php echo ($itemSetShow) ? '</div>' : ''; ?>
|
||||||
|
<?php $this->trigger('view.browse.after'); ?>
|
||||||
|
|
||||||
|
<div class="browse-controls">
|
||||||
|
<?php echo $this->pagination(); ?>
|
||||||
|
</div>
|
|
@ -0,0 +1,65 @@
|
||||||
|
<?php
|
||||||
|
$translate = $this->plugin('translate');
|
||||||
|
$escape = $this->plugin('escapeHtml');
|
||||||
|
$this->htmlElement('body')->appendAttribute('class', 'item resource show');
|
||||||
|
$embedMedia = $this->siteSetting('item_media_embed', false);
|
||||||
|
$itemMedia = $item->media();
|
||||||
|
$showLayout = $this->themeSetting('show_layout');
|
||||||
|
?>
|
||||||
|
|
||||||
|
<div class="resource-title">
|
||||||
|
<?php echo $this->pageTitle($item->displayTitle(), 2); ?>
|
||||||
|
<h3 class="label"><?php echo $translate('Item'); ?></h3>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="grid-x">
|
||||||
|
|
||||||
|
<?php if ($embedMedia && $itemMedia): ?>
|
||||||
|
<div class="media-embeds">
|
||||||
|
<?php foreach ($itemMedia as $media):
|
||||||
|
echo $media->render();
|
||||||
|
endforeach;
|
||||||
|
?>
|
||||||
|
</div>
|
||||||
|
<?php endif; ?>
|
||||||
|
<?php if (!$embedMedia && $itemMedia): ?>
|
||||||
|
<div class="media-list">
|
||||||
|
<?php foreach ($itemMedia as $media): ?>
|
||||||
|
<?php echo $media->linkPretty(); ?>
|
||||||
|
<?php endforeach; ?>
|
||||||
|
</div>
|
||||||
|
<?php endif; ?>
|
||||||
|
|
||||||
|
<div id="resource-values" class="<?php echo ($showLayout == 'inline') ? 'inline' : 'stack'; ?>">
|
||||||
|
<?php $this->trigger('view.show.before'); ?>
|
||||||
|
<?php echo $item->displayValues(); ?>
|
||||||
|
<?php $itemSets = $item->itemSets(); ?>
|
||||||
|
<dl>
|
||||||
|
<?php if (count($itemSets) > 0): ?>
|
||||||
|
<div class="property">
|
||||||
|
<dt><?php echo $translate('Item sets'); ?></dt>
|
||||||
|
<div class="values">
|
||||||
|
<?php foreach ($itemSets as $itemSet): ?>
|
||||||
|
<dd class="value"><a href="<?php echo $escape($itemSet->url()); ?>"><?php echo $itemSet->displayTitle(); ?></a></dd>
|
||||||
|
<?php endforeach; ?>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<?php endif; ?>
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
<?php
|
||||||
|
$page = $this->params()->fromQuery('page', 1);
|
||||||
|
$property = $this->params()->fromQuery('property');
|
||||||
|
$subjectValues = $item->displaySubjectValues($page, 25, $property);
|
||||||
|
?>
|
||||||
|
<?php if ($subjectValues): ?>
|
||||||
|
<div id="item-linked">
|
||||||
|
<h3><?php echo $translate('Linked resources'); ?></h3>
|
||||||
|
<?php echo $subjectValues; ?>
|
||||||
|
</div>
|
||||||
|
<?php endif; ?>
|
||||||
|
|
||||||
|
<?php $this->trigger('view.show.after'); ?>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
|
@ -0,0 +1,13 @@
|
||||||
|
<?php
|
||||||
|
$translate = $this->plugin('translate');
|
||||||
|
?>
|
||||||
|
<?php $this->htmlElement('body')->appendAttribute('class', 'media resource show'); ?>
|
||||||
|
|
||||||
|
<div class="resource-title">
|
||||||
|
<?php echo $this->pageTitle($media->displayTitle(), 2); ?>
|
||||||
|
<h3 class="label"><?php echo $translate('Media'); ?></h3>
|
||||||
|
</div>
|
||||||
|
<?php $this->trigger('view.show.before'); ?>
|
||||||
|
<?php echo $media->render(); ?>
|
||||||
|
<?php echo $media->displayValues(); ?>
|
||||||
|
<?php $this->trigger('view.show.after'); ?>
|
|
@ -0,0 +1,38 @@
|
||||||
|
<?php
|
||||||
|
$this->htmlElement('body')->appendAttribute('class', 'page ' . $page->slug());
|
||||||
|
$this->pageTitle($page->title(), 2);
|
||||||
|
$showPagePagination = $this->siteSetting('show_page_pagination', true);
|
||||||
|
?>
|
||||||
|
|
||||||
|
<?php
|
||||||
|
$nav = $site->publicNav();
|
||||||
|
$container = $nav->getContainer();
|
||||||
|
$activePage = $nav->findActive($container);
|
||||||
|
if ($activePage):
|
||||||
|
?>
|
||||||
|
<?php if ($activePage['depth'] !== 0): ?>
|
||||||
|
<nav class="breadcrumbs"><?php echo $nav->breadcrumbs()->setPartial('common/foundation-breadcrumbs'); ?></nav>
|
||||||
|
<?php endif; ?>
|
||||||
|
<?php endif; ?>
|
||||||
|
|
||||||
|
<?php if ($activePage): ?>
|
||||||
|
<?php if ($this->displayNavigation && $activePage['page']->hasPages()): ?>
|
||||||
|
<nav class="sub-menu wide" data-sticky-container>
|
||||||
|
<div class="sticky" data-sticky data-anchor="blocks">
|
||||||
|
<?php echo $nav->menu()->setUlClass('vertical menu')->renderSubMenu(); ?>
|
||||||
|
</div>
|
||||||
|
</nav>
|
||||||
|
<?php endif; ?>
|
||||||
|
<?php endif; ?>
|
||||||
|
|
||||||
|
<?php $this->trigger('view.show.before'); ?>
|
||||||
|
<div id="blocks" class="blocks">
|
||||||
|
<?php echo $this->content; ?>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<?php $this->trigger('view.show.after'); ?>
|
||||||
|
<?php if ($showPagePagination): ?>
|
||||||
|
<?php echo $this->sitePagePagination(); ?>
|
||||||
|
<?php endif; ?>
|
Loading…
Reference in New Issue