/** * @param $modpath * @param $public * @param $items * @param bool $add */ function _publish($modpath, $public, $items, $add = true) { $fp = fopen($modpath . '/Packages/00_list.public.txt', "w"); foreach ($public as $meat) { foreach ($meat as $p) { if ($add || !in_array($p->modname, $items)) { fputs($fp, $p->toline() . "\n"); } } } if (count($items) and $add) { foreach ($items as $modname) { $mod = new TikiModInfo($modname); if (!isset($public[$mod->type]) || !isset($public[$mod->type][$mod->name])) { $this->feedback_info("packaging " . $mod->modname . " ..."); $err = $mod->package($modpath, 'Packages/' . $mod->type . '-' . $mod->name . '.info.txt'); if ($err !== false) { $this->feedback_error($err); continue; } fputs($fp, $mod->toline() . "\n"); } } } fclose($fp); }