Webfront-Kopierer direkt (ohne Neustarts etc)

Mein Script von gestern war etwas sehr umständlich, da aber die Funktionen zum WFC nicht in der Anleitung standen (zumindest hab ich sie nicht gefunden) dachte ich es gäbe keinen direkten Zugriff. Aber in der Console habe ich jetzt doch was gefunden. Das Script kopiert den WFC mit der ID 11193 (müsst ihr halt austauschen) in einen neuen WFC , übernimmt alle Elemente (ohne den ganzen Neustart-Krams) aber leider kann er die Position nicht setzen (anscheinend können das die Funktionen nicht). Trotzdem sollte ein nahezu 1:1-WFC bei rauskommen. Bewusst habe ich die Daten bzgl. Login, Einstellungen, IP’s usw. nicht mit kopiert, das kann ja jeder selber ergänzen, wenn er das auch haben möchte.

Also, Script anlegen, den Inhalt hier unten reinkopieren, ID ändern und starten. Fertig ist die WFC-Kopie.

<?
$quelle = 11193 /*[MeinTollesWebfont]*/;
$wf = WFC_GetItems($quelle);
$Quellobjekt = IPS_GetObject($quelle);
$Quellinstance = IPS_GetInstance($quelle);
$NeuesWF = IPS_CreateInstance($Quellinstance['ModuleInfo']['ModuleID']);
IPS_SetName($NeuesWF, $Quellobjekt['ObjectName']);
IPS_SetInfo($NeuesWF, $Quellobjekt['ObjectInfo']);
IPS_SetIcon($NeuesWF, $Quellobjekt['ObjectIcon']);
IPS_SetPosition($NeuesWF, $Quellobjekt['ObjectPosition']);
IPS_SetHidden($NeuesWF, $Quellobjekt['ObjectIsHidden']);
IPS_SetIdent($NeuesWF, $Quellobjekt['ObjectIdent']);

$neuesWFItems = WFC_GetItems($NeuesWF);
foreach ($neuesWFItems as $item) {
WFC_DeleteItem($NeuesWF, $item['ID']);
}
$neuesWFItems = WFC_GetItems($NeuesWF);

foreach($wf as $item) {
WFC_AddItem($NeuesWF, $item['ID'], $item['ClassName'],  $item['Configuration'],  $item['ParentID']);
WFC_UpdatePosition($NeuesWF , $item['ID'], $item['Position']);
WFC_SetVisible($NeuesWF , $item['Visible']);
}
$neuesWFItems = WFC_GetItems($NeuesWF);

print_r($neuesWFItems);
?>

Danke, für das Skript. Habe es gerade mal ausprobiert.
Die Elemente sind da, aber die meisten Elemente sind spiegelverkehrt angeordnet.
Auch liegen jetzt viele Elemente übereinander. Ist ausbaufähig leider noch nicht perfekt.
Ich habe mal Orginal und Kopie mit angehangen.

OK, probier das Script nochmal, hab da noch was entdeckt was helfen könnte. Hab es oben geupdatet!

Du bist mein persönlicher Held!!!
Klappt 1A, du hast mir so viel Arbeit gespart.
Vielen Dank für dieses tolle Skript.

Gerne, kein Problem. Besteht Bedarf die anderen Daten auch zu übernehmen (Passwörter, IPs, Einstellungen etc.) ? Dann hänge ich das noch dran.

Ich kann jetzt nur für mich sprechen, eher nicht, sind ja nur kleinere Einstellungen.
Kein Vergleich mit dem Krampf den man vorher beim erstellen hatte.
Die 2min zum Anpassen mache ich dann gerne :smiley:

Gut, dann lasse ich es erstmal so. Falls es doch noch unschärfen hat, einfach kurz melden, dann schau ich es mir nochmal an. Bei meinen Tests konnte ich aber nichts mehr feststellen.

In dem anderen Thread hatten ja so einige danach gerufen, vielleicht testen die es ja auch mal und melden ob es funktioniert.

Also ich habe zwar nicht danach gerufen aber mal spaßhalber getestet.
Funktioniert großartig. Jetzt werde ich künftige Änderungen am WebFront erst einmal mit der Kopie testen.

Prima. Danke Dir.