コード例 #1
0
ファイル: security.php プロジェクト: alexpagnoni/ampoliros
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');
}