daily pastebin goal
13%
SHARE
TWEET

Untitled

a guest Apr 27th, 2016 71 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. <?php
  2. $COLLECTION_ID = 110;
  3. $TEMP_TBL_NAME = '110Kenneth';
  4. $TotalCount = 0;
  5.  
  6. if(empty($COLLECTION_ID)||empty($TEMP_TBL_NAME)){
  7.     print 'id and tblname query Parameters Required';
  8.     exit;
  9. }
  10. $SERIES_CONTAINER_LEVEL_ID = 1; $SUBSERIES_CONTAINER_LEVEL_ID = 4; $BOX_CONTAINER_LEVEL_ID = 2; $FOLDER_CONTAINER_LEVEL_ID = 3; $ITEM_CONTAINER_LEVEL_ID = 5;
  11.  
  12. $LevelContainers = array(
  13.     "Series"            => 1,
  14.     "Sub-Series"        => 2,
  15.     "Box"               => 3,
  16.     "Folder"            => 4,
  17.     "Item"              => 5,
  18. );
  19. $Enabled = 1;
  20. $containerHierarchy = array();
  21. $ParentID = '';
  22.  
  23. $i = 1;
  24. //Get all series
  25. $query = 'SELECT Series FROM '.$TEMP_TBL_NAME.' GROUP BY Series ORDER BY RowID';
  26. //echo $query.'<br/>';
  27. $resultSeries = executeTempDBQuery($query);
  28. while($row = mysql_fetch_assoc($resultSeries)){
  29.     //Get Series name
  30.     $Series = mysql_real_escape_string(trim($row{'Series'}));
  31.    
  32.     //Insert Series
  33.     $query = 'INSERT INTO tblCollections_Content(
  34.         CollectionID, LevelContainerID, LevelContainerIdentifier, Title, PrivateTitle, RootContentID, ParentID, ContainsContent, SortOrder, Enabled)
  35.         VALUES ('.$COLLECTION_ID.', '.$SERIES_CONTAINER_LEVEL_ID.', "'.$i.'", "'.$Series.'", "'.$Series.'", 0, 0, 1, '.$i.', '.$Enabled.')';
  36.     //echo $query.'<br/>';
  37.     $status = executeArchonDBQuery($query);
  38.     $SeriesID           = mysql_insert_id();
  39.    
  40.     if($containerHierarchy[sizeof($containerHierarchy)-1]!=$LevelContainers["Series"]){
  41.         array_push($containerHierarchy, $LevelContainers["Series"]);
  42.         // echo print_r($containerHierarchy).'<br/>';
  43.     }
  44.     $ParentID   = $SeriesID;
  45.    
  46.     //Update Series.RootContentID with Series.ID
  47.     $query  = 'UPDATE tblCollections_Content SET RootContentID='.$SeriesID.' WHERE ID='.$SeriesID;
  48.     $status = executeArchonDBQuery($query);
  49.     if ($status==0){echo '<b>Update Series  -'.$SeriesID.'-'.$Series.' SET RootContentID Failed</b> <br/>';}
  50.    
  51.     if ($status==0){
  52.         echo '<b>Insert Series  -'.$Series.' Failed</b> <br/>';
  53.     }else{
  54.         echo 'Insert Series [ID-'.$SeriesID.'] -'.$Series.' Success. <br/>';
  55.         $TotalCount++;
  56.     }
  57.    
  58.     $j = 1;
  59.     //Get all Sub-Series per Folder
  60.     $query = 'SELECT Subseries FROM '.$TEMP_TBL_NAME.' WHERE Series="'.$Series.'" GROUP BY Subseries ORDER BY RowID';
  61.     //echo $query.'<br/>';
  62.     $resultSubseries = executeTempDBQuery($query);
  63.    
  64.     while($row = mysql_fetch_assoc($resultSubseries)){
  65.         //Get Sub-Series
  66.         $Subseries      = mysql_real_escape_string(trim($row{'Subseries'}));
  67.        
  68.         //Check if sub-series is not empty
  69.         if(!empty($Subseries)){
  70.             resetParentID($LevelContainers["Sub-Series"]);
  71.             //Insert Sub-Series
  72.             $query = 'INSERT INTO tblCollections_Content(
  73.                 CollectionID, LevelContainerID, LevelContainerIdentifier, Title, PrivateTitle, RootContentID, ParentID, ContainsContent, SortOrder, Enabled)
  74.                 VALUES ('.$COLLECTION_ID.', '.$SUBSERIES_CONTAINER_LEVEL_ID.', "'.$j.'", "'.$Subseries.'", "'.$Subseries.'", '.$SeriesID.', '.$SeriesID.', 1, '.$j.', '.$Enabled.')';
  75.             //echo $query.'<br/>';
  76.             $status = executeArchonDBQuery($query);
  77.             $SubseriesID        = mysql_insert_id();
  78.            
  79.             if($containerHierarchy[sizeof($containerHierarchy)-1]!=$LevelContainers["Sub-Series"]){
  80.                 array_push($containerHierarchy, $LevelContainers["Sub-Series"]);
  81.                 // echo print_r($containerHierarchy).'<br/>';
  82.             }
  83.            
  84.             if ($status==0){
  85.                 echo '---<b>Insert Sub-Series  -'.$Subseries.' Failed</b> <br/>';
  86.             }else{
  87.                 echo '---Insert Sub-Series [ID-'.$SubseriesID.' Root ID-'.$SeriesID.' Parent ID-'.$SeriesID.'] -'.$Subseries.' Success. <br/>';
  88.                 $TotalCount++;
  89.             }
  90.         }
  91.        
  92.         $k = 1;
  93.         //Get all boxes per sub-series
  94.         $query = 'SELECT Box, BoxNumber FROM '.$TEMP_TBL_NAME.' WHERE Series="'.$Series.'" AND Subseries="'.$Subseries.'" GROUP BY BoxNumber ORDER BY RowID';
  95.         //echo $query.'<br/>';
  96.         $resultBoxes = executeTempDBQuery($query);
  97.         while($row = mysql_fetch_assoc($resultBoxes)){
  98.             //Get Box Number
  99.             $BoxNumber  = trim($row{'BoxNumber'});
  100.             $Box        = mysql_real_escape_string(trim($row{'Box'}));
  101.            
  102.             //Check if BoxNumber is not empty
  103.             if(!empty($BoxNumber)){
  104.                 resetParentID($LevelContainers["Box"]);
  105.                 //Insert Box
  106.                 $query = 'INSERT INTO tblCollections_Content(
  107.                     CollectionID, LevelContainerID, LevelContainerIdentifier, Title, PrivateTitle, RootContentID, ParentID, ContainsContent, SortOrder, Enabled)
  108.                     VALUES ('.$COLLECTION_ID.', '.$BOX_CONTAINER_LEVEL_ID.', "'.$BoxNumber.'", "'.$Box.'", "'.$Box.'-'.$BoxNumber.'", '.$SeriesID.', '.$ParentID.', 1, '.$k.', '.$Enabled.')';
  109.                 //echo $query.'<br/>';
  110.                 $status = executeArchonDBQuery($query);
  111.                 $BoxID              = mysql_insert_id();
  112.                
  113.                 if($containerHierarchy[sizeof($containerHierarchy)-1]!=$LevelContainers["Box"]){
  114.                     array_push($containerHierarchy, $LevelContainers["Box"]);
  115.                     // echo print_r($containerHierarchy).'<br/>';
  116.                 }
  117.                
  118.                 if ($status==0){
  119.                     echo '--- ---<b>Insert Box  -'.$BoxNumber.'-'.$Box.' Failed</b> <br/>';
  120.                 }else{
  121.                     echo '--- ---Insert Box [ID-'.$BoxID.' Root ID-'.$SeriesID.' Parent ID-'.$ParentID.'] -'.$BoxNumber.'-'.$Box.' Success. <br/>';
  122.                     $TotalCount++;
  123.                 }
  124.             }
  125.            
  126.             $m = 1;
  127.             //Get all Folders per Box
  128.             $query = 'SELECT Folder, FolderNumber FROM '.$TEMP_TBL_NAME.' WHERE Series="'.$Series.'" AND Subseries="'.$Subseries.'" AND BoxNumber="'.$BoxNumber.'" GROUP BY FolderNumber  ORDER BY RowID';
  129.             //echo $query.'<br/>';
  130.             $resultFolders = executeTempDBQuery($query);
  131.             while($row = mysql_fetch_assoc($resultFolders)){
  132.                 //Get Folder Number
  133.                 $FolderNumber   = trim($row{'FolderNumber'});
  134.                 $Folder         = mysql_real_escape_string(trim($row{'Folder'}));
  135.                
  136.                 //Check if FolderNumber is not empty
  137.                 if(!empty($FolderNumber)){
  138.                     resetParentID($LevelContainers["Folder"]);
  139.                     //Insert Folder
  140.                     $query = 'INSERT INTO tblCollections_Content(
  141.                         CollectionID, LevelContainerID, LevelContainerIdentifier, Title, PrivateTitle, RootContentID, ParentID, ContainsContent, SortOrder, Enabled)
  142.                         VALUES ('.$COLLECTION_ID.', '.$FOLDER_CONTAINER_LEVEL_ID.', "'.$FolderNumber.'", "'.$Folder.'", "'.$Folder.'", '.$SeriesID.', '.$ParentID.', 1, '.$m.', '.$Enabled.')';
  143.                     $status = executeArchonDBQuery($query);
  144.                     $FolderID           = mysql_insert_id();
  145.                    
  146.                     if($containerHierarchy[sizeof($containerHierarchy)-1]!=$LevelContainers["Folder"]){
  147.                         array_push($containerHierarchy, $LevelContainers["Folder"]);
  148.                         // echo print_r($containerHierarchy).'<br/>';
  149.                     }
  150.                    
  151.                     if ($status==0){
  152.                         echo '<b>--- --- ---Insert Folder  -'.$FolderNumber.'-'.$Folder.' Failed</b> <br/>';
  153.                     }else{
  154.                         echo '--- --- ---Insert Folder [ID-'.$FolderID.' Root ID-'.$SeriesID.' Parent ID-'.$ParentID.'] -'.$FolderNumber.'-'.$Folder.' Success. <br/>';
  155.                         $TotalCount++;
  156.                     }
  157.                 }
  158.            
  159.                 $n = 1;
  160.                 //Get all Items per Box
  161.                 $query = 'SELECT Item, ItemNumber, Title, Date, Description FROM '.$TEMP_TBL_NAME.' WHERE Series="'.$Series.'" AND BoxNumber="'.$BoxNumber.'" AND FolderNumber="'.$FolderNumber.'" AND Subseries="'.$Subseries.'"';
  162.                 //echo $query.'<br/>';
  163.                 $resultItems = executeTempDBQuery($query);
  164.                 //if(mysql_num_rows($resultItems)>0){}
  165.                 while($row = mysql_fetch_assoc($resultItems)){
  166.                     //Get Item Number
  167.                     $Item           = mysql_real_escape_string(trim($row{'Item'}));
  168.                     $ItemNumber     = trim($row{'ItemNumber'});
  169.                     $Title          = mysql_real_escape_string(trim($row{'Title'}));
  170.                     $Date           = trim($row{'Date'});
  171.                     $Description    = mysql_real_escape_string(trim($row{'Description'}));
  172.                    
  173.                     //Check if ItemNumber is not empty
  174.                     if(!empty($ItemNumber)){
  175.                         resetParentID($LevelContainers["Item"]);
  176.                         //Insert Item
  177.                         $query = 'INSERT INTO tblCollections_Content(
  178.                             CollectionID, LevelContainerID, LevelContainerIdentifier, Title, PrivateTitle, Date, Description, RootContentID, ParentID, ContainsContent, SortOrder, Enabled)
  179.                             VALUES ('.$COLLECTION_ID.', '.$ITEM_CONTAINER_LEVEL_ID.', "'.$ItemNumber.'", "'.$Item.'", "'.$Title.'", "'.$Date.'", "'.$Description.'", '.$SeriesID.', '.$ParentID.', 0, '.$n.', '.$Enabled.')';
  180.                         //echo $query.'<br/>';
  181.                         $status = executeArchonDBQuery($query);
  182.                         $ItemID = mysql_insert_id();
  183.                        
  184.                         if($containerHierarchy[sizeof($containerHierarchy)-1]!=$LevelContainers["Item"]){
  185.                             array_push($containerHierarchy, $LevelContainers["Item"]);
  186.                             // echo print_r($containerHierarchy).'<br/>';
  187.                         }
  188.                        
  189.                         if ($status==0){
  190.                             echo '<b>--- --- --- ---Insert Item  -'.$ItemNumber.'-'.$Title.'-'.$Item.' Failed</b> <br/>';
  191.                         }else{
  192.                             echo '--- --- --- ---Insert Item [ID-'.$SubseriesID.' Root ID-'.$SeriesID.' Parent ID-'.$ParentID.'] -'.$ItemNumber.'-'.$Title.'-'.$Item.' Success. <br/>';
  193.                             $TotalCount++;
  194.                         }
  195.                     }
  196.                     //$rowsProcessed++;
  197.                     unset($ItemNumber);
  198.                     $n++;
  199.                 }
  200.                 unset($FolderNumber);
  201.                 $m++;
  202.             }
  203.             unset($BoxNumber);
  204.             $k++;
  205.         }
  206.         unset($Subseries);
  207.         $j++;
  208.     }
  209.     unset($Series);
  210.     $i++;
  211. }
  212.  
  213. echo $TotalCount.' records inserted.';
  214.  
  215. function resetParentID($currentLevelContainer){
  216.     global $LevelContainers;
  217.     global $containerHierarchy;
  218.    
  219.     if (($currentLevelContainer != $containerHierarchy[sizeof($containerHierarchy)-1])){
  220.        
  221.         if(($currentLevelContainer > $containerHierarchy[sizeof($containerHierarchy)-1])){
  222.             //Current container is the child of the last container (traveling down)
  223.             $lastParent = $containerHierarchy[sizeof($containerHierarchy)-1];
  224.             switch ($lastParent) {
  225.                 case $LevelContainers["Series"]:
  226.                     $GLOBALS[ParentID] = $GLOBALS[SeriesID];
  227.                     //echo 'Reset Parent to Series<br/>';
  228.                     break;
  229.                 case $LevelContainers["Sub-Series"]:
  230.                     $GLOBALS[ParentID] = $GLOBALS[SubseriesID];
  231.                     //echo 'Reset Parent to Sub Series<br/>';
  232.                     break;
  233.                 case $LevelContainers["Box"]:
  234.                     $GLOBALS[ParentID] = $GLOBALS[BoxID];
  235.                     //echo 'Reset Parent to Box<br/>';
  236.                     break;
  237.                 case $LevelContainers["Folder"]:
  238.                     $GLOBALS[ParentID] = $GLOBALS[FolderID];
  239.                     //echo 'Reset Parent to Folder<br/>';
  240.                     break;
  241.             }
  242.         }
  243.         else{
  244.             //Traveling back up
  245.             $lastContainerType = array_pop($containerHierarchy);
  246.            
  247.             while($lastContainerType >= $currentLevelContainer){
  248.                 $lastContainerType = array_pop($containerHierarchy);
  249.             }
  250.            
  251.             switch ($lastContainerType) {
  252.                 case $LevelContainers["Series"]:
  253.                     $GLOBALS[ParentID] = $GLOBALS[SeriesID];
  254.                     //echo 'Reset Parent to Series<br/>';
  255.                     break;
  256.                 case $LevelContainers["Sub-Series"]:
  257.                     $GLOBALS[ParentID] = $GLOBALS[SubseriesID];
  258.                     //echo 'Reset Parent to Sub Series<br/>';
  259.                     break;
  260.                 case $LevelContainers["Box"]:
  261.                     $GLOBALS[ParentID] = $GLOBALS[BoxID];
  262.                     //echo 'Reset Parent to Box<br/>';
  263.                     break;
  264.                 case $LevelContainers["Folder"]:
  265.                     $GLOBALS[ParentID] = $GLOBALS[FolderID];
  266.                     //echo 'Reset Parent to Folder<br/>';
  267.                     break;
  268.             }
  269.         }
  270.        
  271.     }
  272. }
  273.  
  274. //Archon DB
  275. function executeArchonDBQuery($query){
  276.     $dbuser = '';
  277.     $dbpass = '';
  278.     $dbname = 'Archon';
  279.     $dbhost = 'localhost';
  280.    
  281.     $dbh = mysql_connect($dbhost,$dbuser,$dbpass) or die (mysql_error());
  282.     $selected = mysql_select_db($dbname,$dbh) or die (mysql_error());
  283.     return mysql_query($query);
  284. }
  285.  
  286. //Temp DB
  287. function executeTempDBQuery($query){
  288.     $dbuser = '';
  289.     $dbpass = '';
  290.     $dbname = 'ArchonTemp';
  291.     $dbhost = 'localhost';
  292.    
  293.     $dbh = mysql_connect($dbhost,$dbuser,$dbpass) or die (mysql_error());
  294.     $selected = mysql_select_db($dbname,$dbh) or die (mysql_error());
  295.     return mysql_query($query);
  296. }
  297. ?>
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top