GIF89a;
| Direktori : /home/serb/public_html/freichat/client/plugins/save/ |
| Current File : /home/serb/public_html/freichat/client/plugins/save/save.php |
<?php
require_once '../base.php';
class save extends base {
private $is_chatroom;
public function __construct() {
parent::__construct();
$this->url = str_replace("upload.php", "", $this->url);
$this->is_chatroom = $this->is_chatroom_mode();
}
public function is_chatroom_mode() {
return (isset($_GET['mode']) && $_GET['mode'] == 'chatroom');
}
public function writeconv($download) {
$frm_id = $_SESSION[$this->uid . 'usr_ses_id'];
$to_id = $this->bigintval($_GET['toid']);
$to_name = htmlentities($_GET['toname'], ENT_QUOTES, "UTF-8");
if($this->is_chatroom) {
$title = "chatroom conversation";
}else{
$title = "Conversation with $to_name";
}
$name = "<html><head><meta http-equiv='content-type' content='text/html; charset=utf-8'><title>$title</title></head><body><center><h3>$title</h3></center>";
$lines = '<hr/>';
//$path = "tmp/".$name.".txt";
if($this->is_chatroom) {
$query = "SELECT DISTINCT * FROM frei_chat WHERE room_id=? AND message_type=1 order by time DESC";
$arr = array($to_id);
}else{
$query = "SELECT * FROM frei_chat WHERE (frei_chat.\"to\"=? AND frei_chat.\"from\"=?) OR (frei_chat.\"from\"=? AND frei_chat.\"to\"=?) ORDER BY time";
$arr = array($frm_id, $to_id, $frm_id, $to_id);
}
$isset_mesg = $this->db->prepare($query);
$isset_mesg->execute($arr);
$messages = $isset_mesg->fetchAll();
$contents = "";
$prime = $name . "\n" . $lines . "\n\n";
echo $prime;
?>
<script type="text/javascript">
getlocal_time = function(GMT_time) {
var d = new Date();
var offset = d.getTimezoneOffset() * 60000;
var timestamp = GMT_time - offset;
var dTime = new Date(timestamp);
var hours = dTime.getHours();
var minute = dTime.getMinutes();
if (minute < 10) {
minute = "0" + minute;
}
var period = "AM";
if (hours > 12) {
period = "PM"
}
else {
period = "AM";
}
hours = ((hours > 12) ? hours - 12 : hours)
document.write(hours + ":" + minute + " " + period);
};
</script>
<?php
foreach ($messages as $message) {
echo "<b>" . $message['from_name'] . " [<script type=\"text/javascript\">getlocal_time(". $message['GMT_time'] .")</script>]:</b> " . str_replace("\'", "'", $message['message']) . " <br/>\n";
}
//$complete_contents = $prime . str_replace(",", ",", $contents) . "<hr/></body></html>";
echo "</body></html>";exit;
$filename = "$title.html";
if ($download == true) {
$this->downloadconv($filename, $complete_contents);
}
return $complete_contents;
}
public function downloadconv($filename, $contents) {
// Send file headers
header("Content-type: file");
header("Content-Disposition: attachment;filename=$filename");
header("Content-Transfer-Encoding: binary");
header('Pragma: no-cache');
header('Expires: 0');
// Send the file contents.
echo $contents;
set_time_limit(0);
}
}
$save = new save();
$save->writeconv(true);