* MetaForm Addon * @author markus[dot]staab[at]redaxo[dot]de Markus Staab * * @package redaxo4 * @version $Id: index.inc.php,v 1.5 2008/03/26 18:54:34 kills Exp $ */ // Parameter $Basedir = dirname(__FILE__); $page = rex_request('page', 'string'); $subpage = rex_request('subpage', 'string'); $func = rex_request('func', 'string'); // Include Header and Navigation require $REX['INCLUDE_PATH'] . '/layout/top.php'; // Build Subnavigation $subpages = array(array('', 'Artikel'), array('categories', 'Kategorien'), array('media', 'Medien')); rex_title('Metainformationen erweitern', $subpages); // Include Current Page switch ($subpage) { case 'media': $prefix = 'med_'; break; case 'categories': $prefix = 'cat_'; break; default: $prefix = 'art_'; } $metaTable = a62_meta_table($prefix); require $Basedir . '/field.inc.php'; // Include Footer require $REX['INCLUDE_PATH'] . '/layout/bottom.php';
function a62_delete_field($fieldIdOrName) { global $REX, $I18N; // Löschen anhand der FieldId if (is_int($fieldIdOrName)) { $fieldQry = 'SELECT * FROM ' . $REX['TABLE_PREFIX'] . '62_params WHERE field_id=' . $fieldIdOrName . ' LIMIT 2'; $invalidField = $I18N->msg('minfo_field_error_invalid_fieldid'); } else { if (is_string($fieldIdOrName)) { $fieldQry = 'SELECT * FROM ' . $REX['TABLE_PREFIX'] . '62_params WHERE name="' . addslashes($fieldIdOrName) . '" LIMIT 2'; $invalidField = $I18N->msg('minfo_field_error_invalid_name'); } else { trigger_error('MetaInfos: Unexpected type for $fieldIdOrName!', E_USER_ERROR); } } // Feld existiert? $sql = rex_sql::factory(); $fieldInfos = $sql->getArray($fieldQry); if ($sql->getRows() != 1) { return $invalidField; } $name = $fieldInfos[0]['name']; $field_id = $fieldInfos[0]['field_id']; $prefix = a62_meta_prefix($name); $metaTable = a62_meta_table($prefix); // Spalte existiert? $sql->setQuery('SELECT * FROM ' . $metaTable . ' LIMIT 1'); if (!in_array($name, $sql->getFieldnames())) { return $I18N->msg('minfo_field_error_invalid_name'); } $sql->setTable($REX['TABLE_PREFIX'] . '62_params'); $sql->setWhere('field_id=' . $field_id); if (!$sql->delete()) { return $sql->getError(); } $tableManager = new rex_a62_tableManager($metaTable); return $tableManager->deleteColumn($name); }