function smarty_function_artist_list($params, &$smarty) { if (empty($params['var'])) { $smarty->trigger_error("assign: missing 'var' parameter"); return; } if (empty($params['query'])) { $smarty->trigger_error("assign: missing 'var' parameter"); return; } else { $query = $params['query']; } //debug($query); global $db, $db_prefix; $thesaurus = new thesaurusDB($db, $db_prefix); // $frommeta indicates whether or not the data is coming from the _existing_ metadata $frommeta = false; // search for artists by the artistsearch field if given or by the meta-id otherwise if (empty($query['searchartist'])) { if (empty($query['id'])) { $searchtype = false; } else { extractID($query['id'], $collectionid, $imageid); $searchterm = "{$collectionid}:{$imageid}"; $searchtype = 'metaid'; $frommeta = true; } } else { $searchterm = $query['searchartist']; $searchtype = 'name'; } $result = array(); if ($searchtype != false) { $rs = $thesaurus->query('names', $searchterm, $searchtype); $sql = "queried through thesaurusDB::query('names', '{$searchterm}', '{$searchtype}');"; /*if ($frommeta) { $params['query']['name1id'] = $rs[0]['id']; $params['query']['name1text'] = $rs[0]['name']; $params['query']['name1id'] = $rs[0]['id']; $params['query']['name1text'] = $rs[0]['name']; $smarty->assign('query', $params['query']); }*/ //make the ids be keys, and strip slashes out foreach ($rs as $row) { array_walk($row, '__stripslashes'); $result[$row['id']] = $row; } } else { $sql = 'no query'; } //debug($result); $smarty->assign($params['var'], $result); if (!empty($params['sql'])) { $smarty->assign($params['sql'], $sql); } }
function smarty_function_mygroup_change($params, &$smarty) { if (empty($params['result'])) { $smarty->trigger_error("assign: missing 'result' parameter"); return; } global $db, $db_prefix; /* print_r($params); $db->debug = true; */ if (empty($params['gid'])) { $smarty->trigger_error("assign: missing 'gid' parameter"); return; } else { $mygroupid = $params['gid']; } if (empty($params['action'])) { $smarty->trigger_error("assign: missing 'action' parameter"); return; } else { $action = $params['action']; } if (empty($params['changes'])) { $smarty->trigger_error("assign: missing 'changes' parameter"); return; } else { $changes = $params['changes']; } if ($action == 'update') { foreach ($changes as $key => $val) { extractID($key, $cid, $imageid); if ($val == 'add') { $sql = "REPLACE INTO " . $db_prefix . "img_group " . "(groupid, collectionid, imageid) " . "VALUES (" . $db->qstr($mygroupid) . " ," . $db->qstr($cid) . " ," . $db->qstr($imageid) . ")"; $rs = @$db->Execute($sql); } else { if ($val == 'del') { $sql = "DELETE FROM " . $db_prefix . "img_group " . "WHERE groupid=" . $db->qstr($mygroupid) . " " . "AND collectionid=" . $db->qstr($cid) . " " . "AND imageid=" . $db->qstr($imageid); $rs = @$db->Execute($sql); } } } } else { $rs = false; } if (!$rs) { $smarty->assign($params['result'], 'failed to ' . $action . ' group ' . $mygroupid); } else { $smarty->assign($params['result'], $action . 'ed group ' . $mygroupid . ' successfully'); } if (!empty($params['sql'])) { $smarty->assign($params['sql'], $sql); } }
function smarty_function_archaeology_element($params, &$smarty) { if (empty($params['fieldnames'])) { $smarty->trigger_error("assign: missing 'fieldnames' parameter"); return; } if (empty($params['values'])) { $smarty->trigger_error("assign: missing 'values' parameter"); return; } if (empty($params['query'])) { $smarty->trigger_error("assign: missing 'query' parameter"); return; } else { $query = $params['query']; } if (empty($params['element'])) { $smarty->trigger_error("assign: missing 'element' parameter"); return; } else { $element = $params['element']; } //debug($query); global $db, $db_prefix; extractID($query['id'], $collectionid, $imageid); $fieldnames = array(); $values = array(); // load fieldnames and values for the specified element $sql = "SELECT `" . $element . "_fn` as fn, `" . $element . "` as value " . "FROM {$db_prefix}archaeology " . "WHERE" . " collectionid=" . $collectionid . " AND imageid=" . $imageid; $row = $db->GetRow($sql); /* if (trim($row['fn'] != "")) { $fieldnames = explode("; ",trim($row['fn'])); } if (trim($row['value'] != "")) { $values = explode("; ",trim($row['value'])); } */ $fieldnames = $row['fn']; $values = $row['value']; /* print_r($fieldnames); print_r($values); */ $smarty->assign($params['fieldnames'], $fieldnames); $smarty->assign($params['values'], $values); if (!empty($params['sql'])) { $smarty->assign($params['sql'], $sql); } }
function smarty_function_src_list($params, &$smarty) { if (empty($params['var'])) { $smarty->trigger_error("assign: missing 'var' parameter"); return; } global $db, $db_prefix, $query; extractID($query['id'], $collectionid, $imageid); $sql = "SELECT DISTINCT literature,isbn FROM {$db_prefix}meta WHERE literature LIKE " . $db->qstr('%' . $query['literature'] . '%') . " OR isbn "; $page = isset($query['page']) ? intval($query['page']) : 1; $defaultpagesize = 30; $pagesize = isset($query['pagesize']) ? intval($query['pagesize']) : $defaultpagesize; if ($pagesize < 1 || $pagesize > 500) { $pagesize = $defaultpagesize; } if (isset($query['next'])) { $page++; } if (isset($query['prev'])) { $page--; } if (isset($query['new'])) { $page = 1; } if ($page < 1) { $page = 1; } $rs = $db->PageExecute($sql, $pagesize, $page); $result = array(); $result['lastpage'] = $rs->LastPageNo(); $result['maxrecords'] = $rs->MaxRecordCount(); $result['rs'] = array(); while (!$rs->EOF) { array_walk($rs->fields, '__stripslashes'); $result['rs'][] = $rs->fields; $rs->MoveNext(); } $rs->Close(); if ($page > $result['lastpage']) { $page = $result['lastpage']; } $result['page'] = $page; $result['pagesize'] = $pagesize; $smarty->assign($params['var'], $result); if (!empty($params['sql'])) { $smarty->assign($params['sql'], $sql); } }
function smarty_function_save_image($params, &$smarty) { global $_REQUEST, $db_prefix, $db, $user; if (empty($params['error'])) { $smarty->trigger_error("save_image: missing 'error' parameter"); return; } $edit = $_REQUEST['edit']; if ($edit['loadtype'] != 'save') { return; } if (!$user['editor']) { $error = "Insufficient Rights"; $smarty->assign($params['error'], $error); return; } extractID($edit['id'], $collectionid, $imageid); $sql = "SELECT status FROM {$db_prefix}meta WHERE collectionid={$collectionid} AND imageid={$imageid}"; $status = $db->GetOne($sql); if ($user['admin']) { $status = $edit['status']; } else { if ($user['editor']) { $status = $edit['status'] == 'reviewed' ? 'edited' : $edit['status']; } } // If the name1id, name2id or locationid is "new", check to see whether it does actually already exist. // if not, insert the new name into the DB and set the id $name1 = get_or_set_values($db, $db_prefix, $edit['id'], 'name', $edit['name1text'], $edit['name1id']); if (isset($name1['is_error'])) { $smarty->assign($params['error'], $name1['error_msg']); return; } $name2 = get_or_set_values($db, $db_prefix, $edit['id'], 'name', $edit['name2text'], $edit['name2id']); if (isset($name2['is_error'])) { $smarty->assign($params['error'], $name2['error_msg']); return; } $location = get_or_set_values($db, $db_prefix, $edit['id'], 'location', $edit['city'], $edit['locationid']); if (isset($location['is_error'])) { $smarty->assign($params['error'], $location['error_msg']); return; } $export_systems = array('prometheus', 'sid', 'unimedia'); $exports = ''; foreach ($export_systems as $system) { $exports .= ", exp_{$system} = " . (int) (!empty($edit['export'][$system])); } $datestring = trim($edit['dating']); $sql = "UPDATE {$db_prefix}meta\r\n SET `type`=" . $db->qstr($edit['type']) . "\r\n ,`status`=" . $db->qstr($status) . "\r\n ,name1id='{$name1['id']}'\r\n ,name2id='{$name2['id']}'\r\n ,locationid='{$location['id']}'\r\n ,name1=" . $db->qstr($name1['name']) . "\r\n ,name2=" . $db->qstr($name2['name']) . "\r\n ,location=" . $db->qstr($location['location']) . "\r\n ,name1sounds=" . $db->qstr($name1['sounds']) . "\r\n ,name2sounds=" . $db->qstr($name2['sounds']) . "\r\n ,locationsounds=" . $db->qstr($location['sounds']) . "\r\n ,addition=" . $db->qstr(trim($edit['addition'])) . "\r\n ,title=" . $db->qstr(trim($edit['title'])) . "\r\n ,dating=" . $db->qstr($datestring) . "\r\n ,material=" . $db->qstr(trim($edit['material'])) . "\r\n ,technique=" . $db->qstr(trim($edit['technique'])) . "\r\n ,format=" . $db->qstr(trim($edit['format'])) . "\r\n ,institution=" . $db->qstr(trim($edit['institution'])) . "\r\n ,literature=" . $db->qstr(trim($edit['literature'])) . "\r\n ,page=" . $db->qstr(trim($edit['page'])) . "\r\n ,figure=" . $db->qstr(trim($edit['figure'])) . "\r\n ,`table`=" . $db->qstr(trim($edit['table'])) . "\r\n ,isbn=" . $db->qstr(trim($edit['isbn'])) . "\r\n ,keyword=" . $db->qstr(trim($edit['keyword'])) . "\r\n ,metacreator=" . $db->qstr(trim($edit['metacreator'])) . "\r\n ,metaeditor=" . $db->qstr(trim($edit['metaeditor'])) . "\r\n ,imagerights=" . $db->qstr(trim($edit['imagerights'])) . "\r\n ,commentary=" . $db->qstr(trim($edit['commentary'])) . "\r\n ,modify_date=NOW()" . $exports . "\r\nWHERE\r\n collectionid={$collectionid}\r\n AND imageid={$imageid};"; //die($sql); $sqls = $sql; if (!$db->Execute($sql)) { $error = $db->ErrorMsg() . "[{$sql}]"; } else { $sql = "DELETE FROM {$db_prefix}dating WHERE collectionid={$collectionid} AND imageid={$imageid};"; $sqls .= "\n" . $sql; if (!$db->Execute($sql)) { $error .= "\n" . $db->ErrorMsg() . "[{$sql}]"; } else { dating($db, $datestring, $datelist); foreach ($datelist as $date) { $sql = "INSERT INTO {$db_prefix}dating(collectionid,imageid,`from`,`to`) VALUES('{$collectionid}', '{$imageid}', {$date['from']}, {$date['to']})"; $sqls .= "\n" . $sql; if (!$db->Execute($sql)) { $error .= "\n" . $db->ErrorMsg() . "[{$sql}]"; } } $sql = "update {$db_prefix}dating d, {$db_prefix}meta m" . " set d.metaid=m.id" . " where m.collectionid = '{$collectionid}' and m.imageid = '{$imageid}'" . " and m.collectionid = d.collectionid and m.imageid = d.imageid"; if (!$db->Execute($sql)) { $error .= "\n" . $db->ErrorMsg() . "[{$sql}]"; } } } $smarty->assign($params['error'], $error); if (isset($params['sql'])) { $smarty->assign($params['sql'], $sqls); } }
function smarty_function_mygroup_change($params, &$smarty) { if (empty($params['result'])) { $smarty->trigger_error("assign: missing 'result' parameter"); return; } global $db, $db_prefix; /* print_r($params); $db->debug = true; */ if (empty($params['gid'])) { $smarty->trigger_error("assign: missing 'gid' parameter"); return; } else { $mygroupid = $params['gid']; } if (empty($params['action'])) { $smarty->trigger_error("assign: missing 'action' parameter"); return; } else { $action = $params['action']; } if (empty($params['changes'])) { $smarty->trigger_error("assign: missing 'changes' parameter"); return; } else { $changes = $params['changes']; } if ($action == 'update') { foreach ($changes as $key => $val) { extractID($key, $cid, $imageid); if ($val == 'add') { $sql = "REPLACE INTO " . $db_prefix . "img_group " . "(groupid, collectionid, imageid) " . "VALUES (" . $db->qstr($mygroupid) . " ," . $db->qstr($cid) . " ," . $db->qstr($imageid) . ")"; $rs = @$db->Execute($sql); } else { if ($val == 'del') { // search all subgroups, look where we can find the image, then delete it $sql = "SELECT * FROM " . $db_prefix . "img_group WHERE " . "collectionid=" . $db->qstr($cid) . " AND imageid=" . $db->qstr($imageid) . get_groupid_where($groupid, $db, $db_prefix, true); $rs = $db->Execute($sql); while (!$rs->EOF) { $sql2 = "DELETE FROM " . $db_prefix . "img_group " . "WHERE groupid=" . $db->qstr($rs->fields['groupid']) . " " . "AND collectionid=" . $db->qstr($cid) . " " . "AND imageid=" . $db->qstr($imageid); $rs2 = @$db->Execute($sql2); $rs->MoveNext(); } } } } } else { $rs = false; } if (!$rs) { $smarty->assign($params['result'], 'failed to ' . $action . ' group ' . $mygroupid); } else { $smarty->assign($params['result'], $action . 'ed group ' . $mygroupid . ' successfully'); } if (!empty($params['sql'])) { $smarty->assign($params['sql'], $sql); } }
echo $req->getResponseBody(); } } else { sendImageHTTP('empty.jpg'); } } else { //local image if (isset($_REQUEST['debug'])) { $debug = $_REQUEST['debug']; } else { $debug = false; } if ($debug) { echo "Local image\n<br>\n"; } extractID($id, $collectionid, $imageid); $sql = "SELECT filename,base FROM {$db_prefix}img,{$db_prefix}img_base WHERE {$db_prefix}img.imageid=" . intval($imageid) . " AND {$db_prefix}img.collectionid=" . intval($collectionid) . " AND {$db_prefix}img.collectionid={$db_prefix}img_base.collectionid" . " AND {$db_prefix}img.img_baseid={$db_prefix}img_base.img_baseid"; $row = @$db->GetRow($sql); $base = $row['base']; $file = intval($imageid) . '.jpg'; if ($base != '' && $base[strlen($base) - 1] != DIRECTORY_SEPARATOR) { $base .= DIRECTORY_SEPARATOR; } if ($debug) { echo "Base Directory: {$base}\n<br>\n"; } $file_exists_test = false; foreach ($formats_suffix as $mime => $suffix) { $path = $base . 'cache' . DIRECTORY_SEPARATOR . $resolution . DIRECTORY_SEPARATOR . intval($collectionid) . '-' . intval($imageid) . "." . $suffix; // $path = $base.$resolution.'/'.intval($collectionid).'-'.intval($imageid).".".$suffix; // echo "Test-Path: $path";
function smarty_function_save_image($params, &$smarty) { global $_REQUEST, $db_prefix, $db, $user; if (empty($params['error'])) { $smarty->trigger_error("save_image: missing 'error' parameter"); return; } $edit = $_REQUEST['edit']; // echo('function.save_image.php: '.$edit['type'].' - Einsprungpunkt realisieren'."\n<br>\n"); if ($edit['loadtype'] != 'save') { return; } if (!$user['editor']) { $error = "Insufficient Rights"; $smarty->assign($params['error'], $error); return; } extractID($edit['id'], $collectionid, $imageid); $sql = "SELECT status FROM {$db_prefix}meta WHERE collectionid={$collectionid} AND imageid={$imageid}"; $status = $db->GetOne($sql); if ($user['admin']) { $status = $edit['status']; } else { if ($user['editor']) { $status = $edit['status'] == 'reviewed' ? 'edited' : $edit['status']; } } print_r($edit); $db->debug = true; // If the name1id, name2id or locationid is "new", check to see whether it does actually already exist. // if not, insert the new name into the DB and set the id $name1 = get_or_set_values($db, $db_prefix, $edit['id'], 'name', $edit['name1text'], $edit['name1id']); if (isset($name1['is_error'])) { $smarty->assign($params['error'], $name1['error_msg']); return; } $name2 = get_or_set_values($db, $db_prefix, $edit['id'], 'name', $edit['name2text'], $edit['name2id']); if (isset($name2['is_error'])) { $smarty->assign($params['error'], $name2['error_msg']); return; } $location = get_or_set_values($db, $db_prefix, $edit['id'], 'location', $edit['city'], $edit['locationid']); if (isset($location['is_error'])) { $smarty->assign($params['error'], $location['error_msg']); return; } $export_systems = array('prometheus', 'sid', 'unimedia'); $exports = ''; foreach ($export_systems as $system) { $exports .= ", exp_{$system} = " . (int) (!empty($edit['export'][$system])); } $datestring = trim($edit['dating']); $sql = "UPDATE {$db_prefix}meta\n SET `type`=" . $db->qstr($edit['type']) . "\n ,`status`=" . $db->qstr($status) . "\n ,name1id='{$name1['id']}'\n ,name2id='{$name2['id']}'\n ,locationid='{$location['id']}'\n ,name1=" . $db->qstr($name1['name']) . "\n ,name2=" . $db->qstr($name2['name']) . "\n ,location=" . $db->qstr($location['location']) . "\n ,name1sounds=" . $db->qstr($name1['sounds']) . "\n ,name2sounds=" . $db->qstr($name2['sounds']) . "\n ,locationsounds=" . $db->qstr($location['sounds']) . "\n ,addition=" . $db->qstr(trim($edit['addition'])) . "\n ,title=" . $db->qstr(trim($edit['title'])) . "\n ,dating=" . $db->qstr($datestring) . "\n ,material=" . $db->qstr(trim($edit['material'])) . "\n ,technique=" . $db->qstr(trim($edit['technique'])) . "\n ,format=" . $db->qstr(trim($edit['format'])) . "\n ,institution=" . $db->qstr(trim($edit['institution'])) . "\n ,literature=" . $db->qstr(trim($edit['literature'])) . "\n ,page=" . $db->qstr(trim($edit['page'])) . "\n ,figure=" . $db->qstr(trim($edit['figure'])) . "\n ,`table`=" . $db->qstr(trim($edit['table'])) . "\n ,isbn=" . $db->qstr(trim($edit['isbn'])) . "\n ,keyword=" . $db->qstr(trim($edit['keyword'])) . "\n ,metacreator=" . $db->qstr(trim($edit['metacreator'])) . "\n ,metaeditor=" . $db->qstr(trim($edit['metaeditor'])) . "\n ,imagerights=" . $db->qstr(trim($edit['imagerights'])) . "\n ,commentary=" . $db->qstr(trim($edit['commentary'])) . "\n ,modify_date=NOW()" . $exports . "\nWHERE\n collectionid={$collectionid}\n AND imageid={$imageid};"; //die($sql); $sqls = $sql; if (!$db->Execute($sql)) { $error = $db->ErrorMsg() . "[{$sql}]"; } else { $sql = "DELETE FROM {$db_prefix}dating WHERE collectionid={$collectionid} AND imageid={$imageid};"; $sqls .= "\n" . $sql; if (!$db->Execute($sql)) { $error .= "\n" . $db->ErrorMsg() . "[{$sql}]"; } else { dating($db, $datestring, $datelist); foreach ($datelist as $date) { $sql = "INSERT INTO {$db_prefix}dating(collectionid,imageid,`from`,`to`) VALUES('{$collectionid}', '{$imageid}', {$date['from']}, {$date['to']})"; $sqls .= "\n" . $sql; if (!$db->Execute($sql)) { $error .= "\n" . $db->ErrorMsg() . "[{$sql}]"; } } $sql = "update {$db_prefix}dating d, {$db_prefix}meta m" . " set d.metaid=m.id" . " where m.collectionid = '{$collectionid}' and m.imageid = '{$imageid}'" . " and m.collectionid = d.collectionid and m.imageid = d.imageid"; if (!$db->Execute($sql)) { $error .= "\n" . $db->ErrorMsg() . "[{$sql}]"; } } } // clear temporary values in session if (isset($_SESSION['tempvals'])) { unset($_SESSION['tempvals']); } // save additional fields for archaeology if ($edit['type'] == 'archaeology') { // $db->debug = true; $sql = "DELETE FROM {$db_prefix}archaeology WHERE collectionid={$collectionid} AND imageid={$imageid};"; $sqls .= "\n" . $sql; if (!$db->Execute($sql)) { $error .= "\n" . $db->ErrorMsg() . "[{$sql}]"; } else { $sql = "INSERT INTO {$db_prefix}archaeology (" . " `collectionid`, `imageid`" . " ,`category_fn`, `category`" . " ,`iconography_fn`, `iconography` " . " ,`dating_ext_fn`, `dating_ext` " . " ,`material_ext_fn`, `material_ext` " . " ,`location_ext_fn`, `location_ext` " . " ,`obj_culture_fn`, `obj_culture` " . " ,`obj_culthistory_fn`, `obj_culthistory` " . " ,`obj_topography_fn`, `obj_topography` " . " ,`obj_arch_structelems_fn`, `obj_arch_structelems` " . " ,`obj_arch_tenement_fn`, `obj_arch_tenement` " . " ,`obj_arch_funcbuild_fn`, `obj_arch_funcbuild` " . " ,`obj_arch_amusement_fn`, `obj_arch_amusement` " . " ,`obj_arch_economy_fn`, `obj_arch_economy` " . " ,`obj_arch_sacral_fn`, `obj_arch_sacral` " . " ,`obj_arch_sepulchre_fn`, `obj_arch_sepulchre` " . " ,`obj_arch_military_fn`, `obj_arch_military` " . " ,`obj_mosaic_fn`, `obj_mosaic` " . " ,`obj_painting_fn`, `obj_painting` " . " ,`obj_sculpture_fn`, `obj_sculpture` " . " ,`obj_portrait_fn`, `obj_portrait` " . " ,`obj_ceramic_vascularforms_fn`, `obj_ceramic_vascularforms` " . " ,`obj_ceramic_groups_fn`, `obj_ceramic_groups` " . " ,`obj_toreutics_fn`, `obj_toreutics` " . " ,`obj_jewellery_fn`, `obj_jewellery` " . " ,`obj_glass_fn`, `obj_glass` " . " ,`obj_glyptics_fn`, `obj_glyptics` " . " ,`obj_numismatics_fn`, `obj_numismatics` " . " ,`obj_textiles_fn`, `obj_textiles` " . " ,`obj_misc_fn`, `obj_misc` " . " ,`obj_epigraphy_fn`, `obj_epigraphy` " . " ,`obj_methods_fn`, `obj_methods` " . " ,`obj_reception_fn`, `obj_reception` " . " ) VALUES (" . $collectionid . "," . $imageid . "," . $db->qstr(trim($edit['category_fn'])) . "," . $db->qstr(trim($edit['category'])) . "," . $db->qstr(trim($edit['iconography_fn'])) . "," . $db->qstr(trim($edit['iconography'])) . "," . $db->qstr(trim($edit['dating_ext_fn'])) . "," . $db->qstr(trim($edit['dating_ext'])) . "," . $db->qstr(trim($edit['material_ext_fn'])) . "," . $db->qstr(trim($edit['material_ext'])) . "," . $db->qstr(trim($edit['location_ext_fn'])) . "," . $db->qstr(trim($edit['location_ext'])) . "," . $db->qstr(trim($edit['obj_culture_fn'])) . "," . $db->qstr(trim($edit['obj_culture'])) . "," . $db->qstr(trim($edit['obj_culthistory_fn'])) . "," . $db->qstr(trim($edit['obj_culthistory'])) . "," . $db->qstr(trim($edit['obj_topography_fn'])) . "," . $db->qstr(trim($edit['obj_topography'])) . "," . $db->qstr(trim($edit['obj_arch_structelems_fn'])) . "," . $db->qstr(trim($edit['obj_arch_structelems'])) . "," . $db->qstr(trim($edit['obj_arch_tenement_fn'])) . "," . $db->qstr(trim($edit['obj_arch_tenement'])) . "," . $db->qstr(trim($edit['obj_arch_funcbuild_fn'])) . "," . $db->qstr(trim($edit['obj_arch_funcbuild'])) . "," . $db->qstr(trim($edit['obj_arch_amusement_fn'])) . "," . $db->qstr(trim($edit['obj_arch_amusement'])) . "," . $db->qstr(trim($edit['obj_arch_economy_fn'])) . "," . $db->qstr(trim($edit['obj_arch_economy'])) . "," . $db->qstr(trim($edit['obj_arch_sacral_fn'])) . "," . $db->qstr(trim($edit['obj_arch_sacral'])) . "," . $db->qstr(trim($edit['obj_arch_sepulchre_fn'])) . "," . $db->qstr(trim($edit['obj_arch_sepulchre'])) . "," . $db->qstr(trim($edit['obj_arch_military_fn'])) . "," . $db->qstr(trim($edit['obj_arch_military'])) . "," . $db->qstr(trim($edit['obj_mosaic_fn'])) . "," . $db->qstr(trim($edit['obj_mosaic'])) . "," . $db->qstr(trim($edit['obj_painting_fn'])) . "," . $db->qstr(trim($edit['obj_painting'])) . "," . $db->qstr(trim($edit['obj_sculpture_fn'])) . "," . $db->qstr(trim($edit['obj_sculpture'])) . "," . $db->qstr(trim($edit['obj_portrait_fn'])) . "," . $db->qstr(trim($edit['obj_portrait'])) . "," . $db->qstr(trim($edit['obj_ceramic_vascularforms_fn'])) . "," . $db->qstr(trim($edit['obj_ceramic_vascularforms'])) . "," . $db->qstr(trim($edit['obj_ceramic_groups_fn'])) . "," . $db->qstr(trim($edit['obj_ceramic_groups'])) . "," . $db->qstr(trim($edit['obj_toreutics_fn'])) . "," . $db->qstr(trim($edit['obj_toreutics'])) . "," . $db->qstr(trim($edit['obj_jewellery_fn'])) . "," . $db->qstr(trim($edit['obj_jewellery'])) . "," . $db->qstr(trim($edit['obj_glass_fn'])) . "," . $db->qstr(trim($edit['obj_glass'])) . "," . $db->qstr(trim($edit['obj_glyptics_fn'])) . "," . $db->qstr(trim($edit['obj_glyptics'])) . "," . $db->qstr(trim($edit['obj_numismatics_fn'])) . "," . $db->qstr(trim($edit['obj_numismatics'])) . "," . $db->qstr(trim($edit['obj_textiles_fn'])) . "," . $db->qstr(trim($edit['obj_textiles'])) . "," . $db->qstr(trim($edit['obj_misc_fn'])) . "," . $db->qstr(trim($edit['obj_misc'])) . "," . $db->qstr(trim($edit['obj_epigraphy_fn'])) . "," . $db->qstr(trim($edit['obj_epigraphy'])) . "," . $db->qstr(trim($edit['obj_methods_fn'])) . "," . $db->qstr(trim($edit['obj_methods'])) . "," . $db->qstr(trim($edit['obj_reception_fn'])) . "," . $db->qstr(trim($edit['obj_reception'])) . ")"; $sqls .= "\n" . $sql; if (!$db->Execute($sql)) { $error = $db->ErrorMsg() . "[{$sql}]"; } } } // save additional fields for architecture if ($edit['type'] == 'architecture') { // $db->debug = true; $sql = "DELETE FROM {$db_prefix}architecture WHERE collectionid={$collectionid} AND imageid={$imageid};"; $sqls .= "\n" . $sql; if (!$db->Execute($sql)) { $error .= "\n" . $db->ErrorMsg() . "[{$sql}]"; } else { $sql = "INSERT INTO {$db_prefix}architecture (" . " `collectionid`, `imageid` " . ", `functiontype_fn`, `functiontype` " . ", `formtype_fn`, `formtype` " . ", `draught_fn`, `draught` " . ", `classification_fn`, `classification`" . " ) VALUES (" . $collectionid . "," . $imageid . "," . $db->qstr(trim($edit['functiontype_fn'])) . "," . $db->qstr(trim($edit['functiontype'])) . "," . $db->qstr(trim($edit['formtype_fn'])) . "," . $db->qstr(trim($edit['formtype'])) . "," . $db->qstr(trim($edit['draught_fn'])) . "," . $db->qstr(trim($edit['draught'])) . "," . $db->qstr(trim($edit['classification_fn'])) . "," . $db->qstr(trim($edit['classification'])) . ")"; $sqls .= "\n" . $sql; if (!$db->Execute($sql)) { $error = $db->ErrorMsg() . "[{$sql}]"; } } } $smarty->assign($params['error'], $error); if (isset($params['sql'])) { $smarty->assign($params['sql'], $sqls); } }
global $imagemagick_identify; global $imagemagick_convert; global $file_binary; // read sessiond id from get/post if (isset($_REQUEST['PHPSESSID'])) { $sessionid = $_REQUEST['PHPSESSID']; } else { $sessionid = ''; } if (!empty($_REQUEST['query'])) { $query = $_REQUEST['query']; } else { die('No query string given'); } if (isset($query['id'])) { extractID($query['id'], $collectionid, $imageid); } else { die('No id given'); } if (isset($query['process'])) { $process = $query['process']; } else { $process = 1; } // $db->debug = true; $sql = "SELECT filename, {$db_prefix}img.img_baseid as baseid, base, host FROM {$db_prefix}img,{$db_prefix}img_base WHERE {$db_prefix}img.imageid=" . intval($imageid) . " AND {$db_prefix}img.collectionid=" . intval($collectionid) . " AND {$db_prefix}img.collectionid={$db_prefix}img_base.collectionid" . " AND {$db_prefix}img.img_baseid={$db_prefix}img_base.img_baseid"; $row = $db->GetRow($sql); $base = $row['base']; if ($base != '' && $base[strlen($base) - 1] != DIRECTORY_SEPARATOR) { $base .= DIRECTORY_SEPARATOR; }
function smarty_function_query_ext_element($params, &$smarty) { if (empty($params['type'])) { $smarty->trigger_error("assign: missing 'type' parameter"); return; } else { $type = $params['type']; } if (empty($params['fieldnames'])) { $smarty->trigger_error("assign: missing 'fieldnames' parameter"); return; } if (empty($params['values'])) { $smarty->trigger_error("assign: missing 'values' parameter"); return; } if (empty($params['query'])) { $smarty->trigger_error("assign: missing 'query' parameter"); return; } else { $query = $params['query']; } if (empty($params['element'])) { $smarty->trigger_error("assign: missing 'element' parameter"); return; } else { $element = $params['element']; } //debug($query); global $db, $db_prefix; $id = $query['id']; extractID($id, $collectionid, $imageid); $fieldnames = array(); $values = array(); global $_SESSION; // if (isset($_SESSION['tempvals'][$id][$element."_fn"]) && isset($_SESSION['tempvals'][$id][$element]) && ($_SESSION['tempvals'][$id][$element."_fn"] != '') && ($_SESSION['tempvals'][$id][$element] != '')) if (isset($_SESSION['tempvals'][$id][$element . "_fn"]) && isset($_SESSION['tempvals'][$id][$element])) { $fieldnames = $_SESSION['tempvals'][$id][$element . "_fn"]; $values = $_SESSION['tempvals'][$id][$element]; $sql = "element {$element} loaded for id {$id} from session"; } else { // load fieldnames and values for the specified element $sql = "SELECT `" . $element . "_fn` as fn, `" . $element . "` as value " . "FROM {$db_prefix}{$type} " . "WHERE" . " collectionid=" . $collectionid . " AND imageid=" . $imageid; $row = $db->GetRow($sql); /* if (trim($row['fn'] != "")) { $fieldnames = explode("; ",trim($row['fn'])); } if (trim($row['value'] != "")) { $values = explode("; ",trim($row['value'])); } */ $fieldnames = $row['fn']; $values = $row['value']; } /* print_r($fieldnames); print_r($values); */ $smarty->assign($params['fieldnames'], $fieldnames); $smarty->assign($params['values'], $values); if (!empty($params['sql'])) { $smarty->assign($params['sql'], $sql); } }