commit 2ac91f50c862f5ebccba409789c4a1c2f8dac461 Author: Peter Saint-Andre Date: Mon Oct 2 22:22:13 2006 +0000 Initial revision git-svn-id: file:///home/ksmith/gitmigration/svn/xmpp/trunk@2 4b5297f7-1745-476d-ba37-a9c6900126ab diff --git a/all.sh b/all.sh new file mode 100755 index 00000000..192295e1 --- /dev/null +++ b/all.sh @@ -0,0 +1,31 @@ +#!/bin/sh +# for each XEP, generates HTML file and IETF reference, then copies XML file +# also generates HTML for the README and template +# finally, copies the stylesheet, DTD, and schema +# usage: ./all.sh + +xeppath=/var/www/stage.xmpp.org/extensions + +ls xep-0*.xml > tmp.txt +sed s/xep-\(.*\).xml/\1/ tmp.txt > nums.txt +rm tmp.txt + +while read f +do + xsltproc xep.xsl xep-$f.xml > $xeppath/xep-$f.html + xsltproc ref.xsl xep-$f.xml > $xeppath/refs/reference.JSF.XEP-$f.xml + cp xep-$f.xml $xeppath/ +done < nums.txt + +rm nums.txt + +xsltproc xep.xsl xep-README.xml > $xeppath/README.html +xsltproc xep.xsl xep-template.xml > $xeppath/template.html + +cp xep.dtd $xeppath/ +cp xep.ent $xeppath/ +cp xep.xsd $xeppath/ +cp xep.xsl $xeppath/ + +# END + diff --git a/announce.py b/announce.py new file mode 100755 index 00000000..113aa6ad --- /dev/null +++ b/announce.py @@ -0,0 +1,187 @@ +#!/usr/bin/env python + +# File: announce.py +# Version: 0.8 +# Description: a script for announcing XEPs +# Last Modified: 2006-10-03 +# Author: Peter Saint-Andre (stpeter@jabber.org) +# License: public domain +# HowTo: ./announce.py xepnum dbuser dbpw 'cvsmodsurl' +# NOTE: the cvsmodsurl MUST be in quotes! + +# IMPORTS: +# +import glob +import MySQLdb +import os +from select import select +import smtplib +import socket +from string import split,strip,join,find +import sys +import time +from xml.dom.minidom import parse,parseString,Document + +def getText(nodelist): + thisText = "" + for node in nodelist: + if node.nodeType == node.TEXT_NODE: + thisText = thisText + node.data + return thisText + +# get the seconds in the Unix era +now = int(time.time()) + +# READ IN ARGS: +# +# 1. XEP number +# 2. database user +# 3. database password + +xepnum = sys.argv[1]; +dbuser = sys.argv[2]; +dbpw = sys.argv[3]; +mods = sys.argv[4]; + +xepfile = 'xep-' + xepnum + '.xml' + +# PARSE XEP HEADERS: +# +# - title +# - abstract +# - version +# - date +# - initials +# - remark + +thexep = parse(xepfile) +xepNode = (thexep.getElementsByTagName("xep")[0]) +headerNode = (xepNode.getElementsByTagName("header")[0]) +titleNode = (headerNode.getElementsByTagName("title")[0]) +title = getText(titleNode.childNodes) +abstractNode = (headerNode.getElementsByTagName("abstract")[0]) +abstract = getText(abstractNode.childNodes) +statusNode = (headerNode.getElementsByTagName("status")[0]) +xepstatus = getText(statusNode.childNodes) +typeNode = (headerNode.getElementsByTagName("type")[0]) +xeptype = getText(typeNode.childNodes) +revNode = (headerNode.getElementsByTagName("revision")[0]) +versionNode = (revNode.getElementsByTagName("version")[0]) +version = getText(versionNode.childNodes) +dateNode = (revNode.getElementsByTagName("date")[0]) +date = getText(dateNode.childNodes) +initialsNode = (revNode.getElementsByTagName("initials")[0]) +initials = getText(initialsNode.childNodes) +remNode = (revNode.getElementsByTagName("remark")[0]) +# could be

or