Mercurial > libervia-backend
view src/sat.sh @ 832:c4b22aedb7d7
plugin groupblog, XEP-0071, XEP-0277, text_syntaxes: manage raw/rich/xhtml data for content/title:
Implementation should follow the following formal specification:
"title" and "content" data can be passed in raw, xhtml or rich format.
When we receive from a frontend a new/updated microblog item:
- keys "title" or "content" have to be escaped (disable HTML tags)
- keys "title_rich" or "content_rich" have to be converted from the current syntax to XHTML
- keys "title_xhtml" or "content_xhtml" have to be cleaned from unwanted XHTML content
Rules to deal with concurrent keys:
- existence of both "*_xhtml" and "*_rich" keys must raise an exception
- existence of both raw and ("*_xhtml" or "*_rich") is OK
As the storage always need raw data, if it is not given by the user it can be
extracted from the "*_rich" or "*_xhtml" data (remove the XHTML tags).
When a frontend wants to edit a blog post that contains XHTML title or content,
the conversion is made from XHTML to the current user-defined syntax.
- plugin text_syntaxes: added "text" syntax (using lxml)
author | souliane <souliane@mailoo.org> |
---|---|
date | Wed, 05 Feb 2014 16:36:51 +0100 |
parents | 952322b1d490 |
children | cbf4122baae7 |
line wrap: on
line source
#!/bin/sh #if there is one argument which is "stop", then we kill SàT DEBUG="" if [ $# -eq 1 ];then if [ $1 = "stop" ];then echo "Terminating Salut à Toi" pkill -f "twistd.*/sat.tac" exit 0 fi if [ $1 = "debug" ];then echo "Launching SàT in debug mode" DEBUG="--debug" fi fi NAME='sat' PYTHON='python' #We use python to parse config files eval `"$PYTHON" << PYTHONEND from ConfigParser import SafeConfigParser from os.path import expanduser, join import sys config = SafeConfigParser(defaults={'local_dir':'~/.sat', 'pid_dir':'/tmp', 'log_dir':'%(local_dir)s'}) try: config.read(map(expanduser, ['/etc/sat.conf', '~/sat.conf', '~/.sat.conf', 'sat.conf', '.sat.conf'])) except: print ("echo \"/!\\ Can't read main config ! Please check the syntax\";") print ("exit 1") sys.exit() env=[] env.append("LOCAL_DIR='%s'" % join(expanduser(config.get('DEFAULT', 'local_dir')),'')) env.append("PID_DIR='%s'" % join(expanduser(config.get('DEFAULT', 'pid_dir')),'')) env.append("LOG_DIR='%s'" % join(expanduser(config.get('DEFAULT', 'pid_dir')),'')) print ";".join(env) PYTHONEND ` PID_FILE="$PID_DIR$NAME.pid" LOG_FILE="$LOCAL_DIR$NAME.log" DAEMON="n" MAIN_OPTIONS="-${DAEMON}oy" TAP_PATH="./" TAP_FILE="$NAME.tac" #Don't change the next line AUTO_OPTIONS="" ADDITIONAL_OPTIONS="--pidfile $PID_FILE --logfile $LOG_FILE $AUTO_OPTIONS $DEBUG" log_dir=`dirname "$LOG_FILE"` if [ ! -d $log_dir ] ; then mkdir $log_dir fi twistd $MAIN_OPTIONS $TAP_PATH$TAP_FILE $ADDITIONAL_OPTIONS