Le blog de llaumgui

Linux en général, Fedora / CentOS en particulier...

Aller au contenu | Aller au menu | Aller à la recherche

ProgrammationDéveloppement web › Dotclear

Dotclear, le gestionnaire de blogs.

Fil des billets - Fil des commentaires

dimanche 4 juillet 2010

dcSocialize, AddThis, Facebook & Twitter pour votre Dotclear (Sur DotAddict)

J'ai profité de ma migration sous Dotclear 2.2 pour fusionner mes précédentes extensions sociales (à savoir : dcWidgetAddThis, dcWidgetFacebook et dcWidgetTwitter) au sein d'un seul et unique plugin : dcSocialize. Au programme des réjouissances de cette pré-version (dcSocialize 0.9) :

Tous ces widgets sont bien évidement visibles sur mon blog.

Le plugin et disponible sur le site du projet mais également sur DotAddict, vous pouvez donc installer dcSocialize directement depuis l'interface d'administration de votre blog.

samedi 3 juillet 2010

llaumgui.com sous Dotclear 2.2

Je viens tout juste de finir la migration de ce blog sous Dotclear 2.2. Les nouveautés visibles sont peu nombreuses (auto-complétion de tags dans l'admin), les modifications les plus importantes concernent en effet plus les éléments sous le capot de la bête, le support (enfin !) de php 5.3 par exemple. A noter que vous pouvez lire l'annonce officielle ici. Vous pouvez aussi lire cette suite de billets retraçant les avancées de la 2.2.

Comme une bonne nouvelle n'arrive jamais seule, DotAddict renait de ces cendres et propose plein de nouveaux plugins et thèmes.

samedi 27 septembre 2008

dotclearRemember 2.0

C'est un peu plus de 3 mois après la sortie de la version 1.2 du framework javascript MooTools; que j'ai enfin pris le temps de migrer le thème de mon blog sous cette version.

J'en ai donc profité pour mettre à jour dotclearRemember. Pour ceux qui avaient loupé la version 1.0 de dotclearRemember, rappelons juste qu'Olivier Meunier, lead developper du projet Dotclear, a fait le choix de confier quelques actions du thème de base de Dotclear à la librairie jQuery. Affictionnados de MooTools, j'ai donc entrepris le portage de ces fonctionnalités vers cet outil et c'est ainsi que la fonctionnalité "Se souvenir de moi" (post.js) de Dotclear est devenu dotcleaRemember sous MooTools.

Au programme des réjouissances de cette version 2.0 :

  • Passage de MooTools 1.1.x vers MooTools 1.2
  • Utilisation de la class Class et nouvelle façon de passer les paramètres ainsi que d'initialiser le script
  • Fonction de débug

dotclearRemember 2.0 pour MooTools 1.2.
dotclearRemember 1.0 pour MooTools 1.1.x.

A propos du thème de ce blog, Nodoka, on remarquera que j'en ai profité pour laisser tomber mon script verif_form (qui ne sera pas porté vers la 1.2) pour passer sous Form.Check qui est tout bonnement génial. J'ai également profité de l'occasion pour céder à la mode des lightbox et pour installer Milkbox...

mardi 22 avril 2008

Pimp my Dotclear Acte II

Dotclear 2.0 RC1 arrivant à grands pas, on continue avec les exemples de mise en œuvre de ce gestionnaire de blog simple et efficace.
Après la sécurité et l'optimisation de Dotclear, aujourd'hui : les rétroliens (ou trackbacks) et les plugins pour Dotclear qui vont bien. Vous pouvez, à ce propos, consulter la liste des plugins déployés sur ce blog.

Lire la suite...

lundi 21 avril 2008

Pimp my Dotclear ;-)

Dotclear est un logiciel simple et léger permettant de créer son blog (comme ici) ou de mettre en place une plateforme de blog pouvant héberger plusieurs blogs comme c'est le cas sur la plateforme de blog de fedora-fr.

Lire la suite...

mercredi 16 avril 2008

Utiliser mootools dans Dotclear 2.0

Dotclear, le gestionnaire de blog, dans sa version 2.0 (dont la RC1 devrait pointer le bout de son nez le 1er mai) utilise jQuery comme librairie javascript. Notons au passage que l'utilisation d'une telle librairie permet de gagner un temps de développement précieux et d'éviter d'éventuels problèmes de compatibilité entre les différents navigateurs.

Actuellement, l'utilisation du javascript dans le thème par défaut (Blowup) se limite à la gestion du cookie de la case "Se souvenir de moi sur ce blog".

J'aime beaucoup jQuery (je m'en suis servi dans mon précédent thème et sur d'autres projets) mais professionnellement j'utilise beaucoup mootools et j'ai acquis des facilités avec ce framework.
Pour mon dernier thème, Nodoka, c'est donc mootools que j'ai retenu et j'ai donc eu à entreprendre de porter le code de la gestion des cookies de jQuery vers mootools.
Histoire de vous faciliter la vie si vous aussi vous souhaitez utiliser mootools dans vos thèmes Dotclear, je vous mets mon bout de code à disposition ainsi que la documentation.

[bash]svn co https://svn.llaumgui.com/javascript/mootools_1.1.x/dc_remember/

On remarquera qu'il y a 2 fichiers : un fichier source avec le code lisible et commenté; et une version compressée avec YUI Compressor. D'ailleur, La compression des javascripts donnera bientôt lieu à un nouveau billet.

vendredi 31 août 2007

Mise à jour automatique de Dotclear 2.0 et de ses plugins, à partir du SVN (update)

Je mets très souvent mon blog à jour à partir de la dernière version SVN de Dotclear 2.0. Jusqu'à présent, je faisais un svn co sur ma machine locale, puis je virais les répertoires inutiles (rm -rf `find ./ -name .svn`) et enfin j'envoyais le tout sur mon ftp. On obtient alors une version de Dotclear à jour et sans fichiers .svn. Le revers de la médaille étant le temps passé à faire la manip'. Je me suis donc fais un petit script pour automatiser tout ça :

  1. Mise à jours des sources de Dotclear à partir du SVN.
  2. Mise à jour et téléchargement de nouveaux plugins à partir du SVN de Dotclear.
  3. Mise à jour de la base de données (visite de la page d'admin).
  4. Vidage le cache.

Comme je suis un Geek très flémard et qui n'a peur de rien : j'ai mis le tout en tâche cron.

[bash]
#!/bin/bash
###############################################################################
#
# dc-svn-co :
# Mise à jour d'une installation Dotclear 2.0 à partir des sources du SVN.
#
# Dépendances requises :
#	- subversion
#	- curl
#
# Attention : L'utilisation de ce script permet de mettre à jour votre instance
# de Dotclear à partir d'une version dite instable !
# Utiliser à vos risques et périls !
#
# Licence Dotclear : http://www.dotclear.net/license.html
#
# by Guillaume Kulakowski a.k.a LLaumgui <guillaume at llaumgui dot com>
# Version 2.0
#
###############################################################################
# This program 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 2
# of the License, or (at your option) any later version.
#
# This program 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 this program; if not, 
#  - write to the Free Software
#       Foundation, Inc., 51 Franklin Street, Fifth Floor,
#       Boston, MA  02110-1301, USA.
#   - See http://www.gnu.org/licenses/gpl.html
###############################################################################


######################################
# Variables :

# Chemin vers l'installation de Dotclear :
DC_CORE_PATH="/home/www.xxx.com/www"

# Chemin vers les plugins de Dotclear :
DC_PLUGIN_PATH="$DC_CORE_PATH/plugins"

# Chemin vers le cache :
DC_CACHE_PATH="$DC_CORE_PATH/cache"

# Liste des plugins à récupérer à partir du svn :
DC_PLUGIN_LIST="antiflood commentsWikibar dayMode emailNotification gallery related sitemaps spamplemousse2"

# Chemin vers votre administration (pour la requête de mise à jour) :
DC_URL="http://www.xxx.com/admin/"


SVN_DC_URL="https://svn.dotclear.net/2.0/trunk"
SVN_DC_PLUGIN_URL="https://svn.dotclear.net/2.0/plugins"





######################################
# # #                            # # # 
# # #   /!\ On touche plus /!\   # # #
# # #                            # # #
######################################

###
# Mise à jour à partir du SVN :
function svnCo() {

    cd "$1"
    svn co "$2" ./
}



###
# Mise à jour de la liste des plugins à partir du svn :
function svnPlugin () {

	for plugin in $DC_PLUGIN_LIST; do
		echo -e "\n\n###############  $plugin   ###############"
		
		# Création du répertoire pour les nouveaux plugins :
		if [ ! -d $DC_PLUGIN_PATH/$plugin ]; then
			echo "Le répertoire $plugin n'existe pas !"
			echo "Création du répertoire $plugin."
			mkdir "$DC_PLUGIN_PATH/$plugin"
		fi;
		
		svnCo "$DC_PLUGIN_PATH/$plugin" "$SVN_DC_PLUGIN_URL/$plugin"
	done;
}



###
# Mise à jour de la base par appel de l'url de l'admin :
function updateDB() {

	curl $DC_URL
}



###
# On vide le cache
function cleanCache() {
	
	rm -rf "$DC_CACHE_PATH/cbfeed"
	rm -rf "$DC_CACHE_PATH/cbtpl"
}





echo "################################################################################"
echo "#                                                                              #"
echo "#               Mise à jour de Dotclear à partir des sources SVN               #"
echo "#                                                                              #"
echo "################################################################################"
svnCo "$DC_CORE_PATH" "$SVN_DC_URL"

echo -e "\n\n\n\n\n\n################################################################################"
echo "#                                                                              #"
echo "#                      Mise à jour de la liste des plugins                     #"
echo "#                                                                              #"
echo "################################################################################"
svnPlugin

echo -e "\n\n\n\n\n\n################################################################################"
echo "#                                                                              #"
echo "#                           Opérations de mise à jours                         #"
echo "#                                                                              #"
echo "################################################################################"
echo ""
echo -e "\n### Mise à jour de la base de données ###"
updateDB

echo -e "\n\n###          Vidage du cache          ###"
cleanCache

Je mets à disposition mon script (sous licence GPL) tout en précisant que son utilisation réfléchie ne pose pas de problème (pas plus qu'un checkout) mais qu'une mise à jour automatisée au moment où la révision Subversion plante (ça peut arriver), fait buger le site jusqu'à la mise à jour suivante...

Mise à jour : Métro-sexualisation du code pour un rapport par mail (crontab) plus lisible.