Re: Google Checkout module for Zen Cart (beta)
ropu..thanks for your response. My error was a stupid one, i now have the correct files in place and procesed to add our custom shipping modules to the structure of mc_shipping_methods so i added
'upsxml' => array('domestic_types' => array('GND' => 'Ground') ),
'freight' => array('domestic_types' => array('STD' => 'Standard') ),
and i added
'upsxml' => 'UPS Ground',
'freight' => 'RL Freight',
to mc_shipping_methods_names
the shipping modules that I have active in modules shipping are "collect from store", "freight" and "upsxml" (the xml based ups ship module gleaned from oscommerce).
Sadly , when I do a checkout i still only get the "collect from store" displaying in the GCO screen" ... so when i dig into the code in googlecheckout to try and find out if its building the correct <shipping-methods> element in gcheckout.php
the first mql query in shipping....
select configuration_value from configuration where configuration_key = 'MODULE_PAYMENT_GOOGLECHECKOUT_SHIPPING';
returns
"freightSTD_VD:50, upsGND_VD:30, upsxmlGND_VD:30"
im not sure i understand how you determine what modules are activated, as far as I can tell these modules are activated ....
If you can give me any other areas to consider checking as to why GCO wontpick up these realtime methods other than the standard "collect", would be most appreciated
again , running gco latest from svn 1.0.5 and zc 1.3.6 .... the cart is at www.fitnessrubber.com
Allan
Re: Google Checkout module for Zen Cart (beta)
Hi Ropu,
I have orders coming up in the admin but they don't have complete information. I used the test responsehandler to redo an xml and i have got this error out of it:
Code:
HTTP/1.1 200 OK
Date: Wed, 14 Feb 2007 05:34:31 GMT
Server: Apache
X-Powered-By: PHP/4.3.11
Set-Cookie: zenid=blahblah; path=/; domain=kebeid.com
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Transfer-Encoding: chunked
Content-Type: text/html; charset=iso-8859-1
<?xml version="1.0" encoding="UTF-8"?><notification-acknowledgment xmlns="http://checkout.google.com/schema/2"/><br />
<b>Warning</b>: Invalid argument supplied for foreach() in <b>/hsphere/local/home/kebeid/kebeid.com/googlecheckout/responsehandler.php</b> on line <b>158</b><br />
Time to response: 2.0984630584717 segs
Note: This script MUST response in less than 3 sec. so GC srv doesn't timeout.'
Thanks,
Pete
Re: Google Checkout not updating in Admin
Quote:
Originally Posted by
nresults
Thanks for your prompt response Ropu!
The responsehandler_test.php returned the following:
**************
HTTP/1.1 200 OK
Date: Tue, 13 Feb 2007 20:45:24 GMT
Server: Apache/1.3.37 (Unix) mod_fastcgi/2.4.2 mod_auth_passthrough/1.8 mod_log_bytes/1.2 mod_bwlimited/1.4 FrontPage/5.0.2.2635.SR1.2 mod_ssl/2.8.28 OpenSSL/0.9.7a PHP-CGI/0.1b
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Pragma: no-cache
X-Powered-By: PHP/4.4.3
Set-Cookie: zenid=b2d57e15f53f5eeaaf4db13bd6d248af; path=/; domain=<<removed for privacy>>
Transfer-Encoding: chunked
Content-Type: text/html; charset=iso-8859-1
Time to response: 2.30815291405 segs
Note: This script MUST response in less than 3 sec. so GC srv doesn't timeout.'
***************
I'm currently running the following:
Zencart Version: V1.3.6
Database Patch Level: 1.3.6
Database: MySQL 4.1.21-standard
HTTP Server: Apache/1.3.37 (Unix)
PHP Version: 4.4.3 (Zend: 1.3.0)
Server API: CGI/FastCGI
PHP API: 20020918
PHP Extension: 20020429
Google Checkout: Version 1.0.4r
The response_error.log file contains the following error message, repeated with a new date for each transaction attempt.
"Tue Feb 13 14:45:24 CST 2007:- Line 119: headers['Authorization'] is NULL."
I'm a little new to this. I hope I have given you the information you need.
Thanks for your help!
nresults
Hi, there is an issue with CGI configurations.
Basic Authentication in not "compatible" with PHP over CGI (see php manual, and previous posts)
$_SERVER var cant get basic auth info
im doing a script to generate a pair of .htaccess .htpasswd to generate that auth using them.
im testing it in my srvs and delivered ASAP so you can test it.
ropu
Re: Google Checkout not updating in Admin
Quote:
Originally Posted by
ropu
Hi, there is an issue with CGI configurations.
Basic Authentication in not "compatible" with PHP over CGI (see php manual, and previous posts)
$_SERVER var cant get basic auth info
im doing a script to generate a pair of .htaccess .htpasswd to generate that auth using them.
im testing it in my srvs and delivered ASAP so you can test it.
ropu
Here is a little script to create the .htaccess .htpasswd files to use Basic Authentication with CGI PHP authentication.
Please, try it and let me know how it works for you.
Note that the apache config to allow .htaccess files must be present
Should look similar to this
Code:
<Directory /home/*/public_html>
AllowOverride All
</Directory>
Have a look to the README in the Script, you must comment PHP Validation
PHP Code:
<?php
// For function rand_salt_crypt()
// Copyright (C) 2004,2005 Jarno Elonen <[email protected]>
//
// Redistribution and use in source and binary forms, with or without modification,
// are permitted provided that the following conditions are met:
//
// * Redistributions of source code must retain the above copyright notice, this
// list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above copyright notice,
// this list of conditions and the following disclaimer in the documentation
// and/or other materials provided with the distribution.
// * The name of the author may not be used to endorse or promote products derived
// from this software without specific prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
// WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
// AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR
// BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
// ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
// EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
// .htaccess .htpasswd pair for Google Checkout Basic authentication on CGI php installations
// Coded by Ropu
// 02-14-2006 st. Valentine's day :D
/*
* README:
*
* NOTE: This must be used if you run PHP over CGI
*
* Run this script, fill the form with your Google Checkout Merchant Id/Key
* and with the absolute path to your catalog/googlechekout/ directoy.
* ie. /home/ropu/public_html/cart/googlecheckout
*
* Click "Create"
*
* Copy the contents for .htaccess and .htpasswd into those files and place
* them in that directory.
*
* Remove or comment from googlecheckout/responsehandler.php the folowing code:
*
*
[code]
//Parse the HTTP header to verify the source.
if(isset($HTTP_SERVER_VARS['PHP_AUTH_USER']) && isset($HTTP_SERVER_VARS['PHP_AUTH_PW'])) {
$compare_mer_id = $HTTP_SERVER_VARS['PHP_AUTH_USER'];
$compare_mer_key = $HTTP_SERVER_VARS['PHP_AUTH_PW'];
}
else {
error_func("HTTP Basic Authentication failed.\n");
exit(1);
}
$googlepayment = new googlecheckout();
$merchant_id = $googlepayment->merchantid;
$merchant_key = $googlepayment->merchantkey;
if($compare_mer_id != $merchant_id || $compare_mer_key != $merchant_key) {
error_func("HTTP Basic Authentication failed.\n");
exit(1);
}
[/code]
*
* Test the responsehandler.php with the responsehandler_test.php
*
*/
if(isset($_POST['submit'])) {
$user = $_POST['id'];
$pass = $_POST['key'];
$crypt_pass = rand_salt_crypt($pass);
echo "<xmp>.htaccess file:\n<<<Start---\n";
echo 'AuthName "Google checkout Basic Authentication"' . "\n";
echo 'AuthType Basic' . "\n";
echo 'AuthUserFile ' . $_POST['path'] . "/.htpasswd\n";
echo 'require valid-user' . "\n---End>>>\n";
echo "\n\n.htpasswd file:\n<<<Start---\n";
echo $user . ":" . $crypt_pass ."\n---End>>>\n</xmp>\n";
}
?>
<title>.htaccess .htpasswd pair for Google Checkout Basic authentication on CGI php installations</title>
<h2>.htaccess .htpasswd pair for Google Checkout Basic authentication on CGI php installations</h2>
<form action="" method="post">
<table>
<tr>
<th align="right">Merchant ID:</th><td><input type="text" value="<?=@$_POST['id'];?>" name="id" size="40"/></td>
</tr>
<tr>
<th align="right">Merchant Key:</th><td><input type="text" value="<?=@$_POST['key'];?>" name="key" size="40"/></td>
</tr>
<tr>
<th align="right">Absolute path to googlecheckout/ :</th><td><input type="text" value="<?=@$_POST['path'];?>" name="path" size="40"/></td>
</tr>
<tr>
<td align="center" colspan="2"><input type="submit" name="submit" value="Create"/></td>
</tr>
</table>
</form>
<?
// Generates a htpasswd compatible crypted password string.
function rand_salt_crypt( $pass )
{
$salt = "";
mt_srand((double)microtime()*1000000);
for ($i=0; $i<CRYPT_SALT_LENGTH; $i++)
$salt .= substr("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789./", mt_rand() & 63, 1);
return crypt($pass, $salt);
}
?>
ropu
Re: Google Checkout module for Zen Cart (beta)
Quote:
Originally Posted by
ropu
Tripple, the release is stable with a flat Zencart installation, the issue is when, as you may notice, must be merged with many different contributions and server configurations.
If you referring to all the misc code that people have to input into the "stable" Google Checkout release, that is what I'm referring to it be unstable. You shouldn't have to customize the code provided that much if it's correct in the first place.
Until it is provided in a single ZIP file ready to use, it is unstable in my eyes. ;)
People are obviously still having problems with orders showing up in their admin & it reading the correct shipping charges from ZenCart.
Re: Google Checkout module for Zen Cart (beta)
Trying to get the GC sandbox working... Can someone tell me exactly what I need to change in v1.04 to make it work with the new Sandbox URL?
Re: Google Checkout module for Zen Cart (beta)
Quote:
Originally Posted by
mpayson
Trying to get the GC sandbox working... Can someone tell me exactly what I need to change in v1.04 to make it work with the new Sandbox URL?
mpayson
have a look to this post, there is the solution
http://www.zen-cart.com/forum/showth...755#post315755
if you need more help, feel free to ask again
ropu
Re: Google Checkout module for Zen Cart (beta)
Quote:
Originally Posted by
ropu
Sorry, I didn't go quite far enough back to find that post.
FYI, It looks like your newest version isn't properly showing up on the website. I just noticed that the changelog on the website says that you already fixed this, but I just installed what I assumed was the latest version a few days ago, and it wasn't fixed in it. To verify that I hadn't screwed up someplace, I just downloaded it again from the Zen Cart downloads page. The changelog included in the readme in the zip file doesn't mention v1.04r, and doesn't reference the change. The last change that it references is "11/16/2006 v1.0.4 (colosports)". Line 200 of modules/payments/googlecheckout.php is:
Code:
$db->Execute("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, date_added) values ('Select Mode of Operation', 'MODULE_PAYMENT_GOOGLECHECKOUT_MODE', 'https://sandbox.google.com/', 'Select either the Developer\'s Sandbox or live Production environment', '6', '3', 'zen_cfg_select_option(array(\'https://sandbox.google.com/\', \'https://checkout.google.com/\'),',now())");
Google Checkout Multiple Fields Are Not Being Populated
Someone has already mentioned that order.order_total is not being populated by google checkout.
---------------------------------------------
Here are additional issues (if you sell special items you might want to look and see if any of your fields are not getting populated):
order.order_tax is not being populated
orders_products.prid is not being populated (i don't know the significance)
orders_products_attributes.products_attributes_weight is not being populated
orders_products_attributes.products_attributes_weight_prefix is not being populated
orders_products_attributes.attributes_qty_prices is not being populated
orders_products_attributes.attributes_qty_prices_onetime is not being populated
orders_products_attributes.products_options_id is not being populated
orders_products_attributes.products_options_values_id is not being populated
orders_products_attributes.products_prid is not being populated (i don't know the significance)
Along with this google checkout is placing abbreviated State and Country information in the order table fields. This is contrary to how Zen Cart treats these fields.
Also, with orders_total.title a different tax title is being placed into the field instead of the one that Zen Cart places in.
I use the order table to build reports. Any data changes just means I will have to take the time to clean up fields to get my reports.
Most orders show up fine... I have had one order show up without the products in the order.
Re: Google Checkout module for Zen Cart (beta)
emptied my cart testing google checkout.. and got this at the bottom of the page
Fatal error: Cannot redeclare selfurl() (previously declared in /home/poison67/public_html/yourlingerieparty/googlecheckout/gcheckout.php:37) in /home/poison67/public_html/yourlingerieparty/googlecheckout/gcheckout.php on line 36