mirror of https://github.com/dyne/webnomad.git
added fullpage.js and reorganised js/css file inclusion
This commit is contained in:
parent
eda2b44159
commit
3c4941c4fa
44
init
44
init
|
|
@ -138,9 +138,8 @@ WEB_ROOT=""
|
||||||
# information that works also with twitter.
|
# information that works also with twitter.
|
||||||
TWITTER="@DyneOrg"
|
TWITTER="@DyneOrg"
|
||||||
|
|
||||||
#
|
# What file extension to use for html files
|
||||||
# Anything below is safe to leave untouched
|
EXTENSION=".html"
|
||||||
#
|
|
||||||
|
|
||||||
# Comment to disable Bootstrap
|
# Comment to disable Bootstrap
|
||||||
BOOTSTRAP=1
|
BOOTSTRAP=1
|
||||||
|
|
@ -148,9 +147,6 @@ BOOTSTRAP=1
|
||||||
# Comment to disable FontAwesome
|
# Comment to disable FontAwesome
|
||||||
FONTAWESOME=1
|
FONTAWESOME=1
|
||||||
|
|
||||||
# What file extension to use for html files
|
|
||||||
EXTENSION=".html"
|
|
||||||
|
|
||||||
# What is the url for files in case indexing is used
|
# What is the url for files in case indexing is used
|
||||||
# this can be different from WEB_ROOT in order to serve
|
# this can be different from WEB_ROOT in order to serve
|
||||||
# files from a position different from the web pages
|
# files from a position different from the web pages
|
||||||
|
|
@ -170,6 +166,42 @@ EXIF_CLEAN=1
|
||||||
# EXIF_COMMENT=""
|
# EXIF_COMMENT=""
|
||||||
# Automatically rotate the image according to EXIF information
|
# Automatically rotate the image according to EXIF information
|
||||||
# EXIF_ROTATE=1
|
# EXIF_ROTATE=1
|
||||||
|
|
||||||
|
# Uncomment to enable Fullpage.js
|
||||||
|
# FULLPAGE=1
|
||||||
|
# FULLPAGE_OPTIONS="
|
||||||
|
//Design
|
||||||
|
controlArrows: true,
|
||||||
|
verticalCentered: true,
|
||||||
|
sectionsColor : ['#ccc', '#fff'],
|
||||||
|
paddingTop: '3em',
|
||||||
|
paddingBottom: '10px',
|
||||||
|
fixedElements: '#header, .footer',
|
||||||
|
//Navigation
|
||||||
|
navigation: true,
|
||||||
|
navigationPosition: 'right',
|
||||||
|
showActiveTooltip: false,
|
||||||
|
slidesNavigation: false,
|
||||||
|
slidesNavPosition: 'bottom',
|
||||||
|
//Scrolling
|
||||||
|
scrollingSpeed: 700,
|
||||||
|
autoScrolling: true,
|
||||||
|
fitToSection: true,
|
||||||
|
scrollBar: true,
|
||||||
|
loopBottom: true,
|
||||||
|
loopTop: false,
|
||||||
|
loopHorizontal: true,
|
||||||
|
touchSensitivity: 15,
|
||||||
|
//Accessibility
|
||||||
|
keyboardScrolling: true,
|
||||||
|
animateAnchor: true,
|
||||||
|
recordHistory: false,
|
||||||
|
//Custom selectors
|
||||||
|
sectionSelector: '.section',
|
||||||
|
slideSelector: '.slide',
|
||||||
|
lazyLoading: true
|
||||||
|
"
|
||||||
|
|
||||||
EOF
|
EOF
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
162
render
162
render
|
|
@ -123,9 +123,6 @@ EOF
|
||||||
|
|
||||||
<!-- Bootstrap -->
|
<!-- Bootstrap -->
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||||
<link href="${baseurl}/css/bootstrap.min.css" rel="stylesheet" />
|
|
||||||
<link href="${baseurl}/css/bootstrap-responsive.css" rel="stylesheet" />
|
|
||||||
|
|
||||||
EOF
|
EOF
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -155,33 +152,13 @@ EOF
|
||||||
|
|
||||||
EOF
|
EOF
|
||||||
}
|
}
|
||||||
# include all css files found in views/css
|
|
||||||
cssfound=`find $DIR/views/css -iname '*.css'`
|
|
||||||
|
|
||||||
for c in ${(f)cssfound}; do
|
|
||||||
includecss+=(${c##*/})
|
|
||||||
done
|
|
||||||
|
|
||||||
|
|
||||||
# include also generated css for fonts if present
|
|
||||||
[[ -f "${destination}"/css/custom.fonts.css ]] && includecss+=(custom.fonts.css)
|
|
||||||
|
|
||||||
|
|
||||||
# add all css needed
|
# add all css needed
|
||||||
|
# array is setup in prepare_extensions()
|
||||||
for c in $includecss; do
|
for c in $includecss; do
|
||||||
act "+ css: $c"
|
|
||||||
func "<link href=\"${baseurl}/css/${c}\" rel=\"stylesheet\" />"
|
|
||||||
|
|
||||||
cat <<EOF
|
cat <<EOF
|
||||||
<link href="${baseurl}/css/${c}" rel="stylesheet" />
|
<link href="${baseurl}/css/${c}" rel="stylesheet" />
|
||||||
|
|
||||||
EOF
|
EOF
|
||||||
if [[ -r "$DIR"/views/css/$c ]]; then
|
|
||||||
cp -a $DIR/views/css/$c "${destination}"/css/
|
|
||||||
elif [[ -r "$SYS"/css/${c} ]]; then
|
|
||||||
cp -a "$SYS"/css/${c} "${destination}"/css/
|
|
||||||
fi
|
|
||||||
|
|
||||||
done
|
done
|
||||||
|
|
||||||
# add the user configured header
|
# add the user configured header
|
||||||
|
|
@ -201,20 +178,6 @@ EOF
|
||||||
includejs+=(${j##*/})
|
includejs+=(${j##*/})
|
||||||
done
|
done
|
||||||
|
|
||||||
# insert and copy all js files
|
|
||||||
for j in $includejs; do
|
|
||||||
act "+ js: $j"
|
|
||||||
cat <<EOF
|
|
||||||
<script type="text/javascript" src="${baseurl}/js/$j"></script>
|
|
||||||
EOF
|
|
||||||
if [[ -r "$DIR"/views/js/$j ]]; then
|
|
||||||
cp -f "$DIR"/views/js/$j "$destination"/js
|
|
||||||
elif [[ -r "$SYS"/js/$j ]]; then
|
|
||||||
cp -f "$SYS"/js/$j "$destination"/js
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
|
|
||||||
render_file "$DIR"/tmpl/footer.html
|
render_file "$DIR"/tmpl/footer.html
|
||||||
|
|
||||||
# add any string argument to the footer
|
# add any string argument to the footer
|
||||||
|
|
@ -223,6 +186,25 @@ EOF
|
||||||
# if test mode then render the test footer
|
# if test mode then render the test footer
|
||||||
[[ "$CMD" = "test" ]] && render_test_footer
|
[[ "$CMD" = "test" ]] && render_test_footer
|
||||||
|
|
||||||
|
|
||||||
|
# insert all js files
|
||||||
|
for j in $includejs; do
|
||||||
|
cat <<EOF
|
||||||
|
<script type="text/javascript" src="${baseurl}/js/$j"></script>
|
||||||
|
EOF
|
||||||
|
done
|
||||||
|
|
||||||
|
|
||||||
|
# must go after jquery
|
||||||
|
[[ "$FULLPAGE" = "" ]] || {
|
||||||
|
cat <<EOF
|
||||||
|
<script> \$(document).ready(function() { \$('#fullpage').fullpage({
|
||||||
|
${FULLPAGE_OPTIONS}
|
||||||
|
}
|
||||||
|
); });</script>
|
||||||
|
EOF
|
||||||
|
}
|
||||||
|
|
||||||
[[ "$FLOWTYPE" = "" ]] || { # if there is flowtype.js then use it
|
[[ "$FLOWTYPE" = "" ]] || { # if there is flowtype.js then use it
|
||||||
|
|
||||||
cat <<EOF
|
cat <<EOF
|
||||||
|
|
@ -400,6 +382,67 @@ calc_dest() {
|
||||||
print $dst
|
print $dst
|
||||||
}
|
}
|
||||||
|
|
||||||
|
prepare_extensions() {
|
||||||
|
|
||||||
|
# render the base skeleton dir tree
|
||||||
|
mkdir -p "$destination/css"
|
||||||
|
mkdir -p "$destination/js"
|
||||||
|
mkdir -p "$destination/img"
|
||||||
|
|
||||||
|
# include all css files found in views/css
|
||||||
|
cssfound=`find $DIR/views/css -iname '*.css'`
|
||||||
|
for c in ${(f)cssfound}; do
|
||||||
|
includecss+=(${c##*/})
|
||||||
|
done
|
||||||
|
|
||||||
|
# include also generated css for fonts if present
|
||||||
|
[[ -f "${destination}"/css/custom.fonts.css ]] &&
|
||||||
|
includecss+=(custom.fonts.css)
|
||||||
|
|
||||||
|
|
||||||
|
[[ "$BOOTSTRAP" = "" ]] || {
|
||||||
|
includecss+=(bootstrap.min.css bootstrap-responsive.css)
|
||||||
|
includejs+=(bootstrap.min.js html5.js)
|
||||||
|
rsync -a "$SYS"/img/* "$destination"/img/
|
||||||
|
}
|
||||||
|
|
||||||
|
[[ "$FLOWTYPE" = "" ]] || includecss+=(flowtype.css)
|
||||||
|
|
||||||
|
[[ "$FONTAWESOME" = "" ]] || {
|
||||||
|
includecss+=(fontawesome-all.min.css)
|
||||||
|
# copy fontawesome
|
||||||
|
rsync -a "$SYS/webfonts" "$destination/"
|
||||||
|
}
|
||||||
|
|
||||||
|
[[ "$FULLPAGE" = "" ]] || {
|
||||||
|
# TODO: check if jquery is needed by other extensions
|
||||||
|
includejs+=(jquery.min.js)
|
||||||
|
includecss+=(jquery.fullpage.min.css)
|
||||||
|
includejs+=(jquery.fullpage.min.js)
|
||||||
|
}
|
||||||
|
|
||||||
|
# copy all css files
|
||||||
|
for c in $includecss; do
|
||||||
|
act "+ css: $c"
|
||||||
|
if [[ -r "$DIR"/views/css/$c ]]; then
|
||||||
|
cp -a "$DIR"/views/css/$c "${destination}"/css/
|
||||||
|
elif [[ -r "$SYS"/css/${c} ]]; then
|
||||||
|
cp -a "$SYS"/css/${c} "${destination}"/css/
|
||||||
|
fi
|
||||||
|
|
||||||
|
done
|
||||||
|
|
||||||
|
# copy all js files
|
||||||
|
for j in $includejs; do
|
||||||
|
act "+ js: $j"
|
||||||
|
if [[ -r "$DIR"/views/js/$j ]]; then
|
||||||
|
cp -f "$DIR"/views/js/$j "$destination"/js
|
||||||
|
elif [[ -r "$SYS"/js/$j ]]; then
|
||||||
|
cp -f "$SYS"/js/$j "$destination"/js
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
#########
|
#########
|
||||||
# MAIN
|
# MAIN
|
||||||
func MAIN
|
func MAIN
|
||||||
|
|
@ -409,25 +452,7 @@ func MAIN
|
||||||
act "Local test rendering inside test/"
|
act "Local test rendering inside test/"
|
||||||
source $SYS/test }
|
source $SYS/test }
|
||||||
|
|
||||||
# render the base skeleton dir tree
|
prepare_extensions
|
||||||
mkdir -p "$destination/css"
|
|
||||||
mkdir -p "$destination/js"
|
|
||||||
mkdir -p "$destination/img"
|
|
||||||
|
|
||||||
[[ "$BOOTSTRAP" = "" ]] || {
|
|
||||||
#{ test -r "$destination"/css/bootstrap.css } || {
|
|
||||||
cp "$SYS"/css/bootstrap.css "$destination"/css/
|
|
||||||
cp "$SYS"/img/* "$destination"/img/
|
|
||||||
cp "$SYS"/css/bootstrap.min.css "$destination"/css/
|
|
||||||
cp "$SYS"/css/bootstrap-responsive.css "$destination"/css/
|
|
||||||
#}
|
|
||||||
cp "$SYS"/js/bootstrap.min.js "$destination"/js/
|
|
||||||
cp "$SYS"/js/html5.js "$destination"/js/
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# copy to destination all subdirs in views/
|
# copy to destination all subdirs in views/
|
||||||
act -n "publishing all $B views $r ... "
|
act -n "publishing all $B views $r ... "
|
||||||
|
|
@ -440,8 +465,6 @@ rsync -a -W "$DIR/views/" "${destination}/"
|
||||||
|
|
||||||
# prepare all fonts
|
# prepare all fonts
|
||||||
source $SYS/fonts
|
source $SYS/fonts
|
||||||
# copy fontawesome
|
|
||||||
rsync -a "$SYS/webfonts" "$destination/"
|
|
||||||
|
|
||||||
# [[ ${#fonts} -gt 0 ]] && {
|
# [[ ${#fonts} -gt 0 ]] && {
|
||||||
# rsync -a -W "$DIR/fonts/" "$destination/" }
|
# rsync -a -W "$DIR/fonts/" "$destination/" }
|
||||||
|
|
@ -471,9 +494,6 @@ publish_html() {
|
||||||
|
|
||||||
dst=`calc_dest "$src" $ext`
|
dst=`calc_dest "$src" $ext`
|
||||||
|
|
||||||
[[ "$FLOWTYPE" = "" ]] || includecss+=(flowtype.css)
|
|
||||||
[[ "$FONTAWESOME" = "" ]] || includecss+=(fontawesome-all.min.css)
|
|
||||||
|
|
||||||
# render html
|
# render html
|
||||||
act "Html rendering: $B $dst $r"
|
act "Html rendering: $B $dst $r"
|
||||||
|
|
||||||
|
|
@ -489,13 +509,20 @@ EOF
|
||||||
# don't forget the navbar
|
# don't forget the navbar
|
||||||
render_file "$DIR"/tmpl/navbar.html >> $dst
|
render_file "$DIR"/tmpl/navbar.html >> $dst
|
||||||
|
|
||||||
[[ $BOOTSTRAP = 0 ]] || {
|
extras=""
|
||||||
cat <<EOF >> $dst
|
[[ "$FULLPAGE" = "" ]] || extras+=" id=\"fullpage\" "
|
||||||
<p> </p>
|
if [[ $BOOTSTRAP = 0 ]]; then
|
||||||
<div class="container-fluid">
|
cat <<EOF >> $dst
|
||||||
|
<div $extras>
|
||||||
<article>
|
<article>
|
||||||
EOF
|
EOF
|
||||||
}
|
else
|
||||||
|
cat <<EOF >> $dst
|
||||||
|
<p> </p>
|
||||||
|
<div class="container-fluid" $extras>
|
||||||
|
<article>
|
||||||
|
EOF
|
||||||
|
fi
|
||||||
|
|
||||||
# read meta commands
|
# read meta commands
|
||||||
cat ${src} | strip_meta | render_html >> $dst
|
cat ${src} | strip_meta | render_html >> $dst
|
||||||
|
|
@ -516,7 +543,6 @@ EOF
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# render all maildirs
|
# render all maildirs
|
||||||
maildirs=(`find views -type f -name '*.maildir'`)
|
maildirs=(`find views -type f -name '*.maildir'`)
|
||||||
maildirs+=(`find views -type f -name '*.maildirs'`)
|
maildirs+=(`find views -type f -name '*.maildirs'`)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue