Problembehebung: Panelgroups - Fehler beim Löschen
Vielleicht ist es jemanden schon aufgefallen, dass man Panelgroups nicht löschen kann.
Wenn man auf das [X] hinter der Panelgroup klick kommt folgende Fehlermeldung:
Daran seid ihr jedoch nicht Schuld. Den Entwicklern ist ein kleiner Fehler unterlaufen.
Es wird keine Verbesserung mehr hochgeladen, da man diese Funktion nur äußerst selten benutzt und bald das neue IV 4 fertiggestellt ist.
Ich erkläre hier kurz, für alle die diesen Fehler beheben möchten, wie es geht:
Zuerst geht man in die Modulverwaltung und klickt auf das [E] hinter dem Modul Panelgroups.
Nun sucht man Zeile 23 mit folgendem Code:
Und ersetzt diesen mit:
Für faule Menschen, die sich nicht die Mühe machen wollen Zeile 23 zu suchen hier nochmal die komplette verbesserte Version:
Beachte: Dies ist der Code der aktuellen Version des IV3 und kann möglicherweise sich vom Aussehen und Handhabung etwas von anderen IV3-Versionen unterscheiden.
Wenn man auf das [X] hinter der Panelgroup klick kommt folgende Fehlermeldung:
|
|
Quellcode |
1 2 |
Fatal error: Bei dem Query: "SELECT * FROM cms_content_scripts WHERE 1" ist folgender Fehler aufgeterten: Table 'domain.cms_content_scripts' doesn't exist in /users/domain/www/files/dbcontroler.php on line 21 |
Daran seid ihr jedoch nicht Schuld. Den Entwicklern ist ein kleiner Fehler unterlaufen.
Es wird keine Verbesserung mehr hochgeladen, da man diese Funktion nur äußerst selten benutzt und bald das neue IV 4 fertiggestellt ist.
Ich erkläre hier kurz, für alle die diesen Fehler beheben möchten, wie es geht:
Zuerst geht man in die Modulverwaltung und klickt auf das [E] hinter dem Modul Panelgroups.
Nun sucht man Zeile 23 mit folgendem Code:
|
|
Quellcode |
1 |
$scripts = $db->get_assoc( $prefix."content_scripts", 1, "tables" ); |
Und ersetzt diesen mit:
|
|
Quellcode |
1 |
$scripts = $db->get_assoc( $prefix."admin_scripts", 1, "tables" ); |
Für faule Menschen, die sich nicht die Mühe machen wollen Zeile 23 zu suchen hier nochmal die komplette verbesserte Version:
|
|
Quellcode |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 |
<?php
// Einfügen und Bearbeiten
if( !empty( $_POST['name'] ) && !empty( $_POST['replace'] ))
if( !empty( $_GET['update'] ))
$db->id_update( $prefix."content_groups", array( "name" => $_POST['name'], "replace" => $_POST['replace'] ), $_GET['update'] );
else $db->insert( $prefix."content_groups", array( "name" => $_POST['name'], "replace" => $_POST['replace'] ));
// Panelgroup Löschen
if( !empty( $_GET['del'] )) {
if( empty( $_POST['replace'] )) {
$form = new form( MODUL_SELF."&del=".$_GET['del'] );
$replace[-1] = "Panels löschen";
foreach( $groups = $db->get( $prefix."content_groups" ) as $g )
if( $g['id'] != $_GET['del'] ) $replace[$g['id']] = $g['name'];
cbox_auf( "Panelgroup löschen" );
$form->add( 'replace', 'Neue Panelgroup', 0, "select", $replace );
$form->write( 'Löschen' );
cbox_zu();
} elseif( $_POST['replace'] != $_GET['del'] ) {
if( $_POST['replace'] == -1 ) {
$scripts = $db->get_assoc( $prefix."admin_scripts", 1, "tables" );
$panels = $db->get( $prefix."content_panels", "`group` = '$_GET[del]'" );
foreach( $panels as $pan )
foreach( explode( ",", $scripts[$panel['script']] ) as $table )
if( !empty( $table ))
$db->del( $prefix.trim( $table ), "panel = '$pan[id]'" );
$db->del( $prefix."content_panels", "`group` = '$_GET[del]'" );
} else $db->update( $prefix."content_panels", array( "group" => $_POST['replace'] ), "`group` = '$_GET[del]'" );
$db->id_del( $prefix."content_groups", $_GET['del'] );
msgbox( 'Die Panelgroup wurde erfolgreich gelöscht.', 'Panelgroup gelöscht' );
}
} else {
// Formular zum bearbeiten und erstellen
if( !empty( $_GET['edit'] )) {
$edit = $db->id_get( $prefix."content_groups", $_GET['edit'] );
cbox_auf( "Panelgroup bearbeiten" );
$form = new form( MODUL_SELF."&update=".$edit['id'] );
define( "BACKBUTTON", MODUL_SELF );
} else {
cbox_auf( "Panelgroup erstellen" );
$form = new form( MODUL_SELF );
}
$form->add( "name", "Name", $edit['name'] );
$form->add( "replace", "Platzhalter", $edit['replace'] );
$form->write( "Speichern" );
cbox_zu();
}
// Liste der Panelgroups
cbox_auf( "Panelgroups" );
$captions = array( "name" => "Name", "replace" => "Platzhalter" );
$groups = $db->get( $prefix."content_groups" );
$liste = new liste( $captions );
$liste->addop( "[X]", MODUL_SELF."&del=", false, "Löschen" );
$liste->addop( "[E]", MODUL_SELF."&edit=", false, "Bearbeiten" );
$liste->write( $groups, "100%" );
cbox_zu();
?>
|
Beachte: Dies ist der Code der aktuellen Version des IV3 und kann möglicherweise sich vom Aussehen und Handhabung etwas von anderen IV3-Versionen unterscheiden.