query($query); $user_list = ''; $user_list.=''; $xtpl->assign("USER_LIST", $user_list); $xtpl->parse("main"); $xtpl->out("main"); } function loadHeaders($user_id, $date_from, $date_to, $answered, $seen, $deleted, $io, $in_out) { $db = $GLOBALS['db']; $io = trim($io); if ($in_out != 'in') $in_out = 'out'; //var_dump($in_out); $whereConditions = array(); if(strlen($io)) switch($in_out){ default: case 'in': array_push($whereConditions, 'ec.`fromaddr` LIKE \'%' . $io . '%\''); break; case 'out': array_push($whereConditions, 'ec.`toaddr` LIKE \'%' . $io . '%\''); break; } //echo '
';
	//var_dump($whereConditions);
	//echo '
'; $query = " SELECT ec.ie_id, ec.subject, ec.message_id, ec.fromaddr, ec.toaddr, ec.senddate, ec.alllist_text_id FROM email_cache AS ec INNER JOIN email_alllist_texts as et ON et.id=ec.alllist_text_id WHERE et.ie_id IN ( SELECT id FROM inbound_email WHERE group_id='" . $user_id . "' ) AND et.in_out LIKE '" . $in_out . "'"; $query .= $whereConditions ? (' AND ' . implode(' AND ', $whereConditions)) : ''; //print_r($query); //exit; if (($date_from != '') && ($date_to != '')) { $query.=" AND senddate BETWEEN (SELECT DATE_FORMAT('" . $date_from . "', '%Y%m%d')) AND (SELECT DATE_FORMAT('" . $date_to . "', '%Y%m%d'))"; } else { if ($date_from != '') $query.=" AND senddate >= '" . $date_from . "'"; if ($date_to != '') $query.=" AND senddate <= '" . $date_to . "'"; } $query.=" AND alllist_text_id IS NOT NULL"; $query.=" ORDER BY senddate DESC"; $result = $db->query($query); $header_list = ''; $header_list .= ''; $header_list .= ''; $header_list .= ''; switch($in_out){ default: case 'in': $header_list .= ''; break; case 'out': $header_list .= ''; break; } $header_list .= ''; $header_list .= ''; $s = 0; $a = 0; $d = 0; while ($row = $db->fetchByAssoc($result)) { if ($row['deleted'] == 1) { $przekreP = ''; $przekreK = ''; } else { $przekreP = ''; $przekreK = ''; } if ($row['answered'] == 1) { $podkreP = ''; $podkreK = ''; } else { $podkreP = ''; $podkreK = ''; } if ($row['seen'] == 0) { $pogruP = ''; $pogruK = ''; } else { $pogruP = ''; $pogruK = ''; } $subject = charsetEncode($row['subject']); $from = ''; switch($in_out){ default: case 'in': $from = charsetEncode($row['fromaddr']); break; case 'out': $from = charsetEncode($row['toaddr']); break; } $id = $row['alllist_text_id']; $header_list .= ' '; if ($row['seen'] == 1) $s++; if ($row['answered'] == 1) $a++; if ($row['deleted'] == 1) $d++; } $header_list.='
TematNadawcaOdbiorcaData otrzymania
' . $podkreP . $przekreP . $pogruP . $subject . $podkreK . $przekreK . $pogruK . ' ' . $podkreP . $przekreP . $pogruP . ($from) . $podkreK . $przekreK . $pogruK . ' ' . $podkreP . $przekreP . $pogruP . $row['senddate'] . $podkreK . $przekreK . $pogruK . '
'; $header_list.=''; return $header_list; } function loadHeaders_outbox($user_id, $date_from, $date_to, $deleted) { $db = $GLOBALS['db']; $query = "SELECT id, assigned_user_id, name, deleted, date_sent FROM emails WHERE assigned_user_id='" . $user_id . "' AND (status='sent' OR status='archived') AND (type='out' OR type='archived') AND mailbox_id IS NULL"; if (($date_from != '') && ($date_to != '')) $query.=" AND date_sent BETWEEN (SELECT DATE_FORMAT('" . $date_from . "', '%Y%m%d')) AND (SELECT DATE_FORMAT('" . $date_to . "', '%Y%m%d'))"; else { if ($date_from != '') $query.=" AND date_sent >= '" . $date_from . "'"; if ($date_to != '') $query.=" AND date_sent <= '" . $date_to . "'"; } if ($deleted == 0) $query.=" AND deleted=0"; if ($deleted == 1) $query.=" AND deleted=1"; $query.=" ORDER BY date_sent DESC"; $result = $db->query($query); $emails = array(); while ($row = $db->fetchByAssoc($result)) { $res = $db->query("SELECT email_address FROM email_addresses AS ea INNER JOIN emails_email_addr_rel AS eear ON (eear.email_address_id=ea.id AND eear.address_type='FROM' AND email_id='" . $row['id'] . "') INNER JOIN inbound_email AS ie ON (ie.email_user!=ea.email_address AND ie.group_id='" . $user_id . "')"); if ($res->num_rows == 0) $emails[] = $row; } //$header_list.=''; return $header_list; } function loadMail($id, $user_id) { $db = $GLOBALS['db']; $query = "SELECT description_html, attachments FROM email_alllist_texts WHERE id='" . $id . "';"; $result = $db->query($query); $row = $db->fetchByAssoc($result); $text = htmlspecialchars_decode($row['description_html']); //return $query; //to fix images // //$attachments = explode(";", $row['attachments']); //$file_name = array(); //if (count($attachments)>1) //foreach ($attachments as $file) { //$parts = explode("/", $file); // $ext = substr($parts[count($parts)-1],strlen($parts[count($parts)-1])-4, 4); // if (($ext=='.jpg') || ($ext=='.png') || ($ext=='.gif')) // array_push($file_name, $parts[count($parts)-1]); // } // //$text = str_replace('http://192.168.0.4/crm/cache//images/','modules/Emails/alllist_upload/'.$id.'/"',$text); //foreach ($file_name as $file) //$text = str_replace($id.'/"', $id.'/'.$file.'"', $text, 1); str_replace("\n", "
", $text); return $text; } function loadAttachments($id, $user_id) { $db = $GLOBALS['db']; $query = "SELECT attachments FROM email_alllist_texts WHERE id='" . $id . "';"; $result = $db->query($query); $row = $db->fetchByAssoc($result); //$text = htmlspecialchars_decode($row['attachments']); $text = $row['attachments']; $attachments = explode(";", $row['attachments']); $return = ' '; if (count($attachments) == 1) return 'Załączników: 0

'; else { //$return = "Załączników: ".(count($attachments)-1).'

'; foreach ($attachments as $file) { $parts = explode("/", $file); $file_name = $parts[count($parts) - 1]; $return.='' . $file_name . '
'; } } return $return; } //to fix headers charset function charsetEncode($string) { $a = imap_mime_header_decode($string); $result = ''; foreach ($a as $v) if ($v->charset != 'default') $result.=iconv($v->charset, "UTF-8", $v->text) . ' '; if ($result != '') return $result; else return $string; }