Exemplo n.º 1
0
function main_dependencies($eventData)
{
    global $env, $hui_mainframe, $amp_locale, $hui_titlebar;
    $query =& $env['ampdb']->execute('SELECT modid ' . 'FROM modules ' . 'WHERE id=' . $eventData['modid'] . ' ');
    $module_data = $query->Fields();
    $hui_vgroup = new HuiVertGroup('vgroup');
    $hui_hgroup1 = new HuiHorizGroup('hgroup1');
    $hui_hgroup2 = new HuiHorizGroup('hgroup2');
    $temp_deps = new ModuleDep($env['ampdb']);
    $module_deps = array();
    $module_suggs = array();
    $depending_mods = array();
    $suggesting_mods = array();
    $enabled_sites = array();
    $module_deps_array = $temp_deps->DependsOn($module_data['modid']);
    if (is_array($module_deps_array)) {
        while (list($key, $val) = each($module_deps_array)) {
            if ($val['deptype'] == DEPTYPE_DEP) {
                $module_deps[$val['moddep']] = $val['moddep'] . ' ' . $val['version'];
            } else {
                $module_suggs[$val['moddep']] = $val['moddep'] . ' ' . $val['version'];
            }
        }
    }
    $depending_mods_array = $temp_deps->CheckDependingModules($module_data['modid'], DEPTYPE_DEP);
    if (is_array($depending_mods_array)) {
        while (list($key, $val) = each($depending_mods_array)) {
            $depending_mods[$val] = $val;
        }
    }
    $suggesting_mods_array = $temp_deps->CheckDependingModules($module_data['modid'], DEPTYPE_SUGG);
    if (is_array($suggesting_mods_array)) {
        while (list($key, $val) = each($suggesting_mods_array)) {
            $suggesting_mods[$val] = $val;
        }
    }
    $enabled_sites_array = $temp_deps->CheckEnabledSites($eventData['modid']);
    if (is_array($enabled_sites_array)) {
        asort($enabled_sites_array);
        while (list($key, $val) = each($enabled_sites_array)) {
            $enabled_sites[$val] = $val;
        }
    }
    $xml_def = '<grid><name>deps</name><children>
    
      <vertframe row="0" col="0">
        <name>deps</name>
        <children>
          <label>
            <name>deps</name>
              <args>
                <label>' . $amp_locale->GetStr('moddeps_label') . '</label>
              </args>
            </label>
            <listbox>
              <name>deps</name>
              <args>
                <disp>pass</disp>
                <readonly>true</readonly>
                <elements type="array">' . huixml_encode($module_deps) . '</elements>
                <size>5</size>
              </args>
            </listbox>
          </children>
        </vertframe>
    
      <vertframe row="0" col="1"><name>suggs</name><children>
        <label><name>suggs</name><args><label>' . $amp_locale->GetStr('modsuggs_label') . '</label></args></label>
        <listbox><name>suggs</name><args><disp>pass</disp><readonly>true</readonly><elements type="array">' . huixml_encode($module_suggs) . '</elements><size>5</size></args></listbox>
      </children></vertframe>';
    if (strcmp($module_data['modid'], 'ampoliros')) {
        $xml_def .= '  <vertframe row="1" col="0"><name>depending</name><children>
            <label><name>depending</name><args><label>' . sprintf($amp_locale->GetStr('dependingmods_label'), $module_data['modid']) . '</label></args></label>
            <listbox><name>depending</name><args><disp>pass</disp><readonly>true</readonly><elements type="array">' . huixml_encode($depending_mods) . '</elements><size>5</size></args></listbox>
          </children></vertframe>
        
          <vertframe row="1" col="1"><name>suggesting</name><children>
            <label><name>suggesting</name><args><label>' . sprintf($amp_locale->GetStr('suggestingmods_label'), $module_data['modid']) . '</label></args></label>
            <listbox><name>suggesting</name><args><disp>pass</disp><readonly>true</readonly><elements type="array">' . huixml_encode($suggesting_mods) . '</elements><size>5</size></args></listbox>
          </children></vertframe>
        
          <vertframe row="2" col="0"><name>enabled</name><children>
            <label><name>enabled</name><args><label>' . $amp_locale->GetStr('enabledsites_label') . '</label></args></label>
            <listbox><name>enabled</name><args><disp>pass</disp><readonly>true</readonly><elements type="array">' . huixml_encode($enabled_sites) . '</elements><size>5</size></args></listbox>
          </children></vertframe>';
    }
    $xml_def .= '</children></grid>';
    $hui_mainframe->AddChild(new HuiXml('deps', array('definition' => $xml_def)));
    $hui_titlebar->mTitle .= ' - ' . $module_data['modid'] . ' - ' . $amp_locale->GetStr('moduledeps_title');
}