So many changes - for the better, Yes?
1> I re-wrote the code to do-away with the random 3 digit numbers and added customer id in its place.
2> I added a hidden input field to the stores returns page for the RMA#
3> I added the RMA# to the email
4> I added a sql query to the success page to update the order status via admin (),
I am thinking this should have a ADMIN control where the status_id can be entered for all sites will differ depending on how many order statuses they currently have.
Here is the UPDATED and at the moment FINAL CODE
1.) lets create a button
1.A) /includes/languages/english/YOUR_TEMPLATE_NAME/button_names.php
ADD:
PHP Code:
define('BUTTON_RMA_REQUEST', 'button_rma_request.png');
define('BUTTON_RMA_REQUEST_ALT', 'Request an RMA#');
1.b) upload your button
/includes/templates/YOUR_TEMPLATE_NAME/buttons/english
2. lets add the button to the My Account > History > Order Info page
2.A) /includes/templates/YOUR_TEMPLATE_NAME/templates/tpl_account_history_info_default.php
I added my button at the end of the file right after the <br class="clearBoth" /> and closing </div>
ADD:
PHP Code:
<div class="rmaRequestButton"><?php echo '<a href="' . zen_href_link(FILENAME_RETURNS, (isset($_GET['page']) ? 'page=' . $_GET['page'] . '&' : '') . 'order_id=' . $_GET['order_id'], 'SSL') . '">' . zen_image_button(BUTTON_RMA_REQUEST) . '</a>'; ?></div>
3.) /includes/modules/pages/returns/header_php.php
find:
PHP Code:
$order_number = zen_db_prepare_input($_POST['order_number']);
below that
ADD:
PHP Code:
$rma_number = zen_db_prepare_input($_POST['rma_number']);
then find:
PHP Code:
"Order Number:" . "\t" . $order_number . "<br />" .
below that
ADD:
PHP Code:
"RMA Number:" . "\t" . $rma_number . "<br />" .
then find:
zen_redirect(zen_href_link(FILENAME_RETURNS, 'action=success'));
CHANGE TO:
PHP Code:
zen_redirect(zen_href_link(FILENAME_RETURNS, 'action=success' . '&order_id=' . $order_number));
then find:
PHP Code:
$city = $check_customer->fields['entry_city'];
below that
ADD:
PHP Code:
$cID = $check_customer->fields['customers_id'];
then find:
PHP Code:
$postcode = $check_customer->fields['entry_postcode'];
}
below that
ADD:
PHP Code:
$customer_info_query = "SELECT customers_id
FROM " . TABLE_ORDERS . "
WHERE orders_id = :ordersID";
$customer_info_query = $db->bindVars($customer_info_query, ':ordersID', $_GET['order_id'], 'integer');
$customer_info = $db->Execute($customer_info_query);
$order_number = $_GET['order_id'];
$rma_request_date = date('mdY');
$rma_number = $order_number . TEXT_SUCCESS_DASH . $cID . TEXT_SUCCESS_DASH . $rma_request_date;
Now in /includes/templates/YOUR_TEMPLATE_NAME/templates/tpl_returns_default.php
find:
PHP Code:
<?php if (RETURN_STORE_NAME_ADDRESS == 'true') { ?>
<address><?php echo nl2br(STORE_NAME_ADDRESS); ?></address>
<?php } ?>
<?php
if (isset($_GET['action']) && ($_GET['action'] == 'success')) {
?>
<br class="clearBoth" />
<div class="mainContent success"><?php echo TEXT_SUCCESS; ?></div>
<?php
} else {
?>
CHANGE TO:
PHP Code:
<?php if (RETURN_STORE_NAME_ADDRESS == 'true' && ($_GET['action'] == 'success')) { ?>
<?php
/**
show nothing
*/
} else if (RETURN_STORE_NAME_ADDRESS == 'true') { ?>
<address><?php echo nl2br(STORE_NAME_ADDRESS); ?></address>
<?php } ?>
<?php
if (isset($_GET['action']) && ($_GET['action'] == 'success')) {
?>
<br class="clearBoth" />
<div class="mainContent success">
<?php echo '<div id="returnSuccess">' . TEXT_SUCCESS . '</div>' . '<div id="returnRequired">'. TEXT_SUCCESS_RMA_REQUIRED . '</div>' . '<div id="returnPolicy">'. TEXT_SUCCESS_RMA_POLICY_BOF . '<a href="' . zen_href_link(FILENAME_SHIPPING, '', 'SSL') . '">' . TEXT_SUCCESS_RMA_POLICY_LINK . '</a>' . TEXT_SUCCESS_RMA_POLICY_EOF . '</div>' . '<div id="returnAddressWrapper">' . '<div id="returnRMA">' . TEXT_SUCCESS_RMA_ID . $rma_number . '</div>' . '<div id="returnAddress">' . TEXT_SUCCESS_RMA_RETURN_ADDRESS . '</div>'; if (RETURN_STORE_NAME_ADDRESS == 'true') { echo '<address>' . nl2br(STORE_NAME_ADDRESS) . '</address>'; } echo '<div id="returnPhone">' . TEXT_SUCCESS_RMA_RETURN_PHONE . '</div>' . '</div>'; ?>
<?php
$orderID = $_GET['order_id'];
$db->Execute("update " . TABLE_ORDERS . " set orders_status = '5', last_modified = now() where orders_id = '" . (int)$orderID . "'");
?>
<?php
} else {
?>
The Number 5 represents the order status ID in ADMIN > LOCALIZATION > ORDERS STATUS
ADD "Pending Return", look at your browser page link - you will see oID=#, that # needs to replace the above 5
then find:
PHP Code:
<br class="clearBoth" />
<?php
if (RETURN_ITEM_NAME == 'true') {
?>
ABOVE the <br class="clearBoth" />
ADD:
PHP Code:
<?php echo '<input type="hidden" name="rma_number" value="'.$rma_number.'">'; ?>
then open /includes/languages/english/YOUR_TEMPLATE_NAME/returns.php
DID NOT CHANGE FROM PREVIOUS POSTS
PHP Code:
define('TEXT_SUCCESS', 'Your request has been successfully submitted.');
define('TEXT_SUCCESS_RMA_REQUIRED', 'The below RMA# is required for all Returns');
define('TEXT_SUCCESS_RMA_POLICY_BOF', 'You can view our ');
define('TEXT_SUCCESS_RMA_POLICY_LINK', 'Returns Policy');
define('TEXT_SUCCESS_RMA_POLICY_EOF', ' here.');
define('TEXT_SUCCESS_RMA_ID', 'Your RMA# is: ');
define('TEXT_SUCCESS_DASH', '-');
define('TEXT_SUCCESS_RMA_RETURN_ADDRESS', 'Please ship all returns to this address:');
define('TEXT_SUCCESS_RMA_RETURN_PHONE', 'Phone: 1.111.111.1111');
and the CSS rules can be added to /includes/templates/YOUR_TEMPLATE_NAME/css/returns.css
DID NOT CHANGE FROM PREVIOUS POSTS
Code:
div#returnAddressWrapper {border:1px solid #E9E9E9;background:#FFE573;text-align:center;} div#returnSuccess {font-size:1.2em;padding:5px;color:#606060;} div#returnAddressWrapper, div#returnRequired, div#returnPolicy, div#returnRMA, div#returnAddress, div#returnPhone {font-size:1.5em;font-weight:bold;padding:5px; } div#returnRequired, div#returnAddress {color:#FF0000;}
I hope this helps and I haven't completely confused everyone.
Bookmarks