function qpp_autoresponce_page($id) { qpp_change_form_update(); if (isset($_POST['Submit']) && check_admin_referer("save_qpp")) { $options = array('enable', 'whenconfirm', 'fromname', 'fromemail', 'subject', 'message', 'paymentdetails'); foreach ($options as $item) { $auto[$item] = stripslashes($_POST[$item]); } update_option('qpp_autoresponder' . $id, $auto); if ($id) { qpp_admin_notice("The autoresponder settings for " . $id . " have been updated."); } else { qpp_admin_notice("The default form autoresponder settings have been updated."); } } if (isset($_POST['Reset']) && check_admin_referer("save_qpp")) { delete_option('qpp_autoresponder' . $id); qpp_admin_notice("The autoresponder settings for the form called " . $id . " have been reset."); } $qpp_setup = qpp_get_stored_setup(); $id = $qpp_setup['current']; $qpp = qpp_get_stored_options($id); $auto = qpp_get_stored_autoresponder($id); ${$auto}['whenconfirm'] = 'checked'; $message = $auto['message']; $content = '<div class="qpp-settings"><div class="qpp-options" style="width:90%;">'; if ($id) { $content .= '<h2 style="color:#B52C00">Autoresponse settings for ' . $id . '</h2>'; } else { $content .= '<h2 style="color:#B52C00">Default form autoresponse settings</h2>'; } $content .= qpp_change_form($qpp_setup); $content .= '<p>The auto responder sends a confirmation message to the Payee. Use the editor below to send links, images and anything else you normally add to a post or page.</p> <p class="description">Note that the autoresponder only works if you collect an email address on the <a href="?page=quick-paypal-payments/settings.php&tab=settings">Form Settings</a>.</p> <form method="post" action=""> <p><input type="checkbox" style="margin: 0; padding: 0; border: none;" name="enable"' . $auto['enable'] . ' value="checked" /> Enable Auto Responder</p> <p><input style="width:20px; margin: 0; padding: 0; border: none;" type="radio" name="whenconfirm" value="aftersubmission" ' . $aftersubmission . ' /> After submission to PayPal<br> <input style="width:20px; margin: 0; padding: 0; border: none;" type="radio" name="whenconfirm" value="afterpayment" ' . $afterpayment . ' /> After payment (only works if <a href="?page=quick-paypal-payments/settings.php&tab=ipn">IPN</a> is active)</span></p> <p>From Name (<span class="description">Defaults to your <a href="' . get_admin_url() . 'options-general.php">Site Title</a> if left blank.</span>):<br> <input type="text" style="width:50%" name="fromname" value="' . $auto['fromname'] . '" /></p> <p>From Email (<span class="description">Defaults to the your <a href="?page=quick-paypal-payments/settings.php&tab=setup">PayPal email address</a> if left blank.</span>):<br> <input type="text" style="width:50%" name="fromemail" value="' . $auto['fromemail'] . '" /></p> <p>Subject</p> <input style="width:100%" type="text" name="subject" value="' . $auto['subject'] . '"/><br> <p>Message Content</p>'; echo $content; wp_editor($message, 'message', $settings = array('textarea_rows' => '20', 'wpautop' => false)); $content = '<p>You can use the following shortcodes in the message body:</p> <table> <tr> <th>Shortcode</th> <th>Replacement Text</th> </tr> <tr> <td>[firstname]</td> <td>The registrants first name if you are using the <a href="?page=quick-paypal-payments/settings.php&tab=address">personal details</a> option.</td> </tr> <tr> <td>[name]</td> <td>The registrants first and last name if you are using the <a href="?page=quick-paypal-payments/settings.php&tab=address">personal details</a> option.</td> </tr> <tr> <td>[reference]</td> <td>The name of the item being purchased</td> </tr> <tr> <td>[amount]</td> <td>The total amount to be paid without the currency symbol</td> </tr> <tr> <td>[fullamount]</td> <td>The total amount to be paid with currency symbol</td> </tr> <tr> <td>[quantity]</td> <td>The number of items purchased</td> </tr> <tr> <td>[option]</td> <td>The option selected</td> </tr> <tr> <td>[stock]</td> <td>The stock, SKU or item number</td> </tr> <tr> <td>[details]</td> <td>The payment information (reference, quantity, options, stock number, amount)</td> </tr> </table> <p><input type="checkbox" style="margin: 0; padding: 0; border: none;" name="paymentdetails"' . $auto['paymentdetails'] . ' value="checked" /> Add payment details to the message</p> <p><input type="submit" name="Submit" class="button-primary" style="color: #FFF;" value="Save Changes" /> <input type="submit" name="Reset" class="button-primary" style="color: #FFF;" value="Reset" onclick="return window.confirm( \'Are you sure you want to reset the error settings for ' . $id . '?\' );"/></p>'; $content .= wp_nonce_field("save_qpp"); $content .= '</form> </div> </div>'; echo $content; }
function qpp_send_confirmation($values, $id, $amounttopay) { $qpp_setup = qpp_get_stored_setup(); $qpp = qpp_get_stored_options($id); $send = qpp_get_stored_send($id); $auto = qpp_get_stored_autoresponder($id); $c = qpp_currency($id); if (empty($auto['fromemail'])) { $auto['fromemail'] = $qpp_setup['email']; } if (empty($auto['fromname'])) { $auto['fromname'] = get_bloginfo('name'); } $fullamount = $c['b'] . $amounttopay . $c['a']; $headers = "From: {$auto['fromname']} <{$auto['fromemail']}>\r\n" . "MIME-Version: 1.0\r\n" . "Content-Type: text/html; charset=\"utf-8\"\r\n"; $subject = $auto['subject']; $ref = $qpp['shortcodereference'] ? $qpp['shortcodereference'] : 'Reference'; if ($qpp['fixedreference']) { $qpp['inputreference'] = $ref; } $amt = $qpp['shortcodeamount'] ? $qpp['shortcodeamount'] : 'Amount'; if ($qpp['fixedamount']) { $qpp['inputamount'] = $amt; } $details = '<table> <tr><td>' . $qpp['inputreference'] . ': </td><td>' . $values['reference'] . '</td></tr><tr><td>' . $qpp['quantitylabel'] . ': </td><td>' . $values['quantity'] . '</td></tr>'; if ($qpp['use_stock']) { $details .= '<tr><td>' . $qpp['stocklabel'] . ': </td><td>' . strip_tags($values['stock']) . '</td></tr>'; } if ($qpp['use_options']) { $details .= '<tr><td>' . $qpp['optionlabel'] . ': </td><td>' . strip_tags($values['option1']) . '</td></tr>'; } $details .= '<tr><td>' . $qpp['inputamount'] . ': </td><td>' . $amounttopay . '</td></tr></table>'; $content = '<p>' . $auto['message'] . '</p>'; $content = str_replace('<p><p>', '<p>', $content); $content = str_replace('</p></p>', '</p>', $content); $content = str_replace('[firstname]', $values['firstname'], $content); $content = str_replace('[name]', $values['firstname'] . ' ' . $values['lastname'], $content); $content = str_replace('[reference]', $values['reference'], $content); $content = str_replace('[fullamount]', $fullamount, $content); $content = str_replace('[amount]', $amounttopay, $content); $content = str_replace('[stock]', $values['stock'], $content); $content = str_replace('[option]', $values['option1'], $content); $content = str_replace('[details]', $details, $content); if ($auto['paymentdetails']) { $content .= $details; } wp_mail($values['email'], $subject, $content, $headers); if ($send['confirmmessage']) { $subject = 'Payment for ' . $values['reference']; if ($qpp['useaddress']) { $contentb .= '<tr><td>' . $address['email'] . '</td><td>' . $values['email'] . '</td></tr></tr> <tr><td>' . $address['firstname'] . '</td><td>' . $values['firstname'] . '</td></tr> <tr><td>' . $address['lastname'] . '</td><td>' . $values['lastname'] . '</td></tr> <tr><td>' . $address['address1'] . '</td><td>' . $values['address1'] . '</td></tr> <tr><td>' . $address['address2'] . '</td><td>' . $values['address2'] . '</td></tr> <tr><td>' . $address['city'] . '</td><td>' . $values['city'] . '</td></tr> <tr><td>' . $address['state'] . '</td><td>' . $values['state'] . '</td></tr> <tr><td>' . $address['zip'] . '</td><td>' . $values['zip'] . '</td></tr> <tr><td>' . $address['country'] . '</td><td>' . $values['country'] . '</td></tr> <tr><td>' . $address['night_phone_b'] . '</td><td>' . $values['night_phone_b'] . '</td></tr>'; } $content = $cotenta . $contentb . $contentc; wp_mail($qpp_setup['email'], $subject, $content, $headers); } }