Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

guntersammet

Members
  • Posts

    359
  • Joined

  • Last visited

Posts posted by guntersammet

  1. Been working on it today to improve it a bit. Have again a look at http://oscommerce.sammysolutions.com/showc...amp;action=edit

     

    Additionally I added an edit tool for the order comments:

     

    http://oscommerce.sammysolutions.com/showc...us_comments.php

     

    Settings should be pretty self explanatory. You can add placeholders to the comment. Convention is <<|your question here|>> (tag starts with <<| and ends with |>>, the text inbetween is the question for the prompt box. Have a look at the fourth and fifth comment.

     

    Please have a look and let me know if there are any bugs. Will try to package it up sometime this week!

     

    Cheers,

     

    Gunter

  2. hi gunter,

     

    this is a nice addition and I think it works great

    except for the order comments.

     

    I currently am using an existing order comments contribution which adds the comments i.s.o. replacing the complete text. I think that would be more approriate.

     

    Also the contribution I use allows for input which then gets formatted correctly, for instance to compose a tracking url.

    Yours and that contribution combined would be ideal :)

     

    Carine

     

    Hi Carine:

    Can you please point me to that contribution.

    Thanks,

     

    Gunter

  3. I'm getting the following error

     

    1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''affiliate_affiliate where affiliate_email_address = ''' at line

     

    select customers_id, customers_firstname, customers_lastname, customers_password, customers_email_address, customers_default_address_id, affiliate_id, affiliate_firstname, affiliate_password, affiliate_email_address from customers where customers_email_address = 'affiliate_affiliate where affiliate_email_address = ''

     

    [TEP STOP]

    the script that it realtes to is...

    $check_customer_query = tep_db_query("select customers_id, customers_firstname, customers_lastname, customers_password, customers_email_address, customers_default_address_id, affiliate_id, affiliate_firstname, affiliate_password, affiliate_email_address from " . TABLE_CUSTOMERS . " where customers_email_address = '" . tep_db_input($email_address) . TABLE_AFFILIATE . " where affiliate_email_address = '" . tep_db_input($email_address) . "'");

    if (!tep_db_num_rows($check_customer_query)) {

    $error = true;

    } else {

    $check_customer = tep_db_fetch_array($check_customer_query);

    can customers_email_address, and affiliate_email_address be used for ($email_address)

    ???

     

    You can't have 2 where clauses. Not sure if this has been caused by adding a contribution but you might want to try the following:

     

    $check_customer_query = tep_db_query("select customers_id, customers_firstname, customers_lastname, customers_password, customers_email_address, customers_default_address_id, affiliate_id, affiliate_firstname, affiliate_password, affiliate_email_address from " . TABLE_CUSTOMERS . " where customers_email_address = '" . tep_db_input($email_address) . " and affiliate_email_address = '" . tep_db_input($email_address) . "'");

     

    In this case you will need an email address in the $email_address variable and affiliate_email_address needs to be a column in the customers table AND both email fields need to have the same email address in it.

    HTH

     

    Gunter

  4. Hi all:

    While working on some other contributions I added a little functionality to the order update email. Have a look at: http://oscommerce.sammysolutions.com/showc...amp;action=edit to see what I mean. I added a select to select the language the email should be sent at. Also added a field to the database to capture the order language. If this is set, it automatically suggests that language. Besides that I added a little selector box where you can select default comments in the respective language (there is currently no admin tool for the comments).

    Just been wondering if this would be of some interest to the community. If yes, I'll try to package it as a contribution.

    Any input appreciated!

    Cheers,

     

    Gunter

  5. Hi all:

    Been working on a new and improved inventory system. It's almost ready for release and it would be nice if I could get some testers and input from the community to weed out bugs and such.

     

    The admin for the attributes can be found here:

    http://oscommerce.sammysolutions.com/showc...attributes2.php

     

    -->On this page you can add/remove options from a product and update the inventory.

    -->To the right of the products selector is a link to "[Add/Edit/Delete Option Groups and Values]". I hope everything is pretty intuitive to use. There are a few tiny issues. Please check below in the todo list and known bugs list. Also want to mention that if you click on this link, you only will be able to add a new option group after you selected an option.

    Option values can be sorted on this page. Unfortunately options can't be sorted at the moment. I might address this down the road but it would have been a lot of work (at the time I discovered that this would be a nice to have) to add it right now and I don't have the time. Sortorder is the ID for option groups. Workaround would be, to delete option groups and recreate them. E.g. for clothing it would make sense to have the size first and then other attributes.

     

     

    The shop URL is as folows:

    http://oscommerce.sammysolutions.com/showcase2/index.php

     

    -->Product with multiple attributes will have a dynamic generated drop down. If the browser supports it (tested on Firefox and IE. Would be nice if testers could test it on different browsers). only attributes with inventory will show. I set up a sample here: http://oscommerce.sammysolutions.com/showc...products_id=140

    If JavaScript is turned off or the browser doesn't support it (didn't test browsers that don't support the dynamic option generation), there will be a link displayed. If the user clicks it, a session variable is set and all attributes will be displayed. The inventory check will be done during checkout.

     

     

    todo list:

    ======

    -Add the product status to the drop down selector in admin.

    -Display the option values in admin in sorted order (as set in the option admin page).

    -Add an "Add Option Group" button to the option admin popup before an option is selected.

    -Package the changes to release it as a contribution.

    -Write an installation manual and basic usage manual.

    -Write a "how to" to add programming changes to contributions that need to change the inventory (e.g. order admin contributions).

    -Functionality to increase inventory again when order status is changed to specific statuses (e.g. Cancelled). Currently it only increases the inventory when the order is deleted and the "increase inventory" checkbox is selected.

     

    known bugs:

    ========

    -If you update inventory (form submit) and you click on the "[Add/Edit/Delete Option Groups and Values]" link and then click the "[Return to Attribute Admin]" link, the page refresh does another form submit. If you confirm the form submit, it does the action again. If you inserted inventory for a product the first time, it will result in a sql error. If you cancel, the changes to option groups/values won't be reflected at the current screen. You have to select another product and then return again.

     

    known annoyances/potential issues:

    =======================

    -There is no inventory check in the checkout_process.php. If sombody stays for too long on the confirmation page and somebody else orders the last product, the order still goes through resulting in a negative inventory.

     

     

    Looking forward to lots of input!

    Thanks,

     

    Gunter

  6. Not 100% sure what you try to do. somehow it appears to me that you want to sum up the $cart_num array but you use count which returns you the number of elements in the array.

     

    BTW, did you have a look at my gift registry contribution (http://www.oscommerce.com/community/contributions,1226/category,all/search,registry)?

     

    HTH

     

    Gunter

     

     

    >_< Okay. Three days of no avail I have finally concluded I need help.

     

    I am building a gift registry. Anyways.... here is the code that adds it to the cart.

     

    case 'add_product_user':
    
    include('registry/display/cart/add.php'); 
    
    $amount2 = count($cart_num);
    
    $cart->add_cart($HTTP_GET_VARS['products_id'], $cart->get_quantity($HTTP_GET_VARS['products_id'])+$amount2);	
    
    tep_redirect(tep_href_link($goto, tep_get_all_get_params($parameters)));
    
    break;

     

    Now. Two things happens here. Inside Add.php it adds it to my gift registry correctly, and inside add.php is an array that I created call cart_num to make sure it counts it so it can add the correct quantity to the cart.

     

    $Amount2 is the amount that should be added to the shopping cart. It doesnt even matter if the array isnt being populated correctly it should still represent 1 in $cart_num if I were to count it. But the fact is that the array is being populated correctly as it adds the correct number of ppl to my table for the registry. But when it trys to add the quantity to my cart, upon redirect my shopping cart is completly empty and if there were items already in the cart before, they are now gone. Can someone help me? :(

  7. I've found some more problems. With the gift registry, in the shopping cart when I try and change the amount of quantity in the shopping cart for an item, it will not update it, it'll leave the same amount.

     

    Can you please post a step by step instruction how I can reproduce this!?

     

    G.

  8. Sorry. Didn't see this thread earlier. Haven't been around in the forum too much lately.

     

    If the cart looses the registry mode this is usually because it looses the session. Make sure your session paths and domains are set correctly in configure.php.

    Also make sure the tmp directory isn't shared with other osc installs. You may try to create a tmp directory in your web directory, give it world write permissions and then set the path in admin - configuration - sessions. Make sure it's an absolute path from root.

    HTH

     

    Gunter

  9. There is a little bug in the description of the install. You need to move the "update bundle contents" in categories.php a few lines down. It should look like this:

     

              if ($action == 'insert_product') {
               $insert_sql_data = array('products_date_added' => 'now()');
    
               $sql_data_array = array_merge($sql_data_array, $insert_sql_data);
    
               tep_db_perform(TABLE_PRODUCTS, $sql_data_array);
               $products_id = tep_db_insert_id();
    
               tep_db_query("insert into " . TABLE_PRODUCTS_TO_CATEGORIES . " (products_id, categories_id) values ('" . (int)$products_id . "', '" . (int)$current_category_id . "')");
             } elseif ($action == 'update_product') {
               $update_sql_data = array('products_last_modified' => 'now()');
    
               $sql_data_array = array_merge($sql_data_array, $update_sql_data);
    
               tep_db_perform(TABLE_PRODUCTS, $sql_data_array, 'update', "products_id = '" . (int)$products_id . "'");
             }
    
               // update bundle contents
               if ($HTTP_POST_VARS['products_bundle'] == 'yes') {
                 tep_db_query("DELETE FROM products_bundles WHERE bundle_id = '" . $products_id . "'");
                 for ($i=0, $n=6; $i<$n; $i++) {
                   if (isset($HTTP_POST_VARS['subproduct_' . $i . '_qty']) && $HTTP_POST_VARS['subproduct_' . $i . '_qty'] > 0) {
                     tep_db_query("INSERT INTO products_bundles (bundle_id, subproduct_id, subproduct_qty) VALUES ('" . $products_id . "', '" . $HTTP_POST_VARS['subproduct_' . $i . '_id'] . "', '" . $HTTP_POST_VARS['subproduct_' . $i . '_qty'] . "')");
                   }
                 }
               }
    
             $languages = tep_get_languages();

     

    Also noticed a little typo in the if statement. It should read:

     

    if ($HTTP_POST_VARS['products_bundle'] == 'yes') {

     

    AND NOT

     

    if ($HTTP_POST_VARS['products_bundle'] = 'yes') {

     

    HTH

     

    Gunter

  10. The Wishlist contrib is really great, but, it doesn't have any layaway capabilities. http://www.oscommerce.com/community/contributions,1682

    That's not the registry contribution I have been talking about. Mine is at http://www.oscommerce.com/community/contributions,1226.

     

    Didn't understand the layaway functionality completely. Can you please show me some samples or describe the functionality a bit more?

     

    G.

  11. Hey

    do you have a working demo of the registry for your site just to see?

     

    it is stable enough?

     

    with what version of Osc are you using it?

     

    Mulato

    Sorry. Just spotted that post today. You can find a demo at http://oscommerce.sammysolutions.com/registry

     

    I recently upgraded to MS2 release. There is also a MS1 available. Becuase the download it too large to upload to the contributions section I made it available on my site:

     

    http://oscommerce.sammysolutions.com/downloads

     

    HTH

     

    Gunter

     

    PS: There has been a bug in the first MS2 release. Just uploaded a ...bugfix1.zip. So if you work with the MS2 release, you might want to check out http://www.oscommerce.com/community/contributions,1226 or http://www.oscommerce.com/forums/index.php?sho...ic=28294&st=140

  12. Hello all:

    I installed the newest affiliate module (osCAffiliate v2.02) for a client and I have to modify a few things to make it work with an older 2.2 CVS version.

    Tried to compare the CVS files but it seems like the newest version isn't up on the CVS server.

    E.g. affiliate_summary.php. My download has the version 2.00 and the newest version on sourceforge is somewhere afound 1.7.

    Is there a specific reason for that?

     

    TIA

     

    Gunter

  13. I am not working on something like this at the moment and most likely not in the near future. Here a few comments/suggestions:

     

    -There is a contribution if you need to add or delete order items. I used this one before and it seems to work just fine.

     

    -I posted some code to insert a superuser PW into the cart. This allows you to login as a customer not knowing their password. You then can add an order manually without a problem.

     

    HTH

     

    Gunter

  14. Hello all:

    we are giving a free T-Shirt for each order over 50 Euro and we need to capture the size during the order process.

     

    I want to find a decent way (maybe even be packed as a contribution) to do this. Would like to get some input.

     

    There are several ways to do this. I just could display a text message and a dd in the checkout process. This would do the trick. But I would like to be able to switch this on and off and maybe even be able to change the product through admin without coding.

    One thought of mine has been, to add the product to the cart. But I can't think of a decent way on where and how to add the product and then I need to give focus to the product, have the user select the size and then continue with the checkout.

     

    Any suggestions or maybe a better idea on how to solve this problem?

    TIA

     

    Gunter

  15. That's strange. If you mail me the (login) info (catalog, admin, ftp and phpMyAdmin access) to Gunter at SammySolutions dot com, I will have a look at it.

    There should be:

     

    Enable Table Method

    True

     

    Handling Fee

    10

     

    Sort Order

    2

     

    Tax Class

    Taxable Goods

     

    Shipping Zone

    --none--

     

     

    You might want to disable and then enable again. Maybe the values didn't got written into the configuration table.

    HTH

     

    Gunter

  16. I'll see what I can do.

     

    Regarding the setup, the sequence for the tables is as follows:

     

    gp_country_to_postal --> gp_postal_to_weight --> gp_weight

     

    NO => 10 --> 10 => NO --> NO <weight string>

     

    Here the 10 is a randomly chosen number to link the 2 tables (needs to be unique). If you want to have the same shipping to several countries you can do something like this:

     

    INSERT INTO gp_country_to_postal VALUES ('US', 22);

    INSERT INTO gp_country_to_postal VALUES ('PR', 22);

    INSERT INTO gp_country_to_postal VALUES ('CA', 22);

     

     

    INSERT INTO gp_postal_to_weight VALUES (22, '', '', 'G1');

     

    INSERT INTO gp_weight VALUES ('G1', '0-1:40.90,1-2:44.48,2-3:48.57,3-4:54.19,4-5:60.33,5-6:67.49,6-7:71.06,7-8:74.13,8-9:77.20,9-10:81.29,10-11:83.85,11-12:86.40,12-13:88.96,13-14:91.52,14-15:94.07,15-16:96.63,16-17:99.19,17-18:101.74,18-19:104.30,19-20:106.86,20-21:108.90,21-22:110.95,22-23:113.50,23-24:115.55,24-25:118.10,25-26:120.15,26-27:122.71,27-28:124.75,28-29:127.31,29-30:129.35,30-31:131.40,31-32:133.95,32-33:134.00,33-34:138.56,34-35:140.60,35-36:143.16,36-37:145.20,37-38:147.76,38-39:149.80,39-40:151.85,40-41:153.89,41-42:155.94,42-43:157.98,43-44:160.55,44-45:162.59,45-46:164.63,46-47:166.68,47-48:168.72,48-49:170.77,49-50:172.81', '-1.0000', '-1.0000');

     

     

     

    The-1.0000 stands for 'no free shipping' resp. 'no subsidized shipping'. If you put another value there (e.g. 100 in free shipping), shipping will be 0. I can't recall if I finished the subsidized shipping but the idea was, if you put a value in subsidized shipping, shipping will be subsidized by a set amount. The intend for that has been, e.g. to give free shipping for your country after a certain amount and subsidize shipping to other countries by about the same amount.

    If you are interested in it, I can check this or if not finished, maybe even finish.

     

    HTH

     

    Gunter

  17. Sorry all. The time I posted the module, OSC didn't allow to upload new files to the same module and it never got changed. The 1.0. had a little bug which I fixed in 1.1. You can find it at www.sammysolutions.com/downloads/oscommerce (look for the ...version11.zip). There are 2 version files in the zip. One for before May 30,2002 [default] and after May 30. Check the readme.txt for info on that.

     

    BTW, the module only works for older CVS versions (before the new shipping stuff has been introduced [sometime last year]). Haven't had time to update it to the newest release yet. Will try to do ASAP.

     

    And here some more light to your question in the email on how it works to set up countries/zones:

     

    <snip from readme>

    The module supports the global (or local) shipping for weight and zones. The pricing in the tables are OUR current price table from German Parcel (Pricing might be different for other GP customers). Changes in the price-, postal- and country structure can be done with phpMyAdmin or any other MySQL editor.

    The module can be adapted for sender with a similar structure (countries - postal code - weight dependent pricing). You just need to change the tables. Some postal (ZIP) codes contain spaces and letters. Enter those in capital letters and without a space. The module strips spaces and converts to uppercase. For Great Britain, only the first 2 letters of the postal code are used.

    </snip from readme>

     

    And here an example:

     

    INSERT INTO gp_country_to_postal VALUES ('DE', 1);

    -->This maps the ISO2 country code to the gp_postal_to_weight table. So all entries for 1 on this table are linked to DE.

     

    INSERT INTO gp_postal_to_weight VALUES (1, '00000', '18564', 'DE1');

    INSERT INTO gp_postal_to_weight VALUES (1, '18565', '18565', 'DE2');

    INSERT INTO gp_postal_to_weight VALUES (1, '18566', '25848', 'DE1');

    ...<only a few lines extracted>...

    -->This table contains postal code ranges (here 00000 to 18564 and 18565 to 18565) for DE (1) and links it to the weight table. For countries with different weight tables, this needs to be 3 digits!!! So postal code 00000 to 18564 and 18566 to 25848 use the DE1 value from the gp_weight table and 18565 uses DE2 from the gp_weight table.

     

     

    INSERT INTO gp_weight VALUES ('DE1', '0-5:3.07,5-8:4.19,8-10:4.86,10-15:6.54,15-20:8.44,20-25:9.97,25-32:13.04,32-40:15.34', '350.0000', '-1.0000');

    ...

    -->The weight price string for the DE1 table. Shipping over 350 Euro (or whatever is the default currency) is free.

     

     

     

    This sample has only one price zone for the whole country. If the link to the weight table has only 2 digits (gp_postal_to_weight NO), the postal codes aren't checked:

    INSERT INTO gp_country_to_postal VALUES ('NO', 10);

     

    INSERT INTO gp_postal_to_weight VALUES (10, '', '', 'NO');

     

    INSERT INTO gp_weight VALUES ('NO', '0-5:18.47,5-10:20.41,10-15:21.74,15-25:25.32,25-30:29.00,30-40:30.69,40-50:35.81', '-1.0000', '-1.0000');

     

     

    REMEMBER that this was my first module for OSC. I most likely would do this different these days :-)

     

    HTH and feel free to post additional questions here. Should be subscribed to this thread now.

     

    Gunter

×
×
  • Create New...