Advertisement
Guest User

f

a guest
Mar 19th, 2017
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.43 KB | None | 0 0
  1. <?php
  2.  
  3. function generate_contact_email() {
  4. $content = get_option('contact_email');
  5. $content = parseContent($content, false);
  6. return $content;
  7. }
  8.  
  9. function generate_quote_email($files) {
  10. $content = get_option('quick_quote_email');
  11. $content = parseContent($content, $files);
  12. return $content;
  13. }
  14.  
  15. function generate_ftp_email($files) {
  16. $content = get_option('ftp_email');
  17. $content = parseContent($content, $files);
  18. return $content;
  19. }
  20.  
  21. add_filter('wp_mail_content_type', 'set_content_type');
  22.  
  23. function set_content_type($content_type) {
  24. return 'text/html';
  25. }
  26.  
  27.  
  28. -............-.-.....................-.-.-.-.....................................
  29.  
  30.  
  31.  
  32.  
  33. function parseContent($content, $files = array()) {
  34. $user = wp_get_current_user();
  35. foreach ($_POST as $key => $value) {
  36. $_POST[$key] = stripslashes($value);
  37. }
  38. if (!isset($_POST['full-name'])) {
  39. $_POST['full-name'] = $user->display_name;
  40. }
  41.  
  42. $content = str_replace('[full-name]', $_POST['full-name'], $content);
  43. $content = str_replace('[first-name]', $_POST['first_name'], $content);
  44. $content = str_replace('[last-name]', $_POST['last_name'], $content);
  45. $content = str_replace('[email]', $_POST['email'], $content);
  46. $content = str_replace('[phone]', $_POST['phone'], $content);
  47. $content = str_replace('[company]', $_POST['company'], $content);
  48. $content = str_replace('[deadline]', $_POST['deadline'], $content);
  49. $content = str_replace('[reason]', $_POST['reason'], $content);
  50. $content = str_replace('[message]', $_POST['message'], $content);
  51. $content = str_replace('[service-type]', $_POST['service_type'], $content);
  52. $content = str_replace('[project-name]', $_POST['project_name'], $content);
  53. $content = str_replace('[deadline]', $_POST['deadline'], $content);
  54. $content = str_replace('[project-description]', $_POST['describe'], $content);
  55. $content = str_replace('[comments]', $_POST['comments'], $content);
  56. $content = str_replace('[project-due-rate]', $_POST['project_due_rate'], $content);
  57. $content = str_replace('[turnaround-time]', $_POST['turnaround_time'], $content);
  58. $content = str_replace('[source-language]', $_POST['source_language'], $content);
  59.  
  60. $content = str_replace('[files-table]', getFilesTable($files), $content);
  61.  
  62. return $content;
  63. }
  64.  
  65. function handle_ftp_form() {
  66. if (isset($_POST['service_type'])) {
  67. set_time_limit(36000);
  68.  
  69.  
  70.  
  71. $curl = Crawler::getCurl();
  72. curl_setopt($curl, CURLOPT_URL, 'https://www.google.com/recaptcha/api/siteverify');
  73. curl_setopt($curl, CURLOPT_POST, true);
  74. curl_setopt($curl, CURLOPT_POSTFIELDS, array(
  75. 'secret' => '6LdzzRgUAAAAAG77EIYGrFq_fneH6njfvYG6aOo_',
  76. 'response' => $_POST['g-recaptcha-response']
  77. ));
  78. $resp = json_decode(curl_exec($curl));
  79.  
  80. /* send file */
  81.  
  82.  
  83.  
  84. /* end of send file */
  85.  
  86.  
  87. if ($resp->success) {
  88. $files = explode("\n", $_POST['the-files']);
  89. require(dirname(__FILE__) . '/lib/curl.php');
  90. require(dirname(__FILE__) . '/lib/curl_response.php');
  91. require(dirname(__FILE__) . '/EgnyteClient.php');
  92. $collected = array();
  93.  
  94.  
  95. foreach ($files as $file) {
  96. $filename = trim($file);
  97. $filedir = get_stylesheet_directory() . '/php/files/' . trim($file);
  98.  
  99. if (trim($file) != '' && is_file($filedir)) {
  100.  
  101. $domain = 'cbsoutsourcing';
  102. $folder = '/Shared/PRODUCTION/WEBSITE UPLOADS/';
  103. $oauthToken = 'zqqgsq6ym32p57s8hashtau4';
  104. $fileBinaryContents = file_get_contents($filedir);
  105. $fileName = date('Y_m_d_H_i_s') . '_' . $filename;
  106. $egnyte = new EgnyteClient($domain, $oauthToken);
  107. $response = $egnyte->uploadFile($folder, $fileName, $fileBinaryContents);
  108.  
  109. $collected[] = array(
  110. 'name' => $filename,
  111. 'size' => filesize($filedir)
  112. );
  113.  
  114. unlink($filedir);
  115. }
  116. }
  117.  
  118. $email_body = generate_ftp_email($collected);
  119.  
  120.  
  121. $file = $fileName;
  122. $entry = array(
  123. 'form_id' => 3,
  124. '1' => '',
  125. '2' => $_POST['service_type'],
  126. '3' => $_POST['deadline'],
  127. '4' => '',
  128. '5' => '',
  129. '6' => $_POST['comments'],
  130. '7' => implode('<br />', $files),
  131. '8' => $_POST['first_name'],
  132. '9' => $_POST['last_name'],
  133. '10' => $_POST['company'],
  134. '11' => $_POST['email'],
  135. '12' => $_POST['full-name']
  136. );
  137. $entry_id = GFAPI::add_entry($entry);
  138. //send_notifications(3, $entry_id);
  139.  
  140.  
  141.  
  142. $additional = get_option('ftp_email_address');
  143. if (trim($additional) != '') {
  144. wp_mail($additional, get_option('ftp_title'), $email_body);
  145. }
  146. wp_mail($_POST['email'], get_option('ftp_title'), $email_body);
  147. wp_mail(get_option('admin_email'), get_option('ftp_title'), $email_body);
  148.  
  149. $sent = 'true';
  150. } else {
  151. $sent = 'false';
  152. }
  153. }
  154. echo $sent;
  155. die();
  156. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement