summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'import.package_mask.php')
-rw-r--r--import.package_mask.php66
1 files changed, 66 insertions, 0 deletions
diff --git a/import.package_mask.php b/import.package_mask.php
new file mode 100644
index 0000000..5352bd7
--- /dev/null
+++ b/import.package_mask.php
@@ -0,0 +1,66 @@
+<?
+
+ $verbose = true;
+ $qa = true;
+
+ require_once 'header.php';
+ require_once '../class.portage.tree.php';
+ require_once '../class.portage.category.php';
+ require_once '../class.portage.package.php';
+ require_once '../class.portage.ebuild.php';
+ require_once '../class.portage.atom.php';
+ require_once '../class.portage.package.mask.php';
+
+
+ $pmask = new PackageMask();
+ $arr = $pmask->getMaskedPackages();
+
+ $arr_pg_bool = array('false', 'true');
+
+ // FIXME do an importDiff
+ $db->query("DELETE FROM package_mask;");
+
+ function null2str($var) {
+
+ global $db;
+
+ if(is_null($var))
+ return 'NULL';
+ else
+ return $db->quote($var);
+ }
+
+ foreach($arr as $str) {
+
+ $a = new PortageAtom($str);
+
+// shell::msg("atom: ".$a->atom);
+// shell::msg("pn: ".$a->pn);
+// shell::msg("pf: ".$a->pf);
+// shell::msg("_alpha: ".$a->_alpha);
+// shell::msg("_beta: ".$a->_beta);
+// shell::msg("_pre: ".$a->_pre);
+// shell::msg("_rc: ".$a->_rc);
+// shell::msg("_p: ".$a->_p);
+// shell::msg("pr: ".$a->pr);
+// shell::msg("version: ".$a->version);
+// echo "\n";
+
+ $pvr = $a->pvr;
+
+ if(!$pvr)
+ $pvr = '';
+
+ $sql = "INSERT INTO package_mask (package, atom, lt, gt, eq, ar, av, pf, pv, pr, pvr, alpha, beta, pre, rc, p, version) SELECT p.id, ".$db->quote($str).", ".$arr_pg_bool[intval($a->lt)].", ".$arr_pg_bool[intval($a->gt)].", ".$arr_pg_bool[intval($a->eq)].", ".$arr_pg_bool[intval($a->ar)].", ".$arr_pg_bool[intval($a->av)].", ".null2str($a->pf).", ".null2str($a->pv).", ".null2str($a->pr).", ".null2str($a->pvr).", ".null2str($a->_alpha).", ".null2str($a->_beta).", ".null2str($a->_pre).", ".null2str($a->_rc).", ".null2str($a->_p).", ".null2str($a->version)." FROM category c INNER JOIN package p ON p.category = c.id WHERE c.name = ".$db->quote($a->category)." AND p.name = ".$db->quote($a->pn).";";
+// shell::msg($sql);
+ $db->query($sql);
+
+// die;
+
+
+ }
+
+
+
+
+?> \ No newline at end of file