<?php
// Automatisches Verstecken aller Variablen ohne zugeordnetem Variablenprofil
// Automatisches Verstecken und Umbenennen aller Objekte mit Punkt im Namen
$ids = IPS_GetVariableList();
$hideIDs = array();
foreach ($ids as $id)
{
$hide = true;
$var = IPS_GetVariable($id);
if ($var['VariableCustomProfile'] != '')
{
$hide = false;
}
else
{
$parentID = IPS_GetParent($id);
if (IPS_InstanceExists($parentID))
{
$idents = IPS_GetStatusVariableIdents($parentID);
foreach ($idents as $ident)
{
$svar = IPS_GetStatusVariable($parentID, $ident);
if ($id == $svar['VariableID'] && $svar['VariableProfile'] != '')
{
$hide = false;
break;
}
}
}
}
if ($hide)
{
$obj = IPS_GetObject($id);
if (!$obj['ObjectIsHidden'])
{
$hideIDs[] = $id;
}
}
}
echo "Hidden Variables
================
";
if (count($hideIDs) > 0)
{
foreach ($hideIDs as $id)
{
IPS_SetHidden($id, true);
echo $id.": ".IPS_GetLocation($id)."
";
}
}
else
{
echo "none!
";
}
$ids = IPS_GetObjectList();
$hideIDs = array();
foreach ($ids as $id)
{
$name = IPS_GetName($id);
if (strlen($name) > 1 && $name[0] == '.')
{
$hideIDs[] = $id;
}
}
echo "
Re-Hidden Objects
===================
";
if (count($hideIDs) > 0)
{
foreach ($hideIDs as $id)
{
IPS_SetHidden($id, true);
//Diese zwei Zeilen löschen den . (Punkt) aus dem Namen. Kann evtl. Probleme mit automatisierten Skripte geben.
//$name = IPS_GetName($id);
//IPS_SetName($id, substr($name, 1, strlen($name)));
echo $id.": ".IPS_GetLocation($id)."
";
}
}
else
{
echo "none!
";
}
?>
geht das mit 2.4 noch ??
Parse error: syntax error, unexpected T_VARIABLE in [Dummy\Verstecken] on line 7
Da ist bei dir bestimmt was beim Copy&Paste schief gegangen.
paresy
Jepp, einfach nochmal und nu gehts
Hi,
bei mir gehts auch, Danke!