Page 60 of 65 FirstFirst ... 10505859606162 ... LastLast
Results 591 to 600 of 649
  1. #591
    Join Date
    Jan 2007
    Location
    Los Angeles, California, United States
    Posts
    10,021
    Plugin Contributions
    32

    Default Re: Return Authorization Module (RMA)

    Quote Originally Posted by rbarbour View Post
    correct
    Awesome.. Nice code.. I will incorporate your code into the core.. I think it SHOULD be included.. and then I'll submit the whole bloody thing to the RIGHT place..
    My Site - Zen Cart & WordPress integration specialist
    I don't answer support questions via PM. Post add-on support questions in the support thread. The question & the answer will benefit others with similar issues.

  2. #592
    Join Date
    Feb 2010
    Posts
    2,159
    Plugin Contributions
    17

    Default Re: Return Authorization Module (RMA)

    Works for me! Thank you.

  3. #593
    Join Date
    Sep 2008
    Posts
    22
    Plugin Contributions
    0

    Default Re: Return Authorization Module (RMA)

    Quote Originally Posted by rbarbour View Post
    OK, so I put together code to display the success page.

    WHAT THE FOLLOWING DOES

    using the code from post#579

    1.) I add a RMA Request button on the MY ACCOUNT > HISTORY > ORDER INFO page
    2.) When clicked it sends that $orders_id to the returns page and populates the Order Number Field
    3.) Send the same $orders_id to the returns success page

    Now this code recreates and does away with the HTML from @xspresso post#581

    Screenshot:
    Attachment 12384

    First lets add the code to /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 {
    ?>
    Replace with:
    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$order_number $_GET['order_id']; echo $order_number TEXT_SUCCESS_DASHsrand(5); echo(rand(110)); echo(rand(110)) . TEXT_SUCCESS_DASH date('mdY') . '</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
      
    } else {
    ?>
    then open /includes/languages/english/YOUR_TEMPLATE_NAME/returns.php

    and add:
    PHP Code:
    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

    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;}
    That should be it, Enjoy!
    That is very nice work. It is everything I have been trying to do for a week.

  4. #594
    Join Date
    Feb 2010
    Posts
    2,159
    Plugin Contributions
    17

    Default Re: Return Authorization Module (RMA)

    Quote Originally Posted by xspresso View Post
    That is very nice work. It is everything I have been trying to do for a week.
    I'm glad we got it sorted and working

  5. #595
    Join Date
    Sep 2008
    Posts
    22
    Plugin Contributions
    0

    Default Re: Return Authorization Module (RMA)

    This allows the customer to receive the RMA # in their email.
    I also laid-out the email to look better.

    Code:
        // Prepare extra-info details
        $extra_info = email_collect_extra_info($name, $email_address, $customer_name, $customer_email, $telephone);
        // Prepare Text-only portion of message
    	$text_message = OFFICE_FROM . "\t" . $name . "\n<br />" . 
    		    OFFICE_EMAIL . "\t" . $email_address . "\n<br />" .
    			"Phone Number:" . "\t" .$telephone . "\n<br />" .
    		    "Address:" . "\t" . $address . "\n<br />" .
    		    "City:" . "\t" . $city . "\n<br />" .
    			"State:" . "\t" . $state . "\n<br />" .
    		    "Post Code:" . "\t" . $postcode . "\n<br />" .
    			"Country:" . "\t" . $country . "\n<br />" .
    		    "Order Number:" . "\t" . $order_number . "\n<br />" .
    		    "Total Value:" . "\t" . $value . "\n<br />" .
    		    "Item Number:" . "\t" . $item_number . "\n<br />"	.
    		    "Item(s) Name:" . "\t" . $item_name . "\n<br />"	.
    		    "Action Requested:" . "\t" . $action . "\n\n<br />"	.
    		     "RMA Number:" . "\t" . $order_number  . "-". date('mdY') . "\n<br />" .                  
    			'------------------------------------------------------<br />' .
                       "\n\n<br />Reason:".    "\n\n<br />" .
                       "" . $reason .   "\n<br />" .
                      '------------------------------------------------------<br />' .  
          "" . "\n<br />" . 
          $extra_info['TEXT'];
          $email_text = sprintf(EMAIL_GREET_NONE, $name );
          $email_text .=  "\n <br />";
          $email_text .=  EMAIL_WELCOME;
          $email_text .=  "\n\n" . "Request Date:" . "\t" . date('m/d/Y') . "\n<br />" ;
          $email_text .=  "\n" . "Invoice Number:" . "\t" . $order_number . "<br />" ;
          $email_text .=  "\n" . "Item(s)You Are Returning: (as you entered it)" . "\t" . $item_name . "<br />";
          $email_text .=  "\n" . "RMA Number:" . "\t" . $order_number  . "-". date('mdY') . "\n<br />";
          $email_text .= "\n\n" . EMAIL_TEXT . EMAIL_CONTACT . EMAIL_WARNING;
    I have a concern from post # 588. The code I gave you for the generator srand(5); echo(rand(1, 10)); echo(rand(1, 10)) is wrong.
    This one is a 3 digit generator. BUT... my problem is: using this will make the "emailed RMA" different from the RMA that comes back in the success page. So maybe just remove it all together.
    Code:
    $digits = 3; 
    echo(rand(pow, 10)); 
    $digits-1)), pow(10, $digits)-1))
    unless you can carry the generated 3 digit number to the email:
    Code:
    $email_text .=  "\n" . "RMA Number:" . "\t" . $3digit_number  . "-". $order_number  . "-". date('mdY') . "\n<br />";

  6. #596
    Join Date
    Feb 2010
    Posts
    2,159
    Plugin Contributions
    17

    Default Re: Return Authorization Module (RMA)

    Seeing how the random 3 digit number doesn't really serve a purpose anyway, why not just replace it with a value that could help reference the RMA# with the:

    A) Original Order Number
    B) Customer's ID
    C) RMA# Request Date

    This way it can be sent to email when form is submitted and passed to the success page - and never regenerating a different RMA#

  7. #597
    Join Date
    Jan 2007
    Location
    Los Angeles, California, United States
    Posts
    10,021
    Plugin Contributions
    32

    Default Re: Return Authorization Module (RMA)

    Quote Originally Posted by rbarbour View Post
    Seeing how the random 3 digit number doesn't really serve a purpose anyway, why not just replace it with a value that could help reference the RMA# with the:

    A) Original Order Number
    B) Customer's ID
    C) RMA# Request Date

    This way it can be sent to email when form is submitted and passed to the success page - and never regenerating a different RMA#
    nods in agreement.. these elements will make the number sufficiently unique without the need for a random generated number.. No need to do anything fancy..
    My Site - Zen Cart & WordPress integration specialist
    I don't answer support questions via PM. Post add-on support questions in the support thread. The question & the answer will benefit others with similar issues.

  8. #598
    Join Date
    Sep 2008
    Posts
    22
    Plugin Contributions
    0

    Default Re: Return Authorization Module (RMA)

    That is good, just drop the random part and now the order# (aka: customer id or invoice no.) and date is more then enough to track the order as an RMA.

    Now there is one final thing I believe the RMA needs to do.

    Change the database status from complete (or whatever) to RMA Requested.

    I think in header_php.php after sending mail, open database and change the status.

  9. #599
    Join Date
    Feb 2010
    Posts
    2,159
    Plugin Contributions
    17

    Default Re: Return Authorization Module (RMA)

    Maybe in a future release

  10. #600
    Join Date
    Feb 2010
    Posts
    2,159
    Plugin Contributions
    17

    Default Re: Return Authorization Module (RMA)

    Quote Originally Posted by DivaVocals View Post
    Awesome.. Nice code.. I will incorporate your code into the core.. I think it SHOULD be included.. and then I'll submit the whole bloody thing to the RIGHT place..
    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.

 

 
Page 60 of 65 FirstFirst ... 10505859606162 ... LastLast

Similar Threads

  1. v151 Flexible Return Authorization (RMA) for ZC v1.5.x [Support Thread]
    By DivaVocals in forum All Other Contributions/Addons
    Replies: 167
    Last Post: 11 Apr 2021, 08:56 PM
  2. Return Authorization Module
    By itspec in forum All Other Contributions/Addons
    Replies: 13
    Last Post: 10 Feb 2009, 11:29 PM
  3. Return Merchandise Authorization (RMA) Module Follow-up
    By killertofu in forum Managing Customers and Orders
    Replies: 1
    Last Post: 11 Aug 2008, 11:13 PM
  4. Return Authorization Module (RMA)
    By dscott1966 in forum All Other Contributions/Addons
    Replies: 0
    Last Post: 11 Nov 2006, 08:04 PM

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
disjunctive-egg
Zen-Cart, Internet Selling Services, Klamath Falls, OR