$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
Subject: [Boost-commit] svn:boost r59887 - in website/public_html/beta: common/code development doc
From: daniel_james_at_[hidden]
Date: 2010-02-25 03:41:47
Author: danieljames
Date: 2010-02-25 03:41:46 EST (Thu, 25 Feb 2010)
New Revision: 59887
URL: http://svn.boost.org/trac/boost/changeset/59887
Log:
Extract the logic for finding the archive location.
Text files modified: 
   website/public_html/beta/common/code/boost_archive.php   |    67 +++++++++++++++++++----------           
   website/public_html/beta/development/testing_results.php |    14 +++--                                   
   website/public_html/beta/doc/display_build.php           |    90 ++++----------------------------------- 
   website/public_html/beta/doc/display_jam.php             |    84 ++-----------------------------------   
   website/public_html/beta/doc/display_libs.php            |     6 +                                       
   5 files changed, 71 insertions(+), 190 deletions(-)
Modified: website/public_html/beta/common/code/boost_archive.php
==============================================================================
--- website/public_html/beta/common/code/boost_archive.php	(original)
+++ website/public_html/beta/common/code/boost_archive.php	2010-02-25 03:41:46 EST (Thu, 25 Feb 2010)
@@ -6,6 +6,38 @@
 */
 require_once(dirname(__FILE__) . '/boost.php');
 
+function get_archive_location(
+    $pattern,
+    $vpath,
+    $archive_subdir = true,
+    $archive_dir = ARCHIVE_DIR,
+    $archive_file_prefix = ARCHIVE_FILE_PREFIX)
+{
+    $path_parts = array();
+    preg_match($pattern, $vpath, $path_parts);
+
+    $version = $path_parts[1];
+    $key = $path_parts[2];
+
+    if ($archive_subdir)
+    {
+        $file = $archive_file_prefix . $version . '/' . $key;
+    }
+    else
+    {
+        $file = $archive_file_prefix . $key;
+    }
+
+    $archive = str_replace('\\','/', $archive_dir . '/' . $version . '.zip');
+    
+    return array(
+        'version' => $version,
+        'key' => $key,
+        'file' => $file,
+        'archive' => $archive
+    );
+}
+
 class boost_archive
 {
     var $version_ = NULL;
@@ -21,17 +53,15 @@
     var $content_ = NULL;
     
     function boost_archive(
-        $pattern,
-        $vpath,
+        $archive_location_details,
         $content_map = array(),
-        $get_as_raw = false,
-        $archive_subdir = true,
-        $archive_dir = ARCHIVE_DIR,
-        $archive_file_prefix = ARCHIVE_FILE_PREFIX)
+        $get_as_raw = false)
     {
-        $path_parts = array();
-        preg_match($pattern, $vpath, $path_parts);
-        
+        $this->version_ = $archive_location_details['version'];
+        $this->key_ = $archive_location_details['key'];
+        $this->file_ = $archive_location_details['file'];
+        $this->archive_ = $archive_location_details['archive'];
+    
         $info_map = array_merge($content_map, array(
             array('@.*@','@[.](txt|py|rst|jam|v2|bat|sh|xml|qbk)$@i','text','text/plain'),
             array('@.*@','@[.](c|h|cpp|hpp)$@i','cpp','text/plain'),
@@ -45,18 +75,6 @@
             array('@.*@','@[^.](Jamroot|Jamfile|ChangeLog)$@i','text','text/plain'),
             array('@.*@','@[.]dtd$@i','raw','application/xml-dtd'),
             ));
-        
-        $this->version_ = $path_parts[1];
-        $this->key_ = $path_parts[2];
-        if ($archive_subdir)
-        {
-            $this->file_ = $archive_file_prefix . $this->version_ . '/' . $this->key_;
-        }
-        else
-        {
-            $this->file_ = $archive_file_prefix . $this->key_;
-        }
-        $this->archive_ = str_replace('\\','/', $archive_dir . '/' . $this->version_ . '.zip');
 
         foreach ($info_map as $i)
         {
@@ -73,6 +91,7 @@
           UNZIP
           .' -p '.escapeshellarg($this->archive_)
           .' '.escapeshellarg($this->file_);
+
         if (! $this->extractor_)
         {
             # File doesn't exist, or we don't know how to handle it.
@@ -91,6 +110,7 @@
             /* We pre-extract so we can get this like meta tag information
                before we have to print it out. */
             $this->content_ = $this->_extract_string($unzip);
+
             $extractor_name = $this->extractor_.'_filter';
             $this->extractor_instance_ = new $extractor_name;
             $this->extractor_instance_->init($this);
@@ -133,11 +153,12 @@
             $text .= fread($file_handle,8*1024);
         }
         $exit_status = pclose($file_handle);
+
         if($exit_status == 0) {
             return $text;
         }
         else {
-            $this->extractor_ = '404';
+            $this->extractor_ = 'h404';
             return strstr($_SERVER['HTTP_HOST'], 'beta')
                 ? unzip_error($exit_status) : '';
         }
@@ -277,7 +298,7 @@
     }
 }
 
-class boost_book_filter extends html_base_filter
+class boost_book_html_filter extends html_base_filter
 {
     function init($archive)
     {
Modified: website/public_html/beta/development/testing_results.php
==============================================================================
--- website/public_html/beta/development/testing_results.php	(original)
+++ website/public_html/beta/development/testing_results.php	2010-02-25 03:41:46 EST (Thu, 25 Feb 2010)
@@ -2,11 +2,13 @@
 require_once(dirname(__FILE__) . '/../common/code/boost_archive.php');
 
 $_file = new boost_archive(
-  '/^[\/]([^\/]+)[\/](.*)$/',$_SERVER["PATH_INFO"],
+  get_archive_location(
+    '/^[\/]([^\/]+)[\/](.*)$/',$_SERVER["PATH_INFO"],
+    false, // the result zips don't have the tag subdir
+    RESULTS_DIR
+  ),
   array(
   //~ array(version-regex,path-regex,raw|simple|text|cpp|boost_book_html|boost_libs_html,mime-type),
-    ),
-  true, // we always want raw output
-  false, // the result zips don't have the tag subdir
-  RESULTS_DIR);
-?>
+  ),
+  true // we always want raw output
+);
Modified: website/public_html/beta/doc/display_build.php
==============================================================================
--- website/public_html/beta/doc/display_build.php	(original)
+++ website/public_html/beta/doc/display_build.php	2010-02-25 03:41:46 EST (Thu, 25 Feb 2010)
@@ -20,87 +20,17 @@
     return stripos($content, '_uacct = "UA-2917240-2"') !== FALSE ? $content :
         str_ireplace('</head>', $analytics.'</head>', $content);
 }
-$_file = new boost_archive('@^[/]([^/]+)[/](.*)$@',$_SERVER["PATH_INFO"],array(
+
+$_file = new boost_archive(
+  get_archive_location(
+    '@^[/]([^/]+)[/](.*)$@',
+    $_SERVER["PATH_INFO"],
+    ,false,false
+  ),
+  array(
   //~ array(version-regex,path-regex,raw|simple|text|cpp|boost_book_html|boost_libs_html,mime-type[,preprocess hook]),
   array('@.*@','@^boost-build/index[.]html$@i','simple','text/html', 'add_boost_build_analytics'),
   array('@.*@','@[.](html|htm)$@i','boost_book_html','text/html')
-  ),false,false);
-
-if (!$_file->is_raw()) {
-?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
-<head>
-  <?php $_file->content_head(); ?>
-  <link rel="icon" href="/favicon.ico" type="image/ico" />
-  <link rel="stylesheet" type="text/css" href="/style/section-doc.css" />
-  <!--[if IE 7]> <style type="text/css"> body { behavior: url(/style/csshover3.htc); } </style> <![endif]-->
-  <?php #~ pwn_head(); ?>
-  <style type="text/css">
-/*<![CDATA[*/
-div.sidebar {
-  margin: 0em 0em 1em 1em !important;
-  width: 40%;
-  float: right;
-  clear: right;
-}
-  /*]]>*/
-  </style>
-<script type="text/javascript">
-  var _gaq = _gaq || [];
-  _gaq.push(['_setAccount', 'UA-2917240-2']);
-  _gaq.push(['_trackPageview']);
-
-  (function() {
-    var ga = document.createElement('script');
-    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
-    ga.setAttribute('async', 'true');
-    document.documentElement.firstChild.appendChild(ga);
-  })();
-</script>
-</head><!-- <?php print $_file->file_; ?> -->
-
-<body>
-  <div id="heading">
-    <?php virtual("/common/heading.html");?>
-  </div>
-
-  <div id="body">
-    <div id="body-inner">
-      <div id="content">
-        <div class="section" id="docs">
-          <div class="section-0">
-            <div class="section-body">
-              <?php $_file->content(); ?>
-            </div>
-          </div>
-        </div>
-      </div>
-
-      <div class="clear"></div>
-    </div>
-  </div>
-
-  <div id="footer">
-    <div id="footer-left">
-      <div id="revised">
-        <p>Revised $Date$</p>
-      </div>
-
-      <div id="copyright">
-        <p>Copyright Beman Dawes, David Abrahams, 1998-2005.</p>
-
-        <p>Copyright Rene Rivera 2004-2007.</p>
-      </div><?php virtual("/common/footer-license.html");?>
-    </div>
-
-    <div id="footer-right">
-      <?php virtual("/common/footer-banners.html");?>
-    </div>
+));
 
-    <div class="clear"></div>
-  </div>
-</body>
-</html><?php } ?>
\ No newline at end of file
+$_file->render();
\ No newline at end of file
Modified: website/public_html/beta/doc/display_jam.php
==============================================================================
--- website/public_html/beta/doc/display_jam.php	(original)
+++ website/public_html/beta/doc/display_jam.php	2010-02-25 03:41:46 EST (Thu, 25 Feb 2010)
@@ -1,85 +1,11 @@
 <?php
 require_once(dirname(__FILE__) . '/../common/code/boost_archive.php');
 
-$_file = new boost_archive('@^[/]([^/]+)[/](.*)$@',$_SERVER["PATH_INFO"],array(
+$_file = new boost_archive(
+  get_archive_location('@^[/]([^/]+)[/](.*)$@',$_SERVER["PATH_INFO"]),
+  array(
   //~ array(version-regex,path-regex,raw|simple|text|cpp|boost_book_html|boost_libs_html,mime-type[,preprocess hook]),
   array('@.*@','@[.](html|htm)$@i','boost_book_html','text/html'),
-  ));
+));
 
-if (!$_file->is_raw()) { #~ require_once(dirname(__FILE__) . '/../common/code/webnotes.php');
-?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
-<head>
-  <?php $_file->content_head(); ?>
-  <link rel="icon" href="/favicon.ico" type="image/ico" />
-  <link rel="stylesheet" type="text/css" href="/style/section-doc.css" />
-  <!--[if IE 7]> <style type="text/css"> body { behavior: url(/style/csshover3.htc); } </style> <![endif]-->
-  <?php #~ pwn_head(); ?>
-
-<script type="text/javascript">
-  var _gaq = _gaq || [];
-  _gaq.push(['_setAccount', 'UA-2917240-2']);
-  _gaq.push(['_trackPageview']);
-
-  (function() {
-    var ga = document.createElement('script');
-    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
-    ga.setAttribute('async', 'true');
-    document.documentElement.firstChild.appendChild(ga);
-  })();
-</script>
-</head><!-- <?php print $_file->file_; ?> -->
-
-<body>
-  <div id="heading">
-    <?php virtual("/common/heading.html");?>
-  </div>
-
-  <div id="body">
-    <div id="body-inner">
-      <div id="content">
-        <div class="section" id="docs">
-          <div class="section-0">
-            <div class="section-body">
-              <?php $_file->content(); ?>
-            </div>
-          </div>
-        </div>
-
-        <div class="section" id="notes">
-          <div class="section-0">
-            <div class="section-body">
-              <?php #~ pwn_body($_file->key_,$_SERVER['PHP_SELF']); ?>
-            </div>
-          </div>
-        </div>
-      </div>
-
-      <div class="clear"></div>
-    </div>
-  </div>
-
-  <div id="footer">
-    <div id="footer-left">
-      <div id="revised">
-        <p>Revised $Date$</p>
-      </div>
-
-      <div id="copyright">
-        <p>Copyright Beman Dawes, David Abrahams, 1998-2005.</p>
-
-        <p>Copyright Rene Rivera 2004-2005.</p>
-      </div><?php virtual("/common/footer-license.html");?>
-    </div>
-
-    <div id="footer-right">
-      <?php virtual("/common/footer-banners.html");?>
-    </div>
-
-    <div class="clear"></div>
-  </div> 
-</body>
-</html><?php } ?>
+$_file->render();
Modified: website/public_html/beta/doc/display_libs.php
==============================================================================
--- website/public_html/beta/doc/display_libs.php	(original)
+++ website/public_html/beta/doc/display_libs.php	2010-02-25 03:41:46 EST (Thu, 25 Feb 2010)
@@ -32,7 +32,9 @@
     return str_ireplace('</head>', $analytics.'</head>', $content);
 }
 
-$_file = new boost_archive('@^[/]([^/]+)[/](.*)$@',$_SERVER["PATH_INFO"],array(
+$_file = new boost_archive(
+  get_archive_location('@^[/]([^/]+)[/](.*)$@',$_SERVER["PATH_INFO"]),
+  array(
   //~ array(version-regex,path-regex,raw|simple|text|cpp|boost_book_html|boost_libs_html,mime-type[,preprocess hook]),
   //~ this handles most of the simple cases of index.htm(l) redirect files
   array(
@@ -95,6 +97,6 @@
   array('@.*@','@^more/.*html$@i','basic','text/html'),
   //~ the headers are text files displayed in an embeded page
   array('@.*@','@^boost/.*$@i','cpp','text/plain')
-  ));
+));
 
 $_file->render();