Note: this list is kept only as a demonstration for CVSNotice. For the latest CVS notices, see the Xaraya and Postnuke sites
View Statistics - Next Notice - Previous NoticeDirectory filter : [ all ] / postnuke_official / tests [ view in CVS ]
Date | Directory [filter] | File(s) [view] | Author [filter] |
05 Aug 2002 01:49:58 | postnuke_official/tests | import8.php,1.11,1.12 | Mike |
importing FAQs |
Update of /home/cvsroot/postnuke_official/tests In directory ns7.hostnuke.net:/tmp/cvs-serv25349 Modified Files: import8.php Log Message: importing FAQs Index: import8.php =================================================================== RCS file: /home/cvsroot/postnuke_official/tests/import8.php,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** import8.php 2 Aug 2002 13:14:12 -0000 1.11 --- import8.php 5 Aug 2002 01:49:56 -0000 1.12 *************** *** 201,205 **** $query = 'SELECT pn_topicid, pn_topicname, pn_topictext, pn_topicimage ! FROM ' . $oldprefix . '_topics'; $result = $dbconn->Execute($query); if ($dbconn->ErrorNo() != 0) { --- 201,206 ---- $query = 'SELECT pn_topicid, pn_topicname, pn_topictext, pn_topicimage ! FROM ' . $oldprefix . '_topics ! ORDER BY pn_topicid ASC'; $result = $dbconn->Execute($query); if ($dbconn->ErrorNo() != 0) { *************** *** 219,223 **** $query = 'SELECT pn_catid, pn_title ! FROM ' . $oldprefix . '_stories_cat'; $result = $dbconn->Execute($query); if ($dbconn->ErrorNo() != 0) { --- 220,225 ---- $query = 'SELECT pn_catid, pn_title ! FROM ' . $oldprefix . '_stories_cat ! ORDER BY pn_catid ASC'; $result = $dbconn->Execute($query); if ($dbconn->ErrorNo() != 0) { *************** *** 258,263 **** $regid = pnModGetIDFromName('articles'); $query = 'SELECT pn_sid, pn_title, pn_hometext, pn_bodytext, pn_aid, ! UNIX_TIMESTAMP(pn_time), pn_language, pn_catid, pn_topic ! FROM ' . $oldprefix . '_stories'; $numitems = 1000; if (!isset($startnum)) { --- 260,267 ---- $regid = pnModGetIDFromName('articles'); $query = 'SELECT pn_sid, pn_title, pn_hometext, pn_bodytext, pn_aid, ! UNIX_TIMESTAMP(pn_time), pn_language, pn_catid, pn_topic, ! pn_notes, pn_ihome ! FROM ' . $oldprefix . '_stories ! ORDER BY pn_sid ASC'; $numitems = 1000; if (!isset($startnum)) { *************** *** 278,285 **** while (!$result->EOF) { list($aid, $title, $summary, $body, $authorid, $pubdate, $language, ! $cat, $topic) = $result->fields; $insert = 'INSERT INTO ' . $pntable['articles'] . ' (pn_aid, pn_title, pn_summary, pn_body, pn_authorid, ! pn_pubdate, pn_pubtypeid, pn_pages, pn_language) VALUES (' . pnVarPrepForStore($aid) . ",'" . --- 282,295 ---- while (!$result->EOF) { list($aid, $title, $summary, $body, $authorid, $pubdate, $language, ! $cat, $topic, $notes, $ihome) = $result->fields; ! if (empty($ihome)) { ! $status = 3; ! } else { ! $status = 2; ! } $insert = 'INSERT INTO ' . $pntable['articles'] . ' (pn_aid, pn_title, pn_summary, pn_body, pn_authorid, ! pn_pubdate, pn_pubtypeid, pn_pages, pn_notes, ! pn_status, pn_language) VALUES (' . pnVarPrepForStore($aid) . ",'" . *************** *** 291,294 **** --- 301,306 ---- '1' . "','" . '0' . "','" . + pnVarPrepForStore($notes) . "','" . + pnVarPrepForStore($status) . "','" . pnVarPrepForStore($language) . "')"; $dbconn->Execute($insert); *************** *** 316,320 **** } $result->Close(); ! echo "<strong>TODO : add notes, comments etc.</strong><br><br>\n"; echo '<a href="import8.php">Return to start</a> '; if ($count > $numitems && $startnum + $numitems < $count) { --- 328,332 ---- } $result->Close(); ! echo "<strong>TODO : add comments etc.</strong><br><br>\n"; echo '<a href="import8.php">Return to start</a> '; if ($count > $numitems && $startnum + $numitems < $count) { *************** *** 322,327 **** echo '<a href="import8.php?step=' . $step . '&startnum=' . $startnum . '">Go to step ' . $step . ' - articles ' . $startnum . '+ of ' . $count . '</a><br>'; } else { ! // OK, we still have something to do here :-) ! echo '<a href="import8.php?step=' . ($step+2) . '">Go to step ' . ($step+2) . '</a><br>'; } } --- 334,429 ---- echo '<a href="import8.php?step=' . $step . '&startnum=' . $startnum . '">Go to step ' . $step . ' - articles ' . $startnum . '+ of ' . $count . '</a><br>'; } else { ! echo '<a href="import8.php?step=' . ($step+1) . '">Go to step ' . ($step+1) . '</a><br>'; ! } ! } ! ! if ($step == 4) { ! $topics = pnModGetVar('import','topics'); ! $topicid = unserialize(pnModGetVar('import','topicid')); ! $categories = pnModGetVar('import','categories'); ! $catid = unserialize(pnModGetVar('import','catid')); ! echo "<strong>4. Importing queued articles</strong><br>\n"; ! $query = 'SELECT COUNT(*) FROM ' . $oldprefix . '_queue'; ! $result = $dbconn->Execute($query); ! if ($dbconn->ErrorNo() != 0) { ! die("Oops, count queue failed : " . $dbconn->ErrorMsg()); ! } ! $count = $result->fields[0]; ! $result->Close(); ! $regid = pnModGetIDFromName('articles'); ! $query = 'SELECT pn_qid, pn_subject, pn_story, pn_bodytext, pn_uid, ! UNIX_TIMESTAMP(pn_timestamp), pn_language, pn_topic, ! pn_arcd ! FROM ' . $oldprefix . '_queue ! ORDER BY pn_qid ASC'; ! $numitems = 1000; ! if (!isset($startnum)) { ! $startnum = 0; ! } ! if ($count > $numitems) { ! $result = $dbconn->SelectLimit($query, $numitems, $startnum); ! } else { ! $result = $dbconn->Execute($query); ! } ! if ($dbconn->ErrorNo() != 0) { ! die("Oops, select queue failed : " . $dbconn->ErrorMsg()); ! } ! $num = 1; ! while (!$result->EOF) { ! list($qid, $title, $summary, $body, $authorid, $pubdate, $language, ! $topic, $arcd) = $result->fields; ! if (empty($arcd)) { ! $status = 0; ! } else { ! $status = 1; ! } ! $nextId = $dbconn->GenId($pntable['articles']); ! $notes = ''; ! $insert = 'INSERT INTO ' . $pntable['articles'] . ' ! (pn_aid, pn_title, pn_summary, pn_body, pn_authorid, ! pn_pubdate, pn_pubtypeid, pn_pages, pn_notes, ! pn_status, pn_language) ! VALUES (' . ! pnVarPrepForStore($nextId) . ",'" . ! pnVarPrepForStore($title) . "','" . ! pnVarPrepForStore($summary) . "','" . ! pnVarPrepForStore($body) . "','" . ! pnVarPrepForStore($authorid) . "','" . ! pnVarPrepForStore($pubdate) . "','" . ! '1' . "','" . ! '0' . "','" . ! pnVarPrepForStore($notes) . "','" . ! pnVarPrepForStore($status) . "','" . ! pnVarPrepForStore($language) . "')"; ! $dbconn->Execute($insert); ! if ($dbconn->ErrorNo() != 0) { ! echo "Insert queued article ($qid) $title failed : " . $dbconn->ErrorMsg() ."<br>\n"; ! } elseif ($count < 200) { ! echo "Inserted queued article ($qid) $title<br>\n"; ! } elseif ($num % 100 == 0) { ! echo "Inserted queued article " . ($num + $startnum) . "<br>\n"; ! flush(); ! } ! $num++; ! $cids = array(); ! if (isset($topicid[$topic])) { ! $cids[] = $topicid[$topic]; ! } ! // Get aid to return ! $aid = $dbconn->PO_Insert_ID($pntable['articles'], 'pn_aid'); ! pnModAPIFunc('categories', 'admin', 'linkcat', array( ! 'cids' => $cids, ! 'iids' => array($aid), ! 'modid' => $regid )); ! $result->MoveNext(); ! } ! $result->Close(); ! echo "<strong>TODO : add comments etc.</strong><br><br>\n"; ! echo '<a href="import8.php">Return to start</a> '; ! if ($count > $numitems && $startnum + $numitems < $count) { ! $startnum += $numitems; ! echo '<a href="import8.php?step=' . $step . '&startnum=' . $startnum . '">Go to step ' . $step . ' - articles ' . $startnum . '+ of ' . $count . '</a><br>'; ! } else { ! echo '<a href="import8.php?step=' . ($step+1) . '">Go to step ' . ($step+1) . '</a><br>'; } } *************** *** 340,344 **** if ($sections > 0) { $query = 'SELECT pn_secid, pn_secname, pn_image ! FROM ' . $oldprefix . '_sections'; $result = $dbconn->Execute($query); if ($dbconn->ErrorNo() != 0) { --- 442,447 ---- if ($sections > 0) { $query = 'SELECT pn_secid, pn_secname, pn_image ! FROM ' . $oldprefix . '_sections ! ORDER BY pn_secid ASC'; $result = $dbconn->Execute($query); if ($dbconn->ErrorNo() != 0) { *************** *** 370,374 **** echo "<strong>6. Importing section content</strong><br>\n"; $query = 'SELECT pn_artid, pn_secid, pn_title, pn_content, pn_language ! FROM ' . $oldprefix . '_seccont'; $result = $dbconn->Execute($query); if ($dbconn->ErrorNo() != 0) { --- 473,478 ---- echo "<strong>6. Importing section content</strong><br>\n"; $query = 'SELECT pn_artid, pn_secid, pn_title, pn_content, pn_language ! FROM ' . $oldprefix . '_seccont ! ORDER BY pn_artid ASC'; $result = $dbconn->Execute($query); if ($dbconn->ErrorNo() != 0) { *************** *** 380,384 **** $insert = 'INSERT INTO ' . $pntable['articles'] . ' (pn_aid, pn_title, pn_summary, pn_body, pn_authorid, ! pn_pubdate, pn_pubtypeid, pn_pages, pn_language) VALUES (' . pnVarPrepForStore($nextId) . ",'" . --- 484,489 ---- $insert = 'INSERT INTO ' . $pntable['articles'] . ' (pn_aid, pn_title, pn_summary, pn_body, pn_authorid, ! pn_pubdate, pn_pubtypeid, pn_pages, pn_status, ! pn_language) VALUES (' . pnVarPrepForStore($nextId) . ",'" . *************** *** 390,393 **** --- 495,499 ---- '2' . "','" . '0' . "','" . + '2' . "','" . pnVarPrepForStore($language) . "')"; $dbconn->Execute($insert); *************** *** 415,418 **** --- 521,636 ---- } $result->Close(); + echo "<strong>TODO : support page breaks in articles :-)</strong><br><br>\n"; + echo '<a href="import8.php">Return to start</a> + <a href="import8.php?step=' . ($step+1) . '">Go to step ' . ($step+1) . '</a><br>'; + } + + if ($step == 7) { + echo "<strong>7. Importing old FAQs into categories</strong><br>\n"; + echo "Creating root for old FAQs<br>\n"; + $faqs = pnModAPIFunc('categories', 'admin', 'create', array( + 'name' => 'FAQs', + 'description' => 'Root for old FAQs', + 'parent_id' => 0)); + if ($reset) { + pnModSetVar('articles', 'number_of_categories.4', 1); + pnModSetVar('articles', 'cids.4', $faqs); + } + if ($faqs > 0) { + $query = 'SELECT pn_id_cat, pn_categories, pn_parent_id + FROM ' . $oldprefix . '_faqcategories + ORDER BY pn_parent_id ASC, pn_id_cat ASC'; + $result = $dbconn->Execute($query); + if ($dbconn->ErrorNo() != 0) { + die("Oops, select faqcategories failed : " . $dbconn->ErrorMsg()); + } + // set parent 0 to root FAQ category + $faqid[0] = $faqs; + while (!$result->EOF) { + list($id, $name, $parent) = $result->fields; + if (!isset($parent) || $parent < 0) { + $parent = 0; + } + if (!isset($faqid[$parent])) { + echo "Oops, missing parent $parent for FAQ ($id) $name<br>\n"; + } else { + $faqid[$id] = pnModAPIFunc('categories', 'admin', 'create', + array('name' => $name, + 'description' => "$name FAQ", + 'parent_id' => $faqid[$parent])); + echo "Creating FAQ ($id) $name [parent $parent]<br>\n"; + } + $result->MoveNext(); + } + $result->Close(); + } + pnModSetVar('import','faqs',$faqs); + pnModSetVar('import','faqid',serialize($faqid)); + echo '<a href="import8.php">Return to start</a> + <a href="import8.php?step=' . ($step+1) . '">Go to step ' . ($step+1) . '</a><br>'; + } + + if ($step == 8) { + $regid = pnModGetIDFromName('articles'); + $faqs = pnModGetVar('import','faqs'); + $faqid = unserialize(pnModGetVar('import','faqid')); + echo "<strong>8. Importing FAQ questions & answers</strong><br>\n"; + $query = 'SELECT pn_id, pn_id_cat, pn_question, pn_answer, pn_submittedby + FROM ' . $oldprefix . '_faqanswer + ORDER BY pn_id ASC'; + $result = $dbconn->Execute($query); + if ($dbconn->ErrorNo() != 0) { + die("Oops, select faq answer failed : " . $dbconn->ErrorMsg()); + } + while (!$result->EOF) { + list($id, $catid, $title, $content, $notes) = $result->fields; + $language = ''; + $nextId = $dbconn->GenId($pntable['articles']); + $insert = 'INSERT INTO ' . $pntable['articles'] . ' + (pn_aid, pn_title, pn_summary, pn_body, pn_authorid, + pn_pubdate, pn_pubtypeid, pn_pages, pn_notes, + pn_status, pn_language) + VALUES (' . + pnVarPrepForStore($nextId) . ",'" . + pnVarPrepForStore($title) . "','" . + '' . "','" . + pnVarPrepForStore($content) . "','" . + '1' . "','" . + '0' . "','" . + '4' . "','" . + '0' . "','" . + pnVarPrepForStore($notes) . "','" . + '2' . "','" . + pnVarPrepForStore($language) . "')"; + $dbconn->Execute($insert); + if ($dbconn->ErrorNo() != 0) { + echo "Insert FAQ ($id) $title failed : " . $dbconn->ErrorMsg() ."<br>\n"; + } else { + echo "Inserted FAQ ($id) $title<br>\n"; + } + $cids = array(); + // TODO: check if we want to add articles to the Sections root too or not + //$cids[] = $sections; + if (isset($faqid[$catid])) { + $cids[] = $faqid[$catid]; + } + if (count($cids) == 0) { + $cids[] = $faqs; + } + // Get aid to return + $aid = $dbconn->PO_Insert_ID($pntable['articles'], 'pn_aid'); + pnModAPIFunc('categories', 'admin', 'linkcat', array( + 'cids' => $cids, + 'iids' => array($aid), + 'modid' => $regid )); + $result->MoveNext(); + } + $result->Close(); + echo "<strong>TODO : do something with FAQ display</strong><br><br>\n"; + // the end - for now... + // echo '<a href="import8.php">Return to start</a> + // <a href="import8.php?step=' . ($step+1) . '">Go to step ' . ($step+1) . '</a><br>'; + // } + echo "<strong>TODO : import the rest...</strong><br><br>\n"; pnModDelVar('import','oldprefix'); *************** *** 426,429 **** --- 644,649 ---- pnModDelVar('import','sections'); pnModDelVar('import','sectionid'); + pnModDelVar('import','faqs'); + pnModDelVar('import','faqid'); echo '<a href="import8.php">Return to start</a> <a href="index.php">Go to your imported site</a><br>';
View Statistics - Next Notice - Previous Notice
Visit Developer Site - Browse CVS Repository |
Syndicate via backend.rss (max. once per hour please) | Powered by CVSNotice 0.1.3 |