Changeset 22522

Show
Ignore:
Timestamp:
06/15/09 20:59:33 (1 year ago)
Author:
bergie
Message:

Quick workaround for missing GET parameters, refs #1209

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/midcom/midcom_core/services/dispatcher/midgard2.php

    r22516 r22522  
    4646                // FIXME: For some reason we get GET parameters into the argv string too, move them to get instead 
    4747                // URI (and argv) is built using $_SERVER['REQUEST_URI']. 
    48                 // Open a ticket for php-midgard if uri should be taken from other global variable 
    49                 $gets = explode('&', substr($argument, 1)); 
    50                 foreach ($gets as $get_string
     48                // See http://trac.midgard-project.org/ticket/1209 
     49                $url_components = parse_url("http://{$_SERVER['HTTP_HOST']}{$_SERVER['REQUEST_URI']}"); 
     50                if (empty($url_components['query'])
    5151                { 
    52                     $get_pair = explode('=', $get_string); 
    53                     if (count($get_pair) != 2) 
     52                    break; 
     53                } 
     54                 
     55                $query_items = explode('&', $url_components['query']); 
     56                foreach ($query_items as $query_item) 
     57                { 
     58                    $query_pair = explode('=', $query_item); 
     59                    if (count($query_pair) != 2) 
    5460                    { 
    5561                        break; 
    5662                    } 
    57                     $this->get[$get_pair[0]] = urldecode($get_pair[1]); 
     63                    $this->get[$query_pair[0]] = urldecode($query_pair[1]); 
    5864                } 
    59  
     65                 
    6066                break; 
    6167            }