function main_default($eventData) { global $gEnv, $gXml_def, $gLocale, $gPage_title; //$tabs[0]['label'] = $gLocale->GetStr( 'currentactivities.tab' ); $tabs[0]['label'] = $gLocale->GetStr('accesslog.tab'); $tabs[1]['label'] = $gLocale->GetStr('loggedusers.tab'); $tabs[2]['label'] = $gLocale->GetStr('securitycheck.tab'); $amp_security = new SecurityLayer(); $security_check = $amp_security->SecurityCheck(); $logged_users = $amp_security->GetLoggedSessions(); $root_sessions = $users_sessions = array(); foreach ($logged_users['root'] as $root_session) { $root_sessions[$root_session] = $root_session; } foreach ($logged_users['sites'] as $user => $sessions) { $users_sessions[$user] = $user; foreach ($sessions as $session) { //$users_sessions[$user.'-'.$session] = '- '.$session; $users_sessions[$session] = '- ' . $session; } } $tmp_key = array_search('', $security_check['unsecurewebservicesaccounts']); if (strlen($tmp_key)) { $security_check['unsecurewebservicesaccounts'][$tmp_key] = 'Anonymous'; } $gXml_def = '<tab><name>security</name> <args> <tabs type="array">' . huixml_encode($tabs) . '</tabs> <tabactionfunction>default_tab_builder</tabactionfunction> <activetab>' . (isset($eventData['tab']) ? $eventData['tab'] : '') . '</activetab> </args> <children> <vertgroup><name></name> <children> <table><name>accesslog</name> <args> <headers type="array">' . huixml_encode(array('0' => array('label' => $gLocale->GetStr('accesslog.header')))) . '</headers> </args> <children> <text row="0" col="0"><name>accesslog</name> <args> <readonly>true</readonly> <value type="encoded">' . urlencode($amp_security->GetAccessLog()) . '</value> <cols>120</cols> <rows>15</rows> </args> </text> <button row="1" col="0"><name>erase</name> <args> <themeimage>edittrash</themeimage> <label type="encoded">' . urlencode($gLocale->GetStr('eraselog.button')) . '</label> <horiz>true</horiz> <frame>false</frame> <action type="encoded">' . urlencode(build_events_call_string('', array(array('main', 'default', ''), array('action', 'clean_access_log', '')))) . '</action> </args> </button> </children> </table> </children> </vertgroup> <vertgroup> <children> <label> <args> <label type="encoded">' . urlencode($gLocale->GetStr('root_sessions.label')) . '</label> <bold>true</bold> </args> </label> <form><name>rootsessions</name> <args> <action type="encoded">' . urlencode(build_events_call_string('', array(array('main', 'default'), array('action', 'logout_sessions')))) . '</action> </args> <children> <listbox><name>sessions</name> <args> <size>5</size> <elements type="array">' . huixml_encode($root_sessions) . '</elements> <multiselect>true</multiselect> <disp>action</disp> </args> </listbox> </children> </form> <button> <args> <horiz>true</horiz> <frame>false</frame> <label type="encoded">' . urlencode($gLocale->GetStr('logout_sessions.button')) . '</label> <themeimage>exit</themeimage> <formsubmit>rootsessions</formsubmit> <action type="encoded">' . urlencode(build_events_call_string('', array(array('main', 'default'), array('action', 'logout_sessions')))) . '</action> </args> </button>'; $gXml_def .= ' <label> <args> <label type="encoded">' . urlencode($gLocale->GetStr('users_sessions.label')) . '</label> <bold>true</bold> </args> </label> <form><name>userssessions</name> <args> <action type="encoded">' . urlencode(build_events_call_string('', array(array('main', 'default'), array('action', 'logout_sessions')))) . '</action> </args> <children> <listbox><name>sessions</name> <args> <size>15</size> <elements type="array">' . huixml_encode($users_sessions) . '</elements> <multiselect>true</multiselect> <disp>action</disp> </args> </listbox> </children> </form> <button> <args> <horiz>true</horiz> <frame>false</frame> <label type="encoded">' . urlencode($gLocale->GetStr('logout_sessions.button')) . '</label> <themeimage>exit</themeimage> <formsubmit>userssessions</formsubmit> <action type="encoded">' . urlencode(build_events_call_string('', array(array('main', 'default'), array('action', 'logout_sessions')))) . '</action> </args> </button>'; $gXml_def .= ' </children> </vertgroup> <vertgroup><name></name> <children> <label><name>tabtitle</name> <args> <label type="encoded">' . urlencode($gLocale->GetStr('securitycheck.label')) . '</label> <bold>true</bold> </args> </label> <grid> <children> <button row="0" col="0"><name>check</name> <args> <themeimage>' . ($security_check['rootpasswordcheck'] == false ? 'button_cancel' : 'button_ok') . '</themeimage> <disabled>true</disabled> </args> </button> <label row="0" col="1"><name>check</name> <args> <label type="encoded">' . urlencode($gLocale->GetStr('root_password_check.label')) . '</label> </args> </label> <label row="0" col="2"><name>check</name> <args> <label type="encoded">' . urlencode($gLocale->GetStr($security_check['rootpasswordcheck'] ? 'check_password_ok.label' : 'check_password_unsafe.label')) . '</label> </args> </label> <button row="1" col="0"><name>check</name> <args> <themeimage>' . ($security_check['rootdbpasswordcheck'] == false ? 'button_cancel' : 'button_ok') . '</themeimage> <disabled>true</disabled> </args> </button> <label row="1" col="1"><name>check</name> <args> <label type="encoded">' . urlencode($gLocale->GetStr('root_dbpassword_check.label')) . '</label> </args> </label> <label row="1" col="2"><name>check</name> <args> <label type="encoded">' . urlencode($gLocale->GetStr($security_check['rootdbpasswordcheck'] ? 'check_password_ok.label' : 'check_password_unsafe.label')) . '</label> </args> </label> <button row="2" col="0" halign="" valign="top"><name>check</name> <args> <themeimage>' . (count($security_check['siteswithunsecuredbpassword']) ? 'button_cancel' : 'button_ok') . '</themeimage> <disabled>true</disabled> </args> </button> <label row="2" col="1" halign="" valign="top"><name>check</name> <args> <label type="encoded">' . urlencode($gLocale->GetStr('unsecure_sites_db_check.label')) . '</label> </args> </label> <listbox row="2" col="2"><name>check</name> <args> <readonly>true</readonly> <elements type="array">' . huixml_encode($security_check['siteswithunsecuredbpassword']) . '</elements> <size>5</size> </args> </listbox> <button row="3" col="0" halign="" valign="top"><name>check</name> <args> <themeimage>' . (count($security_check['unsecurelocalaccounts']) ? 'button_cancel' : 'button_ok') . '</themeimage> <disabled>true</disabled> </args> </button> <label row="3" col="1" halign="" valign="top"><name>check</name> <args> <label type="encoded">' . urlencode($gLocale->GetStr('local_accounts_check.label')) . '</label> </args> </label> <listbox row="3" col="2"><name>check</name> <args> <readonly>true</readonly> <elements type="array">' . huixml_encode($security_check['unsecurelocalaccounts']) . '</elements> <size>5</size> </args> </listbox> <button row="4" col="0" halign="" valign="top"><name>check</name> <args> <themeimage>' . (count($security_check['unsecurewebservicesprofiles']) ? 'button_cancel' : 'button_ok') . '</themeimage> <disabled>true</disabled> </args> </button> <label row="4" col="1" halign="" valign="top"><name>check</name> <args> <label type="encoded">' . urlencode($gLocale->GetStr('webservices_profiles_check.label')) . '</label> </args> </label> <listbox row="4" col="2"><name>check</name> <args> <readonly>true</readonly> <elements type="array">' . huixml_encode($security_check['unsecurewebservicesprofiles']) . '</elements> <size>5</size> </args> </listbox> <button row="5" col="0" halign="" valign="top"><name>check</name> <args> <themeimage>' . (count($security_check['unsecurewebservicesaccounts']) ? 'button_cancel' : 'button_ok') . '</themeimage> <disabled>true</disabled> </args> </button> <label row="5" col="1" halign="" valign="top"><name>check</name> <args> <label type="encoded">' . urlencode($gLocale->GetStr('webservices_accounts_check.label')) . '</label> </args> </label> <listbox row="5" col="2"><name>check</name> <args> <readonly>true</readonly> <elements type="array">' . huixml_encode($security_check['unsecurewebservicesaccounts']) . '</elements> <size>5</size> </args> </listbox> </children> </grid> </children> </vertgroup> </children> </tab>'; $gPage_title .= ' - ' . $gLocale->GetStr('security_check.title'); }