From 56df47e77683aa0a5df87cf90e59aae56d53d382 Mon Sep 17 00:00:00 2001
From: "cedric@yterium.com" <>
Date: Thu, 29 Nov 2012 09:52:57 +0000
Subject: [PATCH] Rangement : spipr (pour spip reboot) est une famille de
squelettes qui repose sur Z+BootStrap(+less)+html5 3 variantes de squelettes
: spipr-dist : un squelette generique par defaut spipr-blog : un squelette de
blog spipr-doc : un squelette de doc (pour un minisite de doc de quelques
pages comme celui de bootstrap par exemple)
+ un 4e squelette complet multifonction configurable qui est la version 4.0 de SarkaSpip
Des themes de base dans spipr/v1 (on versionne preventivement), adaptes de bootswatch
Tout ca est encore en DEVELOPPEMENT, des choses sont suceptibles de bouger avec casse de la compatibilite
(notamment revision de la typo car SPIP a mieux a proposer que BootStrap, et squelettes/conventions des listes d'objet)
Documentation a venir. Merci de ne pas utiliser en production pour le moment.
---
.gitattributes | 10 ++
body.html | 32 +++++
css/bootswatch.less | 182 +++++++++++++++++++++++++++
css/layouts.less | 5 +
css/navbar.less | 19 +++
css/responsive.less | 32 +++++
css/theme.less | 24 ++++
css/variables.less | 297 ++++++++++++++++++++++++++++++++++++++++++++
plugin.xml | 12 ++
vignette.png | Bin 0 -> 5889 bytes
10 files changed, 613 insertions(+)
create mode 100644 .gitattributes
create mode 100644 body.html
create mode 100644 css/bootswatch.less
create mode 100644 css/layouts.less
create mode 100644 css/navbar.less
create mode 100644 css/responsive.less
create mode 100644 css/theme.less
create mode 100644 css/variables.less
create mode 100644 plugin.xml
create mode 100644 vignette.png
diff --git a/.gitattributes b/.gitattributes
new file mode 100644
index 0000000..29344a1
--- /dev/null
+++ b/.gitattributes
@@ -0,0 +1,10 @@
+* text=auto !eol
+/body.html -text
+css/bootswatch.less -text
+css/layouts.less -text
+css/navbar.less -text
+css/responsive.less -text
+css/theme.less -text
+css/variables.less -text
+/plugin.xml -text
+/vignette.png -text
diff --git a/body.html b/body.html
new file mode 100644
index 0000000..a167df1
--- /dev/null
+++ b/body.html
@@ -0,0 +1,32 @@
+
+
+
\ No newline at end of file
diff --git a/css/bootswatch.less b/css/bootswatch.less
new file mode 100644
index 0000000..0442252
--- /dev/null
+++ b/css/bootswatch.less
@@ -0,0 +1,182 @@
+// Bootswatch.less
+// Swatch: Cerulean
+// Version: 2.1.1
+// -----------------------------------------------------
+
+// TYPOGRAPHY
+// -----------------------------------------------------
+
+@import url(https://fonts.googleapis.com/css?family=Telex);
+
+// SCAFFOLDING
+// -----------------------------------------------------
+
+// NAVBAR
+// -----------------------------------------------------
+
+.navbar {
+
+
+ .brand {
+ padding: 14px 20px 16px;
+ font-family: @headingsFontFamily;
+ text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.2);
+ }
+
+ li {
+ line-height: 20px;
+ }
+
+ .nav > li > a {
+ padding: 16px 10px 14px;
+ font-family: @headingsFontFamily;
+ text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.2);
+ }
+
+ .search-query {
+ border: 1px solid darken(@linkColor, 10%);
+ }
+
+ .btn-navbar:hover {
+ background-color: darken(@white, 20%);
+ }
+
+ .navbar-text {
+ padding: 19px 10px 18px;
+ line-height: 13px;
+ color: rgba(0, 0, 0, 0.5);
+ text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.3);
+ }
+
+ &-inverse {
+
+ .navbar-search .search-query {
+ color: @textColor;
+ }
+ }
+}
+
+@media (max-width: @navbarCollapseWidth) {
+
+ .navbar .nav-collapse {
+
+ .nav li > a {
+
+ font-family: @headingsFontFamily;
+ font-weight: normal;
+ color: @white;
+ text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.2);
+
+ &:hover {
+ background-color: #2B7CAC;
+ }
+ }
+
+ .nav .active > a {
+ .box-shadow(none);
+ background-color: #2B7CAC;
+ }
+
+ .dropdown-menu li > a:hover,
+ .dropdown-menu li > a:focus,
+ .dropdown-submenu:hover > a {
+ background-image: none;
+ }
+
+ .navbar-form,
+ .navbar-search {
+ border: none;
+ }
+
+ .nav-header {
+ color: #2B7CAC;
+ }
+ }
+
+ .navbar-inverse .nav-collapse {
+
+ .nav li > a {
+ color: @navbarInverseLinkColor;
+
+ &:hover {
+ background-color: rgba(0, 0, 0, 0.1);
+ }
+ }
+
+ .nav .active > a {
+ background-color: rgba(0, 0, 0, 0.1);
+ }
+ }
+}
+
+div.subnav {
+
+ font-family: @headingsFontFamily;
+ text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.2);
+
+ &-fixed {
+ top: @navbarHeight;
+ }
+}
+
+// NAV
+// -----------------------------------------------------
+
+// BUTTONS
+// -----------------------------------------------------
+
+.btn {
+ #gradient > .vertical-three-colors(@white, @white, 5%, darken(@white, 0%));
+ @shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);
+ .box-shadow(@shadow);
+
+ &:hover {
+ background-position: 0 0;
+ }
+}
+
+.btn-primary {
+ .buttonBackground(lighten(@btnPrimaryBackground, 5%), @btnPrimaryBackground);
+}
+
+.btn-info {
+ .buttonBackground(lighten(@btnInfoBackground, 5%), @btnInfoBackground);
+}
+
+.btn-success {
+ .buttonBackground(lighten(@btnSuccessBackground, 5%), @btnSuccessBackground);
+}
+
+.btn-warning {
+ .buttonBackground(lighten(@btnWarningBackground, 5%), @btnWarningBackground);
+}
+
+.btn-danger {
+ .buttonBackground(lighten(@btnDangerBackground, 5%), @btnDangerBackground);
+}
+
+.btn-inverse {
+ .buttonBackground(lighten(@btnInverseBackground, 5%), @btnInverseBackground);
+}
+
+// TABLES
+// -----------------------------------------------------
+
+// FORMS
+// -----------------------------------------------------
+
+// DROPDOWNS
+// -----------------------------------------------------
+
+// ALERTS, LABELS, BADGES
+// -----------------------------------------------------
+
+// MISC
+// -----------------------------------------------------
+
+i[class^="icon-"]{
+ opacity: 0.8;
+}
+
+// MEDIA QUERIES
+// -----------------------------------------------------
diff --git a/css/layouts.less b/css/layouts.less
new file mode 100644
index 0000000..0329f95
--- /dev/null
+++ b/css/layouts.less
@@ -0,0 +1,5 @@
+@import "bootstrap/css/layouts.less";
+
+#content{float:right;}
+#aside{float:left;}
+#extra{float:left;clear:left;}
diff --git a/css/navbar.less b/css/navbar.less
new file mode 100644
index 0000000..928687e
--- /dev/null
+++ b/css/navbar.less
@@ -0,0 +1,19 @@
+@import "bootstrap/css/navbar.less";
+
+.navbar.row {margin-left: 0;}
+.navbar .navbar-wrap {
+ float: none;
+ display: block;
+ margin-left: auto;
+ margin-right: auto;
+}
+.navbar {
+ #gradient > .vertical(@navbarBackgroundHighlight, @navbarBackground);
+}
+.navbar-inverse {
+ #gradient > .vertical(@navbarInverseBackgroundHighlight, @navbarInverseBackground);
+}
+.navbar-inner {
+ border: 0;
+ .border-radius(0);
+}
diff --git a/css/responsive.less b/css/responsive.less
new file mode 100644
index 0000000..e74de2b
--- /dev/null
+++ b/css/responsive.less
@@ -0,0 +1,32 @@
+@import "bootstrap/css/responsive.less";
+
+@media (max-width: 767px) {
+
+ // Padding to set content in a bit
+ body {
+ padding-left: 0px;
+ padding-right: 0px;
+ }
+ .container {
+ margin-left: 20px;
+ margin-right: 20px;
+ }
+ .navbar .container {
+ margin-left: 0px;
+ margin-right: 0px;
+ }
+
+ #content {
+ border-bottom: 1px solid darken(@wellBackground, 7%);
+ margin-bottom :2em;
+ float: none;
+ }
+
+ #aside {float:left;width:47.5%;}
+ #extra {float:right;width:47.5%;clear: none;}
+
+}
+@media (max-width: 450px) {
+ #aside {float:none;width:100%;}
+ #extra {float:none;width:100%;}
+}
\ No newline at end of file
diff --git a/css/theme.less b/css/theme.less
new file mode 100644
index 0000000..7131adf
--- /dev/null
+++ b/css/theme.less
@@ -0,0 +1,24 @@
+@import "css/variables.less";
+@import "css/mixins.less";
+
+.header {position: relative;}
+.header .accueil a {color: inherit;}
+.header .spip_logos {float:left;margin: @paddingLarge;margin-left: 0;margin-top:0;}
+#slogan_site_spip {display: block;}
+
+.header .formulaire_menu_lang {width: 100%;}
+.header .formulaire_menu_lang select {width: 100%;}
+
+body {background-color: @wellBackground;}
+.page {background-color: @white;}
+.footer {
+ background-color: @wellBackground;
+ border-top: 1px solid darken(@wellBackground, 7%);
+ .box-shadow(inset 0 1px 1px rgba(0,0,0,.05));
+ margin-top:10em;padding-bottom: 10em;padding-top: 5em;
+ font-size: @fontSizeSmall;
+ text-align: right;
+}
+
+.cartouche {margin-bottom: @baseLineHeight;}
+.content-principal {.clearfix}
\ No newline at end of file
diff --git a/css/variables.less b/css/variables.less
new file mode 100644
index 0000000..f92385f
--- /dev/null
+++ b/css/variables.less
@@ -0,0 +1,297 @@
+//
+// Variables
+// Swatch: Cerulean
+// Version: 2.1.1
+// --------------------------------------------------
+
+
+// GLOBAL VALUES
+// --------------------------------------------------
+
+
+// Grays
+// -------------------------
+@black: #000;
+@grayDarker: #222;
+@grayDark: #333;
+@gray: #555;
+@grayLight: #999;
+@grayLighter: #F5F5F5;
+@white: #fff;
+
+
+// Accent colors
+// -------------------------
+@blue: #3E78B3;
+@blueDark: #033C73;
+@green: #73A839;
+@red: #C71C22;
+@yellow: #F7B42C;
+@orange: #DD5600;
+@pink: #F49AC1;
+@purple: #9760B3;
+
+
+// Scaffolding
+// -------------------------
+@bodyBackground: @white;
+@textColor: @gray;
+
+
+// Links
+// -------------------------
+@linkColor: #2FA4E7;
+@linkColorHover: darken(@linkColor, 15%);
+
+
+// Typography
+// -------------------------
+@sansFontFamily: "Helvetica Neue", Helvetica, Arial, sans-serif;
+@serifFontFamily: Georgia, "Times New Roman", Times, serif;
+@monoFontFamily: Menlo, Monaco, Consolas, "Courier New", monospace;
+
+@baseFontSize: 14px;
+@baseFontFamily: @sansFontFamily;
+@baseLineHeight: 20px;
+@altFontFamily: @monoFontFamily;
+
+@headingsFontFamily: 'Telex', sans-serif; // empty to use BS default, @baseFontFamily
+@headingsFontWeight: bold; // instead of browser default, bold
+@headingsColor: #317EAC; // empty to use BS default, @textColor
+
+// Component sizing
+// -------------------------
+// Based on 14px font-size and 20px line-height
+
+@fontSizeLarge: @baseFontSize * 1.25; // ~18px
+@fontSizeSmall: @baseFontSize * 0.85; // ~12px
+@fontSizeMini: @baseFontSize * 0.75; // ~11px
+
+@paddingLarge: 11px 19px; // 44px
+@paddingSmall: 2px 10px; // 26px
+@paddingMini: 1px 6px; // 24px
+
+@baseBorderRadius: 4px;
+@borderRadiusLarge: 5px;
+@borderRadiusSmall: 3px;
+
+
+// Tables
+// -------------------------
+@tableBackground: transparent; // overall background-color
+@tableBackgroundAccent: #f9f9f9; // for striping
+@tableBackgroundHover: #f5f5f5; // for hover
+@tableBorder: #ddd; // table and cell border
+
+
+// Buttons
+// -------------------------
+@btnBackground: @white;
+@btnBackgroundHighlight: darken(@white, 10%);
+@btnBorder: darken(@white, 20%);
+
+@btnPrimaryBackground: @linkColor;
+@btnPrimaryBackgroundHighlight: spin(@btnPrimaryBackground, 15%);
+
+@btnInfoBackground: @purple;
+@btnInfoBackgroundHighlight: #2f96b4;
+
+@btnSuccessBackground: @green;
+@btnSuccessBackgroundHighlight: #51a351;
+
+@btnWarningBackground: @orange;
+@btnWarningBackgroundHighlight: @orange;
+
+@btnDangerBackground: @red;
+@btnDangerBackgroundHighlight: #bd362f;
+
+@btnInverseBackground: @yellow;
+@btnInverseBackgroundHighlight: @grayDarker;
+
+
+// Forms
+// -------------------------
+@inputBackground: @white;
+@inputBorder: #ccc;
+@inputBorderRadius: 3px;
+@inputDisabledBackground: @grayLighter;
+@formActionsBackground: #f5f5f5;
+@inputHeight: @baseLineHeight + 10px; // base line-height + 8px vertical padding + 2px top/bottom border
+
+// Dropdowns
+// -------------------------
+@dropdownBackground: @white;
+@dropdownBorder: rgba(0,0,0,.2);
+@dropdownDividerTop: #e5e5e5;
+@dropdownDividerBottom: @white;
+
+@dropdownLinkColor: @grayDark;
+
+@dropdownLinkColorHover: @white;
+@dropdownLinkBackgroundHover: @dropdownLinkBackgroundActive;
+
+@dropdownLinkColorActive: @dropdownLinkColor;
+@dropdownLinkBackgroundActive: @linkColor;
+
+
+
+// COMPONENT VARIABLES
+// --------------------------------------------------
+
+// Z-index master list
+// -------------------------
+// Used for a bird's eye view of components dependent on the z-axis
+// Try to avoid customizing these :)
+@zindexDropdown: 1000;
+@zindexPopover: 1010;
+@zindexTooltip: 1020;
+@zindexFixedNavbar: 1030;
+@zindexModalBackdrop: 1040;
+@zindexModal: 1050;
+
+
+// Sprite icons path
+// -------------------------
+@iconSpritePath: "../img/glyphicons-halflings.png";
+@iconWhiteSpritePath: "../img/glyphicons-halflings-white.png";
+
+
+// Input placeholder text color
+// -------------------------
+@placeholderText: @grayLight;
+
+
+// Hr border color
+// -------------------------
+@hrBorder: @grayLighter;
+
+
+// Wells
+// -------------------------
+@wellBackground: #f5f5f5;
+
+
+// Navbar
+// -------------------------
+@navbarCollapseWidth: 767px;
+@navbarCollapseDesktopWidth: @navbarCollapseWidth + 1;
+
+@navbarHeight: 50px;
+@navbarBackground: #eee;
+@navbarBackgroundHighlight: lighten(@navbarBackground, 5%);
+@navbarBorder: rgba(0, 0, 0, 0.1);
+
+@navbarText: @textColor;
+@navbarLinkColor: @textColor;
+@navbarLinkColorHover: @textColor;
+@navbarLinkColorActive: @textColor;
+@navbarLinkBackgroundHover: rgba(0,0,0,.05);
+@navbarLinkBackgroundActive: rgba(0,0,0,.05);
+
+@navbarBrandColor: @navbarLinkColor;
+
+// Inverted navbar
+@navbarInverseBackground: @linkColor;
+@navbarInverseBackgroundHighlight: lighten(@linkColor, 8%);
+@navbarInverseBorder: darken(@navbarInverseBackground, 12%);
+
+@navbarInverseText: @grayLighter;
+@navbarInverseLinkColor: @white;
+@navbarInverseLinkColorHover: @white;
+@navbarInverseLinkColorActive: @navbarInverseLinkColorHover;
+@navbarInverseLinkBackgroundHover: rgba(0,0,0,.2);
+@navbarInverseLinkBackgroundActive: rgba(0,0,0,.2);
+
+@navbarInverseSearchBackground: darken(@navbarInverseBackground, 25%);
+@navbarInverseSearchBackgroundFocus: @white;
+@navbarInverseSearchBorder: @navbarInverseBackground;
+@navbarInverseSearchPlaceholderColor: #ccc;
+
+@navbarInverseBrandColor: @navbarInverseLinkColor;
+
+
+// Pagination
+// -------------------------
+@paginationBackground: #fff;
+@paginationBorder: #ddd;
+@paginationActiveBackground: #f5f5f5;
+
+
+// Hero unit
+// -------------------------
+@heroUnitBackground: @grayLighter;
+@heroUnitHeadingColor: inherit;
+@heroUnitLeadColor: inherit;
+
+
+// Form states and alerts
+// -------------------------
+@warningText: darken(@linkColor, 20%);
+@warningBackground: lighten(@linkColor, 20%);
+@warningBorder: darken(spin(@warningBackground, -10), 3%);
+
+@errorText: darken(#C45559, 5%);
+@errorBackground: #EDDBE3;
+@errorBorder: darken(spin(@errorBackground, -10), 3%);
+
+@successText: darken(@green, 5%);
+@successBackground: #CDB;
+@successBorder: darken(spin(@successBackground, -10), 5%);
+
+@infoText: darken(#908A62, 5%);
+@infoBackground: #A7DFF1;
+@infoBorder: darken(spin(@infoBackground, -10), 7%);
+
+
+// Tooltips and popovers
+// -------------------------
+@tooltipColor: #fff;
+@tooltipBackground: #000;
+@tooltipArrowWidth: 5px;
+@tooltipArrowColor: @tooltipBackground;
+
+@popoverBackground: #fff;
+@popoverArrowWidth: 10px;
+@popoverArrowColor: #fff;
+@popoverTitleBackground: darken(@popoverBackground, 3%);
+
+// Special enhancement for popovers
+@popoverArrowOuterWidth: @popoverArrowWidth + 1;
+@popoverArrowOuterColor: rgba(0,0,0,.25);
+
+
+
+// GRID
+// --------------------------------------------------
+
+
+// Default 940px grid
+// -------------------------
+@gridColumns: 12;
+@gridColumnWidth: 60px;
+@gridGutterWidth: 20px;
+@gridRowWidth: (@gridColumns * @gridColumnWidth) + (@gridGutterWidth * (@gridColumns - 1));
+
+// 1200px min
+@gridColumnWidth1200: 70px;
+@gridGutterWidth1200: 30px;
+@gridRowWidth1200: (@gridColumns * @gridColumnWidth1200) + (@gridGutterWidth1200 * (@gridColumns - 1));
+
+// 768px-979px
+@gridColumnWidth768: 42px;
+@gridGutterWidth768: 20px;
+@gridRowWidth768: (@gridColumns * @gridColumnWidth768) + (@gridGutterWidth768 * (@gridColumns - 1));
+
+
+// Fluid grid
+// -------------------------
+@fluidGridColumnWidth: percentage(@gridColumnWidth/@gridRowWidth);
+@fluidGridGutterWidth: percentage(@gridGutterWidth/@gridRowWidth);
+
+// 1200px min
+@fluidGridColumnWidth1200: percentage(@gridColumnWidth1200/@gridRowWidth1200);
+@fluidGridGutterWidth1200: percentage(@gridGutterWidth1200/@gridRowWidth1200);
+
+// 768px-979px
+@fluidGridColumnWidth768: percentage(@gridColumnWidth768/@gridRowWidth768);
+@fluidGridGutterWidth768: percentage(@gridGutterWidth768/@gridRowWidth768);
diff --git a/plugin.xml b/plugin.xml
new file mode 100644
index 0000000..5c9f240
--- /dev/null
+++ b/plugin.xml
@@ -0,0 +1,12 @@
+
+ Cerulean
+ 2.1.1
+ stable
+ Cedric
+ GPL
+ theme_bscerulean
+ A calm, blue sky
+ vignette.png
+
+ theme
+
diff --git a/vignette.png b/vignette.png
new file mode 100644
index 0000000000000000000000000000000000000000..95cf32424c274104c5bffdcf5064cc2e10ef9432
GIT binary patch
literal 5889
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
O00mhUP>r-v(Ek9`M}!Xm
literal 0
HcmV?d00001