Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

Jarus

Pioneers
  • Posts

    20
  • Joined

  • Last visited

Profile Information

  • Real Name
    Jaro

Jarus's Achievements

  1. Hi all, Done a thorough search and looks like some people have tried to do this before, but the most recent topics I found were around 4 years old from 2004. Basically what I want to do, and was in the process of doing was something like this, until I accidentally somehow lost my osComm folder, with everything I had in it ready to start this process. So I need to re-do it all. But because I lost my folder, I would also like some suggestions from you all in case I forget anything. Anyway what I want to do is this: Install an osCommerce store of the latest version. Including setting up the DB's etc. When the basic store is functioning (like a demo store..) just the stock store. Download all ESSENTIAL contributions, by that I mean any contribution that SHOULD be part of a good osCommerce store. I have a list so far, but my original list that I had in my folder had something like 20-30 contributions that I thought were essential. Install the contributions one by one, on top of the stock default store installation. Making sure to install a template contribution, to make sure all stores can be customised, design wise. When all contributions are installed, SAVE/BACKUP the whole store as a kind of "Template Store" This "Template Store" can then be used as an installation for future stores, basically a base of osC with anything a good e-commerce store should have, hence the list of contributions. As I said, I was in the process of doing this, I had downloaded all the contributions I personally thought all my stores SHOULD have at the minimum. Unfortunately I either forgot to back this folder up and have lost it, or I did back it up but can't find where I've put the backup. So I lost all the contributions I had ready for this process. Which is why I would like to compile a list with anyones help, of the contributions that people are using and are recommended to be using. But not just that, the best/friendliest version of the contribution in case there are many variants. As sometimes it can be confusing which one to use. And then maybe this could be made a sticky, for anyone that needs help with which contributions should be used with osC. The main reason I wanted to do this and see if it was possible, was because I've tried pre-packaged solutions that basically offer this pre-installed - so once you install osC, in the Admin - many contributions are already there such as SEO, WYSIWYG HTML Editors etc. But the problem is I haven't really found one Im happy with, the one closest to it hasn't seemed to be updated for at least a year, which is un-acceptable as it's based on an older release of osC. Sometimes there are extra un-necessaries also and this is why I wanted to do it myself, so that you know exactly whats in and been added to YOUR store. Here is my brief list of contributions I've been able to come up with on my own and in previous threads on this kind of topic. I would love any feedback/suggestions here, as I think it could also help any newcomers to osC especially in what can sometimes be a daunting process with finding and installing the right contributions for there needs. Header Tags (for search engines) Admin Login (several choices, to protect your admin screen) Easy Populate (organisation of your products/attributes) Paypal IPN (to fix the paypal bug) Margin Report (I like it, personally, for the tax report, maybe there's a better one?) Manufacturer Email (notify your vendors when orders are placed) MaxMind for heads-ups on fraudulent orders Attributes Sort Down for Maintenance Review Approval System Recover Cart Sales STS 4.5.8 PWA 2.0a Google Sitemap Generator for MS2 Supertracker v3.2b-agent Customer Testimonials v.3.2 Anti-Robot Registration Validation v2.6 Links Manager II V1.18 SEO_Assistant V 2.1 Missing Pictures v 2.1 cName and pName v1.5 for osCommerce-ms2 I will update my post with any contributions you guys want to add, and have them in order. But this is quite annoying, because that folder I was working on... I pretty much went through every contribution category one by one getting the essential contributions to cover every part of the store. But Ive either backed it up but cant find what disk I've put it on and maybe burnt it to a disk I forgot to write something on, or lost it in a reformat. Im still going to do my best to find them, and Ill update the post when I do... if I do. But for example, all the payment and shipping modules I could need, anything that can make the customers experience easier and friendlier, something to provide them with some information on the product without having to go into the products description etc. and that kind of thing. Security contributions... basically as I said anything that can make the osC store an easier, friendlier and mostly user-friendlier place, for customers, owners and all. This would mainly be useful for owners of multiple stores, or anyone that would be setting up more than 1 store... so that they don't have to go through the whole process of installing contributions one by one again when it could all be ready to go much sooner, just create a design, and everything else is ready to go.
  2. Just a quick query... you say not compulsory, and only required if accept "Encrypted Form Payments Only" is enabled in PayPal, wouldn't having this DISABLED mean that you are sending information unsecurely??
  3. Hi all, I honestly couldn't browse through the 31 pages, but searched the forum for an error like this and didn't find anything. Now I installed the Attribute Manager DIRECT as the instructions said and have no problems, I did NOT modify anything and it works fine, UNLESS I make a mistake. If I make a mistake and try to delete one of the attributes created, I get an error and CANNOT fix it, unless I delete the whole product and then re-insert the whole product making sure no mistakes are made. This is a pain because I can't change/fix sort order after this, unless I reinsert the WHOLE product and make sure to do everything properly, which isn't an issue as I've only made 1 or 2 mistakes, BUT for anyone else, and for myself to save trouble and most importantly time. I would love some help with this, because I honestly have no clue why it's happening, I barely have ANY contribs running on my store, apart from this really. I get this error in a little pop up window; Fatal error: Call to undefined function sprint_f() in /home/**MYACCOUNT**/public_html/catalog/admin/attributeManager/includes/attributeManagerPrompts.inc.php on line 140 And here is the corresponding file it's talking about; <?php /* $Id: attributeManagerPrompts.inc.php,v 1.0 21/02/06 Sam West$ osCommerce, Open Source E-Commerce Solutions [url="http://www.oscommerce.com"]http://www.oscommerce.com[/url] Released under the GNU General Public License Copyright © 2006 Kangaroo Partners [url="http://kangaroopartners.com"]http://kangaroopartners.com[/url] [email protected] */ function yesNoButtons($section) { return ' <div style="width:100px;margin:auto;"> <table border="0" cellpadding="5"> <tr> <td><input type="submit" value="'.AM_AJAX_YES.'" onClick="return '.$section.'();" /></td> <td align="right"><input type="submit" value="'.AM_AJAX_NO.'" onClick="removeCustomPrompt();" /></td> </tr> </table> </div>'; } function updateCancelButtons($section) { return ' <div style="text-align:right;margin-top:20px"> <input type="submit" value="'.AM_AJAX_UPDATE.'" onClick="return '.$section.'();" /> <input type="submit" value="'.AM_AJAX_CANCEL.'" onClick="removeCustomPrompt();" /> </div>'; } function languageTextFields() { $return = ' <table>'; $languages = tep_get_languages(); foreach ($languages as $amLanguage) { $return .=' <tr> <td align="right">'. tep_image(DIR_WS_CATALOG_LANGUAGES . $amLanguage['directory'] . '/images/' . $amLanguage['image'], $amLanguage['name']).'</td> <td>'.tep_draw_input_field('text_field_'.$amLanguage['id'],'','id="'.$amLanguage['id'].'"').'</td> </tr>'; } if ($_GET['section']== 'amAddOption') { $style = 'style="margin:3px 0px 3px 0px;" id="stockTracking_1" size="4"'; $optionSortDrop = array('1', '2', '3', '4', '5', '6', '7', '8', '9'); $return .= ' <tr>'; if(AM_USE_SORT_ORDER) { $return .= '<td>'.AM_AJAX_SORT.tep_draw_pull_down_menu('optionSortDropDown', $optionSortDrop, '', 'id="optionSortDropDown"').'</td>'; } else { $return .= tep_draw_hidden_field('optionSortDropDown', '0', 'id="optionSortDropDown"'); } if(AM_USE_QT_PRO) { $return .=' <td>'.AM_AJAX_TRACK_STOCK.' <img src="attributeManager/images/icon_up.png" id="imgCheck_1" onclick="checkBox(1)" title="'.AM_AJAX_TRACK_STOCK_IMGALT.'" /> '. tep_draw_hidden_field('stockTracking_1', '0', $style).' </td>'; } else { $return .= tep_draw_hidden_field('stockTracking_1', '0', $style); } $return .=' </tr>'; } $return .= ' </table>'; return $return; } function okButton() { return '<input type="submit" align="center" value="'.AM_AJAX_OK.'" onClick="removeCustomPrompt();" />'; } class amPopups { var $header = ''; var $contents = ''; function setHeader($string) { $this->header .= $string; } function addToContents($string) { $this->contents .= $string; } function output() { return ' <div id="popupHeading">'.stripcslashes($this->header).'</div> <div id="popupContainer">'.$this->contents.'</div>'; } } // check that it is a prompt section if(isset($_GET[AM_ACTION_GET_VARIABLE]) && $_GET[AM_ACTION_GET_VARIABLE] == 'prompt') { // de encode the extra gets string if(isset($_GET['gets'])) { $arrExtraValues = array(); $valuePairs = array(); if(strpos($_GET['gets'],'|')) $valuePairs = explode('|',$_GET['gets']); else $valuePairs[] = $_GET['gets']; foreach($valuePairs as $pair) if(strpos($pair,':')) { list($extraKey, $extraValue) = explode(':',$pair); $arrExtraValues[$extraKey] = $extraValue; } } switch($_GET['section']) { case 'amAddOption': $amPopup = new amPopups(); $amPopup->setHeader(AM_AJAX_ENTER_NEW_OPTION_NAME); $amPopup->addToContents(languageTextFields()); $amPopup->addToContents(updateCancelButtons($_GET['section'])); echo $amPopup->output(); break; case 'amAddOptionValue': $amPopup = new amPopups(); $amPopup->setHeader(AM_AJAX_ENTER_NEW_OPTION_VALUE_NAME); $amPopup->addToContents(languageTextFields()); $amPopup->addToContents(updateCancelButtons($_GET['section'])); echo $amPopup->output(); break; case 'amAddNewOptionValueToProduct': $amPopup = new amPopups(); $amPopup->setHeader(sprint_f(AM_AJAX_ENTER_NEW_OPTION_VALUE_NAME_TO_ADD_TO, $arrExtraValues['option_name'])); $amPopup->addToContents(languageTextFields()); $amPopup->addToContents(updateCancelButtons($_GET['section'])); $amPopup->addToContents(tep_draw_hidden_field('option_id',$arrExtraValues['option_id'],'id="option_id"')); echo $amPopup->output(); break; case 'amRemoveOptionFromProduct': $amPopup = new amPopups(); $amPopup->setHeader(sprint_f(AM_AJAX_PROMPT_REMOVE_OPTION_AND_ALL_VALUES, $arrExtraValues['option_name'])); $amPopup->addToContents(yesNoButtons($_GET['section'])); $amPopup->addToContents(tep_draw_hidden_field('option_id',$arrExtraValues['option_id'],'id="option_id"')); echo $amPopup->output(); break; case 'amRemoveOptionValueFromProduct': $amPopup = new amPopups(); $amPopup->setHeader(sprint_f(AM_AJAX_PROMPT_REMOVE_OPTION, $arrExtraValues['option_value_name'])); $amPopup->addToContents(yesNoButtons($_GET['section'])); $amPopup->addToContents(tep_draw_hidden_field('option_id',$arrExtraValues['option_id'],'id="option_id"')); $amPopup->addToContents(tep_draw_hidden_field('option_value_id',$arrExtraValues['option_value_id'],'id="option_value_id"')); echo $amPopup->output(); break; // For QT Pro Plugin -- added by Phocea case 'amRemoveStockOptionValueFromProduct': $amPopup = new amPopups(); $amPopup->setHeader(AM_AJAX_PROMPT_STOCK_COMBINATION); $amPopup->addToContents(yesNoButtons($_GET['section'])); $amPopup->addToContents(tep_draw_hidden_field('option_id',$arrExtraValues['option_id'],'id="option_id"')); echo $amPopup->output(); break; // For QT Pro Plugin -- added by Phocea case 'loadTemplate': $amPopup = new amPopups(); $amPopup->setHeader(sprint_f(AM_AJAX_PROMPT_LOAD_TEMPLATE, $arrExtraValues['template_name'])); $amPopup->addToContents(yesNoButtons($_GET['section'])); $amPopup->addToContents(tep_draw_hidden_field('template_id',$arrExtraValues['template_id'],'id="template_id"')); echo $amPopup->output(); break; case 'saveTemplate': $amPopup = new amPopups(); $amPopup->setHeader(AM_AJAX_NEW_TEMPLATE_NAME_HEADER); $amPopup->addToContents(AM_AJAX_NEW_NAME.' '.tep_draw_input_field('template_name','','id="template_name" onchange="((this.value != \'\') ? document.getElementById(\'existing_template\').selectedIndex = 0 : \'\')"')); $templatesDrop = $attributeManager->buildAllTemplatesDropDown(); $amPopup->setHeader(AM_AJAX_CHOOSE_EXISTING_TEMPLATE_TO_OVERWRITE); $amPopup->addToContents('<br /><br />'. AM_AJAX_CHOOSE_EXISTING_TEMPLATE_TITLE .' '. tep_draw_pull_down_menu('existing_template',$templatesDrop,'0','id="existing_template" onChange="document.getElementById(\'template_name\').value=\'\';"')); $amPopup->addToContents(updateCancelButtons($_GET['section'])); $amPopup->addToContents(tep_draw_hidden_field('template_id',$arrExtraValues['template_id'],'id="template_id"')); echo $amPopup->output(); break; case 'renameTemplate': $amPopup = new amPopups(); $amPopup->setHeader(sprint_f(AM_AJAX_RENAME_TEMPLATE_ENTER_NEW_NAME, $arrExtraValues['template_name'])); $amPopup->addToContents(AM_AJAX_NEW_NAME.' '.tep_draw_input_field('template_new_name','','id="template_new_name"')); $amPopup->addToContents(updateCancelButtons($_GET['section'])); $amPopup->addToContents(tep_draw_hidden_field('template_id',$arrExtraValues['template_id'],'id="template_id"')); echo $amPopup->output(); break; case 'deleteTemplate': $amPopup = new amPopups(); $amPopup->setHeader(sprint_f(AM_AJAX_PROMPT_DELETE_TEMPLATE, $arrExtraValues['template_name'])); $amPopup->addToContents(yesNoButtons($_GET['section'])); $amPopup->addToContents(tep_draw_hidden_field('template_id',$arrExtraValues['template_id'],'id="template_id"')); echo $amPopup->output(); break; case 'debug': $amPopup = new amPopups(); $amPopup->setHeader(implode($valuePairs, ',')); $amPopup->addToContents(yesNoButtons($_GET['section'])); $amPopup->addToContents(tep_draw_hidden_field('debug',$arrExtraValues['debug'],'id="debug"')); echo $amPopup->output(); break; } } ?> And here is the Line 140 code it's talking about; $amPopup->setHeader(sprint_f(AM_AJAX_PROMPT_REMOVE_OPTION_AND_ALL_VALUES, $arrExtraValues['option_name'])); Any help appreciated as it would be going in to help the contrib too, as I don't see how it's an error from my store.
×
×
  • Create New...