示例#1
0
function add_component($component, $isDependency = false)
{
    global $platform, $channel;
    global $in_componentsObj, $out_componentsObj;
    if (isset($out_componentsObj[$component])) {
        return;
    }
    if (isset($in_componentsObj[$component])) {
        $in_componentObj = $in_componentsObj[$component];
    } elseif ($isDependency) {
        $in_componentObj = array();
    } else {
        return;
    }
    if (isset($in_componentObj['platform']) && !in_array($platform, $in_componentObj['platform']) && !in_array('all', $in_componentObj['platform'])) {
        return;
    }
    $out_version = null;
    switch ($channel) {
        case 'alpha':
            if (isset($in_componentObj['alpha'])) {
                $out_version = new Semver($in_componentObj['alpha']);
                $out_channel = 'alpha';
            }
        case 'beta':
            if (isset($in_componentObj['beta'])) {
                $beta = new Semver($in_componentObj['beta']);
                if (!$out_version || Semver::greaterThan($beta, $out_version)) {
                    $out_version = $beta;
                    $out_channel = 'beta';
                }
            }
        case 'release':
        default:
            if (isset($in_componentObj['release'])) {
                $release = new Semver($in_componentObj['release']);
            } else {
                $release = new Semver("1.0.0");
            }
            if (!$out_version || Semver::greaterThan($release, $out_version)) {
                $out_version = $release;
                $out_channel = 'release';
            }
    }
    if (!$out_version) {
        return;
    }
    if (isset($in_componentObj['dependencies'])) {
        foreach ($in_componentObj['dependencies'] as $dependency) {
            add_component($dependency, true);
        }
    }
    $out_componentsObj[$component] = (string) $out_version;
}
示例#2
0
     update_component();
     header("Location: index.php?editor=tradeskill&ts={$ts}&rec={$rec}");
     exit;
 case 7:
     // Add component
     check_authorization();
     $javascript = new Template("templates/tradeskill/js.tmpl.php");
     $body = new Template("templates/tradeskill/component.add.tmpl.php");
     $body->set("tradeskills", $tradeskills);
     $body->set("ts", $ts);
     $body->set("rec", $rec);
     break;
 case 8:
     // Add component
     check_authorization();
     add_component();
     header("Location: index.php?editor=tradeskill&ts={$ts}&rec={$rec}");
     exit;
 case 9:
     // Search recipes
     $body = new Template("templates/tradeskill/tradeskill.searchresults.tmpl.php");
     if (isset($_GET['itemid']) && $_GET['itemid'] != "Item ID") {
         $results = search_recipes_by_item();
     } else {
         $results = search_recipes();
     }
     $body->set("results", $results);
     break;
 case 10:
     // Add recipe
     check_authorization();