示例#1
0
文件: sendmail.php 项目: praffn/karl
<?php

$to = 'karl' . '@' . 'broholm' . '.' . 'com';
if (isset($_POST['mail'])) {
    $data = json_decode($_POST['mail']);
    processEmail($data);
} else {
    echo '{"success":false}';
}
function processEmail($data)
{
    global $to;
    $headers = 'From: ' . $data->name . ' <' . $data->email . '>' . "\r\n";
    $message = "Hi, Karl!\r\n" . $data->name . " just sent you an email through your website:\r\n\r\n" . $data->body;
    mail($to, $data->subject, $message, $headers);
    echo '{"success":true}';
}
function processFlaterboxCreateSummary()
{
    global $wpdb;
    global $post;
    $dyear = date('Y', strtotime('today'));
    $month = date('n', strtotime('today'));
    $list_day = date('j', strtotime('today'));
    $currentDay = date('l', strtotime('today'));
    $subject = 'Your Flatterbox Update';
    $toArr = array();
    if (isset($_GET['dyear']) && isset($_GET['month']) && isset($_GET['list_day'])) {
        $dyear = $_GET['dyear'];
        $month = $_GET['month'];
        $list_day = $_GET['list_day'];
    }
    $args = array('post_type' => 'flatterboxes', 'posts_per_page' => -1, 'meta_query' => array('relation' => 'AND', array('key' => 'date_of_delivery', 'value' => $dyear . '-' . $month . '-' . $list_day . ' 00:00:00', 'compare' => '>', 'type' => 'date'), array('relation' => 'OR', array('key' => 'order_count', 'value' => '', 'compare' => '='), array('key' => 'order_count', 'compare' => 'NOT EXISTS'))));
    $the_query = new WP_Query($args);
    if (isset($_GET['showme'])) {
        echo '<br/><br/>';
        print_r($the_query);
    }
    if ($the_query->have_posts()) {
        while ($the_query->have_posts()) {
            $the_query->the_post();
            if (strtolower(get_field('notification_frequency')) == 'onceaday' || strtolower(get_field('notification_frequency')) == strtolower($currentDay) || (strtolower(get_field('notification_frequency')) == 'onceaweek' || strtolower(get_field('notification_frequency')) == 'twiceaweek') && strtolower($currentDay) == 'monday' || strtolower(get_field('notification_frequency')) == 'twiceaweek' && strtolower($currentDay) == 'thursday') {
                $PID = intval(get_the_ID());
                $occasion = get_field('occasion');
                unset($toArr);
                $toArr = array();
                // Reset to avoid people seeing different items
                unset($messageArr);
                $messageArr = array();
                $toArr[] = get_the_author_email();
                //creator email
                if (isset($_GET['showme'])) {
                    echo get_field('date_sentiments_complete') . '<br/>';
                }
                //$sentimentsduedate = explode("/", date('d/m/Y', strtotime(get_field('date_sentiments_complete')))); //date_of_project_complete
                //$sentimentsduedate = explode("/", get_field('date_sentiments_complete')); //date_of_project_complete
                $sentimentsduedate = explode("/", date('d/m/Y', strtotime(get_field('date_sentiments_complete'))));
                //date_of_project_complete
                if (isset($_GET['showme'])) {
                    print_r($sentimentsduedate);
                    echo '<br/>';
                }
                $sentimentsduedate = date('F j, Y', mktime(0, 0, 0, $sentimentsduedate[1], $sentimentsduedate[0], $sentimentsduedate[2]));
                //$sentimentsduedate = get_field('date_sentiments_complete'); //date_of_project_complete
                if (isset($_GET['showme'])) {
                    echo $sentimentsduedate . '<br/>';
                }
                $dateneeded = explode("/", date('d/m/Y', strtotime(get_field('date_of_delivery'))));
                //date_of_project_complete
                $today = date('d/m/Y', strtotime('today'));
                $today = explode("/", $today);
                $date1 = date_create($today[2] . '-' . $today[1] . '-' . $today[0]);
                $date2 = date_create($dateneeded[2] . '-' . $dateneeded[1] . '-' . $dateneeded[0]);
                $numberofdaysremaining = $date1->diff($date2);
                $numberofdaysremaining = $numberofdaysremaining->days;
                if (isset($_GET['showme'])) {
                    echo get_field('date_of_delivery') . '<br/>';
                }
                $giftdate = explode("/", get_field('date_of_delivery'));
                $giftdate = explode("/", date('d/m/Y', strtotime(get_field('date_of_delivery'))));
                if (isset($_GET['showme'])) {
                    print_r($giftdate);
                    echo '<br/>';
                }
                $giftdate = date('F j, Y', mktime(0, 0, 0, $giftdate[1], $giftdate[0], $giftdate[2]));
                //$giftdate = get_field('date_of_delivery');
                if (isset($_GET['showme'])) {
                    echo $giftdate . '<br/>';
                }
                $sentimentsneeded = 0;
                $numberofsentiments = 0;
                $numberofinvitations = 0;
                $flatterername = get_field('who_is_this_for');
                $flatterer_results = $wpdb->get_results("SELECT count(*) AS Not_Responded FROM flatterers WHERE invalid = 0 AND responded = 0 AND PID = " . $PID, ARRAY_A);
                if ($flatterer_results) {
                    foreach ($flatterer_results as $row) {
                        $sentimentsneeded = $row["Not_Responded"];
                    }
                }
                $cardamount = get_field('card_quantity');
                if (strlen(trim(get_field('title_card_headline'))) > 0) {
                    $sentimentsneeded = $sentimentsneeded + 1;
                }
                $sentimentsneeded = $cardamount - $sentimentsneeded;
                $flatterer_results = $wpdb->get_results("SELECT count(*) AS Responded FROM sentiments WHERE sentiment_text <> '' AND PID = " . $PID, ARRAY_A);
                if ($flatterer_results) {
                    foreach ($flatterer_results as $row) {
                        $numberofsentiments = $row["Responded"];
                    }
                }
                $flatterer_results = $wpdb->get_results("SELECT count(*) AS Sentiments, flatterer_name FROM flatterers WHERE invalid = 0 AND PID = " . $PID, ARRAY_A);
                if ($flatterer_results) {
                    foreach ($flatterer_results as $row) {
                        $numberofinvitations = $row["Sentiments"];
                        //$flatterername = $row["flatterer_name"];
                    }
                }
                $bloginfo2 = home_url();
                $message = '<html>
<head>
<title>Flatterbox_Eblast_final</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body bgcolor="#FFFFFF" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<center>
<table id="Table_01" width="650" border="0" cellpadding="0" cellspacing="0">
	<tr>
		<td width="650" height="107" colspan="3" align="center" valign="top"><img src="' . $bloginfo2 . '/emails/creator_summary/images/fb_update_header_logo.png" width="390" height="80" alt="Your Flatterbox® Order"></td>
	</tr>
	<tr>
	  <td width="650" colspan="3" align="center" valign="top" style="font-family: Arial, Helvetica, sans-serif; font-size: 15px; color: #0e2240;">
      <p>Here\'s an update on your Flatterbox gift for </p>
		  <p style="font-size: 48px; font-weight: bold;">' . $flatterername . '</p>
		  <p style="font-size: 18px; margin-bottom: 20px;">The occasion: <strong>' . $occasion . '</strong></p>
		</td>
	</tr>
	<tr>
	  <td width="325" align="center" valign="top"><h3 style="font-family: Arial, Helvetica, sans-serif; border-bottom: 1px solid #bdb5c9; padding-bottom: 10px; margin-bottom: 10px; width: 300px; color: #1a3667;">Schedule</h3>
      	<div style="width: 300px; margin: 0 auto 10px auto; position: relative; overflow: hidden;">
        	<div style="text-align: left; width: 150px; float: left; display:inline-block; font-family: Arial, Helvetica, sans-serif; font-size: 12px; color: #0e2240;"><strong>Days Left to Complete</strong></div>
            <div style="text-align: left; width: 150px; float: left; display:inline-block; font-family: Arial, Helvetica, sans-serif; font-size: 12px; color: #0e2240;">' . $numberofdaysremaining . '</div>
		</div>
        <div style="width: 300px; margin: 0 auto 10px auto; position: relative; overflow: hidden;">
        	<div style="text-align: left; width: 150px; float: left; display:inline-block; font-family: Arial, Helvetica, sans-serif; font-size: 12px; color: #0e2240;"><strong>Sentiments Due By</strong></div>
            <div style="text-align: left; width: 150px; float: left; display:inline-block; font-family: Arial, Helvetica, sans-serif; font-size: 12px; color: #0e2240;">' . $sentimentsduedate . '</div>
		</div>
        <div style="width: 300px; margin: 0 auto 10px auto; position: relative; overflow: hidden;">
        	<div style="text-align: left; width: 150px; float: left; display:inline-block; font-family: Arial, Helvetica, sans-serif; font-size: 12px; color: #0e2240;"><strong>Gift Delivery Date</strong></div>
            <div style="text-align: left; width: 150px; float: left; display:inline-block; font-family: Arial, Helvetica, sans-serif; font-size: 12px; color: #0e2240;">' . $giftdate . '</div>
		</div>
      </td>
		<td width="325" align="center" valign="top"><h3 style="font-family: Arial, Helvetica, sans-serif; border-bottom: 1px solid #bdb5c9; padding-bottom: 10px; margin-bottom: 10px; width: 300px; color: #1a3667;">Sentiment Summary</h3>
        <div style="width: 300px; margin: 0 auto 10px auto; position: relative; overflow: hidden;">
        	<div style="text-align: left; width: 150px; float: left; display:inline-block; font-family: Arial, Helvetica, sans-serif; font-size: 12px; color: #0e2240;"><strong>Invitations 
       	    Sent</strong></div>
          <div style="text-align: left; width: 150px; float: left; display:inline-block; font-family: Arial, Helvetica, sans-serif; font-size: 12px; color: #0e2240;">' . $numberofinvitations . '</div>
		</div>
        <div style="width: 300px; margin: 0 auto 10px auto; position: relative; overflow: hidden;">
        	<div style="text-align: left; width: 150px; float: left; display:inline-block; font-family: Arial, Helvetica, sans-serif; font-size: 12px; color: #0e2240;"><strong>Sentiments Received</strong></div>
            <div style="text-align: left; width: 150px; float: left; display:inline-block; font-family: Arial, Helvetica, sans-serif; font-size: 12px; color: #0e2240;">' . $numberofsentiments . '</div>
		</div>
        <div style="width: 300px; margin: 0 auto 10px auto; position: relative; overflow: hidden;">
        	<div style="text-align: left; width: 150px; float: left; display:inline-block; font-family: Arial, Helvetica, sans-serif; font-size: 12px; color: #0e2240;"><strong>Sentiments Needed</strong></div>
            <div style="text-align: left; width: 150px; float: left; display:inline-block; font-family: Arial, Helvetica, sans-serif; font-size: 12px; color: #0e2240;">' . $sentimentsneeded . '</div>
		</div>
	    </td>
	</tr>
   <tr>
  <td width="650" colspan="3" align="center" valign="top" style="font-family: Arial, Helvetica, sans-serif; font-size: 15px; color: #0e2240;">
	    <div style="margin: 20px; padding: 10px; width: 310px; background-color: #f38707; color: #fff; font-size: 19px; font-weight: bold;"><em><a href="' . home_url() . '" target="_blank" style="color: #fff;">Login to Flatterbox</a></em> to review your sentiments and more</div></td>
	</tr>    
	<tr>
		<td width="650" height="28" colspan="3" align="center" valign="middle" style="font-family: Arial, Helvetica, sans-serif; font-size: 11px; background-color: #0D2065; color: #fff;">Thank you for participating in their Flatterbox! <em>- From the Flatterbox Team</em> | <a href="http://www.flatterbox.com" target="_blank" style="color:#fff; text-decoration:none;">flatterbox.com</a> | <a href="mailto:info@flatterbox.com" target="_blank" style="color:#fff; text-decoration:none;">info@flatterbox.com</a></td>
	</tr>
</table>
</center>
</body>
</html>';
                //echo $message;
                $messageArr[] = $message;
                if (!isset($_GET['showme'])) {
                    if (count($toArr) > 0) {
                        processEmail($toArr, $subject, $messageArr, $PID);
                    }
                    //echo 'SUMMARY OK';
                } else {
                    echo '<br/><br/>';
                    print_r($toArr);
                    echo '<br/><br/>';
                    echo $subject;
                    echo '<br/><br/>';
                    echo $message;
                }
            }
        }
    }
}
示例#3
0
function forgot_tid()
{
    global $hesk_settings, $hesklang;
    require HESK_PATH . 'inc/email_functions.inc.php';
    /* Get ticket(s) from database */
    hesk_dbConnect();
    $email = hesk_validateEmail(hesk_POST('email'), 'ERR', 0) or hesk_process_messages($hesklang['enter_valid_email'], 'ticket.php?remind=1');
    if (isset($_POST['open_only'])) {
        $hesk_settings['open_only'] = $_POST['open_only'] == 1 ? 1 : 0;
    }
    /* Prepare ticket statuses */
    $myStatusSQL = hesk_dbQuery("SELECT `ID`, `Key` FROM `" . hesk_dbEscape($hesk_settings['db_pfix']) . "statuses`");
    $my_status = array();
    while ($myStatusRow = hesk_dbFetchAssoc($myStatusSQL)) {
        $my_status[$myStatusRow['ID']] = $hesklang[$myStatusRow['Key']];
    }
    // Get tickets from the database
    $res = hesk_dbQuery('SELECT * FROM `' . hesk_dbEscape($hesk_settings['db_pfix']) . 'tickets` FORCE KEY (`statuses`) WHERE ' . ($hesk_settings['open_only'] ? "`status` IN (SELECT `ID` FROM `" . hesk_dbEscape($hesk_settings['db_pfix']) . "statuses` WHERE `IsClosed` = 0) AND " : '') . ' ' . hesk_dbFormatEmail($email) . ' ORDER BY `status` ASC, `lastchange` DESC ');
    $num = hesk_dbNumRows($res);
    if ($num < 1) {
        if ($hesk_settings['open_only']) {
            hesk_process_messages($hesklang['noopen'], 'ticket.php?remind=1&e=' . $email);
        } else {
            hesk_process_messages($hesklang['tid_not_found'], 'ticket.php?remind=1&e=' . $email);
        }
    }
    $tid_list = '';
    $html_tid_list = '<ul>';
    $name = '';
    $email_param = $hesk_settings['email_view_ticket'] ? '&e=' . rawurlencode($email) : '';
    while ($my_ticket = hesk_dbFetchAssoc($res)) {
        $name = $name ? $name : hesk_msgToPlain($my_ticket['name'], 1, 0);
        $tid_list .= "\n        {$hesklang['trackID']}: " . $my_ticket['trackid'] . "\n        {$hesklang['subject']}: " . hesk_msgToPlain($my_ticket['subject'], 1, 0) . "\n        {$hesklang['status']}: " . $my_status[$my_ticket['status']] . "\n        {$hesk_settings['hesk_url']}/ticket.php?track={$my_ticket['trackid']}{$email_param}\n        ";
        $html_tid_list .= "<li>\n        {$hesklang['trackID']}: " . $my_ticket['trackid'] . " <br>\n        {$hesklang['subject']}: " . hesk_msgToPlain($my_ticket['subject'], 1, 0) . " <br>\n        {$hesklang['status']}: " . $my_status[$my_ticket['status']] . " <br>\n        {$hesk_settings['hesk_url']}/ticket.php?track={$my_ticket['trackid']}{$email_param}\n        </li>";
    }
    $html_tid_list .= '</ul>';
    /* Get e-mail message for customer */
    $msg = hesk_getEmailMessage('forgot_ticket_id', '', 0, 0, 1);
    $msg = processEmail($msg, $name, $num, $tid_list);
    // Get HTML message for customer
    $htmlMsg = hesk_getHtmlMessage('forgot_ticket_id', '', 0, 0, 1);
    $htmlMsg = processEmail($htmlMsg, $name, $num, $html_tid_list);
    $subject = hesk_getEmailSubject('forgot_ticket_id');
    /* Send e-mail */
    hesk_mail($email, $subject, $msg, $htmlMsg);
    /* Show success message */
    $tmp = '<b>' . $hesklang['tid_sent'] . '!</b>';
    $tmp .= '<br />&nbsp;<br />' . $hesklang['tid_sent2'] . '.';
    $tmp .= '<br />&nbsp;<br />' . $hesklang['check_spambox'];
    hesk_process_messages($tmp, 'ticket.php?e=' . $email, 'SUCCESS');
    exit;
    /* Print header */
    $hesk_settings['tmp_title'] = $hesk_settings['hesk_title'] . ' - ' . $hesklang['tid_sent'];
    require_once HESK_PATH . 'inc/header.inc.php';
    ?>
            
<ol class="breadcrumb">
  <li><a href="<?php 
    echo $hesk_settings['site_url'];
    ?>
"><?php 
    echo $hesk_settings['site_title'];
    ?>
</a></li>
  <li><a href="<?php 
    echo $hesk_settings['hesk_url'];
    ?>
"><?php 
    echo $hesk_settings['hesk_title'];
    ?>
</a></li>
  <li class="active"><?php 
    echo $hesklang['tid_sent'];
    ?>
</li>
</ol>
<tr>
<td>

	<?php 
}