Latest News: (loading..)


  • Content count

  • Joined

  • Last visited


About wdepot

Profile Information

Recent Profile Visitors

20,300 profile views
  1. I'm trying to post an update to an add-on I created and can't log in to the add-ons site. Is there some way you can notify me when that issue gets fixed?
  2. Image resize is done by the tep_create_thumbnail function that is added to catalog/admin/includes/functions/general.php during install step 5.
  3. Yes, the new function should be added to catalog/includes/functions/general.php as you suspected.
  4. I've just posted an bug fix to the Extra Product Fields 2.3 contribution at which fixes a failure to hide a restricting field dropdown if that field is set as not applying to the category being browsed.
  5. I've just posted an update to the Extra Product Fields contribution at which adds the ability to restrict extra fields to being available only to products which exist in certain categories.
  6. Bundled Products version 2.0 has been posted to the contribs. New features include: --Changed database definitions of the fields so that the type of the ids in the product_bundles table is the same as the products_id in the products table. Also changed the products_bundles definition from tinytext to enumerated to save database space. --Replaced hardcoded language in categories.php with defined language. --Added capability of properly duplicating product bundles in categories.php. --Added instruction for properly deleting a bundle. --Added preview of bundle information in categories.php to match the one in product_info.php. --If the same product is added to a bundle twice the quantities are combined so that only one line per subproduct exists in the product_bundles table which enables PRIMARY indexing on this table. --Added headings for the Bundled products columns during edit, hid the fields for the subproduct ids, and disabled entry in the subproduct name fields to prevent possible errors that might be caused by tampering with these fields during entry/editing. --Changed code that only allowed bundles to be nested one level to allow nesting to any level. --Added code to prevent adding to a bundle another bundle that, directly or via nested bundles, contains the bundle being edited. --Added code for checking bundle stock that was missing from checkout_payment.php. --Added code to verify that a product marked as a bundle actually is one. If a product is marked as a bundle during editing in categories.php but no products are added to it the bundle will be changed to "no" while saving the product in the database. --Bundle weight is calculated automatically from the products it contains when saving the bundle to the database. --Added code for the packaging routines added to the shopping cart class by the UPSXML contribution so that information for bundle products comes from the products contained in the bundle.
  7. It sounds to me like you just need to create entirely new products instead. Use the Copyto/Duplicate function if most of the information will remain the same and you could save yourself some typing.
  8. I've just posted an update to the Extra Product Fields contribution at which fixes a small bug during field creation where a question related only to text fields was being required during the creation of a list type field. I also added an install instruction so that existing Extra Fields are properly handled if a language is added or deleted using Admin/Localization/Languages.
  9. I suspect you may be running into a permissions problem here. In order to create a thumbnail image the product_thumbnails directory and every product image directory that it contains must be able to be read AND written by your web site. Assuming you were previously using osCommerce, set the permissions the same as you had on the original catalog/images folder. This holds true for all of the new folders for this contribution. The same problem is probably causing the problem with deleting an image. Both the image file itself AND the directory that contains it must be writable by your web site in order for the prod-img-manager program to be able to delete the file. Normally the directory permissions should be set to the minimum required to allow your admin site to write to the image directories. If your site directories are owned by PHP you should be able to set the directory permissions to 755. If PHP is in the same group as the owner of your site directories then permissions would have to be 775. And if PHP is merely considered a guest user of your site directories then you would have to set permissions on all of the image directories to 777. The default permissions on new image files uploaded by osCommerce is 777 so it is probably a directory permission problem that is causing the delete to fail.
  10. The Extra Product Fields contribution version 2 and higher allows you to easily create fields that use radio buttons, drop down lists or check boxes. It even includes a utility to convert data from Product Extra Fields to Extra Product Fields.
  11. You missed installing the code at the beginning of index.php that loads the $epf array with the extra field information. Since $epf doesn't get defined as an array the foreach ($epf as $e) creates an error.
  12. Version 2.2 of the contribution addresses this request.
  13. I haven't heard of the customer extra fields contribution. If the conflicting file names are simply the administration maintenance files like extra_fields.php you should be able to get by with renaming the file (don't forget to rename it's language file the same) and adjusting the define in filenames.php to match. If they use the same defined name (FILENAME_EXTRA_FIELDS) then things will be much more complicated and you would need to edit one of the contributions to use a totally new defined name. If the conflict is a database table (doubtful) then rename one table and adjust the define in database_tables.php. If there is a conflict in the defined name (TABLE_EXTRA_FIELDS) then once again you would need to totally edit one contribution. Best of luck to you.
  14. I had someone ask about integrating Extra Product Fields into the categories box but found it easier to put into the quick search box. Since this box isn't likely to have other modifications made to it I just posted the new search box file with extra fields integrated into it as part of the contribution.
  15. It should be easy enough. The first section of code that builds the epf array you will copy directly from advanced_search.php since no changes need to be made to it. The section that displays the fields will need to be modified somewhat to work in the info box. I would probably do it as follows: $extras = ''; foreach ($epf as $e) { $extras .= '<tr><td class="infoBoxContents valign="top" colspan="3">' . $e['label'] . '</td></tr><tr><td class="infoBoxContents valign="top" colspan="3">'; if ($e['uses_list']) { $extras .= tep_draw_pull_down_menu($e['field'], tep_build_epf_pulldown($e['id'], $languages_id, array(array('id' => '', 'text' => TEXT_ANY_VALUE)))); } else { $extras .= tep_draw_input_field($e['field']); } $extras .= '</td></tr>'; } Then all you need to do is splice the $extras variable into the statement that sets $info_box_contents[] in the postion where you want it to appear. If you want the extras at the end break the: '</td></tr></table>' into '</td></tr>' . $extras . '</table>' If you want it to appear somewhere in the middle then break any </tr><tr> pair into this: </tr>' . $extras . '<tr> If you insert the extra fields before the price as I did in advanced_search.php then your final file would look like this: <!-- search //--> <tr> <td> <?php $info_box_contents = array(); $info_box_contents[] = array('text' => BOX_HEADING_ADVSEARCH); new infoBoxHeading($info_box_contents, false, false); // begin Extra Product Fields $epf_query = tep_db_query("select e.epf_id, e.epf_uses_value_list, l.epf_label from " . TABLE_EPF . " e join " . TABLE_EPF_LABELS . " l where e.epf_status and e.epf_advanced_search and (e.epf_id = l.epf_id) and (l.languages_id = " . (int)$languages_id . ") and l.epf_active_for_language order by e.epf_order"); $epf = array(); while ($e = tep_db_fetch_array($epf_query)) { $epf[] = array('id' => $e['epf_id'], 'label' => $e['epf_label'], 'uses_list' => $e['epf_uses_value_list'], 'field' => 'extra_value' . ($e['epf_uses_value_list'] ? '_id' : '') . $e['epf_id']); } $extras = ''; foreach ($epf as $e) { $extras .= '<tr><td class="infoBoxContents valign="top" colspan="3">' . $e['label'] . '</td></tr><tr><td class="infoBoxContents valign="top" colspan="3">'; if ($e['uses_list']) { $extras .= tep_draw_pull_down_menu($e['field'], tep_build_epf_pulldown($e['id'], $languages_id, array(array('id' => '', 'text' => TEXT_ANY_VALUE)))); } else { $extras .= tep_draw_input_field($e['field']); } $extras .= '</td></tr>'; } // end Extra Product Fields $info_box_contents = array(); $info_box_contents[] = array('form' => tep_draw_form('advanced_search', tep_href_link(FILENAME_ADVANCED_SEARCH_RESULT, '', 'NONSSL', false), 'get'), 'text' => '<table border="0" width="100%" cellspacing="0" cellpadding="1"><tr><td class="infoBoxContents" valign="top" colspan="3">' . BOX_ADVSEARCH_KW . '</td></tr><tr><td class="infoBoxContents" valign="top" colspan="3">' . tep_draw_hidden_field('search_in_description','1') . tep_draw_input_field('keywords', '', 'size="15" maxlength="30" style="width: ' . (BOX_WIDTH-30) . 'px"') . tep_image_submit('button_quick_find.gif', BOX_HEADING_ADVSEARCH) . '</td></tr>' $extras . '<tr><td class="infoBoxContents" valign="top" colspan="3">' . BOX_ADVSEARCH_PRICERANGE . '</td></tr><tr><td class="infoBoxContents" valign="top" colspan="3">' . tep_draw_input_field('pfrom','','size="3" maxlength="4"') . BOX_ADVSEARCH_PRICESEP . tep_draw_input_field('pto','','size="3" maxlength="4"') . '</td></tr><tr><td class="infoBoxContents" valign="top" colspan="3">' . BOX_ADVSEARCH_CAT . '</td></tr><tr><td class="infoBoxContents" valign="top" colspan="3">' . tep_draw_pull_down_menu('categories_id', tep_get_categories(array(array('id' => '', 'text' => BOX_ADVSEARCH_ALLCAT)))) . '</td></tr></table>'); new infoBox($info_box_contents); ?> </td> </tr> <!-- search_eof //-->