223 lines
6.5 KiB
PHP
223 lines
6.5 KiB
PHP
<?php
|
|
define(ROOT, "../../");
|
|
require_once(ROOT."include/db.inc.php");
|
|
require_once(ROOT."include/config.inc.php");
|
|
|
|
define(ARTIST_LIST, 593);
|
|
define(AUTHOR_LIST, 594);
|
|
|
|
$artists = array(437 => "Assmann Peter",
|
|
445 => "Berger Gabriele",
|
|
217 => "Buttinger-Caspar Andreas",
|
|
483 => "Eisenmann Therese",
|
|
227 => "Fischbacher Franz",
|
|
205 => "Hager Ernst",
|
|
485 => "Kraml Peter",
|
|
237 => "Luger Christoph",
|
|
519 => "Mayrhofer Christa",
|
|
471 => "Riedl Alois",
|
|
481 => "Riedl Annerose",
|
|
327 => "Salzmann Heinrich",
|
|
415 => "Starrermayr Astrid",
|
|
387 => "Steininger Erich",
|
|
343 => "Strobl Thomas");
|
|
|
|
$authors = array(519 => "Donhauser Michael",
|
|
213 => "Fischer Eva",
|
|
225 => "Fuchs Margarita",
|
|
235 => "Habringer Rudolf",
|
|
449 => "Janacs Christoph",
|
|
209 => "Krenner Günter Giselher",
|
|
301 => "Pauli Herbert",
|
|
219 => "Rathenböck Elisabeth Vera",
|
|
221 => "Schmid Ernst",
|
|
469 => "Schöggl Ernst Reinhard",
|
|
431 => "Strauß Ester",
|
|
229 => "Wall Richard");/*,
|
|
431 => "Wiplinger Peter Paul");*/
|
|
|
|
|
|
// === SQL FUNCTIONS =========================================================================== //
|
|
|
|
# selects a database
|
|
function select($db){
|
|
mysql_select_db($db);
|
|
}
|
|
|
|
# executes an insert query
|
|
function insert($query){
|
|
mysql_query($query);
|
|
return mysql_insert_id();
|
|
}
|
|
|
|
# executes an update query
|
|
function update($query){
|
|
mysql_query($query);
|
|
}
|
|
|
|
# returns the result set
|
|
function getAll($query){
|
|
return mysql_query($query);
|
|
}
|
|
|
|
# returns one result line
|
|
function getOne($query){
|
|
$r = mysql_query($query);
|
|
return mysqli_fetch_array($r, MYSQLI_ASSOC);
|
|
}
|
|
|
|
// ==== IMPORT FUNCTIONS ======================================================================== //
|
|
|
|
|
|
# imports an artist or author
|
|
function importPerson($eventId, $name, $listId){
|
|
|
|
echo "import person $name<br>\n";
|
|
|
|
//get ticket page
|
|
$query = sprintf("SELECT childObjects FROM bruckmuehle_index WHERE id = %d", $eventId);
|
|
$line = getOne($query);
|
|
$childObjects = explode("\t", $line['childObjects']);
|
|
|
|
$query = sprintf("SELECT classId FROM bruckmuehle_index WHERE id = %d", $childObjects[0]);
|
|
$line = getOne($query);
|
|
|
|
//get page contents
|
|
$query = sprintf("SELECT buildingBlocks FROM bruckmuehle_stdpage WHERE id = %d", $line['classId']);
|
|
$line = getOne($query);
|
|
$buildingBlocks = explode("\t", $line['buildingBlocks']);
|
|
$blocks = array();
|
|
|
|
foreach($buildingBlocks as $b){
|
|
$bl = explode(",", $b);
|
|
switch($bl[0]){
|
|
case "textblock": $blocks[] = copyTextBlock($bl[1]);
|
|
break;
|
|
case "headingblock": $blocks[] = copyHeadingBlock($bl[1]);
|
|
break;
|
|
case "imageblock": $blocks[] = copyImageBlock($bl[1]);
|
|
break;
|
|
case "fileblock": $blocks[] = copyFileBlock($bl[1]);
|
|
break;
|
|
case "galleryblock": $blocks[] = copyGalleryBlock($bl[1]);
|
|
break;
|
|
}
|
|
}
|
|
|
|
//create person page
|
|
$query = sprintf("INSERT INTO bruckmuehle_stdpage (template, buildingBlocks) VALUES ('bruckmuehle.html', %s)",
|
|
sqlstring(implode("\t", $blocks)));
|
|
$classId = insert($query);
|
|
|
|
$query = sprintf("INSERT INTO bruckmuehle_index (name, class, classId, parentId, lastUpdate, editable, listable, visible)
|
|
VALUES (%s, 'PersonPage', %d, 0, NOW(), '2', '1', 1)",
|
|
sqlstring($name),
|
|
$classId);
|
|
$personPageId = insert($query);
|
|
|
|
//create person
|
|
$query = sprintf("INSERT INTO bruckmuehle_person (job) VALUES ('')");
|
|
$classId = insert($query);
|
|
|
|
$query = sprintf("INSERT INTO bruckmuehle_index (name, class, classId, parentId, lastUpdate, editable, listable, visible, childObjects)
|
|
VALUES (%s, 'Person', %d, %d, NOW(), '2', '1', 1, %s)",
|
|
sqlstring($name),
|
|
$classId,
|
|
$listId,
|
|
sqlstring($personPageId));
|
|
$personId = insert($query);
|
|
|
|
$query = sprintf("UPDATE bruckmuehle_index SET parentId = %d WHERE id = %d",
|
|
$personId,
|
|
$personPageId);
|
|
update($query);
|
|
|
|
//update person list
|
|
$query = sprintf("SELECT childObjects FROM bruckmuehle_index WHERE id = %d", $listId);
|
|
$line = getOne($query);
|
|
if(empty($line['childObjects'])){
|
|
$childObjects = $personId;
|
|
}
|
|
else{
|
|
$childObjects = $line['childObjects']."\t".$personId;
|
|
}
|
|
|
|
$query = sprintf("UPDATE bruckmuehle_index SET childObjects = %s WHERE id = %d",
|
|
sqlstring($childObjects),
|
|
$listId);
|
|
update($query);
|
|
}
|
|
|
|
|
|
# copies a text block
|
|
# returns id
|
|
function copyTextBlock($id){
|
|
$line = getOne(sprintf("SELECT * FROM bruckmuehle_textblock WHERE id = %d", $id));
|
|
$query = sprintf("INSERT INTO bruckmuehle_textblock (content) VALUES (%s)",
|
|
sqlstring($line['content']));
|
|
$blockId = insert($query);
|
|
return "textblock,$blockId";
|
|
}
|
|
|
|
|
|
# copies a heading block
|
|
# returns id
|
|
function copyHeadingBlock($id){
|
|
$line = getOne(sprintf("SELECT * FROM bruckmuehle_headingblock WHERE id = %d", $id));
|
|
$query = sprintf("INSERT INTO bruckmuehle_headingblock (content, level) VALUES (%s, %d)",
|
|
sqlstring($line['content']),
|
|
$line['level']);
|
|
$blockId = insert($query);
|
|
return "headingblock,$blockId";
|
|
}
|
|
|
|
|
|
# copies an image block
|
|
# returns id
|
|
function copyImageBlock($id){
|
|
$line = getOne(sprintf("SELECT * FROM bruckmuehle_imageblock WHERE id = %d", $id));
|
|
$query = sprintf("INSERT INTO bruckmuehle_imageblock (file, caption, hyperlink) VALUES (%s, %s, %s)",
|
|
sqlstring($line['file']),
|
|
sqlstring($line['caption']),
|
|
sqlstring($line['hyperlink']));
|
|
$blockId = insert($query);
|
|
return "imageblock,$blockId";
|
|
}
|
|
|
|
|
|
# copies a file block
|
|
# returns id
|
|
function copyFileBlock($id){
|
|
$line = getOne(sprintf("SELECT * FROM bruckmuehle_fileblock WHERE id = %d", $id));
|
|
$query = sprintf("INSERT INTO bruckmuehle_fileblock (file, displayName) VALUES (%s, %s)",
|
|
sqlstring($line['file']),
|
|
sqlstring($line['displayName']));
|
|
$blockId = insert($query);
|
|
return "fileblock,$blockId";
|
|
}
|
|
|
|
|
|
# copies a gallery block
|
|
# returns id
|
|
function copyGalleryBlock($id){
|
|
$line = getOne(sprintf("SELECT * FROM bruckmuehle_galleryblock WHERE id = %d", $id));
|
|
$query = sprintf("INSERT INTO bruckmuehle_galleryblock (galleryId) VALUES (%d)",
|
|
$line['galleryId']);
|
|
$blockId = insert($query);
|
|
return "galleryblock,$blockId";
|
|
}
|
|
|
|
|
|
// === MAIN =================================================================================================== //
|
|
|
|
mysql_connect(DBHOST, DBUSER, DBPWD);
|
|
mysql_select_db(DBNAME);
|
|
foreach($artists as $i=>$j){
|
|
importPerson($i, $j, ARTIST_LIST);
|
|
}
|
|
echo "<hr>";
|
|
foreach($authors as $i=>$j){
|
|
importPerson($i, $j, AUTHOR_LIST);
|
|
}
|
|
mysql_close();
|
|
?>
|