summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJames Meyer <james.meyer@operamail.com>2008-11-09 02:33:06 (GMT)
committerJames Meyer <james.meyer@operamail.com>2008-11-09 02:33:06 (GMT)
commit1ba69cc033dfbd0a6c4c29c6d877c7e753f96e8e (patch)
treef336ee91ce16c6591fff50340562e07e15aa1a55
parent75b1bceb21faab32d8f519d6f7f7062a226f9047 (diff)
downloadlinhes_pkgbuild-1ba69cc033dfbd0a6c4c29c6d877c7e753f96e8e.zip
linhes_pkgbuild-1ba69cc033dfbd0a6c4c29c6d877c7e753f96e8e.tar.gz
linhes_pkgbuild-1ba69cc033dfbd0a6c4c29c6d877c7e753f96e8e.tar.bz2
MythVantage specific pkgs
-rwxr-xr-xabs/mv-core/confuse/PKGBUILD19
-rw-r--r--abs/mv-core/dnsmasq/PKGBUILD41
-rw-r--r--abs/mv-core/dnsmasq/dnsmasq-capability-config.patch14
-rw-r--r--abs/mv-core/dnsmasq/dnsmasq.conf38
-rw-r--r--abs/mv-core/dnsmasq/dnsmasq.install21
-rwxr-xr-xabs/mv-core/dnsmasq/dnsmasq.rc.d36
-rw-r--r--abs/mv-core/dnsmasq/pxelinux.0bin0 -> 13480 bytes
-rw-r--r--abs/mv-core/dnsmasq/pxelinux.default10
-rw-r--r--abs/mv-core/enlightenment/PKGBUILD30
-rw-r--r--abs/mv-core/enlightenment/e_gen_menu.patch11
-rw-r--r--abs/mv-core/enlightenment/enlightenment.desktop8
-rw-r--r--abs/mv-core/enlightenment/starting.patch11
-rw-r--r--abs/mv-core/evrouter/PKGBUILD18
-rw-r--r--abs/mv-core/func/PKGBUILD32
-rw-r--r--abs/mv-core/func/certmaster.conf7
-rwxr-xr-xabs/mv-core/func/failed_func.sh14
-rw-r--r--abs/mv-core/func/func-0.13.tar.gzbin0 -> 59377 bytes
-rwxr-xr-xabs/mv-core/func/func.install49
-rw-r--r--abs/mv-core/func/minion.conf8
-rw-r--r--abs/mv-core/func/pacman.py40
-rw-r--r--abs/mv-core/func/power.py58
-rwxr-xr-xabs/mv-core/ghosd/PKGBUILD33
-rw-r--r--abs/mv-core/ghosd/blue800.pngbin0 -> 2609 bytes
-rwxr-xr-xabs/mv-core/ghosd/gh800.pngbin0 -> 2559 bytes
-rw-r--r--abs/mv-core/ghosd/green-800.pngbin0 -> 2448 bytes
-rw-r--r--abs/mv-core/ghosd/green800.pngbin0 -> 2559 bytes
-rw-r--r--abs/mv-core/ghosd/grey800.pngbin0 -> 870 bytes
-rw-r--r--abs/mv-core/ghosd/image.c97
-rwxr-xr-xabs/mv-core/ghosd/osdClient.pl25
-rw-r--r--abs/mv-core/ghosd/osdServer.config6
-rwxr-xr-xabs/mv-core/ghosd/osdServer.pl189
-rw-r--r--abs/mv-core/ghosd/red800.pngbin0 -> 2546 bytes
-rw-r--r--abs/mv-core/ghosd/yellow800.pngbin0 -> 2559 bytes
-rw-r--r--abs/mv-core/graphviz/PKGBUILD21
-rwxr-xr-xabs/mv-core/graphviz/graphviz.install39
-rwxr-xr-xabs/mv-core/iguanair/PKGBUILD25
-rw-r--r--abs/mv-core/keylaunch/PKGBUILD17
-rw-r--r--abs/mv-core/keylaunch/example_rc19
-rwxr-xr-xabs/mv-core/keylaunch/keylaunch.install40
-rwxr-xr-xabs/mv-core/lcdproc/PKGBUILD25
-rwxr-xr-xabs/mv-core/lcdproc/lcdd38
-rw-r--r--abs/mv-core/lcdproc/lcdproc-CVS-current.tar.gzbin0 -> 838429 bytes
-rw-r--r--abs/mv-core/lcdproc/mythvantage.patch14
-rwxr-xr-xabs/mv-core/lighttpd/PKGBUILD49
-rw-r--r--abs/mv-core/lighttpd/index.html15
-rwxr-xr-xabs/mv-core/lighttpd/lighttpd.conf369
-rw-r--r--abs/mv-core/lighttpd/lighttpd.conf.d10
-rw-r--r--abs/mv-core/lighttpd/lighttpd.install80
-rw-r--r--abs/mv-core/lighttpd/lighttpd.logrotate.d8
-rw-r--r--abs/mv-core/lighttpd/lighttpd.rc.d39
-rw-r--r--abs/mv-core/lighttpd/spawn-php.conf.d33
-rwxr-xr-xabs/mv-core/lighttpd/spawn-php.rc.d67
-rw-r--r--abs/mv-core/lighttpd/ssl_fix.diff10
-rw-r--r--abs/mv-core/lighttpd/tweakconf.vim22
-rwxr-xr-xabs/mv-core/local-website/PKGBUILD22
-rwxr-xr-xabs/mv-core/local-website/cgi/beclear.cgi4
-rwxr-xr-xabs/mv-core/local-website/cgi/bestop.cgi6
-rwxr-xr-xabs/mv-core/local-website/cgi/diskless.py11
-rwxr-xr-xabs/mv-core/local-website/cgi/serverkey.cgi3
-rwxr-xr-xabs/mv-core/local-website/contents/calllog.py66
-rwxr-xr-xabs/mv-core/local-website/contents/calllog.shtml20
-rwxr-xr-xabs/mv-core/local-website/contents/count.py89
-rwxr-xr-xabs/mv-core/local-website/contents/docs.html65
-rwxr-xr-xabs/mv-core/local-website/contents/error-handler.html9
-rwxr-xr-xabs/mv-core/local-website/contents/error/hobbit.html11
-rwxr-xr-xabs/mv-core/local-website/contents/error/mythweb.html16
-rwxr-xr-xabs/mv-core/local-website/contents/error/phpadmin.html28
-rwxr-xr-xabs/mv-core/local-website/contents/error/status-404.html9
-rwxr-xr-xabs/mv-core/local-website/contents/frame.css176
-rwxr-xr-xabs/mv-core/local-website/contents/header.html33
-rwxr-xr-xabs/mv-core/local-website/contents/header.jpgbin0 -> 88341 bytes
-rwxr-xr-xabs/mv-core/local-website/contents/home.shtml23
-rwxr-xr-xabs/mv-core/local-website/contents/images/classic-menugraph.pngbin0 -> 144106 bytes
-rwxr-xr-xabs/mv-core/local-website/contents/images/dvr_menugraph.pngbin0 -> 207288 bytes
-rwxr-xr-xabs/mv-core/local-website/contents/images/menu_diagram_color.pngbin0 -> 193264 bytes
-rwxr-xr-xabs/mv-core/local-website/contents/index.html14
-rwxr-xr-xabs/mv-core/local-website/contents/links.html26
-rwxr-xr-xabs/mv-core/local-website/contents/mv.css82
-rwxr-xr-xabs/mv-core/local-website/contents/mvp_process.py195
-rwxr-xr-xabs/mv-core/local-website/contents/mvp_select.py146
-rwxr-xr-xabs/mv-core/local-website/contents/mvpmc.shtml21
-rw-r--r--abs/mv-core/local-website/contents/page_background.jpgbin0 -> 740 bytes
-rwxr-xr-xabs/mv-core/local-website/contents/process.py337
-rw-r--r--abs/mv-core/mysql/PKGBUILD48
-rw-r--r--abs/mv-core/mysql/my.cnf150
-rw-r--r--abs/mv-core/mysql/my.cnf.mv150
-rw-r--r--abs/mv-core/mysql/mysql-no-clients.patch65
-rwxr-xr-xabs/mv-core/mysql/mysqld87
-rw-r--r--abs/mv-core/mysql/mysqld.conf.d1
-rwxr-xr-xabs/mv-core/mythdb-initial/PKGBUILD21
-rwxr-xr-xabs/mv-core/mythdb-initial/mc.sql2330
-rwxr-xr-xabs/mv-core/mythdb-initial/mythdb.install31
-rwxr-xr-xabs/mv-core/mythdb-initial/permissions.sql11
-rwxr-xr-xabs/mv-core/mythtv-status/PKGBUILD21
-rw-r--r--abs/mv-core/mythtv-status/mythtv-status.cron4
-rw-r--r--abs/mv-core/mythtv-status/mythtv-status.install51
-rw-r--r--abs/mv-core/ncid/PKGBUILD63
-rwxr-xr-xabs/mv-core/ncid/cid.sh11
-rw-r--r--abs/mv-core/ncid/ncid-osd26
-rw-r--r--abs/mv-core/ncid/ncid.conf59
-rwxr-xr-xabs/mv-core/ncid/ncid.install17
-rwxr-xr-xabs/mv-core/ncid/ncid.py59
-rw-r--r--abs/mv-core/ncid/ncid.sql51
-rwxr-xr-xabs/mv-core/ncid/ncidclient.sh2
-rw-r--r--abs/mv-core/ncid/ncidd.conf143
-rwxr-xr-xabs/mv-core/ncid/ncidpermissions.sql8
-rwxr-xr-xabs/mv-core/tilda/PKGBUILD20
-rw-r--r--abs/mv-core/tilda/tilda.patch25
-rwxr-xr-xabs/mv-core/webcal/PKGBUILD35
-rw-r--r--abs/mv-core/webcal/config.php263
-rw-r--r--abs/mv-core/webcal/createdb.sql810
-rw-r--r--abs/mv-core/webcal/posix.tab586
-rw-r--r--abs/mv-core/webcal/send_reminders.patch38
-rw-r--r--abs/mv-core/webcal/sendreminders.sh5
-rw-r--r--abs/mv-core/webcal/settings.php18
-rw-r--r--abs/mv-core/webcal/webcal.install30
116 files changed, 8406 insertions, 0 deletions
diff --git a/abs/mv-core/confuse/PKGBUILD b/abs/mv-core/confuse/PKGBUILD
new file mode 100755
index 0000000..ca0c15d
--- /dev/null
+++ b/abs/mv-core/confuse/PKGBUILD
@@ -0,0 +1,19 @@
+# Contributor: Alexander Mieland (dma147) <dma147@linux-stats.org>
+
+pkgname=confuse
+pkgver=2.5
+pkgrel=1
+pkgdesc="C-library for parsing configuration files."
+makedepends=('gcc' 'make')
+arch=i686
+source=(http://savannah.nongnu.org/download/$pkgname/$pkgname-$pkgver.tar.gz)
+url="http://www.nongnu.org/confuse/"
+md5sums=('4bc9b73d77ebd571ac834619ce0b3582')
+
+build() {
+ cd $startdir/src/$pkgname-$pkgver
+
+ ./configure --prefix=/usr
+ make || return 1
+ make DESTDIR=$startdir/pkg PREFIX=$startdir/pkg install
+}
diff --git a/abs/mv-core/dnsmasq/PKGBUILD b/abs/mv-core/dnsmasq/PKGBUILD
new file mode 100644
index 0000000..339b95a
--- /dev/null
+++ b/abs/mv-core/dnsmasq/PKGBUILD
@@ -0,0 +1,41 @@
+pkgname=dnsmasq
+pkgver=2.42
+pkgrel=15
+pkgdesc="A lightweight DNS/DHCP server ideal for small/home networks using NAT"
+arch=(i686 x86_64)
+source=(http://www.thekelleys.org.uk/$pkgname/$pkgname-$pkgver.tar.gz \
+ dnsmasq.rc.d $pkgname-capability-config.patch dnsmasq.conf pxelinux.0 pxelinux.default )
+license=('GPL2')
+url="http://www.thekelleys.org.uk/dnsmasq/doc.html"
+depends=('glibc' 'bash')
+backup=(etc/dnsmasq.conf)
+install=$pkgname.install
+
+build() {
+ cd $startdir/src/$pkgname-$pkgver || return 1
+ # patch to add a note about capability module in the config file
+ patch -Np0 -i ../$pkgname-capability-config.patch || return 1
+
+ # build
+ cd $startdir/src/$pkgname-$pkgver || return 1
+ make || return 1
+
+ # install
+ mkdir -p $startdir/pkg/etc/rc.d || return 1
+ make PREFIX=/usr DESTDIR=$startdir/pkg install || return 1
+ install -D -m 0755 \
+ $startdir/src/dnsmasq.rc.d $startdir/pkg/etc/rc.d/dnsmasq || return 1
+ install -D -m 0644 \
+ dnsmasq.conf.example $startdir/pkg/etc/dnsmasq.conf.example || return 1
+ install -D -m 0644 $startdir/src/dnsmasq.conf $startdir/pkg/etc/dnsmasq.conf
+
+ mkdir -p $startdir/pkg/data/srv/tftp/pxelinux.cfg
+ install -m 755 $startdir/src/pxelinux.default $startdir/pkg/data/srv/tftp/pxelinux.cfg/default
+ install -m 755 $startdir/src/pxelinux.0 $startdir/pkg/data/srv/tftp/pxelinux.0
+
+
+ # make the required directories for DHCP server default directories
+ mkdir -p $startdir/pkg/var/db || return 1
+ mkdir -p $startdir/pkg/var/lib/misc || return 1
+}
+# vim: ts=2 sw=2 et ft=sh
diff --git a/abs/mv-core/dnsmasq/dnsmasq-capability-config.patch b/abs/mv-core/dnsmasq/dnsmasq-capability-config.patch
new file mode 100644
index 0000000..d8dbb82
--- /dev/null
+++ b/abs/mv-core/dnsmasq/dnsmasq-capability-config.patch
@@ -0,0 +1,14 @@
+diff -urN dnsmasq.conf.example dnsmasq.conf.example.fixed
+--- dnsmasq.conf.example 2006-10-18 16:24:50.000000000 -0400
++++ dnsmasq.conf.example.fixed 2006-11-20 22:07:12.000000000 -0500
+@@ -58,7 +58,9 @@
+ #address=/doubleclick.net/127.0.0.1
+
+ # If you want dnsmasq to change uid and gid to something other
+-# than the default, edit the following lines.
++# than root, you will need to have CONFIG_SECURITY_CAPABILITIES
++# enabled in your kernel. The default uid and gid of nobody will
++# be used if capability is available and this is not set.
+ #user=
+ #group=
+
diff --git a/abs/mv-core/dnsmasq/dnsmasq.conf b/abs/mv-core/dnsmasq/dnsmasq.conf
new file mode 100644
index 0000000..96e338e
--- /dev/null
+++ b/abs/mv-core/dnsmasq/dnsmasq.conf
@@ -0,0 +1,38 @@
+#logging
+log-async=5
+log-facility=DAEMON
+log-queries
+
+# filter what we send upstream
+domain-needed
+bogus-priv
+filterwin2k
+localise-queries
+
+# allow /etc/hosts and dhcp lookups via *.lan
+local=/lan/
+domain=lan
+expand-hosts
+
+# enable dhcp (start,end,netmask,leasetime)
+dhcp-authoritative
+dhcp-range=192.168.1.101,192.168.1.250,255.255.255.0,12h
+dhcp-leasefile=/tmp/dhcp.leases
+
+# use /etc/ethers for static hosts; same format as --dhcp-host
+# <hwaddr> <ipaddr>
+read-ethers
+
+# other useful options:
+# default route(s): dhcp-option=3,192.168.1.1,192.168.1.2
+# dns server(s): dhcp-option=6,192.168.1.1,192.168.1.2
+
+dhcp-option=3,192.168.1.1
+dhcp-option=6,192.168.1.1
+
+enable-tftp
+tftp-root=/data/srv/tftp/
+conf-file=/etc/dnsmasq.mvpmc.conf
+
+dhcp-boot=pxelinux.0
+
diff --git a/abs/mv-core/dnsmasq/dnsmasq.install b/abs/mv-core/dnsmasq/dnsmasq.install
new file mode 100644
index 0000000..25501a4
--- /dev/null
+++ b/abs/mv-core/dnsmasq/dnsmasq.install
@@ -0,0 +1,21 @@
+# arg 1: the new package version
+post_install() {
+ post_upgrade
+}
+
+# arg 1: the new package version
+# arg 2: the old package version
+post_upgrade() {
+ touch /etc/dnsmasq.mvpmc.conf
+ chown nobody:nobody /etc/dnsmasq.mvpmc.conf
+}
+
+# arg 1: the old package version
+pre_remove() {
+ /bin/true
+}
+
+op=$1
+shift
+
+$op $*
diff --git a/abs/mv-core/dnsmasq/dnsmasq.rc.d b/abs/mv-core/dnsmasq/dnsmasq.rc.d
new file mode 100755
index 0000000..1676072
--- /dev/null
+++ b/abs/mv-core/dnsmasq/dnsmasq.rc.d
@@ -0,0 +1,36 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+PID=`pidof -o %PPID /usr/sbin/dnsmasq`
+case "$1" in
+ start)
+ stat_busy "Starting DNS/DHCP daemon"
+ [ -z "$PID" ] && /usr/sbin/dnsmasq
+ if [ $? -gt 0 ] ; then
+ stat_fail
+ else
+ add_daemon dnsmasq # create the 'state' dir
+ stat_done
+ fi
+ ;;
+ stop)
+ stat_busy "Stopping DNS/DHCP daemon"
+ [ "$PID" ] && kill $PID &> /dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ rm_daemon dnsmasq # remove the 'state' dir
+ stat_done
+ fi
+ ;;
+ restart)
+ $0 stop
+ sleep 5
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart}"
+esac
+exit 0
diff --git a/abs/mv-core/dnsmasq/pxelinux.0 b/abs/mv-core/dnsmasq/pxelinux.0
new file mode 100644
index 0000000..cfe4420
--- /dev/null
+++ b/abs/mv-core/dnsmasq/pxelinux.0
Binary files differ
diff --git a/abs/mv-core/dnsmasq/pxelinux.default b/abs/mv-core/dnsmasq/pxelinux.default
new file mode 100644
index 0000000..6294d3c
--- /dev/null
+++ b/abs/mv-core/dnsmasq/pxelinux.default
@@ -0,0 +1,10 @@
+DISPLAY boot.txt
+
+DEFAULT install_image
+
+LABEL install_image
+ kernel masterbuild/boot/vmlinuz26
+ append vga=normal root=/dev/nfs rw netboot netinstall nfsroot=$REPLACEME:/data/srv/tftp/masterbuild,rsize=16384,wsize=16384,rw ip=dhcp initrd=masterbuild/boot/kernel26.img
+
+TIMEOUT 4
+prompt 20
diff --git a/abs/mv-core/enlightenment/PKGBUILD b/abs/mv-core/enlightenment/PKGBUILD
new file mode 100644
index 0000000..abdd1ba
--- /dev/null
+++ b/abs/mv-core/enlightenment/PKGBUILD
@@ -0,0 +1,30 @@
+# Maintainer: Judd Vinet <jvinet@zeroflux.org>
+pkgname=enlightenment
+pkgver=0.16.8.9
+pkgrel=2
+pkgdesc="A fast, flexible, and very extensible Window Manager"
+arch=('i686' 'x86_64')
+url="http://www.enlightenment.org"
+license=('BSD')
+depends=('freetype2' 'libxinerama' 'libxft' 'libsm' 'libxxf86vm' 'imlib2' 'perl' 'libxcomposite' 'libxdamage' 'libxrandr')
+makedepends=('xbitmaps')
+source=(http://downloads.sourceforge.net/sourceforge/$pkgname/e16-$pkgver.tar.gz \
+ http://downloads.sourceforge.net/sourceforge/$pkgname/e16-theme-BrushedMetal-Tigert-0.16.8.tar.gz \
+ e_gen_menu.patch starting.patch)
+
+build() {
+ cd $startdir/src/e16-$pkgver
+ patch -Np0 -i $startdir/src/e_gen_menu.patch || return 1
+ patch -Np0 -i $startdir/src/starting.patch || return 1
+ ./configure --prefix=/usr --enable-fsstd --disable-sound --sysconfdir=/etc --disable-nls
+ make || return 1
+ make DESTDIR=$startdir/pkg install
+ rm -rf $startdir/pkg/opt/share
+ install -D -m644 COPYING $startdir/pkg/usr/share/licenses/$pkgname/COPYING
+ for theme in BrushedMetal-Tigert; do
+ cd $startdir/src/e16-theme-$theme-0.16.8
+ ./configure --prefix=/usr --enable-fsstd
+ make DESTDIR=$startdir/pkg install
+ done
+ chown -R root.root $startdir/pkg/usr/share/*
+}
diff --git a/abs/mv-core/enlightenment/e_gen_menu.patch b/abs/mv-core/enlightenment/e_gen_menu.patch
new file mode 100644
index 0000000..d5ced43
--- /dev/null
+++ b/abs/mv-core/enlightenment/e_gen_menu.patch
@@ -0,0 +1,11 @@
+--- scripts/e_gen_menu~ 2006-03-29 22:09:17.000000000 +0200
++++ scripts/e_gen_menu 2006-08-15 15:11:18.000000000 +0200
+@@ -25,7 +25,7 @@
+ ##############################################################################
+
+ # Likely prefixes
+-$Prefixes = "/usr/local:/usr:/opt:/opt/kde:$ENV{'KDEDIR'}";
++$Prefixes = "/usr/local:/usr:/opt:/opt/kde:/opt/gnome";
+ $Prefixes = "$Prefixes:/opt/kde3:/opt/gnome"; # SUSE
+ $Prefixes = RemoveDuplcates($Prefixes);
+
diff --git a/abs/mv-core/enlightenment/enlightenment.desktop b/abs/mv-core/enlightenment/enlightenment.desktop
new file mode 100644
index 0000000..658ea91
--- /dev/null
+++ b/abs/mv-core/enlightenment/enlightenment.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Encoding=UTF-8
+Name=Enlightenment
+Comment=The enlightenment window manager
+Exec=e16
+# no icon yet, only the top three are currently used
+Icon=
+Type=Application
diff --git a/abs/mv-core/enlightenment/starting.patch b/abs/mv-core/enlightenment/starting.patch
new file mode 100644
index 0000000..9aafe4e
--- /dev/null
+++ b/abs/mv-core/enlightenment/starting.patch
@@ -0,0 +1,11 @@
+--- src/config.c.orig 2007-09-17 19:31:51.000000000 +0000
++++ src/config.c 2007-09-17 19:32:06.000000000 +0000
+@@ -602,7 +602,7 @@
+
+ if ((i > 1) && (!p))
+ {
+- p = ProgressbarCreate(_("Enlightenment Starting..."), 400,
++ p = ProgressbarCreate(_("Starting..."), 400,
+ 16);
+ if (p)
+ ProgressbarShow(p);
diff --git a/abs/mv-core/evrouter/PKGBUILD b/abs/mv-core/evrouter/PKGBUILD
new file mode 100644
index 0000000..e4fb59d
--- /dev/null
+++ b/abs/mv-core/evrouter/PKGBUILD
@@ -0,0 +1,18 @@
+# Contributor: Jonathan Liu <net147@hotmail.com>
+pkgname=evrouter
+pkgver=0.3.3
+pkgrel=2
+pkgdesc="An Input Event Router for Linux"
+arch=(i686)
+url="http://www.bedroomlan.org/~alexios/coding_evrouter.html"
+license=('GPL2')
+depends=('libxt' 'libxtst' 'xorg-server')
+source=(http://www.bedroomlan.org/~alexios/files/SOFTWARE/evrouter/${pkgname}_${pkgver}.tar.gz)
+md5sums=('a20073e04679eb11a5c2da9ab59e75fd')
+
+build() {
+ cd "$startdir/src/$pkgname"
+ ./configure --prefix=/usr --without-xmms
+ make || return 1
+ make DESTDIR="$startdir/pkg" install
+}
diff --git a/abs/mv-core/func/PKGBUILD b/abs/mv-core/func/PKGBUILD
new file mode 100644
index 0000000..a72ebd0
--- /dev/null
+++ b/abs/mv-core/func/PKGBUILD
@@ -0,0 +1,32 @@
+pkgname=func
+pkgver=0.13
+pkgrel=15
+pkgdesc="fedora unifed network controller"
+url=""
+license="gpl"
+depends=(pyopenssl)
+makedepends=()
+conflicts=()
+replaces=()
+backup=()
+moddir="pkg/usr/lib/python2.5/site-packages/func/minion/modules/"
+install=func.install
+#source=(https://hosted.fedoraproject.org/projects/func/attachment/wiki/FuncReleases/$pkgname-$pkgver.tar.gz)
+source=($pkgname-$pkgver.tar.gz certmaster.conf minion.conf power.py pacman.py failed_func.sh)
+md5sums=()
+arch=('i686')
+
+build() {
+ cd $startdir/src/$pkgname-${pkgver}
+ cd $startdir/src/func
+ python setup.py build
+ python setup.py install --prefix=$startdir/pkg/usr
+ cd $startdir/src
+ install -m755 -D minion.conf $startdir/pkg/etc/func/minion.conf
+ install -m755 -D certmaster.conf $startdir/pkg/etc/func/certmaster.conf
+ install -m755 -D $startdir/src/$pkgname-${pkgver}/etc/sample.acl $startdir/pkg/etc/func/minion-acl.d/sample.acl
+ install -m755 -D $startdir/src/power.py ${startdir}/${moddir}/power.py
+ install -m755 -D $startdir/src/pacman.py ${startdir}/${moddir}/pacman.py
+ install -m755 -D $startdir/src/failed_func.sh $startdir/pkg/usr/bin/failed_func.sh
+ mkdir -p $startdir/pkg/var/log/func
+}
diff --git a/abs/mv-core/func/certmaster.conf b/abs/mv-core/func/certmaster.conf
new file mode 100644
index 0000000..075d81f
--- /dev/null
+++ b/abs/mv-core/func/certmaster.conf
@@ -0,0 +1,7 @@
+[main]
+listen_addr =
+cadir = /etc/pki/func/ca
+certroot = /data/srv/func/certmaster/certs
+csrroot = /data/srv/func/certmaster/csrs
+autosign = yes
+
diff --git a/abs/mv-core/func/failed_func.sh b/abs/mv-core/func/failed_func.sh
new file mode 100755
index 0000000..2ec4da7
--- /dev/null
+++ b/abs/mv-core/func/failed_func.sh
@@ -0,0 +1,14 @@
+. /etc/profile
+. /etc/systemconfig
+curl -# http://$dbhost/failed_func_hosts|grep -q `hostname`
+status=$?
+if [ $status = 0 ]
+then
+ echo "removeing ca"
+ rm -f /etc/pki/func/*
+ echo "restarting func"
+ sv stop funcd
+ sleep 3
+ sv start funcd
+fi
+
diff --git a/abs/mv-core/func/func-0.13.tar.gz b/abs/mv-core/func/func-0.13.tar.gz
new file mode 100644
index 0000000..76b6c82
--- /dev/null
+++ b/abs/mv-core/func/func-0.13.tar.gz
Binary files differ
diff --git a/abs/mv-core/func/func.install b/abs/mv-core/func/func.install
new file mode 100755
index 0000000..a1d42f8
--- /dev/null
+++ b/abs/mv-core/func/func.install
@@ -0,0 +1,49 @@
+# This is a default template for a post-install scriptlet. You can
+# remove any functions you don't need (and this header).
+
+# arg 1: the new package version
+pre_install() {
+/bin/true
+}
+
+# arg 1: the new package version
+post_install() {
+ if [ ! -e /etc/cron.tenminutes ]
+ then
+ mkdir /etc/cron.tenminutes
+ fi
+
+ ln -s /usr/bin/failed_func.sh /etc/cron.tenminutes/failed_func.sh
+
+
+
+}
+
+# arg 1: the new package version
+# arg 2: the old package version
+pre_upgrade() {
+ /bin/true
+
+
+
+}
+
+# arg 1: the new package version
+# arg 2: the old package version
+post_upgrade() {
+ post_install
+}
+
+# arg 1: the old package version
+pre_remove() {
+ /bin/true
+}
+
+# arg 1: the old package version
+post_remove() {
+ /bin/true
+}
+
+op=$1
+shift
+$op $*
diff --git a/abs/mv-core/func/minion.conf b/abs/mv-core/func/minion.conf
new file mode 100644
index 0000000..627e04b
--- /dev/null
+++ b/abs/mv-core/func/minion.conf
@@ -0,0 +1,8 @@
+# configuration for minions
+
+[main]
+log_level = DEBUG
+certmaster =
+cert_dir = /etc/pki/func
+acl_dir = /etc/func/minion-acl.d
+
diff --git a/abs/mv-core/func/pacman.py b/abs/mv-core/func/pacman.py
new file mode 100644
index 0000000..c1d8d9d
--- /dev/null
+++ b/abs/mv-core/func/pacman.py
@@ -0,0 +1,40 @@
+#!/usr/bin/python
+
+
+# other modules
+import sub_process
+
+# our modules
+from modules import func_module
+
+# =================================
+
+class pacman(func_module.FuncModule):
+ def __init__(self):
+ self.methods = {
+ "update_system" : self.update_system,
+ "pkgversion" : self.pkgversion,
+ }
+ func_module.FuncModule.__init__(self)
+
+ def update_system(self,flags):
+ flags.replace(";","") # prevent stupidity
+ cmd = sub_process.Popen("/usr/bin/update_system %s" % flags,stdout=sub_process.PIPE,shell=True)
+ data = cmd.communicate()[0]
+ results = []
+ for x in data.split("\n"):
+ results.append(x)
+ return (cmd.returncode, results)
+
+ def pkgversion(self,flags):
+ flags.replace(";","") # prevent stupidity
+ cmd = sub_process.Popen("/usr/bin/pacman -Q %s | grep -v error" % flags,stdout=sub_process.PIPE,shell=True)
+ data = cmd.communicate()[0]
+ results = []
+ for x in data.split("\n"):
+ results.append(x)
+ return (cmd.returncode, results)
+
+
+methods = pacman()
+register_rpc = methods.register_rpc
diff --git a/abs/mv-core/func/power.py b/abs/mv-core/func/power.py
new file mode 100644
index 0000000..fd847e7
--- /dev/null
+++ b/abs/mv-core/func/power.py
@@ -0,0 +1,58 @@
+#!/usr/bin/python
+
+##
+## Grabs status from SMART to see if your hard drives are ok
+## Returns in the format of (return code, [line1, line2, line3,...])
+##
+## Copyright 2007, Red Hat, Inc
+## Michael DeHaan <mdehaan@redhat.com>
+##
+## This software may be freely redistributed under the terms of the GNU
+## general public license.
+##
+## 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., 675 Mass Ave, Cambridge, MA 02139, USA.
+##
+
+# other modules
+import sub_process
+
+# our modules
+from modules import func_module
+
+# =================================
+
+class power(func_module.FuncModule):
+ def __init__(self):
+ self.methods = {
+ "poweroff" : self.poweroff,
+ "reboot" : self.reboot,
+ }
+ func_module.FuncModule.__init__(self)
+
+ def poweroff(self,flags=""):
+ """
+ Returns a struct of hardware information. By default, this pulls down
+ all of the devices. If you don't care about them, set with_devices to
+ False.
+ """
+
+ flags.replace(";","") # prevent stupidity
+
+ #cmd = sub_process.Popen("/sbin/poweroff %s" % flags,stdout=sub_process.PIPE,shell=True)
+ cmd = sub_process.Popen("/sbin/poweroff")
+ data = cmd.communicate()[0]
+
+ results = ['poweroff']
+ return (cmd.returncode, results)
+
+ def reboot(self,flags=""):
+ cmd=sub_process.Popen('/sbin/reboot')
+ data = cmd.communicate()[0]
+ results = ['rebooting']
+
+ return (cmd.returncode, results)
+
+methods = power()
+register_rpc = methods.register_rpc
diff --git a/abs/mv-core/ghosd/PKGBUILD b/abs/mv-core/ghosd/PKGBUILD
new file mode 100755
index 0000000..e954ef9
--- /dev/null
+++ b/abs/mv-core/ghosd/PKGBUILD
@@ -0,0 +1,33 @@
+pkgname=ghosd
+pkgver=0.0.1
+pkgrel=18
+pkgdesc="notification program like xosd"
+depends=('cairo' 'perl' 'pango')
+makedepends=('pkgconfig')
+arch=('i686')
+source=(osdClient.pl osdServer.config osdServer.pl green800.png red800.png blue800.png yellow800.png 'grey800.png')
+
+
+build() {
+ cd $startdir/src
+ cp -rp $startdir/$pkgname-$pkgver .
+ cd $startdir/src/$pkgname-$pkgver
+ make distclean
+ make clean
+ ./configure --prefix=/usr --disable-shared
+ make || return 1
+ make prefix=$startdir/pkg/usr install
+ #install -D -m755 ./examples/.libs/image $startdir/pkg/usr/bin/imageGhosd
+ install -D -m755 ./examples/image $startdir/pkg/usr/bin/imageGhosd
+
+ cd $startdir/src
+ install -D -m755 osdClient.pl $startdir/pkg/usr/bin/osdClient.pl
+ install -D -m755 osdServer.pl $startdir/pkg/usr/bin/osdServer.pl
+ install -D -m755 osdServer.config $startdir/pkg/etc/osdServer.config
+ install -D -m755 green800.png $startdir/pkg/usr/share/green800.png
+ install -D -m755 red800.png $startdir/pkg/usr/share/red800.png
+ install -D -m755 blue800.png $startdir/pkg/usr/share/blue800.png
+ install -D -m755 yellow800.png $startdir/pkg/usr/share/yellow800.png
+ install -D -m755 grey800.png $startdir/pkg/usr/share/grey800.png
+}
+
diff --git a/abs/mv-core/ghosd/blue800.png b/abs/mv-core/ghosd/blue800.png
new file mode 100644
index 0000000..7b1b914
--- /dev/null
+++ b/abs/mv-core/ghosd/blue800.png
Binary files differ
diff --git a/abs/mv-core/ghosd/gh800.png b/abs/mv-core/ghosd/gh800.png
new file mode 100755
index 0000000..b0750d0
--- /dev/null
+++ b/abs/mv-core/ghosd/gh800.png
Binary files differ
diff --git a/abs/mv-core/ghosd/green-800.png b/abs/mv-core/ghosd/green-800.png
new file mode 100644
index 0000000..b1cd057
--- /dev/null
+++ b/abs/mv-core/ghosd/green-800.png
Binary files differ
diff --git a/abs/mv-core/ghosd/green800.png b/abs/mv-core/ghosd/green800.png
new file mode 100644
index 0000000..b0750d0
--- /dev/null
+++ b/abs/mv-core/ghosd/green800.png
Binary files differ
diff --git a/abs/mv-core/ghosd/grey800.png b/abs/mv-core/ghosd/grey800.png
new file mode 100644
index 0000000..141c203
--- /dev/null
+++ b/abs/mv-core/ghosd/grey800.png
Binary files differ
diff --git a/abs/mv-core/ghosd/image.c b/abs/mv-core/ghosd/image.c
new file mode 100644
index 0000000..cd5dadd
--- /dev/null
+++ b/abs/mv-core/ghosd/image.c
@@ -0,0 +1,97 @@
+/* ghosd -- OSD with fake transparency, cairo, and pango.
+ * Copyright (C) 2006 Evan Martin <martine@danga.com>
+ */
+
+#include <stdio.h>
+#include <math.h>
+#include <cairo/cairo.h>
+#include <unistd.h>
+#include <ghosd/ghosd.h>
+
+#include "example-shared.h"
+
+#define MARGIN 10
+#define RADIUS 20
+#define WIDTH 185
+#define HEIGHT 220
+char displayText[200] = "default message";
+
+static void
+render(Ghosd *ghosd, cairo_t *cr, void* data) {
+ cairo_surface_t* image = data;
+ const int width = cairo_image_surface_get_width(image);
+ const int height = cairo_image_surface_get_height(image);
+
+ cairo_set_source_rgba(cr, 0, 0, 0, 0.5);
+ cairo_new_path(cr);
+ example_round_rect(cr, 0, 0, width+(2*MARGIN), height+(2*MARGIN), RADIUS);
+ cairo_fill(cr);
+
+ cairo_save(cr);
+ cairo_set_source_surface(cr, image, MARGIN, MARGIN);
+
+
+
+
+ cairo_paint_with_alpha(cr, 0.9);
+ cairo_restore(cr);
+cairo_select_font_face (cr, "Sans", CAIRO_FONT_SLANT_NORMAL,
+ CAIRO_FONT_WEIGHT_BOLD);
+cairo_set_font_size (cr, 90.0);
+
+// cairo_move_to (cr, 10.0, 135.0);
+// cairo_show_text (cr, "Hello");
+
+cairo_move_to (cr, 70.0, 165.0);
+cairo_text_path (cr, displayText);
+cairo_set_source_rgb (cr, 1.5, 1.5, 1);
+cairo_fill_preserve (cr);
+cairo_set_source_rgb (cr, 0, 0, 0);
+cairo_set_line_width (cr, 2.56);
+cairo_stroke (cr);
+}
+
+int main(int argc, char* argv[]) {
+ //g_type_init();
+
+ char *filename = NULL;
+ GOptionEntry options[] = {
+ { "image", 'i', G_OPTION_FLAG_IN_MAIN, G_OPTION_ARG_STRING,
+ (gpointer)&filename, "image to display", "PATH" },
+ { NULL }
+ };
+ GOptionGroup *group = g_option_group_new("image", "Image Options", "image help",
+ NULL, NULL);
+ g_option_group_add_entries(group, options);
+ example_options_parse(&argc, &argv, group, NULL);
+
+ if (filename == NULL) {
+ printf("must specify image with -i flag.\n"
+ "try e.g. /usr/share/pixmaps/gnome-logo-large.png\n");
+ return 1;
+ }
+
+ if( argc == 2 )
+ {
+ sprintf(displayText, argv[1]);
+
+ }
+
+
+ Ghosd *ghosd;
+ cairo_surface_t* image = cairo_image_surface_create_from_png(filename);
+ const int width = cairo_image_surface_get_width(image);
+ const int height = cairo_image_surface_get_height(image);
+
+ ghosd = ghosd_new();
+ ghosd_set_transparent(ghosd, opts.transparent);
+ ghosd_set_position(ghosd, opts.x, opts.y,
+ width+(2*MARGIN), height+(2*MARGIN));
+ ghosd_set_render(ghosd, render, image);
+
+ ghosd_flash(ghosd, 1300, 6500);
+
+ return 0;
+}
+
+/* vim: set ts=2 sw=2 et cino=(0 : */
diff --git a/abs/mv-core/ghosd/osdClient.pl b/abs/mv-core/ghosd/osdClient.pl
new file mode 100755
index 0000000..06fc381
--- /dev/null
+++ b/abs/mv-core/ghosd/osdClient.pl
@@ -0,0 +1,25 @@
+#!/usr/bin/perl -w
+# osdClient.pl - send simple client text to server
+
+use strict;
+use IO::Socket::INET;
+use POSIX qw(F_GETFL F_SETFL O_NONBLOCK);
+my $sock = "";
+
+if( $#ARGV != 2 ){ die "specify a ip, port, text string" }
+
+eval
+{
+ $sock = IO::Socket::INET->new(
+ PeerAddr => $ARGV[0],
+ PeerPort => $ARGV[1]) || die "can't set it up $!";
+
+ $sock->blocking(0)
+};
+
+if( $@ =~ /socket/i )
+{
+ print "die in record retrieval socket setup with $@";
+}
+
+print $sock "$ARGV[2] \n";
diff --git a/abs/mv-core/ghosd/osdServer.config b/abs/mv-core/ghosd/osdServer.config
new file mode 100644
index 0000000..915cef9
--- /dev/null
+++ b/abs/mv-core/ghosd/osdServer.config
@@ -0,0 +1,6 @@
+image _#_ ALT _#_ /usr/share/red800.png -x -0 -y -450 75 90 1 1 1 50 900 6000
+image _#_ SYS _#_ /usr/share/blue800.png -x -0 -y -450 75 90 1 1 1 50 900 6000
+image _#_ PHN _#_ /usr/share/yellow800.png -x -0 -y -450 75 90 1 1 1 50 900 6000
+image _#_ PH2 _#_ /usr/share/yellow800.png -x -0 -y 450 75 90 1 1 1 50 900 6000
+image _#_ OTH _#_ /usr/share/grey800.png -x -0 -y -450 75 90 1 1 1 50 900 6000
+image _#_ NFO _#_ /usr/share/green800.png -x -0 -y -450 75 90 1 1 1 50 900 6000
diff --git a/abs/mv-core/ghosd/osdServer.pl b/abs/mv-core/ghosd/osdServer.pl
new file mode 100755
index 0000000..8cd62b7
--- /dev/null
+++ b/abs/mv-core/ghosd/osdServer.pl
@@ -0,0 +1,189 @@
+#!/usr/bin/perl -w
+# osdServer.pl - process incoming text events based on keyword matching and
+# display using Ghosd
+use strict;
+use FileHandle;
+use Socket;
+use Thread;
+use Config;
+use Thread qw(async);
+
+if( @ARGV != 1 ){ die "specify a port to listen on " }
+my %osdHash = ();
+my $proto = "";
+my $port = "";
+my $port1 = "";
+my $sockAddr = "";
+my $sockAddr1= "";
+my $fullCmd = "";
+my $fullCmd1 = "";
+
+# readKeyWordFile reads type, keywords, (text/image) parameters
+# text parameters:
+# X coordinate, Y coordinate, red, green, blue, font size, fade In, fade Out
+# image parameters:
+# image filename, X coordinate, Y coordinate
+# osdServer.confg format is: type _#_ keywords _#_ osd parameters
+sub readOsdFile
+{
+ open(OSDFILE,"/etc/osdServer.config") or die "no osdServer.config file: $!";
+
+ while(<OSDFILE>){
+
+ # ignore comment lines
+ if( !/^#/ ){
+ chomp($_);
+ my @arrLine = split "_#_";
+ $arrLine[0] =~ s/ //g;
+ $osdHash{ lc($arrLine[0]) }{ $arrLine[1] } = $arrLine[2];
+ }#if not a comment line
+
+ }#for each line in file
+
+ close(OSDFILE);
+
+}#readOsdFile
+
+sub matchWords
+{
+ my $msgString = $_[0];
+ my $type = $_[1];
+# print "msgstring $msgString \n";
+
+ # print "type $type\n " ;
+ # for the type specified
+ for my $kwList ( keys %{ $osdHash{$type} } )
+ {
+ # for each word
+ for my $checkWord ( split " ", $kwList )
+ {
+ $checkWord =~ s/ //g;
+ if( $msgString =~ /$checkWord/i )
+ {
+ if( $type eq "text" )
+ {
+ $fullCmd .= qq{./text '$msgString' $osdHash{text}{$kwList} &};
+
+ #print "$fullCmd\n";
+ }else
+ {
+ my @realstring = split(/:::/, $msgString);
+ print "$realstring[0] \n";
+ $fullCmd .= qq{/usr/bin/imageGhosd -i $osdHash{image}{$kwList} '$realstring[0]' &};
+# print "full $fullCmd\n";
+ #print "msgstring- $msgString \n";
+ }
+ }#if matching word
+ }#for each check word
+ }#for each key word list
+
+}#checkText
+
+sub matchWords1
+{
+ my $msgString = $_[0];
+ my $type = $_[1];
+# print "msgstring $msgString \n";
+ print "Here ia m" ;
+ # print "type $type\n " ;
+ # for the type specified
+ for my $kwList ( keys %{ $osdHash{$type} } )
+ {
+ # for each word
+ for my $checkWord ( split " ", $kwList )
+ {
+ $checkWord =~ s/ //g;
+ if( $msgString =~ /$checkWord/i )
+ {
+ if( $type eq "text" )
+ {
+ $fullCmd1 .= qq{./text '$msgString' $osdHash{text}{$kwList} &};
+
+ #print "$fullCmd\n";
+ }else
+ {
+ my @realstring = split(/:::/, $msgString);
+ print "$realstring[0] \n";
+ $fullCmd1 .= qq{/usr/bin/imageGhosd -i $osdHash{image}{$kwList} '$realstring[0]' &};
+ print "full $fullCmd1\n";
+ #print "msgstring- $msgString \n";
+ }
+ }#if matching word
+ }#for each check word
+ }#for each key word list
+}
+
+sub sub1 {
+ while( 1 )
+ {
+ my $acceptSock1 = accept(HANDLER, SERVER1) or die "accept: $!\n";
+ my($acceptPort1, $acceptIpAddr) = sockaddr_in($acceptSock1);
+
+ autoflush HANDLER 1;
+ while(my $msgString1 = <HANDLER>)
+ {
+ chomp($msgString1);
+ matchWords1($msgString1,"text");
+ matchWords1($msgString1,"image");
+
+ $fullCmd1 = `$fullCmd1` unless $fullCmd1 eq "";
+ $fullCmd1 = "";
+ }#while handler
+
+ close HANDLER or die "close HANDLER: $!\n";
+ }#while forever
+}
+
+# begin main program
+
+readOsdFile();
+
+$proto = getprotobyname('tcp');
+socket(SERVER, PF_INET, SOCK_STREAM, $proto) or die "socket: $!\n";
+socket(SERVER1, PF_INET, SOCK_STREAM, $proto) or die "socket: $!\n";
+
+$port = $ARGV[0];
+$port1 = $port + 1;
+$port1 = 5001;
+
+$sockAddr = sockaddr_in($port, INADDR_ANY);
+$sockAddr1 = sockaddr_in($port1, INADDR_ANY);
+
+bind(SERVER, $sockAddr) or die "bind: $!\n";
+bind(SERVER1, $sockAddr1) or die "bind: $!\n";
+
+listen(SERVER, SOMAXCONN) or die "listen: $!\n";
+listen(SERVER1, SOMAXCONN) or die "listen: $!\n";
+
+
+
+$Config{usethreads} or die "Recompile Perl with threads to run this program.";
+
+my $thr = threads->new(\&sub1);
+
+
+
+
+#listen foreve
+
+while( 1 )
+{
+ my $acceptSock = accept(HANDLER, SERVER) or die "accept: $!\n";
+ my($acceptPort, $acceptIpAddr) = sockaddr_in($acceptSock);
+
+ autoflush HANDLER 1;
+ while(my $msgString = <HANDLER>)
+ {
+ chomp($msgString);
+
+ matchWords($msgString,"text");
+ matchWords($msgString,"image");
+
+ $fullCmd = `$fullCmd` unless $fullCmd eq "";
+ $fullCmd = "";
+ }#while handler
+
+ close HANDLER or die "close HANDLER: $!\n";
+
+}#while forever
+
diff --git a/abs/mv-core/ghosd/red800.png b/abs/mv-core/ghosd/red800.png
new file mode 100644
index 0000000..7c7ae5c
--- /dev/null
+++ b/abs/mv-core/ghosd/red800.png
Binary files differ
diff --git a/abs/mv-core/ghosd/yellow800.png b/abs/mv-core/ghosd/yellow800.png
new file mode 100644
index 0000000..f6bfae1
--- /dev/null
+++ b/abs/mv-core/ghosd/yellow800.png
Binary files differ
diff --git a/abs/mv-core/graphviz/PKGBUILD b/abs/mv-core/graphviz/PKGBUILD
new file mode 100644
index 0000000..c979153
--- /dev/null
+++ b/abs/mv-core/graphviz/PKGBUILD
@@ -0,0 +1,21 @@
+pkgname=graphviz
+pkgver=2.20.2
+pkgrel=1
+pkgdesc="Graph Visualization Software"
+arch=(i686)
+url="http://www.graphviz.org/About.php"
+license=('CPL')
+install=(graphviz.install)
+depends=(cairo expat fontconfig gettext glib2 libpng pango zlib)
+makedepends=(ghostscript swig )
+source=(http://www.graphviz.org/pub/graphviz/ARCHIVE/$pkgname-$pkgver.tar.gz)
+
+build() {
+ cd $startdir/src/$pkgname-$pkgver
+ make clean
+ ./configure --prefix=/usr --disable-perl
+ make || return 1
+ make DESTDIR=$startdir/pkg install
+ }
+
+#disabled perl
diff --git a/abs/mv-core/graphviz/graphviz.install b/abs/mv-core/graphviz/graphviz.install
new file mode 100755
index 0000000..aba02b8
--- /dev/null
+++ b/abs/mv-core/graphviz/graphviz.install
@@ -0,0 +1,39 @@
+# This is a default template for a post-install scriptlet. You can
+# remove any functions you don't need (and this header).
+
+# arg 1: the new package version
+pre_install() {
+ /bin/true
+}
+
+# arg 1: the new package version
+post_install() {
+/usr/bin/dot -cv
+/usr/bin/dot -c
+}
+
+# arg 1: the new package version
+# arg 2: the old package version
+pre_upgrade() {
+ /bin/true
+}
+
+# arg 1: the new package version
+# arg 2: the old package version
+post_upgrade() {
+ /bin/true
+}
+
+# arg 1: the old package version
+pre_remove() {
+ /bin/true
+}
+
+# arg 1: the old package version
+post_remove() {
+ /bin/true
+}
+
+op=$1
+shift
+$op $*
diff --git a/abs/mv-core/iguanair/PKGBUILD b/abs/mv-core/iguanair/PKGBUILD
new file mode 100755
index 0000000..64b8048
--- /dev/null
+++ b/abs/mv-core/iguanair/PKGBUILD
@@ -0,0 +1,25 @@
+pkgname=iguanaIR
+#pkgver=0.8.0.20061009
+pkgver=0.95
+pkgrel=3
+# leaving kernver dynamic ensures compatibility with srcpac
+_kernver=2.6.24-STB
+pkgdesc="Linux Infrared Remote Control usb from iguanaworks"
+arch=(i686 x86_64)
+depends=('swig' )
+source=(http://iguanaworks.net/downloads/iguanaIR-0.95.tar.bz2)
+url="http://iguanaworks.net"
+#install=$pkgname.install
+
+
+build() {
+ # configure
+ cd $startdir/src/$pkgname-$pkgver || return 1
+ ./configure
+ make || return 1
+ make PREFIX=$startdir/pkg/usr DESTDIR=$startdir/pkg install || return 1
+ mkdir $startdir/pkg/usr/bin/
+ ls -la ig*
+ #cp -f igclient $startdir/pkg/usr/bin/
+ #cp -f igd* $startdir/pkg/usr/bin/
+}
diff --git a/abs/mv-core/keylaunch/PKGBUILD b/abs/mv-core/keylaunch/PKGBUILD
new file mode 100644
index 0000000..f900c7a
--- /dev/null
+++ b/abs/mv-core/keylaunch/PKGBUILD
@@ -0,0 +1,17 @@
+pkgname=keylaunch
+pkgver=1.3.3
+pkgrel=10
+arch=('i686')
+pkgdesc="KeyLaunch is a small utility for binding commands to a hot key. "
+url="http://www.oroborus.org/"
+depends=(glibc)
+source=(http://www.oroborus.org/debian/dists/sid/main/source/x11/keylaunch_1.3.3.tar.gz example_rc)
+install=keylaunch.install
+
+build() {
+ cd $startdir/src/$pkgname-$pkgver
+ ./configure --prefix=/usr
+ make
+ make DESTDIR=$startdir/pkg install
+ install -D -m0755 ../example_rc $startdir/pkg/etc/keylaunchrc
+}
diff --git a/abs/mv-core/keylaunch/example_rc b/abs/mv-core/keylaunch/example_rc
new file mode 100644
index 0000000..ed6519e
--- /dev/null
+++ b/abs/mv-core/keylaunch/example_rc
@@ -0,0 +1,19 @@
+# Copy to $HOME/.keylaunchrc
+#
+# Format:
+# key=...KeyName:Command
+#
+# ... No modifier
+# *.. Shift
+# .*. Ctrl
+# ..* Alt
+
+#key=..*Return:xterm
+key=.*.Return:rxvt
+key=*..Return:terminal
+key=..*S:sudo /usr/local/bin/mythtv-setup
+key=.**U:killall -9 unclutter
+key=..*h:/usr/MythVantage/bin/mythinstall -h
+key=..*1:/usr/MythVantage/bin/mythbeselect -stop
+key=..*2:/usr/MythVantage/bin/mythbeselect -start
+key=..*3:/usr/MythVantage/bin/mythbeselect -restart
diff --git a/abs/mv-core/keylaunch/keylaunch.install b/abs/mv-core/keylaunch/keylaunch.install
new file mode 100755
index 0000000..ade2c7b
--- /dev/null
+++ b/abs/mv-core/keylaunch/keylaunch.install
@@ -0,0 +1,40 @@
+# This is a default template for a post-install scriptlet. You can
+# remove any functions you don't need (and this header).
+
+# arg 1: the new package version
+pre_install() {
+ /bin/true
+}
+
+# arg 1: the new package version
+post_install() {
+ ln -s /etc/keylaunchrc /data/home/mythtv/.keylaunchrc
+
+}
+
+# arg 1: the new package version
+# arg 2: the old package version
+pre_upgrade() {
+ /bin/true
+
+}
+
+# arg 1: the new package version
+# arg 2: the old package version
+post_upgrade() {
+ post_install
+}
+
+# arg 1: the old package version
+pre_remove() {
+ /bin/true
+}
+
+# arg 1: the old package version
+post_remove() {
+ /bin/true
+}
+
+op=$1
+shift
+$op $*
diff --git a/abs/mv-core/lcdproc/PKGBUILD b/abs/mv-core/lcdproc/PKGBUILD
new file mode 100755
index 0000000..cb536e9
--- /dev/null
+++ b/abs/mv-core/lcdproc/PKGBUILD
@@ -0,0 +1,25 @@
+pkgname=lcdproc
+#pkgver=0.5.2
+pkgver=20080326
+pkgrel=7
+pkgdesc="LCDproc is a utility to drive one or more LCD (and LCD-like) devices attached to a host."
+url="http://lcdproc.omnipotent.net/"
+license="GPL"
+depends=(libusb xosd)
+backup=(etc/LCDd.conf)
+arch=('i686')
+#source=(http://switch.dl.sourceforge.net/sourceforge/$pkgname/$pkgname-$pkgver.tar.gz lcdd mythvantage.patch)
+source=(lcdproc-CVS-current.tar.gz lcdd mythvantage.patch)
+
+build() {
+ #cd $startdir/src/$pkgname-$pkgver
+ cd $startdir/src/$pkgname-CVS-current-$pkgver
+# lcdproc-CVS-current-20080326
+ patch -p0 < ../mythvantage.patch
+ ./configure --prefix=/usr --sysconfdir=/etc --enable-libusb --enable-drivers=all
+ make
+ make DESTDIR=$startdir/pkg install
+ sed -e "s/server\/drivers\//\/usr\/lib\/lcdproc\//g" LCDd.conf > $startdir/pkg/etc/LCDd.conf
+ mkdir -p $startdir/pkg/etc/rc.d
+ install -m 755 $startdir/src/lcdd $startdir/pkg/etc/rc.d
+}
diff --git a/abs/mv-core/lcdproc/lcdd b/abs/mv-core/lcdproc/lcdd
new file mode 100755
index 0000000..fa3547a
--- /dev/null
+++ b/abs/mv-core/lcdproc/lcdd
@@ -0,0 +1,38 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+PID=`pidof -o %PPID /usr/sbin/LCDd`
+case "$1" in
+ start)
+ stat_busy "Starting LCDd daemon"
+ [ -z "$PID" ] && /usr/sbin/LCDd -c /etc/LCDd.conf
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ echo $PID > /var/run/lcdd.pid
+ add_daemon lcdd
+ stat_done
+ fi
+ ;;
+ stop)
+ stat_busy "Stopping ProFTPd daemon"
+ [ ! -z "$PID" ] && kill $PID &> /dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ rm /var/run/lcdd.pid
+ rm_daemon lcdd
+ stat_done
+ fi
+ ;;
+ restart)
+ $0 stop
+ sleep 1
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart}"
+esac
+exit 0
diff --git a/abs/mv-core/lcdproc/lcdproc-CVS-current.tar.gz b/abs/mv-core/lcdproc/lcdproc-CVS-current.tar.gz
new file mode 100644
index 0000000..e0f6df4
--- /dev/null
+++ b/abs/mv-core/lcdproc/lcdproc-CVS-current.tar.gz
Binary files differ
diff --git a/abs/mv-core/lcdproc/mythvantage.patch b/abs/mv-core/lcdproc/mythvantage.patch
new file mode 100644
index 0000000..70feff7
--- /dev/null
+++ b/abs/mv-core/lcdproc/mythvantage.patch
@@ -0,0 +1,14 @@
+--- server/serverscreens.c.orig 2007-09-17 18:35:57.000000000 +0000
++++ server/serverscreens.c 2007-09-17 18:36:32.000000000 +0000
+@@ -167,9 +167,9 @@
+
+ char *top = "Thanks for using";
+ #ifdef LINUX
+- char *low = "LCDproc & Linux!";
++ char *low = "MythVantage";
+ #else
+- char *low = " LCDproc! ";
++ char *low = " MythVantage ";
+ #endif
+
+ drivers_string(1+xoffs, 1+yoffs, top);
diff --git a/abs/mv-core/lighttpd/PKGBUILD b/abs/mv-core/lighttpd/PKGBUILD
new file mode 100755
index 0000000..1f2d7df
--- /dev/null
+++ b/abs/mv-core/lighttpd/PKGBUILD
@@ -0,0 +1,49 @@
+pkgname=lighttpd
+pkgver=1.4.19
+pkgrel=25
+pkgdesc="lighttpd is a secure, fast, compliant and very flexible web-server"
+arch=(i686 x86_64)
+url="http://www.lighttpd.net/"
+depends=('pcre' 'openssl' 'zlib' 'bzip2' 'attr')
+makedepends=('fcgi' 'libmysqlclient' 'lua' 'gdbm' \
+ 'libxml2' 'vim' 'pkgconfig' 'sqlite3')
+backup=('etc/lighttpd/lighttpd.conf' 'etc/logrotate.d/lighttpd' \
+ 'etc/conf.d/lighttpd' 'etc/conf.d/spawn-php' \
+ 'home/lighttpd/html/index.html')
+options=('!libtool')
+install=$pkgname.install
+source=(http://www.lighttpd.net/download/$pkgname-$pkgver.tar.gz \
+ index.html $pkgname.rc.d $pkgname.conf.d $pkgname.logrotate.d \
+ spawn-php.rc.d spawn-php.conf.d tweakconf.vim lighttpd.conf)
+md5sums=('8f6756452138f5da384251f849b329f2' '85593eb67b928fec79b1efb3fa3cce84'\
+ '6d05e499e47425e99bf809c88bd4969d' '14565fa5d30c60941190ceb32b1b551f'\
+ 'a8c31344b90328c5b751d965d79c5047' 'df940132363030eafcf7009a5322048f'\
+ '1ba657b113b7e473fb301631a7e2e1a4' 'e799c48f7cee46db089f90030cec935a')
+
+build() {
+ cd $startdir/src/$pkgname-$pkgver
+ ./configure --prefix=/usr --libdir=/usr/lib/lighttpd \
+ --with-gdbm --with-lua --with-memcache \
+ --with-openssl=/usr/include/openssl \
+ --with-mysql=/usr/bin/mysql_config \
+ --with-webdav-props --with-attr \
+ --without-fam
+ make || return 1
+ make DESTDIR=$startdir/pkg install || return 1
+
+ # install configuration scripts and daemons
+ #install -Dm644 ../index.html $startdir/pkg/data/srv/httpd/htdocs/index.html
+ install -Dm755 ../lighttpd.rc.d $startdir/pkg/etc/rc.d/lighttpd
+ install -Dm644 ../lighttpd.conf.d $startdir/pkg/etc/conf.d/lighttpd
+ install -Dm644 ../lighttpd.logrotate.d $startdir/pkg/etc/logrotate.d/lighttpd
+ install -Dm755 ../spawn-php.rc.d $startdir/pkg/etc/rc.d/spawn-php
+ install -Dm644 ../spawn-php.conf.d $startdir/pkg/etc/conf.d/spawn-php
+
+ # show some mercy on docfiles
+# mkdir -p $startdir/pkg/usr/share/lighttpd
+# install -m644 doc/*.txt $startdir/pkg/usr/share/lighttpd
+
+ install -Dm644 doc/lighttpd.conf $startdir/pkg/etc/lighttpd/lighttpd.conf
+ ex $startdir/pkg/etc/lighttpd/lighttpd.conf < $startdir/src/tweakconf.vim
+ install -Dm644 $startdir/src/lighttpd.conf $startdir/pkg/etc/lighttpd/lighttpd.conf
+}
diff --git a/abs/mv-core/lighttpd/index.html b/abs/mv-core/lighttpd/index.html
new file mode 100644
index 0000000..22ea5d1
--- /dev/null
+++ b/abs/mv-core/lighttpd/index.html
@@ -0,0 +1,15 @@
+<html>
+<head><title>lighttpd Test Page</title></head>
+
+<body>
+ <div style="text-align:center; font: 12px sans-serif;">
+ <span style="font-weight: bold; font-size: 20px;">
+ Arch Linux
+ </span>
+ <br><br>
+ This is a test page for the lighttpd Web Server.<br>
+ </div>
+</body>
+
+</html>
+
diff --git a/abs/mv-core/lighttpd/lighttpd.conf b/abs/mv-core/lighttpd/lighttpd.conf
new file mode 100755
index 0000000..45fccf6
--- /dev/null
+++ b/abs/mv-core/lighttpd/lighttpd.conf
@@ -0,0 +1,369 @@
+# lighttpd configuration file
+#
+# use a it as base for lighttpd 1.0.0 and above
+#
+# i'm th enew file
+
+############ Options you really have to take care of ####################
+
+## modules to load
+# at least mod_access and mod_accesslog should be loaded
+# all other module should only be loaded if really neccesary
+# - saves some time
+# - saves memory
+server.modules = (
+ "mod_rewrite",
+# "mod_redirect",
+ "mod_alias",
+ "mod_access",
+# "mod_cml",
+# "mod_trigger_b4_dl",
+# "mod_auth",
+ "mod_status",
+ "mod_setenv",
+ "mod_fastcgi",
+# "mod_proxy",
+# "mod_simple_vhost",
+# "mod_evhost",
+# "mod_userdir",
+ "mod_cgi",
+# "mod_compress",
+ "mod_ssi",
+# "mod_usertrack",
+# "mod_expire",
+# "mod_secdownload",
+# "mod_rrdtool",
+ "mod_accesslog" )
+
+## a static document-root, for virtual-hosting take look at the
+## server.virtual-* options
+server.document-root = "/data/srv/httpd/htdocs"
+
+## where to send error-messages to
+#server.errorlog = "/var/log/lighttpd/error.log"
+server.errorlog-use-syslog = "enable"
+#do not log images
+$HTTP["url"] !~ "\.(jpe?g|png|gif|css)" { accesslog.use-syslog = "enable" }
+
+
+
+
+# files to check for if .../ is requested
+index-file.names = ( "index.php", "index.html",
+ "index.htm", "default.htm","mythweb.php")
+
+# mimetype mapping
+mimetype.assign = (
+ ".pdf" => "application/pdf",
+ ".sig" => "application/pgp-signature",
+ ".spl" => "application/futuresplash",
+ ".class" => "application/octet-stream",
+ ".ps" => "application/postscript",
+ ".torrent" => "application/x-bittorrent",
+ ".dvi" => "application/x-dvi",
+ ".gz" => "application/x-gzip",
+ ".pac" => "application/x-ns-proxy-autoconfig",
+ ".swf" => "application/x-shockwave-flash",
+ ".tar.gz" => "application/x-tgz",
+ ".tgz" => "application/x-tgz",
+ ".tar" => "application/x-tar",
+ ".zip" => "application/zip",
+ ".mp3" => "audio/mpeg",
+ ".m3u" => "audio/x-mpegurl",
+ ".wma" => "audio/x-ms-wma",
+ ".wax" => "audio/x-ms-wax",
+ ".ogg" => "application/ogg",
+ ".wav" => "audio/x-wav",
+ ".gif" => "image/gif",
+ ".jpg" => "image/jpeg",
+ ".jpeg" => "image/jpeg",
+ ".png" => "image/png",
+ ".xbm" => "image/x-xbitmap",
+ ".xpm" => "image/x-xpixmap",
+ ".xwd" => "image/x-xwindowdump",
+ ".css" => "text/css",
+ ".html" => "text/html",
+ ".htm" => "text/html",
+ ".js" => "text/javascript",
+ ".asc" => "text/plain",
+ ".c" => "text/plain",
+ ".cpp" => "text/plain",
+ ".log" => "text/plain",
+ ".conf" => "text/plain",
+ ".text" => "text/plain",
+ ".txt" => "text/plain",
+ ".dtd" => "text/xml",
+ ".xml" => "text/xml",
+ ".mpeg" => "video/mpeg",
+ ".mpg" => "video/mpeg",
+ ".mov" => "video/quicktime",
+ ".qt" => "video/quicktime",
+ ".avi" => "video/x-msvideo",
+ ".asf" => "video/x-ms-asf",
+ ".asx" => "video/x-ms-asf",
+ ".wmv" => "video/x-ms-wmv",
+ ".bz2" => "application/x-bzip",
+ ".tbz" => "application/x-bzip-compressed-tar",
+ ".tar.bz2" => "application/x-bzip-compressed-tar",
+ ".nuv" => "video/nuppelvideo"
+ )
+
+
+# Use the "Content-Type" extended attribute to obtain mime type if possible
+mimetype.use-xattr = "enable"
+
+
+## send a different Server: header
+## be nice and keep it at lighttpd
+#server.tag = "lighttpd"
+
+#### accesslog module
+#accesslog.filename = "/var/log/lighttpd/access.log"
+
+## deny access the file-extensions
+#
+# ~ is for backupfiles from vi, emacs, joe, ...
+# .inc is often used for code includes which should in general not be part
+# of the document-root
+url.access-deny = ( "~", ".inc" )
+
+$HTTP["url"] =~ "\.pdf$" {
+
+
+ server.range-requests = "disable"
+}
+
+######### Options that are good to be but not neccesary to be changed #######
+
+## bind to port (default: 80)
+#server.port = 80
+
+## bind to localhost (default: all interfaces)
+#server.bind = "grisu.home.kneschke.de"
+
+#custom handlers for mythweb and phpmyadmin
+$HTTP["url"] =~ "(mythweb)" {
+server.error-handler-404 = "/error/mythweb.html"
+}
+
+$HTTP["url"] =~ "(phpMyAdmin)" {
+server.error-handler-404 = "/error/phpadmin.html"
+}
+
+$HTTP["url"] =~ "(hobbit)" {
+server.error-handler-404 = "/error/hobbit.html"
+}
+
+## error-handler for status 404
+server.error-handler-404 = "/error-handler.html"
+server.errorfile-prefix = "/data/srv/httpd/htdocs/error/status-"
+#server.error-handler-404 = "/error-handler.php"
+
+## to help the rc.scripts
+server.pid-file = "/var/run/lighttpd.pid"
+
+alias.url = ( "/logs/" => "/var/log/" )
+
+
+$HTTP["url"] =~ "^/logs($|/)" {
+dir-listing.activate= "enable"
+dir-listing.hide-dotfiles = "enable"
+dir-listing.external-css = "/frame.css"
+}
+
+
+
+
+###### virtual hosts
+##
+## If you want name-based virtual hosting add the next three settings and load
+## mod_simple_vhost
+##
+## document-root =
+## virtual-server-root + virtual-server-default-host + virtual-server-docroot
+## or
+## virtual-server-root + http-host + virtual-server-docroot
+##
+#simple-vhost.server-root = "/home/lighttpd/vhosts/"
+#simple-vhost.default-host = "lighttpd.localhost"
+#simple-vhost.document-root = "/pages/"
+##
+## Format: <errorfile-prefix><status-code>.html
+## -> ..../status-404.html for 'File not found'
+#server.errorfile-prefix = "/home/weigon/projects/lighttpd/doc/status-"
+
+## virtual directory listings
+#server.dir-listing = "enable"
+
+## enable debugging
+#debug.log-request-header = "enable"
+#debug.log-response-header = "enable"
+#debug.log-request-handling = "enable"
+#debug.log-file-not-found = "enable"
+
+### only root can use these options
+#
+# chroot() to directory (default: no chroot() )
+#server.chroot = "/"
+
+## change uid to <uid> (default: don't care)
+server.username = "nobody"
+
+## change uid to <uid> (default: don't care)
+server.groupname = "nobody"
+
+#### compress module
+#compress.cache-dir = "/home/lighttpd/cache/"
+#compress.filetype = ("text/plain", "text/html")
+
+#### proxy module
+## read proxy.txt for more info
+#proxy.server = ( ".php" =>
+# ( "localhost" =>
+# (
+# "host" => "192.168.0.101",
+# "port" => 80
+# )
+# )
+# )
+
+#### fastcgi module
+## read fastcgi.txt for more info
+fastcgi.server = ( ".php" =>
+ ( "localhost" =>
+ (
+ "socket" => "/tmp/php-fastcgi.socket",
+ "bin-path" => "/usr/bin/php-cgi",
+ "min-procs" => 0,
+ "max-procs" => 1,
+ "max-load-per-proc" => 1,
+ "idle-timeout" => 10,
+ # Fix PATH_INFO for PHP scripts that rely on it (like Wordpress).
+ "broken-scriptfilename" => "enable"
+ )
+ )
+)
+
+
+#the rewrite rule for mythweb
+
+ url.rewrite = (
+ "^/mythweb(/tv.*|/music.*|/stats.*|/remote.*|/video.*|/weather.*|/settings.*|/status.*|/backend_log.*)$" => "mythweb/mythweb.php/$1"
+ )
+
+
+#### CGI module
+cgi.assign = ( ".pl" => "/usr/bin/perl",
+ ".sh" => "/bin/bash" ,
+ ".py" => "/usr/bin/python" ,
+ ".cgi" => "/bin/bash" )
+
+
+
+#### SSL engine
+#$SERVER["socket"] == "0.0.0.0:443" {
+# ssl.engine = "enable"
+# ssl.pemfile = "/home/lighttpd/ssl/server.pem"
+# server.errorlog = "/var/log/lighttpd/error-ssl.log"
+# accesslog.filename = "/var/log/lighttpd/access-ssl.log"
+# server.document-root = "/home/lighttpd/html-ssl"
+#}
+
+
+$SERVER["socket"] == ":1337" {
+ server.document-root = "/data/srv/httpd/cgi/"
+ alias.url = ( "/templates/" => "/data/home/mythtv/templates/" )
+
+}
+
+
+#### status module
+status.status-url = "/server-status"
+status.config-url = "/server-config"
+
+#### auth module
+## read authentication.txt for more info
+#auth.backend = "plain"
+#auth.backend.plain.userfile = "lighttpd.user"
+#auth.backend.plain.groupfile = "lighttpd.group"
+
+#auth.backend.ldap.hostname = "localhost"
+#auth.backend.ldap.base-dn = "dc=my-domain,dc=com"
+#auth.backend.ldap.filter = "(uid=$)"
+#auth.require = ( "/server-status" =>
+# (
+# "method" => "digest",
+# "realm" => "download archiv",
+# "require" => "user=jan"
+# ),
+# "/server-info" =>
+# (
+# "method" => "digest",
+# "realm" => "download archiv",
+# "require" => "valid-user"
+# )
+# )
+
+#### url handling modules (rewrite, redirect, access)
+#url.rewrite = ( "^/$" => "/server-status" )
+#url.redirect = ( "^/wishlist/(.+)" => "http://www.123.org/$1" )
+
+#
+# define a pattern for the host url finding
+# %% => % sign
+# %0 => domain name + tld
+# %1 => tld
+# %2 => domain name without tld
+# %3 => subdomain 1 name
+# %4 => subdomain 2 name
+#
+#evhost.path-pattern = "/home/storage/dev/www/%3/htdocs/"
+
+#### expire module
+#expire.url = ( "/buggy/" => "access 2 hours", "/asdhas/" => "access plus 1 seconds 2 minutes")
+
+#### ssi
+ssi.extension = ( ".shtml" )
+
+#### rrdtool
+#rrdtool.binary = "/usr/bin/rrdtool"
+#rrdtool.db-name = "/var/www/lighttpd.rrd"
+
+#### setenv
+#setenv.add-request-header = ( "TRAV_ENV" => "mysql://user@host/db" )
+#setenv.add-response-header = ( "X-Secret-Message" => "42" )
+## for mod_trigger_b4_dl
+# trigger-before-download.gdbm-filename = "/home/weigon/testbase/trigger.db"
+# trigger-before-download.memcache-hosts = ( "127.0.0.1:11211" )
+# trigger-before-download.trigger-url = "^/trigger/"
+# trigger-before-download.download-url = "^/download/"
+# trigger-before-download.deny-url = "http://127.0.0.1/index.html"
+# trigger-before-download.trigger-timeout = 10
+
+## for mod_cml
+## don't forget to add index.cml to server.indexfiles
+# cml.extension = ".cml"
+# cml.memcache-hosts = ( "127.0.0.1:11211" )
+
+#### variable usage:
+## variable name without "." is auto prefixed by "var." and becomes "var.bar"
+#bar = 1
+#var.mystring = "foo"
+
+## integer add
+#bar += 1
+## string concat, with integer cast as string, result: "www.foo1.com"
+#server.name = "www." + mystring + var.bar + ".com"
+## array merge
+#index-file.names = (foo + ".php") + index-file.names
+#index-file.names += (foo + ".php")
+
+#### include
+#include /etc/lighttpd/lighttpd-inc.conf
+## same as above if you run: "lighttpd -f /etc/lighttpd/lighttpd.conf"
+#include "lighttpd-inc.conf"
+
+#### include_shell
+#include_shell "echo var.a=1"
+## the above is same as:
+#var.a=1
diff --git a/abs/mv-core/lighttpd/lighttpd.conf.d b/abs/mv-core/lighttpd/lighttpd.conf.d
new file mode 100644
index 0000000..5321598
--- /dev/null
+++ b/abs/mv-core/lighttpd/lighttpd.conf.d
@@ -0,0 +1,10 @@
+DAEMON_NAME="lighttpd"
+DAEMON_CONF="/etc/lighttpd/lighttpd.conf"
+DAEMON_PATH="/usr/sbin/lighttpd"
+ # this greps the error-log which is set in the lighttpd.conf
+ # override it by setting it to a fix path
+DAEMON_ERRLOG=`sed -n \
+ -e '/server\.errorlog/p' ${DAEMON_CONF} \
+ | sed -e '/^ *#.*/d' \
+ | sed -e 's/^.*"\(.*\)".*$/\1/'`
+# DAEMON_ERRLOG="/var/log/lighttpd/error.log"
diff --git a/abs/mv-core/lighttpd/lighttpd.install b/abs/mv-core/lighttpd/lighttpd.install
new file mode 100644
index 0000000..1055e4b
--- /dev/null
+++ b/abs/mv-core/lighttpd/lighttpd.install
@@ -0,0 +1,80 @@
+post_install() {
+ # set post_install message
+ /bin/cat << EOM
+
+ --> This release marks a minor (NOT micro!) version change and is not 100%
+ --> compatible with former versions. Have a look at the new lighttpd.conf,
+ --> there are some changes in the index files syntax and nested conditions
+ --> are possible by now. Also please read the documentation in
+ --> /usr/share/lighttpd or on lighttpds's hompage: http://lighttpd.org
+
+ --> for the following OPTIONAL modules (when choosen from lighttpd.conf)
+ --> you will need the following dependencies:
+ mod_webdav : libxml2, sqlite3
+ mod_cml: libmemcache, lua
+ mod_trigger_b4_dl: libmemcache, gdbm
+ mod_auth.so: libldap
+ mod_mysql_vhost: libmysqlclient
+
+EOM
+
+ # import daemon configuration file to detect lighttpd.conf location
+ [ -f /etc/conf.d/lighttpd ] && . /etc/conf.d/lighttpd
+ # some automagic dealing with the users preferences as marked in
+ # /etc/lighttpd/lighttpd.conf
+ # a simple conf-file parser to isolate the user, logfiles etc.
+ FILES=`sed -n -e '/accesslog\.filename/p;/server\.errorlog/p' \
+ ${DAEMON_CONF} \
+ | sed -e 's/^.*"\(.*\)".*$/\1/'`
+ DAEMON_USER=`sed -n -e '/server\.username/p' ${DAEMON_CONF} \
+ | sed -e 's/^.*"\(.*\)".*$/\1/'`
+ DAEMON_GROUP=`sed -n -e '/server\.groupname/p' ${DAEMON_CONF} \
+ | sed -e 's/^.*"\(.*\)".*$/\1/'`
+ DIRECTORIES=`sed -n -e '/\.cache-dir/p;/\.server-root/p' ${DAEMON_CONF} \
+ | sed -e 's/^.*"\(.*\)".*$/\1/'`
+ DOCROOTDIRS=`sed -n -e '/server.\document-root/p' ${DAEMON_CONF} \
+ | sed -e 's/^.*"\(.*\)".*$/\1/'`
+ CHROOT=`sed -n -e '/server\.chroot/p' ${DAEMON_CONF} \
+ | sed -e '/^ *#.*$/d' \
+ | sed -e 's/^.*"\(.*\)".*$/\1/'`
+
+ touch /tmp/empty
+ # make sure logfiles exist
+ for FILE in $FILES; do
+ [ ! -f ${CHROOT}${FILE} ] && \
+ install -Dm644 -o $DAEMON_USER -g $DAEMON_GROUP /tmp/empty ${CHROOT}${FILE} && \
+ echo 'Creating file ' ${CHROOT}${FILE}
+ done
+ # make sure the lighttpd.user owns the cache dirs and vhost-root ...
+ for DIR in $DIRECTORIES; do
+ [ ! -d ${CHROOT}${DIR} ] && \
+ install -dm755 -o $DAEMON_USER -g $DAEMON_GROUP ${CHROOT}${DIR} && \
+ echo "Creating directory ${CHROOT}${DIR}" && \
+ chown $DAEMON_USER:$DAEMON_GROUP ${CHROOT}${DIR}
+ done
+ # ... and the document roots
+ for DIR in $DOCROOTDIRS; do
+ [ ! -d ${CHROOT}${DIR} ] && \
+ install -dm755 -o $DAEMON_USER -g $DAEMON_GROUP ${CHROOT}${DIR} && \
+ echo "Creating directory ${CHROOT}${DIR}"
+ chown -R $DAEMON_USER:$DAEMON_GROUP ${CHROOT}${DIR}
+ done
+ rm -f /tmp/empty
+}
+
+post_upgrade() {
+ cp /etc/lighttpd/lighttpd.conf /etc/lighttpd/lighttpd.conf.old
+ cp /etc/lighttpd/lighttpd.conf.pacnew /etc/lighttpd/lighttpd.conf
+ if [ -f /usr/bin/php ]
+then
+ cp /etc/lighttpd/lighttpd.conf /tmp
+ sed -e "s/# .* \"mod_fastcgi\",/\"mod_fastcgi\"\,/g" /tmp/lighttpd.conf > /etc/lighttpd/lighttpd.conf
+
+fi
+ post_install $1
+}
+
+op=$1
+shift
+$op $*
+# vim: ft=sh ts=2
diff --git a/abs/mv-core/lighttpd/lighttpd.logrotate.d b/abs/mv-core/lighttpd/lighttpd.logrotate.d
new file mode 100644
index 0000000..f31cb79
--- /dev/null
+++ b/abs/mv-core/lighttpd/lighttpd.logrotate.d
@@ -0,0 +1,8 @@
+/var/log/lighttpd/*log {
+ create 644 nobody nobody
+ compress
+ postrotate
+ /bin/kill -HUP `cat /var/run/lighttpd.pid 2>/dev/null` 2> /dev/null || true
+ endscript
+}
+
diff --git a/abs/mv-core/lighttpd/lighttpd.rc.d b/abs/mv-core/lighttpd/lighttpd.rc.d
new file mode 100644
index 0000000..245ac0a
--- /dev/null
+++ b/abs/mv-core/lighttpd/lighttpd.rc.d
@@ -0,0 +1,39 @@
+#!/bin/bash
+
+# source application-specific settings
+[ -f /etc/conf.d/lighttpd ] && . /etc/conf.d/lighttpd
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+PID=`pidof -o %PPID ${DAEMON_NAME}`
+case "$1" in
+ start)
+ stat_busy "Starting ${DAEMON_NAME}"
+ [ -z "$PID" ] && ${DAEMON_PATH} -f ${DAEMON_CONF} >> $DAEMON_ERRLOG 2>&1
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ add_daemon ${DAEMON_NAME}
+ stat_done
+ fi
+ ;;
+ stop)
+ stat_busy "Stopping ${DAEMON_NAME}"
+ [ ! -z "$PID" ] && kill $PID &>/dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ rm_daemon ${DAEMON_NAME}
+ stat_done
+ fi
+ ;;
+ restart)
+ $0 stop
+ sleep 1
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart}"
+esac
+exit 0
diff --git a/abs/mv-core/lighttpd/spawn-php.conf.d b/abs/mv-core/lighttpd/spawn-php.conf.d
new file mode 100644
index 0000000..4a2810d
--- /dev/null
+++ b/abs/mv-core/lighttpd/spawn-php.conf.d
@@ -0,0 +1,33 @@
+## ABSOLUTE path to the spawn-fcgi binary
+SPAWNFCGI="/usr/bin/spawn-fcgi"
+
+## ABSOLUTE path to the PHP binary
+FCGIPROGRAM="/usr/bin/php-cgi"
+
+## In preparation of a possible python/perl/etc compliance
+SPAWN_DAEMON_NAME="spawn-php"
+
+## bind to tcp-port on localhost
+FCGIPORT="1066"
+
+## If uncommented, socket will be used instead of port
+#FCGISOCKET="/tmp/php-fastcgi.socket"
+
+## number of PHP childs to spawn
+PHP_FCGI_CHILDREN=6
+
+## number of request server by a single php-process until is will be restarted
+PHP_FCGI_MAX_REQUESTS=1000
+
+## IP adresses where PHP should access server connections from
+FCGI_WEB_SERVER_ADDRS="127.0.0.1"
+
+# allowed environment variables sperated by spaces
+ALLOWED_ENV="ORACLE_HOME PATH USER"
+
+## if the daemon script is run as root switch to the following user
+USERID=nobody
+GROUPID=nobody
+
+## cage the php process to the following dir (chrootdir)
+#CHROOTDIR="/home/lighttpd/html"
diff --git a/abs/mv-core/lighttpd/spawn-php.rc.d b/abs/mv-core/lighttpd/spawn-php.rc.d
new file mode 100755
index 0000000..cbda262
--- /dev/null
+++ b/abs/mv-core/lighttpd/spawn-php.rc.d
@@ -0,0 +1,67 @@
+#!/bin/bash
+
+# source application-specific settings
+[ -f /etc/conf.d/spawn-php ] && . /etc/conf.d/spawn-php
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+
+PID=`pidof -o %PPID ${FCGIPROGRAM}`
+case "$1" in
+ start)
+ stat_busy "Starting ${SPAWN_DAEMON_NAME}"
+ if [ -z "$PID" ]; then
+ ################## no config below this line
+ if test x$PHP_FCGI_CHILDREN = x; then
+ PHP_FCGI_CHILDREN=5
+ fi
+ export PHP_FCGI_MAX_REQUESTS
+ export FCGI_WEB_SERVER_ADDRS
+
+ ALLOWED_ENV="$ALLOWED_ENV PHP_FCGI_MAX_REQUESTS FCGI_WEB_SERVER_ADDRS"
+
+ # negotiate the parameters for the php-cgi spawn program
+ EX="$SPAWNFCGI -f $FCGIPROGRAM -C $PHP_FCGI_CHILDREN"
+ if [ -z "$FCGISOCKET" ]; then
+ EX="$EX -p $FCGIPORT"
+ else
+ EX="$EX -s $FCGISOCKET"
+ fi
+ if test x$UID = x0; then
+ EX="$EX -u $USERID -g $GROUPID"
+ fi
+ if [ ! -z "$CHROOTDIR" ]; then
+ EX="$EX -c $CHROOTDIR"
+ fi
+
+ # copy the allowed environment variables
+ E=
+ for i in $ALLOWED_ENV; do
+ E="$E $i=${!i}"
+ done
+ # clean environment and set up a new one
+ env - $E $EX > /dev/null
+ add_daemon ${SPAWN_DAEMON_NAME}
+ stat_done
+ fi
+ ;;
+ stop)
+ stat_busy "Stopping ${SPAWN_DAEMON_NAME}"
+ if [ ! -z "$PID" ]; then
+ killall ${FCGIPROGRAM}
+ rm_daemon ${SPAWN_DAEMON_NAME}
+ stat_done
+ fi
+ ;;
+ restart)
+ $0 stop
+ sleep 2
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart}"
+esac
+exit 0
+
+
diff --git a/abs/mv-core/lighttpd/ssl_fix.diff b/abs/mv-core/lighttpd/ssl_fix.diff
new file mode 100644
index 0000000..7031a48
--- /dev/null
+++ b/abs/mv-core/lighttpd/ssl_fix.diff
@@ -0,0 +1,10 @@
+--- lighttpd-1.3.13/src/connections.c 2005-03-03 15:36:51.000000000 -0800
++++ lighttpd-1.3.13fix/src/connections.c 2005-05-12 02:33:37.124740872 -0700
+@@ -1141,6 +1141,7 @@
+ return NULL;
+ } else {
+ SSL_set_accept_state(con->ssl);
++ con->conf.is_ssl=1;
+ }
+
+ if (1 != (SSL_set_fd(con->ssl, cnt))) {
diff --git a/abs/mv-core/lighttpd/tweakconf.vim b/abs/mv-core/lighttpd/tweakconf.vim
new file mode 100644
index 0000000..7e55ee3
--- /dev/null
+++ b/abs/mv-core/lighttpd/tweakconf.vim
@@ -0,0 +1,22 @@
+%s/\/www\/logs\//\/var\/log\/lighttpd\/
+%s/lighttpd\.error/error/
+%s/\/www\/pages\//\/home\/lighttpd\/html\//
+%s/#server\.pid\-file/server.pid-file/
+%s/\/tmp\/lighttpd\/cache\/compress\//\/home\/lighttpd\/cache\/
+%s/^#server\.username.*$/server.username = "nobody"/
+%s/^#server\.groupname.*$/server.groupname = "nobody"/
+%s/\/usr\/local\/bin\/php/\/usr\/bin\/php-cgi/
+%s/\(vhost\.server-root.*=\).*$/\1 "\/home\/lighttpd\/vhosts\/"/
+/SSL engine/,/pem/d
+i
+#### SSL engine
+#$SERVER["socket"] == "0.0.0.0:443" {
+# ssl.engine = "enable"
+# ssl.pemfile = "/home/lighttpd/ssl/server.pem"
+# server.errorlog = "/var/log/lighttpd/error-ssl.log"
+# accesslog.filename = "/var/log/lighttpd/access-ssl.log"
+# server.document-root = "/home/lighttpd/html-ssl"
+#}
+.
+w
+q
diff --git a/abs/mv-core/local-website/PKGBUILD b/abs/mv-core/local-website/PKGBUILD
new file mode 100755
index 0000000..5fb61f6
--- /dev/null
+++ b/abs/mv-core/local-website/PKGBUILD
@@ -0,0 +1,22 @@
+pkgname=local-website
+pkgver=3
+pkgrel=75
+pkgdesc="Local website for MythVantage "
+arch=(i686 x86_64)
+#depends=('lighttpd')
+depends=('lighttpd' 'php' 'fcgi' 'python' )
+source=()
+
+
+build() {
+ cd $startdir/src/
+
+ mkdir -p $startdir/pkg/data/srv/httpd/htdocs
+ cp -rp $startdir/contents/* $startdir/pkg/data/srv/httpd/htdocs
+ chmod -R 755 $startdir/pkg/data/srv/httpd/htdocs
+ cd $startdir
+ mkdir -p $startdir/pkg/data/srv/httpd/
+ cp -rp cgi $startdir/pkg/data/srv/httpd/
+
+}
+
diff --git a/abs/mv-core/local-website/cgi/beclear.cgi b/abs/mv-core/local-website/cgi/beclear.cgi
new file mode 100755
index 0000000..40c0cec
--- /dev/null
+++ b/abs/mv-core/local-website/cgi/beclear.cgi
@@ -0,0 +1,4 @@
+#!/bin/bash
+/usr/local/bin/mythbackend --clearcache
+MESSAGE="settings cache is cleared "
+#/usr/bin/notify.py SYS "$MESSAGE" 2>/dev/null
diff --git a/abs/mv-core/local-website/cgi/bestop.cgi b/abs/mv-core/local-website/cgi/bestop.cgi
new file mode 100755
index 0000000..e45e74d
--- /dev/null
+++ b/abs/mv-core/local-website/cgi/bestop.cgi
@@ -0,0 +1,6 @@
+#!/bin/bash
+sudo /sbin/sv stop mythbackend > /dev/null
+MESSAGE="`hostname` B.E. stopped"
+
+#echo $MESSAGE
+/usr/bin/notify.py NFO "$MESSAGE" 2>/dev/null
diff --git a/abs/mv-core/local-website/cgi/diskless.py b/abs/mv-core/local-website/cgi/diskless.py
new file mode 100755
index 0000000..d8d960b
--- /dev/null
+++ b/abs/mv-core/local-website/cgi/diskless.py
@@ -0,0 +1,11 @@
+#!/usr/bin/python
+import cgi
+import os
+#http://192.168.1.200:1337/diskless.py?HOSTNAME=Envynetfe&MAC=00:0C:29:2D:08:82
+
+The_Form = cgi.FieldStorage()
+print "name:" + The_Form["HOSTNAME"].value
+print "mac:" + The_Form["MAC"].value
+cmd="sudo /usr/MythVantage/bin/build_diskless.sh " + The_Form["HOSTNAME"].value + " " + The_Form["MAC"].value
+print cmd
+os.popen(cmd + " >/dev/null 2>&1 &" )
diff --git a/abs/mv-core/local-website/cgi/serverkey.cgi b/abs/mv-core/local-website/cgi/serverkey.cgi
new file mode 100755
index 0000000..ee54480
--- /dev/null
+++ b/abs/mv-core/local-website/cgi/serverkey.cgi
@@ -0,0 +1,3 @@
+#!/bin/bash
+#cat /data/srv/httpd/dsa.pub
+cat /data/srv/.nobody_ssh/id_dsa.pub
diff --git a/abs/mv-core/local-website/contents/calllog.py b/abs/mv-core/local-website/contents/calllog.py
new file mode 100755
index 0000000..a96813e
--- /dev/null
+++ b/abs/mv-core/local-website/contents/calllog.py
@@ -0,0 +1,66 @@
+#!/usr/bin/python
+# import MySQL module
+
+import MySQLdb
+import sys
+import getopt
+import socket
+
+
+def main(argv):
+ grandtotal=0
+ grandtotal_current=0
+ db = MySQLdb.connect(host="localhost", user="mythtv", passwd="mythtv", db="ncid")
+ # create a cursor
+ cursor = db.cursor()
+ # execute SQL statement
+ cursor.execute("select name,number,count(number) as '# calls' from cid group by number,name order by '# calls' DESC limit 20;")
+ result = cursor.fetchall()
+
+
+#Top shows
+ #print '<div id="content"> <p></p>'
+ print '<div> <p></p>'
+ print '<table class="calllog">'
+ print "Top 20 callers"
+ searchstring='''<td> <a href="http://www.google.com/search?q=%s" > %s </a> </td> '''
+ cursor.execute("select name,number,count(number) as '# calls' from cid group by number,name order by '# calls' DESC limit 20;")
+ result = cursor.fetchall()
+ for row in result:
+ print " <tr>"
+ #print " <td>",row[0],"</td>"
+ print searchstring % (row[0], row [0])
+ print " <td>",row[2],"</td>"
+ #print " <td>",row[1],"</td>"
+ print searchstring % (row[1], row [1])
+ print " </tr>"
+ #print "%40s %26s %10s" %(row[0],row[2],row[1])
+ print "</table>"
+ print "</div>"
+#Top categorys
+
+
+ print '<br>'
+ print '<br>'
+ #print '<div id="content"> <p></p>'
+ print '<div> <p></p>'
+ print '<table class="calllog">'
+ print "Last 20 calls"
+ print '<br>'
+ cursor.execute("select date,time,name,number from cid order by date(ts) DESC ,time DESC limit 20 ;" )
+ result = cursor.fetchall()
+ for row in result:
+ print " <tr>"
+ print " <td> %s </td>" %(row[0])
+ print " <td>",row[1],"</td>"
+ #print " <td>",row[2],"</td>"
+ print searchstring % (row[2], row [2])
+ #print " <td>",row[3],"</td>"
+ print searchstring % (row[3], row [3])
+ print " </tr>"
+# print "%26s %26s %26s %26s " %(row[0],row[1],row[2],row[3])
+ print "</table>"
+ print "</div>"
+
+if __name__ == "__main__":
+ main(sys.argv[1:])
diff --git a/abs/mv-core/local-website/contents/calllog.shtml b/abs/mv-core/local-website/contents/calllog.shtml
new file mode 100755
index 0000000..ddf3d88
--- /dev/null
+++ b/abs/mv-core/local-website/contents/calllog.shtml
@@ -0,0 +1,20 @@
+<html>
+<head>
+<style type="text/css">@import "/frame.css";</style>
+</head>
+
+<body>
+<div id="mainContainer">
+<!-- <div id="header"><p></p></div>
+ <div id="content">
+ <p></p>-->
+
+ <!--#exec cmd="/data/srv/httpd/htdocs/calllog.py" -->
+
+
+</br>
+</br>
+
+</body>
+</html>
+
diff --git a/abs/mv-core/local-website/contents/count.py b/abs/mv-core/local-website/contents/count.py
new file mode 100755
index 0000000..6d813c1
--- /dev/null
+++ b/abs/mv-core/local-website/contents/count.py
@@ -0,0 +1,89 @@
+#!/usr/bin/python
+# import MySQL module
+
+import MySQLdb
+import sys
+import getopt
+import socket
+
+
+def main(argv):
+ grandtotal=0
+ grandtotal_current=0
+ db = MySQLdb.connect(host="localhost", user="mythtv", passwd="mythtv", db="mythconverg")
+ # create a cursor
+ cursor = db.cursor()
+ # execute SQL statement
+ cursor.execute("SELECT unix_timestamp(starttime),unix_timestamp(endtime),title FROM oldrecorded ORDER by starttime;")
+ result = cursor.fetchall()
+
+ for row in result:
+ # print row[0], row[1] ,row [2]
+ start=row[0]
+ end=row[1]
+ if ( end > start ):
+ total = (end - start) /60
+ grandtotal+=total
+ hours = grandtotal / 60.0
+ days = hours / 24.0
+
+ cursor.execute("SELECT unix_timestamp(starttime),unix_timestamp(endtime),title FROM recorded where not (recgroup=(%s)) ORDER by starttime",("LiveTV"))
+ result_current = cursor.fetchall()
+ for row in result_current:
+ start=row[0]
+ end=row[1]
+ if ( end > start ):
+ total = (end - start) /60
+ grandtotal_current+=total
+ hours_current = grandtotal_current / 60.0
+ days_current = hours_current / 24.0
+
+ print '<div id="header">'
+
+ print "<table>"
+ print " <tr>"
+ print " <td> Currently there are " , len(result_current) , " recorded programs. With a viewing time of %.2f days or %.2f hours. </td>" %(days_current,hours_current)
+ print " </tr>"
+ print "</table>"
+ print "</br> "
+
+ print "<table>"
+ print " <tr>"
+ print " <td> Overall there have been " , len(result) , "shows recorded. With viewing time of %.2f days or %.2f hours </td>"%(days,hours)
+ print " </tr>"
+ print "</table>"
+ print '</div>'
+ print "</br> </br> "
+#Top shows
+ print '<div id="content"> <p></p>'
+ print '<table class="sample">'
+ print "Top 20 Shows"
+ cursor.execute("select title,count(title),category as numtitle from oldrecorded group by title having (COUNT(title) > 1) order by (COUNT(title)) DESC limit 20;" )
+ result = cursor.fetchall()
+ for row in result:
+ print " <tr>"
+ print " <td>",row[0],"</td>"
+ print " <td>",row[2],"</td>"
+ print " <td>",row[1],"</td>"
+ print " </tr>"
+ # print "%40s %26s %10s" %(row[0],row[2],row[1])
+ print "</table>"
+ print "</div>"
+#Top categorys
+
+ print '<div id="column"></div>'
+ print '<table class="sample">'
+ print "Top 20 Categories"
+ cursor.execute("select category,count(category) as numtitle from oldrecorded group by category having (COUNT(category) > 1) order by (COUNT(category)) DESC limit 20; " )
+ result = cursor.fetchall()
+ for row in result:
+ print " <tr>"
+ print " <td>",row[0],"</td>"
+ print " <td>",row[1],"</td>"
+ print " </tr>"
+ #print "%16s %16s" %(row[0],row[1])
+ print "</table>"
+ print "</div>"
+
+if __name__ == "__main__":
+ main(sys.argv[1:]) \ No newline at end of file
diff --git a/abs/mv-core/local-website/contents/docs.html b/abs/mv-core/local-website/contents/docs.html
new file mode 100755
index 0000000..c4a934b
--- /dev/null
+++ b/abs/mv-core/local-website/contents/docs.html
@@ -0,0 +1,65 @@
+<html>
+<head>
+<style type="text/css">@import "frame.css";</style>
+</head>
+
+<body>
+Package Management
+</br>
+
+<div id="navcontainer">
+<ul id="navlist">
+ <li>pacman -Sy to refresh pkg database</li>
+ <li>pacman -Ss $keyword to search pkg database</li>
+ <li>pacman -Su to update all install packages</li>
+ <li>pacman -S $pkg to update one pkg</li>
+ <li>pacman -h for a list of pacman operations .</li>
+ <li>pacman -S --help for a full list of options associated with the -S command.</li>
+</ul>
+</div>
+<br>
+Starting and stopping services.
+<br>
+
+<div id="navcontainer">
+<ul id="navlist">
+ <li>sv {stop,start,restart} frontend. This will start/stop the entire X proccess that runs mythfrontend</li>
+ <li>sv {stop,start,restart} mysql</li>
+ <li>sv {stop,start,restart} mythbackend</li>
+ <li>sv {stop,start,restart} lircd</li>
+</ul>
+<br>
+</div>
+<div id="navcontainer">
+ Other Random notes
+<br>
+<ul id="navlist">
+ <li>The root password is blank. You will not be able to remotely access this account until the password is set.</li>
+ <li>The mythtv account is locked, reset the password if you wish login with this account.</li>
+ <li>The mythtv account has full sudo privileges. </li>
+ <li>All access from public ip address are blocked. Edit /etc/hosts.deny /etc/hosts.allow to change this.</li>
+ <li>Mythfilldatabase will automaticlly run when mythbackend is started. If the last attempt was successful then it will skip this step and mythfilldatabase will run normally.</li>
+ <li>To keep a host from showing up in the network map, add it to:
+ /data/srv/hobbit/server/ext/ignoreclient.py
+ </li>
+ <li>remove "func" from bb-hosts to stop hobbit from running a func check on it </li>
+ <li>if /tmp/nomfe is present then mythfrontend will not restart </li>
+ <li>if /tmp/debug is present then mythfrontend and mythbackend will run with gdb. Debug packages will need to be installed for this to be useful </li>
+
+ <li>create_master.sh will copy the contents of the cdrive to a "Gold" image for network/diskless installation. Dhcp server must be enabled for netboot to work, please turn off any other dhcp servers on your network. </li>
+ <li>On the misc screen the nfsmap section will accept entries pointing to different servers. For instance 192.168.1.5:nfsmap will pull the nfsmap file from the ip 192.168.1.5 (hostnames may also be used) </li>
+ <li>adding pkg names to /etc/pkgname.blacklist will stop MythVantage from autoinstalling a package.</li>
+</div>
+<br>
+<div id="navcontainer">
+ Menu Navigation
+<br>
+
+<ul id="navlist">
+ <li> <A HREF="images/classic-menugraph.png">Classic menu</A> </li>
+ <li> <A HREF="images/menu_diagram_color.png">Standard menu</A> </li>
+ <li> <A HREF="images/dvr_menugraph.png">DVR menu</A> </li>
+
+</body>
+</html>
+
diff --git a/abs/mv-core/local-website/contents/error-handler.html b/abs/mv-core/local-website/contents/error-handler.html
new file mode 100755
index 0000000..49e406f
--- /dev/null
+++ b/abs/mv-core/local-website/contents/error-handler.html
@@ -0,0 +1,9 @@
+<html>
+<head>
+<style type="text/css">@import "/frame.css";</style>
+</head>
+
+<body>
+Module or page not found
+</body>
+</html> \ No newline at end of file
diff --git a/abs/mv-core/local-website/contents/error/hobbit.html b/abs/mv-core/local-website/contents/error/hobbit.html
new file mode 100755
index 0000000..18450f2
--- /dev/null
+++ b/abs/mv-core/local-website/contents/error/hobbit.html
@@ -0,0 +1,11 @@
+<html>
+<head>
+<style type="text/css">@import "/frame.css";</style>
+</head>
+
+<body>
+Hobbit does not appear to be installed.
+</br>
+Please visit the MythVantage advanced screen to enable Hobbit.
+</body>
+</html>
diff --git a/abs/mv-core/local-website/contents/error/mythweb.html b/abs/mv-core/local-website/contents/error/mythweb.html
new file mode 100755
index 0000000..fe76a9a
--- /dev/null
+++ b/abs/mv-core/local-website/contents/error/mythweb.html
@@ -0,0 +1,16 @@
+<html>
+<head>
+<style type="text/css">@import "/frame.css";</style>
+</head>
+
+<body>
+MythWeb does not appear to be installed.
+</br>
+To install MythWeb either
+</br>
+1) Visit the MythVantage advanced screen to enable mythweb. </br>
+2) type "pacman -S mythweb-release-fixes" at the console.
+
+
+</body>
+</html>
diff --git a/abs/mv-core/local-website/contents/error/phpadmin.html b/abs/mv-core/local-website/contents/error/phpadmin.html
new file mode 100755
index 0000000..dbdd4d3
--- /dev/null
+++ b/abs/mv-core/local-website/contents/error/phpadmin.html
@@ -0,0 +1,28 @@
+<html>
+<head>
+<style type="text/css">@import "/frame.css";</style>
+</head>
+
+<body>
+phpMyAdmin is a tool written in PHP intended to handle the administration of MySQL over the Web.
+</br>
+Currently it's not installed,but if you wish to install phpmyadmin, type the following at a command prompt
+</br>
+</br>
+
+pacman -S phpmyadmin
+
+</br>
+</br>
+PHP must be enabled for phpMyAdmin.
+</br>
+The easiest way to enable php is to enable Mythweb under the advanced settings for MythVantage.
+</br>
+</br>
+</br>
+
+Please be carefull, phpMyAdmin is a powerful tool and can easily mess with your settings.
+
+
+</body>
+</html>
diff --git a/abs/mv-core/local-website/contents/error/status-404.html b/abs/mv-core/local-website/contents/error/status-404.html
new file mode 100755
index 0000000..49e406f
--- /dev/null
+++ b/abs/mv-core/local-website/contents/error/status-404.html
@@ -0,0 +1,9 @@
+<html>
+<head>
+<style type="text/css">@import "/frame.css";</style>
+</head>
+
+<body>
+Module or page not found
+</body>
+</html> \ No newline at end of file
diff --git a/abs/mv-core/local-website/contents/frame.css b/abs/mv-core/local-website/contents/frame.css
new file mode 100755
index 0000000..3ade4ee
--- /dev/null
+++ b/abs/mv-core/local-website/contents/frame.css
@@ -0,0 +1,176 @@
+* /* Our "universal rule" */
+{
+ padding: 0;
+ margin: 0;
+ border: 0;
+}
+body {
+ background: url("page_background.jpg") repeat-y #9FA9B3;
+ margin: 10;
+ margin-left:40px;
+ padding: 10;
+ border: 10;
+ min-width: 770px;
+ font-family: Arial, Tahoma, Helvetica, sans-serif;
+ font-size: 11px;
+ color: #FFFFFF;
+ text-align: center;
+ font-size: 18px;
+ font-family: tahoma, verdana, geneva, arial, helvetica, sans-serif;
+
+
+}
+
+
+
+#mainContainer {
+ width: 770px;
+ margin: 0 auto; /* We are going to center this design */
+ text-align: left; /* Since we used text-align: center in the body to be sure some older IE versions are going to center our design, we now align the text left */
+}
+#header {
+ background: #000;
+ color: #fff;
+}
+#content {
+ float: left; /* Our content is going to be left aligned */
+ width: 320px; /* And it's going to have a 500px width */
+ /*background: #D9D9D9;*/
+ margin-left:60px;
+}
+#column {
+ float: right; /* Our column is going to be right aligned */
+ width: 320px; /* Our total width - content width is 260px */
+ /*background: #8A8AE6;*/
+}
+#footer {
+ clear: both; /* We have to clear our floats */
+ width: 760px; /* We need to set the width on the footer since it's outside the mainContainer, and therefor isn't controlled by it */
+ margin: 0 auto; /* We need to center the footer also */
+ background: black;
+ color: gold;
+ text-align: center;
+ font-size: 10px;
+}
+
+#navlist {
+ margin-left: 50;
+ padding-left: 0;
+ list-style-type: square;
+ text-align: left;
+}
+
+#navlist li {
+
+}
+#navlist a:link
+{
+ color: #fff;
+# background-color: #FDB14F;
+ text-decoration: underline ;
+
+
+}
+
+#navlist a:visited
+{
+# color: #FDB14F;
+ color: gold;
+ text-decoration: underline;
+}
+
+table.sample {
+ border-width: 4px;
+ border-spacing: 2px;
+ border-style: outset;
+ border-color: #808080;
+ border-collapse: separate;
+ width:300px;
+}
+
+table.sample td {
+ border-width: 1px;
+ padding: 1px;
+ border-style: inset;
+ border-color: #808080;
+ /*width:300px;*/
+ -moz-border-radius: ;
+}
+
+
+table.calllog {
+ border-width: 4px;
+ border-spacing: 2px;
+ border-style: outset;
+ border-color: #808080;
+ border-collapse: separate;
+ width:500px;
+}
+
+table.calllog td {
+ border-width: 1px;
+ padding: 1px;
+ border-style: inset;
+ border-color: #808080;
+ /*width:300px;*/
+ -moz-border-radius: ;
+}
+
+
+.n {
+ font-weight: normal;
+ text-align: left;
+ width: 250px;
+ color: white;
+}
+
+.s {
+ font-weight: normal;
+ text-align: left;
+ width: 150px;
+ color: white;
+ text-decoration: none;
+}
+
+.m {
+ font-weight: normal;
+ text-align: left;
+ width: 350px;
+ color: white;
+ text-decoration: none;
+}
+
+.t {
+ font-weight: normal;
+ text-align: left;
+ width: 350px;
+ color: white;
+ text-decoration: none;
+ visibility:hidden
+}
+
+
+a:link
+{
+ color: #fff;
+# background-color: #FDB14F;
+ text-decoration: underline ;
+
+ margin-left:10px;
+
+}
+
+a:visited
+{
+# color: #FDB14F;
+ color: gold;
+ text-decoration: underline;
+ margin-left:10px;
+}
+
+#submitbutton {
+ background-color: #010101;
+ font-size: 100%;
+ color: gold;
+ text-decoration: underline;margin-left:150px;
+ padding: 10px; font-weight: bold; }
diff --git a/abs/mv-core/local-website/contents/header.html b/abs/mv-core/local-website/contents/header.html
new file mode 100755
index 0000000..686cf78
--- /dev/null
+++ b/abs/mv-core/local-website/contents/header.html
@@ -0,0 +1,33 @@
+<html>
+<style type="text/css">@import "mv.css";</style>
+<head>
+
+<script type="text/javascript">
+function r()
+{
+ top.frames["content"].location.href = ( "http://" + parent.location.hostname + ":6544" ) ;
+
+}
+</script>
+</head>
+
+<BODY BGCOLOR=#000011>
+
+<div id='header'>
+ </div>
+
+<base target="content" />
+<div id="navcontainer">
+ <ul id="navlist">
+ <li id="active"><a href="home.shtml" TARGET="content" id="current">Home</a></li>
+ <li><a href="docs.html" >Documentation</a></li>
+ <li><a href="links.html" >Links</a></li>
+ <li><a href="webcal/" >Calendar</a></li>
+ <li><a href="hobbit" >Hobbit</a></li>
+ <li><a onClick=r() >MBE_Status</a></li>
+ <li><a href="mythweb/" >MythWeb</a></li>
+ <li><a href="phpMyAdmin/" >phpMyAdmin</a></li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/abs/mv-core/local-website/contents/header.jpg b/abs/mv-core/local-website/contents/header.jpg
new file mode 100755
index 0000000..3bf128e
--- /dev/null
+++ b/abs/mv-core/local-website/contents/header.jpg
Binary files differ
diff --git a/abs/mv-core/local-website/contents/home.shtml b/abs/mv-core/local-website/contents/home.shtml
new file mode 100755
index 0000000..593fa48
--- /dev/null
+++ b/abs/mv-core/local-website/contents/home.shtml
@@ -0,0 +1,23 @@
+<html>
+<head>
+<style type="text/css">@import "frame.css";</style>
+</head>
+
+<body>
+<div id="mainContainer">
+<!-- <div id="header"><p></p></div>
+ <div id="content">
+ <p></p>-->
+
+ <!--#exec cmd="/data/srv/httpd/htdocs/count.py" -->
+
+
+</br>
+</br>
+ <img src="/hobbit/gifs/network.png" >
+
+<div id="footer"><p>Thank you for choosing MythVantage</p></div>
+
+</body>
+</html>
+
diff --git a/abs/mv-core/local-website/contents/images/classic-menugraph.png b/abs/mv-core/local-website/contents/images/classic-menugraph.png
new file mode 100755
index 0000000..bedbd93
--- /dev/null
+++ b/abs/mv-core/local-website/contents/images/classic-menugraph.png
Binary files differ
diff --git a/abs/mv-core/local-website/contents/images/dvr_menugraph.png b/abs/mv-core/local-website/contents/images/dvr_menugraph.png
new file mode 100755
index 0000000..712ab36
--- /dev/null
+++ b/abs/mv-core/local-website/contents/images/dvr_menugraph.png
Binary files differ
diff --git a/abs/mv-core/local-website/contents/images/menu_diagram_color.png b/abs/mv-core/local-website/contents/images/menu_diagram_color.png
new file mode 100755
index 0000000..d364d94
--- /dev/null
+++ b/abs/mv-core/local-website/contents/images/menu_diagram_color.png
Binary files differ
diff --git a/abs/mv-core/local-website/contents/index.html b/abs/mv-core/local-website/contents/index.html
new file mode 100755
index 0000000..e77c22d
--- /dev/null
+++ b/abs/mv-core/local-website/contents/index.html
@@ -0,0 +1,14 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
+<html>
+ <head><title>MythVantage</title>
+ </head>
+ <frameset rows="170, 80%" frameborder="no" border="3" bordercolor="#000000">
+ <frame src="header.html" name="menuframe" />
+ <frame src="home.shtml" name="content" />
+ <noframes>
+ <body>
+ There is no frame support on your browser.
+ </body>
+ </noframes>
+ </frameset>
+ </html>
diff --git a/abs/mv-core/local-website/contents/links.html b/abs/mv-core/local-website/contents/links.html
new file mode 100755
index 0000000..1f0f34b
--- /dev/null
+++ b/abs/mv-core/local-website/contents/links.html
@@ -0,0 +1,26 @@
+<html>
+<head>
+<style type="text/css">@import "frame.css";</style>
+<script type="text/javascript">
+
+</head>
+</head>
+
+<body>
+Other links
+
+
+<div id="navcontainer">
+<ul id="navlist">
+ <li><a href="/logs/" >System log files</a> </li>
+ <li><a href="/calllog.shtml" >Phone call log</a> </li>
+ <li><a href="/mvpmc.shtml" >Media MVP setup</a> (dhcp server must be enabled) </li>
+<!-- <li><a href="/ipodfeed/feed.php" >Subscribe to ipodfeed</a> (mythweb must be enabled for this to work)</li> -->
+ <li><a href="http://www.mythvantage.com" >mythvantage.com</a></li>
+ <li><a href="http://www.mythtv.com" >mythtv.com</a></li>
+</ul>
+</div>
+
+
+</body>
+</html>
diff --git a/abs/mv-core/local-website/contents/mv.css b/abs/mv-core/local-website/contents/mv.css
new file mode 100755
index 0000000..70f0764
--- /dev/null
+++ b/abs/mv-core/local-website/contents/mv.css
@@ -0,0 +1,82 @@
+#header {
+ // width: 820px;
+ position: relative;
+ height: 120px;
+ background: #000011 url(header.jpg) no-repeat center top;
+// background:black;
+ padding: 0;
+ font-size: 14px;
+ color: #FFF;
+}
+
+#header h1#logo-text {
+ // position: absolute;
+ margin: 0; padding: 0;
+ font: bolder 3.3em 'Trebuchet MS', Arial, Sans-serif;
+ letter-spacing: -2px;
+ color: #FFFFFF;
+ text-transform: none;
+ text-align: center;
+ /* change the values of top and left to adjust the position of the logo*/
+ top: 28px; left: 50px;
+}
+
+#content
+{
+ color: #FFFFFF;
+ text-transform: none;
+ text-align: center;
+
+}
+
+#navcontainer
+{
+ width: 100%;
+ float: left;
+ background-color: black;
+}
+
+#navcontainer ul { padding: 0; }
+#navcontainer ul li { display: inline; }
+
+#navcontainer ul
+{
+ margin: 0;
+ padding: 0 0 0 7%;
+ color: #FFFFFF;
+ font-family: tahoma, verdana, geneva, arial, helvetica, sans-serif;
+ //font-size: .65em;
+ letter-spacing: 2px;
+ font-weight: bold;
+ float: right;
+background:black;
+}
+
+
+#navcontainer ul li a
+{
+ padding: 0.2em 12px;
+ background-color: black;
+ color: #FFFFFF;
+ text-decoration: none;
+ float: left;
+ //border-right: 1px solid #94B473;
+}
+
+#navcontainer ul li a:hover
+{
+ background-color: #ECECEC;
+ color: #333;
+}
+
+#navlist li a:hover, #navlist li a:active
+{
+ color: #FFFFFF;
+ text-decoration: none;
+ background:black;
+ text-align: right;
+ font-family: tahoma, verdana, geneva, arial, helvetica, sans-serif;
+
+}
+
+
diff --git a/abs/mv-core/local-website/contents/mvp_process.py b/abs/mv-core/local-website/contents/mvp_process.py
new file mode 100755
index 0000000..b01ed8b
--- /dev/null
+++ b/abs/mv-core/local-website/contents/mvp_process.py
@@ -0,0 +1,195 @@
+#!/usr/bin/python
+import sys
+import cgi
+import os
+import socket
+import time
+import shutil
+try:
+ import cgitb
+ cgitb.enable()
+except ImportError:
+ sys.stderr = sys.stdout
+def cgiprint(inline=''):
+ sys.stdout.write(inline)
+ sys.stdout.write('\r\n')
+ sys.stdout.flush()
+contentheader = 'Content-Type: text/html'
+
+thepage = '''<html><head>
+<title>%s</title>
+</head><body>
+%s
+</body></html>
+'''
+h1 = '<h1>%s</h1>'
+
+def getform(theform, valuelist, notpresent='', nolist=False):
+ """
+ This function, given a CGI form as a
+ FieldStorage instance, extracts the
+ data from it, based on valuelist
+ passed in. Any non-present values are
+ set to '' - although this can be
+ changed. (e.g. to return None so you
+ can test for missing keywords - where
+ '' is a valid answer but to have the
+ field missing isn't.) It also takes a
+ keyword argument 'nolist'. If this is
+ True list values only return their
+ first value.
+ """
+ data = {}
+ for field in valuelist:
+
+
+ if not theform.has_key(field):
+ # if the field is not present (or was empty)
+ data[field] = notpresent
+ else:
+ # the field is present
+ data[field] = theform.getlist(field)
+
+# print type(theform[field])
+ return data
+
+def getall(theform, nolist=False):
+ """
+ Passed a form (cgi.FieldStorage
+ instance) return *all* the values.
+ This doesn't take into account
+ multipart form data (file uploads).
+ It also takes a keyword argument
+ 'nolist'. If this is True list values
+ only return their first value.
+ """
+ data = {}
+ for field in theform.keys():
+ # we can't just iterate over it, but must use the keys() method
+ if type(theform[field]) == type([]):
+ if not nolist:
+ data[field] = theform.getlist(field)
+
+ else:
+ data[field] = theform.getfirst(field)
+ else:
+ data[field] = theform[field].value
+
+
+ return data
+
+def isblank(indict):
+ """
+ Passed an indict of values it checks
+ if any of the values are set. Returns
+ True if the indict is empty, else
+ returns False. I use it on the a form
+ processed with getform to tell if my
+ CGI has been activated without any
+ form values.
+ """
+ for key in indict.keys():
+ if indict[key]:
+ return False
+ return True
+
+
+def update_mvp_list(maclist):
+ outfile = open("/etc/dnsmasq.mvpmc.conf","w")
+ mvpline="dhcp-boot=net:mvp,dongle.bin"
+ mvpmacline='dhcp-host=net:mvp,%s'
+ results="The following media mvp devices have been added:"
+ results+='</br>'
+ havemvp = "false"
+ #print maclist
+ for i in range(len(maclist)):
+ if maclist[i] != '':
+# print mvpmacline % maclist[i]
+ outfile.write(mvpmacline % maclist[i] + '\n' )
+ havemvp="true"
+ results+=maclist[i]
+ results+='</br>'
+ if havemvp == "true":
+# print mvpline
+ outfile.write(mvpline + '\n' )
+ outfile.flush
+ outfile.close
+ #time.sleep(5)
+
+ else:
+ outfile.close
+ return results
+
+
+mainpage = '''
+ <html><head>
+ <style type="text/css">@import "/frame.css";</style>
+ <!--<meta http-equiv="refresh" content="6">-->
+ <title>Receiving a Form</title>
+ </head><body>%s</body></html>'''
+
+error = '''
+
+ <h2>Removed all media mvp devices</h2>'''
+
+result = '''
+ <h1>%s</h1>
+'''
+possible_parameters = ['activemvp', 'othermac','hiddenparam']
+
+if __name__ == '__main__':
+ cgiprint(contentheader) # content header
+ cgiprint() # finish headers with blank line
+
+ theform = cgi.FieldStorage()
+ #print theform
+ formdict = getform(theform, possible_parameters)
+ #print possible_parameters
+ #print formdict
+ oldurl = '/mvpmc.shtml'
+ if isblank(formdict):
+ body = error
+ all_active=[]
+ else:
+ all_active=[]
+ activemac_checkbox = formdict['activemvp']
+ for i in range(len(activemac_checkbox)):
+ active_string=activemac_checkbox[i]
+ active_string=active_string.strip()
+ all_active.append(active_string)
+ body = result % ("MVP mac address")
+
+
+
+ print mainpage % body
+ # mylogfile=update_mvp_list(all_active)
+
+
+ box='''
+ <div style="border: 1px solid #aaa; width:600px; height:500px; overflow:auto; color:#FFF;text-align:left;">
+ <code id="box" style="display: block; height: 500px; width: 600px; overflow: auto;">
+ '''
+
+ endbox='''
+ </code>
+ </div>
+ '''
+ javascript='''
+ <script type="text/javascript">
+ var objDiv = document.getElementById("box");
+ objDiv.scrollTop = objDiv.scrollHeight;
+ </script>
+ '''
+ if all_active != []:
+ mylogfile=update_mvp_list(all_active)
+ command="sudo /sbin/sv stop dnsmasq"
+ os.system(command)
+ command="sudo /sbin/sv start dnsmasq"
+ os.system(command)
+ print box
+ print mylogfile
+ print endbox
+ print '<a href=', oldurl, ' > Back </a> '
+ #print oldurl
+ print javascript
+
diff --git a/abs/mv-core/local-website/contents/mvp_select.py b/abs/mv-core/local-website/contents/mvp_select.py
new file mode 100755
index 0000000..8283d68
--- /dev/null
+++ b/abs/mv-core/local-website/contents/mvp_select.py
@@ -0,0 +1,146 @@
+#!/usr/bin/python
+#
+
+import urllib2
+import string
+import sys
+import time
+import datetime
+import socket
+
+def read_accepted():
+
+ global dhcp_accepted
+ dhcp_accepted = []
+ try:
+ infile = open('/tmp/dhcp.leases', 'r')
+ except(IOError), e:
+ print "couldn't open accepted"
+ else:
+ filelist = infile.readlines()
+ infile.close()
+ for item in filelist:
+ item=item.strip()
+ macaddress=item.split(" ")[1]
+ if macaddress not in dhcp_accepted:
+ dhcp_accepted.append(macaddress)
+ #print macaddress
+
+def read_offered():
+ global dhcp_offered
+ dhcp_offered = []
+ try:
+ today = datetime.date.today()
+
+ host = socket.gethostname()
+ filename='/var/log/'
+ filename+=str(today)
+ filename+='/'
+ filename+=host
+ filename+='/dnsmasq'
+ infile = open(filename, 'r')
+ except(IOError), e:
+ print "couldn't open offered"
+ else:
+ filelist = infile.readlines()
+ infile.close()
+ for item in filelist:
+ item=item.strip()
+ if item.find("DHCPOFFER") != -1 :
+ macaddress=item.rpartition(" ")[2]
+ if macaddress not in dhcp_offered:
+ dhcp_offered.append(macaddress)
+ #print macaddress
+
+
+
+def read_current():
+ global dhcp_current
+ dhcp_current = []
+ try:
+ infile = open('/etc/dnsmasq.mvpmc.conf', 'r')
+ except(IOError), e:
+ print "couldn't open current"
+ else:
+ filelist = infile.readlines()
+ infile.close()
+ for item in filelist:
+ item=item.strip()
+ if item.find("dhcp-host") != -1 :
+ macaddress=item.partition(",")[2]
+
+ if macaddress not in dhcp_current :
+ dhcp_current.append(macaddress)
+ # print macaddress
+
+
+
+
+
+
+
+def make_html():
+ global dhcp_accepted
+ global dhcp_offered
+ buttonform_top='''
+ <div class="content" style="solid #aaa; width:500px; height:300px; overflow:auto; color:#FFF;text-align:left;">
+ <form action="/mvp_process.py" method="get">
+ '''
+
+
+ buttonform_bottom='''
+ Mac Address:
+ <input type="text" name="activemvp">
+
+ </br>
+ <input id="submitbutton" type="submit" />
+ </form>
+ </div>
+ '''
+ checkboxline = '''
+ <input type="checkbox" name="activemvp" value="%s" %s /> %s <br />
+ '''
+ print '<br />'
+ da = set(dhcp_accepted)
+ dof = set(dhcp_offered)
+ dc = set(dhcp_current)
+ possible_mac= dof -dc
+ #possible_mac= dof -da - dc
+
+ print buttonform_top
+ for mac in dhcp_current:
+ print checkboxline % (mac ,' checked="yes"' , mac)
+ for mac in possible_mac:
+ print checkboxline % (mac , " " ,mac)
+ print buttonform_bottom
+
+
+#-------------------
+global dhcp_accepted
+global dhcp_offered
+global dhcp_current
+
+
+
+
+read_offered()
+#print "--"
+#print '</br>'
+read_accepted()
+#print "--"
+#print '</br>'
+read_current()
+#print "--"
+#print '</br>'
+
+
+
+#possible_mac= (dof - da)
+#possible_mac = dof
+#print "should be unchecked:"
+#print possible_mac
+
+
+make_html()
+
+
diff --git a/abs/mv-core/local-website/contents/mvpmc.shtml b/abs/mv-core/local-website/contents/mvpmc.shtml
new file mode 100755
index 0000000..edc27d4
--- /dev/null
+++ b/abs/mv-core/local-website/contents/mvpmc.shtml
@@ -0,0 +1,21 @@
+<html>
+<head>
+<style type="text/css">@import "/frame.css";</style>
+</head>
+<h1>Media MVP page</h1>
+<body>
+<div id="mainContainer">
+<!-- <div id="header"><p></p></div>
+ <div id="content">
+ <p></p>-->
+
+ <!--#exec cmd="/data/srv/httpd/htdocs/mvp_select.py" -->
+
+
+</br>
+</br>
+<div id="footer"><p>Thank you for choosing MythVantage</p></div>
+
+</body>
+</html>
+
diff --git a/abs/mv-core/local-website/contents/page_background.jpg b/abs/mv-core/local-website/contents/page_background.jpg
new file mode 100644
index 0000000..4819c9a
--- /dev/null
+++ b/abs/mv-core/local-website/contents/page_background.jpg
Binary files differ
diff --git a/abs/mv-core/local-website/contents/process.py b/abs/mv-core/local-website/contents/process.py
new file mode 100755
index 0000000..d74fb47
--- /dev/null
+++ b/abs/mv-core/local-website/contents/process.py
@@ -0,0 +1,337 @@
+#!/usr/bin/python
+import sys
+import cgi
+import os
+import socket
+import time
+try:
+ import cgitb
+ cgitb.enable()
+except ImportError:
+ sys.stderr = sys.stdout
+def cgiprint(inline=''):
+ sys.stdout.write(inline)
+ sys.stdout.write('\r\n')
+ sys.stdout.flush()
+contentheader = 'Content-Type: text/html'
+
+thepage = '''<html><head>
+<title>%s</title>
+</head><body>
+%s
+</body></html>
+'''
+h1 = '<h1>%s</h1>'
+
+def getform(theform, valuelist, notpresent='', nolist=False):
+ """
+ This function, given a CGI form as a
+ FieldStorage instance, extracts the
+ data from it, based on valuelist
+ passed in. Any non-present values are
+ set to '' - although this can be
+ changed. (e.g. to return None so you
+ can test for missing keywords - where
+ '' is a valid answer but to have the
+ field missing isn't.) It also takes a
+ keyword argument 'nolist'. If this is
+ True list values only return their
+ first value.
+ """
+ data = {}
+ for field in valuelist:
+
+
+ if not theform.has_key(field):
+ # if the field is not present (or was empty)
+ data[field] = notpresent
+
+ else:
+ # the field is present
+
+
+ print type(theform[field])
+
+ if type(theform[field]) != type([]):
+ # is it a list or a single item
+ print type(theform[field])
+ data[field] = theform[field].value
+
+ else:
+
+ if not nolist:
+ # do we want a list ?
+ data[field] = theform.getlist(field)
+
+ else:
+ data[field] = theform.getfirst(field)
+
+ # just fetch the first item
+ return data
+
+def getall(theform, nolist=False):
+ """
+ Passed a form (cgi.FieldStorage
+ instance) return *all* the values.
+ This doesn't take into account
+ multipart form data (file uploads).
+ It also takes a keyword argument
+ 'nolist'. If this is True list values
+ only return their first value.
+ """
+ data = {}
+ for field in theform.keys():
+ # we can't just iterate over it, but must use the keys() method
+ if type(theform[field]) == type([]):
+ if not nolist:
+ data[field] = theform.getlist(field)
+ else:
+ data[field] = theform.getfirst(field)
+ else:
+ data[field] = theform[field].value
+ return data
+
+def isblank(indict):
+ """
+ Passed an indict of values it checks
+ if any of the values are set. Returns
+ True if the indict is empty, else
+ returns False. I use it on the a form
+ processed with getform to tell if my
+ CGI has been activated without any
+ form values.
+ """
+ for key in indict.keys():
+ if indict[key]:
+ return False
+ return True
+
+def go_backup(myhost):
+ myhostname = socket.gethostname()
+ if myhostname.strip() == myhost.strip():
+ command= "sudo /usr/bin/backup_job "
+ command2="sleep 2; /data/srv/hobbit/server/ext/hbnotes.py"
+ results=os.popen(command,'r')
+ os.popen(command2,'r')
+ else:
+ sshcmd="ssh -o StrictHostKeyChecking=no -o ConnectTimeout=1 -i /data/srv/.nobody_ssh/id_dsa mythtv@"
+ sshcmd+=myhost.strip()
+ cmd=' "sudo /etc/cron.daily/backup_cron ; sudo su nobody -c /data/srv/hobbit/server/ext/hbnotes.py"'
+ command=sshcmd + cmd + " 2>&1 "
+ results=os.popen(command,'r')
+ #print command
+
+
+ return results
+
+
+def go_restore(restorefile,myhost):
+ myhostname = socket.gethostname()
+ if myhostname.strip() == myhost.strip():
+ localcommand="sudo /usr/bin/restore_job.sh "
+ command= localcommand + restorefile
+ else:
+ sshcmd="ssh -o StrictHostKeyChecking=no -o ConnectTimeout=1 -i /data/srv/.nobody_ssh/id_dsa mythtv@"
+ sshcmd+=myhost.strip()
+ cmd=' "sudo /usr/bin/restore_job.sh " '
+ command=sshcmd + cmd + restorefile + " 2>&1 "
+
+ results=os.popen(command,'r')
+ return results
+
+def go_optimize(myhost):
+ myhostname = socket.gethostname()
+ if myhostname.strip() == myhost.strip():
+ command="/usr/bin/optimize_mythdb.py"
+ results=os.popen(command,'r')
+ else:
+ results='oops'
+ return results
+
+def go_update(myhost,update_type):
+ myhostname = socket.gethostname()
+ if myhostname.strip() == myhost.strip():
+ cmd="sudo /usr/bin/update_system "
+ command=cmd + update_type
+
+ else:
+ #sshcmd="ssh -o StrictHostKeyChecking=no -i /data/srv/.nobody_ssh/id_dsa mythtv@"
+ #sshcmd+=myhost.strip()
+ #cmd=" sudo /usr/bin/update_system "
+ #cmd+=update_type
+ #command=sshcmd + cmd + " 2>&1 "
+ #using func now
+ cmd=" call pacman update_system "
+ cmd+=update_type
+ command="sudo /usr/bin/func " + myhost.strip() + " " + cmd
+ print command
+
+ #print command
+
+ results=os.popen(command,'r')
+ return results
+
+def go_updateall(allupdate_type):
+
+ cmd=" sudo /usr/bin/update_system_all "
+ cmd+=allupdate_type
+ command= cmd + " 2>&1 "
+ results=os.popen(command,'r')
+ return results
+
+
+def go_shutdown(myhost):
+ myhostname = socket.gethostname()
+ if myhostname.strip() == myhost.strip():
+ message="Shutdown from MBE:::ALT"
+ os.system("/usr/bin/osdClient.pl " + myhost.strip() + " 5000 " + "\"" + message + "\"" )
+ time.sleep(3)
+ command="sudo /sbin/poweroff "
+ else:
+ command="sudo /usr/bin/func " + myhost.strip() + " call power poweroff "
+ message="Shutdown from MBE:::ALT"
+ os.system("/usr/bin/osdClient.pl " + myhost.strip() + " 5000 " + "\"" + message + "\"" )
+ time.sleep(3)
+
+ results=os.popen(command,'r')
+ return results
+
+def go_shutdownall():
+ import MySQLdb
+ #import mysql
+ #find all hosts(minus myself)
+ #loop through results shutdown as we go.
+ db = MySQLdb.connect(host="localhost", user="mythtv", passwd="mythtv", db="mythconverg")
+ # create a cursor
+ cursor = db.cursor()
+ # execute SQL statement
+ myhostname = socket.gethostname()
+ results=["Sent shutdown command to: \n "]
+ cursor.execute("SELECT distinct(hostname) from settings where not hostname = %s ; ",(myhostname))
+ result = cursor.fetchall()
+
+ for row in result:
+ go_shutdown(row[0])
+ results.append(row[0])
+
+ #shutdown myself.
+ #go_shutdown(myhostname)
+ #results.append(myhostname)
+ return results
+
+def go_reboot(myhost):
+ myhostname = socket.gethostname()
+ if myhostname.strip() == myhost.strip():
+ message="Reboot from MBE:::ALT"
+ os.system("/usr/bin/osdClient.pl " + myhost.strip() + " 5000 " + "\"" + message + "\"" )
+ time.sleep(3)
+ command="sudo /sbin/reboot "
+ else:
+ #sshcmd="ssh -o StrictHostKeyChecking=no -o ConnectTimeout=1 -i /data/srv/.nobody_ssh/id_dsa mythtv@"
+ #sshcmd+=myhost.strip()
+ #cmd=" sudo poweroff"
+ #command=sshcmd + cmd + " 2>&1 "
+ #using func
+ command="sudo /usr/bin/func " + myhost.strip() + " call power reboot "
+ message="Reboot from MBE:::ALT"
+ os.system("/usr/bin/osdClient.pl " + myhost.strip() + " 5000 " + "\"" + message + "\"" )
+ time.sleep(3)
+
+ results=os.popen(command,'r')
+ return results
+
+def go_wake(myhost):
+ command="/usr/bin/wakeonlan.sh " + myhost.strip()
+ results=os.popen(command,'r')
+ return results
+
+
+mainpage = '''
+ <html><head>
+ <style type="text/css">@import "/frame.css";</style>
+ <!--<meta http-equiv="refresh" content="6">-->
+ <title>Receiving a Form</title>
+ </head><body>%s</body></html>'''
+
+error = '''
+ <h1>Error</h1>
+ <h2>No Form Submission Was Received</h2>'''
+
+result = '''
+ <h1>%s of %s</h1>
+'''
+possible_parameters = ['param1', 'param2', 'param3', 'param4','hiddenparam','param5']
+
+if __name__ == '__main__':
+ cgiprint(contentheader) # content header
+ cgiprint() # finish headers with blank line
+
+ theform = cgi.FieldStorage()
+ #print theform
+ formdict = getform(theform, possible_parameters)
+ #print possible_parameters
+
+ if isblank(formdict):
+ body = error
+ else:
+ name = formdict['param1']
+ radio = formdict['param2'] # should be 'this' or 'that'
+ if radio != 'Restore' :
+ name = ""
+ update_type = formdict['param3']
+ oldurl = formdict['param4']
+ hidden = formdict['hiddenparam']
+ all_update_type=formdict['param5']
+ body = result % (radio, hidden)
+
+
+
+
+ print mainpage % body
+ selection=radio
+ myhost=hidden
+
+ if selection == "Restore":
+ mylogfile=go_restore(name,myhost)
+ elif selection == "Backup":
+ mylogfile=go_backup(myhost)
+ elif selection == "Update":
+ mylogfile=go_update(myhost,update_type)
+ elif selection == "Shutdown":
+ mylogfile=go_shutdown(myhost)
+ elif selection == "Reboot":
+ mylogfile=go_reboot(myhost)
+ elif selection == "Optimize":
+ mylogfile=go_optimize(myhost)
+ elif selection == "WOL":
+ mylogfile=go_wake(myhost)
+ elif selection == "UpdateAll":
+ mylogfile=go_updateall(all_update_type)
+ elif selection == "ShutdownAll":
+ mylogfile=go_shutdownall()
+
+ box='''
+ <div style="border: 1px solid #aaa; width:600px; height:500px; overflow:auto; color:#FFF;text-align:left;">
+ <code id="box" style="display: block; height: 500px; width: 600px; overflow: auto;">
+ '''
+
+ endbox='''
+ </code>
+ </div>
+ '''
+ javascript='''
+ <script type="text/javascript">
+ var objDiv = document.getElementById("box");
+ objDiv.scrollTop = objDiv.scrollHeight;
+ </script>
+ '''
+
+ print box
+ for line in mylogfile:
+ print line + '</br> \r\n'
+
+ print endbox
+ print '<a href=', oldurl, ' > Back </a> '
+ #print oldurl
+ print javascript
+
diff --git a/abs/mv-core/mysql/PKGBUILD b/abs/mv-core/mysql/PKGBUILD
new file mode 100644
index 0000000..79ec522
--- /dev/null
+++ b/abs/mv-core/mysql/PKGBUILD
@@ -0,0 +1,48 @@
+pkgname=mysql
+pkgver=5.0.60
+pkgrel=1000
+pkgdesc="A fast SQL database server"
+arch=(i686 x86_64)
+backup=(etc/my.cnf etc/conf.d/mysqld)
+depends=("mysql-clients>=${pkgver}" 'tcp_wrappers')
+makedepends=('libtool')
+url=('http://www.mysql.com/')
+options=('!libtool')
+license=('GPL')
+source=(http://mirror.provenscaling.com/mysql/enterprise/source/5.0/mysql-${pkgver}.tar.gz
+ mysql-no-clients.patch
+ mysqld
+ my.cnf
+ mysqld.conf.d)
+
+build() {
+ # PIC
+ cd ${startdir}/src/${pkgname}-${pkgver}
+ patch -Np1 -i ${startdir}/src/mysql-no-clients.patch || return 1
+ ./configure --prefix=/usr --libexecdir=/usr/sbin \
+ --without-debug --without-docs --without-bench --without-readline \
+ --with-innodb --enable-local-infile --with-openssl \
+ --with-charset=latin1 --with-collation=latin1_general_ci \
+ --with-extra-charsets=complex --enable-thread-safe-client \
+ --with-libwrap --with-berkeley-db
+
+ # fixes
+ sed -i -e 's/^.*HAVE_GETHOSTBYNAME_R_GLIBC2_STYLE.*$/#define\ HAVE_GETHOSTBYNAME_R_GLIBC2_STYLE/g' include/config.h || return 1
+ sed -i -e 's/size_socket/socklen_t/g' sql/mysqld.cc || return 1
+
+ pushd include || return
+ make || return 1
+ popd
+ pushd libmysql
+ make link_sources get_password.lo || return
+ popd
+ make || return 1
+ make DESTDIR=${startdir}/pkg install
+ rm -rf ${startdir}/pkg/usr/{mysql-test,sql-bench}
+ install -D -m644 ../my.cnf ${startdir}/pkg/etc/my.cnf
+ install -D -m755 ../mysqld ${startdir}/pkg/etc/rc.d/mysqld
+ install -D -m644 ../mysqld.conf.d ${startdir}/pkg/etc/conf.d/mysqld
+ rm -f ${startdir}/pkg/usr/bin/mysql_config
+}
+
+
diff --git a/abs/mv-core/mysql/my.cnf b/abs/mv-core/mysql/my.cnf
new file mode 100644
index 0000000..5775958
--- /dev/null
+++ b/abs/mv-core/mysql/my.cnf
@@ -0,0 +1,150 @@
+# mysql config file for medium systems.
+#
+# This is for a system with little memory (32M - 64M) where MySQL plays
+# a important part and systems up to 128M where MySQL is used together with
+# other programs (like a web server)
+#
+# One can in this file use all long options that the program supports.
+# If you want to know which options a program support, run the program
+# with --help option.
+
+# The following options will be passed to all MySQL clients
+[client]
+#password = your_password
+port = 3306
+socket = /tmp/mysql.sock
+
+# Here follows entries for some specific programs
+
+# The MySQL server
+[mysqld]
+port = 3306
+socket = /tmp/mysql.sock
+datadir = /data/srv/mysql
+skip-locking
+key_buffer = 16M
+max_allowed_packet = 1M
+table_cache = 64
+sort_buffer_size = 512K
+net_buffer_length = 16K
+myisam_sort_buffer_size = 8M
+local-infile=1
+
+# Don't listen on a TCP/IP port at all. This can be a security enhancement,
+# if all processes that need to connect to mysqld run on the same host.
+# All interaction with mysqld must be made via Unix sockets or named pipes.
+# Note that using this option without enabling named pipes on Windows
+# (via the "enable-named-pipe" option) will render mysqld useless!
+#
+#skip-networking
+
+# Replication Master Server (default)
+# binary logging is required for replication
+#log-bin
+
+# required unique id between 1 and 2^32 - 1
+# defaults to 1 if master-host is not set
+# but will not function as a master if omitted
+server-id = 1
+# Replication Slave (comment out master section to use this)
+#
+# To configure this host as a replication slave, you can choose between
+# two methods :
+#
+# 1) Use the CHANGE MASTER TO command (fully described in our manual) -
+# the syntax is:
+#
+# CHANGE MASTER TO MASTER_HOST=<host>, MASTER_PORT=<port>,
+# MASTER_USER=<user>, MASTER_PASSWORD=<password> ;
+#
+# where you replace <host>, <user>, <password> by quoted strings and
+# <port> by the master's port number (3306 by default).
+#
+# Example:
+#
+# CHANGE MASTER TO MASTER_HOST='125.564.12.1', MASTER_PORT=3306,
+# MASTER_USER='joe', MASTER_PASSWORD='secret';
+#
+# OR
+#
+# 2) Set the variables below. However, in case you choose this method, then
+# start replication for the first time (even unsuccessfully, for example
+# if you mistyped the password in master-password and the slave fails to
+# connect), the slave will create a master.info file, and any later
+# change in this file to the variables' values below will be ignored and
+# overridden by the content of the master.info file, unless you shutdown
+# the slave server, delete master.info and restart the slaver server.
+# For that reason, you may want to leave the lines below untouched
+# (commented) and instead use CHANGE MASTER TO (see above)
+#
+# required unique id between 2 and 2^32 - 1
+# (and different from the master)
+# defaults to 2 if master-host is set
+# but will not function as a slave if omitted
+#server-id = 2
+#
+# The replication master for this slave - required
+#master-host = <hostname>
+#
+# The username the slave will use for authentication when connecting
+# to the master - required
+#master-user = <username>
+#
+# The password the slave will authenticate with when connecting to
+# the master - required
+#master-password = <password>
+#
+# The port the master is listening on.
+# optional - defaults to 3306
+#master-port = <port>
+#
+# binary logging - not required for slaves, but recommended
+#log-bin
+
+# Point the following paths to different dedicated disks
+#tmpdir = /tmp/
+#log-update = /path-to-dedicated-directory/hostname
+
+# Uncomment the following if you are using BDB tables
+#bdb_cache_size = 4M
+#bdb_max_lock = 10000
+
+# Uncomment the following if you are using InnoDB tables
+#innodb_data_home_dir = /var/lib/mysql
+#innodb_data_file_path = ibdata1:10M:autoextend
+#innodb_log_group_home_dir = /var/lib/mysql
+#innodb_log_arch_dir = /var/lib/mysql
+# You can set .._buffer_pool_size up to 50 - 80 %
+# of RAM but beware of setting memory usage too high
+#innodb_buffer_pool_size = 16M
+#innodb_additional_mem_pool_size = 2M
+# Set .._log_file_size to 25 % of buffer pool size
+#innodb_log_file_size = 5M
+#innodb_log_buffer_size = 8M
+#innodb_flush_log_at_trx_commit = 1
+#innodb_lock_wait_timeout = 50
+
+[mysqldump]
+quick
+max_allowed_packet = 16M
+
+[mysql]
+#no-auto-rehash
+# Remove the next comment character if you are not familiar with SQL
+#safe-updates
+local-infile=1
+
+[isamchk]
+key_buffer = 20M
+sort_buffer_size = 20M
+read_buffer = 2M
+write_buffer = 2M
+
+[myisamchk]
+key_buffer = 20M
+sort_buffer_size = 20M
+read_buffer = 2M
+write_buffer = 2M
+
+[mysqlhotcopy]
+interactive-timeout
diff --git a/abs/mv-core/mysql/my.cnf.mv b/abs/mv-core/mysql/my.cnf.mv
new file mode 100644
index 0000000..5775958
--- /dev/null
+++ b/abs/mv-core/mysql/my.cnf.mv
@@ -0,0 +1,150 @@
+# mysql config file for medium systems.
+#
+# This is for a system with little memory (32M - 64M) where MySQL plays
+# a important part and systems up to 128M where MySQL is used together with
+# other programs (like a web server)
+#
+# One can in this file use all long options that the program supports.
+# If you want to know which options a program support, run the program
+# with --help option.
+
+# The following options will be passed to all MySQL clients
+[client]
+#password = your_password
+port = 3306
+socket = /tmp/mysql.sock
+
+# Here follows entries for some specific programs
+
+# The MySQL server
+[mysqld]
+port = 3306
+socket = /tmp/mysql.sock
+datadir = /data/srv/mysql
+skip-locking
+key_buffer = 16M
+max_allowed_packet = 1M
+table_cache = 64
+sort_buffer_size = 512K
+net_buffer_length = 16K
+myisam_sort_buffer_size = 8M
+local-infile=1
+
+# Don't listen on a TCP/IP port at all. This can be a security enhancement,
+# if all processes that need to connect to mysqld run on the same host.
+# All interaction with mysqld must be made via Unix sockets or named pipes.
+# Note that using this option without enabling named pipes on Windows
+# (via the "enable-named-pipe" option) will render mysqld useless!
+#
+#skip-networking
+
+# Replication Master Server (default)
+# binary logging is required for replication
+#log-bin
+
+# required unique id between 1 and 2^32 - 1
+# defaults to 1 if master-host is not set
+# but will not function as a master if omitted
+server-id = 1
+# Replication Slave (comment out master section to use this)
+#
+# To configure this host as a replication slave, you can choose between
+# two methods :
+#
+# 1) Use the CHANGE MASTER TO command (fully described in our manual) -
+# the syntax is:
+#
+# CHANGE MASTER TO MASTER_HOST=<host>, MASTER_PORT=<port>,
+# MASTER_USER=<user>, MASTER_PASSWORD=<password> ;
+#
+# where you replace <host>, <user>, <password> by quoted strings and
+# <port> by the master's port number (3306 by default).
+#
+# Example:
+#
+# CHANGE MASTER TO MASTER_HOST='125.564.12.1', MASTER_PORT=3306,
+# MASTER_USER='joe', MASTER_PASSWORD='secret';
+#
+# OR
+#
+# 2) Set the variables below. However, in case you choose this method, then
+# start replication for the first time (even unsuccessfully, for example
+# if you mistyped the password in master-password and the slave fails to
+# connect), the slave will create a master.info file, and any later
+# change in this file to the variables' values below will be ignored and
+# overridden by the content of the master.info file, unless you shutdown
+# the slave server, delete master.info and restart the slaver server.
+# For that reason, you may want to leave the lines below untouched
+# (commented) and instead use CHANGE MASTER TO (see above)
+#
+# required unique id between 2 and 2^32 - 1
+# (and different from the master)
+# defaults to 2 if master-host is set
+# but will not function as a slave if omitted
+#server-id = 2
+#
+# The replication master for this slave - required
+#master-host = <hostname>
+#
+# The username the slave will use for authentication when connecting
+# to the master - required
+#master-user = <username>
+#
+# The password the slave will authenticate with when connecting to
+# the master - required
+#master-password = <password>
+#
+# The port the master is listening on.
+# optional - defaults to 3306
+#master-port = <port>
+#
+# binary logging - not required for slaves, but recommended
+#log-bin
+
+# Point the following paths to different dedicated disks
+#tmpdir = /tmp/
+#log-update = /path-to-dedicated-directory/hostname
+
+# Uncomment the following if you are using BDB tables
+#bdb_cache_size = 4M
+#bdb_max_lock = 10000
+
+# Uncomment the following if you are using InnoDB tables
+#innodb_data_home_dir = /var/lib/mysql
+#innodb_data_file_path = ibdata1:10M:autoextend
+#innodb_log_group_home_dir = /var/lib/mysql
+#innodb_log_arch_dir = /var/lib/mysql
+# You can set .._buffer_pool_size up to 50 - 80 %
+# of RAM but beware of setting memory usage too high
+#innodb_buffer_pool_size = 16M
+#innodb_additional_mem_pool_size = 2M
+# Set .._log_file_size to 25 % of buffer pool size
+#innodb_log_file_size = 5M
+#innodb_log_buffer_size = 8M
+#innodb_flush_log_at_trx_commit = 1
+#innodb_lock_wait_timeout = 50
+
+[mysqldump]
+quick
+max_allowed_packet = 16M
+
+[mysql]
+#no-auto-rehash
+# Remove the next comment character if you are not familiar with SQL
+#safe-updates
+local-infile=1
+
+[isamchk]
+key_buffer = 20M
+sort_buffer_size = 20M
+read_buffer = 2M
+write_buffer = 2M
+
+[myisamchk]
+key_buffer = 20M
+sort_buffer_size = 20M
+read_buffer = 2M
+write_buffer = 2M
+
+[mysqlhotcopy]
+interactive-timeout
diff --git a/abs/mv-core/mysql/mysql-no-clients.patch b/abs/mv-core/mysql/mysql-no-clients.patch
new file mode 100644
index 0000000..e1fb5e0
--- /dev/null
+++ b/abs/mv-core/mysql/mysql-no-clients.patch
@@ -0,0 +1,65 @@
+diff -ruN mysql-5.0.51.orig/Makefile.in mysql-5.0.51/Makefile.in
+--- mysql-5.0.51.orig/Makefile.in 2007-12-07 12:59:21.000000000 +0000
++++ mysql-5.0.51/Makefile.in 2007-12-07 13:03:21.000000000 +0000
+@@ -376,7 +376,7 @@
+ SUBDIRS = . include @docs_dirs@ @zlib_dir@ @yassl_dir@ \
+ @readline_topdir@ sql-common scripts \
+ @thread_dirs@ pstack \
+- @sql_union_dirs@ @man_dirs@ tests \
++ strings mysys dbug extra regex bdb innobase myisam myisammrg heap vio sql @man_dirs@ tests \
+ netware @libmysqld_dirs@ \
+ @bench_dirs@ support-files @tools_dirs@
+
+diff -ruN mysql-5.0.51.orig/include/Makefile.in mysql-5.0.51/include/Makefile.in
+--- mysql-5.0.51.orig/include/Makefile.in 2007-12-07 12:59:20.000000000 +0000
++++ mysql-5.0.51/include/Makefile.in 2007-12-07 13:00:12.000000000 +0000
+@@ -557,7 +557,6 @@
+ test -z "$$dir" || $(mkdir_p) "$$dir"; \
+ done
+ install: $(BUILT_SOURCES)
+- $(MAKE) $(AM_MAKEFLAGS) install-am
+ install-exec: install-exec-am
+ install-data: install-data-am
+ uninstall: uninstall-am
+diff -ruN mysql-5.0.51.orig/tests/Makefile.in mysql-5.0.51/tests/Makefile.in
+--- mysql-5.0.51.orig/tests/Makefile.in 2007-12-07 12:59:20.000000000 +0000
++++ mysql-5.0.51/tests/Makefile.in 2007-12-07 13:01:51.000000000 +0000
+@@ -96,7 +96,7 @@
+ am_mysql_client_test_OBJECTS = mysql_client_test.$(OBJEXT) \
+ my_memmem.$(OBJEXT)
+ mysql_client_test_OBJECTS = $(am_mysql_client_test_OBJECTS)
+-am__DEPENDENCIES_1 = $(top_builddir)/libmysql/libmysqlclient.la
++am__DEPENDENCIES_1 = /usr/lib/mysql/libmysqlclient.so
+ am__DEPENDENCIES_2 =
+ mysql_client_test_DEPENDENCIES = $(am__DEPENDENCIES_1) \
+ $(am__DEPENDENCIES_2)
+@@ -106,7 +106,7 @@
+ thread_test_SOURCES = thread_test.c
+ thread_test_OBJECTS = thread_test.$(OBJEXT)
+ thread_test_LDADD = $(LDADD)
+-thread_test_DEPENDENCIES = $(top_builddir)/libmysql/libmysqlclient.la
++thread_test_DEPENDENCIES = /usr/lib/mysql/libmysqlclient.so
+ DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)/include
+ depcomp = $(SHELL) $(top_srcdir)/depcomp
+ am__depfiles_maybe = depfiles
+@@ -405,7 +405,7 @@
+ $(openssl_includes)
+
+ LDADD = @CLIENT_EXTRA_LDFLAGS@ \
+- $(top_builddir)/libmysql/libmysqlclient.la
++ /usr/lib/mysql/libmysqlclient.so
+
+ mysql_client_test_LDADD = $(LDADD) $(CXXLDFLAGS)
+ mysql_client_test_SOURCES = mysql_client_test.c\
+diff -ruN mysql-5.0.51.orig/tools/Makefile.in mysql-5.0.51/tools/Makefile.in
+--- mysql-5.0.51.orig/tools/Makefile.in 2007-12-07 12:59:19.000000000 +0000
++++ mysql-5.0.51/tools/Makefile.in 2007-12-07 13:02:32.000000000 +0000
+@@ -369,7 +369,7 @@
+ $(openssl_includes)
+
+ LDADD = @CLIENT_EXTRA_LDFLAGS@ \
+- $(top_builddir)/libmysql_r/libmysqlclient_r.la \
++ /usr/lib/mysql/libmysqlclient_r.so \
+ @openssl_libs@ @yassl_libs@ @ZLIB_LIBS@
+
+ mysqltestmanager_SOURCES = mysqlmanager.c
diff --git a/abs/mv-core/mysql/mysqld b/abs/mv-core/mysql/mysqld
new file mode 100755
index 0000000..e7f90d2
--- /dev/null
+++ b/abs/mv-core/mysql/mysqld
@@ -0,0 +1,87 @@
+#!/bin/bash
+
+MYSQLD_ROOT="/var/lib/mysql"
+# source application-specific settings
+[ -f /etc/conf.d/mysqld ] && . /etc/conf.d/mysqld
+
+# general config
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+PID=`pidof -o %PPID /usr/sbin/mysqld`
+if [ ! `egrep '^mysql:' /etc/group` ]; then
+ stat_busy "Adding mysql group"
+ groupadd -g 89 mysql
+ stat_done
+fi
+if [ ! `egrep '^mysql:' /etc/passwd` ]; then
+ stat_busy "Adding mysql user"
+ useradd -u 89 -g mysql -d $MYSQLD_ROOT -s /bin/false mysql
+ [ -d $MYSQLD_ROOT ] && chown -R mysql.mysql $MYSQLD_ROOT
+ stat_done
+fi
+
+if [ ! -d $MYSQLD_ROOT ]; then
+ mkdir $MYSQLD_ROOT
+ /usr/bin/mysql_install_db --datadir=$MYSQLD_ROOT --user=mysql 2>/dev/null > /dev/null
+ chown -R mysql.mysql $MYSQLD_ROOT
+fi
+
+if [ ! -e /var/log/mysqld.log ]; then
+ touch /var/log/mysqld.log
+ chown mysql /var/log/mysqld.log
+fi
+
+case "$1" in
+ start)
+ stat_busy "Starting MySQL"
+ if [ -z "$PID" ]; then
+ /usr/bin/mysqld_safe --datadir=$MYSQLD_ROOT 2>/dev/null >/dev/null &
+ if [ $? -gt 0 ]; then
+ stat_fail
+ exit 1
+ else
+ sleep 1 # wait on children
+ PID=`pidof -o %PPID /usr/sbin/mysqld`
+ if [ -z "$PID" ]; then
+ stat_fail
+ exit 1
+ else
+ echo $PID >/var/run/mysqld.pid
+ add_daemon mysqld
+ stat_done
+ fi
+ fi
+ else
+ stat_fail
+ exit 1
+ fi
+ ;;
+
+ stop)
+ stat_busy "Stopping MySQL"
+ if [ ! -z "$PID" ]; then
+ kill $PID &> /dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ exit 1
+ else
+ rm -f /var/run/mysqld.pid &>/dev/null
+ rm_daemon mysqld
+ stat_done
+ fi
+ else
+ stat_fail
+ exit 1
+ fi
+ ;;
+
+ restart)
+ $0 stop
+ sleep 3
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart}"
+esac
+exit 0
diff --git a/abs/mv-core/mysql/mysqld.conf.d b/abs/mv-core/mysql/mysqld.conf.d
new file mode 100644
index 0000000..04752b1
--- /dev/null
+++ b/abs/mv-core/mysql/mysqld.conf.d
@@ -0,0 +1 @@
+MYSQLD_ROOT="/var/lib/mysql"
diff --git a/abs/mv-core/mythdb-initial/PKGBUILD b/abs/mv-core/mythdb-initial/PKGBUILD
new file mode 100755
index 0000000..591241f
--- /dev/null
+++ b/abs/mv-core/mythdb-initial/PKGBUILD
@@ -0,0 +1,21 @@
+pkgname=mythdb-initial
+pkgver=1
+pkgrel=46
+pkgdesc="setup the initial mythtv database"
+url=""
+license=""
+depends=(mysql)
+makedepends=()
+conflicts=()
+replaces=()
+backup=()
+install=mythdb.install
+source=(mc.sql permissions.sql)
+md5sums=()
+arch=('i686')
+build() {
+ cd $startdir/src
+ mkdir -p $startdir/pkg/data/database
+ cp mc.sql $startdir/pkg/data/database/mc.sql.initial
+ cp permissions.sql $startdir/pkg/data/database/permissions.sql
+}
diff --git a/abs/mv-core/mythdb-initial/mc.sql b/abs/mv-core/mythdb-initial/mc.sql
new file mode 100755
index 0000000..73e7410
--- /dev/null
+++ b/abs/mv-core/mythdb-initial/mc.sql
@@ -0,0 +1,2330 @@
+-- MySQL dump 10.11
+--
+-- Host: localhost Database: mythconverg
+-- ------------------------------------------------------
+-- Server version 5.0.27
+
+/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
+/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
+/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
+/*!40101 SET NAMES utf8 */;
+/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
+/*!40103 SET TIME_ZONE='+00:00' */;
+/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
+/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
+/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
+/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
+
+--
+-- Table structure for table `archiveitems`
+--
+
+DROP TABLE IF EXISTS `archiveitems`;
+CREATE TABLE `archiveitems` (
+ `intid` int(10) unsigned NOT NULL auto_increment,
+ `type` set('Recording','Video','File') default NULL,
+ `title` varchar(128) default NULL,
+ `subtitle` varchar(128) default NULL,
+ `description` text,
+ `startdate` varchar(30) default NULL,
+ `starttime` varchar(30) default NULL,
+ `size` int(10) unsigned NOT NULL,
+ `filename` text NOT NULL,
+ `hascutlist` tinyint(1) NOT NULL default '0',
+ `cutlist` text,
+ PRIMARY KEY (`intid`),
+ KEY `title` (`title`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `archiveitems`
+--
+
+LOCK TABLES `archiveitems` WRITE;
+/*!40000 ALTER TABLE `archiveitems` DISABLE KEYS */;
+/*!40000 ALTER TABLE `archiveitems` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `callsignnetworkmap`
+--
+
+DROP TABLE IF EXISTS `callsignnetworkmap`;
+CREATE TABLE `callsignnetworkmap` (
+ `id` int(11) NOT NULL auto_increment,
+ `callsign` varchar(20) NOT NULL default '',
+ `network` varchar(20) NOT NULL default '',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `callsign` (`callsign`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `callsignnetworkmap`
+--
+
+LOCK TABLES `callsignnetworkmap` WRITE;
+/*!40000 ALTER TABLE `callsignnetworkmap` DISABLE KEYS */;
+/*!40000 ALTER TABLE `callsignnetworkmap` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `capturecard`
+--
+
+DROP TABLE IF EXISTS `capturecard`;
+CREATE TABLE `capturecard` (
+ `cardid` int(10) unsigned NOT NULL auto_increment,
+ `videodevice` varchar(128) default NULL,
+ `audiodevice` varchar(128) default NULL,
+ `vbidevice` varchar(128) default NULL,
+ `cardtype` varchar(32) default 'V4L',
+ `defaultinput` varchar(32) default 'Television',
+ `audioratelimit` int(11) default NULL,
+ `hostname` varchar(255) default NULL,
+ `dvb_swfilter` int(11) default '0',
+ `dvb_sat_type` int(11) NOT NULL default '0',
+ `dvb_wait_for_seqstart` int(11) NOT NULL default '1',
+ `skipbtaudio` tinyint(1) default '0',
+ `dvb_on_demand` tinyint(4) NOT NULL default '0',
+ `dvb_diseqc_type` smallint(6) default NULL,
+ `firewire_port` int(10) unsigned NOT NULL default '0',
+ `firewire_node` int(10) unsigned NOT NULL default '2',
+ `firewire_speed` int(10) unsigned NOT NULL default '0',
+ `firewire_model` varchar(32) default NULL,
+ `firewire_connection` int(10) unsigned NOT NULL default '0',
+ `dbox2_port` int(10) unsigned NOT NULL default '31338',
+ `dbox2_httpport` int(10) unsigned NOT NULL default '80',
+ `dbox2_host` varchar(32) default NULL,
+ `signal_timeout` int(11) NOT NULL default '1000',
+ `channel_timeout` int(11) NOT NULL default '3000',
+ `dvb_tuning_delay` int(10) unsigned NOT NULL default '0',
+ `contrast` int(11) NOT NULL default '0',
+ `brightness` int(11) NOT NULL default '0',
+ `colour` int(11) NOT NULL default '0',
+ `hue` int(11) NOT NULL default '0',
+ `diseqcid` int(10) unsigned default NULL,
+ `dvb_eitscan` tinyint(1) NOT NULL default '1',
+ PRIMARY KEY (`cardid`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `capturecard`
+--
+
+LOCK TABLES `capturecard` WRITE;
+/*!40000 ALTER TABLE `capturecard` DISABLE KEYS */;
+/*!40000 ALTER TABLE `capturecard` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `cardinput`
+--
+
+DROP TABLE IF EXISTS `cardinput`;
+CREATE TABLE `cardinput` (
+ `cardinputid` int(10) unsigned NOT NULL auto_increment,
+ `cardid` int(10) unsigned NOT NULL default '0',
+ `sourceid` int(10) unsigned NOT NULL default '0',
+ `inputname` varchar(32) NOT NULL default '',
+ `externalcommand` varchar(128) default NULL,
+ `preference` int(11) NOT NULL default '0',
+ `shareable` char(1) default 'N',
+ `tunechan` varchar(10) default NULL,
+ `startchan` varchar(10) default NULL,
+ `freetoaironly` tinyint(1) default '1',
+ `diseqc_port` smallint(6) default NULL,
+ `diseqc_pos` float default NULL,
+ `lnb_lof_switch` int(11) default '11700000',
+ `lnb_lof_hi` int(11) default '10600000',
+ `lnb_lof_lo` int(11) default '9750000',
+ `displayname` varchar(64) NOT NULL default '',
+ `radioservices` tinyint(1) default '1',
+ `dishnet_eit` tinyint(1) NOT NULL default '0',
+ `recpriority` int(11) NOT NULL default '0',
+ `quicktune` tinyint(4) NOT NULL default '0',
+ PRIMARY KEY (`cardinputid`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `cardinput`
+--
+
+LOCK TABLES `cardinput` WRITE;
+/*!40000 ALTER TABLE `cardinput` DISABLE KEYS */;
+/*!40000 ALTER TABLE `cardinput` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `channel`
+--
+
+DROP TABLE IF EXISTS `channel`;
+CREATE TABLE `channel` (
+ `chanid` int(10) unsigned NOT NULL default '0',
+ `channum` varchar(10) NOT NULL default '',
+ `freqid` varchar(10) default NULL,
+ `sourceid` int(10) unsigned default NULL,
+ `callsign` varchar(20) NOT NULL default '',
+ `name` varchar(64) NOT NULL default '',
+ `icon` varchar(255) NOT NULL default 'none',
+ `finetune` int(11) default NULL,
+ `videofilters` varchar(255) NOT NULL default '',
+ `xmltvid` varchar(64) NOT NULL default '',
+ `recpriority` int(10) NOT NULL default '0',
+ `contrast` int(11) default '32768',
+ `brightness` int(11) default '32768',
+ `colour` int(11) default '32768',
+ `hue` int(11) default '32768',
+ `tvformat` varchar(10) NOT NULL default 'Default',
+ `commfree` tinyint(4) NOT NULL default '0',
+ `visible` tinyint(1) NOT NULL default '1',
+ `outputfilters` varchar(255) NOT NULL default '',
+ `useonairguide` tinyint(1) default '0',
+ `mplexid` smallint(6) default NULL,
+ `serviceid` mediumint(8) unsigned default NULL,
+ `atscsrcid` int(11) default NULL,
+ `tmoffset` int(11) NOT NULL default '0',
+ `atsc_major_chan` int(10) unsigned NOT NULL default '0',
+ `atsc_minor_chan` int(10) unsigned NOT NULL default '0',
+ `last_record` datetime NOT NULL,
+ `default_authority` varchar(32) NOT NULL default '',
+ `commmethod` int(11) NOT NULL default '-1',
+ PRIMARY KEY (`chanid`),
+ KEY `channel_src` (`channum`,`sourceid`),
+ KEY `sourceid` (`sourceid`,`xmltvid`,`chanid`),
+ KEY `visible` (`visible`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `channel`
+--
+
+LOCK TABLES `channel` WRITE;
+/*!40000 ALTER TABLE `channel` DISABLE KEYS */;
+/*!40000 ALTER TABLE `channel` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `codecparams`
+--
+
+DROP TABLE IF EXISTS `codecparams`;
+CREATE TABLE `codecparams` (
+ `profile` int(10) unsigned NOT NULL default '0',
+ `name` varchar(128) NOT NULL default '',
+ `value` varchar(128) default NULL,
+ PRIMARY KEY (`profile`,`name`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `codecparams`
+--
+
+LOCK TABLES `codecparams` WRITE;
+/*!40000 ALTER TABLE `codecparams` DISABLE KEYS */;
+/*!40000 ALTER TABLE `codecparams` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `credits`
+--
+
+DROP TABLE IF EXISTS `credits`;
+CREATE TABLE `credits` (
+ `person` mediumint(8) unsigned NOT NULL default '0',
+ `chanid` int(10) unsigned NOT NULL default '0',
+ `starttime` datetime NOT NULL default '0000-00-00 00:00:00',
+ `role` set('actor','director','producer','executive_producer','writer','guest_star','host','adapter','presenter','commentator','guest') NOT NULL default '',
+ UNIQUE KEY `chanid` (`chanid`,`starttime`,`person`,`role`),
+ KEY `person` (`person`,`role`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `credits`
+--
+
+LOCK TABLES `credits` WRITE;
+/*!40000 ALTER TABLE `credits` DISABLE KEYS */;
+/*!40000 ALTER TABLE `credits` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `customexample`
+--
+
+DROP TABLE IF EXISTS `customexample`;
+CREATE TABLE `customexample` (
+ `rulename` varchar(64) NOT NULL,
+ `fromclause` text NOT NULL,
+ `whereclause` text NOT NULL,
+ `search` tinyint(4) NOT NULL default '0',
+ PRIMARY KEY (`rulename`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `customexample`
+--
+
+LOCK TABLES `customexample` WRITE;
+/*!40000 ALTER TABLE `customexample` DISABLE KEYS */;
+INSERT INTO `customexample` VALUES ('New Flix','','program.category_type = \'movie\' AND program.airdate >= \n YEAR(DATE_SUB(NOW(), INTERVAL 1 YEAR)) \nAND program.stars > 0.5 ',1);
+/*!40000 ALTER TABLE `customexample` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `diseqc_config`
+--
+
+DROP TABLE IF EXISTS `diseqc_config`;
+CREATE TABLE `diseqc_config` (
+ `cardinputid` int(10) unsigned NOT NULL,
+ `diseqcid` int(10) unsigned NOT NULL,
+ `value` varchar(16) NOT NULL default '',
+ KEY `id` (`cardinputid`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `diseqc_config`
+--
+
+LOCK TABLES `diseqc_config` WRITE;
+/*!40000 ALTER TABLE `diseqc_config` DISABLE KEYS */;
+/*!40000 ALTER TABLE `diseqc_config` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `diseqc_tree`
+--
+
+DROP TABLE IF EXISTS `diseqc_tree`;
+CREATE TABLE `diseqc_tree` (
+ `diseqcid` int(10) unsigned NOT NULL auto_increment,
+ `parentid` int(10) unsigned default NULL,
+ `ordinal` tinyint(3) unsigned NOT NULL,
+ `type` varchar(16) NOT NULL default '',
+ `subtype` varchar(16) NOT NULL default '',
+ `description` varchar(32) NOT NULL default '',
+ `switch_ports` tinyint(3) unsigned NOT NULL default '0',
+ `rotor_hi_speed` float NOT NULL default '0',
+ `rotor_lo_speed` float NOT NULL default '0',
+ `rotor_positions` varchar(255) NOT NULL default '',
+ `lnb_lof_switch` int(10) NOT NULL default '0',
+ `lnb_lof_hi` int(10) NOT NULL default '0',
+ `lnb_lof_lo` int(10) NOT NULL default '0',
+ `cmd_repeat` int(11) NOT NULL default '1',
+ `lnb_pol_inv` tinyint(4) NOT NULL default '0',
+ PRIMARY KEY (`diseqcid`),
+ KEY `parentid` (`parentid`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `diseqc_tree`
+--
+
+LOCK TABLES `diseqc_tree` WRITE;
+/*!40000 ALTER TABLE `diseqc_tree` DISABLE KEYS */;
+/*!40000 ALTER TABLE `diseqc_tree` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `displayprofilegroups`
+--
+
+DROP TABLE IF EXISTS `displayprofilegroups`;
+CREATE TABLE `displayprofilegroups` (
+ `name` varchar(128) NOT NULL,
+ `hostname` varchar(255) NOT NULL,
+ `profilegroupid` int(10) unsigned NOT NULL auto_increment,
+ PRIMARY KEY (`name`,`hostname`),
+ UNIQUE KEY `profilegroupid` (`profilegroupid`)
+) ENGINE=MyISAM AUTO_INCREMENT=4 DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `displayprofilegroups`
+--
+
+LOCK TABLES `displayprofilegroups` WRITE;
+/*!40000 ALTER TABLE `displayprofilegroups` DISABLE KEYS */;
+INSERT INTO `displayprofilegroups` VALUES ('CPU++','myhost',1),('CPU+','myhost',2),('CPU--','myhost',3);
+/*!40000 ALTER TABLE `displayprofilegroups` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `displayprofiles`
+--
+
+DROP TABLE IF EXISTS `displayprofiles`;
+CREATE TABLE `displayprofiles` (
+ `profilegroupid` int(10) unsigned NOT NULL,
+ `profileid` int(10) unsigned NOT NULL auto_increment,
+ `value` varchar(128) NOT NULL,
+ `data` varchar(255) NOT NULL default '',
+ KEY `profilegroupid` (`profilegroupid`),
+ KEY `profileid` (`profileid`,`value`),
+ KEY `profileid_2` (`profileid`)
+) ENGINE=MyISAM AUTO_INCREMENT=13 DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `displayprofiles`
+--
+
+LOCK TABLES `displayprofiles` WRITE;
+/*!40000 ALTER TABLE `displayprofiles` DISABLE KEYS */;
+INSERT INTO `displayprofiles` VALUES (1,1,'pref_priority','1'),(1,1,'pref_cmp0','> 0 0'),(1,1,'pref_decoder','ffmpeg'),(1,1,'pref_max_cpus','1'),(1,1,'pref_videorenderer','xv-blit'),(1,1,'pref_osdrenderer','softblend'),(1,1,'pref_osdfade','1'),(1,1,'pref_deint0','bobdeint'),(1,1,'pref_deint1','linearblend'),(1,1,'pref_filters',''),(1,2,'pref_priority','2'),(1,2,'pref_cmp0','> 0 0'),(1,2,'pref_decoder','ffmpeg'),(1,2,'pref_max_cpus','1'),(1,2,'pref_videorenderer','quartz-blit'),(1,2,'pref_osdrenderer','softblend'),(1,2,'pref_osdfade','1'),(1,2,'pref_deint0','linearblend'),(1,2,'pref_deint1','linearblend'),(1,2,'pref_filters',''),(2,3,'pref_priority','1'),(2,3,'pref_cmp0','<= 720 576'),(2,3,'pref_cmp1','> 0 0'),(2,3,'pref_decoder','ffmpeg'),(2,3,'pref_max_cpus','1'),(2,3,'pref_videorenderer','xv-blit'),(2,3,'pref_osdrenderer','softblend'),(2,3,'pref_osdfade','1'),(2,3,'pref_deint0','bobdeint'),(2,3,'pref_deint1','linearblend'),(2,3,'pref_filters',''),(2,4,'pref_priority','2'),(2,4,'pref_cmp0','<= 1280 720'),(2,4,'pref_cmp1','> 720 576'),(2,4,'pref_decoder','xvmc'),(2,4,'pref_max_cpus','1'),(2,4,'pref_videorenderer','xvmc-blit'),(2,4,'pref_osdrenderer','opengl'),(2,4,'pref_osdfade','1'),(2,4,'pref_deint0','bobdeint'),(2,4,'pref_deint1','onefield'),(2,4,'pref_filters',''),(2,5,'pref_priority','3'),(2,5,'pref_cmp0','<= 1280 720'),(2,5,'pref_cmp1','> 720 576'),(2,5,'pref_decoder','libmpeg2'),(2,5,'pref_max_cpus','1'),(2,5,'pref_videorenderer','xv-blit'),(2,5,'pref_osdrenderer','softblend'),(2,5,'pref_osdfade','1'),(2,5,'pref_deint0','bobdeint'),(2,5,'pref_deint1','onefield'),(2,5,'pref_filters',''),(2,6,'pref_priority','4'),(2,6,'pref_cmp0','> 0 0'),(2,6,'pref_decoder','xvmc'),(2,6,'pref_max_cpus','1'),(2,6,'pref_videorenderer','xvmc-blit'),(2,6,'pref_osdrenderer','ia44blend'),(2,6,'pref_osdfade','0'),(2,6,'pref_deint0','bobdeint'),(2,6,'pref_deint1','onefield'),(2,6,'pref_filters',''),(2,7,'pref_priority','5'),(2,7,'pref_cmp0','> 0 0'),(2,7,'pref_decoder','libmpeg2'),(2,7,'pref_max_cpus','1'),(2,7,'pref_videorenderer','xv-blit'),(2,7,'pref_osdrenderer','chromakey'),(2,7,'pref_osdfade','0'),(2,7,'pref_deint0','bobdeint'),(2,7,'pref_deint1','onefield'),(2,7,'pref_filters',''),(3,8,'pref_priority','1'),(3,8,'pref_cmp0','<= 720 576'),(3,8,'pref_cmp1','> 0 0'),(3,8,'pref_decoder','ivtv'),(3,8,'pref_max_cpus','1'),(3,8,'pref_videorenderer','ivtv'),(3,8,'pref_osdrenderer','ivtv'),(3,8,'pref_osdfade','1'),(3,8,'pref_deint0','none'),(3,8,'pref_deint1','none'),(3,8,'pref_filters',''),(3,9,'pref_priority','2'),(3,9,'pref_cmp0','<= 720 576'),(3,9,'pref_cmp1','> 0 0'),(3,9,'pref_decoder','xvmc'),(3,9,'pref_max_cpus','1'),(3,9,'pref_videorenderer','xvmc-blit'),(3,9,'pref_osdrenderer','ia44blend'),(3,9,'pref_osdfade','0'),(3,9,'pref_deint0','bobdeint'),(3,9,'pref_deint1','onefield'),(3,9,'pref_filters',''),(3,10,'pref_priority','3'),(3,10,'pref_cmp0','<= 1280 720'),(3,10,'pref_cmp1','> 720 576'),(3,10,'pref_decoder','xvmc'),(3,10,'pref_max_cpus','1'),(3,10,'pref_videorenderer','xvmc-blit'),(3,10,'pref_osdrenderer','ia44blend'),(3,10,'pref_osdfade','0'),(3,10,'pref_deint0','bobdeint'),(3,10,'pref_deint1','onefield'),(3,10,'pref_filters',''),(3,11,'pref_priority','4'),(3,11,'pref_cmp0','> 0 0'),(3,11,'pref_decoder','xvmc'),(3,11,'pref_max_cpus','1'),(3,11,'pref_videorenderer','xvmc-blit'),(3,11,'pref_osdrenderer','ia44blend'),(3,11,'pref_osdfade','0'),(3,11,'pref_deint0','bobdeint'),(3,11,'pref_deint1','onefield'),(3,11,'pref_filters',''),(3,12,'pref_priority','5'),(3,12,'pref_cmp0','> 0 0'),(3,12,'pref_decoder','libmpeg2'),(3,12,'pref_max_cpus','1'),(3,12,'pref_videorenderer','xv-blit'),(3,12,'pref_osdrenderer','chromakey'),(3,12,'pref_osdfade','0'),(3,12,'pref_deint0','none'),(3,12,'pref_deint1','none'),(3,12,'pref_filters','');
+/*!40000 ALTER TABLE `displayprofiles` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `dtv_multiplex`
+--
+
+DROP TABLE IF EXISTS `dtv_multiplex`;
+CREATE TABLE `dtv_multiplex` (
+ `mplexid` smallint(6) NOT NULL auto_increment,
+ `sourceid` smallint(6) default NULL,
+ `transportid` int(11) default NULL,
+ `networkid` int(11) default NULL,
+ `frequency` int(11) default NULL,
+ `inversion` char(1) default 'a',
+ `symbolrate` int(11) default NULL,
+ `fec` varchar(10) default 'auto',
+ `polarity` char(1) default NULL,
+ `modulation` varchar(10) default 'auto',
+ `bandwidth` char(1) default 'a',
+ `lp_code_rate` varchar(10) default 'auto',
+ `transmission_mode` char(1) default 'a',
+ `guard_interval` varchar(10) default 'auto',
+ `visible` smallint(1) NOT NULL default '0',
+ `constellation` varchar(10) default 'auto',
+ `hierarchy` varchar(10) default 'auto',
+ `hp_code_rate` varchar(10) default 'auto',
+ `sistandard` varchar(10) default 'dvb',
+ `serviceversion` smallint(6) default '33',
+ `updatetimestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
+ PRIMARY KEY (`mplexid`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `dtv_multiplex`
+--
+
+LOCK TABLES `dtv_multiplex` WRITE;
+/*!40000 ALTER TABLE `dtv_multiplex` DISABLE KEYS */;
+/*!40000 ALTER TABLE `dtv_multiplex` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `dtv_privatetypes`
+--
+
+DROP TABLE IF EXISTS `dtv_privatetypes`;
+CREATE TABLE `dtv_privatetypes` (
+ `sitype` varchar(4) NOT NULL default '',
+ `networkid` int(11) NOT NULL default '0',
+ `private_type` varchar(20) NOT NULL default '',
+ `private_value` varchar(100) NOT NULL default ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `dtv_privatetypes`
+--
+
+LOCK TABLES `dtv_privatetypes` WRITE;
+/*!40000 ALTER TABLE `dtv_privatetypes` DISABLE KEYS */;
+INSERT INTO `dtv_privatetypes` VALUES ('dvb',9018,'channel_numbers','131'),('dvb',9018,'guide_fixup','2'),('dvb',256,'guide_fixup','1'),('dvb',257,'guide_fixup','1'),('dvb',256,'tv_types','1,150,134,133'),('dvb',257,'tv_types','1,150,134,133'),('dvb',4100,'sdt_mapping','1'),('dvb',4101,'sdt_mapping','1'),('dvb',4102,'sdt_mapping','1'),('dvb',4103,'sdt_mapping','1'),('dvb',4104,'sdt_mapping','1'),('dvb',4105,'sdt_mapping','1'),('dvb',4106,'sdt_mapping','1'),('dvb',4107,'sdt_mapping','1'),('dvb',4097,'sdt_mapping','1'),('dvb',4098,'sdt_mapping','1'),('dvb',4100,'tv_types','1,145,154'),('dvb',4101,'tv_types','1,145,154'),('dvb',4102,'tv_types','1,145,154'),('dvb',4103,'tv_types','1,145,154'),('dvb',4104,'tv_types','1,145,154'),('dvb',4105,'tv_types','1,145,154'),('dvb',4106,'tv_types','1,145,154'),('dvb',4107,'tv_types','1,145,154'),('dvb',4097,'tv_types','1,145,154'),('dvb',4098,'tv_types','1,145,154'),('dvb',4100,'guide_fixup','1'),('dvb',4101,'guide_fixup','1'),('dvb',4102,'guide_fixup','1'),('dvb',4103,'guide_fixup','1'),('dvb',4104,'guide_fixup','1'),('dvb',4105,'guide_fixup','1'),('dvb',4106,'guide_fixup','1'),('dvb',4107,'guide_fixup','1'),('dvb',4096,'guide_fixup','5'),('dvb',4097,'guide_fixup','1'),('dvb',4098,'guide_fixup','1'),('dvb',94,'tv_types','1,128'),('atsc',1793,'guide_fixup','3'),('dvb',40999,'guide_fixup','4'),('dvb',70,'force_guide_present','yes'),('dvb',70,'guide_ranges','80,80,96,96'),('dvb',4112,'channel_numbers','131'),('dvb',4115,'channel_numbers','131'),('dvb',4116,'channel_numbers','131'),('dvb',12802,'channel_numbers','131'),('dvb',12803,'channel_numbers','131'),('dvb',12829,'channel_numbers','131'),('dvb',40999,'parse_subtitle_list','1070,1308,1041,1306,1307,1030,1016,1131,1068,1069'),('dvb',4096,'guide_fixup','5');
+/*!40000 ALTER TABLE `dtv_privatetypes` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `dvdbookmark`
+--
+
+DROP TABLE IF EXISTS `dvdbookmark`;
+CREATE TABLE `dvdbookmark` (
+ `serialid` varchar(16) NOT NULL default '',
+ `name` varchar(32) default NULL,
+ `title` smallint(6) NOT NULL default '0',
+ `audionum` tinyint(4) NOT NULL default '-1',
+ `subtitlenum` tinyint(4) NOT NULL default '-1',
+ `framenum` bigint(20) NOT NULL default '0',
+ `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
+ PRIMARY KEY (`serialid`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `dvdbookmark`
+--
+
+LOCK TABLES `dvdbookmark` WRITE;
+/*!40000 ALTER TABLE `dvdbookmark` DISABLE KEYS */;
+/*!40000 ALTER TABLE `dvdbookmark` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `dvdinput`
+--
+
+DROP TABLE IF EXISTS `dvdinput`;
+CREATE TABLE `dvdinput` (
+ `intid` int(10) unsigned NOT NULL,
+ `hsize` int(10) unsigned default NULL,
+ `vsize` int(10) unsigned default NULL,
+ `ar_num` int(10) unsigned default NULL,
+ `ar_denom` int(10) unsigned default NULL,
+ `fr_code` int(10) unsigned default NULL,
+ `letterbox` tinyint(1) default NULL,
+ `v_format` varchar(16) default NULL,
+ PRIMARY KEY (`intid`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `dvdinput`
+--
+
+LOCK TABLES `dvdinput` WRITE;
+/*!40000 ALTER TABLE `dvdinput` DISABLE KEYS */;
+INSERT INTO `dvdinput` VALUES (1,720,480,16,9,1,1,'ntsc'),(2,720,480,16,9,1,0,'ntsc'),(3,720,480,4,3,1,1,'ntsc'),(4,720,480,4,3,1,0,'ntsc'),(5,720,576,16,9,3,1,'pal'),(6,720,576,16,9,3,0,'pal'),(7,720,576,4,3,3,1,'pal'),(8,720,576,4,3,3,0,'pal');
+/*!40000 ALTER TABLE `dvdinput` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `dvdtranscode`
+--
+
+DROP TABLE IF EXISTS `dvdtranscode`;
+CREATE TABLE `dvdtranscode` (
+ `intid` int(11) NOT NULL auto_increment,
+ `input` int(10) unsigned default NULL,
+ `name` varchar(128) NOT NULL,
+ `sync_mode` int(10) unsigned default NULL,
+ `use_yv12` tinyint(1) default NULL,
+ `cliptop` int(11) default NULL,
+ `clipbottom` int(11) default NULL,
+ `clipleft` int(11) default NULL,
+ `clipright` int(11) default NULL,
+ `f_resize_h` int(11) default NULL,
+ `f_resize_w` int(11) default NULL,
+ `hq_resize_h` int(11) default NULL,
+ `hq_resize_w` int(11) default NULL,
+ `grow_h` int(11) default NULL,
+ `grow_w` int(11) default NULL,
+ `clip2top` int(11) default NULL,
+ `clip2bottom` int(11) default NULL,
+ `clip2left` int(11) default NULL,
+ `clip2right` int(11) default NULL,
+ `codec` varchar(128) NOT NULL,
+ `codec_param` varchar(128) default NULL,
+ `bitrate` int(11) default NULL,
+ `a_sample_r` int(11) default NULL,
+ `a_bitrate` int(11) default NULL,
+ `two_pass` tinyint(1) default NULL,
+ `tc_param` varchar(128) default NULL,
+ PRIMARY KEY (`intid`)
+) ENGINE=MyISAM AUTO_INCREMENT=12 DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `dvdtranscode`
+--
+
+LOCK TABLES `dvdtranscode` WRITE;
+/*!40000 ALTER TABLE `dvdtranscode` DISABLE KEYS */;
+INSERT INTO `dvdtranscode` VALUES (1,1,'Good',2,1,16,16,0,0,2,0,0,0,0,0,32,32,8,8,'divx5',NULL,1618,NULL,NULL,0,NULL),(2,2,'Excellent',2,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,'divx5',NULL,0,NULL,NULL,1,NULL),(3,2,'Good',2,1,0,0,8,8,0,0,0,0,0,0,0,0,0,0,'divx5',NULL,1618,NULL,NULL,0,NULL),(4,2,'Medium',2,1,0,0,8,8,5,5,0,0,0,0,0,0,0,0,'divx5',NULL,1200,NULL,NULL,0,NULL),(5,3,'Good',2,1,0,0,0,0,0,0,0,0,2,0,80,80,8,8,'divx5',NULL,0,NULL,NULL,0,NULL),(6,4,'Excellent',2,1,0,0,0,0,0,0,0,0,2,0,0,0,0,0,'divx5',NULL,0,NULL,NULL,1,NULL),(7,4,'Good',2,1,0,0,8,8,0,2,0,0,0,0,0,0,0,0,'divx5',NULL,1618,NULL,NULL,0,NULL),(8,5,'Good',1,1,16,16,0,0,5,0,0,0,0,0,40,40,8,8,'divx5',NULL,1618,NULL,NULL,0,NULL),(9,6,'Good',1,1,0,0,16,16,5,0,0,0,0,0,0,0,0,0,'divx5',NULL,1618,NULL,NULL,0,NULL),(10,7,'Good',1,1,0,0,0,0,1,0,0,0,0,0,76,76,8,8,'divx5',NULL,1618,NULL,NULL,0,NULL),(11,8,'Good',1,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,'divx5',NULL,1618,NULL,NULL,0,NULL);
+/*!40000 ALTER TABLE `dvdtranscode` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `eit_cache`
+--
+
+DROP TABLE IF EXISTS `eit_cache`;
+CREATE TABLE `eit_cache` (
+ `chanid` int(10) NOT NULL,
+ `eventid` int(10) unsigned NOT NULL default '0',
+ `tableid` tinyint(3) unsigned NOT NULL,
+ `version` tinyint(3) unsigned NOT NULL,
+ `endtime` int(10) unsigned NOT NULL,
+ `status` tinyint(4) NOT NULL default '0',
+ PRIMARY KEY (`chanid`,`eventid`,`status`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `eit_cache`
+--
+
+LOCK TABLES `eit_cache` WRITE;
+/*!40000 ALTER TABLE `eit_cache` DISABLE KEYS */;
+/*!40000 ALTER TABLE `eit_cache` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `favorites`
+--
+
+DROP TABLE IF EXISTS `favorites`;
+CREATE TABLE `favorites` (
+ `favid` int(11) unsigned NOT NULL auto_increment,
+ `userid` int(11) unsigned NOT NULL default '0',
+ `chanid` int(11) unsigned NOT NULL default '0',
+ PRIMARY KEY (`favid`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `favorites`
+--
+
+LOCK TABLES `favorites` WRITE;
+/*!40000 ALTER TABLE `favorites` DISABLE KEYS */;
+/*!40000 ALTER TABLE `favorites` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `filemarkup`
+--
+
+DROP TABLE IF EXISTS `filemarkup`;
+CREATE TABLE `filemarkup` (
+ `filename` text NOT NULL,
+ `mark` bigint(20) NOT NULL,
+ `offset` varchar(32) default NULL,
+ `type` int(11) NOT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `filemarkup`
+--
+
+LOCK TABLES `filemarkup` WRITE;
+/*!40000 ALTER TABLE `filemarkup` DISABLE KEYS */;
+/*!40000 ALTER TABLE `filemarkup` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `gallerymetadata`
+--
+
+DROP TABLE IF EXISTS `gallerymetadata`;
+CREATE TABLE `gallerymetadata` (
+ `image` varchar(255) NOT NULL,
+ `angle` int(11) NOT NULL,
+ PRIMARY KEY (`image`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `gallerymetadata`
+--
+
+LOCK TABLES `gallerymetadata` WRITE;
+/*!40000 ALTER TABLE `gallerymetadata` DISABLE KEYS */;
+/*!40000 ALTER TABLE `gallerymetadata` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `gamemetadata`
+--
+
+DROP TABLE IF EXISTS `gamemetadata`;
+CREATE TABLE `gamemetadata` (
+ `system` varchar(128) NOT NULL default '',
+ `romname` varchar(128) NOT NULL default '',
+ `gamename` varchar(128) NOT NULL default '',
+ `genre` varchar(128) NOT NULL default '',
+ `year` varchar(10) NOT NULL default '',
+ `publisher` varchar(128) NOT NULL default '',
+ `favorite` tinyint(1) default NULL,
+ `rompath` varchar(255) NOT NULL default '',
+ `gametype` varchar(64) NOT NULL default '',
+ `diskcount` tinyint(1) NOT NULL default '1',
+ `country` varchar(128) NOT NULL default '',
+ `crc_value` varchar(64) NOT NULL default '',
+ `display` tinyint(1) NOT NULL default '1',
+ `version` varchar(64) NOT NULL default '',
+ KEY `system` (`system`),
+ KEY `year` (`year`),
+ KEY `romname` (`romname`),
+ KEY `gamename` (`gamename`),
+ KEY `genre` (`genre`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `gamemetadata`
+--
+
+LOCK TABLES `gamemetadata` WRITE;
+/*!40000 ALTER TABLE `gamemetadata` DISABLE KEYS */;
+/*!40000 ALTER TABLE `gamemetadata` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `gameplayers`
+--
+
+DROP TABLE IF EXISTS `gameplayers`;
+CREATE TABLE `gameplayers` (
+ `gameplayerid` int(10) unsigned NOT NULL auto_increment,
+ `playername` varchar(64) NOT NULL default '',
+ `workingpath` varchar(255) NOT NULL default '',
+ `rompath` varchar(255) NOT NULL default '',
+ `screenshots` varchar(255) NOT NULL default '',
+ `commandline` text NOT NULL,
+ `gametype` varchar(64) NOT NULL default '',
+ `extensions` varchar(128) NOT NULL default '',
+ `spandisks` tinyint(1) NOT NULL default '0',
+ PRIMARY KEY (`gameplayerid`),
+ UNIQUE KEY `playername` (`playername`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `gameplayers`
+--
+
+LOCK TABLES `gameplayers` WRITE;
+/*!40000 ALTER TABLE `gameplayers` DISABLE KEYS */;
+/*!40000 ALTER TABLE `gameplayers` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `housekeeping`
+--
+
+DROP TABLE IF EXISTS `housekeeping`;
+CREATE TABLE `housekeeping` (
+ `tag` varchar(64) NOT NULL default '',
+ `lastrun` datetime default NULL,
+ PRIMARY KEY (`tag`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `housekeeping`
+--
+
+LOCK TABLES `housekeeping` WRITE;
+/*!40000 ALTER TABLE `housekeeping` DISABLE KEYS */;
+INSERT INTO `housekeeping` VALUES ('JobQueueCleanup','2006-10-07 14:23:53'),('InUseProgramsCleanup','2006-10-07 14:23:53'),('JobQueueRecover-myhost','2006-10-07 14:23:53'),('BackupDB','2008-02-21 08:34:39');
+/*!40000 ALTER TABLE `housekeeping` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `inputgroup`
+--
+
+DROP TABLE IF EXISTS `inputgroup`;
+CREATE TABLE `inputgroup` (
+ `cardinputid` int(10) unsigned NOT NULL,
+ `inputgroupid` int(10) unsigned NOT NULL,
+ `inputgroupname` varchar(32) NOT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `inputgroup`
+--
+
+LOCK TABLES `inputgroup` WRITE;
+/*!40000 ALTER TABLE `inputgroup` DISABLE KEYS */;
+/*!40000 ALTER TABLE `inputgroup` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `inuseprograms`
+--
+
+DROP TABLE IF EXISTS `inuseprograms`;
+CREATE TABLE `inuseprograms` (
+ `chanid` int(10) unsigned NOT NULL default '0',
+ `starttime` datetime NOT NULL default '0000-00-00 00:00:00',
+ `recusage` varchar(128) NOT NULL default '',
+ `lastupdatetime` datetime NOT NULL default '0000-00-00 00:00:00',
+ `hostname` varchar(255) NOT NULL default '',
+ `rechost` varchar(64) NOT NULL,
+ `recdir` varchar(255) NOT NULL default '',
+ KEY `chanid` (`chanid`,`starttime`),
+ KEY `recusage` (`recusage`,`lastupdatetime`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `inuseprograms`
+--
+
+LOCK TABLES `inuseprograms` WRITE;
+/*!40000 ALTER TABLE `inuseprograms` DISABLE KEYS */;
+/*!40000 ALTER TABLE `inuseprograms` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `jobqueue`
+--
+
+DROP TABLE IF EXISTS `jobqueue`;
+CREATE TABLE `jobqueue` (
+ `id` int(11) NOT NULL auto_increment,
+ `chanid` int(10) NOT NULL default '0',
+ `starttime` datetime NOT NULL default '0000-00-00 00:00:00',
+ `inserttime` datetime NOT NULL default '0000-00-00 00:00:00',
+ `type` int(11) NOT NULL default '0',
+ `cmds` int(11) NOT NULL default '0',
+ `flags` int(11) NOT NULL default '0',
+ `status` int(11) NOT NULL default '0',
+ `statustime` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
+ `hostname` varchar(255) NOT NULL default '',
+ `args` blob NOT NULL,
+ `comment` varchar(128) NOT NULL default '',
+ `schedruntime` datetime NOT NULL default '2007-01-01 00:00:00',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `chanid` (`chanid`,`starttime`,`type`,`inserttime`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `jobqueue`
+--
+
+LOCK TABLES `jobqueue` WRITE;
+/*!40000 ALTER TABLE `jobqueue` DISABLE KEYS */;
+/*!40000 ALTER TABLE `jobqueue` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `jumppoints`
+--
+
+DROP TABLE IF EXISTS `jumppoints`;
+CREATE TABLE `jumppoints` (
+ `destination` varchar(128) NOT NULL default '',
+ `description` varchar(255) default NULL,
+ `keylist` varchar(128) default NULL,
+ `hostname` varchar(255) NOT NULL default '',
+ PRIMARY KEY (`destination`,`hostname`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `jumppoints`
+--
+
+LOCK TABLES `jumppoints` WRITE;
+/*!40000 ALTER TABLE `jumppoints` DISABLE KEYS */;
+INSERT INTO `jumppoints` VALUES ('Reload Theme',NULL,'','myhost'),('Main Menu',NULL,'','myhost'),('Program Guide',NULL,'','myhost'),('Program Finder',NULL,'','myhost'),('Manage Recordings / Fix Conflicts',NULL,'','myhost'),('Program Recording Priorities',NULL,'','myhost'),('Channel Recording Priorities',NULL,'','myhost'),('TV Recording Playback',NULL,'','myhost'),('TV Recording Deletion',NULL,'','myhost'),('Live TV',NULL,'','myhost'),('Live TV In Guide',NULL,'','myhost'),('Manual Record Scheduling',NULL,'','myhost'),('Status Screen',NULL,'','myhost'),('Previously Recorded',NULL,'','myhost'),('Play DVD',NULL,'','myhost'),('Play VCD',NULL,'','myhost'),('Rip DVD',NULL,'','myhost'),('Netflix Browser',NULL,'','myhost'),('Netflix Queue',NULL,'','myhost'),('Netflix History',NULL,'','myhost'),('MythGallery',NULL,'','myhost'),('MythGame',NULL,'','myhost'),('Play music',NULL,'','myhost'),('Select music playlists',NULL,'','myhost'),('Rip CD',NULL,'','myhost'),('Scan music',NULL,'','myhost'),('MythNews',NULL,'','myhost'),('MythVideo',NULL,'','myhost'),('Video Manager',NULL,'','myhost'),('Video Browser',NULL,'','myhost'),('Video Listings',NULL,'','myhost'),('Video Gallery',NULL,'','myhost'),('MythWeather',NULL,'','myhost'),('ScreenShot','','Alt+C,Print','myhost');
+/*!40000 ALTER TABLE `jumppoints` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `keybindings`
+--
+
+DROP TABLE IF EXISTS `keybindings`;
+CREATE TABLE `keybindings` (
+ `context` varchar(32) NOT NULL default '',
+ `action` varchar(32) NOT NULL default '',
+ `description` varchar(255) default NULL,
+ `keylist` varchar(128) default NULL,
+ `hostname` varchar(255) NOT NULL default '',
+ PRIMARY KEY (`context`,`action`,`hostname`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `keybindings`
+--
+
+LOCK TABLES `keybindings` WRITE;
+/*!40000 ALTER TABLE `keybindings` DISABLE KEYS */;
+INSERT INTO `keybindings` VALUES ('Global','UP','Up Arrow','Up','myhost'),('Global','DOWN','Down Arrow','Down','myhost'),('Global','LEFT','Left Arrow','Left','myhost'),('Global','RIGHT','Right Arrow','Right','myhost'),('Global','SELECT','Select','Return,Enter,Space','myhost'),('Global','ESCAPE','Escape','Esc','myhost'),('Global','MENU','Pop-up menu','M','myhost'),('Global','INFO','More information','I','myhost'),('Global','PAGEUP','Page Up','PgUp','myhost'),('Global','PAGEDOWN','Page Down','PgDown','myhost'),('Global','PREVVIEW','Previous View','Home','myhost'),('Global','NEXTVIEW','Next View','End','myhost'),('Global','HELP','Help','F1','myhost'),('Global','EJECT','Eject Removable Media','','myhost'),('Global','0','0','0','myhost'),('Global','1','1','1','myhost'),('Global','2','2','2','myhost'),('Global','3','3','3','myhost'),('Global','4','4','4','myhost'),('Global','5','5','5','myhost'),('Global','6','6','6','myhost'),('Global','7','7','7','myhost'),('Global','8','8','8','myhost'),('Global','9','9','9','myhost'),('qt','DELETE','Delete','D','myhost'),('qt','EDIT','Edit','E','myhost'),('TV Frontend','PAGEUP','Page Up','3','myhost'),('TV Frontend','PAGEDOWN','Page Down','9','myhost'),('TV Frontend','DELETE','Delete Program','D','myhost'),('TV Frontend','PLAYBACK','Play Program','P','myhost'),('TV Frontend','TOGGLERECORD','Toggle recording status of current program','R','myhost'),('TV Frontend','DAYLEFT','Page the program guide back one day','Home,7','myhost'),('TV Frontend','DAYRIGHT','Page the program guide forward one day','End,1','myhost'),('TV Frontend','PAGELEFT','Page the program guide left',',,<','myhost'),('TV Frontend','PAGERIGHT','Page the program guide right','>,.','myhost'),('TV Frontend','TOGGLEFAV','Toggle the current channel as a favorite','?','myhost'),('TV Frontend','NEXTFAV','Toggle showing all channels or just favorites in the program guide.','/','myhost'),('TV Frontend','CHANUPDATE','Switch channels without exiting guide in Live TV mode.','X','myhost'),('TV Frontend','RANKINC','Increase program or channel rank','Right','myhost'),('TV Frontend','RANKDEC','Decrease program or channel rank','Left','myhost'),('TV Frontend','UPCOMING','List upcoming episodes','O','myhost'),('TV Frontend','DETAILS','Show program details','U','myhost'),('TV Frontend','VIEWCARD','Switch Capture Card view','Y','myhost'),('TV Frontend','CUSTOMEDIT','Edit Custom Record Rule','E','myhost'),('TV Playback','CLEAROSD','Clear OSD','Backspace','myhost'),('TV Playback','PAUSE','Pause','P','myhost'),('TV Playback','DELETE','Delete Program','D','myhost'),('TV Playback','SEEKFFWD','Fast Forward','Right','myhost'),('TV Playback','SEEKRWND','Rewind','Left','myhost'),('TV Playback','ARBSEEK','Arbitrary Seek','*','myhost'),('TV Playback','CHANNELUP','Channel up','Up','myhost'),('TV Playback','CHANNELDOWN','Channel down','Down','myhost'),('TV Playback','NEXTFAV','Switch to the next favorite channel','/','myhost'),('TV Playback','PREVCHAN','Switch to the previous channel','H','myhost'),('TV Playback','JUMPFFWD','Jump ahead','PgDown','myhost'),('TV Playback','JUMPRWND','Jump back','PgUp','myhost'),('TV Playback','JUMPBKMRK','Jump to bookmark','K','myhost'),('TV Playback','FFWDSTICKY','Fast Forward (Sticky) or Forward one frame while paused','>,.','myhost'),('TV Playback','RWNDSTICKY','Rewind (Sticky) or Rewind one frame while paused',',,<','myhost'),('TV Frontend','PAGETOP','Page to top of list','','myhost'),('TV Frontend','PAGEMIDDLE','Page to middle of list','','myhost'),('TV Playback','SKIPCOMMERCIAL','Skip Commercial','Z,End','myhost'),('TV Playback','SKIPCOMMBACK','Skip Commercial (Reverse)','Q,Home','myhost'),('TV Playback','JUMPSTART','Jump to the start of the recording.','Ctrl+B','myhost'),('TV Playback','TOGGLEBROWSE','Toggle channel browse mode','O','myhost'),('TV Playback','TOGGLERECORD','Toggle recording status of current program','R','myhost'),('TV Playback','TOGGLEFAV','Toggle the current channel as a favorite','?','myhost'),('TV Playback','VOLUMEDOWN','Volume down','[,{,F10,Volume Down','myhost'),('TV Playback','VOLUMEUP','Volume up','],},F11,Volume Up','myhost'),('TV Playback','MUTE','Mute','|,\\,F9,Volume Mute','myhost'),('TV Playback','TOGGLEPIPMODE','Toggle Picture-in-Picture mode','V','myhost'),('TV Playback','TOGGLEPIPWINDOW','Toggle active PiP window','B','myhost'),('TV Playback','SWAPPIP','Swap PiP/Main','N','myhost'),('TV Playback','TOGGLECC','Toggle any captions','T','myhost'),('TV Playback','TOGGLETTC','Toggle Teletext Captions','','myhost'),('TV Playback','TOGGLESUBTITLE','Toggle Subtitles','','myhost'),('TV Playback','TOGGLECC608','Toggle VBI CC','','myhost'),('TV Playback','TOGGLECC708','Toggle ATSC CC','','myhost'),('TV Playback','TOGGLETTM','Toggle Teletext Menu','','myhost'),('TV Playback','SELECTAUDIO_0','Play audio track 1','','myhost'),('TV Playback','SELECTAUDIO_1','Play audio track 2','','myhost'),('TV Playback','SELECTSUBTITLE_0','Display subtitle 1','','myhost'),('TV Playback','SELECTSUBTITLE_1','Display subtitle 2','','myhost'),('TV Playback','SELECTCC608_0','Display VBI CC1','','myhost'),('TV Playback','SELECTCC608_1','Display VBI CC2','','myhost'),('TV Playback','SELECTCC608_2','Display VBI CC3','','myhost'),('TV Playback','SELECTCC608_3','Display VBI CC4','','myhost'),('TV Playback','SELECTCC708_0','Display ATSC CC1','','myhost'),('TV Playback','SELECTCC708_1','Display ATSC CC2','','myhost'),('TV Playback','SELECTCC708_2','Display ATSC CC3','','myhost'),('TV Playback','SELECTCC708_3','Display ATSC CC4','','myhost'),('TV Playback','NEXTAUDIO','Next audio track','+','myhost'),('TV Playback','PREVAUDIO','Previous audio track','-','myhost'),('TV Playback','NEXTSUBTITLE','Next subtitle track','','myhost'),('TV Playback','PREVSUBTITLE','Previous subtitle track','','myhost'),('TV Playback','NEXTCC608','Next VBI CC track','','myhost'),('TV Playback','PREVCC608','Previous VBI CC track','','myhost'),('TV Playback','NEXTCC708','Next ATSC CC track','','myhost'),('TV Playback','PREVCC708','Previous ATSC CC track','','myhost'),('TV Playback','NEXTCC','Next of any captions','','myhost'),('TV Playback','NEXTSCAN','Next video scan overidemode','','myhost'),('TV Playback','QUEUETRANSCODE','Queue the current recording for transcoding','X','myhost'),('TV Playback','SPEEDINC','Increase the playback speed','U','myhost'),('TV Playback','SPEEDDEC','Decrease the playback speed','J','myhost'),('TV Playback','ADJUSTSTRETCH','Turn on time stretch control','A','myhost'),('TV Playback','STRETCHINC','Increase time stretch speed','','myhost'),('TV Playback','STRETCHDEC','Decrease time stretch speed','','myhost'),('TV Playback','TOGGLESTRETCH','Toggle time stretch speed','','myhost'),('TV Playback','TOGGLEAUDIOSYNC','Turn on audio sync adjustment controls','','myhost'),('TV Playback','TOGGLEPICCONTROLS','Playback picture adjustments','F','myhost'),('TV Playback','TOGGLECHANCONTROLS','Recording picture adjustments for this channel','Ctrl+G','myhost'),('TV Playback','TOGGLERECCONTROLS','Recording picture adjustments for this recorder','G','myhost'),('TV Playback','TOGGLEEDIT','Start Edit Mode','E','myhost'),('TV Playback','CYCLECOMMSKIPMODE','Cycle Commercial Skip mode','','myhost'),('TV Playback','GUIDE','Show the Program Guide','S','myhost'),('TV Playback','FINDER','Show the Program Finder','#','myhost'),('TV Playback','TOGGLESLEEP','Toggle the Sleep Timer','F8','myhost'),('TV Playback','PLAY','Play','Ctrl+P','myhost'),('TV Playback','JUMPPREV','Jump to previously played recording','','myhost'),('TV Playback','JUMPREC','Display menu of recorded programs to jump to','','myhost'),('TV Playback','SIGNALMON','Monitor Signal Quality','F7','myhost'),('TV Playback','JUMPTODVDROOTMENU','Jump to the DVD Root Menu','','myhost'),('TV Editing','CLEARMAP','Clear editing cut points','C,Q,Home','myhost'),('TV Editing','INVERTMAP','Invert Begin/End cut points','I','myhost'),('TV Editing','LOADCOMMSKIP','Load cut list from commercial skips','Z,End','myhost'),('TV Editing','NEXTCUT','Jump to the next cut point','PgDown','myhost'),('TV Editing','PREVCUT','Jump to the previous cut point','PgUp','myhost'),('TV Editing','BIGJUMPREW','Jump back 10x the normal amount',',,<','myhost'),('TV Editing','BIGJUMPFWD','Jump forward 10x the normal amount','>,.','myhost'),('TV Editing','TOGGLEEDIT','Exit out of Edit Mode','E','myhost'),('Teletext Menu','NEXTPAGE','Next Page','Down','myhost'),('Teletext Menu','PREVPAGE','Previous Page','Up','myhost'),('Teletext Menu','NEXTSUBPAGE','Next Subpage','Right','myhost'),('Teletext Menu','PREVSUBPAGE','Previous Subpage','Left','myhost'),('Teletext Menu','TOGGLETT','Toggle Teletext','T','myhost'),('Teletext Menu','MENURED','Menu Red','F2','myhost'),('Teletext Menu','MENUGREEN','Menu Green','F3','myhost'),('Teletext Menu','MENUYELLOW','Menu Yellow','F4','myhost'),('Teletext Menu','MENUBLUE','Menu Blue','F5','myhost'),('Teletext Menu','MENUWHITE','Menu White','F6','myhost'),('Teletext Menu','TOGGLEBACKGROUND','Toggle Background','F7','myhost'),('Teletext Menu','REVEAL','Reveal hidden Text','F8','myhost'),('ITV Menu','MENURED','Menu Red','F2','myhost'),('ITV Menu','MENUGREEN','Menu Green','F3','myhost'),('ITV Menu','MENUYELLOW','Menu Yellow','F4','myhost'),('ITV Menu','MENUBLUE','Menu Blue','F5','myhost'),('ITV Menu','TEXTEXIT','Menu Exit','F6','myhost'),('ITV Menu','MENUTEXT','Menu Text','F7','myhost'),('Archive','TOGGLECUT','Toggle use cut list state for selected program','C','myhost'),('NetFlix','MOVETOTOP','Moves movie to top of queue','1','myhost'),('NetFlix','REMOVE','Removes movie from queue','D','myhost'),('Gallery','PLAY','Start/Stop Slideshow','P','myhost'),('Gallery','HOME','Go to the first image in thumbnail view','Home','myhost'),('Gallery','END','Go to the last image in thumbnail view','End','myhost'),('Gallery','MENU','Toggle activating menu in thumbnail view','M','myhost'),('Gallery','SLIDESHOW','Start Slideshow in thumbnail view','S','myhost'),('Gallery','RANDOMSHOW','Start Random Slideshow in thumbnail view','R','myhost'),('Gallery','ROTRIGHT','Rotate image right 90 degrees','],3','myhost'),('Gallery','ROTLEFT','Rotate image left 90 degrees','[,1','myhost'),('Gallery','ZOOMOUT','Zoom image out','7','myhost'),('Gallery','ZOOMIN','Zoom image in','9','myhost'),('Gallery','SCROLLUP','Scroll image up','2','myhost'),('Gallery','SCROLLLEFT','Scroll image left','4','myhost'),('Gallery','SCROLLRIGHT','Scroll image right','6','myhost'),('Gallery','SCROLLDOWN','Scroll image down','8','myhost'),('Gallery','RECENTER','Recenter image','5','myhost'),('Gallery','FULLSIZE','Full-size (un-zoom) image','0','myhost'),('Gallery','UPLEFT','Go to the upper-left corner of the image','PgUp','myhost'),('Gallery','LOWRIGHT','Go to the lower-right corner of the image','PgDown','myhost'),('Gallery','INFO','Toggle Showing Information about Image','I','myhost'),('Gallery','DELETE','Delete marked images or current image if none are marked','D','myhost'),('Gallery','MARK','Mark image','T','myhost'),('Game','TOGGLEFAV','Toggle the current game as a favorite','?,/','myhost'),('Game','INCSEARCH','Show incremental search dialog','Ctrl+S','myhost'),('Game','INCSEARCHNEXT','Incremental search find next match','Ctrl+N','myhost'),('Music','DELETE','Delete track from playlist','D','myhost'),('Music','NEXTTRACK','Move to the next track','>,.,Z,End','myhost'),('Music','PREVTRACK','Move to the previous track',',,<,Q,Home','myhost'),('Music','FFWD','Fast forward','PgDown','myhost'),('Music','RWND','Rewind','PgUp','myhost'),('Music','PAUSE','Pause/Start playback','P','myhost'),('Music','STOP','Stop playback','O','myhost'),('Music','VOLUMEDOWN','Volume down','[,{,F10,Volume Down','myhost'),('Music','VOLUMEUP','Volume up','],},F11,Volume Up','myhost'),('Music','MUTE','Mute','|,\\,F9,Volume Mute','myhost'),('Music','CYCLEVIS','Cycle visualizer mode','6','myhost'),('Music','BLANKSCR','Blank screen','5','myhost'),('Music','THMBUP','Increase rating','9','myhost'),('Music','THMBDOWN','Decrease rating','7','myhost'),('Music','REFRESH','Refresh music tree','8','myhost'),('Music','FILTER','Filter All My Music','F','myhost'),('Music','INCSEARCH','Show incremental search dialog','Ctrl+S','myhost'),('Music','INCSEARCHNEXT','Incremental search find next match','Ctrl+N','myhost'),('News','RETRIEVENEWS','Update news items','I','myhost'),('News','FORCERETRIEVE','Force update news items','M','myhost'),('News','CANCEL','Cancel news item updating','C','myhost'),('Video','FILTER','Open video filter dialog','F','myhost'),('Video','DELETE','Delete video','D','myhost'),('Video','BROWSE','Change browsable in video manager','B','myhost'),('Video','INCPARENT','Increase Parental Level','],},F11','myhost'),('Video','DECPARENT','Decrease Parental Level','[,{,F10','myhost'),('Video','HOME','Go to the first video','Home','myhost'),('Video','END','Go to the last video','End','myhost'),('Weather','PAUSE','Pause current page','P','myhost'),('Welcome','STARTXTERM','Open an Xterm window','F12','myhost'),('Welcome','SHOWSETTINGS','Show Mythshutdown settings','F11','myhost'),('TV Frontend','CHANGERECGROUP','Change Recording Group','','myhost'),('TV Frontend','PAGEBOTTOM','Page to bottom of list','','myhost'),('TV Frontend','TOGGLEEPGORDER','Reverse the channel order in the program guide','0','myhost'),('TV Frontend','GUIDE','Show the Program Guide','S','myhost'),('TV Frontend','FINDER','Show the Program Finder','#','myhost'),('TV Frontend','VOLUMEDOWN','Volume down','[,{,F10,Volume Down','myhost'),('TV Frontend','VOLUMEUP','Volume up','],},F11,Volume Up','myhost'),('TV Frontend','MUTE','Mute','|,\\,F9,Volume Mute','myhost'),('TV Frontend','VIEWINPUT','Switch Capture Card view','C','myhost'),('TV Frontend','CHANGEGROUPVIEW','Change Group View','','myhost'),('TV Playback','NEXTSOURCE','Next Video Source','Y','myhost'),('TV Playback','PREVSOURCE','Previous Video Source','Ctrl+Y','myhost'),('TV Playback','NEXTINPUT','Next Input','C','myhost'),('TV Playback','NEXTCARD','Next Card','','myhost'),('TV Playback','TOGGLEASPECT','Toggle the video aspect ratio','Ctrl+W','myhost'),('TV Playback','TOGGLEFILL','Next Preconfigured Zoom mode','W','myhost'),('TV Playback','VIEWSCHEDULED','Display scheduled recording list','','myhost'),('TV Playback','EXITSHOWNOPROMPTS','Exit Show without any prompts','','myhost'),('TV Playback','SCREENSHOT','Save screenshot of current video frame','','myhost'),('ITV Menu','MENUEPG','Menu EPG','F12','myhost');
+/*!40000 ALTER TABLE `keybindings` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `keyword`
+--
+
+DROP TABLE IF EXISTS `keyword`;
+CREATE TABLE `keyword` (
+ `phrase` varchar(128) NOT NULL default '',
+ `searchtype` int(10) unsigned NOT NULL default '3',
+ UNIQUE KEY `phrase` (`phrase`,`searchtype`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `keyword`
+--
+
+LOCK TABLES `keyword` WRITE;
+/*!40000 ALTER TABLE `keyword` DISABLE KEYS */;
+/*!40000 ALTER TABLE `keyword` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `music_albums`
+--
+
+DROP TABLE IF EXISTS `music_albums`;
+CREATE TABLE `music_albums` (
+ `album_id` int(11) unsigned NOT NULL auto_increment,
+ `artist_id` int(11) unsigned NOT NULL default '0',
+ `album_name` varchar(255) NOT NULL default '',
+ `year` smallint(6) NOT NULL default '0',
+ `compilation` tinyint(1) unsigned NOT NULL default '0',
+ PRIMARY KEY (`album_id`),
+ KEY `idx_album_name` (`album_name`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `music_albums`
+--
+
+LOCK TABLES `music_albums` WRITE;
+/*!40000 ALTER TABLE `music_albums` DISABLE KEYS */;
+/*!40000 ALTER TABLE `music_albums` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `music_artists`
+--
+
+DROP TABLE IF EXISTS `music_artists`;
+CREATE TABLE `music_artists` (
+ `artist_id` int(11) unsigned NOT NULL auto_increment,
+ `artist_name` varchar(255) NOT NULL default '',
+ PRIMARY KEY (`artist_id`),
+ KEY `idx_artist_name` (`artist_name`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `music_artists`
+--
+
+LOCK TABLES `music_artists` WRITE;
+/*!40000 ALTER TABLE `music_artists` DISABLE KEYS */;
+/*!40000 ALTER TABLE `music_artists` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `music_genres`
+--
+
+DROP TABLE IF EXISTS `music_genres`;
+CREATE TABLE `music_genres` (
+ `genre_id` int(11) unsigned NOT NULL auto_increment,
+ `genre` varchar(25) NOT NULL default '',
+ PRIMARY KEY (`genre_id`),
+ KEY `idx_genre` (`genre`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `music_genres`
+--
+
+LOCK TABLES `music_genres` WRITE;
+/*!40000 ALTER TABLE `music_genres` DISABLE KEYS */;
+/*!40000 ALTER TABLE `music_genres` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `music_playlists`
+--
+
+DROP TABLE IF EXISTS `music_playlists`;
+CREATE TABLE `music_playlists` (
+ `playlist_id` int(11) unsigned NOT NULL auto_increment,
+ `playlist_name` varchar(255) NOT NULL default '',
+ `playlist_songs` text NOT NULL,
+ `last_accessed` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
+ `length` int(11) unsigned NOT NULL default '0',
+ `songcount` smallint(8) unsigned NOT NULL default '0',
+ `hostname` varchar(255) NOT NULL default '',
+ PRIMARY KEY (`playlist_id`)
+) ENGINE=MyISAM AUTO_INCREMENT=3 DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `music_playlists`
+--
+
+LOCK TABLES `music_playlists` WRITE;
+/*!40000 ALTER TABLE `music_playlists` DISABLE KEYS */;
+INSERT INTO `music_playlists` VALUES (1,'default_playlist_storage','','2006-10-07 16:07:39',0,0,'myhost'),(2,'backup_playlist_storage','','2006-10-07 16:07:39',0,0,'myhost');
+/*!40000 ALTER TABLE `music_playlists` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `music_smartplaylist_categories`
+--
+
+DROP TABLE IF EXISTS `music_smartplaylist_categories`;
+CREATE TABLE `music_smartplaylist_categories` (
+ `categoryid` int(10) unsigned NOT NULL auto_increment,
+ `name` varchar(128) NOT NULL,
+ PRIMARY KEY (`categoryid`),
+ KEY `name` (`name`)
+) ENGINE=MyISAM AUTO_INCREMENT=4 DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `music_smartplaylist_categories`
+--
+
+LOCK TABLES `music_smartplaylist_categories` WRITE;
+/*!40000 ALTER TABLE `music_smartplaylist_categories` DISABLE KEYS */;
+INSERT INTO `music_smartplaylist_categories` VALUES (1,'Decades'),(2,'Favourite Tracks'),(3,'New Tracks');
+/*!40000 ALTER TABLE `music_smartplaylist_categories` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `music_smartplaylist_items`
+--
+
+DROP TABLE IF EXISTS `music_smartplaylist_items`;
+CREATE TABLE `music_smartplaylist_items` (
+ `smartplaylistitemid` int(10) unsigned NOT NULL auto_increment,
+ `smartplaylistid` int(10) unsigned NOT NULL,
+ `field` varchar(50) NOT NULL,
+ `operator` varchar(20) NOT NULL,
+ `value1` varchar(255) NOT NULL,
+ `value2` varchar(255) NOT NULL,
+ PRIMARY KEY (`smartplaylistitemid`),
+ KEY `smartplaylistid` (`smartplaylistid`)
+) ENGINE=MyISAM AUTO_INCREMENT=9 DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `music_smartplaylist_items`
+--
+
+LOCK TABLES `music_smartplaylist_items` WRITE;
+/*!40000 ALTER TABLE `music_smartplaylist_items` DISABLE KEYS */;
+INSERT INTO `music_smartplaylist_items` VALUES (1,1,'Year','is between','1960','1969'),(2,2,'Year','is between','1970','1979'),(3,3,'Year','is between','1980','1989'),(4,4,'Year','is between','1990','1999'),(5,5,'Year','is between','2000','2009'),(6,6,'Rating','is greater than','7','0'),(7,7,'Play Count','is greater than','0','0'),(8,8,'Play Count','is equal to','0','0');
+/*!40000 ALTER TABLE `music_smartplaylist_items` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `music_smartplaylists`
+--
+
+DROP TABLE IF EXISTS `music_smartplaylists`;
+CREATE TABLE `music_smartplaylists` (
+ `smartplaylistid` int(10) unsigned NOT NULL auto_increment,
+ `name` varchar(128) NOT NULL,
+ `categoryid` int(10) unsigned NOT NULL,
+ `matchtype` set('All','Any') NOT NULL default 'All',
+ `orderby` varchar(128) NOT NULL default '',
+ `limitto` int(10) unsigned NOT NULL default '0',
+ PRIMARY KEY (`smartplaylistid`),
+ KEY `name` (`name`),
+ KEY `categoryid` (`categoryid`)
+) ENGINE=MyISAM AUTO_INCREMENT=9 DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `music_smartplaylists`
+--
+
+LOCK TABLES `music_smartplaylists` WRITE;
+/*!40000 ALTER TABLE `music_smartplaylists` DISABLE KEYS */;
+INSERT INTO `music_smartplaylists` VALUES (1,'1960\'s',1,'All','Artist (A)',0),(2,'1970\'s',1,'All','Artist (A)',0),(3,'1980\'s',1,'All','Artist (A)',0),(4,'1990\'s',1,'All','Artist (A)',0),(5,'2000\'s',1,'All','Artist (A)',0),(6,'Favorite Tracks',2,'All','Artist (A), Album (A)',0),(7,'100 Most Played Tracks',2,'All','Play Count (D)',100),(8,'Never Played Tracks',3,'All','Artist (A), Album (A)',0);
+/*!40000 ALTER TABLE `music_smartplaylists` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `music_songs`
+--
+
+DROP TABLE IF EXISTS `music_songs`;
+CREATE TABLE `music_songs` (
+ `song_id` int(11) unsigned NOT NULL auto_increment,
+ `filename` text NOT NULL,
+ `name` varchar(255) NOT NULL default '',
+ `track` smallint(6) unsigned NOT NULL default '0',
+ `artist_id` int(11) unsigned NOT NULL default '0',
+ `album_id` int(11) unsigned NOT NULL default '0',
+ `genre_id` int(11) unsigned NOT NULL default '0',
+ `year` smallint(6) NOT NULL default '0',
+ `length` int(11) unsigned NOT NULL default '0',
+ `numplays` int(11) unsigned NOT NULL default '0',
+ `rating` tinyint(4) unsigned NOT NULL default '0',
+ `lastplay` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
+ `date_entered` datetime default NULL,
+ `date_modified` datetime default NULL,
+ `format` varchar(4) NOT NULL default '0',
+ `mythdigest` varchar(255) default NULL,
+ `size` bigint(20) unsigned default NULL,
+ `description` varchar(255) default NULL,
+ `comment` varchar(255) default NULL,
+ `disc_count` smallint(5) unsigned default '0',
+ `disc_number` smallint(5) unsigned default '0',
+ `track_count` smallint(5) unsigned default '0',
+ `start_time` int(10) unsigned default '0',
+ `stop_time` int(10) unsigned default NULL,
+ `eq_preset` varchar(255) default NULL,
+ `relative_volume` tinyint(4) default '0',
+ `sample_rate` int(10) unsigned default '0',
+ `bitrate` int(10) unsigned default '0',
+ `bpm` smallint(5) unsigned default NULL,
+ PRIMARY KEY (`song_id`),
+ KEY `idx_name` (`name`),
+ KEY `idx_mythdigest` (`mythdigest`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `music_songs`
+--
+
+LOCK TABLES `music_songs` WRITE;
+/*!40000 ALTER TABLE `music_songs` DISABLE KEYS */;
+/*!40000 ALTER TABLE `music_songs` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `music_stats`
+--
+
+DROP TABLE IF EXISTS `music_stats`;
+CREATE TABLE `music_stats` (
+ `num_artists` smallint(5) unsigned NOT NULL default '0',
+ `num_albums` smallint(5) unsigned NOT NULL default '0',
+ `num_songs` mediumint(8) unsigned NOT NULL default '0',
+ `num_genres` tinyint(3) unsigned NOT NULL default '0',
+ `total_time` varchar(12) NOT NULL default '0',
+ `total_size` varchar(10) NOT NULL default '0'
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `music_stats`
+--
+
+LOCK TABLES `music_stats` WRITE;
+/*!40000 ALTER TABLE `music_stats` DISABLE KEYS */;
+/*!40000 ALTER TABLE `music_stats` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `musicmetadata`
+--
+
+DROP TABLE IF EXISTS `musicmetadata`;
+CREATE TABLE `musicmetadata` (
+ `intid` int(10) unsigned NOT NULL auto_increment,
+ `artist` varchar(128) NOT NULL,
+ `compilation_artist` varchar(128) NOT NULL,
+ `album` varchar(128) NOT NULL,
+ `title` varchar(128) NOT NULL,
+ `genre` varchar(128) NOT NULL,
+ `year` int(10) unsigned NOT NULL,
+ `tracknum` int(10) unsigned NOT NULL,
+ `length` int(10) unsigned NOT NULL,
+ `filename` text NOT NULL,
+ `rating` int(10) unsigned NOT NULL default '5',
+ `lastplay` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
+ `playcount` int(10) unsigned NOT NULL default '0',
+ `mythdigest` varchar(255) default NULL,
+ `size` bigint(20) unsigned default NULL,
+ `date_added` datetime default NULL,
+ `date_modified` datetime default NULL,
+ `format` varchar(4) default NULL,
+ `description` varchar(255) default NULL,
+ `comment` varchar(255) default NULL,
+ `compilation` tinyint(4) default '0',
+ `composer` varchar(255) default NULL,
+ `disc_count` smallint(5) unsigned default '0',
+ `disc_number` smallint(5) unsigned default '0',
+ `track_count` smallint(5) unsigned default '0',
+ `start_time` int(10) unsigned default '0',
+ `stop_time` int(10) unsigned default NULL,
+ `eq_preset` varchar(255) default NULL,
+ `relative_volume` tinyint(4) default '0',
+ `sample_rate` int(10) unsigned default NULL,
+ `bpm` smallint(5) unsigned default NULL,
+ PRIMARY KEY (`intid`),
+ KEY `artist` (`artist`),
+ KEY `album` (`album`),
+ KEY `title` (`title`),
+ KEY `genre` (`genre`),
+ KEY `mythdigest` (`mythdigest`),
+ KEY `compilation_artist` (`compilation_artist`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `musicmetadata`
+--
+
+LOCK TABLES `musicmetadata` WRITE;
+/*!40000 ALTER TABLE `musicmetadata` DISABLE KEYS */;
+/*!40000 ALTER TABLE `musicmetadata` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `musicplaylist`
+--
+
+DROP TABLE IF EXISTS `musicplaylist`;
+CREATE TABLE `musicplaylist` (
+ `playlistid` int(10) unsigned NOT NULL auto_increment,
+ `name` varchar(128) NOT NULL,
+ `hostname` varchar(255) default NULL,
+ `songlist` text NOT NULL,
+ PRIMARY KEY (`playlistid`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `musicplaylist`
+--
+
+LOCK TABLES `musicplaylist` WRITE;
+/*!40000 ALTER TABLE `musicplaylist` DISABLE KEYS */;
+/*!40000 ALTER TABLE `musicplaylist` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `mythlog`
+--
+
+DROP TABLE IF EXISTS `mythlog`;
+CREATE TABLE `mythlog` (
+ `logid` int(10) unsigned NOT NULL auto_increment,
+ `module` varchar(32) NOT NULL default '',
+ `priority` int(11) NOT NULL default '0',
+ `acknowledged` tinyint(1) default '0',
+ `logdate` datetime default NULL,
+ `host` varchar(128) default NULL,
+ `message` varchar(255) NOT NULL default '',
+ `details` text,
+ PRIMARY KEY (`logid`),
+ KEY `module` (`module`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `mythlog`
+--
+
+LOCK TABLES `mythlog` WRITE;
+/*!40000 ALTER TABLE `mythlog` DISABLE KEYS */;
+/*!40000 ALTER TABLE `mythlog` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `netflix`
+--
+
+DROP TABLE IF EXISTS `netflix`;
+CREATE TABLE `netflix` (
+ `name` varchar(100) NOT NULL,
+ `category` varchar(255) NOT NULL,
+ `url` varchar(255) NOT NULL,
+ `ico` varchar(255) default NULL,
+ `updated` int(10) unsigned default NULL,
+ `is_queue` int(10) unsigned default NULL,
+ PRIMARY KEY (`name`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `netflix`
+--
+
+LOCK TABLES `netflix` WRITE;
+/*!40000 ALTER TABLE `netflix` DISABLE KEYS */;
+/*!40000 ALTER TABLE `netflix` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `networkiconmap`
+--
+
+DROP TABLE IF EXISTS `networkiconmap`;
+CREATE TABLE `networkiconmap` (
+ `id` int(11) NOT NULL auto_increment,
+ `network` varchar(20) NOT NULL default '',
+ `url` varchar(255) NOT NULL default '',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `network` (`network`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `networkiconmap`
+--
+
+LOCK TABLES `networkiconmap` WRITE;
+/*!40000 ALTER TABLE `networkiconmap` DISABLE KEYS */;
+/*!40000 ALTER TABLE `networkiconmap` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `newssites`
+--
+
+DROP TABLE IF EXISTS `newssites`;
+CREATE TABLE `newssites` (
+ `name` varchar(100) NOT NULL,
+ `category` varchar(255) NOT NULL,
+ `url` varchar(255) NOT NULL,
+ `ico` varchar(255) default NULL,
+ `updated` int(10) unsigned default NULL,
+ PRIMARY KEY (`name`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `newssites`
+--
+
+LOCK TABLES `newssites` WRITE;
+/*!40000 ALTER TABLE `newssites` DISABLE KEYS */;
+/*!40000 ALTER TABLE `newssites` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `oldfind`
+--
+
+DROP TABLE IF EXISTS `oldfind`;
+CREATE TABLE `oldfind` (
+ `recordid` int(11) NOT NULL default '0',
+ `findid` int(11) NOT NULL default '0',
+ PRIMARY KEY (`recordid`,`findid`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `oldfind`
+--
+
+LOCK TABLES `oldfind` WRITE;
+/*!40000 ALTER TABLE `oldfind` DISABLE KEYS */;
+/*!40000 ALTER TABLE `oldfind` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `oldprogram`
+--
+
+DROP TABLE IF EXISTS `oldprogram`;
+CREATE TABLE `oldprogram` (
+ `oldtitle` varchar(128) NOT NULL default '',
+ `airdate` datetime NOT NULL default '0000-00-00 00:00:00',
+ PRIMARY KEY (`oldtitle`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `oldprogram`
+--
+
+LOCK TABLES `oldprogram` WRITE;
+/*!40000 ALTER TABLE `oldprogram` DISABLE KEYS */;
+/*!40000 ALTER TABLE `oldprogram` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `oldrecorded`
+--
+
+DROP TABLE IF EXISTS `oldrecorded`;
+CREATE TABLE `oldrecorded` (
+ `chanid` int(10) unsigned NOT NULL default '0',
+ `starttime` datetime NOT NULL default '0000-00-00 00:00:00',
+ `endtime` datetime NOT NULL default '0000-00-00 00:00:00',
+ `title` varchar(128) NOT NULL default '',
+ `subtitle` varchar(128) NOT NULL default '',
+ `description` text NOT NULL,
+ `category` varchar(64) NOT NULL default '',
+ `seriesid` varchar(40) NOT NULL default '',
+ `programid` varchar(40) NOT NULL default '',
+ `findid` int(11) NOT NULL default '0',
+ `recordid` int(11) NOT NULL default '0',
+ `station` varchar(20) NOT NULL default '',
+ `rectype` int(10) unsigned NOT NULL default '0',
+ `duplicate` tinyint(1) NOT NULL default '0',
+ `recstatus` int(11) NOT NULL default '0',
+ `reactivate` smallint(6) NOT NULL default '0',
+ `generic` tinyint(1) default '0',
+ PRIMARY KEY (`station`,`starttime`,`title`),
+ KEY `endtime` (`endtime`),
+ KEY `title` (`title`),
+ KEY `seriesid` (`seriesid`),
+ KEY `programid` (`programid`),
+ KEY `recordid` (`recordid`),
+ KEY `recstatus` (`recstatus`,`programid`,`seriesid`),
+ KEY `recstatus_2` (`recstatus`,`title`,`subtitle`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `oldrecorded`
+--
+
+LOCK TABLES `oldrecorded` WRITE;
+/*!40000 ALTER TABLE `oldrecorded` DISABLE KEYS */;
+/*!40000 ALTER TABLE `oldrecorded` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `people`
+--
+
+DROP TABLE IF EXISTS `people`;
+CREATE TABLE `people` (
+ `person` mediumint(8) unsigned NOT NULL auto_increment,
+ `name` char(128) NOT NULL default '',
+ PRIMARY KEY (`person`),
+ UNIQUE KEY `name` (`name`(41))
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `people`
+--
+
+LOCK TABLES `people` WRITE;
+/*!40000 ALTER TABLE `people` DISABLE KEYS */;
+/*!40000 ALTER TABLE `people` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `pidcache`
+--
+
+DROP TABLE IF EXISTS `pidcache`;
+CREATE TABLE `pidcache` (
+ `chanid` smallint(6) NOT NULL default '0',
+ `pid` int(11) NOT NULL default '-1',
+ `tableid` int(11) NOT NULL default '-1',
+ KEY `chanid` (`chanid`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `pidcache`
+--
+
+LOCK TABLES `pidcache` WRITE;
+/*!40000 ALTER TABLE `pidcache` DISABLE KEYS */;
+/*!40000 ALTER TABLE `pidcache` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `playgroup`
+--
+
+DROP TABLE IF EXISTS `playgroup`;
+CREATE TABLE `playgroup` (
+ `name` varchar(32) NOT NULL default '',
+ `titlematch` varchar(255) NOT NULL default '',
+ `skipahead` int(11) NOT NULL default '0',
+ `skipback` int(11) NOT NULL default '0',
+ `timestretch` int(11) NOT NULL default '0',
+ `jump` int(11) NOT NULL default '0',
+ PRIMARY KEY (`name`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `playgroup`
+--
+
+LOCK TABLES `playgroup` WRITE;
+/*!40000 ALTER TABLE `playgroup` DISABLE KEYS */;
+INSERT INTO `playgroup` VALUES ('Default','',30,5,100,0);
+/*!40000 ALTER TABLE `playgroup` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `powerpriority`
+--
+
+DROP TABLE IF EXISTS `powerpriority`;
+CREATE TABLE `powerpriority` (
+ `priorityname` varchar(64) NOT NULL,
+ `recpriority` int(10) NOT NULL default '0',
+ `selectclause` text NOT NULL,
+ PRIMARY KEY (`priorityname`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `powerpriority`
+--
+
+LOCK TABLES `powerpriority` WRITE;
+/*!40000 ALTER TABLE `powerpriority` DISABLE KEYS */;
+/*!40000 ALTER TABLE `powerpriority` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `profilegroups`
+--
+
+DROP TABLE IF EXISTS `profilegroups`;
+CREATE TABLE `profilegroups` (
+ `id` int(10) unsigned NOT NULL auto_increment,
+ `name` varchar(128) default NULL,
+ `cardtype` varchar(32) NOT NULL default 'V4L',
+ `is_default` int(1) default '0',
+ `hostname` varchar(255) default NULL,
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `name` (`name`,`hostname`),
+ KEY `cardtype` (`cardtype`)
+) ENGINE=MyISAM AUTO_INCREMENT=13 DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `profilegroups`
+--
+
+LOCK TABLES `profilegroups` WRITE;
+/*!40000 ALTER TABLE `profilegroups` DISABLE KEYS */;
+INSERT INTO `profilegroups` VALUES (1,'Software Encoders (v4l based)','V4L',1,NULL),(2,'MPEG-2 Encoders (PVR-x50, PVR-500)','MPEG',1,NULL),(3,'Hardware MJPEG Encoders (Matrox G200-TV, Miro DC10, etc)','MJPEG',1,NULL),(4,'Hardware HDTV','HDTV',1,NULL),(5,'Hardware DVB Encoders','DVB',1,NULL),(6,'Transcoders','TRANSCODE',1,NULL),(7,'FireWire Input','FIREWIRE',1,NULL),(8,'USB Mpeg-4 Encoder (Plextor ConvertX, etc)','GO7007',1,NULL),(9,'DBOX2 Input','DBOX2',1,NULL),(10,'Freebox Input','Freebox',1,NULL),(11,'HDHomeRun Recorders','HDHOMERUN',1,NULL),(12,'CRC IP Recorders','CRC_IP',1,NULL);
+/*!40000 ALTER TABLE `profilegroups` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `program`
+--
+
+DROP TABLE IF EXISTS `program`;
+CREATE TABLE `program` (
+ `chanid` int(10) unsigned NOT NULL default '0',
+ `starttime` datetime NOT NULL default '0000-00-00 00:00:00',
+ `endtime` datetime NOT NULL default '0000-00-00 00:00:00',
+ `title` varchar(128) NOT NULL default '',
+ `subtitle` varchar(128) NOT NULL default '',
+ `description` text NOT NULL,
+ `category` varchar(64) NOT NULL default '',
+ `category_type` varchar(64) NOT NULL default '',
+ `airdate` year(4) NOT NULL default '0000',
+ `stars` float NOT NULL default '0',
+ `previouslyshown` tinyint(4) NOT NULL default '0',
+ `title_pronounce` varchar(128) NOT NULL default '',
+ `stereo` tinyint(1) NOT NULL default '0',
+ `subtitled` tinyint(1) NOT NULL default '0',
+ `hdtv` tinyint(1) NOT NULL default '0',
+ `closecaptioned` tinyint(1) NOT NULL default '0',
+ `partnumber` int(11) NOT NULL default '0',
+ `parttotal` int(11) NOT NULL default '0',
+ `seriesid` varchar(40) NOT NULL default '',
+ `originalairdate` date default NULL,
+ `showtype` varchar(30) NOT NULL default '',
+ `colorcode` varchar(20) NOT NULL default '',
+ `syndicatedepisodenumber` varchar(20) NOT NULL default '',
+ `programid` varchar(40) NOT NULL default '',
+ `manualid` int(10) unsigned NOT NULL default '0',
+ `generic` tinyint(1) default '0',
+ `listingsource` int(11) NOT NULL default '0',
+ `first` tinyint(1) NOT NULL default '0',
+ `last` tinyint(1) NOT NULL default '0',
+ `audioprop` set('STEREO','MONO','SURROUND','DOLBY','HARDHEAR','VISUALIMPAIR') NOT NULL,
+ `subtitletypes` set('HARDHEAR','NORMAL','ONSCREEN','SIGNED') NOT NULL,
+ `videoprop` set('HDTV','WIDESCREEN','AVC') NOT NULL,
+ PRIMARY KEY (`chanid`,`starttime`,`manualid`),
+ KEY `endtime` (`endtime`),
+ KEY `title` (`title`),
+ KEY `title_pronounce` (`title_pronounce`),
+ KEY `seriesid` (`seriesid`),
+ KEY `id_start_end` (`chanid`,`starttime`,`endtime`),
+ KEY `program_manualid` (`manualid`),
+ KEY `previouslyshown` (`previouslyshown`),
+ KEY `programid` (`programid`,`starttime`),
+ KEY `starttime` (`starttime`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `program`
+--
+
+LOCK TABLES `program` WRITE;
+/*!40000 ALTER TABLE `program` DISABLE KEYS */;
+/*!40000 ALTER TABLE `program` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `programgenres`
+--
+
+DROP TABLE IF EXISTS `programgenres`;
+CREATE TABLE `programgenres` (
+ `chanid` int(10) unsigned NOT NULL default '0',
+ `starttime` datetime NOT NULL default '0000-00-00 00:00:00',
+ `relevance` char(1) NOT NULL default '',
+ `genre` char(30) default NULL,
+ PRIMARY KEY (`chanid`,`starttime`,`relevance`),
+ KEY `genre` (`genre`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `programgenres`
+--
+
+LOCK TABLES `programgenres` WRITE;
+/*!40000 ALTER TABLE `programgenres` DISABLE KEYS */;
+/*!40000 ALTER TABLE `programgenres` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `programrating`
+--
+
+DROP TABLE IF EXISTS `programrating`;
+CREATE TABLE `programrating` (
+ `chanid` int(10) unsigned NOT NULL default '0',
+ `starttime` datetime NOT NULL default '0000-00-00 00:00:00',
+ `system` char(8) NOT NULL default '',
+ `rating` char(16) default NULL,
+ UNIQUE KEY `chanid` (`chanid`,`starttime`,`system`,`rating`),
+ KEY `starttime` (`starttime`,`system`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `programrating`
+--
+
+LOCK TABLES `programrating` WRITE;
+/*!40000 ALTER TABLE `programrating` DISABLE KEYS */;
+/*!40000 ALTER TABLE `programrating` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `recgrouppassword`
+--
+
+DROP TABLE IF EXISTS `recgrouppassword`;
+CREATE TABLE `recgrouppassword` (
+ `recgroup` varchar(32) NOT NULL default '',
+ `password` varchar(10) NOT NULL default '',
+ PRIMARY KEY (`recgroup`),
+ UNIQUE KEY `recgroup` (`recgroup`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `recgrouppassword`
+--
+
+LOCK TABLES `recgrouppassword` WRITE;
+/*!40000 ALTER TABLE `recgrouppassword` DISABLE KEYS */;
+/*!40000 ALTER TABLE `recgrouppassword` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `record`
+--
+
+DROP TABLE IF EXISTS `record`;
+CREATE TABLE `record` (
+ `recordid` int(10) unsigned NOT NULL auto_increment,
+ `type` int(10) unsigned NOT NULL default '0',
+ `chanid` int(10) unsigned default NULL,
+ `starttime` time NOT NULL default '00:00:00',
+ `startdate` date NOT NULL default '0000-00-00',
+ `endtime` time NOT NULL default '00:00:00',
+ `enddate` date NOT NULL default '0000-00-00',
+ `title` varchar(128) NOT NULL default '',
+ `subtitle` varchar(128) NOT NULL default '',
+ `description` text NOT NULL,
+ `category` varchar(64) NOT NULL default '',
+ `profile` varchar(128) NOT NULL default 'Default',
+ `recpriority` int(10) NOT NULL default '0',
+ `autoexpire` int(11) NOT NULL default '0',
+ `maxepisodes` int(11) NOT NULL default '0',
+ `maxnewest` int(11) NOT NULL default '0',
+ `startoffset` int(11) NOT NULL default '0',
+ `endoffset` int(11) NOT NULL default '0',
+ `recgroup` varchar(32) NOT NULL default 'Default',
+ `dupmethod` int(11) NOT NULL default '6',
+ `dupin` int(11) NOT NULL default '15',
+ `station` varchar(20) NOT NULL default '',
+ `seriesid` varchar(40) NOT NULL default '',
+ `programid` varchar(40) NOT NULL default '',
+ `search` int(10) unsigned NOT NULL default '0',
+ `autotranscode` tinyint(1) NOT NULL default '0',
+ `autocommflag` tinyint(1) NOT NULL default '0',
+ `autouserjob1` tinyint(1) NOT NULL default '0',
+ `autouserjob2` tinyint(1) NOT NULL default '0',
+ `autouserjob3` tinyint(1) NOT NULL default '0',
+ `autouserjob4` tinyint(1) NOT NULL default '0',
+ `findday` tinyint(4) NOT NULL default '0',
+ `findtime` time NOT NULL default '00:00:00',
+ `findid` int(11) NOT NULL default '0',
+ `inactive` tinyint(1) NOT NULL default '0',
+ `parentid` int(11) NOT NULL default '0',
+ `transcoder` int(11) NOT NULL default '0',
+ `tsdefault` float NOT NULL default '1',
+ `playgroup` varchar(32) NOT NULL default 'Default',
+ `prefinput` int(10) NOT NULL default '0',
+ `next_record` datetime NOT NULL,
+ `last_record` datetime NOT NULL,
+ `last_delete` datetime NOT NULL,
+ `storagegroup` varchar(32) NOT NULL default 'Default',
+ `avg_delay` int(11) NOT NULL default '100',
+ PRIMARY KEY (`recordid`),
+ KEY `chanid` (`chanid`,`starttime`),
+ KEY `title` (`title`),
+ KEY `seriesid` (`seriesid`),
+ KEY `programid` (`programid`),
+ KEY `maxepisodes` (`maxepisodes`),
+ KEY `search` (`search`),
+ KEY `type` (`type`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `record`
+--
+
+LOCK TABLES `record` WRITE;
+/*!40000 ALTER TABLE `record` DISABLE KEYS */;
+/*!40000 ALTER TABLE `record` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `recorded`
+--
+
+DROP TABLE IF EXISTS `recorded`;
+CREATE TABLE `recorded` (
+ `chanid` int(10) unsigned NOT NULL default '0',
+ `starttime` datetime NOT NULL default '0000-00-00 00:00:00',
+ `endtime` datetime NOT NULL default '0000-00-00 00:00:00',
+ `title` varchar(128) NOT NULL default '',
+ `subtitle` varchar(128) NOT NULL default '',
+ `description` text NOT NULL,
+ `category` varchar(64) NOT NULL default '',
+ `hostname` varchar(255) NOT NULL default '',
+ `bookmark` tinyint(1) NOT NULL default '0',
+ `editing` int(10) unsigned NOT NULL default '0',
+ `cutlist` tinyint(1) NOT NULL default '0',
+ `autoexpire` int(11) NOT NULL default '0',
+ `commflagged` int(10) unsigned NOT NULL default '0',
+ `recgroup` varchar(32) NOT NULL default 'Default',
+ `recordid` int(11) default NULL,
+ `seriesid` varchar(40) NOT NULL default '',
+ `programid` varchar(40) NOT NULL default '',
+ `lastmodified` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
+ `filesize` bigint(20) NOT NULL default '0',
+ `stars` float NOT NULL default '0',
+ `previouslyshown` tinyint(1) default '0',
+ `originalairdate` date default NULL,
+ `preserve` tinyint(1) NOT NULL default '0',
+ `findid` int(11) NOT NULL default '0',
+ `deletepending` tinyint(1) NOT NULL default '0',
+ `transcoder` int(11) NOT NULL default '0',
+ `timestretch` float NOT NULL default '1',
+ `recpriority` int(11) NOT NULL default '0',
+ `basename` varchar(255) NOT NULL,
+ `progstart` datetime NOT NULL default '0000-00-00 00:00:00',
+ `progend` datetime NOT NULL default '0000-00-00 00:00:00',
+ `playgroup` varchar(32) NOT NULL default 'Default',
+ `profile` varchar(32) NOT NULL default '',
+ `duplicate` tinyint(1) NOT NULL default '0',
+ `transcoded` tinyint(1) NOT NULL default '0',
+ `watched` tinyint(4) NOT NULL default '0',
+ `storagegroup` varchar(32) NOT NULL default 'Default',
+ PRIMARY KEY (`chanid`,`starttime`),
+ KEY `endtime` (`endtime`),
+ KEY `seriesid` (`seriesid`),
+ KEY `programid` (`programid`),
+ KEY `title` (`title`),
+ KEY `recordid` (`recordid`),
+ KEY `deletepending` (`deletepending`,`lastmodified`),
+ KEY `recgroup` (`recgroup`,`endtime`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `recorded`
+--
+
+LOCK TABLES `recorded` WRITE;
+/*!40000 ALTER TABLE `recorded` DISABLE KEYS */;
+/*!40000 ALTER TABLE `recorded` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `recordedcredits`
+--
+
+DROP TABLE IF EXISTS `recordedcredits`;
+CREATE TABLE `recordedcredits` (
+ `person` mediumint(8) unsigned NOT NULL default '0',
+ `chanid` int(10) unsigned NOT NULL default '0',
+ `starttime` datetime NOT NULL default '0000-00-00 00:00:00',
+ `role` set('actor','director','producer','executive_producer','writer','guest_star','host','adapter','presenter','commentator','guest') NOT NULL default '',
+ UNIQUE KEY `chanid` (`chanid`,`starttime`,`person`,`role`),
+ KEY `person` (`person`,`role`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `recordedcredits`
+--
+
+LOCK TABLES `recordedcredits` WRITE;
+/*!40000 ALTER TABLE `recordedcredits` DISABLE KEYS */;
+/*!40000 ALTER TABLE `recordedcredits` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `recordedfile`
+--
+
+DROP TABLE IF EXISTS `recordedfile`;
+CREATE TABLE `recordedfile` (
+ `chanid` int(10) unsigned NOT NULL default '0',
+ `starttime` datetime NOT NULL default '0000-00-00 00:00:00',
+ `basename` varchar(128) NOT NULL default '',
+ `filesize` bigint(20) NOT NULL default '0',
+ `width` smallint(5) unsigned NOT NULL default '0',
+ `height` smallint(5) unsigned NOT NULL default '0',
+ `fps` float(6,3) NOT NULL default '0.000',
+ `aspect` float(8,6) NOT NULL default '0.000000',
+ `audio_sample_rate` smallint(5) unsigned NOT NULL default '0',
+ `audio_bits_per_sample` smallint(5) unsigned NOT NULL default '0',
+ `audio_channels` tinyint(3) unsigned NOT NULL default '0',
+ `audio_type` varchar(255) NOT NULL default '',
+ `video_type` varchar(255) NOT NULL default '',
+ `comment` varchar(255) NOT NULL default '',
+ PRIMARY KEY (`chanid`,`starttime`),
+ KEY `basename` (`basename`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `recordedfile`
+--
+
+LOCK TABLES `recordedfile` WRITE;
+/*!40000 ALTER TABLE `recordedfile` DISABLE KEYS */;
+/*!40000 ALTER TABLE `recordedfile` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `recordedmarkup`
+--
+
+DROP TABLE IF EXISTS `recordedmarkup`;
+CREATE TABLE `recordedmarkup` (
+ `chanid` int(10) unsigned NOT NULL default '0',
+ `starttime` datetime NOT NULL default '0000-00-00 00:00:00',
+ `mark` mediumint(8) unsigned NOT NULL default '0',
+ `offset` varchar(32) default NULL,
+ `type` tinyint(4) NOT NULL default '0',
+ PRIMARY KEY (`chanid`,`starttime`,`type`,`mark`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `recordedmarkup`
+--
+
+LOCK TABLES `recordedmarkup` WRITE;
+/*!40000 ALTER TABLE `recordedmarkup` DISABLE KEYS */;
+/*!40000 ALTER TABLE `recordedmarkup` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `recordedprogram`
+--
+
+DROP TABLE IF EXISTS `recordedprogram`;
+CREATE TABLE `recordedprogram` (
+ `chanid` int(10) unsigned NOT NULL default '0',
+ `starttime` datetime NOT NULL default '0000-00-00 00:00:00',
+ `endtime` datetime NOT NULL default '0000-00-00 00:00:00',
+ `title` varchar(128) NOT NULL default '',
+ `subtitle` varchar(128) NOT NULL default '',
+ `description` text NOT NULL,
+ `category` varchar(64) NOT NULL default '',
+ `category_type` varchar(64) NOT NULL default '',
+ `airdate` year(4) NOT NULL default '0000',
+ `stars` float unsigned NOT NULL default '0',
+ `previouslyshown` tinyint(4) NOT NULL default '0',
+ `title_pronounce` varchar(128) NOT NULL default '',
+ `stereo` tinyint(1) NOT NULL default '0',
+ `subtitled` tinyint(1) NOT NULL default '0',
+ `hdtv` tinyint(1) NOT NULL default '0',
+ `closecaptioned` tinyint(1) NOT NULL default '0',
+ `partnumber` int(11) NOT NULL default '0',
+ `parttotal` int(11) NOT NULL default '0',
+ `seriesid` varchar(40) NOT NULL default '',
+ `originalairdate` date default NULL,
+ `showtype` varchar(30) NOT NULL default '',
+ `colorcode` varchar(20) NOT NULL default '',
+ `syndicatedepisodenumber` varchar(20) NOT NULL default '',
+ `programid` varchar(40) NOT NULL default '',
+ `manualid` int(10) unsigned NOT NULL default '0',
+ `generic` tinyint(1) default '0',
+ `listingsource` int(11) NOT NULL default '0',
+ `first` tinyint(1) NOT NULL default '0',
+ `last` tinyint(1) NOT NULL default '0',
+ `audioprop` set('STEREO','MONO','SURROUND','DOLBY','HARDHEAR','VISUALIMPAIR') NOT NULL,
+ `subtitletypes` set('HARDHEAR','NORMAL','ONSCREEN','SIGNED') NOT NULL,
+ `videoprop` set('HDTV','WIDESCREEN','AVC') NOT NULL,
+ PRIMARY KEY (`chanid`,`starttime`,`manualid`),
+ KEY `endtime` (`endtime`),
+ KEY `title` (`title`),
+ KEY `title_pronounce` (`title_pronounce`),
+ KEY `seriesid` (`seriesid`),
+ KEY `programid` (`programid`),
+ KEY `id_start_end` (`chanid`,`starttime`,`endtime`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `recordedprogram`
+--
+
+LOCK TABLES `recordedprogram` WRITE;
+/*!40000 ALTER TABLE `recordedprogram` DISABLE KEYS */;
+/*!40000 ALTER TABLE `recordedprogram` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `recordedrating`
+--
+
+DROP TABLE IF EXISTS `recordedrating`;
+CREATE TABLE `recordedrating` (
+ `chanid` int(10) unsigned NOT NULL default '0',
+ `starttime` datetime NOT NULL default '0000-00-00 00:00:00',
+ `system` char(8) NOT NULL default '',
+ `rating` char(16) default NULL,
+ UNIQUE KEY `chanid` (`chanid`,`starttime`,`system`,`rating`),
+ KEY `starttime` (`starttime`,`system`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `recordedrating`
+--
+
+LOCK TABLES `recordedrating` WRITE;
+/*!40000 ALTER TABLE `recordedrating` DISABLE KEYS */;
+/*!40000 ALTER TABLE `recordedrating` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `recordedseek`
+--
+
+DROP TABLE IF EXISTS `recordedseek`;
+CREATE TABLE `recordedseek` (
+ `chanid` int(10) unsigned NOT NULL default '0',
+ `starttime` datetime NOT NULL default '0000-00-00 00:00:00',
+ `mark` mediumint(8) unsigned NOT NULL default '0',
+ `offset` bigint(20) unsigned NOT NULL,
+ `type` tinyint(4) NOT NULL default '0',
+ PRIMARY KEY (`chanid`,`starttime`,`type`,`mark`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `recordedseek`
+--
+
+LOCK TABLES `recordedseek` WRITE;
+/*!40000 ALTER TABLE `recordedseek` DISABLE KEYS */;
+/*!40000 ALTER TABLE `recordedseek` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `recordingprofiles`
+--
+
+DROP TABLE IF EXISTS `recordingprofiles`;
+CREATE TABLE `recordingprofiles` (
+ `id` int(10) unsigned NOT NULL auto_increment,
+ `name` varchar(128) default NULL,
+ `videocodec` varchar(128) default NULL,
+ `audiocodec` varchar(128) default NULL,
+ `profilegroup` int(10) unsigned NOT NULL default '0',
+ PRIMARY KEY (`id`),
+ KEY `profilegroup` (`profilegroup`)
+) ENGINE=MyISAM AUTO_INCREMENT=50 DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `recordingprofiles`
+--
+
+LOCK TABLES `recordingprofiles` WRITE;
+/*!40000 ALTER TABLE `recordingprofiles` DISABLE KEYS */;
+INSERT INTO `recordingprofiles` VALUES (1,'Default',NULL,NULL,1),(2,'Live TV',NULL,NULL,1),(3,'High Quality',NULL,NULL,1),(4,'Low Quality',NULL,NULL,1),(5,'Default',NULL,NULL,2),(6,'Live TV',NULL,NULL,2),(7,'High Quality',NULL,NULL,2),(8,'Low Quality',NULL,NULL,2),(9,'Default',NULL,NULL,3),(10,'Live TV',NULL,NULL,3),(11,'High Quality',NULL,NULL,3),(12,'Low Quality',NULL,NULL,3),(13,'Default',NULL,NULL,4),(14,'Live TV',NULL,NULL,4),(15,'High Quality',NULL,NULL,4),(16,'Low Quality',NULL,NULL,4),(17,'Default',NULL,NULL,5),(18,'Live TV',NULL,NULL,5),(19,'High Quality',NULL,NULL,5),(20,'Low Quality',NULL,NULL,5),(21,'RTjpeg/MPEG4',NULL,NULL,6),(22,'MPEG2',NULL,NULL,6),(23,'Default',NULL,NULL,8),(24,'Live TV',NULL,NULL,8),(25,'High Quality',NULL,NULL,8),(26,'Low Quality',NULL,NULL,8),(27,'High Quality',NULL,NULL,6),(28,'Medium Quality',NULL,NULL,6),(29,'Low Quality',NULL,NULL,6),(30,'Default',NULL,NULL,10),(31,'Live TV',NULL,NULL,10),(32,'High Quality',NULL,NULL,10),(33,'Low Quality',NULL,NULL,10),(34,'Default',NULL,NULL,11),(35,'Live TV',NULL,NULL,11),(36,'High Quality',NULL,NULL,11),(37,'Low Quality',NULL,NULL,11),(38,'Default',NULL,NULL,12),(39,'Live TV',NULL,NULL,12),(40,'High Quality',NULL,NULL,12),(41,'Low Quality',NULL,NULL,12),(42,'Default',NULL,NULL,7),(43,'Live TV',NULL,NULL,7),(44,'High Quality',NULL,NULL,7),(45,'Low Quality',NULL,NULL,7),(46,'Default',NULL,NULL,9),(47,'Live TV',NULL,NULL,9),(48,'High Quality',NULL,NULL,9),(49,'Low Quality',NULL,NULL,9);
+/*!40000 ALTER TABLE `recordingprofiles` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `recordmatch`
+--
+
+DROP TABLE IF EXISTS `recordmatch`;
+CREATE TABLE `recordmatch` (
+ `recordid` int(10) unsigned default NULL,
+ `chanid` int(10) unsigned default NULL,
+ `starttime` datetime default NULL,
+ `manualid` int(10) unsigned default NULL,
+ `oldrecduplicate` tinyint(1) default NULL,
+ `recduplicate` tinyint(1) default NULL,
+ `findduplicate` tinyint(1) default NULL,
+ `oldrecstatus` int(11) default NULL,
+ KEY `recordid` (`recordid`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `recordmatch`
+--
+
+LOCK TABLES `recordmatch` WRITE;
+/*!40000 ALTER TABLE `recordmatch` DISABLE KEYS */;
+/*!40000 ALTER TABLE `recordmatch` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `romdb`
+--
+
+DROP TABLE IF EXISTS `romdb`;
+CREATE TABLE `romdb` (
+ `crc` varchar(64) NOT NULL default '',
+ `name` varchar(128) NOT NULL default '',
+ `description` varchar(128) NOT NULL default '',
+ `category` varchar(128) NOT NULL default '',
+ `year` varchar(10) NOT NULL default '',
+ `manufacturer` varchar(128) NOT NULL default '',
+ `country` varchar(128) NOT NULL default '',
+ `publisher` varchar(128) NOT NULL default '',
+ `platform` varchar(64) NOT NULL default '',
+ `filesize` int(12) default NULL,
+ `flags` varchar(64) NOT NULL default '',
+ `version` varchar(64) NOT NULL default '',
+ `binfile` varchar(64) NOT NULL default '',
+ KEY `crc` (`crc`),
+ KEY `year` (`year`),
+ KEY `category` (`category`),
+ KEY `name` (`name`),
+ KEY `description` (`description`),
+ KEY `platform` (`platform`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `romdb`
+--
+
+LOCK TABLES `romdb` WRITE;
+/*!40000 ALTER TABLE `romdb` DISABLE KEYS */;
+/*!40000 ALTER TABLE `romdb` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `schemalock`
+--
+
+DROP TABLE IF EXISTS `schemalock`;
+CREATE TABLE `schemalock` (
+ `schemalock` int(1) default NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `schemalock`
+--
+
+LOCK TABLES `schemalock` WRITE;
+/*!40000 ALTER TABLE `schemalock` DISABLE KEYS */;
+/*!40000 ALTER TABLE `schemalock` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `settings`
+--
+
+DROP TABLE IF EXISTS `settings`;
+CREATE TABLE `settings` (
+ `value` varchar(128) NOT NULL default '',
+ `data` text,
+ `hostname` varchar(255) default NULL,
+ KEY `value` (`value`,`hostname`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `settings`
+--
+
+LOCK TABLES `settings` WRITE;
+/*!40000 ALTER TABLE `settings` DISABLE KEYS */;
+INSERT INTO `settings` VALUES ('mythfilldatabaseLastRunStart',NULL,NULL),('mythfilldatabaseLastRunEnd',NULL,NULL),('mythfilldatabaseLastRunStatus',NULL,NULL),('DataDirectMessage',NULL,NULL),('HaveRepeats','0',NULL),('DBSchemaVer','1211',NULL),('DefaultTranscoder','0',NULL),('MythFillSuggestedRunTime','1970-01-01T00:00:00',NULL),('MythFillGrabberSuggestsTime','1',NULL),('Language','EN','myhost'),('BackendServerIP','127.0.0.1','myhost'),('BackendServerPort','6543','myhost'),('BackendStatusPort','6544','myhost'),('MasterServerIP','127.0.0.1',NULL),('MasterServerPort','6543',NULL),('RecordFilePrefix','/data/media/video/recordings','myhost'),('TVFormat','NTSC',NULL),('VbiFormat','None',NULL),('FreqTable','us-bcast',NULL),('TimeOffset','None',NULL),('MasterBackendOverride','1',NULL),('DeletesFollowLinks','0',NULL),('EITTimeOffset','Auto',NULL),('EITTransportTimeout','5',NULL),('EITIgnoresSource','0',NULL),('EITCrawIdleStart','60',NULL),('startupCommand','',NULL),('blockSDWUwithoutClient','1',NULL),('idleTimeoutSecs','0',NULL),('idleWaitForRecordingTime','15',NULL),('StartupSecsBeforeRecording','120',NULL),('WakeupTimeFormat','hh:mm yyyy-MM-dd',NULL),('SetWakeuptimeCommand','',NULL),('ServerHaltCommand','sudo /sbin/halt -p',NULL),('preSDWUCheckCommand','',NULL),('WOLbackendReconnectWaitTime','0',NULL),('WOLbackendConnectRetry','5',NULL),('WOLbackendCommand','',NULL),('WOLslaveBackendsCommand','',NULL),('JobQueueMaxSimultaneousJobs','1','myhost'),('JobQueueCheckFrequency','60','myhost'),('JobQueueWindowStart','00:00','myhost'),('JobQueueWindowEnd','23:59','myhost'),('JobQueueCPU','0','myhost'),('JobAllowCommFlag','1','myhost'),('JobAllowTranscode','1','myhost'),('JobAllowUserJob1','1','myhost'),('JobAllowUserJob2','1','myhost'),('JobAllowUserJob3','1','myhost'),('JobAllowUserJob4','1','myhost'),('JobsRunOnRecordHost','0',NULL),('AutoCommflagWhileRecording','0',NULL),('JobQueueCommFlagCommand','mythcommflag',NULL),('JobQueueTranscodeCommand','mythtranscode',NULL),('AutoTranscodeBeforeAutoCommflag','0',NULL),('SaveTranscoding','0',NULL),('UserJobDesc1','Encode to ipod',NULL),('UserJob1','/usr/bin/myth2ipod-userjob.sh \"%DIR%\" \"%FILE%\"',NULL),('UserJobDesc2','User Job #2',NULL),('UserJob2','',NULL),('UserJobDesc3','User Job #3',NULL),('UserJob3','',NULL),('UserJobDesc4','User Job #4',NULL),('UserJob4','',NULL),('Deinterlace','1','myhost'),('DeinterlaceFilter','kerneldeint','myhost'),('CustomFilters','','myhost'),('PreferredMPEG2Decoder','ffmpeg','myhost'),('RealtimePriority','1','myhost'),('UseVideoTimebase','0','myhost'),('DecodeExtraAudio','1','myhost'),('AspectOverride','0','myhost'),('PIPLocation','0','myhost'),('PlaybackExitPrompt','2','myhost'),('EndOfRecordingExitPrompt','1','myhost'),('ClearSavedPosition','1','myhost'),('AltClearSavedPosition','1','myhost'),('UseOutputPictureControls','0','myhost'),('AudioNag','1','myhost'),('UDPNotifyPort','6948','myhost'),('PlayBoxOrdering','1','myhost'),('PlayBoxEpisodeSort','Date','myhost'),('GeneratePreviewPixmaps','0','myhost'),('PreviewPixmapOffset','64',NULL),('PreviewFromBookmark','1','myhost'),('PlaybackPreview','1','myhost'),('PlaybackPreviewLowCPU','0','myhost'),('PlaybackBoxStartInTitle','1','myhost'),('ShowGroupInfo','0','myhost'),('AllRecGroupPassword','',NULL),('DisplayRecGroup','Default','myhost'),('QueryInitialFilter','0','myhost'),('RememberRecGroup','1','myhost'),('DispRecGroupAsAllProg','0','myhost'),('LiveTVInAllPrograms','0','myhost'),('DisplayGroupDefaultView','0','myhost'),('DisplayGroupTitleSort','0','myhost'),('PVR350OutputEnable','0','myhost'),('PVR350VideoDev','/dev/video16','myhost'),('PVR350EPGAlphaValue','164','myhost'),('PVR350InternalAudioOnly','0','myhost'),('SmartForward','0','myhost'),('StickyKeys','1','myhost'),('FFRewReposTime','100','myhost'),('FFRewReverse','1','myhost'),('ExactSeeking','0','myhost'),('AutoCommercialSkip','2','myhost'),('CommRewindAmount','0','myhost'),('CommNotifyAmount','0','myhost'),('MaximumCommercialSkip','3600',NULL),('CommSkipAllBlanks','1',NULL),('VertScanPercentage','0','myhost'),('HorizScanPercentage','0','myhost'),('XScanDisplacement','0','myhost'),('YScanDisplacement','0','myhost'),('OSDTheme','blueosd','myhost'),('OSDGeneralTimeout','2','myhost'),('OSDProgramInfoTimeout','3','myhost'),('OSDNotifyTimeout','5','myhost'),('OSDFont','FreeMono.ttf','myhost'),('OSDCCFont','FreeMono.ttf','myhost'),('OSDThemeFontSizeType','default','myhost'),('CCBackground','0','myhost'),('DefaultCCMode','0','myhost'),('PersistentBrowseMode','1','myhost'),('EnableMHEG','0','myhost'),('OSDCC708TextZoom','100','myhost'),('OSDCC708DefaultFontType','MonoSerif','myhost'),('OSDCC708MonoSerifFont','FreeMono.ttf','myhost'),('OSDCC708PropSerifFont','FreeMono.ttf','myhost'),('OSDCC708MonoSansSerifFont','FreeMono.ttf','myhost'),('OSDCC708PropSansSerifFont','FreeMono.ttf','myhost'),('OSDCC708CasualFont','FreeMono.ttf','myhost'),('OSDCC708CursiveFont','FreeMono.ttf','myhost'),('OSDCC708CapitalsFont','FreeMono.ttf','myhost'),('OSDCC708MonoSerifItalicFont','FreeMono.ttf','myhost'),('OSDCC708PropSerifItalicFont','FreeMono.ttf','myhost'),('OSDCC708MonoSansSerifItalicFont','FreeMono.ttf','myhost'),('OSDCC708PropSansSerifItalicFont','FreeMono.ttf','myhost'),('OSDCC708CasualItalicFont','FreeMono.ttf','myhost'),('OSDCC708CursiveItalicFont','FreeMono.ttf','myhost'),('OSDCC708CapitalsItalicFont','FreeMono.ttf','myhost'),('ChannelOrdering','channum','myhost'),('ChannelFormat','<num> <sign>','myhost'),('LongChannelFormat','<num> <name>','myhost'),('SmartChannelChange','0','myhost'),('LastFreeCard','0',NULL),('AutoExpireMethod','2',NULL),('AutoExpireDayPriority','3',NULL),('AutoExpireDefault','1',NULL),('AutoExpireLiveTVMaxAge','1',NULL),('AutoCommercialFlag','1',NULL),('CommercialSkipMethod','255',NULL),('AggressiveCommDetect','1',NULL),('AutoTranscode','0',NULL),('AutoRunUserJob1','0',NULL),('AutoRunUserJob2','0',NULL),('AutoRunUserJob3','0',NULL),('AutoRunUserJob4','0',NULL),('AutoExpireExtraSpace','2',NULL),('RecordPreRoll','0',NULL),('RecordOverTime','0',NULL),('OverTimeCategory','category name',NULL),('CategoryOverTime','30',NULL),('ATSCCheckSignalThreshold','65',NULL),('ATSCCheckSignalWait','5000',NULL),('HDRingbufferSize','9400',NULL),('EPGFillType','10','myhost'),('EPGShowCategoryColors','1','myhost'),('EPGShowCategoryText','1','myhost'),('EPGScrollType','1','myhost'),('EPGShowChannelIcon','1','myhost'),('EPGShowFavorites','0','myhost'),('WatchTVGuide','0','myhost'),('chanPerPage','5','myhost'),('timePerPage','4','myhost'),('UnknownTitle','Unknown','myhost'),('UnknownCategory','Unknown','myhost'),('DefaultTVChannel','3','myhost'),('SelectChangesChannel','1','myhost'),('SelChangeRecThreshold','16','myhost'),('EPGEnableJumpToChannel','0',NULL),('Theme','basic-purple','myhost'),('ThemePainter','qt','myhost'),('Style','Windows','myhost'),('ThemeFontSizeType','default','myhost'),('RandomTheme','0','myhost'),('MenuTheme','MythVantage-menu','myhost'),('GuiWidth','0','myhost'),('GuiHeight','0','myhost'),('GuiOffsetX','0','myhost'),('GuiOffsetY','0','myhost'),('GuiSizeForTV','0','myhost'),('HideMouseCursor','1','myhost'),('RunFrontendInWindow','0','myhost'),('UseVideoModes','0','myhost'),('GuiVidModeResolution','640x480','myhost'),('TVVidModeResolution','640x480','myhost'),('TVVidModeForceAspect','0.0','myhost'),('VidModeWidth0','0','myhost'),('VidModeHeight0','0','myhost'),('TVVidModeResolution0','640x480','myhost'),('TVVidModeForceAspect0','0.0','myhost'),('VidModeWidth1','0','myhost'),('VidModeHeight1','0','myhost'),('TVVidModeResolution1','640x480','myhost'),('TVVidModeForceAspect1','0.0','myhost'),('VidModeWidth2','0','myhost'),('VidModeHeight2','0','myhost'),('TVVidModeResolution2','640x480','myhost'),('TVVidModeForceAspect2','0.0','myhost'),('ISO639Language0','eng','myhost'),('ISO639Language1','eng','myhost'),('DateFormat','ddd MMM d','myhost'),('ShortDateFormat','M/d','myhost'),('TimeFormat','h:mm AP','myhost'),('QtFontSmall','12','myhost'),('QtFontMedium','16','myhost'),('QtFontBig','25','myhost'),('PlayBoxTransparency','1','myhost'),('PlayBoxShading','0','myhost'),('UseVirtualKeyboard','1','myhost'),('LCDEnable','0','myhost'),('LCDShowTime','1','myhost'),('LCDShowMenu','1','myhost'),('LCDShowMusic','1','myhost'),('LCDShowMusicItems','ArtistTitle','myhost'),('LCDShowChannel','1','myhost'),('LCDShowRecStatus','0','myhost'),('LCDShowVolume','1','myhost'),('LCDShowGeneric','1','myhost'),('LCDBacklightOn','1','myhost'),('LCDHeartBeatOn','0','myhost'),('LCDBigClock','0','myhost'),('LCDKeyString','ABCDEF','myhost'),('LCDPopupTime','5','myhost'),('PassThruOutputDevice','Default','myhost'),('AC3PassThru','0','myhost'),('DTSPassThru','0','myhost'),('AggressiveSoundcardBuffer','0','myhost'),('MythControlsVolume','1','myhost'),('MixerControl','PCM','myhost'),('MasterMixerVolume','70','myhost'),('PCMMixerVolume','70','myhost'),('IndividualMuteControl','0','myhost'),('AllowQuitShutdown','3','myhost'),('NoPromptOnExit','0','myhost'),('HaltCommand','sudo /sbin/poweroff','myhost'),('LircKeyPressedApp','','myhost'),('UseArrowAccels','1','myhost'),('NetworkControlEnabled','1','myhost'),('NetworkControlPort','6546','myhost'),('SetupPinCodeRequired','0','myhost'),('MonitorDrives','0','myhost'),('EnableXbox','0','myhost'),('LogEnabled','1',NULL),('LogPrintLevel','8','myhost'),('LogCleanEnabled','0','myhost'),('LogCleanPeriod','14','myhost'),('LogCleanDays','14','myhost'),('LogCleanMax','30','myhost'),('LogMaxCount','100','myhost'),('MythFillEnabled','0',NULL),('MythFillDatabasePath','/usr/local/bin/mythfilldatabase',NULL),('MythFillDatabaseArgs','',NULL),('MythFillDatabaseLog','',NULL),('MythFillPeriod','1',NULL),('MythFillMinHour','2',NULL),('MythFillMaxHour','5',NULL),('SchedMoveHigher','1',NULL),('DefaultStartOffset','0',NULL),('DefaultEndOffset','0',NULL),('ComplexPriority','0',NULL),('PrefInputPriority','2',NULL),('OnceRecPriority','0',NULL),('HDTVRecPriority','0',NULL),('CCRecPriority','0',NULL),('SingleRecordRecPriority','1',NULL),('OverrideRecordRecPriority','0',NULL),('FindOneRecordRecPriority','-1',NULL),('WeekslotRecordRecPriority','0',NULL),('TimeslotRecordRecPriority','0',NULL),('ChannelRecordRecPriority','0',NULL),('AllRecordRecPriority','0',NULL),('ArchiveDBSchemaVer','1000',NULL),('MythArchiveTempDir','/data/media/tmp','myhost'),('MythArchiveShareDir','/usr/local/share/mythtv/mytharchive/','myhost'),('MythArchiveVideoFormat','NTSC','myhost'),('MythArchiveFileFilter','*.mpg *.mov *.avi *.mpeg *.nuv','myhost'),('MythArchiveDVDLocation','/dev/dvd','myhost'),('MythArchiveEncodeToAc3','1','myhost'),('MythArchiveCopyRemoteFiles','1','myhost'),('MythArchiveAlwaysUseMythTranscode','1','myhost'),('MythArchiveUseFIFO','1','myhost'),('MythArchiveMainMenuAR','16:9','myhost'),('MythArchiveChapterMenuAR','Video','myhost'),('MythArchiveFfmpegCmd','ffmpeg','myhost'),('MythArchiveMplexCmd','mplex','myhost'),('MythArchiveDvdauthorCmd','dvdauthor','myhost'),('MythArchiveSpumuxCmd','spumux','myhost'),('MythArchiveMpeg2encCmd','mpeg2enc','myhost'),('MythArchiveMkisofsCmd','mkisofs','myhost'),('MythArchiveGrowisofsCmd','growisofs','myhost'),('MythArchiveTcrequantCmd','tcrequant','myhost'),('MythArchivePng2yuvCmd','png2yuv','myhost'),('DVDDBSchemaVer','1002',NULL),('DVDDeviceLocation','/dev/dvd','myhost'),('VCDDeviceLocation','/dev/cdrom','myhost'),('DVDOnInsertDVD','1','myhost'),('mythdvd.DVDPlayerCommand','Internal','myhost'),('VCDPlayerCommand','mplayer vcd:// -cdrom-device %d -fs -zoom -vo xv','myhost'),('DVDRipLocation','/data/media/tmp','myhost'),('TitlePlayCommand','mplayer dvd://%t -dvd-device %d -fs -zoom -vo xv -aid %a -channels %c','myhost'),('SubTitleCommand','-sid %s','myhost'),('TranscodeCommand','transcode','myhost'),('MTDPort','2442','myhost'),('MTDNiceLevel','20','myhost'),('MTDConcurrentTranscodes','1','myhost'),('MTDRipSize','0','myhost'),('MTDLogFlag','0','myhost'),('MTDac3Flag','0','myhost'),('MTDxvidFlag','1','myhost'),('GalleryDBSchemaVer','1000',NULL),('GalleryDir','/data/media/images','myhost'),('GalleryThumbnailLocation','1','myhost'),('GallerySortOrder','20','myhost'),('GalleryImportDirs','/mnt/cdrom:/mnt/camera','myhost'),('GalleryMoviePlayerCmd','mplayer -fs %s','myhost'),('SlideshowOpenGLTransition','none','myhost'),('SlideshowOpenGLTransitionLength','2000','myhost'),('SlideshowTransition','none','myhost'),('SlideshowBackground','','myhost'),('SlideshowDelay','5','myhost'),('GameDBSchemaVer','1012',NULL),('MusicDBSchemaVer','1006',NULL),('MusicLocation','/data/media/audio','myhost'),('MusicAudioDevice','default','myhost'),('CDDevice','/dev/cdrom','myhost'),('TreeLevels','splitartist artist album title','myhost'),('NonID3FileNameFormat','GENRE/ARTIST/ALBUM/TRACK_TITLE','myhost'),('Ignore_ID3','0','myhost'),('AutoLookupCD','1','myhost'),('AutoPlayCD','0','myhost'),('KeyboardAccelerators','1','myhost'),('CDWriterEnabled','0','myhost'),('CDDiskSize','1','myhost'),('CDCreateDir','1','myhost'),('CDWriteSpeed','0','myhost'),('CDBlankType','fast','myhost'),('PlayMode','none','myhost'),('IntelliRatingWeight','35','myhost'),('IntelliPlayCountWeight','25','myhost'),('IntelliLastPlayWeight','25','myhost'),('IntelliRandomWeight','15','myhost'),('MusicShowRatings','0','myhost'),('ShowWholeTree','1','myhost'),('ListAsShuffled','0','myhost'),('VisualMode','Random','myhost'),('VisualCycleOnSongChange','0','myhost'),('VisualModeDelay','0','myhost'),('VisualScaleWidth','1','myhost'),('VisualScaleHeight','1','myhost'),('ParanoiaLevel','Full','myhost'),('FilenameTemplate','ARTIST/ALBUM/TRACK-TITLE','myhost'),('TagSeparator',' - ','myhost'),('NoWhitespace','0','myhost'),('PostCDRipScript','','myhost'),('EjectCDAfterRipping','1','myhost'),('OnlyImportNewMusic','0','myhost'),('EncoderType','ogg','myhost'),('DefaultRipQuality','0','myhost'),('Mp3UseVBR','0','myhost'),('VideoDBSchemaVer','1010',NULL),('VideoStartupDir','/data/media/video/movies','myhost'),('VideoArtworkDir','/data/media/images/posters','myhost'),('VideoDefaultParentalLevel','4','myhost'),('VideoAggressivePC','0','myhost'),('VideoListUnknownFiletypes','1','myhost'),('VideoBrowserNoDB','0','myhost'),('VideoGalleryNoDB','0','myhost'),('VideoTreeNoDB','0','myhost'),('VideoTreeLoadMetaData','1','myhost'),('VideoNewBrowsable','1','myhost'),('mythvideo.sort_ignores_case','1','myhost'),('mythvideo.db_folder_view','1','myhost'),('mythvideo.ImageCacheSize','50','myhost'),('Default MythVideo View','1','myhost'),('MovieListCommandLine','/usr/local/share/mythtv/mythvideo/scripts/imdb.pl -M tv=no;video=no','myhost'),('MoviePosterCommandLine','/usr/local/share/mythtv/mythvideo/scripts/imdb.pl -P','myhost'),('MovieDataCommandLine','/usr/local/share/mythtv/mythvideo/scripts/imdb.pl -D','myhost'),('VideoGalleryColsPerPage','4','myhost'),('VideoGalleryRowsPerPage','3','myhost'),('VideoGallerySubtitle','1','myhost'),('VideoGalleryAspectRatio','1','myhost'),('VideoDefaultPlayer','Internal','myhost'),('Myhostname','myhost','myhost'),('UseDHCP','1','myhost'),('RepeatMode','all','myhost'),('LastMusicPlaylistPush','0','myhost'),('Mysqlserver','127.0.0.1','myhost'),('ServiceMythWEB','0','myhost'),('ServiceNFS','0','myhost'),('ServiceSamba','0','myhost'),('TVVidModeRefreshRate','0','myhost'),('TVVidModeRefreshRate0','0','myhost'),('TVVidModeRefreshRate1','0','myhost'),('TVVidModeRefreshRate2','0','myhost'),('GalleryRecursiveSlideshow','1','myhost'),('GameAllTreeLevels','system gamename','myhost'),('GameFavTreeLevels','gamename','myhost'),('WebBrowserZoomLevel','20','myhost'),('WebBrowserCommand','/usr/local/bin/mythbrowser','myhost'),('WebBrowserScrollMode','1','myhost'),('WebBrowserScrollSpeed','4','myhost'),('WebBrowserHideScrollbars','0','myhost'),('locale','USWI0455','myhost'),('AutomaticSetWatched','0','myhost'),('AutoExpireWatchedPriority','0',NULL),('RerecordWatched','1',NULL),('AudioOutputDevice','/dev/dsp','myhost'),('MixerDevice','/dev/mixer','myhost'),('MythArchiveDateFormat','%a %b %d','myhost'),('MythArchiveTimeFormat','%I:%M %p','myhost'),('GalleryOverlayCaption','0','myhost'),('DisplayGroupDefaultViewMask','1','myhost'),('TruncateDeletesSlowly','0','myhost'),('HOSTtemplatetype','Do Nothing','myhost'),('MythFillFixProgramIDsHasRunOnce','1','myhost'),('BackupDBLastRunStart','2008-02-21 08:34:39',NULL),('BackupDBLastRunEnd','2008-02-21 08:34:39',NULL),('DefaultVideoPlaybackProfile','CPU+','myhost'),('JumpToProgramOSD','1','myhost'),('ContinueEmbeddedTVPlay','0','myhost'),('AlwaysStreamFiles','0','myhost'),('UseOpenGLVSync','0','myhost'),('AdjustFill','0','myhost'),('LetterboxColour','0','myhost'),('PlaybackWatchList','1','myhost'),('PlaybackWLStart','0','myhost'),('PlaybackWLAutoExpire','0','myhost'),('PlaybackWLMaxAge','60','myhost'),('PlaybackWLBlackOut','2','myhost'),('Prefer708Captions','1','myhost'),('LiveTVPriority','0',NULL),('AutoExpireInsteadOfDelete','0',NULL),('DeletedFifoOrder','0',NULL),('ThemeCacheSize','1','myhost'),('MaxChannels','2','myhost'),('AudioUpmixType','2','myhost'),('ScreenShotPath','/data/home/mythtv/capture','myhost'),('MediaChangeEvents','0','myhost'),('IgnoreDevices','','myhost'),('OverrideExitMenu','0','myhost'),('RebootCommand','sudo /sbin/reboot','myhost'),('SchedOpenEnd','0',NULL);
+/*!40000 ALTER TABLE `settings` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `storagegroup`
+--
+
+DROP TABLE IF EXISTS `storagegroup`;
+CREATE TABLE `storagegroup` (
+ `id` int(11) NOT NULL auto_increment,
+ `groupname` varchar(32) NOT NULL,
+ `hostname` varchar(64) NOT NULL default '',
+ `dirname` varchar(255) NOT NULL default '',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `grouphostdir` (`groupname`,`hostname`,`dirname`),
+ KEY `hostname` (`hostname`)
+) ENGINE=MyISAM AUTO_INCREMENT=5 DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `storagegroup`
+--
+
+LOCK TABLES `storagegroup` WRITE;
+/*!40000 ALTER TABLE `storagegroup` DISABLE KEYS */;
+INSERT INTO `storagegroup` VALUES (1,'Default','myhost','/data/media/video/recordings'),(2,'DB Backups','myhost','/data/database_backup/'),(4,'LiveTV','myhost','/data/media/video/livetv/');
+/*!40000 ALTER TABLE `storagegroup` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `tvchain`
+--
+
+DROP TABLE IF EXISTS `tvchain`;
+CREATE TABLE `tvchain` (
+ `chanid` int(10) unsigned NOT NULL default '0',
+ `starttime` datetime NOT NULL default '0000-00-00 00:00:00',
+ `chainid` varchar(128) NOT NULL default '',
+ `chainpos` int(10) NOT NULL default '0',
+ `discontinuity` tinyint(1) NOT NULL default '0',
+ `watching` int(10) NOT NULL default '0',
+ `hostprefix` varchar(128) NOT NULL default '',
+ `cardtype` varchar(32) NOT NULL default 'V4L',
+ `input` varchar(32) NOT NULL default '',
+ `channame` varchar(32) NOT NULL default '',
+ `endtime` datetime NOT NULL default '0000-00-00 00:00:00',
+ PRIMARY KEY (`chanid`,`starttime`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `tvchain`
+--
+
+LOCK TABLES `tvchain` WRITE;
+/*!40000 ALTER TABLE `tvchain` DISABLE KEYS */;
+/*!40000 ALTER TABLE `tvchain` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `upnpmedia`
+--
+
+DROP TABLE IF EXISTS `upnpmedia`;
+CREATE TABLE `upnpmedia` (
+ `intid` int(10) unsigned NOT NULL default '0',
+ `class` varchar(64) NOT NULL default '',
+ `itemtype` varchar(128) NOT NULL default '',
+ `parentid` int(10) unsigned NOT NULL default '0',
+ `itemproperties` varchar(255) NOT NULL default '',
+ `filepath` varchar(512) NOT NULL default '',
+ `title` varchar(255) NOT NULL default '',
+ `filename` varchar(512) NOT NULL default '',
+ `coverart` varchar(512) NOT NULL default '',
+ PRIMARY KEY (`intid`),
+ KEY `class` (`class`),
+ KEY `filepath` (`filepath`),
+ KEY `parentid` (`parentid`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `upnpmedia`
+--
+
+LOCK TABLES `upnpmedia` WRITE;
+/*!40000 ALTER TABLE `upnpmedia` DISABLE KEYS */;
+/*!40000 ALTER TABLE `upnpmedia` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `videocategory`
+--
+
+DROP TABLE IF EXISTS `videocategory`;
+CREATE TABLE `videocategory` (
+ `intid` int(10) unsigned NOT NULL auto_increment,
+ `category` varchar(128) NOT NULL,
+ PRIMARY KEY (`intid`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `videocategory`
+--
+
+LOCK TABLES `videocategory` WRITE;
+/*!40000 ALTER TABLE `videocategory` DISABLE KEYS */;
+/*!40000 ALTER TABLE `videocategory` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `videocountry`
+--
+
+DROP TABLE IF EXISTS `videocountry`;
+CREATE TABLE `videocountry` (
+ `intid` int(10) unsigned NOT NULL auto_increment,
+ `country` varchar(128) NOT NULL,
+ PRIMARY KEY (`intid`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `videocountry`
+--
+
+LOCK TABLES `videocountry` WRITE;
+/*!40000 ALTER TABLE `videocountry` DISABLE KEYS */;
+/*!40000 ALTER TABLE `videocountry` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `videogenre`
+--
+
+DROP TABLE IF EXISTS `videogenre`;
+CREATE TABLE `videogenre` (
+ `intid` int(10) unsigned NOT NULL auto_increment,
+ `genre` varchar(128) NOT NULL,
+ PRIMARY KEY (`intid`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `videogenre`
+--
+
+LOCK TABLES `videogenre` WRITE;
+/*!40000 ALTER TABLE `videogenre` DISABLE KEYS */;
+/*!40000 ALTER TABLE `videogenre` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `videometadata`
+--
+
+DROP TABLE IF EXISTS `videometadata`;
+CREATE TABLE `videometadata` (
+ `intid` int(10) unsigned NOT NULL auto_increment,
+ `title` varchar(128) NOT NULL,
+ `director` varchar(128) NOT NULL,
+ `plot` text,
+ `rating` varchar(128) NOT NULL,
+ `inetref` varchar(32) NOT NULL,
+ `year` int(10) unsigned NOT NULL,
+ `userrating` float NOT NULL,
+ `length` int(10) unsigned NOT NULL,
+ `showlevel` int(10) unsigned NOT NULL,
+ `filename` text NOT NULL,
+ `coverfile` text NOT NULL,
+ `childid` int(11) NOT NULL default '-1',
+ `browse` tinyint(1) NOT NULL default '1',
+ `playcommand` varchar(255) default NULL,
+ `category` int(10) unsigned NOT NULL default '0',
+ PRIMARY KEY (`intid`),
+ KEY `director` (`director`),
+ KEY `title` (`title`),
+ KEY `title_2` (`title`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `videometadata`
+--
+
+LOCK TABLES `videometadata` WRITE;
+/*!40000 ALTER TABLE `videometadata` DISABLE KEYS */;
+/*!40000 ALTER TABLE `videometadata` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `videometadatacountry`
+--
+
+DROP TABLE IF EXISTS `videometadatacountry`;
+CREATE TABLE `videometadatacountry` (
+ `idvideo` int(10) unsigned NOT NULL,
+ `idcountry` int(10) unsigned NOT NULL,
+ KEY `idvideo` (`idvideo`),
+ KEY `idcountry` (`idcountry`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `videometadatacountry`
+--
+
+LOCK TABLES `videometadatacountry` WRITE;
+/*!40000 ALTER TABLE `videometadatacountry` DISABLE KEYS */;
+/*!40000 ALTER TABLE `videometadatacountry` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `videometadatagenre`
+--
+
+DROP TABLE IF EXISTS `videometadatagenre`;
+CREATE TABLE `videometadatagenre` (
+ `idvideo` int(10) unsigned NOT NULL,
+ `idgenre` int(10) unsigned NOT NULL,
+ KEY `idvideo` (`idvideo`),
+ KEY `idgenre` (`idgenre`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `videometadatagenre`
+--
+
+LOCK TABLES `videometadatagenre` WRITE;
+/*!40000 ALTER TABLE `videometadatagenre` DISABLE KEYS */;
+/*!40000 ALTER TABLE `videometadatagenre` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `videosource`
+--
+
+DROP TABLE IF EXISTS `videosource`;
+CREATE TABLE `videosource` (
+ `sourceid` int(10) unsigned NOT NULL auto_increment,
+ `name` varchar(128) NOT NULL default '',
+ `xmltvgrabber` varchar(128) default NULL,
+ `userid` varchar(128) NOT NULL default '',
+ `freqtable` varchar(16) NOT NULL default 'default',
+ `lineupid` varchar(64) default NULL,
+ `password` varchar(64) default NULL,
+ `useeit` smallint(6) NOT NULL default '0',
+ PRIMARY KEY (`sourceid`),
+ UNIQUE KEY `name` (`name`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `videosource`
+--
+
+LOCK TABLES `videosource` WRITE;
+/*!40000 ALTER TABLE `videosource` DISABLE KEYS */;
+/*!40000 ALTER TABLE `videosource` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `videotypes`
+--
+
+DROP TABLE IF EXISTS `videotypes`;
+CREATE TABLE `videotypes` (
+ `intid` int(10) unsigned NOT NULL auto_increment,
+ `extension` varchar(128) NOT NULL,
+ `playcommand` varchar(255) NOT NULL,
+ `f_ignore` tinyint(1) default NULL,
+ `use_default` tinyint(1) default NULL,
+ PRIMARY KEY (`intid`)
+) ENGINE=MyISAM AUTO_INCREMENT=10 DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `videotypes`
+--
+
+LOCK TABLES `videotypes` WRITE;
+/*!40000 ALTER TABLE `videotypes` DISABLE KEYS */;
+INSERT INTO `videotypes` VALUES (1,'txt','',1,0),(2,'log','',1,0),(3,'mpg','Internal',0,0),(4,'avi','',0,1),(5,'vob','Internal',0,0),(6,'mpeg','Internal',0,0),(7,'VIDEO_TS','Internal',0,0),(8,'iso','Internal',0,0),(9,'img','Internal',0,0);
+/*!40000 ALTER TABLE `videotypes` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `websites`
+--
+
+DROP TABLE IF EXISTS `websites`;
+CREATE TABLE `websites` (
+ `grp` varchar(255) NOT NULL,
+ `dsc` varchar(255) default NULL,
+ `url` varchar(255) NOT NULL,
+ `updated` int(10) unsigned default NULL,
+ PRIMARY KEY (`url`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `websites`
+--
+
+LOCK TABLES `websites` WRITE;
+/*!40000 ALTER TABLE `websites` DISABLE KEYS */;
+/*!40000 ALTER TABLE `websites` ENABLE KEYS */;
+UNLOCK TABLES;
+/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
+
+/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
+/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
+/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
+/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
+/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
+/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
+/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
+
+-- Dump completed on 2008-02-21 14:41:35
diff --git a/abs/mv-core/mythdb-initial/mythdb.install b/abs/mv-core/mythdb-initial/mythdb.install
new file mode 100755
index 0000000..bc1db20
--- /dev/null
+++ b/abs/mv-core/mythdb-initial/mythdb.install
@@ -0,0 +1,31 @@
+mydate=`date +%m-%d-%y`
+HOST=`hostname`
+post_install() {
+#echo backup the old database
+ mysqldump mythconverg >/data/database/mythconverg.${mydate}.sql
+# echo dropping the old database
+ mysql -u root -e 'drop database mythconverg;'
+ mysql -u root -e 'create database mythconverg;'
+ echo installing the default database
+ if [ $HOST = 'myhost' ]
+ then
+ cp /data/database/mc.sql.initial /data/database/mc.sql.fixed
+ cp /data/database/permissions.sql /data/database/permissions.sql.fixed
+ else
+ sed -e "s/myhost/$HOST/g" /data/database/mc.sql.initial > /data/database/mc.sql.fixed
+ sed -e "s/myhost/$HOST/g" /data/database/permissions.sql > /data/database/permissions.sql.fixed
+
+ fi
+
+ mysql mythconverg < /data/database/mc.sql.fixed 2>/dev/null
+ mysql < /data/database/permissions.sql.fixed 2>/dev/null
+
+ rm /data/database/mc.sql.initial
+}
+post_upgrade() {
+ echo "nothing to do"
+}
+
+op=$1
+shift
+$op $*
diff --git a/abs/mv-core/mythdb-initial/permissions.sql b/abs/mv-core/mythdb-initial/permissions.sql
new file mode 100755
index 0000000..acb4673
--- /dev/null
+++ b/abs/mv-core/mythdb-initial/permissions.sql
@@ -0,0 +1,11 @@
+
+GRANT ALL ON mythconverg.* TO mythtv@localhost IDENTIFIED BY "mythtv";
+GRANT ALL ON mythconverg.* TO mythtv@"%" IDENTIFIED BY "mythtv";
+GRANT ALL ON mythconverg.* TO mythtv@myhost IDENTIFIED BY "mythtv";
+GRANT FILE ON *.* TO 'mythtv'@'%';
+FLUSH PRIVILEGES;
+GRANT CREATE TEMPORARY TABLES ON mythconverg.* TO mythtv@localhost IDENTIFIED BY "mythtv";
+GRANT CREATE TEMPORARY TABLES ON mythconverg.* TO mythtv@'%' IDENTIFIED BY "mythtv";
+GRANT CREATE TEMPORARY TABLES ON mythconverg.* TO mythtv@myhost IDENTIFIED BY "mythtv";
+FLUSH PRIVILEGES;
+ALTER DATABASE mythconverg DEFAULT CHARACTER SET latin1;
diff --git a/abs/mv-core/mythtv-status/PKGBUILD b/abs/mv-core/mythtv-status/PKGBUILD
new file mode 100755
index 0000000..4b1a007
--- /dev/null
+++ b/abs/mv-core/mythtv-status/PKGBUILD
@@ -0,0 +1,21 @@
+pkgname=mythtv-status
+pkgver=0.9.0
+pkgrel=5
+
+pkgdesc="displays myth status in motd"
+#depends=(perl-xml-libxml perl-mime-tools perl-mailtools perl-net-upnp)
+depends=(perl-xml-libxml perl-mime-parser perl-mailtools perl-net-upnp)
+arch=('i686')
+source=(mythtv-status.cron http://www.etc.gen.nz/projects/mythtv/tarballs/$pkgname-$pkgver.tar.gz)
+install=mythtv-status.install
+build() {
+ MVDIR=$startdir/pkg/usr/MythVantage/bin
+ mkdir -p $MVDIR
+ cd $startdir/src/$pkgname-$pkgver
+ cd bin
+ cp -p * $MVDIR/
+ cd $startdir
+ #install -m 0755 mythtv-status $MVDIR/mythtv-status
+ install -m 0755 mythtv-status.cron $MVDIR/mythtv-status.cron
+}
+
diff --git a/abs/mv-core/mythtv-status/mythtv-status.cron b/abs/mv-core/mythtv-status/mythtv-status.cron
new file mode 100644
index 0000000..088b87c
--- /dev/null
+++ b/abs/mv-core/mythtv-status/mythtv-status.cron
@@ -0,0 +1,4 @@
+#!/bin/bash
+. /etc/profile
+mythtv-status --noschedule-conflicts > /etc/motd
+
diff --git a/abs/mv-core/mythtv-status/mythtv-status.install b/abs/mv-core/mythtv-status/mythtv-status.install
new file mode 100644
index 0000000..304015a
--- /dev/null
+++ b/abs/mv-core/mythtv-status/mythtv-status.install
@@ -0,0 +1,51 @@
+# This is a default template for a post-install scriptlet. You can
+# remove any functions you don't need (and this header).
+
+# arg 1: the new package version
+pre_install() {
+/bin/true
+}
+
+# arg 1: the new package version
+post_install() {
+MVDIR=/usr/MythVantage/bin
+
+
+ if [ ! -e /etc/cron.tenminutes ]
+ then
+ mkdir /etc/cron.tenminutes
+ fi
+ ln -s $MVDIR/mythtv-status.cron /etc/cron.tenminutes/mythtv-status.cron
+
+
+
+}
+
+# arg 1: the new package version
+# arg 2: the old package version
+pre_upgrade() {
+ /bin/true
+
+
+
+}
+
+# arg 1: the new package version
+# arg 2: the old package version
+post_upgrade() {
+ post_install
+}
+
+# arg 1: the old package version
+pre_remove() {
+ /bin/true
+}
+
+# arg 1: the old package version
+post_remove() {
+ /bin/true
+}
+
+op=$1
+shift
+$op $*
diff --git a/abs/mv-core/ncid/PKGBUILD b/abs/mv-core/ncid/PKGBUILD
new file mode 100644
index 0000000..1f46b09
--- /dev/null
+++ b/abs/mv-core/ncid/PKGBUILD
@@ -0,0 +1,63 @@
+pkgname=ncid
+pkgver=0.71
+pkgrel=1
+pkgdesc="daemon to display callerid"
+url="http://ncid.sourceforge.net/"
+license=""
+depends=(ghosd python)
+makedepends=()
+conflicts=()
+replaces=()
+backup=()
+arch=('i686')
+install=ncid.install
+ #wget http://internap.dl.sourceforge.net/sourceforge/ncid/ncid-0.71-src.tar.gz
+
+source=(http://internap.dl.sourceforge.net/sourceforge/ncid/$pkgname-$pkgver-src.tar.gz ncidd.conf ncid.conf ncid.py ncidpermissions.sql ncid.sql)
+md5sums=()
+
+build() {
+cd $startdir/src/$pkgname
+#cd $startdir/src/
+ ./configure --prefix=/usr
+ make clean
+ make package || return 1
+ mkdir -p $startdir/pkg/usr/bin
+ mkdir -p $startdir/pkg/usr/sbin
+ mkdir -p $startdir/pkg/etc/ncid
+ cp $startdir/*.conf $startdir/pkg/etc/ncid
+ install -m 755 ncidd $startdir/pkg/usr/sbin
+ install -m 755 ncid $startdir/pkg/usr/bin
+
+ mkdir -p $startdir/pkg/usr/share/man/man1
+ mkdir -p $startdir/pkg/usr/share/man/man5
+ mkdir -p $startdir/pkg/usr/share/man/man8
+ cd man
+ install -m 644 ncid.1 ncidscripts.1 ncidtools.1 $startdir/pkg/usr/share/man/man1
+ install -m 644 ncid.conf.5 ncidd.conf.5 ncidd.alias.5 ncidscript.conf.5 $startdir/pkg/usr/share/man/man5
+ install -m 644 ncidd.8 $startdir/pkg/usr/share/man/man8
+ cd -
+ mkdir -p $startdir/pkg/var/log
+ touch $startdir/pkg/var/log/cidcall.log
+cd scripts
+
+mkdir -p $startdir/pkg/usr/share/ncid/
+install -m 755 $startdir/src/ncid-osd $startdir/pkg/usr/share/ncid
+install -m 755 ncidrotate ncid-page ncid-samba ncid-speak $startdir/pkg/usr/share/ncid
+install -m 644 README $startdir/pkg/usr/share/ncid/
+cd -
+cd tools
+mkdir -p $startdir/pkg/usr/bin
+install -m 755 cidlog cidalias cidlogupd $startdir/pkg/usr/bin
+cd -
+install -m 755 $startdir/src/ncid.py $startdir/pkg/usr/bin
+
+
+install -m 755 -D $startdir/src/ncid.sql $startdir/pkg/tmp/ncid.sql
+install -m755 -D $startdir/src/ncidpermissions.sql $startdir/pkg/tmp/ncidpermissions.sql
+chmod 777 $startdir/pkg/tmp
+ #make DESTDIR=$startdir/pkg install
+ #mkdir -p $startdir/pkg/usr/local/bin
+# cp putfifo $startdir/pkg/usr/local/bin/
+# cp onscreend $startdir/pkg/usr/local/bin/
+}
diff --git a/abs/mv-core/ncid/cid.sh b/abs/mv-core/ncid/cid.sh
new file mode 100755
index 0000000..43167c1
--- /dev/null
+++ b/abs/mv-core/ncid/cid.sh
@@ -0,0 +1,11 @@
+#!/bin/bash
+#CID: *DATE*10152007*TIME*0950*LINE*-*NMBR*4144229767*MESG*NONE*NAME*BORKOWSKI,MICHA*
+while read line ; do
+# echo $line
+ NUMBER=`echo $line | cut -d* -f9`
+ NAME=`echo $line | cut -d* -f13`
+ /usr/bin/notify.py PHN $NUMBER
+ /usr/bin/notify.py PH2 $NAME
+
+
+done
diff --git a/abs/mv-core/ncid/ncid-osd b/abs/mv-core/ncid/ncid-osd
new file mode 100644
index 0000000..e115561
--- /dev/null
+++ b/abs/mv-core/ncid/ncid-osd
@@ -0,0 +1,26 @@
+#!/bin/sh
+#set -x
+# most of this program is taken from nciduser by Mace Moneta
+# requires festival: http://www.cstr.ed.ac.uk/projects/festival
+
+# input is 4 lines obtained from ncid using the "-all" option
+# input: DATE\nTIME\nNUMBER\nNAME
+# ncid calls a external program with the "--call-prog" option
+# default program: /usr/share/ncid/ncid-page
+#
+# ncid usage examples:
+# ncid --all --call-prog
+# ncid --all --call-prog --program ncid-osd
+# ncid --no-gui --all --call-prog --program ncid-osd
+
+read CIDDATE
+read CIDTIME
+read CIDNMBR
+read CIDNAME
+#CIDNAME="test name"
+#CIDNMBR="(414) 282 5011"
+ConfigDir=/etc/ncid
+ConfigFile=$ConfigDir/ncidscript.conf
+info="$CIDNMBR $CIDNAME"
+osdClient.pl localhost 5000 "$info:::SYS"
+exit 0
diff --git a/abs/mv-core/ncid/ncid.conf b/abs/mv-core/ncid/ncid.conf
new file mode 100644
index 0000000..91c3167
--- /dev/null
+++ b/abs/mv-core/ncid/ncid.conf
@@ -0,0 +1,59 @@
+# tcl/tk configuration file
+
+# Directory NCID uses to find the helper scripts
+set ProgDir /usr/share/ncid
+
+# default helper script
+set EXTPROG ncid-osd
+
+# Set Host to the NCID server address
+# Host defaults to 127.0.0.1
+set Host 127.0.0.1
+#set Host 192.168.1.5
+
+# The NCID port default is 3333
+set Port 3333
+
+# If the connection to the server is lost,
+# try every Delay seconds to reconnect
+# The Default: 60
+set Delay 20
+
+# If set to 1, display raw data received from the NCID server
+# If set to 0, do not display raw data received from the NCID server
+# Default: 0
+set Raw 0
+
+# If set to 1, output: date time number name
+# If set to 0, output: name number
+# Default: 0
+set All 1
+
+# If set to 1, display formatted CID, and CID log file on connect
+# If set to 0, ddo not isplay formatted CID, and CID log file on connect
+# Default: 0
+set Verbose 0
+
+# If set to 1, display information in terminal progran or external program
+# If set to 0, display information using a GUI
+# Default: 0
+set NoGUI 1
+
+# output name and number to external program
+# Default: 0
+set Callprog 1
+
+# ring number to call external program
+# Default: 0
+set CallOnRing 0
+
+# external called program
+set Program [list $ProgDir/$EXTPROG]
+
+# TiVo Flag: send output in format to use OUT2OSD
+# Default: 0
+set TivoFlag 0
+
+# Message Flag: send messages to output modules
+# Default: 0
+set MsgFlag 0 \ No newline at end of file
diff --git a/abs/mv-core/ncid/ncid.install b/abs/mv-core/ncid/ncid.install
new file mode 100755
index 0000000..e000b3b
--- /dev/null
+++ b/abs/mv-core/ncid/ncid.install
@@ -0,0 +1,17 @@
+
+post_install() {
+
+ mysql -u root -e 'create database ncid;'
+ echo installing the default database
+ mysql ncid < /tmp/ncid.sql
+ mysql < /tmp/ncidpermissions.sql
+ rm /tmp/ncid.sql
+ rm /tmp/ncidpermissions.sql
+}
+post_upgrade() {
+ echo "nothing to do"
+}
+
+op=$1
+shift
+$op $*
diff --git a/abs/mv-core/ncid/ncid.py b/abs/mv-core/ncid/ncid.py
new file mode 100755
index 0000000..7ffcefe
--- /dev/null
+++ b/abs/mv-core/ncid/ncid.py
@@ -0,0 +1,59 @@
+#!/usr/bin/python
+
+import MySQLdb
+import sys
+import getopt
+import socket
+import os
+db = MySQLdb.connect(host="127.0.0.1", user="mythtv", passwd="mythtv", db="mythconverg")
+cdb = MySQLdb.connect(host="127.0.0.1", user="mythtv", passwd="mythtv", db="ncid")
+#log to logger?
+
+
+
+#log to db
+
+def main(argv):
+
+ DATE=sys.stdin.readline().strip()
+ TIME=sys.stdin.readline().strip()
+ NUMBER=sys.stdin.readline().strip()
+ NAME=sys.stdin.readline().strip()
+
+
+ #print "start of line"
+ #print DATE
+ #print TIME
+ #print NUMBER
+ #print NAME
+ #print "$$$$$$$$$$$$$$$$$$"
+
+#notify
+
+
+ # create a cursor
+ cursor = db.cursor()
+ # execute SQL statement
+ cursor.execute("SELECT DISTINCT(hostname) from settings where not hostname is NULL")
+ result = cursor.fetchall()
+
+ port1=str(5000)
+ port2=str(5001)
+
+
+ message = NAME + " :::" + "PHN"
+ message2 = NUMBER + " :::" + "PH2"
+ for row in result:
+ os.system("/usr/bin/osdClient.pl " + row[0] + " " + port1 + " "+ "\"" + message + "\"" + " 2>/dev/null &" )
+ os.system("/usr/bin/osdClient.pl " + row[0] + " " + port2 + " "+ "\"" + message2 + "\"" + " 2>/dev/null &" )
+ #print ("/usr/bin/osdClient.pl " + row[0] + " " + port2 + " "+ "\"" + message2 + "\"" + " 2>/dev/null &" )
+
+
+ ncursor=cdb.cursor()
+ ncursor.execute ("""INSERT INTO cid (date,time,name,number) VALUES ('%s', '%s','%s','%s');""" %(DATE,TIME,NAME,NUMBER ) )
+
+
+
+if __name__ == "__main__":
+ main(sys.argv[1:])
+
diff --git a/abs/mv-core/ncid/ncid.sql b/abs/mv-core/ncid/ncid.sql
new file mode 100644
index 0000000..556b4ba
--- /dev/null
+++ b/abs/mv-core/ncid/ncid.sql
@@ -0,0 +1,51 @@
+-- MySQL dump 10.11
+--
+-- Host: localhost Database: ncid
+-- ------------------------------------------------------
+-- Server version 5.0.27
+
+/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
+/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
+/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
+/*!40101 SET NAMES utf8 */;
+/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
+/*!40103 SET TIME_ZONE='+00:00' */;
+/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
+/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
+/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
+/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
+
+--
+-- Table structure for table `cid`
+--
+
+DROP TABLE IF EXISTS `cid`;
+CREATE TABLE `cid` (
+ `id` int(11) NOT NULL auto_increment,
+ `date` varchar(36) NOT NULL default '',
+ `time` varchar(32) default NULL,
+ `name` varchar(32) default NULL,
+ `number` varchar(32) default NULL,
+ `ts` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
+ PRIMARY KEY (`id`)
+) ENGINE=MyISAM AUTO_INCREMENT=17 DEFAULT CHARSET=latin1;
+
+--
+-- Dumping data for table `cid`
+--
+
+LOCK TABLES `cid` WRITE;
+/*!40000 ALTER TABLE `cid` DISABLE KEYS */;
+/*!40000 ALTER TABLE `cid` ENABLE KEYS */;
+UNLOCK TABLES;
+/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
+
+/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
+/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
+/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
+/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
+/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
+/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
+/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
+
+-- Dump completed on 2007-10-29 14:36:50
diff --git a/abs/mv-core/ncid/ncidclient.sh b/abs/mv-core/ncid/ncidclient.sh
new file mode 100755
index 0000000..0d2be3f
--- /dev/null
+++ b/abs/mv-core/ncid/ncidclient.sh
@@ -0,0 +1,2 @@
+ncid --no-gui --all --call-prog --program /usr/bin/ncid.py 127.0.0.1 3333
+
diff --git a/abs/mv-core/ncid/ncidd.conf b/abs/mv-core/ncid/ncidd.conf
new file mode 100644
index 0000000..daa2e79
--- /dev/null
+++ b/abs/mv-core/ncid/ncidd.conf
@@ -0,0 +1,143 @@
+# ncid - Network CallerID Server Config File
+
+################################
+# Definitions and Line formats #
+################################
+
+# lines can be blank, or start with the words: send, set #
+#
+# A line is divided into words, separated by spaces
+#
+# A word is either a string of non-blank characters, everything
+# between double quotes, or an equal sign.
+#
+# SEND LINE FORMAT:
+# send DATATYPE [DATATYPE] ...
+# where DATATYPE = cidlog, cidinfo
+#
+# SET LINE FORMAT:
+# set ITEM = VALUE [ITEM = VALUE] ...
+# where ITEM = cidalias, cidlog, datalog, initcid, initstr,
+# lockfile, port, ttyclocal, ttyport, ttyspeed,
+# nomodem
+
+############################
+# Log and Info for Clients #
+############################
+
+# Send the call log to a client when connected
+# The default is not to send the call log file
+send cidlog
+
+# Send call info (LINE and RING) to a client at each ring
+# The default is not to send the call info line
+send cidinfo
+
+############################
+# NCID Communications Port #
+############################
+
+# The default TCP/IP port is 3333
+ set port = 3333
+
+#######################
+# Alias and Log Files #
+#######################
+
+# The default CID alias file: /etc/ncid/ncidd.alias
+# set cidalias = /etc/ncid/ncidd.alias
+
+# The default CID call log file: /var/log/cidcall.log
+# the log file must exist, ncidd will not create it
+# (also make the change in /etc/logrotate.d/ncidd
+# and also /etc/ncid/ncidrotate.conf)
+# set cidlog = /var/log/cidcall.log
+
+# The default tty data log file: /var/log/ciddata.log
+# the log file must exist, ncidd will not create it
+# (also make the change in /etc/logrotate.d/ncidd
+# and also /etc/ncid/ncidrotate.conf)
+# set datalog = /var/log/ciddata.log
+
+#####################
+# TTY Configuration #
+#####################
+
+# The default tty port: /dev/modem
+# set ttyport = /dev/cu.modem # Macintosh OS X
+ set ttyport = /dev/ttyS1
+
+# The default tty port speed: 19200
+# The tty speed can be one of: 38400, 19200, 9600, 4800
+# set ttyspeed = 4800 # NetCallerID port speed
+
+# Ignore tty control signals for internal modems and 3 wire serial cables
+# Disable tty control signals: ttyclocal = 1
+# Enable tty control signals: ttyclocal = 0 (default)
+# set ttyclocal = 1
+
+# The lockfile name is generated automatically
+# If tty port is /dev/modem, lockfile is: /var/lock/LCK..modem
+# set lockfile = /var/lock/LCK..ttyS0
+
+#####################
+# Modem or No Modem #
+#####################
+
+# Obtain CallerID from a CID device or a modem
+# device: nomodem = 1 (do not send AT commands)
+# modem: nomodem = 0 (default - send AT commands)
+# set nomodem = 1
+
+########################
+# Modem Initialization #
+########################
+
+# The default modem initialization is: "AT Z S0=0 E1 V1 Q0"
+# set initstr = "ATE1V1Q0"
+#
+# Alternate modem initialization string
+# set initstr = "AT&FE1V1Q0+VIP"
+
+# Addon strings to set modem for Distinctive Ring:
+# http://www.modemsite.com/56k/dring.asp
+#
+# 3Com/USR/TI chipset: ATS41=1
+# Reported Ring Codes: RING A, RING B, RING C
+# Rockwell/Conexant chipset: AT-SDR=7
+# Reported Ring Codes: RING 1, RING 2, RING 3
+# Lucent/Agere chipset: AT+VDR=1,0
+# Reported DROF/DRON messages: DRON=5 DROF=11, DRON=5 DROF=34
+#
+# Example adds 3Com DR to the default modem initialization
+# set initstr = "ATE1V1Q0S41=1"
+
+# The default for ncidd is to try two CID strings to setup
+# CallerID: "AT+VCID=1" and if that fails: "AT#CID=1".
+# set initcid = "AT#CID=1"
+#
+# Alternate CID strings to try if default does not work:
+# set initcid = "AT+FCLASS=8;+VCID=1"
+# set initcid = "AT-STE=1;+VCID=1"
+# set initcid = "AT-STE=1;#CID=1"
+
+#################
+# TiVo Settings #
+#################
+# set ttyclocal = 1 # TiVo requires CLOCAL
+# set ttyport = /dev/ttyS1 # TiVo Modem Port
+# set lockfile = /var/tmp/modemlock # needed for TiVo Modem Port
+#
+# To use a modem on the TiVo serial port
+# Tivo (stereo mini jack) ->
+# -> (stereo mini plug) TiVo serial cable (9-pin male) ->
+# -> (9-pin Female) PC modem cable (25-pin Male ->
+# -> (25-pin Female) Modem
+# if the modem has switches, disable DTR
+# Use this string to set the modem before attaching it to the TiVo:
+# AT&F0&D0&B1&W
+#
+# set ttyport = /dev/ttyS3 # TiVo Serial Port
+#
+# End TiVo Settings
+
diff --git a/abs/mv-core/ncid/ncidpermissions.sql b/abs/mv-core/ncid/ncidpermissions.sql
new file mode 100755
index 0000000..eb660fa
--- /dev/null
+++ b/abs/mv-core/ncid/ncidpermissions.sql
@@ -0,0 +1,8 @@
+
+GRANT ALL ON ncid.* TO mythtv@localhost IDENTIFIED BY "mythtv";
+GRANT ALL ON ncid.* TO mythtv@"%" IDENTIFIED BY "mythtv";
+GRANT FILE ON *.* TO 'mythtv'@'%';
+FLUSH PRIVILEGES;
+
+FLUSH PRIVILEGES;
+ALTER DATABASE ncid DEFAULT CHARACTER SET latin1;
diff --git a/abs/mv-core/tilda/PKGBUILD b/abs/mv-core/tilda/PKGBUILD
new file mode 100755
index 0000000..351f944
--- /dev/null
+++ b/abs/mv-core/tilda/PKGBUILD
@@ -0,0 +1,20 @@
+# Maintainer: William Rea <sillywilly@gmail.com>
+pkgname=tilda
+pkgver=0.9.6
+pkgrel=8
+pkgdesc="Linux terminal based on classic terminals from first person shooter games."
+url="http://tilda.sourceforge.net"
+license="GPL"
+depends=('vte' 'confuse' 'libglade')
+makedepends=('gawk')
+source=(http://downloads.sourceforge.net/sourceforge/tilda/tilda-$pkgver.tar.gz tilda.patch)
+arch=('i686')
+build() {
+
+ cd $startdir/src/tilda-$pkgver/src
+ patch -p0 < $startdir/src/tilda.patch
+ cd $startdir/src/tilda-$pkgver
+ ./configure --prefix=/usr
+ make || return 1
+ make DESTDIR=$startdir/pkg install
+}
diff --git a/abs/mv-core/tilda/tilda.patch b/abs/mv-core/tilda/tilda.patch
new file mode 100644
index 0000000..916a020
--- /dev/null
+++ b/abs/mv-core/tilda/tilda.patch
@@ -0,0 +1,25 @@
+--- tilda.c.orig 2008-02-06 21:52:53.000000000 +0000
++++ tilda.c 2008-08-04 04:52:46.000000000 +0000
+@@ -581,11 +581,12 @@
+ /* If the config file doesn't exist open up the wizard */
+ if (access (tw->config_file, R_OK) == -1)
+ {
++ //forget the wizard, just exit
++ exit (EXIT_SUCCESS);
+ /* We probably need a default key, too ... */
+ gchar *default_key = g_strdup_printf ("F%d", tw->instance+1);
+ config_setstr ("key", default_key);
+ g_free (default_key);
+-
+ need_wizard = TRUE;
+ }
+
+@@ -600,6 +601,8 @@
+
+ if (!ret)
+ {
++ //forget the wizard, just exit
++ exit (EXIT_SUCCESS);
+ /* The key was unbindable, so we need to show the wizard */
+ show_invalid_keybinding_dialog (NULL);
+ wizard (tw);
diff --git a/abs/mv-core/webcal/PKGBUILD b/abs/mv-core/webcal/PKGBUILD
new file mode 100755
index 0000000..efa8237
--- /dev/null
+++ b/abs/mv-core/webcal/PKGBUILD
@@ -0,0 +1,35 @@
+pkgname=webcalendar
+pkgver=1.2.b1
+pkgrel=11
+pkgdesc="Web based calendar"
+license="GPL"
+arch=('i686')
+
+url="http://www.k5n.us/webcalendar.php"
+source=(http://voxel.dl.sourceforge.net/sourceforge/webcalendar/WebCalendar-1.2.b1.tar.gz config.php settings.php send_reminders.patch createdb.sql sendreminders.sh posix.tab)
+depends="local-website"
+install=webcal.install
+
+build() {
+cd $startdir/src
+mkdir -p $startdir/pkg/data/srv/httpd/htdocs/webcal
+mkdir -p $startdir/pkg/usr/bin
+cp $startdir/src/sendreminders.sh $startdir/pkg/usr/bin/
+chmod 755 $startdir/pkg/usr/bin/sendreminders.sh
+
+cp -rp WebCalendar-$pkgver/* $startdir/pkg/data/srv/httpd/htdocs/webcal
+
+cp createdb.sql $startdir/pkg/data/srv/httpd/htdocs/webcal/
+cp config.php $startdir/pkg/data/srv/httpd/htdocs/webcal/includes
+cp settings.php $startdir/pkg/data/srv/httpd/htdocs/webcal/includes
+cp -f posix.tab $startdir/pkg/data/srv/httpd/htdocs/webcal/includes/zone.tab
+
+cd $startdir/pkg/data/srv/httpd/htdocs/webcal/tools
+
+patch -p0 < $startdir/src/send_reminders.patch
+
+chmod 755 $startdir/pkg/data/srv/httpd/htdocs/webcal/tools/send_reminders.php
+
+
+}
+
diff --git a/abs/mv-core/webcal/config.php b/abs/mv-core/webcal/config.php
new file mode 100644
index 0000000..d803440
--- /dev/null
+++ b/abs/mv-core/webcal/config.php
@@ -0,0 +1,263 @@
+<?php
+/* This file loads configuration settings from the data file settings.php and
+ * sets up some needed variables.
+ *
+ * The settings.php file is created during installation using the web-based db
+ * setup page (install/index.php).
+ *
+ * <b>Note:</b>
+ * DO NOT EDIT THIS FILE!
+ *
+ *
+ * @author Craig Knudsen <cknudsen@cknudsen.com>
+ * @copyright Craig Knudsen, <cknudsen@cknudsen.com>, http://www.k5n.us/cknudsen
+ * @license http://www.gnu.org/licenses/gpl.html GNU GPL
+ * @version $Id: config.php,v 1.75.2.9 2008/02/17 02:21:25 cknudsen Exp $
+ * @package WebCalendar
+ */
+
+/* Prints a fatal error message to the user along with a link to the
+ * Troubleshooting section of the WebCalendar System Administrator's Guide.
+ *
+ * Execution is aborted.
+ *
+ * @param string $error The error message to display
+ * @internal We don't normally put functions in this file. But, since this
+ * file is included before some of the others, this function either
+ * goes here or we repeat this code in multiple files.
+ * Additionally, we don't want to call too many external functions
+ * from here since we could end up calling the function that called
+ * this one.
+ * NOTES: Don't call translate from here. This function if often called
+ * before translation stuff is initialized!
+ */
+function die_miserable_death ( $error ) {
+ global $APPLICATION_NAME, $LANGUAGE, $login, $TROUBLE_URL;
+ // Make sure app name is set.
+ $appStr = ( empty ( $APPLICATION_NAME ) ? 'WebCalendar' : $APPLICATION_NAME );
+
+ $h2_label = $appStr . ' ' . 'Error';
+ $title = $appStr . ': ' . 'Fatal Error';
+ $trouble_label = 'Troubleshooting Help';
+ $user_BGCOLOR = '#FFFFFF';
+
+ echo <<<EOT
+<html>
+ <head><title>{$title}</title></head>
+ <body bgcolor ="{$user_BGCOLOR}">
+ <h2>{$h2_label}</h2>
+ <p>{$error}</p><hr />
+ <p><a href="{$TROUBLE_URL}" target="_blank">{$trouble_label}</a></p>
+ </body>
+</html>
+EOT;
+ exit;
+}
+
+function db_error ( $doExit = false, $sql = '' ) {
+ global $settings;
+
+ $ret = str_replace ( 'XXX', dbi_error (), translate ( 'Database error XXX.' ) )
+ . ( ! empty ( $settings['mode'] ) && $settings['mode'] == 'dev' && !
+ empty ( $sql ) ? '<br />SQL:<br />' . $sql : '' );
+
+ if ( $doExit ) {
+ echo $ret;
+ exit;
+ } else
+ return $ret;
+}
+
+/**
+ * Get the full path to a file located in the webcalendar includes
+ * directory.
+ */
+function get_full_include_path ( $filename )
+{
+ if ( preg_match ( "/(.*)config.php/", __FILE__, $matches ) ) {
+ $fileLoc = $matches[1] . $filename;
+ return $fileLoc;
+ } else {
+ // Oops. This file is not named config.php!
+ die_miserable_death ( "Crap! Someone renamed config.php" );
+ }
+}
+
+function do_config ( $fileLoc ) {
+ global $db_database, $db_host, $db_login, $db_password, $db_persistent,
+ $db_type, $NONUSER_PREFIX, $phpdbiVerbose, $PROGRAM_DATE, $PROGRAM_NAME,
+ $PROGRAM_URL, $PROGRAM_VERSION, $readonly, $run_mode, $settings, $single_user,
+ $single_user_login, $TROUBLE_URL, $use_http_auth, $user_inc;
+
+ $PROGRAM_VERSION = 'v1.2.b1';
+ $PROGRAM_DATE = '25 Feb 2008';
+ $PROGRAM_NAME = 'WebCalendar ' . "$PROGRAM_VERSION ($PROGRAM_DATE)";
+ $PROGRAM_URL = 'http://www.k5n.us/webcalendar.php';
+ $TROUBLE_URL = 'docs/WebCalendar-SysAdmin.html#trouble';
+
+ // Open settings file to read.
+ $settings = array ();
+ if ( file_exists ( $fileLoc ) ) {
+ $fd = @fopen ( $fileLoc, 'rb', true );
+ }
+ if ( empty ( $fd ) && defined ( '__WC_INCLUDEDIR' ) ) {
+ $fd = @fopen ( __WC_INCLUDEDIR . '/settings.php', 'rb', true );
+ if ( $fd )
+ $fileLoc = __WC_INCLUDEDIR . '/settings.php';
+ }
+ // If still empty.... use __FILE__.
+ if ( empty ( $fd ) ) {
+ $testName = get_full_include_path ( "settings.php" );
+ $fd = @fopen ( $fileLoc, 'rb', true );
+ if ( $fd )
+ $fileLoc = $testName;
+ }
+ if ( empty ( $fd ) || filesize ( $fileLoc ) == 0 ) {
+ // There is no settings.php file.
+ // Redirect user to install page if it exists.
+ if ( file_exists ( 'install/index.php' ) ) {
+ header ( 'Location: install/index.php' );
+ exit;
+ } else
+ die_miserable_death (
+ translate ( 'Could not find settings.php file...' ) );
+ }
+
+ // We don't use fgets () since it seems to have problems with Mac-formatted
+ // text files. Instead, we read in the entire file, and split the lines manually.
+ $data = '';
+ while ( ! feof ( $fd ) ) {
+ $data .= fgets ( $fd, 4096 );
+ }
+ fclose ( $fd );
+
+ // Replace any combination of carriage return (\r) and new line (\n)
+ // with a single new line.
+ $data = preg_replace ( "/[\r\n]+/", "\n", $data );
+
+ // Split the data into lines.
+ $configLines = explode ( "\n", $data );
+
+ for ( $n = 0, $cnt = count ( $configLines ); $n < $cnt; $n++ ) {
+ $buffer = trim ( $configLines[$n], "\r\n " );
+ if ( preg_match ( '/^#|\/\*/', $buffer ) || // comments
+ preg_match ( '/^<\?/', $buffer ) || // start PHP code
+ preg_match ( '/^\?>/', $buffer ) ) // end PHP code
+ continue;
+ if ( preg_match ( '/(\S+):\s*(\S+)/', $buffer, $matches ) )
+ $settings[$matches[1]] = $matches[2];
+ // echo "settings $matches[1] => $matches[2]<br />";
+ }
+ $configLines = $data = '';
+
+ // Extract db settings into global vars.
+ $db_database = $settings['db_database'];
+ $db_host = $settings['db_host'];
+ $db_login = $settings['db_login'];
+ $db_password = $settings['db_password'];
+ $db_persistent = ( preg_match ( '/(1|yes|true|on)/i',
+ $settings['db_persistent'] ) ? '1' : '0' );
+ $db_type = $settings['db_type'];
+
+ // If no db settings, then user has likely started install but not yet
+ // completed. So, send them back to the install script.
+ if ( empty ( $db_type ) ) {
+ if ( file_exists ( 'install/index.php' ) ) {
+ header ( 'Location: install/index.php' );
+ exit;
+ } else
+ die_miserable_death (
+ translate ( 'Incomplete settings.php file...' ) );
+ }
+
+ // Use 'db_cachedir' if found, otherwise look for 'cachedir'.
+ if ( ! empty ( $settings['db_cachedir'] ) )
+ dbi_init_cache ( $settings['db_cachedir'] );
+ else
+ if ( ! empty ( $settings['cachedir'] ) )
+ dbi_init_cache ( $settings['cachedir'] );
+
+ if ( ! empty ( $settings['db_debug'] ) &&
+ preg_match ( '/(1|true|yes|enable|on)/i', $settings['db_debug'] ) )
+ dbi_set_debug ( true );
+
+ foreach ( array ( 'db_type', 'db_host', 'db_login', 'db_password' ) as $s ) {
+ if ( empty ( $settings[$s] ) )
+ die_miserable_death ( str_replace ( 'XXX', $s,
+ translate ( 'Could not find XXX defined in...' ) ) );
+ }
+
+ // Allow special settings of 'none' in some settings[] values.
+ // This can be used for db servers not using TCP port for connection.
+ $db_host = ( $db_host == 'none' ? '' : $db_host );
+ $db_password = ( $db_password == 'none' ? '' : $db_password );
+
+ $readonly = preg_match ( '/(1|yes|true|on)/i',
+ $settings['readonly'] ) ? 'Y' : 'N';
+
+ if ( empty ( $settings['mode'] ) )
+ $settings['mode'] = 'prod';
+
+ $run_mode = ( preg_match ( '/(dev)/i', $settings['mode'] ) ? 'dev' : 'prod' );
+ $phpdbiVerbose = ( $run_mode == 'dev' ) ;
+ $single_user = preg_match ( '/(1|yes|true|on)/i',
+ $settings['single_user'] ) ? 'Y' : 'N';
+
+ if ( $single_user == 'Y' )
+ $single_user_login = $settings['single_user_login'];
+
+ if ( $single_user == 'Y' && empty ( $single_user_login ) )
+ die_miserable_death ( str_replace ( 'XXX', 'single_user_login',
+ translate ( 'You must define XXX in' ) ) );
+
+ $use_http_auth = ( preg_match ( '/(1|yes|true|on)/i',
+ $settings['use_http_auth'] ) ? true : false );
+
+ // Type of user authentication.
+ $user_inc = $settings['user_inc'];
+
+ // If sqlite, the db file is in the include directory
+ if ( $db_type == 'sqlite' )
+ $db_database = get_full_include_path ( $db_database );
+
+ // Check the current installation version.
+ // Redirect user to install page if it is different from stored value.
+ // This will prevent running WebCalendar until UPGRADING.html has been
+ // read and required upgrade actions completed.
+ $c = @dbi_connect ( $db_host, $db_login, $db_password, $db_database, false );
+ if ( $c ) {
+ $rows = dbi_get_cached_rows ( 'SELECT cal_value FROM webcal_config
+ WHERE cal_setting = \'WEBCAL_PROGRAM_VERSION\'' );
+ if ( ! $rows ) {
+ // &amp; does not work here...leave it as &.
+ header ( 'Location: install/index.php?action=mismatch&version=UNKNOWN' );
+ exit;
+ } else {
+ $row = $rows[0];
+ if ( empty ( $row ) || $row[0] != $PROGRAM_VERSION ) {
+ // &amp; does not work here...leave it as &.
+ header ( 'Location: install/index.php?action=mismatch&version='
+ . ( empty ( $row ) ? 'UNKNOWN' : $row[0] ) );
+ exit;
+ }
+ }
+ dbi_close ( $c );
+ } else { // Must mean we don't have a settings.php file.
+ // NOTE: if we get a connect error when running send_reminders.php,
+ // we may want to show that error message here.
+ // &amp; does not work here...leave it as &.
+ header ( 'Location: install/index.php?action=mismatch&version=UNKNOWN' );
+ exit;
+ }
+
+ // We can add extra 'nonuser' calendars such as a holiday, corporate,
+ // departmental, etc. We need a unique prefix for these calendars
+ // so we don't get them mixed up with real logins. This prefix should be
+ // a maximum of 5 characters and should NOT change once set!
+ $NONUSER_PREFIX = '_NUC_';
+
+ if ( $single_user != 'Y' )
+ $single_user_login = '';
+}
+
+?>
diff --git a/abs/mv-core/webcal/createdb.sql b/abs/mv-core/webcal/createdb.sql
new file mode 100644
index 0000000..e511483
--- /dev/null
+++ b/abs/mv-core/webcal/createdb.sql
@@ -0,0 +1,810 @@
+-- MySQL dump 10.11
+--
+-- Host: localhost Database: webcal
+-- ------------------------------------------------------
+-- Server version 5.0.60
+
+/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
+/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
+/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
+/*!40101 SET NAMES utf8 */;
+/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
+/*!40103 SET TIME_ZONE='+00:00' */;
+/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
+/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
+/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
+/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
+
+--
+-- Table structure for table `webcal_access_function`
+--
+
+DROP TABLE IF EXISTS `webcal_access_function`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `webcal_access_function` (
+ `cal_login` varchar(25) collate latin1_general_ci NOT NULL,
+ `cal_permissions` varchar(64) collate latin1_general_ci NOT NULL,
+ PRIMARY KEY (`cal_login`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Dumping data for table `webcal_access_function`
+--
+
+LOCK TABLES `webcal_access_function` WRITE;
+/*!40000 ALTER TABLE `webcal_access_function` DISABLE KEYS */;
+/*!40000 ALTER TABLE `webcal_access_function` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `webcal_access_user`
+--
+
+DROP TABLE IF EXISTS `webcal_access_user`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `webcal_access_user` (
+ `cal_login` varchar(25) collate latin1_general_ci NOT NULL,
+ `cal_other_user` varchar(25) collate latin1_general_ci NOT NULL,
+ `cal_can_view` int(11) NOT NULL default '0',
+ `cal_can_edit` int(11) NOT NULL default '0',
+ `cal_can_approve` int(11) NOT NULL default '0',
+ `cal_can_invite` char(1) collate latin1_general_ci default 'Y',
+ `cal_can_email` char(1) collate latin1_general_ci default 'Y',
+ `cal_see_time_only` char(1) collate latin1_general_ci default 'N',
+ PRIMARY KEY (`cal_login`,`cal_other_user`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Dumping data for table `webcal_access_user`
+--
+
+LOCK TABLES `webcal_access_user` WRITE;
+/*!40000 ALTER TABLE `webcal_access_user` DISABLE KEYS */;
+/*!40000 ALTER TABLE `webcal_access_user` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `webcal_asst`
+--
+
+DROP TABLE IF EXISTS `webcal_asst`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `webcal_asst` (
+ `cal_boss` varchar(25) collate latin1_general_ci NOT NULL,
+ `cal_assistant` varchar(25) collate latin1_general_ci NOT NULL,
+ PRIMARY KEY (`cal_boss`,`cal_assistant`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Dumping data for table `webcal_asst`
+--
+
+LOCK TABLES `webcal_asst` WRITE;
+/*!40000 ALTER TABLE `webcal_asst` DISABLE KEYS */;
+/*!40000 ALTER TABLE `webcal_asst` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `webcal_blob`
+--
+
+DROP TABLE IF EXISTS `webcal_blob`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `webcal_blob` (
+ `cal_blob_id` int(11) NOT NULL,
+ `cal_id` int(11) default NULL,
+ `cal_login` varchar(25) collate latin1_general_ci default NULL,
+ `cal_name` varchar(30) collate latin1_general_ci default NULL,
+ `cal_description` varchar(128) collate latin1_general_ci default NULL,
+ `cal_size` int(11) default NULL,
+ `cal_mime_type` varchar(50) collate latin1_general_ci default NULL,
+ `cal_type` char(1) collate latin1_general_ci NOT NULL,
+ `cal_mod_date` int(11) NOT NULL,
+ `cal_mod_time` int(11) NOT NULL,
+ `cal_blob` longblob,
+ PRIMARY KEY (`cal_blob_id`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Dumping data for table `webcal_blob`
+--
+
+LOCK TABLES `webcal_blob` WRITE;
+/*!40000 ALTER TABLE `webcal_blob` DISABLE KEYS */;
+/*!40000 ALTER TABLE `webcal_blob` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `webcal_categories`
+--
+
+DROP TABLE IF EXISTS `webcal_categories`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `webcal_categories` (
+ `cat_id` int(11) NOT NULL,
+ `cat_owner` varchar(25) collate latin1_general_ci default NULL,
+ `cat_name` varchar(80) collate latin1_general_ci NOT NULL,
+ `cat_color` varchar(8) collate latin1_general_ci default NULL,
+ PRIMARY KEY (`cat_id`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Dumping data for table `webcal_categories`
+--
+
+LOCK TABLES `webcal_categories` WRITE;
+/*!40000 ALTER TABLE `webcal_categories` DISABLE KEYS */;
+/*!40000 ALTER TABLE `webcal_categories` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `webcal_config`
+--
+
+DROP TABLE IF EXISTS `webcal_config`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `webcal_config` (
+ `cal_setting` varchar(50) collate latin1_general_ci NOT NULL,
+ `cal_value` varchar(100) collate latin1_general_ci default NULL,
+ PRIMARY KEY (`cal_setting`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Dumping data for table `webcal_config`
+--
+
+LOCK TABLES `webcal_config` WRITE;
+/*!40000 ALTER TABLE `webcal_config` DISABLE KEYS */;
+INSERT INTO `webcal_config` VALUES ('SERVER_URL','http://vmtest/webcal/'),('APPLICATION_NAME','Title'),('ADD_LINK_IN_VIEWS','N'),('ADMIN_OVERRIDE_UAC','Y'),('ALLOW_ATTACH','N'),('ALLOW_ATTACH_ANY','N'),('ALLOW_ATTACH_PART','N'),('ALLOW_COLOR_CUSTOMIZATION','Y'),('ALLOW_COMMENTS','N'),('ALLOW_COMMENTS_ANY','N'),('ALLOW_COMMENTS_PART','N'),('ALLOW_CONFLICT_OVERRIDE','Y'),('ALLOW_CONFLICTS','N'),('ALLOW_EXTERNAL_HEADER','N'),('ALLOW_EXTERNAL_USERS','N'),('ALLOW_HTML_DESCRIPTION','Y'),('ALLOW_SELF_REGISTRATION','N'),('ALLOW_USER_HEADER','N'),('ALLOW_USER_THEMES','Y'),('ALLOW_VIEW_OTHER','Y'),('APPROVE_ASSISTANT_EVENT','Y'),('AUTO_REFRESH','N'),('AUTO_REFRESH_TIME','0'),('BGCOLOR','#FFFFFF'),('BGIMAGE',''),('BGREPEAT','repeat fixed center'),('BOLD_DAYS_IN_YEAR','Y'),('CAPTIONS','#B04040'),('CATEGORIES_ENABLED','Y'),('CELLBG','#C0C0C0'),('CONFLICT_REPEAT_MONTHS','6'),('CUSTOM_HEADER','N'),('CUSTOM_SCRIPT','N'),('CUSTOM_TRAILER','N'),('DATE_FORMAT','LANGUAGE_DEFINED'),('DATE_FORMAT_MD','LANGUAGE_DEFINED'),('DATE_FORMAT_MY','LANGUAGE_DEFINED'),('DATE_FORMAT_TASK','LANGUAGE_DEFINED'),('DEMO_MODE','N'),('DISABLE_ACCESS_FIELD','N'),('DISABLE_CROSSDAY_EVENTS','N'),('DISABLE_LOCATION_FIELD','N'),('DISABLE_PARTICIPANTS_FIELD','N'),('DISABLE_POPUPS','N'),('DISABLE_PRIORITY_FIELD','N'),('DISABLE_REMINDER_FIELD','N'),('DISABLE_REPEATING_FIELD','N'),('DISABLE_URL_FIELD','Y'),('DISPLAY_ALL_DAYS_IN_MONTH','N'),('DISPLAY_CREATED_BYPROXY','Y'),('DISPLAY_DESC_PRINT_DAY','Y'),('DISPLAY_END_TIMES','N'),('DISPLAY_LOCATION','N'),('DISPLAY_LONG_DAYS','N'),('DISPLAY_MINUTES','N'),('DISPLAY_MOON_PHASES','N'),('DISPLAY_SM_MONTH','Y'),('DISPLAY_TASKS','N'),('DISPLAY_TASKS_IN_GRID','N'),('DISPLAY_UNAPPROVED','Y'),('DISPLAY_WEEKENDS','Y'),('DISPLAY_WEEKNUMBER','Y'),('EMAIL_ASSISTANT_EVENTS','Y'),('EMAIL_EVENT_ADDED','Y'),('EMAIL_EVENT_CREATE','N'),('EMAIL_EVENT_DELETED','Y'),('EMAIL_EVENT_REJECTED','Y'),('EMAIL_EVENT_UPDATED','Y'),('EMAIL_FALLBACK_FROM','youremailhere'),('EMAIL_HTML','N'),('EMAIL_MAILER','mail'),('EMAIL_REMINDER','Y'),('ENABLE_CAPTCHA','N'),('ENABLE_GRADIENTS','N'),('ENABLE_ICON_UPLOADS','N'),('ENTRY_SLOTS','144'),('EXTERNAL_NOTIFICATIONS','N'),('EXTERNAL_REMINDERS','N'),('FONTS','Arial, Helvetica, sans-serif'),('FREEBUSY_ENABLED','N'),('GENERAL_USE_GMT','Y'),('GROUPS_ENABLED','N'),('H2COLOR','#000000'),('HASEVENTSBG','#FFFF33'),('IMPORT_CATEGORIES','Y'),('LANGUAGE','none'),('LIMIT_APPTS','N'),('LIMIT_APPTS_NUMBER','6'),('LIMIT_DESCRIPTION_SIZE','N'),('MENU_DATE_TOP','Y'),('MENU_ENABLED','Y'),('MENU_THEME','default'),('MYEVENTS','#006000'),('NONUSER_AT_TOP','Y'),('NONUSER_ENABLED','Y'),('OTHERMONTHBG','#D0D0D0'),('OVERRIDE_PUBLIC','N'),('OVERRIDE_PUBLIC_TEXT','Not available'),('PARTICIPANTS_IN_POPUP','N'),('PLUGINS_ENABLED','N'),('POPUP_BG','#FFFFFF'),('POPUP_FG','#000000'),('PUBLIC_ACCESS','N'),('PUBLIC_ACCESS_ADD_NEEDS_APPROVAL','N'),('PUBLIC_ACCESS_CAN_ADD','N'),('PUBLIC_ACCESS_DEFAULT_SELECTED','N'),('PUBLIC_ACCESS_DEFAULT_VISIBLE','N'),('PUBLIC_ACCESS_OTHERS','Y'),('PUBLIC_ACCESS_VIEW_PART','N'),('PUBLISH_ENABLED','Y'),('PULLDOWN_WEEKNUMBER','N'),('REMEMBER_LAST_LOGIN','N'),('REMINDER_DEFAULT','N'),('REMINDER_OFFSET','240'),('REMINDER_WITH_DATE','N'),('REMOTES_ENABLED','N'),('REPORTS_ENABLED','N'),('REQUIRE_APPROVALS','Y'),('RSS_ENABLED','N'),('SELF_REGISTRATION_BLACKLIST','N'),('SELF_REGISTRATION_FULL','Y'),('SEND_EMAIL','N'),('SERVER_TIMEZONE','America/New_York'),('SITE_EXTRAS_IN_POPUP','N'),('SMTP_AUTH','N'),('SMTP_HOST','localhost'),('SMTP_PASSWORD',''),('SMTP_PORT','25'),('SMTP_USERNAME',''),('STARTVIEW','month.php'),('SUMMARY_LENGTH','80'),('TABLEBG','#000000'),('TEXTCOLOR','#000000'),('THBG','#FFFFFF'),('THFG','#000000'),('TIME_FORMAT','12'),('TIME_SLOTS','24'),('TIME_SPACER','&raquo;&nbsp;'),('TIMED_EVT_LEN','D'),('TIMEZONE','America/New_York'),('TODAYCELLBG','#FFFF33'),('UAC_ENABLED','N'),('USER_PUBLISH_ENABLED','Y'),('USER_PUBLISH_RW_ENABLED','Y'),('USER_RSS_ENABLED','N'),('USER_SEES_ONLY_HIS_GROUPS','Y'),('USER_SORT_ORDER','cal_lastname, cal_firstname'),('WEBCAL_PROGRAM_VERSION','v1.2.b1'),('WEEK_START','0'),('WEEKEND_START','6'),('WEEKENDBG','#D0D0D0'),('WEEKNUMBER','#FF6633'),('WORK_DAY_END_HOUR','17'),('WORK_DAY_START_HOUR','8');
+/*!40000 ALTER TABLE `webcal_config` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `webcal_entry`
+--
+
+DROP TABLE IF EXISTS `webcal_entry`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `webcal_entry` (
+ `cal_id` int(11) NOT NULL,
+ `cal_group_id` int(11) default NULL,
+ `cal_ext_for_id` int(11) default NULL,
+ `cal_create_by` varchar(25) collate latin1_general_ci NOT NULL,
+ `cal_date` int(11) NOT NULL,
+ `cal_time` int(11) default NULL,
+ `cal_mod_date` int(11) default NULL,
+ `cal_mod_time` int(11) default NULL,
+ `cal_duration` int(11) NOT NULL,
+ `cal_due_date` int(11) default NULL,
+ `cal_due_time` int(11) default NULL,
+ `cal_priority` int(11) default '5',
+ `cal_type` char(1) collate latin1_general_ci default 'E',
+ `cal_access` char(1) collate latin1_general_ci default 'P',
+ `cal_name` varchar(80) collate latin1_general_ci NOT NULL,
+ `cal_location` varchar(100) collate latin1_general_ci default NULL,
+ `cal_url` varchar(100) collate latin1_general_ci default NULL,
+ `cal_completed` int(11) default NULL,
+ `cal_description` text collate latin1_general_ci,
+ PRIMARY KEY (`cal_id`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Dumping data for table `webcal_entry`
+--
+
+LOCK TABLES `webcal_entry` WRITE;
+/*!40000 ALTER TABLE `webcal_entry` DISABLE KEYS */;
+/*!40000 ALTER TABLE `webcal_entry` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `webcal_entry_categories`
+--
+
+DROP TABLE IF EXISTS `webcal_entry_categories`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `webcal_entry_categories` (
+ `cal_id` int(11) NOT NULL default '0',
+ `cat_id` int(11) NOT NULL default '0',
+ `cat_order` int(11) NOT NULL default '0',
+ `cat_owner` varchar(25) collate latin1_general_ci default NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Dumping data for table `webcal_entry_categories`
+--
+
+LOCK TABLES `webcal_entry_categories` WRITE;
+/*!40000 ALTER TABLE `webcal_entry_categories` DISABLE KEYS */;
+/*!40000 ALTER TABLE `webcal_entry_categories` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `webcal_entry_ext_user`
+--
+
+DROP TABLE IF EXISTS `webcal_entry_ext_user`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `webcal_entry_ext_user` (
+ `cal_id` int(11) NOT NULL default '0',
+ `cal_fullname` varchar(50) collate latin1_general_ci NOT NULL,
+ `cal_email` varchar(75) collate latin1_general_ci default NULL,
+ PRIMARY KEY (`cal_id`,`cal_fullname`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Dumping data for table `webcal_entry_ext_user`
+--
+
+LOCK TABLES `webcal_entry_ext_user` WRITE;
+/*!40000 ALTER TABLE `webcal_entry_ext_user` DISABLE KEYS */;
+/*!40000 ALTER TABLE `webcal_entry_ext_user` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `webcal_entry_log`
+--
+
+DROP TABLE IF EXISTS `webcal_entry_log`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `webcal_entry_log` (
+ `cal_log_id` int(11) NOT NULL,
+ `cal_entry_id` int(11) NOT NULL,
+ `cal_login` varchar(25) collate latin1_general_ci NOT NULL,
+ `cal_user_cal` varchar(25) collate latin1_general_ci default NULL,
+ `cal_type` char(1) collate latin1_general_ci NOT NULL,
+ `cal_date` int(11) NOT NULL,
+ `cal_time` int(11) default NULL,
+ `cal_text` text collate latin1_general_ci,
+ PRIMARY KEY (`cal_log_id`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Dumping data for table `webcal_entry_log`
+--
+
+LOCK TABLES `webcal_entry_log` WRITE;
+/*!40000 ALTER TABLE `webcal_entry_log` DISABLE KEYS */;
+/*!40000 ALTER TABLE `webcal_entry_log` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `webcal_entry_repeats`
+--
+
+DROP TABLE IF EXISTS `webcal_entry_repeats`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `webcal_entry_repeats` (
+ `cal_id` int(11) NOT NULL default '0',
+ `cal_type` varchar(20) collate latin1_general_ci default NULL,
+ `cal_end` int(11) default NULL,
+ `cal_endtime` int(11) default NULL,
+ `cal_frequency` int(11) default '1',
+ `cal_days` char(7) collate latin1_general_ci default NULL,
+ `cal_bymonth` varchar(50) collate latin1_general_ci default NULL,
+ `cal_bymonthday` varchar(100) collate latin1_general_ci default NULL,
+ `cal_byday` varchar(100) collate latin1_general_ci default NULL,
+ `cal_bysetpos` varchar(50) collate latin1_general_ci default NULL,
+ `cal_byweekno` varchar(50) collate latin1_general_ci default NULL,
+ `cal_byyearday` varchar(50) collate latin1_general_ci default NULL,
+ `cal_wkst` char(2) collate latin1_general_ci default 'MO',
+ `cal_count` int(11) default NULL,
+ PRIMARY KEY (`cal_id`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Dumping data for table `webcal_entry_repeats`
+--
+
+LOCK TABLES `webcal_entry_repeats` WRITE;
+/*!40000 ALTER TABLE `webcal_entry_repeats` DISABLE KEYS */;
+/*!40000 ALTER TABLE `webcal_entry_repeats` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `webcal_entry_repeats_not`
+--
+
+DROP TABLE IF EXISTS `webcal_entry_repeats_not`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `webcal_entry_repeats_not` (
+ `cal_id` int(11) NOT NULL,
+ `cal_date` int(11) NOT NULL,
+ `cal_exdate` int(1) NOT NULL default '1',
+ PRIMARY KEY (`cal_id`,`cal_date`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Dumping data for table `webcal_entry_repeats_not`
+--
+
+LOCK TABLES `webcal_entry_repeats_not` WRITE;
+/*!40000 ALTER TABLE `webcal_entry_repeats_not` DISABLE KEYS */;
+/*!40000 ALTER TABLE `webcal_entry_repeats_not` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `webcal_entry_user`
+--
+
+DROP TABLE IF EXISTS `webcal_entry_user`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `webcal_entry_user` (
+ `cal_id` int(11) NOT NULL default '0',
+ `cal_login` varchar(25) collate latin1_general_ci NOT NULL,
+ `cal_status` char(1) collate latin1_general_ci default 'A',
+ `cal_category` int(11) default NULL,
+ `cal_percent` int(11) NOT NULL default '0',
+ PRIMARY KEY (`cal_id`,`cal_login`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Dumping data for table `webcal_entry_user`
+--
+
+LOCK TABLES `webcal_entry_user` WRITE;
+/*!40000 ALTER TABLE `webcal_entry_user` DISABLE KEYS */;
+/*!40000 ALTER TABLE `webcal_entry_user` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `webcal_group`
+--
+
+DROP TABLE IF EXISTS `webcal_group`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `webcal_group` (
+ `cal_group_id` int(11) NOT NULL,
+ `cal_owner` varchar(25) collate latin1_general_ci default NULL,
+ `cal_name` varchar(50) collate latin1_general_ci NOT NULL,
+ `cal_last_update` int(11) NOT NULL,
+ PRIMARY KEY (`cal_group_id`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Dumping data for table `webcal_group`
+--
+
+LOCK TABLES `webcal_group` WRITE;
+/*!40000 ALTER TABLE `webcal_group` DISABLE KEYS */;
+/*!40000 ALTER TABLE `webcal_group` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `webcal_group_user`
+--
+
+DROP TABLE IF EXISTS `webcal_group_user`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `webcal_group_user` (
+ `cal_group_id` int(11) NOT NULL,
+ `cal_login` varchar(25) collate latin1_general_ci NOT NULL,
+ PRIMARY KEY (`cal_group_id`,`cal_login`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Dumping data for table `webcal_group_user`
+--
+
+LOCK TABLES `webcal_group_user` WRITE;
+/*!40000 ALTER TABLE `webcal_group_user` DISABLE KEYS */;
+/*!40000 ALTER TABLE `webcal_group_user` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `webcal_import`
+--
+
+DROP TABLE IF EXISTS `webcal_import`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `webcal_import` (
+ `cal_import_id` int(11) NOT NULL,
+ `cal_name` varchar(50) collate latin1_general_ci default NULL,
+ `cal_date` int(11) NOT NULL,
+ `cal_type` varchar(10) collate latin1_general_ci NOT NULL,
+ `cal_login` varchar(25) collate latin1_general_ci default NULL,
+ PRIMARY KEY (`cal_import_id`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Dumping data for table `webcal_import`
+--
+
+LOCK TABLES `webcal_import` WRITE;
+/*!40000 ALTER TABLE `webcal_import` DISABLE KEYS */;
+/*!40000 ALTER TABLE `webcal_import` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `webcal_import_data`
+--
+
+DROP TABLE IF EXISTS `webcal_import_data`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `webcal_import_data` (
+ `cal_import_id` int(11) NOT NULL,
+ `cal_id` int(11) NOT NULL,
+ `cal_login` varchar(25) collate latin1_general_ci NOT NULL,
+ `cal_import_type` varchar(15) collate latin1_general_ci NOT NULL,
+ `cal_external_id` varchar(200) collate latin1_general_ci default NULL,
+ PRIMARY KEY (`cal_id`,`cal_login`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Dumping data for table `webcal_import_data`
+--
+
+LOCK TABLES `webcal_import_data` WRITE;
+/*!40000 ALTER TABLE `webcal_import_data` DISABLE KEYS */;
+/*!40000 ALTER TABLE `webcal_import_data` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `webcal_nonuser_cals`
+--
+
+DROP TABLE IF EXISTS `webcal_nonuser_cals`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `webcal_nonuser_cals` (
+ `cal_login` varchar(25) collate latin1_general_ci NOT NULL,
+ `cal_lastname` varchar(25) collate latin1_general_ci default NULL,
+ `cal_firstname` varchar(25) collate latin1_general_ci default NULL,
+ `cal_admin` varchar(25) collate latin1_general_ci NOT NULL,
+ `cal_is_public` char(1) collate latin1_general_ci NOT NULL default 'N',
+ `cal_url` varchar(255) collate latin1_general_ci default NULL,
+ PRIMARY KEY (`cal_login`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Dumping data for table `webcal_nonuser_cals`
+--
+
+LOCK TABLES `webcal_nonuser_cals` WRITE;
+/*!40000 ALTER TABLE `webcal_nonuser_cals` DISABLE KEYS */;
+/*!40000 ALTER TABLE `webcal_nonuser_cals` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `webcal_reminders`
+--
+
+DROP TABLE IF EXISTS `webcal_reminders`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `webcal_reminders` (
+ `cal_id` int(11) NOT NULL default '0',
+ `cal_date` int(11) NOT NULL default '0',
+ `cal_offset` int(11) NOT NULL default '0',
+ `cal_related` char(1) collate latin1_general_ci NOT NULL default 'S',
+ `cal_before` char(1) collate latin1_general_ci NOT NULL default 'Y',
+ `cal_last_sent` int(11) NOT NULL default '0',
+ `cal_repeats` int(11) NOT NULL default '0',
+ `cal_duration` int(11) NOT NULL default '0',
+ `cal_times_sent` int(11) NOT NULL default '0',
+ `cal_action` varchar(12) collate latin1_general_ci NOT NULL default 'EMAIL',
+ PRIMARY KEY (`cal_id`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Dumping data for table `webcal_reminders`
+--
+
+LOCK TABLES `webcal_reminders` WRITE;
+/*!40000 ALTER TABLE `webcal_reminders` DISABLE KEYS */;
+/*!40000 ALTER TABLE `webcal_reminders` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `webcal_report`
+--
+
+DROP TABLE IF EXISTS `webcal_report`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `webcal_report` (
+ `cal_login` varchar(25) collate latin1_general_ci NOT NULL,
+ `cal_report_id` int(11) NOT NULL,
+ `cal_is_global` char(1) collate latin1_general_ci NOT NULL default 'N',
+ `cal_report_type` varchar(20) collate latin1_general_ci NOT NULL,
+ `cal_include_header` char(1) collate latin1_general_ci NOT NULL default 'Y',
+ `cal_report_name` varchar(50) collate latin1_general_ci NOT NULL,
+ `cal_time_range` int(11) NOT NULL,
+ `cal_user` varchar(25) collate latin1_general_ci default NULL,
+ `cal_allow_nav` char(1) collate latin1_general_ci default 'Y',
+ `cal_cat_id` int(11) default NULL,
+ `cal_include_empty` char(1) collate latin1_general_ci default 'N',
+ `cal_show_in_trailer` char(1) collate latin1_general_ci default 'N',
+ `cal_update_date` int(11) NOT NULL,
+ PRIMARY KEY (`cal_report_id`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Dumping data for table `webcal_report`
+--
+
+LOCK TABLES `webcal_report` WRITE;
+/*!40000 ALTER TABLE `webcal_report` DISABLE KEYS */;
+/*!40000 ALTER TABLE `webcal_report` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `webcal_report_template`
+--
+
+DROP TABLE IF EXISTS `webcal_report_template`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `webcal_report_template` (
+ `cal_report_id` int(11) NOT NULL,
+ `cal_template_type` char(1) collate latin1_general_ci NOT NULL,
+ `cal_template_text` text collate latin1_general_ci,
+ PRIMARY KEY (`cal_report_id`,`cal_template_type`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Dumping data for table `webcal_report_template`
+--
+
+LOCK TABLES `webcal_report_template` WRITE;
+/*!40000 ALTER TABLE `webcal_report_template` DISABLE KEYS */;
+/*!40000 ALTER TABLE `webcal_report_template` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `webcal_site_extras`
+--
+
+DROP TABLE IF EXISTS `webcal_site_extras`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `webcal_site_extras` (
+ `cal_id` int(11) NOT NULL default '0',
+ `cal_name` varchar(25) collate latin1_general_ci NOT NULL,
+ `cal_type` int(11) NOT NULL,
+ `cal_date` int(11) default '0',
+ `cal_remind` int(11) default '0',
+ `cal_data` text collate latin1_general_ci
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Dumping data for table `webcal_site_extras`
+--
+
+LOCK TABLES `webcal_site_extras` WRITE;
+/*!40000 ALTER TABLE `webcal_site_extras` DISABLE KEYS */;
+/*!40000 ALTER TABLE `webcal_site_extras` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `webcal_timezones`
+--
+
+DROP TABLE IF EXISTS `webcal_timezones`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `webcal_timezones` (
+ `tzid` varchar(100) collate latin1_general_ci NOT NULL default '',
+ `dtstart` varchar(25) collate latin1_general_ci default NULL,
+ `dtend` varchar(25) collate latin1_general_ci default NULL,
+ `vtimezone` text collate latin1_general_ci,
+ PRIMARY KEY (`tzid`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Dumping data for table `webcal_timezones`
+--
+
+LOCK TABLES `webcal_timezones` WRITE;
+/*!40000 ALTER TABLE `webcal_timezones` DISABLE KEYS */;
+/*!40000 ALTER TABLE `webcal_timezones` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `webcal_user`
+--
+
+DROP TABLE IF EXISTS `webcal_user`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `webcal_user` (
+ `cal_login` varchar(25) collate latin1_general_ci NOT NULL,
+ `cal_passwd` varchar(32) collate latin1_general_ci default NULL,
+ `cal_lastname` varchar(25) collate latin1_general_ci default NULL,
+ `cal_firstname` varchar(25) collate latin1_general_ci default NULL,
+ `cal_is_admin` char(1) collate latin1_general_ci default 'N',
+ `cal_email` varchar(75) collate latin1_general_ci default NULL,
+ `cal_enabled` char(1) collate latin1_general_ci default 'Y',
+ `cal_telephone` varchar(50) collate latin1_general_ci default NULL,
+ `cal_address` varchar(75) collate latin1_general_ci default NULL,
+ `cal_title` varchar(75) collate latin1_general_ci default NULL,
+ `cal_birthday` int(11) default NULL,
+ `cal_last_login` int(11) default NULL,
+ PRIMARY KEY (`cal_login`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Dumping data for table `webcal_user`
+--
+
+LOCK TABLES `webcal_user` WRITE;
+/*!40000 ALTER TABLE `webcal_user` DISABLE KEYS */;
+INSERT INTO `webcal_user` VALUES ('Me','318b2739ddc2c16c97b33c9b04b79f3e',NULL,NULL,'Y',NULL,'Y',NULL,NULL,NULL,NULL,NULL);
+/*!40000 ALTER TABLE `webcal_user` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `webcal_user_layers`
+--
+
+DROP TABLE IF EXISTS `webcal_user_layers`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `webcal_user_layers` (
+ `cal_layerid` int(11) NOT NULL default '0',
+ `cal_login` varchar(25) collate latin1_general_ci NOT NULL,
+ `cal_layeruser` varchar(25) collate latin1_general_ci NOT NULL,
+ `cal_color` varchar(25) collate latin1_general_ci default NULL,
+ `cal_dups` char(1) collate latin1_general_ci default 'N',
+ PRIMARY KEY (`cal_login`,`cal_layeruser`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Dumping data for table `webcal_user_layers`
+--
+
+LOCK TABLES `webcal_user_layers` WRITE;
+/*!40000 ALTER TABLE `webcal_user_layers` DISABLE KEYS */;
+/*!40000 ALTER TABLE `webcal_user_layers` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `webcal_user_pref`
+--
+
+DROP TABLE IF EXISTS `webcal_user_pref`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `webcal_user_pref` (
+ `cal_login` varchar(25) collate latin1_general_ci NOT NULL,
+ `cal_setting` varchar(25) collate latin1_general_ci NOT NULL,
+ `cal_value` varchar(100) collate latin1_general_ci default NULL,
+ PRIMARY KEY (`cal_login`,`cal_setting`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Dumping data for table `webcal_user_pref`
+--
+
+LOCK TABLES `webcal_user_pref` WRITE;
+/*!40000 ALTER TABLE `webcal_user_pref` DISABLE KEYS */;
+INSERT INTO `webcal_user_pref` VALUES ('Me','LANGUAGE','none'),('Me','TIMEZONE','America/New_York'),('Me','DATE_FORMAT','LANGUAGE_DEFINED'),('Me','DATE_FORMAT_MY','LANGUAGE_DEFINED'),('Me','DATE_FORMAT_MD','LANGUAGE_DEFINED'),('Me','DATE_FORMAT_TASK','LANGUAGE_DEFINED'),('Me','TIME_FORMAT','12'),('Me','WEEK_START','0'),('Me','WEEKEND_START','6'),('Me','WORK_DAY_START_HOUR','8'),('Me','WORK_DAY_END_HOUR','17'),('Me','STARTVIEW','month.php'),('Me','FONTS','Arial, Helvetica, sans-serif'),('Me','DISPLAY_SM_MONTH','N'),('Me','DISPLAY_WEEKENDS','Y'),('Me','DISPLAY_LONG_DAYS','N'),('Me','DISPLAY_MINUTES','N'),('Me','DISPLAY_END_TIMES','N'),('Me','DISPLAY_ALL_DAYS_IN_MONTH','N'),('Me','DISPLAY_WEEKNUMBER','Y'),('Me','DISPLAY_TASKS','N'),('Me','DISPLAY_TASKS_IN_GRID','N'),('Me','DISPLAY_MOON_PHASES','N'),('Me','DISPLAY_UNAPPROVED','Y'),('Me','TIMED_EVT_LEN','D'),('Me','CATEGORY_VIEW','0'),('Me','DISABLE_CROSSDAY_EVENTS','N'),('Me','DISPLAY_DESC_PRINT_DAY','Y'),('Me','ENTRY_SLOTS','144'),('Me','TIME_SLOTS','24'),('Me','AUTO_REFRESH','N'),('Me','AUTO_REFRESH_TIME','0'),('Me','THEME','none'),('Me','MENU_THEME','default'),('Me','APPROVE_ASSISTANT_EVENT','Y'),('Me','DISPLAY_CREATED_BYPROXY','Y'),('Me','USER_REMOTE_ACCESS','0'),('Me','USER_PUBLISH_ENABLED','Y'),('Me','USER_PUBLISH_RW_ENABLED','Y'),('Me','FREEBUSY_ENABLED','N'),('Me','BGCOLOR','#FFFFFF'),('Me','H2COLOR','#000000'),('Me','TEXTCOLOR','#000000'),('Me','MYEVENTS','#006000'),('Me','TABLEBG','#000000'),('Me','THBG','#FFFFFF'),('Me','THFG','#000000'),('Me','CELLBG','#C0C0C0'),('Me','TODAYCELLBG','#FFFF33'),('Me','HASEVENTSBG','#FFFF33'),('Me','WEEKENDBG','#D0D0D0'),('Me','OTHERMONTHBG','#D0D0D0'),('Me','WEEKNUMBER','#FF6633'),('Me','POPUP_BG','#FFFFFF'),('Me','POPUP_FG','#000000');
+/*!40000 ALTER TABLE `webcal_user_pref` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `webcal_user_template`
+--
+
+DROP TABLE IF EXISTS `webcal_user_template`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `webcal_user_template` (
+ `cal_login` varchar(25) collate latin1_general_ci NOT NULL,
+ `cal_type` char(1) collate latin1_general_ci NOT NULL,
+ `cal_template_text` text collate latin1_general_ci,
+ PRIMARY KEY (`cal_login`,`cal_type`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Dumping data for table `webcal_user_template`
+--
+
+LOCK TABLES `webcal_user_template` WRITE;
+/*!40000 ALTER TABLE `webcal_user_template` DISABLE KEYS */;
+/*!40000 ALTER TABLE `webcal_user_template` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `webcal_view`
+--
+
+DROP TABLE IF EXISTS `webcal_view`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `webcal_view` (
+ `cal_view_id` int(11) NOT NULL,
+ `cal_owner` varchar(25) collate latin1_general_ci NOT NULL,
+ `cal_name` varchar(50) collate latin1_general_ci NOT NULL,
+ `cal_view_type` char(1) collate latin1_general_ci default NULL,
+ `cal_is_global` char(1) collate latin1_general_ci NOT NULL default 'N',
+ PRIMARY KEY (`cal_view_id`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Dumping data for table `webcal_view`
+--
+
+LOCK TABLES `webcal_view` WRITE;
+/*!40000 ALTER TABLE `webcal_view` DISABLE KEYS */;
+/*!40000 ALTER TABLE `webcal_view` ENABLE KEYS */;
+UNLOCK TABLES;
+
+--
+-- Table structure for table `webcal_view_user`
+--
+
+DROP TABLE IF EXISTS `webcal_view_user`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+CREATE TABLE `webcal_view_user` (
+ `cal_view_id` int(11) NOT NULL,
+ `cal_login` varchar(25) collate latin1_general_ci NOT NULL,
+ PRIMARY KEY (`cal_view_id`,`cal_login`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Dumping data for table `webcal_view_user`
+--
+
+LOCK TABLES `webcal_view_user` WRITE;
+/*!40000 ALTER TABLE `webcal_view_user` DISABLE KEYS */;
+/*!40000 ALTER TABLE `webcal_view_user` ENABLE KEYS */;
+UNLOCK TABLES;
+/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
+
+/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
+/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
+/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
+/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
+/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
+/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
+/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
+
+-- Dump completed on 2008-08-04 17:58:18
diff --git a/abs/mv-core/webcal/posix.tab b/abs/mv-core/webcal/posix.tab
new file mode 100644
index 0000000..ca20ef0
--- /dev/null
+++ b/abs/mv-core/webcal/posix.tab
@@ -0,0 +1,586 @@
+- -
+- - Europe
+- - Europe/Belfast
+- - Europe/Paris
+- - Europe/Bratislava
+- - Europe/Monaco
+- - Europe/Vilnius
+- - Europe/Skopje
+- - Europe/Chisinau
+- - Europe/Nicosia
+- - Europe/Rome
+- - Europe/Gibraltar
+- - Europe/Sarajevo
+- - Europe/Budapest
+- - Europe/Moscow
+- - Europe/Ljubljana
+- - Europe/Copenhagen
+- - Europe/London
+- - Europe/Simferopol
+- - Europe/Andorra
+- - Europe/Guernsey
+- - Europe/Volgograd
+- - Europe/Mariehamn
+- - Europe/Luxembourg
+- - Europe/Amsterdam
+- - Europe/Jersey
+- - Europe/Athens
+- - Europe/Oslo
+- - Europe/Lisbon
+- - Europe/Istanbul
+- - Europe/Kiev
+- - Europe/Malta
+- - Europe/Helsinki
+- - Europe/Kaliningrad
+- - Europe/Bucharest
+- - Europe/Zaporozhye
+- - Europe/Madrid
+- - Europe/Dublin
+- - Europe/Vaduz
+- - Europe/Brussels
+- - Europe/Sofia
+- - Europe/Riga
+- - Europe/Podgorica
+- - Europe/Tiraspol
+- - Europe/Warsaw
+- - Europe/Isle_of_Man
+- - Europe/Stockholm
+- - Europe/Tallinn
+- - Europe/Zurich
+- - Europe/Berlin
+- - Europe/Tirane
+- - Europe/Prague
+- - Europe/Uzhgorod
+- - Europe/Vienna
+- - Europe/Vatican
+- - Europe/Zagreb
+- - Europe/Samara
+- - Europe/San_Marino
+- - Europe/Minsk
+- - Europe/Belgrade
+- - EST5EDT
+- - Chile
+- - Chile/EasterIsland
+- - Chile/Continental
+- - NZ
+- - CST6CDT
+- - GB
+- - Etc
+- - Etc/GMT+6
+- - Etc/GMT-1
+- - Etc/GMT-3
+- - Etc/GMT-9
+- - Etc/GMT0
+- - Etc/GMT-8
+- - Etc/GMT+1
+- - Etc/GMT-12
+- - Etc/Greenwich
+- - Etc/GMT-0
+- - Etc/GMT-11
+- - Etc/GMT+5
+- - Etc/Universal
+- - Etc/GMT+0
+- - Etc/GMT-7
+- - Etc/GMT-10
+- - Etc/GMT-13
+- - Etc/UTC
+- - Etc/GMT-14
+- - Etc/UCT
+- - Etc/GMT-5
+- - Etc/GMT-6
+- - Etc/GMT+4
+- - Etc/GMT+7
+- - Etc/GMT+8
+- - Etc/GMT+12
+- - Etc/GMT+10
+- - Etc/GMT
+- - Etc/GMT-2
+- - Etc/GMT+9
+- - Etc/GMT-4
+- - Etc/GMT+2
+- - Etc/GMT+3
+- - Etc/GMT+11
+- - Etc/Zulu
+- - GMT0
+- - Asia
+- - Asia/Kuala_Lumpur
+- - Asia/Macao
+- - Asia/Dushanbe
+- - Asia/Pontianak
+- - Asia/Katmandu
+- - Asia/Rangoon
+- - Asia/Saigon
+- - Asia/Oral
+- - Asia/Bishkek
+- - Asia/Dacca
+- - Asia/Brunei
+- - Asia/Baku
+- - Asia/Kamchatka
+- - Asia/Kuching
+- - Asia/Ashgabat
+- - Asia/Riyadh
+- - Asia/Almaty
+- - Asia/Nicosia
+- - Asia/Magadan
+- - Asia/Ulan_Bator
+- - Asia/Omsk
+- - Asia/Colombo
+- - Asia/Novosibirsk
+- - Asia/Manila
+- - Asia/Tehran
+- - Asia/Gaza
+- - Asia/Hovd
+- - Asia/Kashgar
+- - Asia/Yerevan
+- - Asia/Chungking
+- - Asia/Vladivostok
+- - Asia/Bahrain
+- - Asia/Qatar
+- - Asia/Tashkent
+- - Asia/Calcutta
+- - Asia/Kuwait
+- - Asia/Anadyr
+- - Asia/Thimphu
+- - Asia/Aqtobe
+- - Asia/Macau
+- - Asia/Vientiane
+- - Asia/Ashkhabad
+- - Asia/Kolkata
+- - Asia/Makassar
+- - Asia/Pyongyang
+- - Asia/Damascus
+- - Asia/Bangkok
+- - Asia/Dili
+- - Asia/Kabul
+- - Asia/Ho_Chi_Minh
+- - Asia/Riyadh87
+- - Asia/Harbin
+- - Asia/Shanghai
+- - Asia/Istanbul
+- - Asia/Tbilisi
+- - Asia/Karachi
+- - Asia/Amman
+- - Asia/Jakarta
+- - Asia/Dhaka
+- - Asia/Tel_Aviv
+- - Asia/Chongqing
+- - Asia/Riyadh88
+- - Asia/Ujung_Pandang
+- - Asia/Ulaanbaatar
+- - Asia/Dubai
+- - Asia/Singapore
+- - Asia/Taipei
+- - Asia/Jayapura
+- - Asia/Thimbu
+- - Asia/Qyzylorda
+- - Asia/Tokyo
+- - Asia/Urumqi
+- - Asia/Aden
+- - Asia/Hong_Kong
+- - Asia/Krasnoyarsk
+- - Asia/Riyadh89
+- - Asia/Irkutsk
+- - Asia/Sakhalin
+- - Asia/Choibalsan
+- - Asia/Aqtau
+- - Asia/Yekaterinburg
+- - Asia/Jerusalem
+- - Asia/Seoul
+- - Asia/Samarkand
+- - Asia/Beirut
+- - Asia/Muscat
+- - Asia/Phnom_Penh
+- - Asia/Baghdad
+- - Asia/Yakutsk
+- - Portugal
+- - W-SU
+- - Greenwich
+- - Eire
+- - GMT-0
+- - MST7MDT
+- - MET
+- - EST
+- - Pacific
+- - Pacific/Efate
+- - Pacific/Fiji
+- - Pacific/Norfolk
+- - Pacific/Pitcairn
+- - Pacific/Noumea
+- - Pacific/Enderbury
+- - Pacific/Ponape
+- - Pacific/Midway
+- - Pacific/Niue
+- - Pacific/Gambier
+- - Pacific/Kosrae
+- - Pacific/Wake
+- - Pacific/Auckland
+- - Pacific/Palau
+- - Pacific/Tongatapu
+- - Pacific/Apia
+- - Pacific/Tahiti
+- - Pacific/Truk
+- - Pacific/Honolulu
+- - Pacific/Chatham
+- - Pacific/Galapagos
+- - Pacific/Pago_Pago
+- - Pacific/Guam
+- - Pacific/Nauru
+- - Pacific/Kwajalein
+- - Pacific/Wallis
+- - Pacific/Tarawa
+- - Pacific/Saipan
+- - Pacific/Easter
+- - Pacific/Fakaofo
+- - Pacific/Majuro
+- - Pacific/Johnston
+- - Pacific/Funafuti
+- - Pacific/Samoa
+- - Pacific/Guadalcanal
+- - Pacific/Yap
+- - Pacific/Port_Moresby
+- - Pacific/Kiritimati
+- - Pacific/Marquesas
+- - Pacific/Rarotonga
+- - Japan
+- - ROC
+- - Universal
+- - WET
+- - Navajo
+- - Iran
+- - Factory
+- - Egypt
+- - MST
+- - Australia
+- - Australia/Queensland
+- - Australia/Lindeman
+- - Australia/Broken_Hill
+- - Australia/Victoria
+- - Australia/Darwin
+- - Australia/Hobart
+- - Australia/Lord_Howe
+- - Australia/North
+- - Australia/ACT
+- - Australia/NSW
+- - Australia/West
+- - Australia/Tasmania
+- - Australia/LHI
+- - Australia/Eucla
+- - Australia/Canberra
+- - Australia/Melbourne
+- - Australia/South
+- - Australia/Currie
+- - Australia/Sydney
+- - Australia/Yancowinna
+- - Australia/Perth
+- - Australia/Adelaide
+- - Australia/Brisbane
+- - EET
+- - GMT+0
+- - Africa
+- - Africa/Tunis
+- - Africa/Lome
+- - Africa/Asmara
+- - Africa/Harare
+- - Africa/Windhoek
+- - Africa/Tripoli
+- - Africa/Dakar
+- - Africa/Mogadishu
+- - Africa/Bujumbura
+- - Africa/Cairo
+- - Africa/Casablanca
+- - Africa/Gaborone
+- - Africa/Libreville
+- - Africa/Porto-Novo
+- - Africa/Ouagadougou
+- - Africa/Lubumbashi
+- - Africa/Blantyre
+- - Africa/El_Aaiun
+- - Africa/Conakry
+- - Africa/Djibouti
+- - Africa/Kampala
+- - Africa/Ndjamena
+- - Africa/Maseru
+- - Africa/Lusaka
+- - Africa/Johannesburg
+- - Africa/Nouakchott
+- - Africa/Ceuta
+- - Africa/Malabo
+- - Africa/Sao_Tome
+- - Africa/Abidjan
+- - Africa/Lagos
+- - Africa/Kigali
+- - Africa/Asmera
+- - Africa/Kinshasa
+- - Africa/Monrovia
+- - Africa/Banjul
+- - Africa/Nairobi
+- - Africa/Brazzaville
+- - Africa/Timbuktu
+- - Africa/Bangui
+- - Africa/Bamako
+- - Africa/Accra
+- - Africa/Dar_es_Salaam
+- - Africa/Luanda
+- - Africa/Bissau
+- - Africa/Douala
+- - Africa/Khartoum
+- - Africa/Freetown
+- - Africa/Maputo
+- - Africa/Niamey
+- - Africa/Addis_Ababa
+- - Africa/Algiers
+- - Africa/Mbabane
+- - Atlantic
+- - Atlantic/St_Helena
+- - Atlantic/Faeroe
+- - Atlantic/Madeira
+- - Atlantic/Bermuda
+- - Atlantic/South_Georgia
+- - Atlantic/Cape_Verde
+- - Atlantic/Faroe
+- - Atlantic/Reykjavik
+- - Atlantic/Jan_Mayen
+- - Atlantic/Canary
+- - Atlantic/Azores
+- - Atlantic/Stanley
+- - Hongkong
+- - Poland
+- - Libya
+- - UTC
+- - UCT
+- - Israel
+- - CET
+- - Brazil
+- - Brazil/Acre
+- - Brazil/East
+- - Brazil/West
+- - Brazil/DeNoronha
+- - ROK
+- - Singapore
+- - America
+- - America/Tijuana
+- - America/Detroit
+- - America/Noronha
+- - America/Santiago
+- - America/Montevideo
+- - America/Panama
+- - America/La_Paz
+- - America/Guatemala
+- - America/Boa_Vista
+- - America/Costa_Rica
+- - America/Resolute
+- - America/Scoresbysund
+- - America/Denver
+- - America/Whitehorse
+- - America/Kentucky
+- - America/Kentucky/Louisville
+- - America/Kentucky/Monticello
+- - America/Pangnirtung
+- - America/Yellowknife
+- - America/Phoenix
+- - America/Martinique
+- - America/Cuiaba
+- - America/Lima
+- - America/Winnipeg
+- - America/Menominee
+- - America/St_Johns
+- - America/Regina
+- - America/Guayaquil
+- - America/Maceio
+- - America/Hermosillo
+- - America/Barbados
+- - America/Halifax
+- - America/Asuncion
+- - America/Manaus
+- - America/Dominica
+- - America/Catamarca
+- - America/Grenada
+- - America/Montserrat
+- - America/Mazatlan
+- - America/Recife
+- - America/Rosario
+- - America/Iqaluit
+- - America/Porto_Acre
+- - America/Managua
+- - America/Antigua
+- - America/Indiana
+- - America/Indiana/Vevay
+- - America/Indiana/Tell_City
+- - America/Indiana/Winamac
+- - America/Indiana/Indianapolis
+- - America/Indiana/Petersburg
+- - America/Indiana/Knox
+- - America/Indiana/Vincennes
+- - America/Indiana/Marengo
+- - America/Thunder_Bay
+- - America/Dawson
+- - America/Yakutat
+- - America/Edmonton
+- - America/New_York
+- - America/Tortola
+- - America/Nassau
+- - America/Inuvik
+- - America/Atikokan
+- - America/St_Kitts
+- - America/Fortaleza
+- - America/Ensenada
+- - America/Cordoba
+- - America/Araguaina
+- - America/Marigot
+- - America/Godthab
+- - America/Rio_Branco
+- - America/St_Barthelemy
+- - America/Knox_IN
+- - America/Indianapolis
+- - America/Cambridge_Bay
+- - America/St_Vincent
+- - America/Anguilla
+- - America/Merida
+- - America/Santo_Domingo
+- - America/Coral_Harbour
+- - America/St_Lucia
+- - America/Juneau
+- - America/Chicago
+- - America/Toronto
+- - America/Belize
+- - America/Virgin
+- - America/Port_of_Spain
+- - America/Boise
+- - America/Adak
+- - America/Cancun
+- - America/Curacao
+- - America/Glace_Bay
+- - America/Jujuy
+- - America/Fort_Wayne
+- - America/Caracas
+- - America/Nipigon
+- - America/Louisville
+- - America/Anchorage
+- - America/Chihuahua
+- - America/Moncton
+- - America/Goose_Bay
+- - America/Rankin_Inlet
+- - America/Dawson_Creek
+- - America/Cayman
+- - America/Bogota
+- - America/Montreal
+- - America/Monterrey
+- - America/Argentina
+- - America/Argentina/ComodRivadavia
+- - America/Argentina/La_Rioja
+- - America/Argentina/San_Juan
+- - America/Argentina/Catamarca
+- - America/Argentina/Cordoba
+- - America/Argentina/Jujuy
+- - America/Argentina/Ushuaia
+- - America/Argentina/Buenos_Aires
+- - America/Argentina/Tucuman
+- - America/Argentina/San_Luis
+- - America/Argentina/Mendoza
+- - America/Argentina/Rio_Gallegos
+- - America/Puerto_Rico
+- - America/El_Salvador
+- - America/Port-au-Prince
+- - America/Miquelon
+- - America/Havana
+- - America/Tegucigalpa
+- - America/Sao_Paulo
+- - America/Buenos_Aires
+- - America/Eirunepe
+- - America/Nome
+- - America/Cayenne
+- - America/Guadeloupe
+- - America/Danmarkshavn
+- - America/Aruba
+- - America/Porto_Velho
+- - America/Campo_Grande
+- - America/Paramaribo
+- - America/Los_Angeles
+- - America/Atka
+- - America/Rainy_River
+- - America/Bahia
+- - America/Jamaica
+- - America/Vancouver
+- - America/Guyana
+- - America/Shiprock
+- - America/Mexico_City
+- - America/St_Thomas
+- - America/Belem
+- - America/Mendoza
+- - America/North_Dakota
+- - America/North_Dakota/Center
+- - America/North_Dakota/New_Salem
+- - America/Blanc-Sablon
+- - America/Thule
+- - America/Swift_Current
+- - America/Grand_Turk
+- - Kwajalein
+- - Turkey
+- - Cuba
+- - Indian
+- - Indian/Antananarivo
+- - Indian/Mahe
+- - Indian/Chagos
+- - Indian/Mauritius
+- - Indian/Kerguelen
+- - Indian/Christmas
+- - Indian/Maldives
+- - Indian/Reunion
+- - Indian/Comoro
+- - Indian/Mayotte
+- - Indian/Cocos
+- - PST8PDT
+- - US
+- - US/Arizona
+- - US/Eastern
+- - US/Pacific
+- - US/Central
+- - US/East-Indiana
+- - US/Indiana-Starke
+- - US/Pacific-New
+- - US/Mountain
+- - US/Aleutian
+- - US/Michigan
+- - US/Hawaii
+- - US/Alaska
+- - US/Samoa
+- - HST
+- - Arctic
+- - Arctic/Longyearbyen
+- - GMT
+- - NZ-CHAT
+- - GB-Eire
+- - Canada
+- - Canada/Eastern
+- - Canada/Pacific
+- - Canada/Central
+- - Canada/East-Saskatchewan
+- - Canada/Atlantic
+- - Canada/Mountain
+- - Canada/Newfoundland
+- - Canada/Saskatchewan
+- - Canada/Yukon
+- - posix.tab
+- - Jamaica
+- - Antarctica
+- - Antarctica/South_Pole
+- - Antarctica/Casey
+- - Antarctica/Rothera
+- - Antarctica/Palmer
+- - Antarctica/Syowa
+- - Antarctica/Davis
+- - Antarctica/McMurdo
+- - Antarctica/DumontDUrville
+- - Antarctica/Vostok
+- - Antarctica/Mawson
+- - Iceland
+- - Mexico
+- - Mexico/General
+- - Mexico/BajaNorte
+- - Mexico/BajaSur
+- - PRC
+- - Zulu
+- - Mideast
+- - Mideast/Riyadh87
+- - Mideast/Riyadh88
+- - Mideast/Riyadh89
diff --git a/abs/mv-core/webcal/send_reminders.patch b/abs/mv-core/webcal/send_reminders.patch
new file mode 100644
index 0000000..9076b0c
--- /dev/null
+++ b/abs/mv-core/webcal/send_reminders.patch
@@ -0,0 +1,38 @@
+--- send_reminders.php.orig 2008-08-04 18:02:14.000000000 -0500
++++ send_reminders.php 2008-08-07 15:15:28.000000000 -0500
+@@ -1,4 +1,4 @@
+-#!/usr/local/bin/php -q
++#!/usr/bin/php -q
+ <?php
+ /* $Id: send_reminders.php,v 1.81.2.8 2008/02/18 17:42:02 cknudsen Exp $
+ *
+@@ -313,6 +313,10 @@
+ translate ( 'could not find event id XXX in database.' ) ) . "\n";
+ return;
+ }
++ //Always send via ghosd
++ $name = $row[9];
++ $p = system("/usr/bin/notify.py NFO \"$name\"", $retval);
++
+
+ // Send mail. We send one user at a time so that we can switch
+ // languages between users if needed (as well as HTML vs plain text).
+@@ -475,7 +479,6 @@
+ }
+
+ $subject = translate ( 'Reminder' ) . ': ' . stripslashes ( $name );
+-
+ if ( $debug )
+ echo "Sending mail to $recip (in $userlang).<br />\n";
+
+@@ -570,7 +573,9 @@
+ }
+ // Factor in repeats if set.
+ if ( $repeats > 0 && $times_sent <= $repeats )
+- $remind_time += ( $reminder['duration'] * 60 * $times_sent );
++ $remind_time = ($reminder['duration']*60 + $lastsent );
++// Don't know what this is line is doing, but the above seems better to me
++// $remind_time += ( $reminder['duration'] * 60 * $times_sent );
+
+ if ( $debug )
+ echo ( empty ( $offset_msg ) ? '' : $offset_msg . '<br />' ) . '
diff --git a/abs/mv-core/webcal/sendreminders.sh b/abs/mv-core/webcal/sendreminders.sh
new file mode 100644
index 0000000..ac99058
--- /dev/null
+++ b/abs/mv-core/webcal/sendreminders.sh
@@ -0,0 +1,5 @@
+#!/bin/bash
+. /etc/profile
+cd /data/srv/httpd/htdocs/webcal/tools
+./send_reminders.php
+
diff --git a/abs/mv-core/webcal/settings.php b/abs/mv-core/webcal/settings.php
new file mode 100644
index 0000000..c43b705
--- /dev/null
+++ b/abs/mv-core/webcal/settings.php
@@ -0,0 +1,18 @@
+<?php
+/* updated via install/index.php on Mon, 04 Aug 2008 06:44:26 -1100
+install_password: a744c6d7842ac39db07f6191e31c69ce
+db_type: mysql
+db_host: localhost
+db_database: webcal
+db_login: webcal
+db_password: webcal
+db_persistent: false
+db_cachedir: /data/srv/tmp
+readonly: false
+user_inc: user.php
+use_http_auth: false
+single_user: true
+single_user_login: Me
+mode: prod
+# end settings.php */
+?>
diff --git a/abs/mv-core/webcal/webcal.install b/abs/mv-core/webcal/webcal.install
new file mode 100644
index 0000000..290b8b0
--- /dev/null
+++ b/abs/mv-core/webcal/webcal.install
@@ -0,0 +1,30 @@
+post_install() {
+ mkdir /data/srv/tmp
+ chmod 777 /data/srv/tmp
+ mysql -u root -e 'create database webcal;'
+ mysql -u root -e "GRANT ALL PRIVILEGES ON *.* TO webcal@localhost IDENTIFIED BY 'webcal' WITH GRANT OPTION;"
+ echo installing the default webcal database
+ #install tables
+ mysql webcal < /data/srv/httpd/htdocs/webcal/createdb.sql
+ chown -R nobody:nobody /data/srv/httpd/htdocs/webcal/
+ chmod 775 /data/srv/httpd/htdocs/webcal/includes
+ MVDIR=/usr/bin
+ ln -s $MVDIR/sendreminders.sh /etc/cron.tenminutes/01-sendreminders.sh
+ . /etc/systemconfig
+ mysql webcal -e "update webcal_config set cal_value="\"${timezone}\"" where cal_setting='SERVER_TIMEZONE' ;"
+ mysql webcal -e "update webcal_config set cal_value="\"${timezone}\"" where cal_setting='TIMEZONE' ;"
+ mysql webcal -e "update webcal_user_pref set cal_value="\"${timezone}\"" where cal_setting='TIMEZONE' ;"
+}
+post_upgrade() {
+ echo "nothing to do"
+chown -R nobody:nobody /data/srv/httpd/htdocs/webcal/
+ chmod 775 /data/srv/httpd/htdocs/webcal/includes
+ MVDIR=/usr/bin
+ ln -s $MVDIR/sendreminders.sh /etc/cron.tenminutes/01-sendreminders.sh
+
+
+}
+
+op=$1
+shift
+$op $*