diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..751b666 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +/clubs.tar.gz +/slt-update.xml + diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..327d4c9 --- /dev/null +++ b/Makefile @@ -0,0 +1,47 @@ + +# UPDATE_PATH=/srv/slt-update +PACKAGES = clubs.tar.gz + +export DL_PREFIX=https://slt.wolf-stuttgart.net/update/com_clubs + +RSYNC_OPTIONS=-rltDz --delete --delete-delay --delete-excluded --exclude '.gitignore' --exclude '.dummy' +RSYNC_USER=christian +RSYNC_HOST=hh.wolf-stuttgart.net +DL_PATH=/srv/http/slt/update/com_clubs + +all: package + +package: $(PACKAGES) + +.PHONY: clubs.tar.gz +clubs.tar.gz: + tar czf $@ -C src . + +.PHONY: release +release: clubs.tar.gz + ./scripts/create-release.sh + +.PHONY: release-force +release-force: clubs.tar.gz + ./scripts/create-release.sh -f + +.PHONY: upload +upload: release + $(MAKE) reupload + +.PHONY: slt-update.xml +slt-update.xml: + ./scripts/create-update-xml.sh + +.PHONY: reupload +reupload: slt-update.xml + @echo Pushing files + @rsync $(RSYNC_OPTIONS) releases/ $(RSYNC_USER)@$(RSYNC_HOST):$(DL_PATH)/files -v + + @echo Pushing XML configuration + @rsync $(RSYNC_OPTIONS) slt-update.xml $(RSYNC_USER)@$(RSYNC_HOST):$(DL_PATH) + +# +# .PHONY: update +# update: $(PACKAGES) +# cp slt.xml slt1.tar.gz $(UPDATE_PATH) diff --git a/releases/.dummy b/releases/.dummy new file mode 100644 index 0000000..e69de29 diff --git a/releases/clubs-0.0.1.tar.gz b/releases/clubs-0.0.1.tar.gz new file mode 100644 index 0000000..7adda59 Binary files /dev/null and b/releases/clubs-0.0.1.tar.gz differ diff --git a/res/postfix.template b/res/postfix.template new file mode 100644 index 0000000..769fb5f --- /dev/null +++ b/res/postfix.template @@ -0,0 +1 @@ + diff --git a/res/prefix.template b/res/prefix.template new file mode 100644 index 0000000..ab72107 --- /dev/null +++ b/res/prefix.template @@ -0,0 +1,2 @@ + + diff --git a/res/update.template b/res/update.template new file mode 100644 index 0000000..007f149 --- /dev/null +++ b/res/update.template @@ -0,0 +1,16 @@ + + SLT Vereinsverwaltung + Vereinsportal des saarländischen Tanzsportverbands + com_clubs + component + 0 + __VERSION__ + + __DOWNLOAD_URL__ + + + stable + + Christian Wolf + + diff --git a/scripts/create-release.sh b/scripts/create-release.sh new file mode 100755 index 0000000..122d8a9 --- /dev/null +++ b/scripts/create-release.sh @@ -0,0 +1,23 @@ +#!/bin/bash + +MAJOR=`cat serial/major` +MINOR=`cat serial/minor` +RELEASE=`cat serial/release` +TOTRELEASE="$MAJOR.$MINOR.$RELEASE" + +outname="releases/clubs-$TOTRELEASE.tar.gz" + +mkdir -p releases + +# First check if the named release exists already +if [ -f "$outname" ]; then + if [ "$1" = '-f' ]; then + echo "Overwriting existing file $outname." + else + echo "The file $outname existes already. Either remove the release from the folder manually or increase the release version." + echo "Aborting." + exit 1 + fi +fi + +cp clubs.tar.gz "$outname" diff --git a/scripts/create-update-xml.sh b/scripts/create-update-xml.sh new file mode 100755 index 0000000..42ad43a --- /dev/null +++ b/scripts/create-update-xml.sh @@ -0,0 +1,23 @@ +#!/bin/bash + +# DL_PREFIX="https://slt.wolf-stuttgart.net/update/template" + +cat res/prefix.template > slt-update.xml + +find releases -name clubs-\* | while read f +do + + VSTR=`echo "$f" | sed -E 's@releases/clubs-@@; s@^([0-9]+\.[0-9]+\.[0-9]+).*$@\1@'` + + FILE=`echo "$f" | sed 's@releases/@@'` + FORMAT=`echo "$f" | sed -E 's@^.*[0-9]+\.[0-9]+\.[0-9]+\.@@'` + + sed ' + s@__VERSION__@'"$VSTR"'@g; + s@__DOWNLOAD_URL__@'"$DL_PREFIX/files/$FILE"'@g; + s@__FORMAT__@'"$FORMAT"'@g + ' res/update.template >> slt-update.xml + +done + +cat res/postfix.template >> slt-update.xml diff --git a/serial/major b/serial/major new file mode 100644 index 0000000..573541a --- /dev/null +++ b/serial/major @@ -0,0 +1 @@ +0 diff --git a/serial/minor b/serial/minor new file mode 100644 index 0000000..573541a --- /dev/null +++ b/serial/minor @@ -0,0 +1 @@ +0 diff --git a/serial/release b/serial/release new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/serial/release @@ -0,0 +1 @@ +1 diff --git a/src/admin/sql/mysql/install.sql b/src/admin/sql/mysql/install.sql new file mode 100644 index 0000000..c58928a --- /dev/null +++ b/src/admin/sql/mysql/install.sql @@ -0,0 +1,80 @@ + +DROP TABLE IF EXISTS `#__club_clubs`; +CREATE TABLE `#__club_clubs` ( + `id` int(10) NOT NULL AUTO_INCREMENT, + `name` varchar(100) NOT NULL, + `address` tinytext NOT NULL, + `city` varchar(50) NOT NULL, + `homepage` varchar(100) DEFAULT NULL, + `mail` varchar(100) NOT NULL, + `iban` char(34) NOT NULL, + `bic` char(11) NOT NULL, + `charitable` tinyint(1) NOT NULL, + `president` int(10) NOT NULL, + PRIMARY KEY (`id`) +); + +DROP TABLE IF EXISTS `#__club_keys`; +CREATE TABLE `#__club_keys` ( + `privkey` text NOT NULL, + `publickey` text NOT NULL +); + +DROP TABLE IF EXISTS `#__club_offer_assocs`; +CREATE TABLE `#__club_offer_assocs` ( + `id` int(10) NOT NULL AUTO_INCREMENT, + `clubid` int(10) NOT NULL, + `offerid` int(10) NOT NULL, + PRIMARY KEY (`id`) +); + +DROP TABLE IF EXISTS `#__club_offers`; +CREATE TABLE `#__club_offers` ( + `id` int(10) NOT NULL AUTO_INCREMENT, + `name` varchar(100) NOT NULL, + PRIMARY KEY (`id`) +); + +DROP TABLE IF EXISTS `#__club_places`; +CREATE TABLE `#__club_places` ( + `id` int(10) NOT NULL AUTO_INCREMENT, + `clubid` int(10) NOT NULL, + `name` varchar(100) NOT NULL, + `address` tinytext NOT NULL, + `area` int(10) DEFAULT NULL, + PRIMARY KEY (`id`) +); + +DROP TABLE IF EXISTS `#__club_positions`; +CREATE TABLE `#__club_positions` ( + `id` int(10) NOT NULL AUTO_INCREMENT, + `name` varchar(100) NOT NULL, + PRIMARY KEY (`id`) + +DROP TABLE IF EXISTS `#__club_user_assocs`; +CREATE TABLE `#__club_user_assocs` ( + `id` int(10) NOT NULL AUTO_INCREMENT, + `clubid` int(10) NOT NULL, + `userid` int(10) DEFAULT NULL, + `positionid` int(10) NOT NULL, + `admin` tinyint(1) NOT NULL DEFAULT 0, + `state` enum('regular','vacant','temporary') NOT NULL DEFAULT 'vacant', + `address` tinytext DEFAULT NULL, + `mail` varchar(100) DEFAULT NULL, + `phone` varchar(50) DEFAULT NULL, + PRIMARY KEY (`id`) +); + +DROP TABLE IF EXISTS `#__club_users`; +CREATE TABLE `#__club_users` ( + `id` int(10) NOT NULL AUTO_INCREMENT, + `user` varchar(30) NOT NULL, + `password` varchar(150) DEFAULT NULL, + `name` varchar(255) NOT NULL, + `address` tinytext NOT NULL, + `city` varchar(50) NOT NULL, + `mail` varchar(100) NOT NULL, + `phone` varchar(50) DEFAULT NULL, + `mobile` varchar(50) DEFAULT NULL, + PRIMARY KEY (`id`) +); diff --git a/src/admin/sql/mysql/uninstall.sql b/src/admin/sql/mysql/uninstall.sql new file mode 100644 index 0000000..61d1555 --- /dev/null +++ b/src/admin/sql/mysql/uninstall.sql @@ -0,0 +1,9 @@ + +DROP TABLE IF EXISTS `#__club_clubs`; +DROP TABLE IF EXISTS `#__club_keys`; +DROP TABLE IF EXISTS `#__club_offer_assocs`; +DROP TABLE IF EXISTS `#__club_offers`; +DROP TABLE IF EXISTS `#__club_places`; +DROP TABLE IF EXISTS `#__club_positions`; +DROP TABLE IF EXISTS `#__club_user_assocs`; +DROP TABLE IF EXISTS `#__club_users`; diff --git a/src/admin/sql/mysql/updates/0.0.1.sql b/src/admin/sql/mysql/updates/0.0.1.sql new file mode 100644 index 0000000..e69de29 diff --git a/src/admin/sql/updates/mysql/0.0.1.sql b/src/admin/sql/updates/mysql/0.0.1.sql deleted file mode 100644 index fd82b06..0000000 --- a/src/admin/sql/updates/mysql/0.0.1.sql +++ /dev/null @@ -1,18 +0,0 @@ -DROP TABLE IF EXISTS `#__club_keys`; -CREATE TABLE `#__club_keys` ( - `privkey` text NOT NULL, - `publickey` text NOT NULL -) ENGINE=InnoDB DEFAULT CHARSET=utf8; - -INSERT INTO `#__club_keys` VALUES ('-----BEGIN PRIVATE KEY-----\nMIIEwAIBADANBgkqhkiG9w0BAQEFAASCBKowggSmAgEAAoIBAQDvZHhLHHqmfnnP\noj5Y7AtS0UvEN8XLzNdHj/0nHBVHrXDMNul8phbCaevuaXcYTZvb9JBTAO019Bnu\nCoj6KFrk0Cw/zcVgVHryguNCr2DeLaxAXyArfkKNZPuG/kTw1mxE6ebeR886JVU0\nfQpIi3zDGAHpXxaKO7EttnvQK8NRd4h5O5EI6dCnmMn/8xY/d5G7AsZKuAxq01ZB\nmmUrkRKrQtBTwUeJWhtfT+XjOa1n1FVIwmqz4O2sqbfm0pa6PX0BNT0CUp0RI1wN\nGmF6bh/WkQ8h3jmTamzZ2cQUwDnL7ByAJqexJrrPacRbE6EotCGODjuBXDSy02PJ\nZk0fThZpAgMBAAECggEBANJaU0WU8cUo73pekzBpwY11MYFqjJiHF0ffo0/hYmWI\nZsxbGBGak/cjQdhNvgOR9nlxTfxRnR7CrqI3iaNfIHdc4PTzqBL8SMid8HohRxoT\nwf8SV19AY9SAvnAhL4z8rUhky6PYL6RlN5iWoxmZz/hSOSPKlTDEQOztI6CJQ+hp\nUFEiOLq/TSWB1DYEu6qAQRyI5wcC1QMo+zB/zBwIuM3DsB2f6Xtj86kXzU/bGeDj\nNLbsCuhRbFyMgvcJ3z6KQTvREZOGkeF22HA+ZVH7bWf00PqCEjq2I/XFHZGK61X4\nWLgNOUmVZSmGv2Kd9UJaC8VffkBnrV3XFN1n97gcP4ECgYEA/Joaw3VrbWpKsquf\nMiTuMJVyvcV9fmVhWhPNuioCwWwBx2mjGz/texd/67KNWPr7r1IGCIBnYfs3Dy+k\nOo+lAWT7oaec24dH4vjiljWrvFvZXmkpTa6j8RSqhhIVTUFSnXBkvxkEzcnUMbxK\n6A4gdggSfcMpeo3DmjGqNWTXlbkCgYEA8pzgD2VFEYq4/fgDhxKeoWSt1UPJtPxT\n4iYPXWKGdWLsEKg36oYiRXSTdan5aRwiZUXpDoFJU8vVCfmdVb2qpwPp66LwYFax\nAYuA3aPTi9npT4nDOBygVGSTY0TsxmL5asndyxl99OdoskLmS3N2UzeWMy7prRTt\nWZL7uWnU3jECgYEA+8EHLYkIcXs/SYV823gtIKTCP9rlsSSPezxDjOgz6NyhhUKG\nejEjmcuZBarl7ynt0BU6yBxZbTD39h2wW2EwvgwMMlggIDda8R7GjZieOdN89/ht\nXuvQnwTO02KQcnfJQ/pxnnfr7sHZx1v3eAIkXh67dzYcT/WcXkBjeGWx65kCgYEA\n0WU8rY0GU+GbUPfic45Kg5nVvx/G1AKEk8etszf6PQ6oGKhXun8SzUeUjhWqQmIZ\n/badM/u6QizHLtjWRs5wn73tA4eaWEv6cg7ppmJjj20AxbltWNy8NJqp6x/uDDwY\ncWbRmx3hbKLd5h1/jteU5LYxWPPAk7ZgNNN7l8gUBcECgYEAzVVKQ5dn58iHkH1i\nB3UUnTrqPD/cn7WigcWn7A6vpxqbGARkAyIXV/xqLoD8pX1G7JhqFKArC+UJzUuC\n6hgL1Hq+OJXTaN2NzcvQaIvLzsOWQebFtNfFxi0tzAE0t2/JfuFxeam0WZunaNgg\nAabygognDdEZW9HBvCydJ5N8e+s=\n-----END PRIVATE KEY-----\n','-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA72R4Sxx6pn55z6I+WOwL\nUtFLxDfFy8zXR4/9JxwVR61wzDbpfKYWwmnr7ml3GE2b2/SQUwDtNfQZ7gqI+iha\n5NAsP83FYFR68oLjQq9g3i2sQF8gK35CjWT7hv5E8NZsROnm3kfPOiVVNH0KSIt8\nwxgB6V8WijuxLbZ70CvDUXeIeTuRCOnQp5jJ//MWP3eRuwLGSrgMatNWQZplK5ES\nq0LQU8FHiVobX0/l4zmtZ9RVSMJqs+DtrKm35tKWuj19ATU9AlKdESNcDRphem4f\n1pEPId45k2ps2dnEFMA5y+wcgCansSa6z2nEWxOhKLQhjg47gVw0stNjyWZNH04W\naQIDAQAB\n-----END PUBLIC KEY-----\n'); - - -DROP TABLE IF EXISTS `#__club_users`; -CREATE TABLE `#__club_users` ( - `id` int(10) NOT NULL AUTO_INCREMENT, - `user` varchar(30) NOT NULL, - `password` varchar(150) DEFAULT NULL, - PRIMARY KEY (`id`) -) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8; - -INSERT INTO `#__club_users` VALUES (1,'chris','$2y$10$2/aeOfLlLwFx7JYXpaAOH.CG0ZtvkzTuK6nojvSIuOYlTbSd07CqC'); diff --git a/src/clubs.xml b/src/clubs.xml index 518fc17..84217ba 100644 --- a/src/clubs.xml +++ b/src/clubs.xml @@ -5,7 +5,7 @@ type="component"> - Vereinsmanagement + SLT Vereinsmanagement Vereinsportal des saarländischen Tanzsportverbands @@ -46,11 +46,20 @@ Vereinsmanagement + Vereine + Personen + Posten + Trainingsangebote + abstract + common + controllers + res + sql + views clubs.php controller.php - sql @@ -66,7 +75,7 @@ - sql/updates/mysql + sql/mysql/updates