version compilable

This commit is contained in:
Yann Esposito (Yogsototh) 2010-01-19 16:23:37 +01:00
parent 52f6fa0d0d
commit 85056034b0
9 changed files with 1169 additions and 249 deletions

6
.gitignore vendored
View file

@ -1,8 +1,4 @@
*.swp
.DS_Store
output/Scratch/en
output/Scratch/fr
output/Scratch/multi
output/Scratch/map.yrf
output/index.html
output/
tmp/

29
Rules
View file

@ -7,32 +7,21 @@
# '/index.html'
#end
# default
# rep => :default est sous-entendu
compile '*' do
filter :erb
layout 'default'
# CSS
compile '/css/*' do
filter :sass
end
route '*' do
'/Scratch/multi' + item.identifier + 'index.html'
route '/css/*' do
'/Scratch' + item.identifier.chop + '.css'
end
# fr
compile '*', :rep => :fr do
# HTML
compile '/html/*' do
filter :erb
layout 'default'
end
route '*', :rep => :fr do
'/Scratch/fr' + item.identifier + 'index.html'
end
# en
compile '*', :rep => :en do
filter :erb
layout 'default'
end
route '*', :rep => :en do
'/Scratch/en' + item.identifier + 'index.html'
route '/html/*' do
'/Scratch' + item.identifier.sub('/html','') + 'index.html'
end
layout '*', :erb

610
content/css/gen.css Normal file
View file

@ -0,0 +1,610 @@
-----
# Built-in
filters:
- sass
binary: false
# Custom
-----
!rouge_clair = #cc0000
!rouge_fonce = #6c0000
!blanc_fonce = #cccccc
!gris_fonce = #888888
!texte_normal = #222222
!texte_attenue = #666666
!tiny_radius = 10px
!small_radius = 20px
!large_radius = 27px
=white
:text-shadow 0 1px #EEEEEE
:background
:image url("../../css/img/white.jpg")
:repeat no-repeat
:color = !blanc_fonce
:border
:color = !gris_fonce
:style solid
:width 1px
:color = !texte_normal
a, a:link
color: #a00
a:visited
color: #a00
a:active, a:hover
color: #f00
=black
:text-shadow 0 1px #000
:background
:image url("../../css/img/black.jpg")
:repeat no-repeat
:color #000
:border
:color #666
:style solid
:width 1px
color: #eee
a, a:link
:color #ddd
a:visited
:color = !blanc_fonce
a:active, a:hover
:color #cc0000
=red
:background
:image url("../../css/img/red.jpg")
:repeat no-repeat
:color = !rouge_fonce
:border-color = !rouge_fonce
color: #fff
a, a:link
:font-weight bold
:text-decoration none
:color #eee
a:visited
:color = !blanc_fonce
a:active, a:hover
:color #fff
=smallblock
background-position: 50% 50%
=largeblock
background-position: 50% 0%
=tinyround
:border
:style solid
:width 1px 1px 1px 1px
:-moz-border-radius
:topleft 1px
:topright = !tiny_radius
:bottomleft = !tiny_radius
:bottomright = !tiny_radius
:-webkit-border
:top-left-radius = 1px
:top-right-radius = !tiny_radius
:bottom-left-radius = !tiny_radius
:bottom-right-radius = !tiny_radius
=downsmallround
:border none
:-moz-border-radius
:topleft = 0px
:topright = 0px
:bottomleft = !small_radius
:bottomright = !small_radius
:-webkit-border
:top-left-radius = 0px
:top-right-radius = 0px
:bottom-left-radius = !small_radius
:bottom-right-radius = !small_radius
=smallround
:border
:style solid
:width 1px 1px 1px 1px
:-moz-border-radius
:topleft 1px
:topright = !small_radius
:bottomleft = !small_radius
:bottomright = !small_radius
:-webkit-border
:top-left-radius = 1px
:top-right-radius = !small_radius
:bottom-left-radius = !small_radius
:bottom-right-radius = !small_radius
=largeround
:border
:style solid
:width 1px
:-moz-border-radius
:topleft 1px
:topright = !large_radius
:bottomleft = !large_radius
:bottomright = !large_radius
:-webkit-border
:top-left-radius 1px
:top-right-radius = !large_radius
:bottom-left-radius = !large_radius
:bottom-right-radius = !large_radius
=first_round_base
:border
:style none
:width 2px
:-moz-border-radius
:topleft 1px
:bottomleft = 1px
:bottomright = 1px
:-webkit-border
:top-left-radius 1px
:bottom-left-radius = 1px
:bottom-right-radius = 1px
=large_first_round
+first_round_base
:-moz-border-radius
:topright = !large_radius
:-webkit-border
:top-right-radius = !large_radius
=small_first_round
+first_round_base
:-moz-border-radius
:topright = !small_radius
:-webkit-border
:top-right-radius = !small_radius
=tiny_first_round
+first_round_base
:-moz-border-radius
:topright = !tiny_radius
:-webkit-border
:top-right-radius = !tiny_radius
// ------- Fin des definitions ------------
#entete
+white
+smallblock
+downsmallround
#sousliens
+white
:text-weight bold
:font-size 1.3em
a, a:link
:color = !texte_attenue
a:visited
:color = !texte_attenue
a:active, a:hover
color = !rouge_clair
.corps
+white
a, a:link, a:visited
color = !rouge_fonce
font-weight: normal
a:active, a:hover
color: #f00
a.navigationprev,
a.navigationnext
color: #222
a.navigationprev:visited,
a.navigationnext:visited
color: #333
a.navigationprev:hover,
a.navigationnext:hover,
a.navigationprev:active,
a.navigationnext:active
color: #f00
.presarticle
font-size: .8em
width: 20%
.corps
+largeblock
#titre
+largeround
img
:padding .6em
pre.twilight,
.corps h2,
#bottom,
#nojsredirect
+black
+smallblock
.corps h1,
#titre,
#blocMessage,
.encadre,
.nojsbutton
+red
+smallblock
.encadre
+smallround
.black
+black
+smallblock
+smallround
.red
+red
+smallblock
+smallround
.shadow
:background
:image url("../../css/img/sombre10percent.png")
:repeat repeat
+smallround
.intro, .resume
font-size: .8em
font-style: italic
line-height: 1.4em
.corps h1
:border
:style solid
:width 1px 1px 1px 1px
:-moz-border-radius
:topleft 0px
:topright 29px
:bottomleft 0px
:bottomright 29px
:-webkit-border
:top-left-radius 0px
:top-right-radius 29px
:bottom-left-radius 0px
:bottom-right-radius 29px
:text
:align right
.corps h2
:border
:style solid
:border
:top 1px
:right 1px
:bottom 1px
:left 0px
:-moz-border-radius
:topleft 0px
:topright = !small_radius
:bottomleft 0px
:bottomright = !small_radius
:-webkit-border
:top-left-radius 0px
:top-right-radius = !small_radius
:bottom-left-radius 0px
:bottom-right-radius = !small_radius
:text
:align right
.corps h3,
.corps h4
:border
:color #6c6c6c
:top 1px
:right 1px
:bottom 1px
:left 0px
:style solid
:color #00ee00
:-moz-border-radius
:topleft 0px
:topright = !tiny_radius
:bottomleft 0px
:bottomright = !tiny_radius
:-webkit-border
:top-left-radius 0px
:top-right-radius = !tiny_radius
:bottom-left-radius 0px
:bottom-right-radius = !tiny_radius
:text
:align right
.corps h1.first
+large_first_round
.corps h2.first
+small_first_round
.corps h1.first,
.corps h2.first,
.corps h3.first,
.corps h4.first
text-align: center
img
+tinyround
#sousliens,
pre.twilight,
#bottom,
#blocMessage,
#presentation,
#Menu,
table.description tr td,
.corps
+tinyround
#titre, h1
text-shadow: 0px -1px 1px #333
.corps h2
color: #999
text-shadow: 0 1px #ccc
.corps h2 a,
.corps h3 a,
.corps h4 a
text-shadow: 0 1px #fcc
.corps h3,
.corps h4
color: #555
text-shadow: 0 1px #ccc
table.description tr td
:border none
.nojsbutton,
.corps
+largeround
// --- Les couleurs
body
:background
:color #fff
:color #000
// :image url('../../css/img/background.jpg')
// :attachment fixed
a
:font-weight bold
:text-decoration none
a, a:link
color: #a00
outline: none
a:visited
color: #a00
outline: none
a:active, a:hover
color: #f00
outline: none
ul
:list-style square
.corps h1
:font-variant small-caps
#lastmod
:color #999
:font-size .8em
#content
:background-color white
.corps h1,
.corps h2,
.corps h3,
.corps h4
:-moz-box-shadow 0 1px #fff
:-webkit-box-shadow 0 1px #fff
.withfile pre.twilight
:background
:position 50% -10%
.file
a,
a:link
:color #ddd
a:visited
:color = !blanc_fonce
a:active,
a:hover
color: #cc0000
// --- les fontes
#boutonMessage
:color black
:font
:size = !tiny_radius
:family sans-serif
body, h1, h2, h3, h4, #entete
font-family: Optima, "Century Gothic", Helvetica, Arial, sans-serif
line-height: 1.4em
.corps
font-family: Georgia, "Times New Roman", Times, serif
line-height: 1.6em
p
margin-bottom: 1.2em
.corps
:text-align justify
#liens,
#sousliens
:font-weight bold
// --- le style des blocs de liens
#liens ul
:list-style none
#sousliens ul
:list-style none
:margin
:top 0px
:bottom 0px
#liens ul li a:hover
+red
+smallround
+smallblock
#liens ul li.active
+black
+smallround
+smallblock
// --- bords arrondis
#content
+largeround
:border none
// --- les ombres
.nojsbutton
font-size: 2.5em
.nojsbutton > a:hover,
.nojsbutton > a:active
color: #000 !important
.assombris10
:text
:shadow 0 1px #eee
:background
:image url("../../css/img/sombre10percent.png")
:repeat repeat
.assombris20
:text
:shadow 0 1px #ddd
:background
:image url("../../css/img/sombre20percent.png")
:repeat repeat
.corps h3, img
:background
:image url("../../css/img/sombre20percent.png")
:repeat repeat
.corps h4
:background
:image url("../../css/img/sombre20percent.png")
:repeat repeat
:padding
:left .5em
:right .5em
.small
:font-size .8em
.strong
:font-weight bold
#sousliens .active
:font-style italic
#entete
:font-variant small-caps
#choix ul li.activelang
+black
+tinyround
#titre
:border solid 1px #300
// :left -1px
// :position relative
#titre h1
:font
:size 2.5em
:variant small-caps
:weight bold
:text-align center
:margin
:bottom .3em
:top .3em
:left auto
:right auto
abbr,
acronym
:text
:decoration none
:border
:bottom
:width 0
blockquote ul
list-style: none
.impact, .darkimpact
+smallblock
+largeround
font-size: 2em
margin: 0 auto 1em auto
line-height: 1.3em
.darkimpact
+black
text-shadow: 0 1px 0 #fff
a:hover
text-shadow: 0 1px 0 #f77
.impact
+red
text-shadow: 0 -2px 0 #000
.sc
font-variant: small-caps
.tag:hover
:color = !rouge_clair
.tag.selected
:color = !rouge_fonce
abbr
:color = !rouge_fonce
.black abbr
:color #ddd
:text-shadow 0px 0px 2px #fff
small
line-height: 1em
#rss a
+smallround
+smallblock
:line-height 2em
:border none
img
:border none
:outline none
#rss a:hover
+red
hr
border-bottom: solid 1px #fff
#menuMessage
+smallblock
+downsmallround

478
content/css/layout.css Normal file
View file

@ -0,0 +1,478 @@
-----
# Built-in
filters:
- sass
binary: false
# Custom
-----
// /*
// La dedans, seulement ce qui concerne le layout
// La largeur, la hauteur des objets. S'ils sont en float
// Les marges, le padding...
//
// En particulier, il n'y a rien relatif à la couleur ou aux fontes
// ni aux background image.
// Rien relatif aux border non plus.
// */
!VPadCorps = 3em
!HPadCorps = 5em
!VMarginCorps = 3em
// ATTENTION DOIT ETRE 0 pour le bon callage
!HMarginCorps = 0
!content_width = 52em
body
text-align: center
font-size: .8em
// /* l'entete */
#entete
position: relative
left: 0
width: 100%
min-width = !content_width - 2em
z-index: 2000
#titre h2
width: 80%
margin-left: auto
margin-right: auto
text-align: center
#titre
text-align: center
width: 100%
margin-top = !VMarginCorps
margin-bottom = !VMarginCorps
#titre h1, #titre h2
padding-left: 1em
padding-right: 1em
// /* le pied de page */
#bottom
clear: both
margin-right: 0px
text-align: right
width: 45%
margin-top: 0px
padding: 5px
float: right
// Les menus
#sousliens
padding: 1em 0
:line-height 2em
ul.horizontal li
display: inline
font-size: .9em
ul.horizontal
margin-top: 0px
margin-bottom: 0px
#rss a
:width 7em
:padding
:left 1em
:right 1em
:display inline-block
#rss img
:padding 0
:float right
:margin
:top .2em
:left .2em
:display inline
#rss sup a
:float right
:width .5em
#liens
width: 100%
padding: 0
clear: both
#liens ul
width: 100%
clear: both
padding: 0
margin: 0
!hauteur_menu=2em
#liens ul li
display: inline-block
height = !hauteur_menu
margin-left: .2em
maring-right: .2em
width: 23%
#liens ul li a,
#liens ul li span
width: 100%
display: block
line-height = !hauteur_menu
// Un 'helper'
.clear
clear: both
// Le Contenu
#content
margin-left: auto
margin-right: auto
margin-top: 0
position: relative
padding-bottom: 10px
width = !content_width
clear: both
!contentMargin = 0em
.encadre, .black, .red, .intro, .resume, .shadow
:padding
:left 2em
:right 2em
:margin
:top 2em
:bottom 2em
#afterheader
padding-left = !contentMargin
padding-right = !contentMargin
#sousliens
width: 100%
margin-left: auto
margin-right: auto
:margin
:top = !VMarginCorps
:bottom = !VMarginCorps
font-size: 1.2em
letter-spacing: 1px
text-align: left
clear: both
.corps
text-align: left
padding = !VPadCorps !HPadCorps
margin = !VMarginCorps !HMarginCorps
clear: both
.twilight
line-height: 1.1em
.corps h1
width: 90%
.corps h2
width: 80%
.corps h3
width: 70%
.corps h4
width: 60%
.corps h1,
.corps h2,
.corps h3,
.corps h4
padding-top: 5px
padding-bottom: 5px
clear: both
text-align: center
// /* on decale les titres pour qu'ils touchent le bord */
!fonth1 = 2em
!fonth2 = 1.6em
!fonth3 = 1.25em
!fonth4 = 1em
!htopbottommargin = 2em
.corps h1
:margin
:bottom = "#{ !htopbottommargin / !fonth1}em"
:top = "#{ !htopbottommargin / !fonth1}em"
.corps h2
:margin
:bottom = "#{ !htopbottommargin / !fonth2}em"
:top = "#{ !htopbottommargin / !fonth2}em"
.corps h3
:margin
:bottom = "#{ !htopbottommargin / !fonth3}em"
:top = "#{ !htopbottommargin / !fonth3}em"
.corps h4
:margin
:bottom = "#{ 1em / !fonth4}em"
:top = "#{ 1em / !fonth4}em"
.corps h1,
.corps h2,
.corps h3,
.corps h4
:position relative
:margin
:left 0px
.corps h1
:left = "#{- !HPadCorps / !fonth1}em"
.corps h2
:left = "#{- !HPadCorps / !fonth2}em"
.corps h3
:left = "#{- !HPadCorps / !fonth3}em"
.corps h4
:left = "#{- !HPadCorps / !fonth4}em"
!fontcorps = 1.25
.corps
font-size = "#{!fontcorps}em"
.corps h1
font-size = !fonth1
.corps h2
font-size = !fonth2
.corps h3
font-size = !fonth3
.corps h4
font-size = !fonth4
!corps_width = ( !content_width - ( 2 * !contentMargin ) ) / !fontcorps
!hpadding = 1
.corps h1,
.corps h2,
.corps h3,
.corps h4
:padding = 0 "#{!hpadding}em"
.corps h1.first,
.corps h2.first,
.corps h3.first,
.corps h4.first
:padding = 1em "#{!hpadding}em"
:margin
:top = 0
:bottom = 0
.corps h1.first
top = "#{- !VPadCorps / !fonth1}em"
width = "#{ ( !corps_width / !fonth1 ) - ( 2 * !hpadding ) }em"
.corps h2.first
top = "#{- !VPadCorps / !fonth2}em"
width = "#{ ( !corps_width / !fonth2 ) - ( 2 * !hpadding ) }em"
.corps h3.first
top = "#{- !VPadCorps / !fonth3}em"
width = "#{ ( !corps_width / !fonth3 ) - ( 2 * !hpadding ) }em"
.corps h4.first
top = "#{- !VPadCorps / !fonth4}em"
width = "#{ ( !corps_width / !fonth4 ) - ( 2 * !hpadding ) }em"
.corps img
max-width: 30em
// les clear
#address
clear: both
.definitionCell
width: 5em
vertical-align: top
font-weight: bold
text-align: center
.valueCell
text-align: right
.smallblock
float: left
width: 50%
font-size: 1em
font-weight: bold
.largeblock
float: right
width: 70%
font-size: 1em
#blackpage, #nojsredirect
top: 0
left: 0
width: 100%
height: 100%
margin-left: 0
margin-right: 0
margin-top: 0
margin-bottom: 0
position: absolute
text-align: center
#blackpage
color: #666
padding-top: 10em
background-color: #eee
z-index: 9000
cursor: wait
img
background: none
border: none
#nojsredirect
z-index: 9001
.nojsbutton
width: 50%
padding: 1em
border: solid 3px #fff
margin-left: auto
margin-right: auto
margin-top: 2em
z-index: 9002
.file
font-size: .8em
text-align: right
float: right
width: 80%
margin-right: .3em
.flush
clear: both
table.description
border-spacing: 5px
border-collapse: separate
margin-right: auto
margin-left: auto
table.description tr td
padding-left: .5em
padding-right: .5em
padding-top: .5ex
padding-bottom: .5ex
vertical-align: middle
margin-right: 5px
ul.long li
margin-bottom: 1em
img
display: block
margin-left: auto
margin-right: auto
img.left
float: left
max-width: 30%
:margin
:right 1em
img.inside
display: inline
vertical-align: middle
pre
overflow: hidden
.withfile pre
overflow: hidden
width: 96.6%
.navigationprev, .navigationnext
padding: 0px
margin-left: .2em
margin-right: .2em
margin-bottom: 0
:margin-top = !VMarginCorps
width: 45%
.navigation .navigationprev,
.navigation .navigationnext
width: 30%
:margin-top = 0
.navigation
font-size: 2em
.presarticleleft,
.presarticleright
font-size: 1em
.navigationprev
float: left
text-align: left
.navigationnext
float: right
text-align: right
.impact, .darkimpact
text-align: left
width: 66%
padding-left: .25em
padding-right: .25em
table.impact
text-align: left
table.impact tr td
padding-left: .25em
padding-right: .25em
#liens
font-size: 1.5em
#rss
text-align: right
font-size: 1.4em
padding-right: .3em
:margin
:top .4em
:float right
#iemessage
font-size: 1.5em
.tag
display: inline
cursor: pointer
margin-left: .5em
margin-right: .5em
.list
margin-top = !VPadCorps
#menuMessage
:font
:size 1.2em
:line
:height 1.5em
:width 100%
:text-align center
#choix
padding: 1em
text-align: left
font-size: 1.2em
#choixlang
display: inline
#choixlang ul
display: inline
#choixlang ul li
display: inline
:padding
:left .5em
:right .5em
:top .3em
:bottom .3em
margin: .3em
#choixlang ul li a
width: 100%
line-heigh: 2em

View file

@ -0,0 +1,7 @@
---
title: Titre en français
---
<h1>Un nouveau site Nanoc</h1>
<p>Vous venez de créer un site nanoc.</p>

View file

@ -1,16 +1,9 @@
-----
# # les representations (une par langue + une multi)
# reps:
# default: {}
# en: {}
# fr: {}
-----
<%
# -- init variables --
class LocalConf
attr_accessor :multi, :blog, :article, :languages, :language, :indent
attr_accessor :blog, :article, :languages, :language, :indent
def to_s
instance_variables.map{ |x|
if instance_variable_get(x).class == Array
@ -24,26 +17,26 @@ end
conf=LocalConf.new
# the current rep is the multi one
multi= ( @item_rep.name == :default )
conf.multi=multi
language=@item_rep.path
language.sub!(/\/Scratch\//,'').sub!(/\/.*$/,'')
conf.language=language
# the current item is an article
article=( ( not @item[:kind].nil? ) && @item[:kind] == 'article' )
conf.article=article
# the current rep language (if not multi)
language= ( @item_rep.name )
conf.language=language
# the current item is a blog entry page
blog=( ( not @item[:kind].nil? ) && @item[:kind] == 'blog' )
conf.blog=blog
# all supported languages
languages=@config[:languages]
conf.languages=languages
self.instance_variable_set(:@conf, conf)
puts '---'
# puts conf.to_s
puts '--- conf ---'
puts conf.to_s
%><?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
@ -53,62 +46,31 @@ puts '---'
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="shortcut icon" type="image/x-icon" href="/Scratch/img/favicon.ico" />
<link rel="stylesheet" type="text/css" href="/Scratch/css/twilight.css" />
<link rel="stylesheet" type="text/css" href="/Scratch/assets/css/layout.css" />
<link rel="stylesheet" type="text/css" href="/Scratch/css/layout.css" />
<link rel="stylesheet" type="text/css" href="/Scratch/css/shadows.css" />
<link rel="stylesheet" type="text/css" href="/Scratch/assets/css/gen.css" />
<%= conf.indent=' '; feeds %>
<% if multi %>
<link rel="stylesheet" type="text/css" href="/Scratch/css/gen.css" />
<link rel="alternate" type="application/rss+xml" title="RSS" href="http://feeds.feedburner.com/yannespositocom<%= language %>">
<link rel="stylesheet" type="text/css" href="/Scratch/css/js.css" />
<% alternate %>
<% @conf.languages.collect do |lang| %>
<link rel="alternate" lang="<%= lang %>" xml:lang="<%= lang %>" title="<%= item_of_language(lang)[:title] %>" type="text/html" hreflang="<%= lang %>" href="<%= item_of_language(lang)[:path] %>" />
<% end %>
<script type="text/javascript" src="/Scratch/js/jquery-1.3.1.min.js"></script>
<script type="text/javascript" src="/Scratch/js/jquery.cookie.js"></script>
<script type="text/javascript" src="/Scratch/js/jquery.ga.js"></script>
<script type="text/javascript" src="/Scratch/js/index.js"></script>
<title>Yogsototh's Blog</title>
<% else %>
<link rel="stylesheet" type="text/css" href="/Scratch/css/nojs.css" />
<title>Yogsototh's Blog - <%= multiPageTitle %></title>
<% end %>
</head>
<body>
<% if multi %>
<noscript>
<div id="blackpage">
<p>Loading...</p>
<img src="/Scratch/img/loading.gif" alt="loading logo"/>
</div>
<div id="nojsredirect"><%
# verrue pour l'index principal du site
chemin=@item_rep.path
if chemin == '/'
chemin = '/Scratch/multi/'
end
# fin de verrue
languages.each do |lang| %>
<div class="nojsbutton">
<a href="<%= chemin.sub(/multi/,lang) %>">
<%= tradOfKeywordIn(:nojsclickme,lang) %>
</a>
</div><%
end %>
</div>
<link rel="stylesheet" type="text/css" href="/Scratch/css/nojs.css" />
</noscript>
<% end %>
<title><%= @item[:title] %></title>
</head>
<body lang="<%= language %>">
<script type="text/javascript">
document.write('<div id="blackpage"><p><%= tradOf(:loading) %></p><img src="/Scratch/img/loading.gif" alt="loading logo"/></div>');
</script>
<div id="entete">
<div id="rss">
<% if multi %>
<% languages.each do |lang| %>
<span class="<%=lang%>">
<a href="http://feeds.feedburner.com/yannespositocom<%=lang%>">
<img src="/Scratch/img/menu/rss-128.png" alt="rss" height="32"/>
</a>
<sup>
<a href="/Scratch/multi/rss"><%= tradOf('whatsthis') %></a>
</sup>
</span>
<% end %>
<% else %>
<span class="<%=@item_rep.name%>">
<span>
<a href="http://feeds.feedburner.com/yannespositocom<%= language %>">
<img src="/Scratch/img/menu/rss-128.png" alt="rss" height="32"/>
</a>
@ -116,33 +78,34 @@ puts '---'
<a href="/Scratch/multi/rss"><%= tradOf('whatsthis') %></a>
</sup>
</span>
<% end %>
</div>
<div id="choix">
<%= puts %{tradOf(:langue)} %>
<%= puts %{generateLanguageChoice} %>
<div id="choixlang">
<ul>
<% languages.each do |l| %>
<li><%= l %></li>
<% end %>
</ul>
</div>
</div>
<div id="liens">
<% if article %>
<%= puts %{generateMultiMenuForBlog} %>
<%= puts %{generateMenuForBlog} %>
<% else %>
<%= puts %{generateMultiMenu} %>
<%= puts %{generateMenu} %>
<% end %>
</div>
</div>
<% if multi %>
<div id="menuButton"></div>
<% end %>
<div id="content">
<div id="titre">
<h1>
<%= multiTitle %>
<%= @item[:title] %>
</h1>
<% unless @item[:multiSubTitle].nil? %>
<% unless @item[:subtitle].nil? %>
<h2>
<%= multiSubTitleFor(@page) %>
<%= @item[:subtitle] %>
</h2>
<% end %>
</div>
@ -155,7 +118,7 @@ puts '---'
</div>
<% end %>
<%= puts %{generateMultiSubMenuFor(@page)} %>
<%= puts %{generateSubMenuFor} %>
<div class="flush"></div>
<%= puts %{generateLanguageOnlyTag} %>
@ -166,21 +129,17 @@ puts '---'
</div>
<% if article %>
<% if depthOf(@page) == 3 %>
<% if depthOf(@item) == 3 %>
<div class="navigation">
<%= previousFor(@page) %>
<%= nextFor(@page) %>
<%= previousFor(@item) %>
<%= nextFor(@item) %>
</div>
<div class="flush"></div>
<% end %>
<% if article %>
<%= generateAddThisButton %>
<% end %>
<div class="corps" id="comment">
<h2><%= tradOf(:comment) %></h2>
<%= generateDisqusThread %>
<%= generateIntenseDebateThread %>
</div>
<% end %>

View file

@ -1,30 +1,5 @@
def multiPageTitle
if @conf.multi
@item.title
else
@item[:multiTitle][@conf.language]
end
end
def multiTitle
multiTitleFor(@item)
end
def multiTitleFor(item)
begin
if @conf.multi
@conf.languages.map{ |l| %{<span class="#{l}">#{item[:multiTitle][l.intern]}</span>} }.join("\n")
else
item[:multiTitle][@conf.language]
end
rescue
puts "ERROR (lib/multi.rb) certainement pas d'attribut multiTitle"
return item[:title]
end
end
def tradOf(keyword)
tradOfKeywordIn(keyword, @conf.language )
end
def tradOfKeywordIn(keyword, language)
@ -46,3 +21,8 @@ def tradOfKeywordIn(keyword, language)
return '[Sorry Translation Error]'
end
end
def item_of_language(language)
puts %{lib/multi::item_of_language not implemented yet}
return @item
end

View file

@ -1,99 +0,0 @@
* {
margin: 0;
padding: 0;
font-family: Georgia, Palatino, Times, 'Times New Roman', sans-serif;
}
body {
background: #fff;
}
a {
text-decoration: none;
}
a:link,
a:visited {
color: #f30;
}
a:hover {
color: #f90;
}
#main {
position: absolute;
top: 40px;
left: 280px;
width: 500px;
}
#main h1 {
font-size: 40px;
font-weight: normal;
line-height: 40px;
letter-spacing: -1px;
}
#main p {
margin: 20px 0;
font-size: 15px;
line-height: 20px;
}
#main ul {
margin: 20px;
}
#main li {
list-style-type: square;
font-size: 15px;
line-height: 20px;
}
#sidebar {
position: absolute;
top: 40px;
left: 20px;
width: 200px;
padding: 20px 20px 0 0;
border-right: 1px solid #ccc;
text-align: right;
}
#sidebar h2 {
text-transform: uppercase;
font-size: 13px;
color: #333;
letter-spacing: 1px;
line-height: 20px;
}
#sidebar ul {
list-style-type: none;
margin: 20px 0;
}
#sidebar li {
font-size: 14px;
line-height: 20px;
}