public function viewEditprofile($eventData) { $profQuery = \Innomatic\Core\InnomaticContainer::instance('\\Innomatic\\Core\\InnomaticContainer')->getCurrentDomain()->getDataAccess()->execute('SELECT * FROM domain_users_groups WHERE id=' . $eventData['profileid']); $profData = $profQuery->getFields(); $groupsQuery = \Innomatic\Core\InnomaticContainer::instance('\\Innomatic\\Core\\InnomaticContainer')->getCurrentDomain()->getDataAccess()->execute('SELECT * FROM domain_panels_groups ORDER BY name'); if ($groupsQuery->getNumberRows()) { $perm = new \Innomatic\Desktop\Auth\DesktopPanelAuthorizator(\Innomatic\Core\InnomaticContainer::instance('\\Innomatic\\Core\\InnomaticContainer')->getCurrentDomain()->getDataAccess(), $eventData['profileid']); $row = 0; $headers[0]['label'] = ''; $headers[1]['label'] = $this->localeCatalog->getStr('domaingroup_header'); $headers[2]['label'] = ''; $headers[3]['label'] = $this->localeCatalog->getStr('domainpanel_header'); $wuiGroupsTable = new WuiTable('groupsstable', array('headers' => $headers)); while (!$groupsQuery->eof) { $groupData = $groupsQuery->getFields(); $tempLocale = new LocaleCatalog($groupData['catalog'], \Innomatic\Core\InnomaticContainer::instance('\\Innomatic\\Core\\InnomaticContainer')->getCurrentUser()->getLanguage()); $nodeState = $perm->Check($groupData['id'], \Innomatic\Desktop\Auth\DesktopPanelAuthorizator::NODETYPE_GROUP); switch ($nodeState) { case \Innomatic\Desktop\Auth\DesktopPanelAuthorizator::NODE_FULLYENABLED: $icon = $this->wuiMainframe->mThemeHandler->mStyle['greenball']; $enabled = true; break; case \Innomatic\Desktop\Auth\DesktopPanelAuthorizator::NODE_PARTIALLYENABLED: $icon = $this->wuiMainframe->mThemeHandler->mStyle['goldball']; $enabled = true; break; case \Innomatic\Desktop\Auth\DesktopPanelAuthorizator::NODE_NOTENABLED: $icon = $this->wuiMainframe->mThemeHandler->mStyle['redball']; $enabled = false; break; } $wuiGroupsTable->addChild(new WuiImage('statusimage' . $row, array('imageurl' => $icon)), $row, 0); $wuiGroupsTable->addChild(new WuiLabel('grouplabel' . $row, array('label' => $tempLocale->getStr($groupData['name']))), $row, 1); $wuiGroupToolbar[$row] = new WuiHorizgroup('grouptoolbar' . $row); if ($enabled) { $disableAction[$row] = new WuiEventsCall(); $disableAction[$row]->addEvent(new WuiEvent('view', 'editprofile', array('profileid' => $eventData['profileid']))); $disableAction[$row]->addEvent(new WuiEvent('action', 'disablenode', array('ntype' => \Innomatic\Desktop\Auth\DesktopPanelAuthorizator::NODETYPE_GROUP, 'node' => $groupData['id'], 'gid' => $eventData['profileid']))); $wuiDisableButton[$row] = new WuiButton('disablebutton' . $row, array(label => $this->localeCatalog->getStr('disablenode_label'), 'themeimage' => 'lock', 'themeimagetype' => 'mini', 'horiz' => 'true', 'action' => $disableAction[$row]->getEventsCallString())); $wuiGroupToolbar[$row]->addChild($wuiDisableButton[$row]); } if (!$enabled or $nodeState == \Innomatic\Desktop\Auth\DesktopPanelAuthorizator::NODE_PARTIALLYENABLED) { $enableAction[$row] = new WuiEventsCall(); $enableAction[$row]->addEvent(new WuiEvent('view', 'editprofile', array('profileid' => $eventData['profileid']))); $enableAction[$row]->addEvent(new WuiEvent('action', 'enablenode', array('ntype' => \Innomatic\Desktop\Auth\DesktopPanelAuthorizator::NODETYPE_GROUP, 'node' => $groupData['id'], 'gid' => $eventData['profileid']))); $wuiEnableButton[$row] = new WuiButton('enablebutton' . $row, array(label => $this->localeCatalog->getStr('enablenode_label'), 'themeimage' => 'unlock', 'themeimagetype' => 'mini', 'horiz' => 'true', 'action' => $enableAction[$row]->getEventsCallString())); $wuiGroupToolbar[$row]->addChild($wuiEnableButton[$row]); } $wuiGroupsTable->addChild($wuiGroupToolbar[$row], $row, 4); $row++; $pagesQuery = \Innomatic\Core\InnomaticContainer::instance('\\Innomatic\\Core\\InnomaticContainer')->getCurrentDomain()->getDataAccess()->execute('SELECT * FROM domain_panels WHERE groupid=' . $groupData['id'] . ' AND (hidden != ' . \Innomatic\Core\InnomaticContainer::instance('\\Innomatic\\Core\\InnomaticContainer')->getCurrentDomain()->getDataAccess()->formatText(\Innomatic\Core\InnomaticContainer::instance('\\Innomatic\\Core\\InnomaticContainer')->getCurrentDomain()->getDataAccess()->fmttrue) . ' OR hidden IS NULL) ORDER BY name'); while (!$pagesQuery->eof) { $pageData = $pagesQuery->getFields(); $tempLocale = new LocaleCatalog($pageData['catalog'], \Innomatic\Core\InnomaticContainer::instance('\\Innomatic\\Core\\InnomaticContainer')->getCurrentUser()->getLanguage()); $nodeState = $perm->Check($pageData['id'], 'page'); switch ($nodeState) { case \Innomatic\Desktop\Auth\DesktopPanelAuthorizator::NODE_FULLYENABLED: $icon = $this->wuiMainframe->mThemeHandler->mStyle['greenball']; $enabled = true; break; case \Innomatic\Desktop\Auth\DesktopPanelAuthorizator::NODE_NOTENABLED: $icon = $this->wuiMainframe->mThemeHandler->mStyle['redball']; $enabled = false; break; } $wuiGroupsTable->addChild(new WuiImage('statusimage' . $row, array('imageurl' => $icon)), $row, 2); $wuiGroupsTable->addChild(new WuiLabel('methodlabel' . $row, array('label' => $tempLocale->getStr($pageData['name']))), $row, 3); $wuiPageToolbar[$row] = new WuiHorizgroup('pagetoolbar' . $row); if ($enabled) { $disableAction[$row] = new WuiEventsCall(); $disableAction[$row]->addEvent(new WuiEvent('view', 'editprofile', array('profileid' => $eventData['profileid']))); $disableAction[$row]->addEvent(new WuiEvent('action', 'disablenode', array('ntype' => \Innomatic\Desktop\Auth\DesktopPanelAuthorizator::NODETYPE_PAGE, 'node' => $pageData['id'], 'gid' => $eventData['profileid']))); $wuiDisableButton[$row] = new WuiButton('disablebutton' . $row, array(label => $this->localeCatalog->getStr('disablenode_label'), 'themeimage' => 'lock', 'themeimagetype' => 'mini', 'horiz' => 'true', 'action' => $disableAction[$row]->getEventsCallString())); $wuiPageToolbar[$row]->addChild($wuiDisableButton[$row]); } else { $enableAction[$row] = new WuiEventsCall(); $enableAction[$row]->addEvent(new WuiEvent('view', 'editprofile', array('profileid' => $eventData['profileid']))); $enableAction[$row]->addEvent(new WuiEvent('action', 'enablenode', array('ntype' => \Innomatic\Desktop\Auth\DesktopPanelAuthorizator::NODETYPE_PAGE, 'node' => $pageData['id'], 'gid' => $eventData['profileid']))); $wuiEnableButton[$row] = new WuiButton('enablebutton' . $row, array(label => $this->localeCatalog->getStr('enablenode_label'), 'themeimage' => 'unlock', 'themeimagetype' => 'mini', 'horiz' => 'true', 'action' => $enableAction[$row]->getEventsCallString())); $wuiPageToolbar[$row]->addChild($wuiEnableButton[$row]); } $wuiGroupsTable->addChild($wuiPageToolbar[$row], $row, 4); $row++; $pagesQuery->moveNext(); } $groupsQuery->moveNext(); } $this->wuiMainframe->addChild($wuiGroupsTable); } $this->wuiTitlebar->mTitle .= ' - ' . $profData['groupname'] . ' - ' . $this->localeCatalog->getStr('editprofile_title'); }