Merge branch 'lua'
This commit is contained in:
commit
c53680befe
1
.gitignore
vendored
1
.gitignore
vendored
@ -1,4 +1,3 @@
|
||||
porteail/*
|
||||
.gitignore
|
||||
categories.html
|
||||
configrc
|
||||
|
158
GNUmakefile
158
GNUmakefile
@ -26,6 +26,8 @@
|
||||
|
||||
## VARIABLES ##
|
||||
|
||||
VERSION=0.1.2-trunk
|
||||
|
||||
## CONFIG PAR DEFAUT
|
||||
include paconfigrc
|
||||
|
||||
@ -35,45 +37,15 @@ include configrc
|
||||
## AUTRES CONFIGS
|
||||
|
||||
##--[[ adresses ]]--##
|
||||
INTRO_ADDR = $(COMPOSANTS)/$(INTRO)
|
||||
INDEX_ADDR = $(CIBLE)/$(INDEX)
|
||||
MENU_ADDR = $(COMPOSANTS)/$(MENU)
|
||||
CSS_SANS_MENU_ADDR = $(CSS)/$(CSS_SANS_MENU)
|
||||
CSS_AVEC_MENU_ADDR = $(CSS)/$(CSS_AVEC_MENU)
|
||||
STYLE_ADDR = $(CSS)/$(STYLE)
|
||||
ENTETE_ADDR = $(COMPOSANTS)/$(ENTETE)
|
||||
ENQUEUE_ADDR = $(COMPOSANTS)/$(ENQUEUE)
|
||||
POST_CONTENU_ADDR = $(COMPOSANTS)/$(POST_CONTENU)
|
||||
ENTETE_CAT_ADDR = $(COMPOSANTS)/$(ENTETE_CAT)
|
||||
ENQUEUE_CAT_ADDR = $(COMPOSANTS)/$(ENQUEUE_CAT)
|
||||
ELEMENT_ADDR = $(COMPOSANTS)/$(ELEMENT)
|
||||
CONTENU_ADDR = $(COMPOSANTS)/$(CONTENU)
|
||||
DEFAUT_IMG_ADDR = $(IMAGES)/$(DEFAUT_IMG)
|
||||
|
||||
##--[[ dépendances ]]--##
|
||||
ifndef $(MENU)
|
||||
CSS_DEP = $(CSS_SANS_MENU_ADDR)
|
||||
else
|
||||
CSS_DEP = $(CSS_AVEC_MENU_ADDR)
|
||||
endif
|
||||
INDEX_DEP = $(ENTETE_ADDR) $(ENQUEUE_ADDR) $(POST_CONTENU_ADDR)
|
||||
CSS_TOUS = $(CIBLE)/$(STYLE) $(CIBLE)/$(CSS_NOM)
|
||||
CONFIG = paconfigrc configrc
|
||||
|
||||
# Éléments sources
|
||||
SOURCE = $(CATEGORIES)/*.$(CATEGORIES_EXT)
|
||||
INTRO_ADDR = $(COMPONENTS)/$(INTRO)
|
||||
MENU_ADDR = $(COMPONENTS)/$(MENU)
|
||||
|
||||
# programmes
|
||||
PROG_ECHO = `which echo`
|
||||
PROG_TEST = `which test`
|
||||
PROG_SED = `which sed`
|
||||
PROG_CAT = `which cat`
|
||||
PROG_CP = `which cp`
|
||||
PROG_SH = `which sh`
|
||||
PROG_RM = `which rm`
|
||||
PROG_FIND = `which find`
|
||||
PROG_SORT = `which sort`
|
||||
PROG_WC = `which wc`
|
||||
PROG_LUA = `which lua`
|
||||
PROG_SH = `which sh`
|
||||
PROG_MKDIR = `which mkdir`
|
||||
|
||||
# vérification des programmes
|
||||
@ -83,37 +55,22 @@ endif
|
||||
ifndef PROG_TEST
|
||||
error_test = 1
|
||||
endif
|
||||
ifndef PROG_SED
|
||||
error_sed = 1
|
||||
endif
|
||||
ifndef PROG_CAT
|
||||
error_cat = 1
|
||||
endif
|
||||
ifndef PROG_CP
|
||||
error_cp = 1
|
||||
endif
|
||||
ifndef PROG_SH
|
||||
error_sh = 1
|
||||
endif
|
||||
ifndef PROG_RM
|
||||
error_rm = 1
|
||||
endif
|
||||
ifndef PROG_FIND
|
||||
error_find = 1
|
||||
endif
|
||||
ifndef PROG_SORT
|
||||
error_sort = 1
|
||||
endif
|
||||
ifndef PROG_WC
|
||||
error_wc = 1
|
||||
endif
|
||||
ifndef PROG_MKDIR
|
||||
error_mkdir = 1
|
||||
endif
|
||||
ifndef PROG_SH
|
||||
error_sh = 1
|
||||
endif
|
||||
ifndef PROG_LUA
|
||||
error_lua = 1
|
||||
endif
|
||||
|
||||
## DEBUT
|
||||
# création de tous les fichiers
|
||||
all: test index
|
||||
all: test homepage
|
||||
|
||||
## TEST
|
||||
# divers tests sur l'existence des dossiers/fichiers
|
||||
@ -123,21 +80,17 @@ test:
|
||||
@$(PROG_ECHO) -e "Lancement des tests…"
|
||||
@$(PROG_ECHO) -e "\t…existence des différents programmes"
|
||||
$(if $(error_test), @$(PROG_ECHO) -e "\t\ttest : MANQUANT." ; exit 1)
|
||||
$(if $(error_sed), @$(PROG_ECHO) -e "\t\tsed : MANQUANT." ; exit 1)
|
||||
$(if $(error_cat), @$(PROG_ECHO) -e "\t\tcat : MANQUANT." ; exit 1)
|
||||
$(if $(error_cp), @$(PROG_ECHO) -e "\t\tcp : MANQUANT." ; exit 1)
|
||||
$(if $(error_mkdir), @$(PROG_ECHO) -e "\t\tmkdir : MANQUANT." ; exit 1)
|
||||
$(if $(error_sh), @$(PROG_ECHO) -e "\t\tsh : MANQUANT." ; exit 1)
|
||||
$(if $(error_rm), @$(PROG_ECHO) -e "\t\trm : MANQUANT." ; exit 1)
|
||||
$(if $(error_find), @$(PROG_ECHO) -e "\t\tfind : MANQUANT." ; exit 1)
|
||||
$(if $(error_sort), @$(PROG_ECHO) -e "\t\tsort : MANQUANT." ; exit 1)
|
||||
$(if $(error_wc), @$(PROG_ECHO) -e "\t\twc : MANQUANT." ; exit 1)
|
||||
$(if $(error_lua), @$(PROG_ECHO) -e "\t\tlua : MANQUANT." ; exit 1)
|
||||
@$(PROG_ECHO) -e "\t…existence des dossiers '$(IMAGES)', '$(CATEGORIES)' et '$(CSS)'"
|
||||
@for i in $(IMAGES) $(CATEGORIES) $(CSS) ; \
|
||||
do \
|
||||
$(PROG_TEST) -d $$i || exit 1 ; \
|
||||
done ; \
|
||||
$(PROG_ECHO) -e "\t…création des dossiers cibles '$(CIBLE)' et '$(CIBLE)/$(IMAGES_CIBLE)'"
|
||||
@for j in $(CIBLE) $(CIBLE)/$(IMAGES_CIBLE) ; \
|
||||
$(PROG_ECHO) -e "\t…création des dossiers cibles '$(DESTINATION)' et '$(DESTINATION)/$(IMAGES_DESTINATION)'"
|
||||
@for j in $(DESTINATION) $(DESTINATION)/$(IMAGES_DESTINATION) ; \
|
||||
do \
|
||||
$(PROG_TEST) -d $$j || $(PROG_MKDIR) $$j ; \
|
||||
done
|
||||
@ -149,82 +102,19 @@ test:
|
||||
$(if $(MENU), @$(PROG_ECHO) -e "\t\t-> activée", @$(PROG_ECHO) -e "\t\t-> désactivée")
|
||||
@$(PROG_ECHO) -e " …terminé."
|
||||
|
||||
## FICHIERS CSS
|
||||
# création du fichier CSS
|
||||
$(CIBLE)/$(CSS_NOM): $(CONFIG) $(CSS_DEP)
|
||||
@$(PROG_ECHO) -e "Création du fichier CSS…"
|
||||
$(if $(MENU), @$(PROG_CP) $(CSS_AVEC_MENU_ADDR) $(CIBLE)/$(CSS_NOM), @$(PROG_CP) $(CSS_SANS_MENU_ADDR) $(CIBLE)/$(CSS_NOM))
|
||||
@$(PROG_ECHO) -e " …terminée."
|
||||
|
||||
# création du fichier CSS de couleur
|
||||
$(CIBLE)/$(STYLE): $(CONFIG) $(STYLE_ADDR)
|
||||
@$(PROG_ECHO) -e "Création du fichier CSS pour les couleurs…"
|
||||
@$(PROG_CP) $(STYLE_ADDR) $(CIBLE)/$(STYLE)
|
||||
@$(PROG_ECHO) -e " …terminée."
|
||||
|
||||
## CATEGORIES
|
||||
# création du fichier $(CONTENU_ADDR)
|
||||
$(CONTENU_ADDR): $(CONFIG) $(GEN_CATEGORIES) $(SOURCE) $(DEFAUT_IMG_ADDR)
|
||||
@$(PROG_SED) -i "s/DEBUG=1/DEBUG=0/g" $(GEN_CATEGORIES)
|
||||
@$(PROG_ECHO) -e "Création du contenu avec les valeurs suivantes : "
|
||||
@$(PROG_ECHO) -e "\t\t- Dossier catégorie : $(CATEGORIES)"
|
||||
@$(PROG_ECHO) -e "\t\t- Destination temporaire du contenu : $(CONTENU_ADDR)"
|
||||
@$(PROG_ECHO) -e "\t\t- Extension des fichiers à lire : $(CATEGORIES_EXT)"
|
||||
@$(PROG_ECHO) -e "\t\t- Dossier ayant les composants de la page : $(COMPOSANTS)"
|
||||
@$(PROG_ECHO) -e "\t\t- Entête HTML d'une catégorie : $(ENTETE_CAT_ADDR)"
|
||||
@$(PROG_ECHO) -e "\t\t- Enqueue HTML d'une catégorie : $(ENQUEUE_ADDR)"
|
||||
@$(PROG_ECHO) -e "\t\t- Code HTML d'un élément : $(ELEMENT_ADDR)"
|
||||
@$(PROG_ECHO) -e "\t\t- Dossier contenant les images sources : $(IMAGES)"
|
||||
@$(PROG_ECHO) -e "\t\t- Dossier de destination des images : $(IMAGES_CIBLE)"
|
||||
@$(PROG_ECHO) -e "\t\t- Image par défaut : $(DEFAUT_IMG_ADDR)"
|
||||
@$(PROG_ECHO) -e "\t\t- Dossier de destination global : $(CIBLE)"
|
||||
@$(PROG_SH) $(GEN_CATEGORIES) $(CATEGORIES) $(CONTENU_ADDR) $(CATEGORIES_EXT) $(COMPOSANTS) $(ENTETE_CAT_ADDR) $(ENQUEUE_CAT_ADDR) $(ELEMENT_ADDR) $(IMAGES) $(IMAGES_CIBLE) $(DEFAUT_IMG_ADDR) $(CIBLE)
|
||||
|
||||
## JAVASCRIPT
|
||||
# création du fichier html5.js
|
||||
html5.js: $(COMPOSANTS)
|
||||
@$(PROG_ECHO) -e "Création du fichier html5.js…"
|
||||
@$(PROG_CP) $(COMPOSANTS)/html5.js $(CIBLE)/html5.js
|
||||
# création de la page d'accueil
|
||||
homepage:
|
||||
@$(PROG_ECHO) -e "Création de la page d'accueil…"
|
||||
@VERSION=$(VERSION) $(PROG_LUA) create_homepage.lua || exit 1
|
||||
@$(PROG_ECHO) -e " …terminée."
|
||||
|
||||
## INDEX
|
||||
# création de la page d'index
|
||||
index: $(CONFIG) $(INDEX_ADDR) $(CSS_TOUS)
|
||||
|
||||
$(INDEX_ADDR): $(CONFIG) $(INDEX_DEP) $(CONTENU_ADDR) html5.js
|
||||
@$(PROG_ECHO) -e "Création de la page de garde…"
|
||||
# entete
|
||||
@$(PROG_ECHO) -e "\t…insertion de l'entête"
|
||||
@$(PROG_CAT) $(ENTETE_ADDR) > $(INDEX_ADDR)
|
||||
# modification du contenu
|
||||
@$(PROG_ECHO) -e "\t…modification du contenu"
|
||||
@$(PROG_SED) -i \
|
||||
-e "s/@@TITRE_PORTEAIL@@/$(TITRE)/g" \
|
||||
-e "s/@@ACCUEIL_PORTEAIL@@/$(ACCUEIL)/g" \
|
||||
-e "s#@@CSS_DEFAUT@@#./$(CSS_NOM)#g" \
|
||||
-e "s#@@CSS_COULEUR@@#./$(STYLE)#g" \
|
||||
-e "s/^\(.*\)@@.*@@\(.*\)$$/\1\2/g" \
|
||||
$(INDEX_ADDR)
|
||||
@$(PROG_ECHO) -e "\t …contenu modifié avec succès !"
|
||||
# introduction (SI la variable INTRO est remplie)
|
||||
$(if $(INTRO), @cat $(INTRO_ADDR) >> $(INDEX_ADDR); $(PROG_ECHO) -e "\t…insertion de l'introduction" || exit 1)
|
||||
# contenu
|
||||
@$(PROG_ECHO) -e "\t…insertion du contenu"
|
||||
@$(PROG_CAT) $(CONTENU_ADDR) >> $(INDEX_ADDR)
|
||||
# fin du contenu
|
||||
@$(PROG_ECHO) -e "\t…insertion de la fin du contenu"
|
||||
@$(PROG_CAT) $(POST_CONTENU_ADDR) >> $(INDEX_ADDR)
|
||||
# menu
|
||||
$(if $(MENU), @cat $(MENU_ADDR) >> $(INDEX_ADDR); $(PROG_ECHO) -e "\t…insertion du menu" || exit 1)
|
||||
# enqueue
|
||||
@$(PROG_ECHO) -e "\t…insertion de l'enqueue"
|
||||
@$(PROG_CAT) $(ENQUEUE_ADDR) >> $(INDEX_ADDR)
|
||||
@$(PROG_ECHO) -e " …terminée."
|
||||
install:
|
||||
@SRCDIR=$(DESTINATION) DESTDIR=$(INSTALLDIR) $(PROG_SH) install.sh || exit 1
|
||||
|
||||
## NETTOYAGE
|
||||
# nettoyage des fichiers générés
|
||||
clean:
|
||||
@$(PROG_ECHO) -e "Nettoyage des fichiers en cours…"
|
||||
@$(PROG_RM) -rf $(CIBLE)
|
||||
@$(PROG_RM) -f $(CONTENU_ADDR)
|
||||
@$(PROG_RM) -rf $(DESTINATION)
|
||||
@$(PROG_ECHO) -e " …terminé."
|
||||
|
133
README.md
133
README.md
@ -48,18 +48,21 @@ commande suivante :
|
||||
|
||||
apt-get install make
|
||||
|
||||
Mais également **Lua 5.1**, installable à l'aide de la commande suivante :
|
||||
|
||||
apt-get install lua5.1 luarocks
|
||||
|
||||
Puis de **LuaFileSystem** :
|
||||
|
||||
luarocks install luafilesystem
|
||||
|
||||
Votre système devrais aussi détenir les commandes suivantes :
|
||||
|
||||
- GNU make
|
||||
- cp
|
||||
- rm
|
||||
- GNU sed
|
||||
- sh
|
||||
- echo
|
||||
- test
|
||||
- cat
|
||||
- wc
|
||||
- grep
|
||||
- mkdir
|
||||
|
||||
Normalement ces éléments sont inclus de base ou disponibles dans
|
||||
n’importe quel système d’exploitation POSIX.
|
||||
@ -128,12 +131,12 @@ Ce fichier apparaît depuis la version 0.1.1. Il vous permettra de changer,
|
||||
par exemple, le titre de votre page PorteAil. Ceci se fait via la
|
||||
ligne suivante :
|
||||
|
||||
TITRE=
|
||||
TITLE=
|
||||
|
||||
Par exemple pour afficher "Mon super site" sur la page PorteAil, modifiez ceci
|
||||
dans le fichier configrc :
|
||||
|
||||
TITRE = Mon super site
|
||||
TITLE = Mon super site
|
||||
|
||||
D'autres éléments peuvent être modifiés afin de personnaliser le résultat de
|
||||
PorteAil. Pour de plus amples renseignements à ce sujet, je vous invite à lire
|
||||
@ -250,25 +253,26 @@ par
|
||||
Comme pour l'introduction, il suffit de supprimer le dièse **#** en début de
|
||||
ligne.
|
||||
|
||||
### Le fichier install.sh
|
||||
### Publication
|
||||
|
||||
**install.sh** est un script qui permet de déplacer le résultat du programme
|
||||
PorteAil dans un dossier de son choix.
|
||||
Pour publier le résultat dans un dossier web, il vous suffit d'utiliser la
|
||||
commande suivante :
|
||||
|
||||
Pour l'utiliser il suffit de lancer la commande suivante :
|
||||
make install
|
||||
|
||||
sh install.sh
|
||||
Ceci permet de déplacer le résultat du programme PorteAil dans un dossier
|
||||
de votre choix.
|
||||
|
||||
Par défaut le script essaie de copier le tout dans le dossier **public_html**
|
||||
du dossier personnel. Par exemple le dossier **/home/olivier/public_html**
|
||||
si votre dossier personnel se trouve dans **/home/olivier**.
|
||||
|
||||
Pour modifier les valeurs d'origine et de destination de la copie, éditez le
|
||||
script et modifiez les valeurs suivantes :
|
||||
fichier de configuration *configrc* et modifiez les valeurs suivantes :
|
||||
|
||||
- SRCDIR : contient l'adresse relative du dossier où se situe les fichiers
|
||||
à copier
|
||||
- DESTDIR : contient l'adresse exacte où copier les fichiers (la destination).
|
||||
- DESTINATION : contient l'adresse relative du dossier où se situe les fichiers
|
||||
à copier (résultant d'une compilation de PorteAil)
|
||||
- INSTALLDIR : contient l'adresse exacte où copier les fichiers (la destination).
|
||||
|
||||
## Pour aller plus loin
|
||||
|
||||
@ -321,51 +325,40 @@ plus grand sur la page de résultat.
|
||||
|
||||
Configuration basique :
|
||||
|
||||
- TITRE : Cf. chapitre **Fonctionnement basique**
|
||||
- TITLE : Cf. chapitre **Fonctionnement basique**
|
||||
- STYLE : nom de la feuille de style qui ajoutera des couleurs à PorteAil
|
||||
(seconde feuille de style en somme). Redéfinir l'ensemble des classes
|
||||
CSS de ce fichier vous permettra de reconfigurer toute l'apparence de
|
||||
PorteAil.
|
||||
- MENU : Cf. chapitre **Fonctionnement basique**
|
||||
- INTRO : Cf. chapitre **Fonctionnement basique**
|
||||
- CIBLE : nom du dossier dans lequel sera généré le portail web.
|
||||
- DESTINATION : nom du dossier dans lequel sera généré le portail web.
|
||||
|
||||
Configuration avancée :
|
||||
|
||||
- ACCUEIL : Titre de la page tel qu'il s'affichera sur un navigateur
|
||||
- GEN_CATEGORIES : script bash lancé au moment de la création des
|
||||
catégories. C'est ce script qui génère les catégories pour la page
|
||||
finale.
|
||||
- INDEX : nom du fichier final. Par exemple *index.html*
|
||||
- LANG : Langue utilisée pour les traductions de la page (enqueue
|
||||
principalement)
|
||||
- HOMEPAGE : Titre de la page tel qu'il s'affichera sur un navigateur
|
||||
- CATEGORIES_EXT : extension des fichiers qui seront lus pour générer
|
||||
les catégories
|
||||
- DEFAUT_IMG : nom de l'image - contenue par défaut dans le dossier img -
|
||||
par défaut pour un élément qui n'a pas d'image ou n'en a pas trouvé.
|
||||
- ELEMENT : nom du fichier contenant le code HTML d'un élément. Se trouve
|
||||
par défaut dans le dossier *COMPOSANTS*.
|
||||
- CONTENU : nom du fichier contenu le résultat de la génération des
|
||||
catégories.
|
||||
- ENTETE_CAT : nom du fichier contenant le code HTML du début d'une
|
||||
catégorie. Se trouve par défaut dans le dossier *COMPOSANT*.
|
||||
- ENQUEUE_CAT : nom du fichier contenant le code HTML de la fin d'une
|
||||
catégorie. Se trouve par défaut dans le dossier *COMPOSANT*.
|
||||
- POST_CONTENU : nom du fichier contenant le code HTML à utiliser après
|
||||
le contenu des catégories. Se trouve par défaut dans le dossier *COMPOSANT*.
|
||||
- ENTETE : nom du fichier contenant le code HTML à utiliser en début de la
|
||||
page finale.
|
||||
- ENQUEUE = nom du fichier contenant le code HTML à utiliser en fin de la
|
||||
page finale
|
||||
- COMPOSANTS : dossier contenant les éléments qui constitueront la page
|
||||
- TEMPLATE_ELEMENT : nom du fichier contenant le code HTML d'un élément.
|
||||
Se trouve par défaut dans le dossier *COMPONENTS*.
|
||||
- TEMPLATE_INDEX : nom du fichier contenant le code HTML de la page finale.
|
||||
Se trouve par défaut dans le dossier *COMPONENTS*.
|
||||
- TEMPLATE_CATEG : nom du fichier contenant le code HTML d'une catégorie.
|
||||
Se trouve par défaut dans le dossier *COMPONENTS*.
|
||||
- COMPONENTS : dossier contenant les éléments qui constitueront la page
|
||||
finale
|
||||
- CATEGORIES : dossier contenant les fichiers sources des catégories.
|
||||
- IMAGES : dossier par défaut contenant les images pour les éléments.
|
||||
- CSS : dossier par défaut des feuilles de style
|
||||
- IMAGES_CIBLE : nom du dossier qui contiendra les images utilisées par la
|
||||
- INSTALLDIR : dossier utilisé lors de la commande *make install* permettant
|
||||
de copier le résultat final dans un dossier web.
|
||||
- IMAGES_DESTINATION : nom du dossier qui contiendra les images utilisées par la
|
||||
page finale
|
||||
- CSS_SANS_MENU : nom du fichier CSS qui s'utilise lorsque la page n'a pas
|
||||
de menu
|
||||
- CSS_AVEC_MENU : idem que *CSS_SANS_MENU*, mais pour une page ayant un menu
|
||||
- CSS_NOM : nom du fichier CSS final
|
||||
- CSS_NAME : nom du fichier CSS final
|
||||
|
||||
Pour plus de renseignements, veuillez vous référer au chapitre **Les
|
||||
composants**.
|
||||
@ -376,12 +369,10 @@ Les composants sont les éléments qui permettent de composer la page HTML
|
||||
finale.
|
||||
À cet effet la page a été scindés en plusieurs éléments :
|
||||
|
||||
- entete.html : contient le début de notre page finale
|
||||
- categ_deb.html : contient le début d'une catégorie
|
||||
- index.html : contient l'ensemble du HTML pour la page d'accueil.
|
||||
- element.html : contient l'ensemble du HTML pour UN élément donné
|
||||
- categ_fin.html : contient la fin d'une catégorie
|
||||
- contenu_fin.html : contient la fin du corps de la page
|
||||
- enqueue.html : contient le pied de la page finale
|
||||
- categories.html : contient l'ensemble du HTML pour une catégorie donnée.
|
||||
(sans les éléments)
|
||||
- introduction.html : contient du HTML pouvant être ajouté après le titre
|
||||
principal de la page
|
||||
- menu.html : un menu à ajouter à notre page
|
||||
@ -389,49 +380,17 @@ principal de la page
|
||||
Pour personnaliser il suffit d'éditer chacun des fichiers afin d'en
|
||||
modifier le code source.
|
||||
|
||||
### La création des catégorie à l'aide de creation_categ.sh
|
||||
|
||||
Le fichier **creation_categ.sh** permet de générer le corps de la page.
|
||||
À cet effet il va parcourir un dossier, générer les catégories une à une
|
||||
et les éléments associés, puis il va tout déposer dans un fichier HTML
|
||||
prévu à cet effet.
|
||||
|
||||
Le script fonctionne avec un certain nombre de paramètres parmi :
|
||||
|
||||
- dossier_cat : contient la source (dossier d'entrée) dans laquelle se trouve
|
||||
les fichiers décrivant les catégories et les éléments associés.
|
||||
- destination.html : contient la destination. C'est à dire le fichier dans
|
||||
lequel se situera le corps, temporairement évidemment.
|
||||
- extension : extension des fichiers décrivant les catégories et leurs
|
||||
éléments associés
|
||||
- dossier_composants : ce dossier réunit l'ensemble des composants de notre
|
||||
page finale. Il est utile pour récupérer le fichier **element.html**,
|
||||
disponible d'ailleurs dans la variable *elem*
|
||||
- entete_cat.html : contenu HTML du début d'une catégorie
|
||||
- enqueue_cat.html : contenu HTML qui marque la fin d'une catégorie
|
||||
- element.html : contenu HTML qui contient UN élément
|
||||
- dossier_img : dossier contenant les images dites *sources*
|
||||
- destination_img : nom du dossier dans lequel seront stockées les images
|
||||
finales
|
||||
- image.png : nom du fichier par défaut utilisé lorsque les images ne sont pas
|
||||
trouvées
|
||||
- dossier_porteail : nom du dossier dans lequel sera mise la page PorteAil
|
||||
|
||||
Normalement, avec toutes ces données vous devriez pouvoir tester par vous
|
||||
même le résultat du script et améliorer le rendu de vos pages.
|
||||
|
||||
### Le dossier style
|
||||
|
||||
Le dossier **style** est prévu pour contenir l'ensemble des feuilles de style
|
||||
disponible pour l'apparence de notre page PorteAil.
|
||||
|
||||
Déposez donc ici vos feuille de style et changez la variable *CSS_AVEC_MENU*
|
||||
, *CSS_SANS_MENU* et *STYLE* du fichier **configrc** (Cf. Chapitre
|
||||
**configrc**).
|
||||
Déposez donc ici vos feuille de style et changez la variable *STYLE* du
|
||||
fichier **configrc** (Cf. Chapitre **configrc**).
|
||||
|
||||
### Le dossier img
|
||||
|
||||
Le dossier **img** contient, dans la version 0.1, l'ensemble des images
|
||||
Le dossier **img** contient, depuis la version 0.1, l'ensemble des images
|
||||
utilisées pour la page finale.
|
||||
|
||||
Déposez-y les images que vous allez utiliser.
|
||||
@ -439,10 +398,10 @@ Déposez-y les images que vous allez utiliser.
|
||||
## SOURCES
|
||||
|
||||
Les sources du programme peuvent être récupérées sur
|
||||
[un dépôt Git de l'auteur](http://git.dossmann.net/) ou via la commande suivante (à l'aide de l'outil
|
||||
git) :
|
||||
[le dépôt Gitorious](http://gitorious.org/porteail/) ou via la commande
|
||||
suivante (à l'aide de l'outil git) :
|
||||
|
||||
git clone http://git.dossmann.net/scripts/porteail.git
|
||||
git clone https://git.gitorious.org/porteail/master.git
|
||||
|
||||
## Contact / Bugs
|
||||
|
||||
|
13
TACHES
13
TACHES
@ -2,19 +2,14 @@
|
||||
----------
|
||||
|
||||
- Valider la page à l'aide de TIDY (doit être facultatif)
|
||||
- Trouver une méthode plus fine pour trouver le nombre de catégories par fichier (autre qu'un grep par exemple)
|
||||
- Vérifier la présence des /, [ et ] dans les variables avant qu'elles soient mises dans un SED. Ceci à l'aide de ${var//a/b} pour modifier les chaînes A par B dans VAR.
|
||||
- Que donne une ligne vide dans le fichier de catégorie ? => à tester comme cas possible
|
||||
- Choisir le nombre de colonne d'élément :
|
||||
#corps ul.ensemble_element li {
|
||||
width: 11em;
|
||||
margin: auto;
|
||||
}
|
||||
Mettre à width = auto. Si on veut 1 colonne, alors on met 11x1 + 1x1, si on veut deux colonne, alors on met 11x2 + 1x2, 3 colonnes font 11x3 + 1x3
|
||||
- Permettre d'ajouter des fichiers statiques (pour permettre par exemple de donner un lien vers une version d'un logiciel sur la page d'accueil)
|
||||
|
||||
>>> Pour la v0.1.3 :
|
||||
- aside en NAV !!!
|
||||
- activer menu avec une variable du genre "MENU_ACTIVE = 1" (par exemple)
|
||||
- favicon.ico ?
|
||||
- création du fichier configrc s'il n'existe pas (dans test)
|
||||
@ -26,11 +21,8 @@ Mettre à width = auto. Si on veut 1 colonne, alors on met 11x1 + 1x1, si on veu
|
||||
- changer les sed -i en "sed -e 's/chaine/autrechaine/g' > file.new && mv file.new file" (avec ou sans -e, c'est selon)
|
||||
- changer les VAR= en VAR:=
|
||||
- changer l'utilisation du shell par TXTs = $(shell ls $(dossier)/*$(ext)), par exemple.
|
||||
- Intégrer le script .sh dans le Makefile
|
||||
- faire une section install dans le makefile permettant d'installer dans DESTDIR
|
||||
|
||||
>>> Pour la v0.3 :
|
||||
- Transformer variables en anglais
|
||||
- Documentation en anglais
|
||||
- faire une page "print.css"
|
||||
- mettre en noir et blanc
|
||||
@ -141,3 +133,8 @@ des éléments
|
||||
- ajouter les fichiers générés pour chaque section du makefile (ceci de manière intelligente… si possible !)
|
||||
- Bug: si une URL possède plusieurs &
|
||||
- HTML 5 avec header et footer
|
||||
- Trouver une méthode plus fine pour trouver le nombre de catégories par fichier (autre qu'un grep par exemple)- Permettre d'ajouter des fichiers statiques (pour permettre par exemple de donner un lien vers une version d'un logiciel sur la page d'accueil)
|
||||
- aside en NAV !!!
|
||||
- faire une section install dans le makefile permettant d'installer dans DESTDIR
|
||||
- Transformer variables en anglais
|
||||
- Que donne une ligne vide dans le fichier de catégorie ? => à tester comme cas possible
|
||||
|
@ -1,5 +1,5 @@
|
||||
# Ceci est un commentaire
|
||||
[[Catégorie d'exemple]]Description de ma catégorie d'exemple
|
||||
Vous êtes perdus ?##http://perdu.com##Se rendre sur le site perdu.com##apps/preferences-system-session-services.png
|
||||
Exalead##http://exalead.fr##Visiter Exalead##apps/preferences-web-browser-shortcuts.png
|
||||
Recherche Google##http://www.google.com/search?q=porteail&ie=utf-8&oe=utf-8&client=ubuntu&channel=fs##Recherche de PorteAil sur Google##
|
||||
# This is a comment
|
||||
[[Example category]]The description of my category
|
||||
Are you lost?##http://perdu.com##Go to perdu.com website##apps/preferences-system-session-services.png
|
||||
Exalead##http://exalead.fr##Visit Exalead##apps/preferences-web-browser-shortcuts.png
|
||||
Google PorteAil Search##http://www.google.com/search?q=porteail&ie=utf-8&oe=utf-8&client=ubuntu&channel=fs##Search PorteAil on Google##
|
||||
|
@ -1,5 +1,5 @@
|
||||
# [[Nom de la catégorie]]Description
|
||||
[[Éducation]]Thème sur l'éducation
|
||||
# Titre du lien##Adresse web en HTTP##Description du lien##Nom du fichier image
|
||||
Seeks##http://www.seeks-project.info/search.php/websearch-hp##Méta-moteur de recherche décentralisé##apps/nepomuk.png
|
||||
OOo4kids##http://wiki.ooo4kids.org/index.php/Main_Page/fr##Logiciel de bureautique libre pour les enfants de 7 à 12 ans##apps/okteta.png
|
||||
# [[Category name]]Description
|
||||
[[Education]]Education topic
|
||||
# Link title ## HTTP website address ## Link description ## Image filename
|
||||
Seeks##http://www.seeks-project.info/search.php/websearch-hp##Decentralized search meta-engine##apps/nepomuk.png
|
||||
OOo4kids##http://wiki.ooo4kids.org/index.php/Main_Page/fr##Free desktop software for 7-12 year old kids##apps/okteta.png
|
||||
|
@ -1,8 +1,8 @@
|
||||
# [[Nom de la catégorie]]Description
|
||||
[[Divers]]Quelques éléments en vrac
|
||||
# Titre du lien##Adresse web en HTTP##Description du lien##Nom du fichier image
|
||||
Inkscape##http://inkscape.org/##Outil de création graphique vectorielle##apps/inkscape.png
|
||||
Wine##http://www.winehq.org/##Utilisez des outils Windows sous Linux, BSD, Mac ou Solaris##apps/wine.png
|
||||
Dogmazic##http://www.dogmazic.net/##Musique libre##devices/multimedia-player.png
|
||||
Vim##http://www.vim.org/##Éditeur en mode console##apps/utilities-terminal.png
|
||||
ChiliProject##https://www.chiliproject.org/##Outil de gestion de projet##status/script-error.png
|
||||
# [[Category name]]Description
|
||||
[[Miscellaneous]]Some elements
|
||||
# Link title ## HTTP website address ## Link description ## Image filename
|
||||
Inkscape##http://inkscape.org/##Vectorial creation software##apps/inkscape.png
|
||||
Wine##http://www.winehq.org/##Use Windows tools on Linux, BSD, Mac or Solaris##apps/wine.png
|
||||
Dogmazic##http://www.dogmazic.net/##Free music##devices/multimedia-player.png
|
||||
Vim##http://www.vim.org/##Shell mode editor##apps/utilities-terminal.png
|
||||
ChiliProject##https://www.chiliproject.org/##Project management tool##status/script-error.png
|
||||
|
@ -1,8 +0,0 @@
|
||||
<!-- Catégorie ${CATEG_TITLE} -->
|
||||
|
||||
<h2>${CATEG_TITLE}</h2>
|
||||
<p>${CATEG_DESC}</p>
|
||||
<ul class="ensemble_element">
|
||||
${ELEMENTS}
|
||||
</ul>
|
||||
<div class="espace"> </div>
|
@ -1,5 +0,0 @@
|
||||
<!-- Catégorie @@TITRE_CATEG@@ -->
|
||||
|
||||
<h2>@@TITRE_CATEG@@</h2>
|
||||
<p>@@DESC_CATEG@@</p>
|
||||
<ul class="ensemble_element">
|
@ -1,2 +0,0 @@
|
||||
</ul>
|
||||
<div class="espace"> </div>
|
9
composants/categories.html
Normal file
9
composants/categories.html
Normal file
@ -0,0 +1,9 @@
|
||||
<!-- Category - ${CATEG_TITLE} -->
|
||||
|
||||
<h2>${CATEG_TITLE}</h2>
|
||||
<p>${CATEG_DESC}</p>
|
||||
<ul class="ensemble_element">
|
||||
${ELEMENTS}
|
||||
</ul>
|
||||
<div class="espace"> </div>
|
||||
|
@ -1 +0,0 @@
|
||||
</div>
|
@ -1,9 +1,9 @@
|
||||
<li>
|
||||
<a class="cadre" href="@@URL_ELEMENT@@" title="@@DESC_ELEMENT@@">
|
||||
<a class="cadre" href="${ELEMENT_URL}" title="${ELEMENT_DESC}">
|
||||
<span class="element">
|
||||
@@TITRE_ELEMENT@@ <br />
|
||||
${ELEMENT_TITLE} <br />
|
||||
|
||||
<img src="@@URL_IMAGE@@" alt="@@DESC_IMAGE@@" title="@@TITRE_IMAGE@@" />
|
||||
<img src="${IMG_URL}" alt="${IMG_DESC}" title="${ELEMENT_DESC}" />
|
||||
</span>
|
||||
</a>
|
||||
</li>
|
||||
|
@ -1,7 +0,0 @@
|
||||
<!-- Pied de page -->
|
||||
|
||||
<footer>
|
||||
<p>Page générée à l'aide de <a href="http://porteail.e-mergence.org/" title="Se rendre sur la page officielle du projet PorteAil">PorteAil</a></p>
|
||||
</footer>
|
||||
</body>
|
||||
</html>
|
@ -1,19 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html xml:lang="fr" xmlns="http://www.w3.org/1999/xhtml" lang="fr">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>@@ACCUEIL_PORTEAIL@@</title>
|
||||
<!--[if lt IE 9]>
|
||||
<script src="html5.js" type="text/javascript"></script>
|
||||
<![endif]-->
|
||||
<link rel="stylesheet" href="@@CSS_DEFAUT@@" type="text/css" media="all" title="Défaut" />
|
||||
<link rel="stylesheet" href="@@CSS_COULEUR@@" type="text/css" media="all" title="Défaut" />
|
||||
</head>
|
||||
<body>
|
||||
<!-- Entete de page -->
|
||||
<header>
|
||||
<h1>@@TITRE_PORTEAIL@@</h1>
|
||||
</header>
|
||||
|
||||
<!-- Corps de la page -->
|
||||
<div id="corps">
|
@ -9,12 +9,12 @@
|
||||
<link rel="stylesheet" href="${CSS_COLOR}" type="text/css" media="all" title="${CSS_NAME}" />
|
||||
</head>
|
||||
<body>
|
||||
<!-- Entete de page -->
|
||||
<!-- Header -->
|
||||
<header>
|
||||
<h1>${PORTEAIL_TITLE}</h1>
|
||||
</header>
|
||||
|
||||
<!-- Corps de la page -->
|
||||
<!-- Content -->
|
||||
<div id="corps">
|
||||
${INTRODUCTION}
|
||||
${CONTENT}
|
||||
@ -22,10 +22,10 @@
|
||||
|
||||
${MENU}
|
||||
|
||||
<!-- Pied de page -->
|
||||
<!-- Footer -->
|
||||
|
||||
<footer>
|
||||
<p>Page générée à l'aide de <a href="http://porteail.e-mergence.org/" title="Se rendre sur la page officielle du projet PorteAil">PorteAil</a></p>
|
||||
<p>${POWERED_BY} <a href="http://porteail.e-mergence.org/" title="${POWERED_BY_DESC}">PorteAil ${VERSION}</a></p>
|
||||
</footer>
|
||||
</body>
|
||||
</html>
|
||||
|
@ -1,11 +1,11 @@
|
||||
<!-- Introduction de la page -->
|
||||
<!-- Webpage introduction -->
|
||||
<p>
|
||||
Ce message permet d'introduire le sujet de notre page et expliquer rapidement l'existence du site, la présence des éléments, les catégories, etc.<br />
|
||||
Il est modifiable dans le fichier <em>introduction.html</em> situé dans le dossier <em>composants</em> du répertoire principal de <a href="http://git.dossmann.net/scripts/porteail.git/" title="Se rendre sur le dépôt de fichier de PorteAil">PorteAil</a>.
|
||||
This message permit to introduce our webpage subject and quickly explain why this website exists, why all these categories, elements, etc.<br />
|
||||
This one is editable in <em>introduction.html</em> file located in <em>composants</em> directory from main <a href="http://gitorious.org/porteail/" title="Go to PorteAil repositories">PorteAil</a> directory.
|
||||
</p>
|
||||
<p>
|
||||
Pour de plus amples renseignements sur <a href="http://git.dossmann.net/scripts/porteail.git/" title="Se rendre sur le dépôt de fichier de PorteAil">PorteAil</a>, veuillez vous référer au fichier <em>README.md</em> contenu dans le répertoire principal du projet <a href="http://git.dossmann.net/scripts/porteail.git/" title="Se rendre sur le dépôt de fichier de PorteAil">PorteAil</a>.
|
||||
For more information about <a href="http://gitorious.org/porteail/" title="Go to PorteAil repositories">PorteAil</a>, please refer to <em>README.md</em> file situated in <a href="http://gitorious.org/porteail/" title="Se rendre sur le dépôt de fichier de PorteAil">PorteAil</a> main directory.
|
||||
</p>
|
||||
<p>
|
||||
Les catégories sont renseignées dans le dossier <em>categ</em> dans lequel des fichiers d'exemples, normalement assez parlants, devraient vous permettre de construire votre première page <a href="http://git.dossmann.net/scripts/porteail.git/" title="Se rendre sur le dépôt de fichier de PorteAil">PorteAil</a>.
|
||||
Categories are filled in <em>categ</em> directory in which some example file should be talkative for you. This will allow you to generate your first <a href="http://gitorious.org/porteail/" title="Go to PorteAil repositories">PorteAil</a> homepage.
|
||||
</p>
|
||||
|
@ -1,11 +1,11 @@
|
||||
<!-- Menu de la page -->
|
||||
<!-- Webpage menu -->
|
||||
<nav id="cartable">
|
||||
<div class="sacoche">
|
||||
<h3>Menu</h3>
|
||||
<ul>
|
||||
<li>Lien 1</li>
|
||||
<li>Lien 2</li>
|
||||
<li>Lien 3</li>
|
||||
<li>Link 1</li>
|
||||
<li>Link 2</li>
|
||||
<li>Link 3</li>
|
||||
</ul>
|
||||
</div>
|
||||
</nav>
|
||||
|
@ -1,10 +0,0 @@
|
||||
<li>
|
||||
<a class="cadre" href="${ELEMENT_URL}" title="${ELEMENT_DESC}">
|
||||
<span class="element">
|
||||
${ELEMENT_TITLE} <br />
|
||||
|
||||
<img src="${IMG_URL}" alt="${IMG_DESC}" title="${ELEMENT_DESC}" />
|
||||
</span>
|
||||
</a>
|
||||
</li>
|
||||
|
@ -1,64 +1,44 @@
|
||||
###########################
|
||||
## Configuration basique ##
|
||||
## Main configuration ##
|
||||
###########################
|
||||
|
||||
# Titre de votre PorteAil
|
||||
TITRE = Titre par défaut
|
||||
# Feuille de style choisie
|
||||
STYLE = noir.css
|
||||
# Code HTML du menu (par défaut dans le dossier COMPOSANTS)
|
||||
# Homepage title
|
||||
TITLE = My portal
|
||||
# CSS color file
|
||||
STYLE = black.css
|
||||
# Menu (if needed)
|
||||
#MENU = menu.html
|
||||
# Code HTML de l'introduction (par défaut dans le dossier COMPOSANTS)
|
||||
# Introduction (if needed)
|
||||
#INTRO = introduction.html
|
||||
CIBLE = porteail
|
||||
# Destination directory
|
||||
DESTINATION = porteail
|
||||
|
||||
###########################
|
||||
## Configuration avancée ##
|
||||
## Additional config ##
|
||||
###########################
|
||||
#
|
||||
###--[[ divers ]]--##
|
||||
#
|
||||
#ACCUEIL = Accueil - $(TITRE)
|
||||
#GEN_CATEGORIES = creation_categ.sh
|
||||
#INDEX = index.html
|
||||
## Extension des fichiers à prendre en compte dans le dossier contenant les
|
||||
##+ catégories
|
||||
|
||||
##--[[ miscellaneous ]]--##
|
||||
|
||||
#LANG = en
|
||||
#HOMEPAGE = Homepage - My portal
|
||||
## File extension to be used to read categories
|
||||
#CATEGORIES_EXT = txt
|
||||
## Image de base si aucune mentionnée (par défaut dans le dossier IMAGES)
|
||||
#DEFAUT_IMG = generique.png
|
||||
## Contenu HTML d'un élément
|
||||
#ELEMENT = element.html
|
||||
## résultat de la génération des catégories
|
||||
#CONTENU = categories.html
|
||||
## Contenu HTML à utiliser en début de catégorie
|
||||
#ENTETE_CAT = categ_deb.html
|
||||
## Contenu HTML à utiliser en fin de catégorie
|
||||
#ENQUEUE_CAT = categ_fin.html
|
||||
## Contenu HTML à utiliser après le contenu principal de la page
|
||||
#POST_CONTENU = contenu_fin.html
|
||||
## Contenu HTML à utiliser en début de page finale
|
||||
#ENTETE = entete.html
|
||||
## Contenu HTML à utiliser en fin de page finale
|
||||
#ENQUEUE = enqueue.html
|
||||
## Default image
|
||||
#DEFAULT_IMG = generique.png
|
||||
## Templates
|
||||
#TEMPLATE_ELEMENT = element.html
|
||||
#TEMPLATE_INDEX = index.html
|
||||
#TEMPLATE_CATEG = categories.html
|
||||
#
|
||||
###--[[ dossiers ]]--##
|
||||
###--[[ directories ]]--##
|
||||
#
|
||||
### SOURCES
|
||||
## Dossier contenant les éléments composants votre page
|
||||
#COMPOSANTS = composants
|
||||
## dossier contenant le détail des catégories
|
||||
#COMPONENTS = composants
|
||||
#CATEGORIES = categ
|
||||
## dossier contenant les images
|
||||
#IMAGES = img
|
||||
## dossier contenant les feuilles de style
|
||||
#IMAGES_DESTINATION = image
|
||||
#CSS = style
|
||||
#
|
||||
### DESTINATION (cible)
|
||||
## dossier de destination des images
|
||||
#IMAGES_CIBLE = image
|
||||
#INSTALLDIR = ${HOME}/public_html
|
||||
#
|
||||
###--[[ style ]]--##
|
||||
#
|
||||
#CSS_SANS_MENU = sans_menu.css
|
||||
#CSS_AVEC_MENU = avec_menu.css
|
||||
#CSS_NOM = defaut.css
|
||||
#CSS_NAME = defaut.css
|
||||
|
@ -18,19 +18,24 @@ local default_dir_destination = 'porteail'
|
||||
local default_dir_img_destination = 'image'
|
||||
local default_dir_img_source = 'img'
|
||||
local default_dir_css_source = 'style'
|
||||
local default_dir_lang = 'lang'
|
||||
-- Default files values
|
||||
local default_img_filename = 'generique.png'
|
||||
local default_index_filename = 'index.html'
|
||||
local default_template_index_filename = 'index.html'
|
||||
local default_template_categ_filename = 'categ.html'
|
||||
local default_template_element_filename = 'one_element.html'
|
||||
local default_css_filename = 'noir.css'
|
||||
local default_css_menu_without = 'sans_menu.css'
|
||||
local default_css_menu_with = 'avec_menu.css'
|
||||
local default_template_categ_filename = 'categories.html'
|
||||
local default_template_element_filename = 'element.html'
|
||||
local default_css_filename = 'black.css'
|
||||
local default_css_menu_without = 'without_menu.css'
|
||||
local default_css_menu_with = 'with_menu.css'
|
||||
-- Other defaults values
|
||||
local version = os.getenv('VERSION') or '(Unknown version)'
|
||||
local default_categ_extension = 'txt'
|
||||
local DIR_SEP = '/'
|
||||
local default_css_name = 'Défaut'
|
||||
local default_css_name = 'Default'
|
||||
local default_title = 'My portal'
|
||||
local default_homepage_title = ' - Homepage'
|
||||
local default_language = 'en'
|
||||
|
||||
--[[ Functions ]]--
|
||||
|
||||
@ -128,22 +133,27 @@ end
|
||||
|
||||
function process(filepath, template_categ, template_element, img_destination, destination, img_source, default_img)
|
||||
-- parse given file
|
||||
local categ_page = ''
|
||||
local elements = {}
|
||||
local categ_title = ''
|
||||
local categ_description = ''
|
||||
local categ_count = 0
|
||||
-- parse category file
|
||||
for line in io.lines(filepath) do
|
||||
local element = ''
|
||||
-- check if this line is a comment ("# my comment"), a category ("[[My category]]Its description") or an element ("Title##Description##URL##Image")
|
||||
-- check if this line is:
|
||||
-- a comment ("# my comment"),
|
||||
-- a category ("[[My category]]Its description")
|
||||
-- or an element ("Title##Description##URL##Image")
|
||||
is_comment = string.find(line, '^#+.*')
|
||||
is_title = string.find(line, '%[%[(.*)%]%](.*)')
|
||||
is_element = string.find(line, '(.*)##(.*)##(.*)##(.*)')
|
||||
-- processing lines to fetch data
|
||||
if is_comment then
|
||||
-- do nothing because it's a comment
|
||||
elseif is_title then
|
||||
title = ''
|
||||
for t in string.gmatch(line, '%[%[(.*)%]%].*') do title = title .. t end
|
||||
description =''
|
||||
for d in string.gmatch(line, '%[%[.*%]%](.*)') do description = description .. d end
|
||||
categ_page = replace(template_categ, {CATEG_TITLE=title, CATEG_DESC=description})
|
||||
for t in string.gmatch(line, '%[%[(.*)%]%].*') do categ_title = categ_title .. t end
|
||||
for d in string.gmatch(line, '%[%[.*%]%](.*)') do categ_description = categ_description .. d end
|
||||
categ_count = categ_count + 1
|
||||
elseif is_element then
|
||||
title = ''
|
||||
description = ''
|
||||
@ -154,17 +164,37 @@ function process(filepath, template_categ, template_element, img_destination, de
|
||||
for u in string.gmatch(line, '.*##(.*)##.*##.*') do url = url .. u end
|
||||
for i in string.gmatch(line, '.*##.*##.*##(.*)') do img = img .. i end
|
||||
img_description = " "
|
||||
-- copy image and fetch result
|
||||
img_url = processImage(img, img_source, img_destination, destination, default_img)
|
||||
-- replace some chars in URL to avoid HTML5 problems
|
||||
url = url:gsub('%&', '%&')
|
||||
-- create element's result
|
||||
element = replace(template_element, {ELEMENT_URL=url, ELEMENT_DESC=description, ELEMENT_TITLE=title, IMG_URL=img_url, IMG_DESC=img_description})
|
||||
-- add it to elements table
|
||||
table.insert(elements, element)
|
||||
end
|
||||
end
|
||||
-- check if category is ok
|
||||
error_msg = ' ' .. filepath .. ' not imported: '
|
||||
if categ_count > 1 then
|
||||
print (error_msg .. 'too many categories.')
|
||||
return ''
|
||||
elseif categ_count == 0 then
|
||||
print (error_msg .. 'no category found.')
|
||||
return ''
|
||||
end
|
||||
-- check elements
|
||||
if table.getn(elements) < 1 then
|
||||
print (error_msg .. 'no elements found.')
|
||||
return ''
|
||||
end
|
||||
-- parse elements to add them to result
|
||||
local text_elements = ''
|
||||
for k, v in pairs(elements) do
|
||||
text_elements = text_elements .. v
|
||||
end
|
||||
local result = replace(categ_page, {ELEMENTS=text_elements})
|
||||
-- do substitutions on result
|
||||
local result = replace(template_categ, {CATEG_TITLE=categ_title, CATEG_DESC=categ_description, ELEMENTS=text_elements})
|
||||
return result
|
||||
end
|
||||
|
||||
@ -175,9 +205,9 @@ config = getConfig(configFile)
|
||||
|
||||
-- create values for directories
|
||||
categ = config['CATEGORIES'] or default_dir_category
|
||||
component = config['COMPOSANTS'] or default_dir_component
|
||||
destination = config['CIBLE'] or default_dir_destination
|
||||
img_destination = config['CIBLE_IMAGE'] or default_dir_img_destination
|
||||
component = config['COMPONENTS'] or default_dir_component
|
||||
destination = config['DESTINATION'] or default_dir_destination
|
||||
img_destination = config['IMAGE_DESTINATION'] or default_dir_img_destination
|
||||
img_source = config['IMAGES'] or default_dir_img_source
|
||||
css_source = config['CSS'] or default_dir_css_source
|
||||
-- create values for files
|
||||
@ -185,7 +215,7 @@ index_filename = config['INDEX'] or default_index_filename
|
||||
main_template = config['TEMPLATE_INDEX'] or default_template_index_filename
|
||||
template_categ_filename = config['TEMPLATE_CATEG'] or default_template_categ_filename
|
||||
template_element_filename = config['TEMPLATE_ELEMENT'] or default_template_element_filename
|
||||
default_img = config['DEFAUT_IMG'] or default_img_filename
|
||||
default_img = config['DEFAULT_IMG'] or default_img_filename
|
||||
css_filename = config['STYLE'] or default_css_filename
|
||||
css_menu = default_css_menu_without
|
||||
local menu = config['MENU'] or ''
|
||||
@ -235,23 +265,33 @@ else
|
||||
end
|
||||
|
||||
-- Create index file in destination directory
|
||||
result = assert(io.open(destination .. '/' .. main_template, 'wb'))
|
||||
index_result = assert(io.open(destination .. '/' .. main_template, 'wb'))
|
||||
-- create substitution table
|
||||
substitutions = {
|
||||
TITLE=config['TITRE'] .. ' - Accueil',
|
||||
PORTEAIL_TITLE=config['TITRE'],
|
||||
TITLE=config['HOMEPAGE'] or (config['TITLE'] and config['TITLE'] .. default_homepage_title) or (default_title .. default_homepage_title),
|
||||
PORTEAIL_TITLE=config['TITLE'] or default_title,
|
||||
CONTENT=content,
|
||||
INTRODUCTION=introduction_content,
|
||||
MENU=menu_content,
|
||||
CSS_COLOR=css_filename,
|
||||
CSS_NAME=css_name,
|
||||
DEFAULT_CSS=css_menu,
|
||||
VERSION=version,
|
||||
}
|
||||
|
||||
-- Get language configuration
|
||||
language = config['LANG'] or default_language
|
||||
languagerc = getConfig(default_dir_lang .. '/' .. language)
|
||||
-- Add language translation to replacements table
|
||||
for k, v in pairs(languagerc) do
|
||||
substitutions[k] = v
|
||||
end
|
||||
|
||||
-- replace variables in result
|
||||
homepage = replace(index, substitutions)
|
||||
assert(result:write(homepage))
|
||||
assert(index_result:write(homepage))
|
||||
-- close file
|
||||
assert(result:close())
|
||||
assert(index_result:close())
|
||||
|
||||
-- Copy miscellaneous files to destination
|
||||
to_be_copied = {
|
@ -1,252 +0,0 @@
|
||||
#!/usr/bin/env sh
|
||||
#
|
||||
# creation_categ.sh
|
||||
#
|
||||
# Permet de naviguer dans les éléments de chaque catégorie d'un dossier suivant
|
||||
#+ la syntaxe :
|
||||
#+
|
||||
#+ # Commentaire dans le fichier
|
||||
#+ [[Titre de la catégorie]]Description de la catégorie
|
||||
#+ titre de l'élément##http://domaine.tld/##description de l'élément##nom_image
|
||||
|
||||
###########
|
||||
# LICENCE #
|
||||
###########
|
||||
|
||||
# Copyright (C) 2011 DOSSMANN Olivier <olivier@dossmann.net> ##
|
||||
|
||||
# This file is part of PorteAil.
|
||||
#
|
||||
# PorteAil is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# PorteAil is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with PorteAil. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
######################################################################
|
||||
|
||||
## VARIABLES
|
||||
DEBUG=0
|
||||
IFS="
|
||||
"
|
||||
PROGRAMME=`basename $0`
|
||||
|
||||
## FONCTIONS
|
||||
debug( )
|
||||
{
|
||||
if [ "$DEBUG" -eq 1 ]
|
||||
then
|
||||
printf "$1\n" 1>&2
|
||||
fi
|
||||
}
|
||||
|
||||
utilisation( )
|
||||
{
|
||||
echo "Utilisation : $PROGRAMME dossier_cat destination.html extension composants entete_cat.html enqueue_cat.html element.html dossier_img destination_img image.png dossier_porteail"
|
||||
echo ""
|
||||
echo "Cf. Fichier README.md pour plus d'informations."
|
||||
}
|
||||
|
||||
## TESTS
|
||||
# Test sur les paramètres
|
||||
if [ $# -ne 11 ]
|
||||
then
|
||||
utilisation
|
||||
exit 1
|
||||
else
|
||||
# $PROGRAMME dossier_cat destination.html extension composants entete_cat.html enqueue_cat.html element.html
|
||||
dossier=$1
|
||||
destination=$2 #"categories.html"
|
||||
extension=$3 # Extension des fichiers à prendre en compte
|
||||
dossier_composants=$4
|
||||
categ_deb="$5"
|
||||
categ_fin="$6"
|
||||
elem="$7"
|
||||
dossier_image=$8
|
||||
dest_image=$9
|
||||
image_defaut=${10}
|
||||
destination_finale=${11}
|
||||
fi
|
||||
# Existence dossier
|
||||
if ! test -d "$dossier"
|
||||
then
|
||||
echo "Dossier '$dossier' manquant."
|
||||
exit 1
|
||||
fi
|
||||
# Existence dossier image
|
||||
if ! test -d "$dossier_image"
|
||||
then
|
||||
echo "Dossier '$dossier_image' manquant."
|
||||
exit 1
|
||||
fi
|
||||
# Existence de l'image par défaut
|
||||
if ! test -f "$image_defaut"
|
||||
then
|
||||
echo "Fichier '$image_defaut' manquant."
|
||||
exit 1
|
||||
fi
|
||||
# On supprime le fichier ${destination} s'il existe.
|
||||
if test -f "$destination"
|
||||
then
|
||||
echo "Le fichier '${destination}' existe : Suppression de ce dernier."
|
||||
rm -f "$destination"
|
||||
fi
|
||||
|
||||
# Parcours du dossier
|
||||
for fichier in `find $dossier/ -iname "*.${extension}" -print -type f|sort`
|
||||
do
|
||||
# On met/remet la valeur de CATEG à 0 significative de l'absence
|
||||
#+ d'une Catégorie
|
||||
CATEG=0
|
||||
# On met/remet le tableau des elements à 0
|
||||
elements_titre=""
|
||||
elements_url=""
|
||||
elements_desc=""
|
||||
elements_image_addr=""
|
||||
curseur_element=0
|
||||
# Calcul du nombre de ligne du fichier
|
||||
nbre_lignes=`cat "${fichier}" |wc -l`
|
||||
# debug
|
||||
debug "$fichier: $nbre_lignes"
|
||||
# Vérification du nombre de lignes retourné
|
||||
if [ "$nbre_lignes" -gt 0 ]
|
||||
then
|
||||
# Récupération du nom de la catégorie
|
||||
nbre_categories=`grep -E "^\[\[.*\]\].*$" ${fichier} |wc -l`
|
||||
# Si le nombre de catégorie est égal à 1, on a tout bon
|
||||
if [ "$nbre_categories" -eq 0 ]
|
||||
then
|
||||
echo "Fichier '${fichier}' mal renseigné : Pas de nom de catégorie"
|
||||
continue
|
||||
elif [ "$nbre_categories" -gt 1 ]
|
||||
then
|
||||
echo "Fichier '${fichier}' mal renseigné : Trop de catégorie présentes."
|
||||
continue
|
||||
else
|
||||
echo "Fichier '${fichier}' correct : Catégorie présente."
|
||||
fi
|
||||
# le fichier contient plusieurs lignes, on lit le contenu
|
||||
for ligne in $(cat "${fichier}")
|
||||
do
|
||||
debug "Contenu ligne : $ligne"
|
||||
# Vérifie les différents cas possibles :
|
||||
#+ SI la chaîne débute par '#'
|
||||
#+ exemple : # quelque chose
|
||||
diese_comp=`echo "$ligne" |sed -e 's@^\(#\).*$@\1@g'`
|
||||
debug "Comparaison dièse : $diese_comp"
|
||||
if [ "$diese_comp" = '#' ]
|
||||
then
|
||||
debug "La ligne est un commentaire : Aucune action."
|
||||
continue
|
||||
fi
|
||||
#+ SI la chaîne commence par '[[' et fini par ']]'
|
||||
#+ exemple : [[Titre]]Description de ma catégorie
|
||||
categ_comp=`echo "$ligne" |sed -e 's#^\(\[\[\).*\(\]\]\).*$#\1\2#g'`
|
||||
debug "Comparaison '[[]]' : $categ_comp"
|
||||
if [ "$categ_comp" = "[[]]" ]
|
||||
then
|
||||
debug "La ligne est une catégorie : Enregistrement."
|
||||
categ_titre=`echo "$ligne" |sed -e 's#^\[\[\(.*\)\]\].*$#\1#g'`
|
||||
categ_desc=`echo "$ligne" |sed -e 's#^\[\[.*\]\]\(.*\)$#\1#g'`
|
||||
debug "$categ_titre : $categ_desc"
|
||||
CATEG=1
|
||||
fi
|
||||
#+ SI la chaîne contient 3 fois '##'
|
||||
#+ exemple : Vous êtes perdus ?##http://perdu.com##Se rendre sur le site perdu.com##apps/image.png
|
||||
element_comp=`echo $ligne |sed -e 's@^.*\(##\).*\(##\).*\(##\).*$@\1\2\3@g'`
|
||||
debug "Comparaison element : $element_comp"
|
||||
if [ "$element_comp" = "######" ]
|
||||
then
|
||||
debug "La ligne est un élément : Enregistrement."
|
||||
# Recherche des informations pour l'élément
|
||||
element_titre=`echo $ligne |sed -e 's@^\(.*\)##.*##.*##.*$@\1@g'`
|
||||
element_url=`echo $ligne |sed -e 's@^.*##\(.*\)##.*##.*$@\1@g'`
|
||||
element_desc=`echo $ligne |sed -e 's@^.*##.*##\(.*\)##.*$@\1@g'`
|
||||
element_img_addr=`echo $ligne |sed -e 's@^.*##.*##.*##\(.*\)$@\1@g'`
|
||||
element_img_titre="${element_desc}"
|
||||
element_img_desc=" "
|
||||
debug "Élément : titre=$element_titre, url=$element_url, desc=$element_desc, adresse_image=$element_img_addr, titre_image=$element_img_titre, desc_image=$element_img_desc"
|
||||
# Ajout des éléments dans les tableaux appropriés
|
||||
eval "elements_titre_${curseur_element}=\"${element_titre:-""}\""
|
||||
eval "elements_url_${curseur_element}=\"${element_url:-""}\""
|
||||
eval "elements_desc_${curseur_element}=\"${element_desc:-""}\""
|
||||
eval "elements_image_addr_${curseur_element}=\"${element_img_addr:-""}\""
|
||||
eval "elements_image_titre_${curseur_element}=\"${element_img_titre:-""}\""
|
||||
eval "elements_image_desc_${curseur_element}=\"${element_img_desc:-""}\""
|
||||
# Incrémentation du curseur du tableau contenant les éléments
|
||||
curseur_element=$(( $curseur_element + 1 ))
|
||||
fi
|
||||
done
|
||||
else
|
||||
# le fichier ne contient pas de ligne. message d'erreur
|
||||
echo "Fichier '$fichier' non pris en charge : Le fichier semble vide."
|
||||
fi
|
||||
# On débute la création du fichier contenant la catégorie si CATEG=1
|
||||
if [ "$CATEG" -eq 1 ]
|
||||
then
|
||||
echo "Création d'un bloc Catégorie…"
|
||||
# Tests sur la valeur de la catégorie et de l'état du curseur
|
||||
debug "Catégorie : $categ_titre : $categ_desc"
|
||||
debug "État curseur : $curseur_element"
|
||||
# Tests sur la valeur
|
||||
debug "Fichier de début de catégorie : $categ_deb"
|
||||
debug "Destination : $destination"
|
||||
# Création du fichier pour les catégories (DÉBUT)
|
||||
cat $categ_deb |sed -e "s|@@TITRE_CATEG@@|${categ_titre}|g" -e "s|@@DESC_CATEG@@|${categ_desc}|g" >> ${destination}
|
||||
sed -i "s#^\(.*\)@@.*@@\(.*\)#\1\2#g" ${destination}
|
||||
# Préparation du numéro d'index
|
||||
i=0
|
||||
# Parcours des tableaux afin de récupérer toutes les informations
|
||||
#+ d'un élément
|
||||
debimg=`echo $categ_titre|md5sum |cut -d " " -f 1`
|
||||
while [ "$i" -lt "$curseur_element" ]
|
||||
do
|
||||
# Assignation des valeurs à des variables afin de l'afficher
|
||||
e_titre_tmp=$(eval echo \$elements_titre_${i})
|
||||
e_titre=${e_titre_tmp:-""} # titre element
|
||||
e_desc_tmp=$(eval echo \$elements_desc_${i})
|
||||
e_desc=${e_desc_tmp:-""} # description element
|
||||
e_url_tmp=$(eval echo \$elements_url_${i})
|
||||
# modification de l'URL suite au bug sur les & dans SED
|
||||
e_url_tmp=$(echo $e_url_tmp |sed -e 's|\&|\\&|g' |sed -e 's|\=|\\=|g')
|
||||
e_url=${e_url_tmp:-""} # url element
|
||||
e_img_addr_tmp=$(eval echo \$elements_image_addr_${i})
|
||||
# Test de l'existence de l'image
|
||||
if ! test -f "${dossier_image}/${e_img_addr_tmp}"
|
||||
then
|
||||
# si elle n'existe pas, on prend l'image générique
|
||||
nom_img=`basename ${image_defaut}`
|
||||
source_img="$image_defaut"
|
||||
else
|
||||
nom_img=`basename ${e_img_addr_tmp}`
|
||||
source_img="${dossier_image}/${e_img_addr_tmp}"
|
||||
fi
|
||||
# On ne copie que si la destination n'existe pas déjà
|
||||
if ! test -f "${destination_finale}/${dest_image}/${nom_img}"
|
||||
then
|
||||
cp "${source_img}" "${destination_finale}/${dest_image}/${nom_img}"
|
||||
fi
|
||||
e_img_addr="${dest_image}/${nom_img}" # adresse image
|
||||
e_img_titre_tmp=$(eval echo \$elements_image_titre_${i})
|
||||
e_img_titre=${e_img_titre_tmp:-""} # titre image
|
||||
e_img_desc_tmp=$(eval echo \$elements_image_desc_${i})
|
||||
e_img_desc=${e_img_desc_tmp:-""} # description image
|
||||
# Affichage du résultat
|
||||
debug "$i : ${e_titre} || ${e_desc} || ${e_url} || ${e_img_addr} || ${e_img_titre} || ${e_img_desc}"
|
||||
# Ajout des informations dans le fichier de destination
|
||||
printf "\t…ajout de l'élément '${e_titre}'\n"
|
||||
cat $elem |sed -e "s|@@TITRE_ELEMENT@@|$e_titre|g" -e "s|@@DESC_ELEMENT@@|${e_desc}|g" -e "s|@@URL_ELEMENT@@|${e_url}|g" -e "s|@@URL_IMAGE@@|${e_img_addr}|g" -e "s|@@TITRE_IMAGE@@|${e_img_titre}|g" -e "s|@@DESC_IMAGE@@|${e_img_desc}|g" -e "s|^\(.*\)@@.*@@\(.*\)$|\1\2|g" >> ${destination}
|
||||
# Incrémentation de l'index
|
||||
i=`expr $i + 1` #let i++
|
||||
done
|
||||
# Ajout de la fin du fichier pour les catégories (FIN)
|
||||
cat $categ_fin >> ${destination}
|
||||
fi
|
||||
done
|
@ -4,8 +4,8 @@
|
||||
|
||||
# Copy porteail directory to user's public_html
|
||||
|
||||
SRCDIR=./porteail
|
||||
DESTDIR=${HOME}/public_html
|
||||
SRCDIR=${SRCDIR:-'./porteail'}
|
||||
DESTDIR=${DESTDIR:-"${HOME}/public_html"}
|
||||
STATICDIR=./static
|
||||
|
||||
staticdir_content=0
|
||||
@ -37,6 +37,7 @@ fi
|
||||
if ! test -d ${DESTDIR}
|
||||
then
|
||||
echo "${DESTDIR} directory not found!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "This will delete ${DESTDIR} content and copy ${SRCDIR} into. Are you sure [y/n]?"
|
||||
|
2
lang/en
Normal file
2
lang/en
Normal file
@ -0,0 +1,2 @@
|
||||
POWERED_BY = Proudly powered by
|
||||
POWERED_BY_DESC = Go to PorteAil project official webpage
|
2
lang/fr
Normal file
2
lang/fr
Normal file
@ -0,0 +1,2 @@
|
||||
POWERED_BY = Fièrement propulsé par
|
||||
POWERED_BY_DESC = Aller sur la page officielle du projet PorteAil
|
70
paconfigrc
70
paconfigrc
@ -1,64 +1,44 @@
|
||||
###########################
|
||||
## Configuration basique ##
|
||||
## Main configuration ##
|
||||
###########################
|
||||
|
||||
# Titre de votre PorteAil
|
||||
TITRE = Titre par défaut
|
||||
# Feuille de style choisie
|
||||
STYLE = noir.css
|
||||
# Code HTML du menu (par défaut dans le dossier COMPOSANTS)
|
||||
# Homepage title
|
||||
TITLE = My portal
|
||||
# CSS color file
|
||||
STYLE = black.css
|
||||
# Menu (if needed)
|
||||
#MENU = menu.html
|
||||
# Code HTML de l'introduction (par défaut dans le dossier COMPOSANTS)
|
||||
# Introduction (if needed)
|
||||
#INTRO = introduction.html
|
||||
CIBLE = porteail
|
||||
# Destination directory
|
||||
DESTINATION = porteail
|
||||
|
||||
###########################
|
||||
## Configuration avancée ##
|
||||
## Additional config ##
|
||||
###########################
|
||||
|
||||
##--[[ divers ]]--##
|
||||
##--[[ miscellaneous ]]--##
|
||||
|
||||
ACCUEIL = Accueil - $(TITRE)
|
||||
GEN_CATEGORIES = creation_categ.sh
|
||||
INDEX = index.html
|
||||
# Extension des fichiers à prendre en compte dans le dossier contenant les
|
||||
#+ catégories
|
||||
LANG = en
|
||||
HOMEPAGE = Homepage
|
||||
# File extension to be used to read categories
|
||||
CATEGORIES_EXT = txt
|
||||
# Image de base si aucune mentionnée (par défaut dans le dossier IMAGES)
|
||||
DEFAUT_IMG = generique.png
|
||||
# Contenu HTML d'un élément
|
||||
ELEMENT = element.html
|
||||
# résultat de la génération des catégories
|
||||
CONTENU = categories.html
|
||||
# Contenu HTML à utiliser en début de catégorie
|
||||
ENTETE_CAT = categ_deb.html
|
||||
# Contenu HTML à utiliser en fin de catégorie
|
||||
ENQUEUE_CAT = categ_fin.html
|
||||
# Contenu HTML à utiliser après le contenu principal de la page
|
||||
POST_CONTENU = contenu_fin.html
|
||||
# Contenu HTML à utiliser en début de page finale
|
||||
ENTETE = entete.html
|
||||
# Contenu HTML à utiliser en fin de page finale
|
||||
ENQUEUE = enqueue.html
|
||||
# Default image
|
||||
DEFAULT_IMG = generique.png
|
||||
# Templates
|
||||
TEMPLATE_ELEMENT = element.html
|
||||
TEMPLATE_INDEX = index.html
|
||||
TEMPLATE_CATEG = categories.html
|
||||
|
||||
##--[[ dossiers ]]--##
|
||||
##--[[ directories ]]--##
|
||||
|
||||
## SOURCES
|
||||
# Dossier contenant les éléments composants votre page
|
||||
COMPOSANTS = composants
|
||||
# dossier contenant le détail des catégories
|
||||
COMPONENTS = composants
|
||||
CATEGORIES = categ
|
||||
# dossier contenant les images
|
||||
IMAGES = img
|
||||
# dossier contenant les feuilles de style
|
||||
IMAGES_DESTINATION = image
|
||||
CSS = style
|
||||
|
||||
## DESTINATION (cible)
|
||||
# dossier de destination des images
|
||||
IMAGES_CIBLE = image
|
||||
INSTALLDIR = ${HOME}/public_html
|
||||
|
||||
##--[[ style ]]--##
|
||||
|
||||
CSS_SANS_MENU = sans_menu.css
|
||||
CSS_AVEC_MENU = avec_menu.css
|
||||
CSS_NOM = defaut.css
|
||||
CSS_NAME = defaut.css
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
Theme: PorteAil - apparence noire
|
||||
Theme: PorteAil - Black appearance
|
||||
Version: 0.1
|
||||
Author: Olivier DOSSMANN
|
||||
Author URI: http://olivier.dossmann.net
|
||||
@ -33,14 +33,14 @@ h3 {
|
||||
color: #000000;
|
||||
}
|
||||
|
||||
/* ENTÊTE DE PAGE */
|
||||
/* HEADER */
|
||||
header {
|
||||
background-color: #000000;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
/* CONTENU */
|
||||
/* survol d'un élément */
|
||||
/* CONTENT */
|
||||
/* element overview */
|
||||
#corps a.cadre:hover {
|
||||
background-color: #000000;
|
||||
color: #ffffff;
|
||||
@ -70,7 +70,7 @@ background-color: #aaaabb;
|
||||
color: #223355;
|
||||
}
|
||||
|
||||
/* ENQUEUE DE PAGE */
|
||||
/* FOOTER */
|
||||
footer {
|
||||
color: #000000;
|
||||
}
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
Theme: PorteAil - apparence bleue
|
||||
Theme: PorteAil - Blue appearance
|
||||
Version: 0.1
|
||||
Author: Olivier DOSSMANN
|
||||
Author URI: http://olivier.dossmann.net
|
||||
@ -33,13 +33,13 @@ h3 {
|
||||
color: #555577;
|
||||
}
|
||||
|
||||
/* ENTÊTE DE PAGE */
|
||||
/* HEADER */
|
||||
header {
|
||||
background-color: #223355;
|
||||
color: #ffffff;
|
||||
}
|
||||
/* CONTENU */
|
||||
/* survol d'un élément */
|
||||
/* CONTENT */
|
||||
/* element overview */
|
||||
#corps a.cadre:hover {
|
||||
background-color: #223355;
|
||||
color: #ffffff;
|
||||
@ -69,7 +69,7 @@ background-color: #aaaabb;
|
||||
color: #223355;
|
||||
}
|
||||
|
||||
/* ENQUEUE DE PAGE */
|
||||
/* FOOTER */
|
||||
footer {
|
||||
color: #000000;
|
||||
}
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
Theme: PorteAil - avec menu
|
||||
Theme: PorteAil - with menu
|
||||
Version: 0.1
|
||||
Author: Olivier DOSSMANN
|
||||
Author URI: http://olivier.dossmann.net
|
||||
@ -51,7 +51,7 @@ border-radius: 12px;
|
||||
-webkit-border-radius: 12px;
|
||||
}
|
||||
|
||||
/* ENTÊTE DE PAGE */
|
||||
/* HEADER */
|
||||
header {
|
||||
position: relative;
|
||||
margin: 0;
|
||||
@ -78,14 +78,14 @@ height: 50px;
|
||||
line-height: 50px;
|
||||
}
|
||||
|
||||
/* CONTENU */
|
||||
/* CONTENT */
|
||||
#corps {
|
||||
position: relative;
|
||||
width: 78%;
|
||||
left: 2%;
|
||||
}
|
||||
|
||||
/* CATÉGORIES */
|
||||
/* CATEGORIES */
|
||||
#corps ul.ensemble_element {
|
||||
min-height: 10em;
|
||||
list-style-type: none;
|
||||
@ -97,7 +97,7 @@ text-align: center;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
/* ÉLÉMENT */
|
||||
/* ELEMENT */
|
||||
#corps a.cadre {
|
||||
height: 9em;
|
||||
width: 11em;
|
||||
@ -131,7 +131,7 @@ margin-left: auto;
|
||||
border: 0;
|
||||
}
|
||||
|
||||
/* espace en fin de catégorie */
|
||||
/* WHITESPACE after category's end */
|
||||
#corps .espace {
|
||||
clear: both;
|
||||
}
|
||||
@ -172,7 +172,7 @@ nav#cartable a:visited {
|
||||
nav#cartable a:hover {
|
||||
}
|
||||
|
||||
/* ENQUEUE DE PAGE */
|
||||
/* FOOTER */
|
||||
footer {
|
||||
position: relative;
|
||||
top: 5px;
|
||||
@ -188,4 +188,4 @@ font-size: 10px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
/* DIVERS */
|
||||
/* MISCELLANEOUS */
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
Theme: PorteAil - sans menu
|
||||
Theme: PorteAil - without menu
|
||||
Version: 0.1
|
||||
Author: Olivier DOSSMANN
|
||||
Author URI: http://olivier.dossmann.net
|
||||
@ -51,7 +51,7 @@ border-radius: 12px;
|
||||
-webkit-border-radius: 12px;
|
||||
}
|
||||
|
||||
/* ENTÊTE DE PAGE */
|
||||
/* HEADER */
|
||||
header {
|
||||
position: relative;
|
||||
margin: 0 auto;
|
||||
@ -78,14 +78,14 @@ height: 50px;
|
||||
line-height: 50px;
|
||||
}
|
||||
|
||||
/* CONTENU */
|
||||
/* CONTENT */
|
||||
#corps {
|
||||
position: relative;
|
||||
width: 98%;
|
||||
left: 2%;
|
||||
}
|
||||
|
||||
/* CATÉGORIES*/
|
||||
/* CATEGORIES*/
|
||||
#corps ul.ensemble_element {
|
||||
min-height: 10em;
|
||||
list-style-type: none;
|
||||
@ -97,7 +97,7 @@ text-align: center;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
/* ÉLÉMENT */
|
||||
/* ELEMENT */
|
||||
#corps a.cadre {
|
||||
height: 9em;
|
||||
width: 11em;
|
||||
@ -131,7 +131,7 @@ margin-left: auto;
|
||||
border: 0;
|
||||
}
|
||||
|
||||
/* espace en fin de catégorie */
|
||||
/* WHITESPACE at category's end */
|
||||
#corps .espace {
|
||||
clear: both;
|
||||
}
|
||||
@ -172,7 +172,7 @@ nav#cartable a:visited {
|
||||
nav#cartable a:hover {
|
||||
}
|
||||
|
||||
/* ENQUEUE DE PAGE */
|
||||
/* FOOTER */
|
||||
footer {
|
||||
position: relative;
|
||||
top: 5px;
|
||||
@ -188,4 +188,4 @@ font-size: 10px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
/* DIVERS */
|
||||
/* MISCELLANEOUS */
|
Loading…
Reference in New Issue
Block a user