Closed (won't fix)
Project:
Mobile Tools
Version:
7.x-2.x-dev
Component:
Code
Priority:
Normal
Category:
Bug report
Assigned:
Reporter:
Created:
28 Apr 2011 at 21:43 UTC
Updated:
30 May 2012 at 17:32 UTC
There is a call to a now deprecated function drupal_query_string_encode() on line 185 of mobile_tools.module. This function has now been replaced by drupal_http_build_query() with a requirement to run the $_GET array through another new module drupal_get_query_parameters(). This is detailed here: http://drupal.org/update/modules/6/7#get_querystring
So line 185 currently reads:
$query = drupal_query_string_encode($query, array('q'));
Is now:
$query = drupal_http_build_query(drupal_get_query_parameters($_GET, array('q', 'page')));
Paul
Comments
Comment #1
paul_gregory commentedMy mistake, I messed up the replacement line. The function
drupal_http_build_query()is called later byurl()so isn't needed here and the 'q' part of the query string is removed by default bydrupal_get_query_parameters()so the new line should really be:Paul
Comment #2
mgiffordThat allowed me to login.
So with this the whole function should be:
Comment #3
minoroffense commentedThe code works but needs a little tweak.
You should pass all the parts of the URL through url() and not just append the generated query path to the string. If someone is using url_outbound_alter (or whatever that hook is) they won't be able to properly rewrite the entire link.
An example usage would be if someone needed to rewrite all links to be https vs http instead. I've had to do that in the past with Drupal behind a reverse proxy with ssl termination.
Anyways, if you can update the code to ensure everything is passed through url() we'll be good to go.
Thanks!
Comment #4
devin carlson commentedThe 7.x-2.x branch of Mobile Tools in now unsupported.