|
@@ -152,10 +152,27 @@ function tripal_blast_generate_linkout_link($url_prefix, $hit, $info, $options =
|
|
|
|
|
|
if (isset($hit->{'linkout_id'})) {
|
|
|
$hit_url = $url_prefix . $hit->{'linkout_id'};
|
|
|
+
|
|
|
+ // Split out the CGI params, if any
|
|
|
+ $params = array();
|
|
|
+ if (!$paramstr=strstr($hit_url, '?')) {
|
|
|
+ $url_prefix = $hit_url;
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ $url_parts = preg_split("/\?/", $hit_url);
|
|
|
+ $url_prefix = $url_parts[0];
|
|
|
+ $param_list = preg_split("/\&/", $url_parts[1]);
|
|
|
+
|
|
|
+ foreach ($param_list as $param) {
|
|
|
+ $param_parts = preg_split("/=/", $param, 2);
|
|
|
+ $params[$param_parts[0]] = $param_parts[1];
|
|
|
+ }
|
|
|
+ }//URL contains CGI parameters
|
|
|
+
|
|
|
return l(
|
|
|
$hit->{'linkout_id'},
|
|
|
- $hit_url,
|
|
|
- array('attributes' => array('target' => '_blank'))
|
|
|
+ $url_prefix,
|
|
|
+ array('attributes' => array('target' => '_blank'), 'query' => $params)
|
|
|
);
|
|
|
}
|
|
|
else {
|