139 lines
5 KiB
Python
Executable file
139 lines
5 KiB
Python
Executable file
#/usr/bin/env python
|
|
|
|
import sys
|
|
import MySQLdb
|
|
from time import *
|
|
from datetime import *
|
|
|
|
class DataBase:
|
|
def connect(self):
|
|
self.db = MySQLdb.connect(db="szene",\
|
|
host="localhost", \
|
|
user="szene", \
|
|
passwd="szene", \
|
|
use_unicode=1)
|
|
print "Verbindung zur DB steht"
|
|
|
|
def close (self):
|
|
self.db.close()
|
|
print "Verbindung getrennt"
|
|
|
|
def get_latest_uid_category(self, type):
|
|
c = self.db.cursor()
|
|
sqlqueue="SELECT uid FROM tx_skcalendar_" + type
|
|
c.execute(sqlqueue)
|
|
j=1
|
|
for i in c:
|
|
if i[0] > j:
|
|
j = i[0]
|
|
print "latest uid for %s is: %i" % (type, j)
|
|
return j
|
|
|
|
def prepare_new_month(self, month):
|
|
#TODO Monatsvorlage rekursiv kopieren
|
|
# IDs der Kategorien aus config
|
|
next_month = str(month)
|
|
parentid = str(34)
|
|
doktype = str(254)
|
|
perms_user = str(31)
|
|
perms_group = str(27)
|
|
hidden = str(1)
|
|
tx_rgmenu_special = str(5)
|
|
tstamp = str(int(mktime(datetime.now().timetuple())))
|
|
sqlqueue="INSERT INTO `pages` (`pid`, `title`, `doktype`, `tstamp`, `perms_user`, `perms_group`, `hidden`, `tx_rgmenu_special`) \
|
|
VALUES (" \
|
|
+ "'" + parentid + "', " \
|
|
+ "'" + next_month + "', " \
|
|
+ "'" + doktype + "', " \
|
|
+ "'" + tstamp + "', " \
|
|
+ "'" + perms_user + "', " \
|
|
+ "'" + perms_group + "', " \
|
|
+ "'" + hidden + "', " \
|
|
+ "'" + tx_rgmenu_special \
|
|
+ "');"
|
|
print sqlqueue
|
|
c = self.db.cursor()
|
|
c.execute(sqlqueue)
|
|
|
|
def prepare_event(self, event_dic):
|
|
'''hiermit wird eine neue Veranstaltung in passender Form
|
|
fuer die VCE Extension vorbereitet'''
|
|
event_pid = "29"
|
|
event_title = event_dic["WAS_XML"]
|
|
event_description = event_dic["INFORMATION"]
|
|
event_startdate = str(int(mktime((datetime(2008,01,31,11,11,00)).timetuple())))
|
|
event_targetgroup = "5"
|
|
event_category = "1"
|
|
event_organizer = "1"
|
|
event_location = "1"
|
|
event_tstamp = str(int(mktime(datetime.now().timetuple())))
|
|
event_crdate = str(int(mktime(datetime.now().timetuple())))
|
|
## felder ohne default wert mit leerem string besetzen
|
|
event_image = ""
|
|
event_link = ""
|
|
event_exeptions = ""
|
|
event_l18n_diffsource = ""
|
|
event1 = (event_pid, event_title, event_description, event_startdate, event_targetgroup, event_category, event_organizer, event_location, event_tstamp, event_crdate, event_image, event_link, event_exeptions, event_l18n_diffsource)
|
|
#event2 = (event_pid, event_title2, event_description, event_startdate, event_targetgroup, event_category, event_organizer, event_location, event_tstamp, event_crdate, event_image, event_link, event_exeptions, event_l18n_diffsource)
|
|
## liste fuer alle datensaetze zusammenstellen
|
|
#event_data = [ event1, event2 ]
|
|
#return event_data
|
|
print event1
|
|
return event1
|
|
|
|
def insert_event(self, dataset):
|
|
'''den MySQL Befehl absetzen'''
|
|
#sqlqueue="INSERT INTO `tx_skcalendar_event` (`pid`) VALUES ('29');"
|
|
#c.execute(sqlqueue)
|
|
'''
|
|
sqlqueue="INSERT INTO `tx_skcalendar_event` (`pid` , `title`, `description`, `targetgroup`, `category`, `organizer`, `location`, `tstamp` , `crdate` ) VALUES (" \
|
|
+ "'" + self.event_pid + "', "\
|
|
+ "'" + self.event_title + "', "\
|
|
+ "'" + self.event_description + "', "\
|
|
+ "'" + self.event_targetgroup + "', "\
|
|
+ "'" + self.event_category + "', "\
|
|
+ "'" + self.event_organizer + "', "\
|
|
+ "'" + self.event_location + "', "\
|
|
+ "'" + self.event_tstamp + "', "\
|
|
+ "'" + self.event_crdate \
|
|
+ "');"
|
|
print "folgende Datensaetze einfuegen:"
|
|
for i in dataset:
|
|
print i
|
|
#c.executemany("""INSERT INTO `tx_skcalendar_event` (`pid` , `title`, `description`, `startdate`, `targetgroup`, `category`, `organizer`, `location`, `tstamp` , `crdate`, `image`, `link`, `exeptions`, `l18n_diffsource`) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s)""", data)
|
|
'''
|
|
#data = self.prepare_event()
|
|
c = self.db.cursor()
|
|
c.executemany("""INSERT INTO `tx_skcalendar_event` (`pid` , `title`, `description`, `startdate`, `targetgroup`, `category`, `organizer`, `location`, `tstamp` , `crdate`, `image`, `link`, `exeptions`, `l18n_diffsource`) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s)""", dataset)
|
|
|
|
def insert_organizer(self):
|
|
#get_organizers_from_config()
|
|
return
|
|
|
|
|
|
if __name__ == '__main__':
|
|
test = DataBase()
|
|
test.connect()
|
|
#test.get_latest_uid_category("organizer")
|
|
datasource = XMLSource()
|
|
#test.insert_event()
|
|
test.close()
|
|
sys.exit(0)
|
|
|
|
|
|
'''
|
|
## zur Umwandlungs von unix timestamps in mysql un umgekehrt
|
|
from time import *
|
|
from datetime import *
|
|
# von mysql (unix) timestamp in python datetime umwandeln
|
|
datetime.fromtimestamp(1199142000)
|
|
# und zurueck
|
|
mktime((datetime(2008,01,31,21,8,00)).timetuple())
|
|
|
|
## Python & MySQL
|
|
# http://www.kitebird.com/articles/pydbapi.html
|
|
# http://dustman.net/andy/python/python-and-mysql
|
|
|
|
'''
|
|
|