OpenPKG CVS Repository
  http://cvs.openpkg.org/
  ____________________________________________________________________________

  Server: cvs.openpkg.org                  Name:   Ralf S. Engelschall
  Root:   /v/openpkg/cvs                   Email:  [EMAIL PROTECTED]
  Module: openpkg-src                      Date:   30-May-2008 21:18:51
  Branch: HEAD                             Handle: 2008053020185000

  Modified files:
    openpkg-src/drupal      drupal.patch

  Log:
    try to add support relative paths in the template file by switching
    the directory temporarily

  Summary:
    Revision    Changes     Path
    1.20        +26 -12     openpkg-src/drupal/drupal.patch
  ____________________________________________________________________________

  patch -p0 <<'@@ .'
  Index: openpkg-src/drupal/drupal.patch
  ============================================================================
  $ cvs diff -u -r1.19 -r1.20 drupal.patch
  --- openpkg-src/drupal/drupal.patch   29 May 2008 11:13:43 -0000      1.19
  +++ openpkg-src/drupal/drupal.patch   30 May 2008 19:18:50 -0000      1.20
  @@ -330,7 +330,7 @@
   --- /dev/null        2008-05-02 21:08:21 +0200
   +++ sites/all/modules/img_assist/img_assist_popup.js 2008-05-02 21:05:56 
+0200
   @@ -0,0 +1,20 @@
  -+/* $Id: drupal.patch,v 1.19 2008/05/29 11:13:43 rse Exp $ */
  ++/* $Id: drupal.patch,v 1.20 2008/05/30 19:18:50 rse Exp $ */
   +
   +function launch_popup(nid, mw, mh) {
   +    var ox = mw;
  @@ -583,26 +583,33 @@
   
   Index: sites/all/modules/xmlcontent/xmlcontent.module
   --- sites/all/modules/xmlcontent/xmlcontent.module.orig      2007-03-14 
22:59:59 +0100
  -+++ sites/all/modules/xmlcontent/xmlcontent.module   2008-05-29 13:11:51 
+0200
  -@@ -39,7 +39,16 @@
  ++++ sites/all/modules/xmlcontent/xmlcontent.module   2008-05-30 21:13:16 
+0200
  +@@ -39,8 +39,22 @@
          return t('Allows users to post XML node content and get it 
transformed through a configured XSLT script');
    
        case 'process':
   -      $xslt_path = drupal_get_path('module', 'xmlcontent'). '/' . 
variable_get("xmlcontent_xslt_path_$format", '');
  +-      return _xmlcontent_transform($text, $xslt_path);
   +      $tpl_path = variable_get("xmlcontent_tpl_path_$format", '');
   +      if ($tpl_path) {
   +          if (substr($tpl_path, 0, 1) != "/")
   +              $tpl_path = drupal_get_path('module', 'xmlcontent') . '/' . 
$tpl_path;
   +          $tpl = file_get_contents($tpl_path);
   +          $text = preg_replace("/&template_body;/", $text, $tpl);
  ++          $cwd = getcwd();
  ++          chdir(preg_replace("/\\/[^\\/]+\$/", "", $tpl_path));
   +      }
   +      $xslt_path = variable_get("xmlcontent_xslt_path_$format", '');
   +      if (substr($xslt_path, 0, 1) != "/")
   +          $xslt_path = drupal_get_path('module', 'xmlcontent') . '/' . 
$xslt_path;
  -       return _xmlcontent_transform($text, $xslt_path);
  ++      $result = _xmlcontent_transform($text, $xslt_path);
  ++      if ($tpl_path)
  ++          chdir($cwd);
  ++      return $result;
    
        case 'settings':
  -@@ -72,7 +81,7 @@
  +       return _xmlcontent_filter_settings($format);
  +@@ -72,7 +86,7 @@
          }
          // Does the input format of this node use XML Content filter?
          $format = filter_resolve_format($node->format);
  @@ -611,7 +618,7 @@
          if ($module != 'xmlcontent') {
            return;
          }
  -@@ -83,7 +92,10 @@
  +@@ -83,7 +97,10 @@
            return;
          }      
          
  @@ -623,7 +630,7 @@
          if (!is_file($schema_path) && ($validation == 'xsd' or $validation == 
'rng')) {
            $schema_path = null;
            watchdog( 'xmlcontent', t('Validation required but no schema 
file'), WATCHDOG_WARNING );
  -@@ -93,7 +105,16 @@
  +@@ -93,7 +110,23 @@
          libxml_clear_errors();
          libxml_use_internal_errors(true);
    
  @@ -635,13 +642,20 @@
   +              $tpl_path = drupal_get_path('module', 'xmlcontent') . '/' . 
$tpl_path;
   +          $tpl = file_get_contents($tpl_path);
   +          $text = preg_replace("/&template_body;/", $text, $tpl);
  ++          $cwd = getcwd();
  ++          chdir(preg_replace("/\\/[^\\/]+\$/", "", $tpl_path));
   +      }
   +
  -+      if (!_xmlcontent_validate($text, $validation, $schema_path)) {
  ++      $result = _xmlcontent_validate($text, $validation, $schema_path);
  ++
  ++      if ($tpl_path)
  ++          chdir($cwd);
  ++
  ++      if (!$result) {
            form_set_error('body', t('XML Content: Invalid XML') . 
libxml_errors_string());
          }
          
  -@@ -156,6 +177,13 @@
  +@@ -156,6 +189,13 @@
        '#collapsible' => TRUE,
        '#collapsed' => FALSE,
      );
  @@ -655,7 +669,7 @@
      $form['xmlcontent']["xmlcontent_xslt_path_$format"] = array(
        '#type'    => 'textfield',
        '#title'   => t('XSLT Script File Path'),
  -@@ -218,6 +246,8 @@
  +@@ -218,6 +258,8 @@
      
      // Load the XML document
      $dom = new DomDocument('1.0', 'UTF-8');
  @@ -664,7 +678,7 @@
      $valid = $dom->loadXML($xml);
      if (!$valid) {
        watchdog('xmlcontent', "Invalid XML Content", WATCHDOG_WARNING);
  -@@ -227,6 +257,8 @@
  +@@ -227,6 +269,8 @@
      // Load the XSLT script
      // TODO: is there a way to cache it, or not necessary
      $xsl = new DomDocument('1.0', 'UTF-8');
  @@ -673,7 +687,7 @@
      $xsl->load($path_to_xslt);   
    
      // Create the XSLT processor
  -@@ -242,10 +274,8 @@
  +@@ -242,10 +286,8 @@
      }
    
      // Transform
  @@ .
______________________________________________________________________
OpenPKG                                             http://openpkg.org
CVS Repository Commit List                     [email protected]

Reply via email to